[nco] 01/05: Imported Upstream version 4.4.8

Sebastiaan Couwenberg sebastic at moszumanska.debian.org
Fri Feb 20 21:22:42 UTC 2015


This is an automated email from the git hooks/post-receive script.

sebastic pushed a commit to branch master
in repository nco.

commit 1f5a19260458c8fea6350540c86b92398fa6fe19
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date:   Fri Feb 20 21:57:32 2015 +0100

    Imported Upstream version 4.4.8
---
 Makefile.in                       |    21 +-
 aclocal.m4                        |   122 +-
 autobld/compile                   |   347 +
 bld/Makefile                      |    44 +-
 bld/nco.spec                      |    15 +-
 bld/nco_dst.pl                    |    34 +-
 bm/NCO_benchmarks.pm              |     4 +-
 bm/NCO_bm.pm                      |     4 +-
 bm/NCO_rgr.pm                     |   414 +-
 configure                         |   144 +-
 configure.ac                      |    28 +-
 configure.eg                      |    11 +-
 data/Makefile.am                  |     8 +-
 data/Makefile.in                  |    10 +-
 data/in.cdl                       |    56 +-
 data/in_grp.cdl                   |   115 +-
 doc/ANNOUNCE                      |   198 +-
 doc/ChangeLog                     |   222 +
 doc/MANIFEST                      |     6 +-
 doc/Makefile.in                   |    10 +-
 doc/TAG                           |     2 +-
 doc/TODO                          |     8 +-
 doc/VERSION                       |     2 +-
 doc/acme.png                      |   Bin 0 -> 106129 bytes
 doc/debian.txt                    |   173 +-
 doc/index.shtml                   |    99 +-
 doc/nco.dvi                       |   Bin 1344368 -> 1397484 bytes
 doc/nco.html                      |  1530 +-
 doc/nco.pdf                       |   Bin 1231564 -> 1274656 bytes
 doc/nco.ps                        | 37924 +++++++++++++++++++-----------------
 doc/nco.texi                      |  1222 +-
 doc/nco.txt                       |  4534 +++--
 doc/nco.xml                       |  4575 +++--
 man/Makefile.in                   |     4 +-
 man/ncbo.1                        |     4 +-
 man/ncdiff.1                      |     4 +-
 man/ncea.1                        |     8 +-
 man/ncecat.1                      |     8 +-
 man/nces.1                        |     8 +-
 man/ncflint.1                     |     8 +-
 man/ncks.1                        |    10 +-
 man/ncpdq.1                       |     8 +-
 man/ncra.1                        |     8 +-
 man/ncrcat.1                      |     8 +-
 man/ncrename.1                    |     6 +-
 man/ncwa.1                        |     8 +-
 qt/libnco/libnco.pro              |     2 +
 qt/libnco/libnco.vcxproj          |     2 +
 src/Makefile.in                   |     4 +-
 src/nco++/Makefile.am             |    17 +-
 src/nco++/Makefile.in             |    26 +-
 src/nco++/Makefile.old            |   149 +-
 src/nco++/fmc_all_cls.cc          |     6 +-
 src/nco++/fmc_all_cls.hh          |     4 +-
 src/nco++/fmc_cls.hh              |     4 +-
 src/nco++/fmc_gsl_cls.cc          |    10 +-
 src/nco++/fmc_gsl_cls.hh          |     4 +-
 src/nco++/libnco++.hh             |     6 +-
 src/nco++/ncap2.cc                |    18 +-
 src/nco++/ncap2_utl.cc            |    30 +-
 src/nco++/ncap2_utl.hh            |    11 +-
 src/nco++/ncoEnumTokenTypes.hpp   |   174 +-
 src/nco++/ncoGrammer.g            |   101 +-
 src/nco++/ncoLexer.cpp            |   247 +-
 src/nco++/ncoLexer.hpp            |     8 +-
 src/nco++/ncoParser.cpp           |   229 +-
 src/nco++/ncoParser.hpp           |    12 +-
 src/nco++/ncoParserTokenTypes.hpp |   174 +-
 src/nco++/ncoTree.cpp             |  1331 +-
 src/nco++/ncoTree.hpp             |    12 +-
 src/nco++/nco_gsl.c               |     4 +-
 src/nco++/nco_gsl.h               |     4 +-
 src/nco++/prs_cls.cc              |     6 +-
 src/nco++/prs_cls.hh              |     4 +-
 src/nco++/sdo_utl.cc              |     6 +-
 src/nco++/sdo_utl.hh              |     6 +-
 src/nco/Makefile.am               |     4 +-
 src/nco/Makefile.in               |    24 +-
 src/nco/libnco.h                  |     7 +-
 src/nco/mpncbo.c                  |    10 +-
 src/nco/mpncecat.c                |    10 +-
 src/nco/mpncflint.c               |    10 +-
 src/nco/mpncpdq.c                 |    10 +-
 src/nco/mpncra.c                  |    10 +-
 src/nco/mpncwa.c                  |    10 +-
 src/nco/ncap.c                    |    14 +-
 src/nco/ncap.h                    |    15 +-
 src/nco/ncap_lex.l                |    11 +-
 src/nco/ncap_utl.c                |    53 +-
 src/nco/ncap_yacc.y               |     6 +-
 src/nco/ncatted.c                 |    10 +-
 src/nco/ncbo.c                    |    25 +-
 src/nco/ncecat.c                  |   240 +-
 src/nco/ncflint.c                 |   243 +-
 src/nco/ncks.c                    |    56 +-
 src/nco/nco.h                     |    26 +-
 src/nco/nco_att_utl.c             |     6 +-
 src/nco/nco_att_utl.h             |     6 +-
 src/nco/nco_aux.c                 |    15 +-
 src/nco/nco_aux.h                 |     6 +-
 src/nco/nco_bnr.c                 |     6 +-
 src/nco/nco_bnr.h                 |     6 +-
 src/nco/nco_cln_utl.c             |   160 +-
 src/nco/nco_cln_utl.h             |   103 +-
 src/nco/nco_cnf_dmn.c             |     6 +-
 src/nco/nco_cnf_dmn.h             |     6 +-
 src/nco/nco_cnf_typ.c             |    10 +-
 src/nco/nco_cnf_typ.h             |     6 +-
 src/nco/nco_cnk.c                 |    71 +-
 src/nco/nco_cnk.h                 |     9 +-
 src/nco/nco_cnv_arm.c             |     6 +-
 src/nco/nco_cnv_arm.h             |     6 +-
 src/nco/nco_cnv_csm.c             |    37 +-
 src/nco/nco_cnv_csm.h             |     6 +-
 src/nco/nco_ctl.c                 |    45 +-
 src/nco/nco_ctl.h                 |     6 +-
 src/nco/nco_dbg.c                 |     6 +-
 src/nco/nco_dbg.h                 |     6 +-
 src/nco/nco_dmn_utl.c             |     6 +-
 src/nco/nco_dmn_utl.h             |     6 +-
 src/nco/nco_fl_utl.c              |    20 +-
 src/nco/nco_fl_utl.h              |     6 +-
 src/nco/nco_grp_trv.c             |   105 +-
 src/nco/nco_grp_trv.h             |    16 +-
 src/nco/nco_grp_utl.c             |   760 +-
 src/nco/nco_grp_utl.h             |    32 +-
 src/nco/nco_lmt.c                 |     8 +-
 src/nco/nco_lmt.h                 |     6 +-
 src/nco/nco_lst_utl.c             |    13 +-
 src/nco/nco_lst_utl.h             |     6 +-
 src/nco/nco_md5.c                 |     8 +-
 src/nco/nco_md5.h                 |     8 +-
 src/nco/nco_mmr.c                 |     6 +-
 src/nco/nco_mmr.h                 |     6 +-
 src/nco/nco_mpi.h                 |     6 +-
 src/nco/nco_msa.c                 |    37 +-
 src/nco/nco_msa.h                 |     8 +-
 src/nco/nco_mss_val.c             |    12 +-
 src/nco/nco_mss_val.h             |     6 +-
 src/nco/nco_netcdf.c              |    11 +-
 src/nco/nco_netcdf.h              |     6 +-
 src/nco/nco_omp.c                 |     6 +-
 src/nco/nco_omp.h                 |     6 +-
 src/nco/nco_pck.c                 |    36 +-
 src/nco/nco_pck.h                 |     6 +-
 src/nco/nco_prn.c                 |   255 +-
 src/nco/nco_prn.h                 |    16 +-
 src/nco/nco_rec_var.c             |    10 +-
 src/nco/nco_rec_var.h             |     6 +-
 src/nco/nco_rth_flt.c             |    24 +-
 src/nco/nco_rth_flt.h             |     6 +-
 src/nco/nco_rth_utl.c             |    49 +-
 src/nco/nco_rth_utl.h             |     6 +-
 src/nco/nco_scl_utl.c             |     6 +-
 src/nco/nco_scl_utl.h             |     6 +-
 src/nco/nco_scm.c                 |    12 +-
 src/nco/nco_scm.h                 |     6 +-
 src/nco/nco_sld.c                 |   510 +
 src/nco/nco_sld.h                 |    82 +
 src/nco/nco_sng_utl.c             |    16 +-
 src/nco/nco_sng_utl.h             |    16 +-
 src/nco/nco_srm.c                 |     6 +-
 src/nco/nco_srm.h                 |     6 +-
 src/nco/nco_typ.h                 |     6 +-
 src/nco/nco_var_avg.c             |     9 +-
 src/nco/nco_var_avg.h             |     6 +-
 src/nco/nco_var_lst.c             |     8 +-
 src/nco/nco_var_lst.h             |     6 +-
 src/nco/nco_var_rth.c             |   382 +-
 src/nco/nco_var_rth.h             |    39 +-
 src/nco/nco_var_scv.c             |    42 +-
 src/nco/nco_var_scv.h             |    24 +-
 src/nco/nco_var_utl.c             |   100 +-
 src/nco/nco_var_utl.h             |   202 +-
 src/nco/ncpdq.c                   |   260 +-
 src/nco/ncra.c                    |   257 +-
 src/nco/ncrename.c                |    10 +-
 src/nco/ncwa.c                    |    46 +-
 src/nco_c++/Makefile.in           |     4 +-
 src/nco_c++/Makefile.old          |    18 +-
 src/nco_c++/libnco_c++.hh         |     6 +-
 src/nco_c++/nco_att.cc            |     6 +-
 src/nco_c++/nco_att.hh            |     6 +-
 src/nco_c++/nco_dmn.cc            |     6 +-
 src/nco_c++/nco_dmn.hh            |     6 +-
 src/nco_c++/nco_fl.cc             |     6 +-
 src/nco_c++/nco_fl.hh             |     6 +-
 src/nco_c++/nco_hgh.cc            |     6 +-
 src/nco_c++/nco_hgh.hh            |     6 +-
 src/nco_c++/nco_utl.cc            |     6 +-
 src/nco_c++/nco_utl.hh            |     6 +-
 src/nco_c++/nco_var.cc            |     6 +-
 src/nco_c++/nco_var.hh            |     6 +-
 193 files changed, 33381 insertions(+), 26219 deletions(-)

diff --git a/Makefile.in b/Makefile.in
index a4c554d..4bbb449 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# $Header: /cvsroot/nco/nco/Makefile.in,v 1.146 2014/10/22 18:47:06 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/Makefile.in,v 1.147 2015/01/07 18:07:23 zender Exp $ -*-makefile-*-
 VPATH = @srcdir@
 am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
@@ -84,10 +84,10 @@ subdir = .
 DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
 	$(top_srcdir)/configure $(am__configure_deps) \
 	$(srcdir)/config.h.in $(top_srcdir)/autobld/mkinstalldirs \
-	AUTHORS COPYING INSTALL autobld/config.guess \
+	AUTHORS COPYING INSTALL autobld/compile autobld/config.guess \
 	autobld/config.sub autobld/depcomp autobld/install-sh \
 	autobld/missing autobld/mkinstalldirs autobld/texinfo.tex \
-	autobld/ylwrap autobld/ltmain.sh \
+	autobld/ylwrap autobld/ltmain.sh $(top_srcdir)/autobld/compile \
 	$(top_srcdir)/autobld/config.guess \
 	$(top_srcdir)/autobld/config.sub \
 	$(top_srcdir)/autobld/install-sh \
@@ -398,8 +398,8 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 $(am__aclocal_m4_deps):
 
 config.h: stamp-h1
-	@if test ! -f $@; then rm -f stamp-h1; else :; fi
-	@if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
+	@test -f $@ || rm -f stamp-h1
+	@test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
 
 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
 	@rm -f stamp-h1
@@ -608,10 +608,16 @@ dist-xz: distdir
 	$(am__post_remove_distdir)
 
 dist-tarZ: distdir
+	@echo WARNING: "Support for shar distribution archives is" \
+	               "deprecated." >&2
+	@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
 	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
 	$(am__post_remove_distdir)
 
 dist-shar: distdir
+	@echo WARNING: "Support for distribution archives compressed with" \
+		       "legacy program 'compress' is deprecated." >&2
+	@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
 	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
 	$(am__post_remove_distdir)
 
@@ -653,9 +659,10 @@ distcheck: dist
 	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
 	  && am__cwd=`pwd` \
 	  && $(am__cd) $(distdir)/_build \
-	  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+	  && ../configure \
 	    $(AM_DISTCHECK_CONFIGURE_FLAGS) \
 	    $(DISTCHECK_CONFIGURE_FLAGS) \
+	    --srcdir=.. --prefix="$$dc_install_base" \
 	  && $(MAKE) $(AM_MAKEFLAGS) \
 	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
 	  && $(MAKE) $(AM_MAKEFLAGS) check \
diff --git a/aclocal.m4 b/aclocal.m4
index 5b1f4bf..3935bf3 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,4 +1,4 @@
-# generated automatically by aclocal 1.13.4 -*- Autoconf -*-
+# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
 
 # Copyright (C) 1996-2013 Free Software Foundation, Inc.
 
@@ -32,10 +32,10 @@ To do so, use the procedure documented by the package, typically 'autoreconf'.])
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.13'
+[am__api_version='1.14'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.13.4], [],
+m4_if([$1], [1.14.1], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,7 +51,7 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.13.4])dnl
+[AM_AUTOMAKE_VERSION([1.14.1])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -418,6 +418,12 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 # This macro actually does too much.  Some checks are only needed if
 # your package does certain things.  But this isn't really a big deal.
 
+dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
+m4_define([AC_PROG_CC],
+m4_defn([AC_PROG_CC])
+[_AM_PROG_CC_C_O
+])
+
 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
 # AM_INIT_AUTOMAKE([OPTIONS])
 # -----------------------------------------------
@@ -526,7 +532,48 @@ dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
 AC_CONFIG_COMMANDS_PRE(dnl
 [m4_provide_if([_AM_COMPILER_EXEEXT],
   [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
+
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes.  So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+  cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present.  This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake at gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message.  This
+can help us improve future automake versions.
+
+END
+  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+    echo 'Configuration will proceed anyway, since you have set the' >&2
+    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+    echo >&2
+  else
+    cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
+  fi
+fi])
 
 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
 dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
@@ -534,7 +581,6 @@ dnl mangled by Autoconf and run in a shell conditional statement.
 m4_define([_AC_COMPILER_EXEEXT],
 m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
 
-
 # When config.status generates a header, we must update the stamp-h file.
 # This file resides in the same directory as the config header
 # that is generated.  The stamp files are numbered to have different names.
@@ -799,6 +845,70 @@ AC_DEFUN([_AM_SET_OPTIONS],
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# _AM_PROG_CC_C_O
+# ---------------
+# Like AC_PROG_CC_C_O, but changed for automake.  We rewrite AC_PROG_CC
+# to automatically call this.
+AC_DEFUN([_AM_PROG_CC_C_O],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+AC_REQUIRE_AUX_FILE([compile])dnl
+AC_LANG_PUSH([C])dnl
+AC_CACHE_CHECK(
+  [whether $CC understands -c and -o together],
+  [am_cv_prog_cc_c_o],
+  [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
+  # Make sure it works both with $CC and with simple cc.
+  # Following AC_PROG_CC_C_O, we do the test twice because some
+  # compilers refuse to overwrite an existing .o file with -o,
+  # though they will create one.
+  am_cv_prog_cc_c_o=yes
+  for am_i in 1 2; do
+    if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
+         && test -f conftest2.$ac_objext; then
+      : OK
+    else
+      am_cv_prog_cc_c_o=no
+      break
+    fi
+  done
+  rm -f core conftest*
+  unset am_i])
+if test "$am_cv_prog_cc_c_o" != yes; then
+   # Losing compiler, so override with the script.
+   # FIXME: It is wrong to rewrite CC.
+   # But if we don't then we get into trouble of one sort or another.
+   # A longer-term fix would be to have automake use am__CC in this case,
+   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+   CC="$am_aux_dir/compile $CC"
+fi
+AC_LANG_POP([C])])
+
+# For backward compatibility.
+AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
+
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_RUN_LOG(COMMAND)
+# -------------------
+# Run COMMAND, save the exit status in ac_status, and log it.
+# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
+AC_DEFUN([AM_RUN_LOG],
+[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
+   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+   (exit $ac_status); }])
+
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
 # Copyright (C) 1996-2013 Free Software Foundation, Inc.
diff --git a/autobld/compile b/autobld/compile
new file mode 100755
index 0000000..531136b
--- /dev/null
+++ b/autobld/compile
@@ -0,0 +1,347 @@
+#! /bin/sh
+# Wrapper for compilers which do not understand '-c -o'.
+
+scriptversion=2012-10-14.11; # UTC
+
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Written by Tom Tromey <tromey at cygnus.com>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-automake at gnu.org> or send patches to
+# <automake-patches at gnu.org>.
+
+nl='
+'
+
+# We need space, tab and new line, in precisely that order.  Quoting is
+# there to prevent tools from complaining about whitespace usage.
+IFS=" ""	$nl"
+
+file_conv=
+
+# func_file_conv build_file lazy
+# Convert a $build file to $host form and store it in $file
+# Currently only supports Windows hosts. If the determined conversion
+# type is listed in (the comma separated) LAZY, no conversion will
+# take place.
+func_file_conv ()
+{
+  file=$1
+  case $file in
+    / | /[!/]*) # absolute file, and not a UNC file
+      if test -z "$file_conv"; then
+	# lazily determine how to convert abs files
+	case `uname -s` in
+	  MINGW*)
+	    file_conv=mingw
+	    ;;
+	  CYGWIN*)
+	    file_conv=cygwin
+	    ;;
+	  *)
+	    file_conv=wine
+	    ;;
+	esac
+      fi
+      case $file_conv/,$2, in
+	*,$file_conv,*)
+	  ;;
+	mingw/*)
+	  file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
+	  ;;
+	cygwin/*)
+	  file=`cygpath -m "$file" || echo "$file"`
+	  ;;
+	wine/*)
+	  file=`winepath -w "$file" || echo "$file"`
+	  ;;
+      esac
+      ;;
+  esac
+}
+
+# func_cl_dashL linkdir
+# Make cl look for libraries in LINKDIR
+func_cl_dashL ()
+{
+  func_file_conv "$1"
+  if test -z "$lib_path"; then
+    lib_path=$file
+  else
+    lib_path="$lib_path;$file"
+  fi
+  linker_opts="$linker_opts -LIBPATH:$file"
+}
+
+# func_cl_dashl library
+# Do a library search-path lookup for cl
+func_cl_dashl ()
+{
+  lib=$1
+  found=no
+  save_IFS=$IFS
+  IFS=';'
+  for dir in $lib_path $LIB
+  do
+    IFS=$save_IFS
+    if $shared && test -f "$dir/$lib.dll.lib"; then
+      found=yes
+      lib=$dir/$lib.dll.lib
+      break
+    fi
+    if test -f "$dir/$lib.lib"; then
+      found=yes
+      lib=$dir/$lib.lib
+      break
+    fi
+    if test -f "$dir/lib$lib.a"; then
+      found=yes
+      lib=$dir/lib$lib.a
+      break
+    fi
+  done
+  IFS=$save_IFS
+
+  if test "$found" != yes; then
+    lib=$lib.lib
+  fi
+}
+
+# func_cl_wrapper cl arg...
+# Adjust compile command to suit cl
+func_cl_wrapper ()
+{
+  # Assume a capable shell
+  lib_path=
+  shared=:
+  linker_opts=
+  for arg
+  do
+    if test -n "$eat"; then
+      eat=
+    else
+      case $1 in
+	-o)
+	  # configure might choose to run compile as 'compile cc -o foo foo.c'.
+	  eat=1
+	  case $2 in
+	    *.o | *.[oO][bB][jJ])
+	      func_file_conv "$2"
+	      set x "$@" -Fo"$file"
+	      shift
+	      ;;
+	    *)
+	      func_file_conv "$2"
+	      set x "$@" -Fe"$file"
+	      shift
+	      ;;
+	  esac
+	  ;;
+	-I)
+	  eat=1
+	  func_file_conv "$2" mingw
+	  set x "$@" -I"$file"
+	  shift
+	  ;;
+	-I*)
+	  func_file_conv "${1#-I}" mingw
+	  set x "$@" -I"$file"
+	  shift
+	  ;;
+	-l)
+	  eat=1
+	  func_cl_dashl "$2"
+	  set x "$@" "$lib"
+	  shift
+	  ;;
+	-l*)
+	  func_cl_dashl "${1#-l}"
+	  set x "$@" "$lib"
+	  shift
+	  ;;
+	-L)
+	  eat=1
+	  func_cl_dashL "$2"
+	  ;;
+	-L*)
+	  func_cl_dashL "${1#-L}"
+	  ;;
+	-static)
+	  shared=false
+	  ;;
+	-Wl,*)
+	  arg=${1#-Wl,}
+	  save_ifs="$IFS"; IFS=','
+	  for flag in $arg; do
+	    IFS="$save_ifs"
+	    linker_opts="$linker_opts $flag"
+	  done
+	  IFS="$save_ifs"
+	  ;;
+	-Xlinker)
+	  eat=1
+	  linker_opts="$linker_opts $2"
+	  ;;
+	-*)
+	  set x "$@" "$1"
+	  shift
+	  ;;
+	*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
+	  func_file_conv "$1"
+	  set x "$@" -Tp"$file"
+	  shift
+	  ;;
+	*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
+	  func_file_conv "$1" mingw
+	  set x "$@" "$file"
+	  shift
+	  ;;
+	*)
+	  set x "$@" "$1"
+	  shift
+	  ;;
+      esac
+    fi
+    shift
+  done
+  if test -n "$linker_opts"; then
+    linker_opts="-link$linker_opts"
+  fi
+  exec "$@" $linker_opts
+  exit 1
+}
+
+eat=
+
+case $1 in
+  '')
+     echo "$0: No command.  Try '$0 --help' for more information." 1>&2
+     exit 1;
+     ;;
+  -h | --h*)
+    cat <<\EOF
+Usage: compile [--help] [--version] PROGRAM [ARGS]
+
+Wrapper for compilers which do not understand '-c -o'.
+Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
+arguments, and rename the output as expected.
+
+If you are trying to build a whole package this is not the
+right script to run: please start by reading the file 'INSTALL'.
+
+Report bugs to <bug-automake at gnu.org>.
+EOF
+    exit $?
+    ;;
+  -v | --v*)
+    echo "compile $scriptversion"
+    exit $?
+    ;;
+  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+    func_cl_wrapper "$@"      # Doesn't return...
+    ;;
+esac
+
+ofile=
+cfile=
+
+for arg
+do
+  if test -n "$eat"; then
+    eat=
+  else
+    case $1 in
+      -o)
+	# configure might choose to run compile as 'compile cc -o foo foo.c'.
+	# So we strip '-o arg' only if arg is an object.
+	eat=1
+	case $2 in
+	  *.o | *.obj)
+	    ofile=$2
+	    ;;
+	  *)
+	    set x "$@" -o "$2"
+	    shift
+	    ;;
+	esac
+	;;
+      *.c)
+	cfile=$1
+	set x "$@" "$1"
+	shift
+	;;
+      *)
+	set x "$@" "$1"
+	shift
+	;;
+    esac
+  fi
+  shift
+done
+
+if test -z "$ofile" || test -z "$cfile"; then
+  # If no '-o' option was seen then we might have been invoked from a
+  # pattern rule where we don't need one.  That is ok -- this is a
+  # normal compilation that the losing compiler can handle.  If no
+  # '.c' file was seen then we are probably linking.  That is also
+  # ok.
+  exec "$@"
+fi
+
+# Name of file we expect compiler to create.
+cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
+
+# Create the lock directory.
+# Note: use '[/\\:.-]' here to ensure that we don't use the same name
+# that we are using for the .o file.  Also, base the name on the expected
+# object file name, since that is what matters with a parallel build.
+lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
+while true; do
+  if mkdir "$lockdir" >/dev/null 2>&1; then
+    break
+  fi
+  sleep 1
+done
+# FIXME: race condition here if user kills between mkdir and trap.
+trap "rmdir '$lockdir'; exit 1" 1 2 15
+
+# Run the compile.
+"$@"
+ret=$?
+
+if test -f "$cofile"; then
+  test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
+elif test -f "${cofile}bj"; then
+  test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
+fi
+
+rmdir "$lockdir"
+exit $ret
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
diff --git a/bld/Makefile b/bld/Makefile
index 0ce0381..37d1539 100644
--- a/bld/Makefile
+++ b/bld/Makefile
@@ -1,9 +1,9 @@
-# $Header: /cvsroot/nco/nco/bld/Makefile,v 1.743 2014/11/26 05:18:52 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/bld/Makefile,v 1.756 2015/02/05 19:26:55 zender Exp $ -*-makefile-*-
 
 # Purpose: GNU Makefile for NCO module nco
 # Requires GNU Make---AT&T Make chokes on GNU syntax
 
-# Copyright (C) 1994--2014 Charlie Zender
+# Copyright (C) 1994--2015 Charlie Zender
 # License: GNU General Public License (GPL) Version 3
 # See http://www.gnu.org/copyleft/gpl.html for full license text
 
@@ -14,6 +14,7 @@
 
 # Machine build parameters
 #                         Source     Method   Packages Compiler
+# aerosol.ess.uci.edu: NCO          Configure All else LLVM
 # givre.ess.uci.edu  : NCO + netCDF Makefile  All else LLVM
 # roulee.ess.uci.edu : NCO + netCDF Makefile  All else GCC
 # neige.ess.uci.edu  : NCO          Makefile  All else GCC
@@ -21,7 +22,7 @@
 # glace.ess.uci.edu  : NCO          Configure All else GCC
 # grele.ess.uci.edu  : NCO          Makefile  All else GCC
 # tephra.ess.uci.edu : NCO          Makefile  All else
-# yellowstone.ucar.e : NCO          Makefile  All else Intel
+# yellowstone.ucar.e : -            Makefile  All else Intel
 # rhea.ccs.ornl.gov  : NCO          Makefile  All else 
 
 # Usage (testing):
@@ -104,10 +105,12 @@
 # module add intel;module add gsl;module add netcdf/4.3.0;
 # https://www2.cisl.ucar.edu/sites/default/files/Yellowstone_Started_Nov30-2.pdf
 # module add pnetcdf/1.4.1
+# export PATH=${PATH}:/glade/apps/opt/netcdf/4.3.0/intel/12.1.5/bin # needed for ncgen
+# export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/glade/apps/opt/netcdf/4.3.0/intel/12.1.5/lib # needed to run NCO
 # cd ~/nco/bld;make NETCDF_ROOT='/glade/apps/opt/netcdf/4.3.0/intel/default' UDUNITS_INC='/glade/apps/opt/udunits/2.1.24/intel/12.1.4/include' UDUNITS_LIB='/glade/apps/opt/udunits/2.1.24/intel/12.1.4/lib' OPTS=D allinone;cd -
 # Cygwin on Windows Vista systems:
 # cd ~/nco/bld;ANTLR='antlr' make --jobs=1 GSL=Y OPTS=D NETCDF4=Y UDUNITS=Y allinone;cd -
-# cd ~/bin/WIN32;tar cvzf ~/nco-4.4.7.win32.cygwin.tar.gz nc* ; scp ~/nco-4.4.7.win32.cygwin.tar.gz zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
+# cd ~/bin/WIN32;tar cvzf ~/nco-4.4.8.win32.cygwin.tar.gz nc* ; scp ~/nco-4.4.8.win32.cygwin.tar.gz zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
 # Data files to dust
 # cd ~/nco/data;scp cmip5.nc obs.nc mdl_1.nc mdl_2.nc in_grp*.nc in.nc in_4c.nc dust.ess.uci.edu:/var/www/html/nco
 
@@ -227,7 +230,7 @@ else # endelse LIB_NCAR
 endif # endif LIB_NCAR
 endif # endif NETCDF_LIB
 ifndef ${OMP} # OpenMP
- OMP := Y
+ OMP := N
 endif # endif OMP
 ifndef OPTS
  OPTS := D
@@ -323,10 +326,10 @@ ifndef LINUX_CXX
 endif # endif LINUX_CXX
 ifndef LINUX_CC
 # C compiler for Linux
- LINUX_CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
+ LINUX_CC := gcc -std=c99 -pedantic -D_DEFAULT_SOURCE
  #LINUX_CC := clang
  #LINUX_CC := como --c99
- #LINUX_CC := icc -std=c99 -D_BSD_SOURCE -D_POSIX_SOURCE
+ #LINUX_CC := icc -std=c99 -D_DEFAULT_SOURCE
  #LINUX_CC := insure
  #LINUX_CC := nvcc
  #LINUX_CC := pathcc -std=c99
@@ -623,7 +626,7 @@ CPP_TKN_OS +=
 ifneq (${null},$(findstring AIX,${PVM_ARCH}))
 # 20030804: Always use re-entrant (_r) compilers---Jim Edwards NCAR/IBM 
  CC := xlc_r -qlanglvl=extc99
-#CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
+#CC := gcc -std=c99 -pedantic -D_DEFAULT_SOURCE
  CXX := xlC_r
 # CXX := g++
  CPP := xlc -c -qlanglvl=extc99 -qsuppress=1501-245 -I/usr/lpp/ppe.poe/include
@@ -820,7 +823,7 @@ endif
 
 ifeq (${PVM_ARCH},HPPA)
 CXX := g++
-CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
+CC := gcc -std=c99 -pedantic -D_DEFAULT_SOURCE
 CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f77
 LD := ld
@@ -917,6 +920,7 @@ ifeq (${GCC_OR_CLANG},Y)
 # -fno-common: Prevent global variables from being simultaneously defined in different files
 # -g: Put debugging symbols in executable
 # -pg: Enable profiling, generate gmon.out output files (also needed by linker)
+# -O3: clang -O4 DNE, highest clang optimization is -O3 
 # -O4: Turn on optimization so uninitialized variables are flagged. Downside: optimizes-out many debugging symbols
 # Compilation flags recommended by GSL that I do not like and do not use:
 # -ansi: Support only strict ANSI C. Equivalent to -std=c89, conflicts with -std=c99
@@ -937,7 +941,11 @@ ifneq (clang,$(firstword ${CC}))
 endif # endif clang
 endif # endif OMP
 ifeq (${OPTS},O)
+ifeq (clang,$(firstword ${CC}))
+ CFLAGS += -O3 -g ${GCC_RCH_ARG}
+else # endif clang
  CFLAGS += -O4 -g ${GCC_RCH_ARG}
+endif # endif clang
 endif
 ifeq (${OPTS},D)
  CFLAGS += -g -Wno-switch
@@ -953,7 +961,11 @@ ifeq (${OPTS},X)
 # -Wformat-security : Warn about misuse of format strings
 # -Wl,-z,relro : Read-only relocation table area in final ELF
  CPPFLAGS += -D_FORTIFY_SOURCE=2
- CFLAGS += -g -fstack-protector -Wformat-security -Wl,-z,relro
+ CFLAGS += -g -O -fstack-protector -Wformat-security
+ifneq (clang,$(firstword ${CC}))
+# 20150106 clang does not recognize/utilize -z
+ CFLAGS += -Wl,-z,relro
+endif # endif clang
 # 20090715: -Werror triggers known nc_put_var?_string() and nco_def_var_chunking() errors
 # CFLAGS += -g -pg -fno-inline -Werror
 # CFLAGS += -g -O -pg -fno-inline
@@ -1171,6 +1183,7 @@ endif # endif OMP
 endif
 # endif LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, FREEBSD, MACOSX
 
+# NB: Deprecated as of 201403. Now MACOSX is subsumed in LINUX
 ifeq (${PVM_ARCH},MACOSXOLD)
 CXX := ${LINUX_CXX}
 # NB: -D_POSIX_SOURCE breaks MACOSX build in nco_fl_utl.c, nco_mmr.c
@@ -1246,7 +1259,7 @@ endif
 
 ifeq (${PVM_ARCH},RS6K)
 CXX := g++
-CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
+CC := gcc -std=c99 -pedantic -D_DEFAULT_SOURCE
 CPP := /lib/cpp -P
 CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := xlf
@@ -1284,7 +1297,7 @@ CXX := CC -LANG:std
 CC := cc -c99
 # 20000302: -w suppresses warnings which will swamp linker
 #CXX := g++ -w
-#CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
+#CC := gcc -std=c99 -pedantic -D_DEFAULT_SOURCE
 CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 ifdef $(MIPSPRO_SGI)
 # SGIs like dataproc keep omp.h in special location determined by module MIPSpro
@@ -1369,7 +1382,7 @@ CC:= c99 -D_BSD_SOURCE
 CFLAGS := 
 CPP := cc -E
 #CXX := g++
-#CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
+#CC := gcc -std=c99 -pedantic -D_DEFAULT_SOURCE
 #CFLAGS := -Wall
 #CPP := cpp
 CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
@@ -1403,7 +1416,7 @@ endif
 
 ifeq (${PVM_ARCH},WIN32)
 CXX := g++
-CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
+CC := gcc -std=c99 -pedantic -D_DEFAULT_SOURCE
 # NB: nameser.h needs -Di386, but gcc sends -Di586 (on pentiums)
 #CPP_TKN_OS += -Di386 -DNEED_STRCASECMP -DNEED_STRDUP -I/usr/include
 CPP_TKN_OS += -Di386 -DNEED_STRDUP -I/usr/include
@@ -1646,7 +1659,7 @@ libnco_c++_tst:   ${MY_BLD_DIR}/libnco_c++_tst
 ${MY_BLD_DIR}/libnco_c++_tst:	${MY_BLD_DIR}/libnco_c++_tst.o lib
 	${CXX} -o $@${BNR_SFX} $< ${LDFLAGS}
 	chmod 755 $@${BNR_SFX}
-rpm:	${MY_BLD_DIR}/nco.spec # Building rpm requires root priveleges, e.g., sudo make NCO_VRS=4.4.7 rpm
+rpm:	${MY_BLD_DIR}/nco.spec # Building rpm requires root priveleges, e.g., sudo make NCO_VRS=4.4.8 rpm
 # 	Building NCO RPM requires following packages
 #       rpm -q bison flex netcdf-devel libtool automake autoconf udunits udunits-devel curl-devel libxml2 libxml2-devel librx-devel 
 #       sudo yum install bison flex netcdf-devel libtool automake autoconf udunits udunits-devel curl-devel libxml2 libxml2-devel librx-devel
@@ -1850,6 +1863,7 @@ ${libnco}.a: ${libnco}.a(${MY_OBJ_DIR}/nco_att_utl.o) \
 	${libnco}.a(${MY_OBJ_DIR}/nco_rth_utl.o) \
 	${libnco}.a(${MY_OBJ_DIR}/nco_scl_utl.o) \
 	${libnco}.a(${MY_OBJ_DIR}/nco_scm.o) \
+	${libnco}.a(${MY_OBJ_DIR}/nco_sld.o) \
 	${libnco}.a(${MY_OBJ_DIR}/nco_sng_utl.o) \
 	${libnco}.a(${MY_OBJ_DIR}/nco_srm.o) \
 	${libnco}.a(${MY_OBJ_DIR}/nco_var_avg.o) \
diff --git a/bld/nco.spec b/bld/nco.spec
index 2f4608f..3a153c6 100644
--- a/bld/nco.spec
+++ b/bld/nco.spec
@@ -1,18 +1,18 @@
-# Fedora RPMs are up-to-date!
+v# Fedora RPMs are up-to-date!
 # http://cvs.fedoraproject.org/viewvc/devel/nco/nco.spec?view=co
 
 Name:           nco
-Version:        4.4.7
+Version:        4.4.8
 Release:        1%{?dist}
 Summary:        Programs that manipulate netCDF files
 Group:          Applications/Engineering
 License:        GPL3
 URL:            http://nco.sf.net/
 
-# Obtain NCO version 4.4.7-1 tar.gz from Sourceforge using CVS:
+# Obtain NCO version 4.4.8-1 tar.gz from Sourceforge using CVS:
 # cvs -d:pserver:anonymous at nco.cvs.sf.net:/cvsroot/nco login
-# cvs -z3 -d:pserver:anonymous at nco.cvs.sf.net:/cvsroot/nco co -r nco-4.4.7-1 -d nco-%{version} nco
-# tar czf nco-%{version}.tar.gz --exclude='nco-4.4.7/debian*' --exclude='.cvsignore' --exclude=ncap_lex.c --exclude='ncap_yacc.[ch]' ./nco-%{version}
+# cvs -z3 -d:pserver:anonymous at nco.cvs.sf.net:/cvsroot/nco co -r nco-4.4.8-1 -d nco-%{version} nco
+# tar czf nco-%{version}.tar.gz --exclude='nco-4.4.8/debian*' --exclude='.cvsignore' --exclude=ncap_lex.c --exclude='ncap_yacc.[ch]' ./nco-%{version}
 Source0:        nco-%{version}.tar.gz
 #Patch0:		nco_install_C_headers.patch
 #Patch1:         nco_find_udunits-dat.patch
@@ -108,7 +108,10 @@ fi
 # %{_libdir}/libnco++.so
 
 %changelog
-* Tue Nov 01 2014 Charlie Zender <zender at uci.edu> - 4.4.7-1
+* Mon Feb 09 2014 Charlie Zender <zender at uci.edu> - 4.4.8-1
+- new upstream 4.4.8
+
+* Wed Nov 26 2014 Charlie Zender <zender at uci.edu> - 4.4.7-1
 - new upstream 4.4.7
 
 * Wed Oct 01 2014 Charlie Zender <zender at uci.edu> - 4.4.6-1
diff --git a/bld/nco_dst.pl b/bld/nco_dst.pl
index 2d801f8..a675dea 100755
--- a/bld/nco_dst.pl
+++ b/bld/nco_dst.pl
@@ -7,18 +7,18 @@
 # Export tagged, public versions
 # /usr/bin/scp ${DATA}/nco-4.4.4.tar.gz zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
 
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4_4_7 # Build, do not release on SF
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --sf nco-4_4_7 # Build, release on SF
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --nst_all nco-4_4_7 # Install, do not build
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --nst_all nco-4_4_7 # Build and install
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_cnt nco-4_4_7
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_prs nco-4_4_7
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cgd_cnt nco-4_4_7
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cray_prs nco-4_4_7
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --bbl_cnt nco-4_4_7
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --blk_cnt nco-4_4_7
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --dat_cnt nco-4_4_7
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --ute_prs nco-4_4_7
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4_4_8 # Build, do not release on SF
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --sf nco-4_4_8 # Build, release on SF
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --nst_all nco-4_4_8 # Install, do not build
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --nst_all nco-4_4_8 # Build and install
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_cnt nco-4_4_8
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_prs nco-4_4_8
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cgd_cnt nco-4_4_8
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cray_prs nco-4_4_8
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --bbl_cnt nco-4_4_8
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --blk_cnt nco-4_4_8
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --dat_cnt nco-4_4_8
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --ute_prs nco-4_4_8
 
 # Export daily snapshot
 # ${HOME}/nco/bld/nco_dst.pl --dbg=2 
@@ -32,7 +32,7 @@ BEGIN{
     unshift @INC,$ENV{'HOME'}.'/perl'; # Location of csz.pl and DBG.pm HaS98 p. 170
 } # end BEGIN
 
-my $CVS_Header='$Header: /cvsroot/nco/nco/bld/nco_dst.pl,v 1.218 2014/10/08 21:00:45 zender Exp $';
+my $CVS_Header='$Header: /cvsroot/nco/nco/bld/nco_dst.pl,v 1.219 2014/12/01 20:51:39 zender Exp $';
 
 # Specify modules
 use strict; # Protect all namespaces
@@ -69,9 +69,9 @@ my ($rsh_cmd,$rcp_cmd,$cp_cmd,$rm_cmd,$mkdir_cmd,$cvs_cmd);
 my $False=0;
 my $True=1;
 
-my $CVS_Date='$Date: 2014/10/08 21:00:45 $';
-my $CVS_Id='$Id: nco_dst.pl,v 1.218 2014/10/08 21:00:45 zender Exp $';
-my $CVS_Revision='$Revision: 1.218 $';
+my $CVS_Date='$Date: 2014/12/01 20:51:39 $';
+my $CVS_Id='$Id: nco_dst.pl,v 1.219 2014/12/01 20:51:39 zender Exp $';
+my $CVS_Revision='$Revision: 1.219 $';
 my $CVSROOT='zender at nco.cvs.sf.net:/cvsroot/nco'; # CVS repository
 my $DATA=$ENV{'DATA'};
 my $HOME=$ENV{'HOME'};
@@ -256,7 +256,7 @@ if($bld){
 # Set up FTP server
     chdir $dst_pth_pfx or die "$prg_nm: ERROR unable to chdir to $dst_pth_pfx: $!\n"; # $! is system error string
     cmd_prc("$cp_cmd $doc_fl ./$dst_vrs/doc"); # Copy derived documentation to source directory
-    cmd_prc("$tar_cmd cvzf $dst_fl --exclude='nco-4.4.7/debian*' --exclude='.cvsignore' --exclude=ncap_lex.c --exclude=ncap_yacc.[ch] ./$dst_vrs"); # Create gzipped tarfile
+    cmd_prc("$tar_cmd cvzf $dst_fl --exclude='nco-4.4.8/debian*' --exclude='.cvsignore' --exclude=ncap_lex.c --exclude=ncap_yacc.[ch] ./$dst_vrs"); # Create gzipped tarfile
     cmd_prc("$rsh_cmd $www_mch $rm_cmd $www_drc/src/$dst_fl"); # Remove any distribution with same name
     if($dly_snp){cmd_prc("$rsh_cmd $www_mch $rm_cmd -r $www_drc/src/nco-????????.tar.gz");} # Remove previous daily snapshots from WWW server
     cmd_prc("$rcp_cmd $dst_fl $www_mch:$www_drc/src"); # Copy local tarfile to WWW server
diff --git a/bm/NCO_benchmarks.pm b/bm/NCO_benchmarks.pm
index e766565..e6636ee 100644
--- a/bm/NCO_benchmarks.pm
+++ b/bm/NCO_benchmarks.pm
@@ -1,6 +1,6 @@
 package NCO_benchmarks;
 
-# $Header: /cvsroot/nco/nco/bm/NCO_benchmarks.pm,v 1.22 2013/12/02 01:05:55 zender Exp $
+# $Header: /cvsroot/nco/nco/bm/NCO_benchmarks.pm,v 1.23 2014/12/31 01:50:06 zender Exp $
 
 # Purpose: library module supporting nco_bm.pl benchmark and regression tests
 # File contains BENCHMARK code (as opposed to the REGRESSION tests in "NCO_rgr.pm")
@@ -80,7 +80,7 @@ sub benchmarks{
 #  #usually require the follow test to protect against MPI explosions
 # 	if ($mpi_prc == 0 || ($mpi_prc > 0 && $opr_sng_mpi =~ /$opr_nm/)) {
 #	# next, fill the $tst_cmd[] array with the nco commands that you want to test in order.
-#	# You can use as many as you want, with the proviso that the output file variables are
+#	# You may use as many as you want, with the proviso that the output file variables are
 #	# named uniquely using the ones described in nco_bm.pl: 336-350 (foo...).
 #	# The last nco command is usually an ncks command that examines a single value generated
 #	# from the preceding chain of commands
diff --git a/bm/NCO_bm.pm b/bm/NCO_bm.pm
index caba7d9..026ed8f 100644
--- a/bm/NCO_bm.pm
+++ b/bm/NCO_bm.pm
@@ -1,6 +1,6 @@
 package NCO_bm;
 
-# $Header: /cvsroot/nco/nco/bm/NCO_bm.pm,v 1.88 2014/05/27 16:51:56 zender Exp $
+# $Header: /cvsroot/nco/nco/bm/NCO_bm.pm,v 1.89 2014/12/31 01:50:06 zender Exp $
 
 # Purpose: Library for nco_bm.pl benchmark and regression tests
 # Module contains following functions:
@@ -136,7 +136,7 @@ appending history to file.
 This script is part of the netCDF Operators package:
 http://nco.sf.net
 
-Copyright 1995--2014 Charlie Zender
+Copyright 1995--2015 Charlie Zender
 
 USAGE
 exit(0);
diff --git a/bm/NCO_rgr.pm b/bm/NCO_rgr.pm
index d09f94c..1d0ea79 100644
--- a/bm/NCO_rgr.pm
+++ b/bm/NCO_rgr.pm
@@ -1,6 +1,6 @@
 package NCO_rgr;
 
-# $Header: /cvsroot/nco/nco/bm/NCO_rgr.pm,v 1.536 2014/11/26 05:18:52 zender Exp $
+# $Header: /cvsroot/nco/nco/bm/NCO_rgr.pm,v 1.549 2015/02/09 05:23:41 zender Exp $
 
 # Purpose: All REGRESSION tests for NCO operators
 # BENCHMARKS are coded in "NCO_benchmarks.pm"
@@ -76,8 +76,8 @@ sub tst_rgr {
     
     if($dodap ne "FALSE"){
 	print "DEBUG: in tst_rgr(), \$dodap = $dodap \n";
-	if ($dodap ne "" && $fl_pth =~ /http/) { $in_pth_arg = "-p $fl_pth"; }
-	if ($dodap eq "") { $in_pth_arg = "-p http://dust.ess.uci.edu/cgi-bin/dods/nph-dods/dodsdata"; }
+	if($dodap ne "" && $fl_pth =~ /http/) { $in_pth_arg = "-p $fl_pth"; }
+	if($dodap eq "") { $in_pth_arg = "-p http://dust.ess.uci.edu/cgi-bin/dods/nph-dods/dodsdata"; }
     }
     NCO_bm::dbg_msg(1,"-------------  REGRESSION TESTS STARTED from tst_rgr()  -------------");
     
@@ -133,9 +133,9 @@ print "\n";
     
 # printf("paused @ [%s:%d]  - hit return to continue\n", __FILE__, __LINE__); my $wait = <STDIN>;
     
+    $dsc_sng="Testing float modulo float";
     $tst_cmd[0]="ncap2 -h -O $fl_fmt $nco_D_flg -C -v -s 'tpt_mod=tpt%273.0f' $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -v tpt_mod -s '%.1f ' %tmp_fl_00%";
-    $dsc_sng="Testing float modulo float";
     $tst_cmd[2]="0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 ";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
@@ -143,9 +143,9 @@ print "\n";
     
 #printf("paused @ [%s:%d]  - hit return to continue\n", __FILE__, __LINE__); my $wait = <STDIN>;
 
+    $dsc_sng="Testing foo=log(e_flt)^1 (fails on AIX TODO ncap57)";
     $tst_cmd[0]="ncap2 -h -O $fl_fmt $nco_D_flg -C -v -s 'foo=log(e_flt)^1' $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -v foo -s '%.6f\\n' %tmp_fl_00%";
-    $dsc_sng="Testing foo=log(e_flt)^1 (fails on AIX TODO ncap57)";
     $tst_cmd[2]="1.000000";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
@@ -153,17 +153,17 @@ print "\n";
 #print "paused - hit return to continue"; my $wait = <STDIN>;
     
 # where did e_dbl tst_run??  it's in in.cdl but gets lost thru the rgrs...?
+    $dsc_sng="Testing foo=log(e_dbl)^1";
     $tst_cmd[0]="ncap2 -h -O $fl_fmt $nco_D_flg -C -v -s 'foo=log(e_dbl)^1' $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%.12f\\n' %tmp_fl_00%";
-    $dsc_sng="Testing foo=log(e_dbl)^1";
     $tst_cmd[2]="1.000000000000";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
+    $dsc_sng="Testing foo=4*atan(1)";
     $tst_cmd[0]="ncap2 -h -O $fl_fmt $nco_D_flg -C -v -s 'foo=4*atan(1)' $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%.12f\\n' %tmp_fl_00%";
-    $dsc_sng="Testing foo=4*atan(1)";
     $tst_cmd[2]="3.141592741013";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
@@ -178,9 +178,9 @@ print "\n";
     $#tst_cmd=0; # Reset array
     
     #fails - wrong result ???
+    $dsc_sng="Testing foo=gamma(0.5) (fails on AIX TODO ncap57)";
     $tst_cmd[0]="ncap2 -h -O $fl_fmt $nco_D_flg -C -v -s 'foo=gamma(0.5)' $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%.12f\\n' %tmp_fl_00%";
-    $dsc_sng="Testing foo=gamma(0.5) (fails on AIX TODO ncap57)";
     $tst_cmd[2]="1.772453851";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
@@ -202,20 +202,20 @@ print "\n";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array\
     
+    ##TODO ncap81
+    $dsc_sng="Casting variable with same name as dimension (failure expected on netCDF4 ncap81)";
     $tst_cmd[0]="ncap2 -h -O $fl_fmt $nco_D_flg -C -v -s 'defdim(\"a\",3);defdim(\"b\",4); a[\$a,\$b]=10;c=a(1,1);' $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -v c -s '%i' %tmp_fl_00%";
-    $dsc_sng="Casting variable with same name as dimension (failure expected on netCDF4 ncap81)";
-    ##TODO ncap81
     $tst_cmd[2]="10";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
 
+    ##TODO ncap81
+    $dsc_sng="Casting variable with a single dim of sz=1";
     $tst_cmd[0]="ncap2 -h -O $fl_fmt $nco_D_flg -C -v -s 'defdim(\"a\",1); b[\$a]=10;c=b(0:0);' $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncwa -h -O $fl_fmt $nco_D_flg -C -a a %tmp_fl_00% %tmp_fl_01%";
     $tst_cmd[2]="ncks -C -H -v b -s '%i' %tmp_fl_01%";
-    $dsc_sng="Casting variable with a single dim of sz=1";
-    ##TODO ncap81
     $tst_cmd[3]="10";
     $tst_cmd[4]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
@@ -223,7 +223,7 @@ print "\n";
 
 # printf("paused @ %s:%d  - hit return to continue", __FILE__ , __LINE__); my $wait=<STDIN>;
     
-    if ($dodap eq "FALSE") {
+    if($dodap eq "FALSE") {
 ####################
 #### ncatted tests #
 ####################
@@ -366,22 +366,20 @@ print "\n";
 ####################
 
 # ncbo #1
-
+    $dsc_sng="Difference a packed variable and be sure everything is zero or _FillValue by average whole remainder and comparing to zero.) FAILS with netCDF4";
     $tst_cmd[0]="ncbo $omp_flg -h -O $fl_fmt $nco_D_flg -v rec_var_dbl_mss_val_dbl_pck $in_pth_arg in.nc in.nc %tmp_fl_00%";;
     $tst_cmd[1]="ncwa $omp_flg -h -O $fl_fmt $nco_D_flg %tmp_fl_00% %tmp_fl_03%";;
     $tst_cmd[2]="ncks -C -H -s '%g' -v rec_var_dbl_mss_val_dbl_pck %tmp_fl_03%";
-    $dsc_sng="Difference a packed variable and be sure everything is zero or _FillValue by average whole remainder and comparing to zero.) FAILS with netCDF4";
     $tst_cmd[3]="0.0";
     $tst_cmd[4]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array - ok
 
 # ncbo #2
-
+    $dsc_sng="Whole file difference with broadcasting (OK to fail here fxm TODO nco757. Works with --mmr_drt, triggers segfault on OSs like FC Linux which have C-library armor. Harmless Failure caused by free'ing dangling pointer during memory cleanup.)";
     $tst_cmd[0]="ncwa $omp_flg -h -O $fl_fmt $nco_D_flg -a time $in_pth_arg in.nc %tmp_fl_03%";;
     $tst_cmd[1]="ncbo $omp_flg -h -O $fl_fmt $nco_D_flg $in_pth/in.nc %tmp_fl_03% %tmp_fl_00%";;
     $tst_cmd[2]="ncks -C -H -d time,9 -s '%g' -v rec_var_flt %tmp_fl_00%";
-    $dsc_sng="Whole file difference with broadcasting (OK to fail here fxm TODO nco757. Works with --mmr_drt, triggers segfault on OSs like FC Linux which have C-library armor. Harmless Failure caused by free'ing dangling pointer during memory cleanup.)";
     $tst_cmd[3]="4.5";
     $tst_cmd[4]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
@@ -389,121 +387,110 @@ print "\n";
 
 # ncbo #3    
 # ncbo -h -O --op_typ='-' -v mss_val_scl -p ~/nco/data in.nc in.nc ~/foo.nc
-    
+    $dsc_sng="difference scalar missing value";
     $tst_cmd[0]="ncbo $omp_flg -h -O $fl_fmt $nco_D_flg --op_typ='-' -v mss_val_scl $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H --no_blank -s '%g' -v mss_val_scl %tmp_fl_00%";
-    $dsc_sng="difference scalar missing value";
     $tst_cmd[2]="1.0e36";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array - ok
     
 # ncbo #4    
-    
+    $dsc_sng="difference with missing value attribute";
     $tst_cmd[0]="ncbo $omp_flg -h -O $fl_fmt $nco_D_flg --op_typ='-' -d lon,1 -v mss_val $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H --no_blank -s '%g' -v mss_val %tmp_fl_00%";
-    $dsc_sng="difference with missing value attribute";
     $tst_cmd[2]=1.0e36;
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array ok
     
 # ncbo #5  
-    
+    $dsc_sng="difference without missing value attribute";
     $tst_cmd[0]="ncbo $omp_flg -h -O $fl_fmt $nco_D_flg --op_typ='-' -d lon,0 -v no_mss_val $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%f' -v no_mss_val %tmp_fl_00%";
-    $dsc_sng="difference without missing value attribute";
     $tst_cmd[2]="0";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array ok
     
 # ncbo #6    
-    
+    $dsc_sng="_FillValues differ between files";
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -v mss_val_fst $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncrename -h -O $nco_D_flg -v mss_val_fst,mss_val %tmp_fl_00%";
     $tst_cmd[2]="ncbo -C $omp_flg -h -O $fl_fmt $nco_D_flg -y '-' -v mss_val %tmp_fl_00% ../data/in.nc %tmp_fl_01% 2> %tmp_fl_02%";
     $tst_cmd[3]="ncks -C -H --no_blank -s '%f,' -v mss_val %tmp_fl_01%";
-    $dsc_sng="_FillValues differ between files";
     $tst_cmd[4]="-999.000000,-999.000000,-999.000000,-999.000000";
     $tst_cmd[5]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array ok
     
 # ncbo #7   
-    
+    $dsc_sng="_FillValue in one variable (not both variables)";
     $tst_cmd[0]="ncrename -h $nco_D_flg -O -v no_mss_val,one_dmn_arr_with_and_without_mss_val $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncrename -h $nco_D_flg -O -v mss_val,one_dmn_arr_with_and_without_mss_val $in_pth_arg in.nc %tmp_fl_01%";
     $tst_cmd[2]="ncbo $omp_flg  -h -O $fl_fmt $nco_D_flg -y '-' -v one_dmn_arr_with_and_without_mss_val %tmp_fl_00% %tmp_fl_01% %tmp_fl_02% 2> %tmp_fl_03%";
     $tst_cmd[3]="ncks -C -H -d lon,0 -s '%f' -v one_dmn_arr_with_and_without_mss_val %tmp_fl_02%";
-    $dsc_sng="_FillValue in one variable (not both variables)";
     $tst_cmd[4]=0.0;
     $tst_cmd[5]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array ok
     
 # ncbo #8    
-    
+    $dsc_sng="ncdiff symbolically linked to ncbo";
     $tst_cmd[0]="ncdiff $omp_flg -h -O $fl_fmt $nco_D_flg -d lon,1 -v mss_val $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H --no_blank -s '%g' -v mss_val %tmp_fl_00%";
-    $dsc_sng="ncdiff symbolically linked to ncbo";
     $tst_cmd[2]=1.0e36;
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array ok
     
 # ncbo #9    
-    
+    $dsc_sng="difference with missing value attribute";
     $tst_cmd[0]="ncdiff $omp_flg -h -O $fl_fmt $nco_D_flg -d lon,1 -v mss_val $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H --no_blank -s '%g' -v mss_val %tmp_fl_00%";
-    $dsc_sng="difference with missing value attribute";
     $tst_cmd[2]=1.0e36;
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array ok
     
 # ncbo #10   
-    
+    $dsc_sng="Difference without missing value attribute";
     $tst_cmd[0]="ncdiff $omp_flg -h -O $fl_fmt $nco_D_flg -d lon,0 -v no_mss_val $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%f' -v no_mss_val %tmp_fl_00%";
-    $dsc_sng="Difference without missing value attribute";
     $tst_cmd[2]="0";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array ok
     
 # ncbo #11   
-    
+    $dsc_sng="Difference which tests broadcasting and changing variable IDs";
     $tst_cmd[0]="ncwa $omp_flg -C -h -O $fl_fmt $nco_D_flg -v rec_var_flt_mss_val_dbl $in_pth_arg in.nc %tmp_fl_03%";
     $tst_cmd[1]="ncbo $omp_flg -C -h -O $fl_fmt $nco_D_flg -v rec_var_flt_mss_val_dbl $in_pth/in.nc %tmp_fl_03% %tmp_fl_00%";
     $tst_cmd[2]="ncks -C -H -d time,3 -s '%f' -v rec_var_flt_mss_val_dbl %tmp_fl_00%";
-    $dsc_sng="Difference which tests broadcasting and changing variable IDs";
     $tst_cmd[3]="-1.0";
     $tst_cmd[4]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
 # ncbo #12    
-    
+    $dsc_sng="Difference which tests 3D broadcasting";
     $tst_cmd[0]="ncks -C -O $fl_fmt $nco_D_flg -v three_dmn_var_dbl $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncap2 -C -O $fl_fmt $nco_D_flg -v -s 'three_dmn_var_dbl[lon]={0.0,1,2,3};' $in_pth_arg in.nc %tmp_fl_01%";
     $tst_cmd[2]="ncbo $omp_flg -C -h -O $fl_fmt $nco_D_flg %tmp_fl_00% %tmp_fl_01% %tmp_fl_02%";
     $tst_cmd[3]="ncwa $omp_flg -C -h -O $fl_fmt $nco_D_flg -y ttl -v three_dmn_var_dbl %tmp_fl_02% %tmp_fl_03%";
     $tst_cmd[4]="ncks -C -H -s '%f' -v three_dmn_var_dbl %tmp_fl_03%";
-    $dsc_sng="Difference which tests 3D broadcasting";
     $tst_cmd[5]="2697";
     $tst_cmd[6]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
 # ncbo #13   
-# 	
+    $dsc_sng="Addition + 3D broadcasting+ MSA";
     $tst_cmd[0]="ncks -C -O $fl_fmt $nco_D_flg -v three_dmn_var_dbl $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncap2 -C -O $fl_fmt $nco_D_flg -v -s 'three_dmn_var_dbl[lon]={0.0,1,2,3};' $in_pth_arg in.nc %tmp_fl_01%";
     $tst_cmd[2]="ncbo $omp_flg -C -h -O $fl_fmt $nco_D_flg -d time,0,4 -d time,9 -d lon,0 -d lon,3 %tmp_fl_00% %tmp_fl_01% %tmp_fl_02%";
     $tst_cmd[3]="ncwa $omp_flg -C -h -O $fl_fmt $nco_D_flg -y ttl -v three_dmn_var_dbl %tmp_fl_02% %tmp_fl_03%";
     $tst_cmd[4]="ncks -C -H -s '%f' -v three_dmn_var_dbl %tmp_fl_03%";
-    $dsc_sng="Addition + 3D broadcasting+ MSA";
     $tst_cmd[5]="422";
     $tst_cmd[6]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
@@ -511,11 +498,10 @@ print "\n";
 	
 
 # ncbo #14
-
+    $dsc_sng="Copy associated coordinates -v three_dmn_rec_var";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -v three_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncbo $omp_flg -O $fl_fmt $nco_D_flg -v three_dmn_rec_var %tmp_fl_00% %tmp_fl_00% %tmp_fl_01%";
     $tst_cmd[2]="ncks -C -H -v three_dmn_rec_var -d time,9,9,1 -d lat,1,1,1 -d lon,3,3,1 %tmp_fl_01%";
-    $dsc_sng="Copy associated coordinates -v three_dmn_rec_var";
     $tst_cmd[3]="time[9]=10 lat[1]=90 lon[3]=270 three_dmn_rec_var[79]=0";
     $tst_cmd[4]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
@@ -523,12 +509,11 @@ print "\n";
     
 
 #ncbo #15
-#Operate files containing same variable in different orders
+#Operate on files containing same variable in different orders
 # ncks -O    -v time,one ~/nco/data/in.nc ~/foo1.nc
 # ncks -O -a -v one,time ~/nco/data/in.nc ~/foo2.nc
 # ncbo -O -p ~ foo1.nc foo2.nc ~/foo3.nc
 # ncks -C -H -v one ~/foo3.nc
-
     $dsc_sng="Concatenate variables with different ID ordering";
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -C    -v time,one $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -h -O $fl_fmt $nco_D_flg -C -a -v one,time $in_pth_arg in.nc %tmp_fl_01%";
@@ -544,17 +529,13 @@ print "\n";
     #######################################
 
     if($RUN_NETCDF4_TESTS == 1){
-
-
-#    
 # NCO 4.3.0: added support for groups; ncbo -g
-#   
+
 #ncbo #16
 # ncbo -O -y add -g g4 -v one_dmn_rec_var ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc ~/foo.nc
 # ncks -C -H -s '%d'  -d time,0,0,1 -g g4 -v one_dmn_rec_var ~/foo.nc
 # /g4/one_dmn_rec_var
 # time[0]=1 one_dmn_rec_var[0]=2 
-
     $dsc_sng="(Groups) Addition -y add -g g4 -v one_dmn_rec_var";
     $tst_cmd[0]="ncbo -O $fl_fmt $nco_D_flg -y add -g g4 -v one_dmn_rec_var $in_pth_arg in_grp.nc in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%d' -d time,0,0,1 -g g4 -v one_dmn_rec_var %tmp_fl_00%";
@@ -705,7 +686,7 @@ print "\n";
 # both RNK_1_GTR and table flag of file 1 or 2
 # result is time[3] instead of time[3]=4
 
-    if (0) {
+    if(0) {
     $dsc_sng="(Groups) Process ensembles in file 2 with common variable at root in file 1";
     $tst_cmd[0]="ncbo -O --op_typ=add $fl_fmt $nco_D_flg $in_pth_arg obs.nc mdl_1.nc  %tmp_fl_00%";
 	$tst_cmd[1]="ncks -C -g cesm_01 -v tas1 %tmp_fl_00%";
@@ -1079,10 +1060,10 @@ print "\n";
 #    
 # NCO 4.3.1 - ncecat for groups 
 #
+
 #ncecat #4 part1
 #ncecat -h -O -g g1g1 -v v1 ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc ~/foo.nc
-#ncks -d record,1,1,1 ~/foo.nc
-
+#ncks -H -d record,1,1,1 ~/foo.nc
     $dsc_sng="(Groups) Concatenate variables/groups 1: scalars -g g1g1 -v v1";
     $tst_cmd[0]="ncecat $nco_D_flg -h -O -g g1g1 -v v1 $in_pth_arg in_grp.nc in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -H -d record,1,1,1 %tmp_fl_00%";
@@ -1091,10 +1072,9 @@ print "\n";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			     
 
-#ncecat #5 same as #4 but look metadata
+#ncecat #5 same as #4 but look at metadata
 #ncecat -h -O -g g1g1 -v v1 ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc ~/foo.nc
-#ncks -d record,1,1,1 ~/foo.nc    
-    
+#ncks --cdl ~/foo.nc | grep 'v1 ='
     $dsc_sng="(Groups) Concatenate variables/groups 2: scalars -g g1g1 -v v1";
     $tst_cmd[0]="ncecat $nco_D_flg -h -O -g g1g1 -v v1 $in_pth_arg in_grp.nc in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks --cdl %tmp_fl_00% | grep 'v1 ='";
@@ -1106,7 +1086,6 @@ print "\n";
 #ncecat #6 part1
 #ncecat -h -O -g g6g1 -v area ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc ~/foo.nc
 #ncks -H -C -d record,1,1,1 -d lat,1,1,1 -g g6g1 -v area ~/foo.nc
-
     $dsc_sng="(Groups) Concatenate variables/groups 1: 1D -g g6g1 -v area";
     $tst_cmd[0]="ncecat $nco_D_flg -h -O -g g6g1 -v area $in_pth_arg in_grp.nc in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -H -C -d record,1,1,1 -d lat,1,1,1 -g g6g1 -v area %tmp_fl_00%";
@@ -1119,7 +1098,6 @@ print "\n";
 #ncecat -h -O -g g6g1 -v area ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc ~/foo.nc
 #ncks -C -g g6g1 -v area ~/foo.nc
 #area dimension 0: record, size = 2 (Record non-coordinate dimension)
-    
     $dsc_sng="(Groups) Concatenate variables/groups 2: 1D -g g6g1 -v area";
     $tst_cmd[0]="ncecat $nco_D_flg -h -O -g g6g1 -v area $in_pth_arg in_grp.nc in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -g g6g1 -v area %tmp_fl_00% | grep 'area dimension 0: /record, size = 2, chunksize = 1 (Record non-coordinate dimension)'";
@@ -1131,7 +1109,6 @@ print "\n";
 #ncecat #8 part1
 #ncecat -h -O -v two_dmn_rec_var ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc ~/foo.nc
 #ncks -C -d record,1,1,1 -d time,9,9,1 -d lev,2,2,1 -v two_dmn_rec_var ~/foo.nc
-
     $dsc_sng="(Groups) Concatenate variables/groups 1: 2D -v two_dmn_rec_var";
     $tst_cmd[0]="ncecat $nco_D_flg -h -O -v two_dmn_rec_var $in_pth_arg in_grp.nc in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -d record,1,1,1 -d time,9,9,1 -d lev,2,2,1 -v two_dmn_rec_var %tmp_fl_00%";
@@ -1144,7 +1121,6 @@ print "\n";
 #Check that "time" is eliminated as record
 #ncecat -O ~/nco/data/in_grp_3.nc ~/nco/data/in_grp_3.nc ~/foo.nc
 #ncks -m -C -g g25g1 -v one_dmn_rec_var ~/foo.nc
-
     $dsc_sng="(Groups) Concatenate variables/groups";
     $tst_cmd[0]="ncecat $nco_D_flg -h -O $in_pth_arg in_grp_3.nc in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -C -g g25g1 -v one_dmn_rec_var %tmp_fl_00%";
@@ -1156,7 +1132,6 @@ print "\n";
 #ncecat #10
 #Chunking
 # ncecat -O -4 -D 5 -C --cnk_plc=all --cnk_map=rd1 -v date_int -p ~/nco/data in.nc in.nc ~/foo.nc
-
     $dsc_sng="Chunking --cnk_plc=all --cnk_map=rd1 -v date_int";
     $tst_cmd[0]="ncecat -O -C -4 $nco_D_flg --cnk_plc=all --cnk_map=rd1 -v date_int $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks %tmp_fl_00% | grep 'date_int dimension 0'";
@@ -1168,7 +1143,6 @@ print "\n";
 #ncecat #11
 #Chunking 
 #ncecat -O -C -4 -v four_dmn_rec_var --cnk_plc=xpl --cnk_dmn lat,2 --cnk_dmn lon,4 -p ~/nco/data in.nc in.nc ~/foo.nc
-
     $dsc_sng="Chunking -v four_dmn_rec_var --cnk_dmn lat,2 --cnk_dmn lon,4";
     $tst_cmd[0]="ncecat -O -C -4 $nco_D_flg -v four_dmn_rec_var --cnk_plc=xpl --cnk_dmn lat,2 --cnk_dmn lon,4  $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks %tmp_fl_00% | grep 'four_dmn_rec_var dimension 2'";
@@ -1185,7 +1159,6 @@ print "\n";
 # ncks -O -a -v one,time ~/nco/data/in.nc ~/foo2.nc
 # ncecat -O -p ~ foo1.nc foo2.nc ~/foo3.nc
 # ncks -C -H -v one -d record,1 -s '%g' ~/foo3.nc
-
     $dsc_sng="Concatenate variables with different ID ordering";
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -C    -v time,one $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -h -O $fl_fmt $nco_D_flg -C -a -v one,time $in_pth_arg in.nc %tmp_fl_01%";
@@ -1196,8 +1169,18 @@ print "\n";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 	
 
-	
-
+#ncecat #13
+# Copy coordinates from first file as is, do not add record dimension to them
+# ncecat -O -v time,one,lat,lon,three_dmn_rec_var -p ~/nco/data in.nc in.nc in.nc ~/foo.nc
+# ncks -C -H -v lat -d lat,1 ~/foo.nc
+    $dsc_sng="Verify concatentated coordinates do not gain new record dimension";
+    $tst_cmd[0]="ncecat -h -O $fl_fmt $nco_D_flg -v time,one,lat,lon,three_dmn_rec_var $in_pth_arg in.nc in.nc in.nc %tmp_fl_00%";
+    $tst_cmd[1]="ncks $fl_fmt $nco_D_flg -C -H -v lat -d lat,1 %tmp_fl_00%";
+    $tst_cmd[2]="lat[1]=90";
+    $tst_cmd[3]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 	
+    
 #print "paused - hit return to continue"; my $wait=<STDIN>;
     
 #####################
@@ -1207,11 +1190,9 @@ print "\n";
 ####################
 
 #ncflint #1
-
-
+    $dsc_sng="identity weighting";
     $tst_cmd[0]="ncflint $omp_flg -h -O $fl_fmt $nco_D_flg -w 3,-2 -v one $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%e' -v one %tmp_fl_00%";
-    $dsc_sng="identity weighting";
     $tst_cmd[2]="1.0";
     $tst_cmd[3]="NO_SS";
     $tst_cmd[3]="SS_OK";
@@ -1219,13 +1200,12 @@ print "\n";
     $#tst_cmd=0; # Reset array
     
 #ncflint #2    
-    
-    if ($dodap eq "FALSE"){
+    if($dodap eq "FALSE"){
+	$dsc_sng="identity interpolation";
 	$tst_cmd[0]="ncrename -h -O $nco_D_flg -v zero,foo $in_pth_arg in.nc %tmp_fl_01%";
 	$tst_cmd[1]="ncrename -h -O $nco_D_flg -v one,foo $in_pth_arg in.nc %tmp_fl_00%";
 	$tst_cmd[2]="ncflint $omp_flg -h -O $fl_fmt $nco_D_flg -i foo,0.5 -v two %tmp_fl_01% %tmp_fl_00% %tmp_fl_02%";
 	$tst_cmd[3]="ncks -C -H -s '%e' -v two %tmp_fl_02%";
-	$dsc_sng="identity interpolation";
 	$tst_cmd[4]="2.0";
 	$tst_cmd[5]="NO_SS";
 	$tst_cmd[5]="SS_OK";
@@ -1234,7 +1214,6 @@ print "\n";
     }
     
 #ncflint #3
-    
     $dsc_sng="switch order of occurrence to test for commutivity";
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -C -d lon,1 -v mss_val $in_pth_arg in.nc %tmp_fl_01%";
     $tst_cmd[1]="ncks -h -O $fl_fmt $nco_D_flg -C -d lon,0 -v mss_val $in_pth_arg in.nc %tmp_fl_02%";
@@ -1248,7 +1227,6 @@ print "\n";
     $#tst_cmd=0; # Reset array
     
 #ncflint #4    
-
     $dsc_sng="output type float when interpolating between two packed floats";
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -C -v pck_3 $in_pth_arg in.nc %tmp_fl_01%";
     $tst_cmd[1]="ncks -h -O $fl_fmt $nco_D_flg -C -v pck_5 $in_pth_arg in.nc %tmp_fl_02%";
@@ -1260,15 +1238,12 @@ print "\n";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
 
-
-
 #ncflint #5
 #Operate files containing same variable in different orders
 # ncks -O    -v time,one ~/nco/data/in.nc ~/foo1.nc
 # ncks -O -a -v one,time ~/nco/data/in.nc ~/foo2.nc
 # ncra -O -p ~ foo1.nc foo2.nc ~/foo3.nc
 # ncks -C -H -v one ~/foo3.nc
-
     $dsc_sng="Concatenate variables with different ID ordering";
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -C    -v time,one $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -h -O $fl_fmt $nco_D_flg -C -a -v one,time $in_pth_arg in.nc %tmp_fl_01%";
@@ -1285,12 +1260,10 @@ print "\n";
     #######################################
 
     if($RUN_NETCDF4_TESTS == 1){
-
 		
 #ncflint #6 
 # ncflint -4 -O -w 0.8,0.0 -p ~/nco/data in.nc in.nc ~/foo.nc
-# ncks -H -C -v time  -d time,9,9,1 ~/foo.nc
-
+# ncks -H -C -v time -d time,9,9,1 ~/foo.nc
     $dsc_sng="-w 0.8,0.0 in.nc in.nc";
     $tst_cmd[0]="ncflint $nco_D_flg -4 -O -w 0.8,0.0 $in_pth_arg in.nc in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -H -C -v time  -d time,9,9,1 %tmp_fl_00%";
@@ -1312,7 +1285,7 @@ print "\n";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 	
    
-# NCO 4.3.2 ncflint -- groups   
+# NCO 4.3.2 ncflint -- groups
  
 #ncflint #8
 # ncflint -h -O -g g4 -v one_dmn_rec_var -w 1,1 ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc ~/foo.nc
@@ -1339,12 +1312,11 @@ print "\n";
 ####################
 
 #ncks #01   
-
+    $dsc_sng="Create T42 variable named one, uniformly 1.0 over globe in %tmp_fl_03%. (FAILURE with netCDF4 ncrename nco821)";
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -v lat_T42,lon_T42,gw_T42 $in_pth_arg in.nc %tmp_fl_03%";
     $tst_cmd[1]="ncrename -h -O $nco_D_flg -d lat_T42,lat -d lon_T42,lon -v lat_T42,lat -v gw_T42,gw -v lon_T42,lon %tmp_fl_03%";
     $tst_cmd[2]="ncap2 -h -O $fl_fmt $nco_D_flg -s 'one[lat,lon]=lat*lon*0.0+1.0' -s 'zero[lat,lon]=lat*lon*0.0' %tmp_fl_03% %tmp_fl_04%";
     $tst_cmd[3]="ncks -C -H -s '%g' -v one -F -d lon,128 -d lat,64 %tmp_fl_04% ";
-    $dsc_sng="Create T42 variable named one, uniformly 1.0 over globe in %tmp_fl_03%. (FAILURE with netCDF4 ncrename nco821)";
     $tst_cmd[4]=1;
     $tst_cmd[5]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
@@ -1352,26 +1324,23 @@ print "\n";
 
 #ncks #02   
 #passes, but returned string includes tailing NULLS (<nul> in nedit)
-
-    $tst_cmd[0]="ncks -C -H -s '%c' -v fl_nm $in_pth_arg in.nc";
     $dsc_sng="extract filename string";
+    $tst_cmd[0]="ncks -C -H -s '%c' -v fl_nm $in_pth_arg in.nc";
     $tst_cmd[1]="/home/zender/nco/data/in.cdl";
     $tst_cmd[2]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
 #ncks #03
-    
+    $dsc_sng="extract a dimension";
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -v lev $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%f,' -v lev %tmp_fl_00%";
-    $dsc_sng="extract a dimension";
     $tst_cmd[2]="100.000000,500.000000,1000.000000";
     $tst_cmd[3]="SS_OK";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
 #ncks #04
-    
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -v three_dmn_var $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%f' -v three_dmn_var -d lat,1,1 -d lev,2,2 -d lon,3,3 %tmp_fl_00%";
     $dsc_sng="extract a variable with limits";
@@ -1552,7 +1521,6 @@ print "\n";
 # 
 
 #ncks #19 groups: add associated variable "lat" of "area" to extraction list
-
     $dsc_sng="(Groups) Extract associated coordinate variable";
     $tst_cmd[0]="ncks -h -O $fl_fmt $nco_D_flg -v area $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%g' -v lat %tmp_fl_00%";
@@ -1562,50 +1530,38 @@ print "\n";
     $#tst_cmd=0; # Reset array    
     
 #ncks #20 groups: Add to extraction list all coordinates associated with CF convention
-
     $dsc_sng="(Groups) Add CF convention variables";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -g g7 -v gds_var $in_pth_arg in_grp.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks -C -H -s '%g' -v lat_gds %tmp_fl_00%";  
     $tst_cmd[2]="-90-30-3000303090";
     $tst_cmd[3]="SS_OK";
-   
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
 #ncks #21 groups: Extract variables in groups (test -g with -v)
-
     $dsc_sng="(Groups) Extract variables in groups";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -v scl -g g1g1,g1 $in_pth_arg in_grp.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks -C -H -s '%g' %tmp_fl_00%";
     $tst_cmd[2]="1.11";
     $tst_cmd[3]="SS_OK";
-   
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
 
 #ncks #22 groups: Create variables in groups (test -G with -v and -g)
-
     $dsc_sng="(Groups) Create variables in groups";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -G g8 -g g3 -v scl $in_pth_arg in_grp_3.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks -C -H -s '%g' %tmp_fl_00%"; 
     $tst_cmd[2]="1.3";
     $tst_cmd[3]="SS_OK";
-   
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
 #ncks #23 groups: Hyperslabs (test -d with -v and -g: Extracts the second value (2) from g4/one_dmn_rec_var)
-
     $dsc_sng="(Groups) Hyperslabs in groups";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -g g4 -v one_dmn_rec_var -d time,1,1 $in_pth_arg in_grp.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks -H -s '%d' %tmp_fl_00%"; 
     $tst_cmd[2]="2";
     $tst_cmd[3]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
 
@@ -1614,62 +1570,47 @@ print "\n";
 # 
 
 #ncks #24 groups: Extract group attributes
-
     $dsc_sng="(Groups) Extract group attributes";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -g g3 $in_pth_arg in_grp_3.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks %tmp_fl_00% | grep g3_group_attribute";
     $tst_cmd[2]="Group attribute 0: g3_group_attribute, size = 18 NC_CHAR, value = g3_group_attribute";
     $tst_cmd[3]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
 #ncks #25 groups: Extract global attributes
-
     $dsc_sng="Extract global attributes";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg $in_pth_arg in_grp.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks %tmp_fl_00% | grep Conventions";
     $tst_cmd[2]="Global attribute 0: Conventions, size = 6 NC_CHAR, value = CF-1.0";
     $tst_cmd[3]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
 #ncks #26 groups: Extract "bounds" variables (extract /g8/ilev)
-
     $dsc_sng="(Groups) Extract 'bounds' variables";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -v lev $in_pth_arg in_grp.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks -a -O -H  -s '%g' %tmp_fl_00% ";    
     $tst_cmd[2]="1005001000";
     $tst_cmd[3]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
     
 #ncks #27 groups: Extract group attributes with GPE
-
     $dsc_sng="(Groups) GPE group attribute extraction";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -G g9 -g g3 -v scl $in_pth_arg in_grp_3.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks %tmp_fl_00% | grep g3_group_attribute";
     $tst_cmd[2]="Group attribute 0: g3_group_attribute, size = 18 NC_CHAR, value = g3_group_attribute";
     $tst_cmd[3]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
 	
 #ncks #28 groups: Group dimension hyperslabs
-
     $dsc_sng="(Groups) Group dimension hyperslabs";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -v gds_var -d gds_crd,1,1 $in_pth_arg in_grp.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks -C -H -v lat_gds -s '%g' %tmp_fl_00%";
     $tst_cmd[2]="-30";
     $tst_cmd[3]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
 
@@ -1678,19 +1619,14 @@ print "\n";
 # 
     
 #ncks #29 groups: Sort output alphabetically
-
     $dsc_sng="(Groups) Sort output alphabetically";
     $tst_cmd[0]="ncks -z $in_pth_arg in_grp.nc | tail -1";
-
     $tst_cmd[1]="var: /unique";
     $tst_cmd[2]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
-
     
 #ncks #30 2D variable definition
-
     $dsc_sng="2D variable definition";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v ilev $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks %tmp_fl_00%";
@@ -1701,56 +1637,42 @@ print "\n";
 
 #ncks #31 Variable/Group extraction test 1 (netCDF4 file)
 #extract all variables in g6 = area,area1, refine to area1 only
-
     $dsc_sng="(Groups) Variable/Group extraction test 1 (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -g g6 $in_pth_arg in_grp.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks -v area1 %tmp_fl_00%";
     $tst_cmd[2]="lat[1] area1[1]=31";
     $tst_cmd[3]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 
 
 #ncks #32 Variable/Group extraction test 2 (netCDF4 file)
 #extract all variables in g6 = area,area1, refine to area1 only
 #use -d 
-
     $dsc_sng="(Groups) Variable/Group extraction test 2 (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -g g6 $in_pth_arg in_grp.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks -v area1 -d lat,0,0 %tmp_fl_00%";
     $tst_cmd[2]="lat[0] area1[0]=21";
     $tst_cmd[3]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 
  
 #ncks #33 Variable/Group extraction test 3 (netCDF4 file)
 #extract all variables in g6g1 (second level group) = area
-
-
     $dsc_sng="(Groups) Variable/Group extraction test 3 (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -g g6g1 $in_pth_arg in_grp.nc";
-
     $tst_cmd[1]="lat[1]=90 area[1]=50";
     $tst_cmd[2]="SS_OK";  
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
-  
-	
+
 #ncks #34 Variable/Group extraction test 4 (netCDF4 file)
 #extract all variables "area" = /area /g6/area /g6/g6g1/area
 #grep -w = all word
 #NOTE: test repeated for 3 strings, for non-netcDF4 cases, output is empty string, wildcard . used  
-
     $dsc_sng="(Groups) Variable/Group extraction test 4-1 (netCDF4 file)";
-   $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v are. $in_pth_arg in_grp.nc | grep -w /g6/g6g1/area";
-
+    $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v are. $in_pth_arg in_grp.nc | grep -w /g6/g6g1/area";
     $tst_cmd[1]="/g6/g6g1/area";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 
 	
@@ -1758,13 +1680,10 @@ print "\n";
 #extract all variables "area" = /area /g6/area /g6/g6g1/area
 #grep -w = all word
 #NOTE: test repeated for 3 strings, for non-netcDF4 cases, output is empty string, wildcard . used  
-
     $dsc_sng="(Groups) Variable/Group extraction test 4-2 (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v are. $in_pth_arg in_grp.nc | grep -w /g6/area";
-
     $tst_cmd[1]="/g6/area";
     $tst_cmd[2]="SS_OK"; 
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 		
 	
@@ -1772,71 +1691,53 @@ print "\n";
 #extract all variables "area" = /area /g6/area /g6/g6g1/area
 #grep -w = all word
 #NOTE: test repeated for 3 strings, for non-netcDF4 cases, output is empty string, wildcard . used  
-
     $dsc_sng="(Groups) Variable/Group extraction test 4-3 (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v are. $in_pth_arg in_grp.nc | grep -o -w area";
-
     $tst_cmd[1]="area";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			
 	
 #ncks #37 Variable/Group extraction test 5 (netCDF4 file)
 # Extract all variables "area" in g6g1
-
     $dsc_sng="(Groups) Variable/Group extraction test 5 (netCDF4 file)";
     $tst_cmd[0]="ncks -H $fl_fmt $nco_D_flg -C -s '%g' -v area -g g6g1 -d lat,0 $in_pth_arg in_grp.nc";
-
     $tst_cmd[1]="40";
     $tst_cmd[2]="SS_OK";    
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array			
 	
 #ncks #38 Variable/Group extraction test 6 (netCDF4 file)
 #extract all variables "area" in g6g1 = g6/g6g1/area 
-
-
     $dsc_sng="(Groups) Variable/Group extraction test 6 (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v area -g g6g1 $in_pth_arg in_grp.nc";
-
     $tst_cmd[1]="lat[1]=90 area[1]=50";
     $tst_cmd[2]="SS_OK";  
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
-
 	
 #ncks #39 Variable/Group extraction test 7 (netCDF4 file)
 #extract all variables "area" in g6 and g6g1 = g6/g6g1/area, g6/area
 #NOTE: test repeated for 2 strings, for non-netcDF4 case, output is empty string 
-
     $dsc_sng="(Groups) Variable/Group extraction test 7-1 (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v area -g g6,g6g1 $in_pth_arg in_grp.nc | grep -w /g6/g6g1/area";
-
     $tst_cmd[1]="/g6/g6g1/area";
     $tst_cmd[2]="SS_OK";     
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 							
 	
 #ncks #40 Variable/Group extraction test 7 (netCDF4 file)
 #extract all variables "area" in g6 and g6g1 = g6/g6g1/area, g6/area
 #NOTE: test repeated for 2 strings, for non-netcDF4 case, output is empty string 
-
     $dsc_sng="(Groups) Variable/Group extraction test 7-2 (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v area -g g6,g6g1 $in_pth_arg in_grp.nc | grep -w /g6/area";
-
     $tst_cmd[1]="/g6/area";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 
 	
 #ncks #41 Variable/Group extraction test 8 (netCDF3 file)
 #extract all variables "area" = /area 
-
     $dsc_sng="(Groups) Variable/Group extraction test 8 (netCDF3 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v area $in_pth_arg in.nc";
     $tst_cmd[1]="lat[1]=90 area[1]=10 meter2";
@@ -1845,7 +1746,6 @@ print "\n";
     $#tst_cmd=0; # Reset array 							
 	
 #ncks #42 Extract associated coordinates test 1 (netCDF3 file) 
-
     $dsc_sng="Extract associated coordinates test 1 (netCDF3 file) ";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -v rz $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -v rlev %tmp_fl_00% | grep -o -w rlev";
@@ -1855,7 +1755,6 @@ print "\n";
     $#tst_cmd=0; # Reset array 
 	
 #ncks #43 Extract associated coordinates test 2 (netCDF3 file) 
-
     $dsc_sng="Extract associated coordinates test 2 (netCDF3 file) ";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -C -v rz $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -v rlev %tmp_fl_00% | grep -w /rlev";
@@ -1871,33 +1770,26 @@ print "\n";
 # /g5/g1/rz
 # /g5/rlev
 # output must not contain /g3
-
     $dsc_sng="(Groups) Extract associated coordinates test 3 (netCDF4 file) ";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg -g g5g1 -v rz $in_pth_arg in_grp_3.nc %tmp_fl_00%";
-
-	$tst_cmd[1]="ncks -H %tmp_fl_00%";
-	$tst_cmd[2]="rlev[2]=1"; # data for /g3/rlev differs from /g5/rlev
+    $tst_cmd[1]="ncks -H %tmp_fl_00%";
+    $tst_cmd[2]="rlev[2]=1"; # data for /g3/rlev differs from /g5/rlev
     $tst_cmd[3]="SS_OK";
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 
 	
 #ncks #45 Extract CF 'coordinates' variables(netCDF4 file)
 #gds_crd:coordinates = "lat_gds lon_gds";
 #ncks -v gds_crd ~/nco/data/in_grp.nc 
-
     $dsc_sng="(Groups) Extract CF 'coordinates' variables(netCDF4 file)";
     $tst_cmd[0]="ncks $nco_D_flg -v gds_crd $in_pth_arg in_grp.nc | grep -w /g7/lat_gds";
-
     $tst_cmd[1]="/g7/lat_gds";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 	
 	
 #ncks #46 Extract CF 'coordinates' variables (netCDF3 file)
 #gds_crd:coordinates = "lat_gds lon_gds";
-
     $dsc_sng="Extract CF 'coordinates' variables (netCDF3 file)";
     $tst_cmd[0]="ncks $nco_D_flg -v gds_crd $in_pth_arg in.nc | grep -o -w lat_gds";
     $tst_cmd[1]="lat_gds";
@@ -1907,19 +1799,15 @@ print "\n";
 	
 #ncks #47 Extract CF 'bounds' variables (netCDF4 file)
 #lev:bounds = "ilev";
-
     $dsc_sng="(Groups) Extract CF 'bounds' variables (netCDF4 file)";
     $tst_cmd[0]="ncks $nco_D_flg -g g8 -v lev $in_pth_arg in_grp_3.nc | grep -w /g8/ilev";
-
     $tst_cmd[1]="/g8/ilev";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 		
 	
 #ncks #48 Extract CF 'bounds' variables (netCDF3 file)
 #lev:bounds = "ilev";
-
     $dsc_sng="Extract CF 'bounds' variables (netCDF3 file)";
     $tst_cmd[0]="ncks $nco_D_flg -v lev $in_pth_arg in.nc | grep -o -w ilev";
     $tst_cmd[1]="ilev";
@@ -1928,7 +1816,6 @@ print "\n";
     $#tst_cmd=0; # Reset array 			
     
 #ncks #49
-
     $dsc_sng="Check --mk_rec_dmn (netCDF3 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg --mk_rec_dmn lat -v three_dmn_var $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -m -v lat %tmp_fl_00% | egrep -o -w 'Record coordinate is lat'";
@@ -1938,7 +1825,6 @@ print "\n";
     $#tst_cmd=0; # Reset array 			
 
 #ncks #50    
-    
     $dsc_sng="(Groups) Check --mk_rec_dmn (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg --mk_rec_dmn lat -v lat_lon $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -m -v lat %tmp_fl_00% | egrep -o -w 'Record coordinate is lat'";
@@ -1948,7 +1834,6 @@ print "\n";
     $#tst_cmd=0; # Reset array 			
 
 #ncks #51
-    
     $dsc_sng="Check --fix_rec_dmn (netCDF3 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg --fix_rec_dmn time -v three_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -m -v time %tmp_fl_00% | egrep -o -w 'Coordinate is time'";
@@ -1959,7 +1844,6 @@ print "\n";
     
 #ncks #52    
 # ncks -O --fix_rec_dmn time -v three_dmn_rec_var -p ~/nco/data in_grp.nc ~/foo.nc
-
     $dsc_sng="(Groups) Check --fix_rec_dmn (netCDF4 file)";
     $tst_cmd[0]="ncks -O $fl_fmt $nco_D_flg --fix_rec_dmn time -v three_dmn_rec_var $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -m -v time %tmp_fl_00% | egrep -o -w 'Coordinate is time'";
@@ -1969,7 +1853,6 @@ print "\n";
     $#tst_cmd=0; # Reset array 			
 
 #ncks #53    
-    
     $dsc_sng="--fix_rec_dmn with MM3 workaround (netCDF3->netCDF3 file)";
     $tst_cmd[0]="ncks -O $nco_D_flg --fix_rec_dmn time -v one,two,one_dmn_rec_var,two_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -m -v time %tmp_fl_00% | egrep -o -w 'Coordinate is time'";
@@ -1985,12 +1868,10 @@ print "\n";
 	$tst_cmd[1]="ncks -C -m -v time %tmp_fl_00% | egrep -o -w 'Coordinate dimension'";
 	$tst_cmd[2]="Record coordinate dimension";
 	$tst_cmd[3]="SS_OK";   
-
 	NCO_bm::tst_run(\@tst_cmd);
 	$#tst_cmd=0; # Reset array 			
     } # endif false
     
-    
 # NCO 4.2.6 tests
 # This version has a major change in the way dimensions are handled; the global array lmt_all was eliminated and replaced
 # with GTT (Group Traversal Table) structures that contain full dimension paths; it needs extensive testing, in special
@@ -2039,13 +1920,10 @@ print "\n";
 # /g10/two_dmn_rec_var
 # time[1]=2 lev[1]=500 two_dmn_rec_var[4]=2.1 
 # time[3]=4 lev[1]=500 two_dmn_rec_var[10]=2.3 
-#
     $dsc_sng="(Groups) MSA --dmn time,1,3,2 --dmn lev,1,1,1";
     $tst_cmd[0]="ncks $nco_D_flg -H -C --dmn time,1,3,2 --dmn lev,1,1,1 -v two_dmn_rec_var $in_pth_arg in_grp.nc";
-
     $tst_cmd[1]="time[3]=4 lev[1]=500 two_dmn_rec_var[10]=2.3";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			    
 
@@ -2056,13 +1934,10 @@ print "\n";
 #time[1]=2 lev[2]=1000 two_dmn_rec_var[5]=3 
 #time[3]=4 lev[0]=100 two_dmn_rec_var[9]=1 
 #time[3]=4 lev[2]=1000 two_dmn_rec_var[11]=3 
-
     $dsc_sng="(Groups) MSA --dmn time,1,1,1 --dmn time,3,3,1 --dmn lev,0,0,1";
     $tst_cmd[0]="ncks $nco_D_flg -H -C --dmn time,1,1,1 --dmn time,3,3,1 --dmn lev,0,0,1 --dmn lev,2,2,1 -v two_dmn_rec_var $in_pth_arg in_grp.nc";
-
     $tst_cmd[1]="time[3]=4 lev[2]=1000 two_dmn_rec_var[11]=3";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			  
 
@@ -2071,13 +1946,10 @@ print "\n";
 #/g16/lon2_var
 #lon2[1] lon2_var[1]=1 
 #lon2[3] lon2_var[3]=3 
-
     $dsc_sng="(Groups) MSA -d lon2,1,3,2 -v lon2_var";
     $tst_cmd[0]="ncks $nco_D_flg -H -d lon2,1,3,2 -v lon2_var $in_pth_arg in_grp_3.nc";
-
     $tst_cmd[1]="lon2[3] lon2_var[3]=3";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			  
     
@@ -2086,13 +1958,10 @@ print "\n";
 #/g16/lon2_var
 #lon2[1] lon2_var[1]=1 
 #lon2[3] lon2_var[3]=3 
-
     $dsc_sng="(Groups) MSA -d lon2,1,3,2 -v lon2_var";
     $tst_cmd[0]="ncks $nco_D_flg -d lon2,1,1,1 -d lon2,3,3,1 -v lon2_var $in_pth_arg in_grp_3.nc";
-
     $tst_cmd[1]="lon2[3] lon2_var[3]=3";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			  
     
@@ -2107,13 +1976,10 @@ print "\n";
 #gds_crd[1]=1 lat_gds[1]=-30 
 #/g7/lon_gds
 #gds_crd[1]=1 lon_gds[1]=0 
-
     $dsc_sng="(Groups) CF MSA -v gds_var -d gds_crd,1,1,1";
     $tst_cmd[0]="ncks $nco_D_flg -H -v gds_var -d gds_crd,1,1,1 $in_pth_arg in_grp.nc";
-
     $tst_cmd[1]="gds_crd[1]=1 lon_gds[1]=0";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			  
   
@@ -2124,13 +1990,10 @@ print "\n";
 #/g7/g7g1/gds_var
 # gds_crd[1]=1 gds_var[1]=273.2 
 # gds_crd[3]=3 gds_var[3]=273.4 
-
     $dsc_sng="(Groups) MSA -H -C -g g7g1 -v gds_var -d gds_crd,1,1,1 -d gds_crd,3,3,1";
     $tst_cmd[0]="ncks $nco_D_flg -H -C -g g7g1 -v gds_var -d gds_crd,1,1,1 -d gds_crd,3,3,1 $in_pth_arg in_grp.nc";
-
     $tst_cmd[1]="gds_crd[3]=3 gds_var[3]=273.4";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			  
     
@@ -2140,39 +2003,30 @@ print "\n";
 # ncks -H -g g16g1 -v lon1 -d lon1,3,3,1 ~/nco/data/in_grp.nc
 #/g16/g16g1/lon1
 #lon1[3]=3 
-
     $dsc_sng="(Groups) Parallel scope MSA -g g16g1 -v lon1 -d lon1,3,3,1";
     $tst_cmd[0]="ncks $nco_D_flg -H -g g16g1 -v lon1 -d lon1,3,3,1  $in_pth_arg in_grp_3.nc";
-
     $tst_cmd[1]="lon1[3]=3";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			 
 
 #ncks #63
 # Test "parallel" scope 
 #ncks: INFO nco_bld_var_dmn() reports variable </g16/g16g1/lon1_var> with dimension coordinate [0]/g16/g16g1/lon1
-
     $dsc_sng="(Groups) Parallel scope MSA -g g16g1 -v lon1_var -d lon1,1,1,1";
     $tst_cmd[0]="ncks $nco_D_flg -H -g g16g1 -v lon1_var -d lon1,1,1,1 $in_pth_arg in_grp_3.nc";
-
     $tst_cmd[1]="lon1[1]=1 lon1_var[1]=1";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			  
 
 #ncks #64
 # Test "parallel" scope 
 #ncks: INFO nco_bld_var_dmn() reports variable </g16/g16g2/lon1_var> with dimension coordinate [0]/g16/g16g2/lon1
-
     $dsc_sng="(Groups) Parallel scope MSA -g g16g2 -v lon1_var -d lon1,1,1,1";
     $tst_cmd[0]="ncks $nco_D_flg -H -g g16g2 -v lon1_var -d lon1,1,1,1 $in_pth_arg in_grp_3.nc";
-
     $tst_cmd[1]="lon1[1]=4 lon1_var[1]=1";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			  
     
@@ -2181,14 +2035,11 @@ print "\n";
 #ncks -O -g g6g1 -v area ~/nco/data/in_grp.nc ~/foo.nc
 #/g6/g6g1/area
 #lat[1]=90 area[1]=50
-
     $dsc_sng="(Groups) Dimensions in ancestor groups -g g6g1 -v area";
     $tst_cmd[0]="ncks $nco_D_flg -O -g g6g1 -v area $in_pth_arg in_grp.nc %tmp_fl_00%";
-
     $tst_cmd[1]="ncks -H -C -v area -d lat,1,1 %tmp_fl_00%";
     $tst_cmd[2]="lat[1]=90 area[1]=50";
     $tst_cmd[3]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			
 
@@ -2248,7 +2099,6 @@ print "\n";
 
 #ncks #71
 # ncks -h -O  -C -v three_dmn_var_dbl  -d time,,2 -d lat,0,0 -d lon,0,0 -d lon,3,3 in.nc
-
     $dsc_sng="Limits -C -v three_dmn_var_dbl -d time,,2 -d lat,0,0 -d lon,0,0 -d lon,3,3 in.nc";
     $tst_cmd[0]="ncks $nco_D_flg -C -v three_dmn_var_dbl -d time,,2 -d lat,0,0 -d lon,0,0 -d lon,3,3 $in_pth_arg in.nc";
     $tst_cmd[1]="time[2]=3 lat[0]=-90 lon[3]=270 three_dmn_var_dbl[19]=20 watt meter-2";
@@ -2259,47 +2109,37 @@ print "\n";
 #ncks #72
 #same as #70, with group
 # ncks -h -O -v three_dmn_var_dbl  -d time,,2 -d lat,0,0 -d lon,0,0 -d lon,3,3 in_grp_3.nc
-
     $dsc_sng="(Groups) Limits -C -v three_dmn_var_dbl -d time,,2 -d lat,0,0 -d lon,0,0 -d lon,3,3 in.nc";
     $tst_cmd[0]="ncks $nco_D_flg -C -g g19g3 -v three_dmn_var_dbl -d time,,2 -d lat,0,0 -d lon,0,0 -d lon,3,3 $in_pth_arg in_grp_3.nc";
-
     $tst_cmd[1]="time[2]=3 lat[0]=-90 lon[3]=270 three_dmn_var_dbl[19]=20 watt meter-2";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 	
 
 #ncks #73
 # ncks -v lat -d latitude,0,1,1 ~/nco/data/in_grp.nc
-
     $dsc_sng="(Groups) Invalid input, expect ERROR because user-specified dimension \"latitude\" DNE";
     $tst_cmd[0]="ncks $nco_D_flg -v lat -d latitude,0,1,1 $in_pth_arg in_grp.nc";
-
     $tst_cmd[1]="ncks: ERROR dimension latitude is not in input file";
     $tst_cmd[2]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 		
 
 #ncks #74
 # ncks -O -p ~/nco/data in_grp.nc ~/foo.nc
 # ncks --cdl -g g8g1g1g1 ~/foo.nc | grep answer
-
     $dsc_sng="(Groups) Copy/print metadata-only leaf group";
     $tst_cmd[0]="ncks -O $nco_D_flg $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks --cdl -g g8g1g1g1 %tmp_fl_00% | grep answer";
-
     $tst_cmd[2]="            :answer = \"Twerking\" ;";
     $tst_cmd[3]="SS_OK";   
-
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
 	
-#ncks #75
-# ncks -O -c ~/nco/data/in_grp.nc ~/foo.nc
-
     if($RUN_NETCDF4_TESTS_VERSION_GE_431 == 1){
 
+#ncks #75
+# ncks -O -c ~/nco/data/in_grp.nc ~/foo.nc
     $dsc_sng="(Groups) -c Extract all coordinate variables";
     $tst_cmd[0]="ncks -O $nco_D_flg $in_pth_arg -c in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -v lat %tmp_fl_00% | grep 'lat size'";
@@ -2312,7 +2152,6 @@ print "\n";
 	
 #ncks #76
 # ncks -O ~/nco/data/in_grp.nc ~/foo.nc
-
     $dsc_sng="(Groups) Default input dataset";
     $tst_cmd[0]="ncks -O $nco_D_flg $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -v lat %tmp_fl_00% | grep 'lat size'";
@@ -2323,7 +2162,6 @@ print "\n";
 	
 #ncks #77
 # ncks -O in.nc ~/foo.nc
-
     $dsc_sng="Default input dataset";
     $tst_cmd[0]="ncks -O $nco_D_flg $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -v lat %tmp_fl_00% | grep 'lat size'";
@@ -2334,7 +2172,6 @@ print "\n";
 
 #ncks #78
 #ncks -O -3 -G : -g /g27g1/ in_grp_3.nc ~/foo.nc
-    
     $dsc_sng="(Groups) Test flatenning with parallel variables (-3 -G : -g)";
     $tst_cmd[0]="ncks -O -3 -G : -g /g27g1/  $nco_D_flg $in_pth_arg in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -v delta_time_start %tmp_fl_00%";
@@ -2346,7 +2183,6 @@ print "\n";
 #ncks #79
 #ncks -O -3 -G : -g g28 -v delta_time_stop in_grp_3.nc ~/foo.nc	
 # simpler case of ncks -O -D 2 -3 -G : -g /altimetry/${DATA}/hdf/mabel_l2_20130927t201800_008_1.h5 ~/foo_mabel.nc
-    
     $dsc_sng="(Groups) Test CF extraction with flattening (-3 -G : -g)";
     $tst_cmd[0]="ncks -O -3 -G : -g g28 -v delta_time_stop  $nco_D_flg $in_pth_arg in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -v delta_time_start %tmp_fl_00%";
@@ -2372,7 +2208,6 @@ print "\n";
 # There are two 'two_dmn_var' beneath /g19/g19g1, chunk the deeper and check the shallower was not chunked
 #ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 -v two_dmn_var ~/nco/data/in_grp_7.nc ~/foo.nc
 #ncks -m -C -v /g19/g19g1/two_dmn_var --hdn ~/foo.nc | grep chunked | cut -d ' ' -f 8-9
-    
     $dsc_sng="(Groups) Chunking full dimension name does not chunk variables in parent group";
     $tst_cmd[0]="ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 -v two_dmn_var $nco_D_flg $in_pth_arg in_grp_7.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -C -v /g19/g19g1/two_dmn_var --hdn %tmp_fl_00% | grep chunked | cut -d ' ' -f 8-9";
@@ -2385,7 +2220,6 @@ print "\n";
 # There are two 'two_dmn_var' beneath /g19/g19g1, chunk the deeper and check the deeper was chunked as requested
 #ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 -v two_dmn_var ~/nco/data/in_grp_7.nc ~/foo.nc
 #ncks -m -C -v /g19/g19g1/g19g1g1/two_dmn_var --hdn ~/foo.nc
-    
     $dsc_sng="(Groups) Chunking full dimension name works on in-scope variable";
     $tst_cmd[0]="ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 -v two_dmn_var $nco_D_flg $in_pth_arg in_grp_7.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -C -v /g19/g19g1/g19g1g1/two_dmn_var --hdn %tmp_fl_00% | grep _ChunkSizes";
@@ -2398,7 +2232,6 @@ print "\n";
 # There are two 'two_dmn_var' beneath /g19/g19g1, chunk both, deeper with absolute shallower with relative, check deeper
 # ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 --cnk_dmn lev,3 -v two_dmn_var ~/nco/data/in_grp_7.nc ~/foo.nc
 # ncks -m -C -v /g19/g19g1/g19g1g1/two_dmn_var --hdn ~/foo.nc | grep _ChunkSizes
-    
     $dsc_sng="(Groups) Chunking full dimension name takes precedence over partial name ";
     $tst_cmd[0]="ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 --cnk_dmn lev,3 -v two_dmn_var $nco_D_flg $in_pth_arg in_grp_7.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -C -v /g19/g19g1/g19g1g1/two_dmn_var --hdn %tmp_fl_00% | grep _ChunkSizes";
@@ -2411,7 +2244,6 @@ print "\n";
 # There are two 'two_dmn_var' beneath /g19/g19g1, chunk both, deeper with absolute shallower with relative, check shallower
 # ncks -O -4 --cnk_min=1 --cnk_plc=xpl --cnk_dmn /g19/g19g1/g19g1g1/lev,1 --cnk_dmn lev,2 -v two_dmn_var ~/nco/data/in_grp_7.nc ~/foo.nc
 # ncks -m -C -v /g19/g19g1/two_dmn_var --hdn ~/foo.nc | grep _ChunkSizes
-    
     $dsc_sng="(Groups) Chunking matches in-scope partial dimension name not out-of-scope full name";
     $tst_cmd[0]="ncks -O -4 --cnk_min=1 --cnk_plc=xpl --cnk_dmn /g19/g19g1/g19g1g1/lev,1 --cnk_dmn lev,2 -v two_dmn_var $nco_D_flg $in_pth_arg in_grp_7.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -C -v /g19/g19g1/two_dmn_var --hdn %tmp_fl_00% | grep _ChunkSizes";
@@ -2423,7 +2255,6 @@ print "\n";
 #ncks #85
 #ncks -O -L 0 --cnk_min=1 --cnk_dmn lat,1 -v one ~/nco/data/hdn.nc ~/foo.nc
 #ncks -C -m --hdn -v one -g g13 ~/foo.nc | grep _ChunkSizes
-    
     $dsc_sng="(Groups) Imposing zero deflation (-L 0) on already-chunked variable keeps uses specified not netCDF-default chunksizes (expect failure with netCDF 4.1.1-)";
     $tst_cmd[0]="ncks -O -4 -L 0 --cnk_min=1 --cnk_dmn lat,1 -v one $nco_D_flg $in_pth_arg hdn.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -m --hdn -v one -g g13 %tmp_fl_00% | grep _ChunkSizes";
@@ -2439,7 +2270,6 @@ print "\n";
 #Since input variable is contiguous and default mode is (xst, xst), NCO determines that input has no existing chunksizes and so lets netCDF determine chunksizes
 #ncks -O -4 -L 0 --cnk_dmn lat,1 -v /lat ~/nco/data/in_grp.nc ~/foo.nc
 #ncks -C -m --hdn -v /lat ~/foo.nc | grep _ChunkSizes
-    
     $dsc_sng="(Groups) Imposing deflation (-L 1) on contiguous variable uses netCDF-default (not user-specified) sizes";
     $tst_cmd[0]="ncks -O -4 -L 0 --cnk_dmn lat,1 -v /lat $nco_D_flg $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -m --hdn -v /lat %tmp_fl_00% | grep _ChunkSizes";
@@ -2454,7 +2284,6 @@ print "\n";
 #NCO determines that variable must be chunked (because compressed) and uses user-specified explicit overrides for chunksizes
 #ncks -O -4 -L 0 --cnk_dmn lat,1 -v /lat ~/nco/data/in_grp.nc ~/foo.nc
 #ncks -C -m --hdn -v /lat ~/foo.nc | grep _ChunkSizes
-    
     $dsc_sng="(Groups) Imposing deflation (-L 1) on contiguous variable uses netCDF-default (not user-specified) sizes";
     $tst_cmd[0]="ncks -O -4 -L 1 --cnk_dmn lat,1 -v /lat $nco_D_flg $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -m --hdn -v /lat %tmp_fl_00% | grep _ChunkSizes";
@@ -2466,7 +2295,6 @@ print "\n";
 #ncks #87
 #ncks -h -O --fix_rec_dmn time52 -v one_dmn_rec_var ~/nco/data/in_grp.nc ~/foo.nc
 #ncks -v time52 -m ~/foo.nc
-    
     $dsc_sng="(Groups) Change record dimension to fixed dimension --fix_rec_dmn time52 -v one_dmn_rec_var";
     $tst_cmd[0]="ncks -h -O --fix_rec_dmn time52 -v one_dmn_rec_var $nco_D_flg $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -v time52 -m %tmp_fl_00%";
@@ -2477,8 +2305,8 @@ print "\n";
 
 #ncks #88
 #ncks -O -v lat29 in_grp_3.nc ~/foo.nc
-    $dsc_sng="(Groups) Test";
-    $tst_cmd[0]="ncks -O -v lat29  $nco_D_flg $in_pth_arg in_grp_3.nc %tmp_fl_00%";
+    $dsc_sng="(Groups) Test attribute copying withing groups";
+    $tst_cmd[0]="ncks -O -v lat29 $nco_D_flg $in_pth_arg in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -v lat29 %tmp_fl_00% | grep 'standard_name'";
     $tst_cmd[2]="lat29 attribute 0: standard_name, size = 8 NC_CHAR, value = latitude";
     $tst_cmd[3]="SS_OK";     
@@ -2579,6 +2407,110 @@ print "\n";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			
 	
+#ncks #97
+# Test attribute writing for DSD compression 
+# ncks -4 -O -C -v ppc_dbl --ppc ppc_dbl=.3 ~/nco/data/in.nc ~/foo.nc
+# ncks -m -v ppc_dbl ~/foo.nc
+    $dsc_sng="Test attribute writing for DSD compression";
+    $tst_cmd[0]="ncks -O $nco_D_flg -4 -C -v ppc_dbl --ppc ppc_dbl=.3 $in_pth_arg in.nc %tmp_fl_00";
+    $tst_cmd[1]="ncks -m -v ppc_dbl %tmp_fl_00 | grep 'least_significant_digit'";
+    $tst_cmd[2]="ppc_dbl attribute 3: least_significant_digit, size = 1 NC_INT, value = 3";
+    $tst_cmd[3]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 			
+	
+#ncks #98
+# Test DSD compression rounding to hundreds
+# ncks -4 -O -C -v ppc_big,ppc_dbl --ppc ppc_big,ppc_dbl=.-2 ~/nco/data/in.nc ~/foo.nc
+# ncks -H -d time,5 -s %g -v ppc_big ~/foo.nc
+    $dsc_sng="Test DSD compression rounding to hundreds";
+    $tst_cmd[0]="ncks -O $nco_D_flg -4 -C -v ppc_big,ppc_dbl --ppc ppc_big,ppc_dbl=.-2 $in_pth_arg in.nc %tmp_fl_00";
+    $tst_cmd[1]="ncks -H -d time,5 -s %g -v ppc_big %tmp_fl_00";
+    $tst_cmd[2]="1280";
+    $tst_cmd[3]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 			
+	
+#ncks #99
+# Test DSD attribute does not overwrite pre-existing rounder values
+# ncks -4 -O -C -v ppc_dbl,ppc_big --ppc .?=4 --ppc ppc_big=-2 ~/nco/data/in.nc ~/foo.nc
+# ncks -4 -O -C -v ppc_dbl,ppc_big --ppc ppc_big,ppc_dbl=3 ~/foo.nc ~/foo2.nc
+# ncks -m -v ppc_big ~/foo2.nc
+    $dsc_sng="Test DSD attribute does not overwrite pre-existing rounder values";
+    $tst_cmd[0]="ncks -O $nco_D_flg -4 -C -v ppc_dbl,ppc_big --ppc .?=.4 --ppc ppc_big=.-2 $in_pth_arg in.nc %tmp_fl_00";
+    $tst_cmd[1]="ncks -O $nco_D_flg -4 -C -v ppc_dbl,ppc_big --ppc ppc_big,ppc_dbl=.3 %tmp_fl_00 %tmp_fl_01";
+    $tst_cmd[2]="ncks -m -v ppc_big %tmp_fl_01 | grep 'least_significant_digit'";
+    $tst_cmd[3]="ppc_big attribute 3: least_significant_digit, size = 1 NC_INT, value = -2";
+    $tst_cmd[4]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 			
+	
+#ncks #100
+# Test DSD attribute does overwrite pre-existing sharper values
+# ncks -4 -O -C -v ppc_dbl,ppc_big --ppc .?=.4 --ppc ppc_big=.-2 ~/nco/data/in.nc ~/foo.nc
+# ncks -4 -O -C -v ppc_dbl,ppc_big --ppc ppc_big,ppc_dbl=.3 ~/foo.nc ~/foo2.nc
+# ncks -m -v ppc_big ~/foo2.nc
+    $dsc_sng="Test DSD attribute does overwrite pre-existing sharper values";
+    $tst_cmd[0]="ncks -O $nco_D_flg -4 -C -v ppc_dbl,ppc_big --ppc .?=.4 --ppc ppc_big=.-2 $in_pth_arg in.nc %tmp_fl_00";
+    $tst_cmd[1]="ncks -O $nco_D_flg -4 -C -v ppc_dbl,ppc_big --ppc ppc_big,ppc_dbl=.3 %tmp_fl_00 %tmp_fl_01";
+    $tst_cmd[2]="ncks -m -v ppc_dbl %tmp_fl_01 | grep 'least_significant_digit'";
+    $tst_cmd[3]="ppc_dbl attribute 3: least_significant_digit, size = 1 NC_INT, value = 3";
+    $tst_cmd[4]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 			
+	
+#ncks #101
+# Test attribute writing for NSD compression 
+# ncks -4 -O -C -v ppc_dbl --ppc ppc_dbl=3 ~/nco/data/in.nc ~/foo.nc
+# ncks -m -v ppc_dbl ~/foo.nc
+    $dsc_sng="Test attribute writing for NSD compression";
+    $tst_cmd[0]="ncks -O $nco_D_flg -4 -C -v ppc_dbl --ppc ppc_dbl=3 $in_pth_arg in.nc %tmp_fl_00";
+    $tst_cmd[1]="ncks -m -v ppc_dbl %tmp_fl_00 | grep 'number_of_significant_digits'";
+    $tst_cmd[2]="ppc_dbl attribute 3: number_of_significant_digits, size = 1 NC_INT, value = 3";
+    $tst_cmd[3]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 			
+	
+#ncks #102
+# Test NSD compression rounding to three significant digits
+# ncks -4 -O -C -v ppc_big,ppc_dbl --ppc ppc_big,ppc_dbl=3 ~/nco/data/in.nc ~/foo.nc
+# ncks -H -d time,5 -s %g -v ppc_big ~/foo.nc
+    $dsc_sng="Test NSD compression rounding to three significant digits";
+    $tst_cmd[0]="ncks -O $nco_D_flg -4 -C -v ppc_big,ppc_dbl --ppc ppc_big,ppc_dbl=3 $in_pth_arg in.nc %tmp_fl_00";
+    $tst_cmd[1]="ncks -H -d time,5 -s %g -v ppc_big %tmp_fl_00";
+    $tst_cmd[2]="1234.5";
+    $tst_cmd[3]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 			
+	
+#ncks #103
+# Test NSD attribute does not overwrite pre-existing rounder values
+# ncks -4 -O -C -v ppc_dbl,ppc_big --ppc .?=4 --ppc ppc_big=3 ~/nco/data/in.nc ~/foo.nc
+# ncks -4 -O -C -v ppc_dbl,ppc_big --ppc ppc_big,ppc_dbl=4 ~/foo.nc ~/foo2.nc
+# ncks -m -v ppc_big ~/foo2.nc
+    $dsc_sng="Test NSD attribute does not overwrite pre-existing rounder values";
+    $tst_cmd[0]="ncks -O $nco_D_flg -4 -C -v ppc_dbl,ppc_big --ppc .?=4 --ppc ppc_big=3 $in_pth_arg in.nc %tmp_fl_00";
+    $tst_cmd[1]="ncks -O $nco_D_flg -4 -C -v ppc_dbl,ppc_big --ppc ppc_big,ppc_dbl=4 %tmp_fl_00 %tmp_fl_01";
+    $tst_cmd[2]="ncks -m -v ppc_big %tmp_fl_01 | grep 'number_of_significant_digits'";
+    $tst_cmd[3]="ppc_big attribute 3: number_of_significant_digits, size = 1 NC_INT, value = 3";
+    $tst_cmd[4]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 			
+	
+#ncks #104
+# Test NSD attribute does overwrite pre-existing sharper values
+# ncks -4 -O -C -v ppc_dbl,ppc_big --ppc .?=4 --ppc ppc_big=3 ~/nco/data/in.nc ~/foo.nc
+# ncks -4 -O -C -v ppc_dbl,ppc_big --ppc ppc_big,ppc_dbl=4 ~/foo.nc ~/foo2.nc
+# ncks -m -v ppc_big ~/foo2.nc
+    $dsc_sng="Test NSD attribute does overwrite pre-existing sharper values";
+    $tst_cmd[0]="ncks -O $nco_D_flg -4 -C -v ppc_dbl,ppc_big --ppc .?=4 --ppc ppc_big=4 $in_pth_arg in.nc %tmp_fl_00";
+    $tst_cmd[1]="ncks -O $nco_D_flg -4 -C -v ppc_dbl,ppc_big --ppc ppc_big,ppc_dbl=3 %tmp_fl_00 %tmp_fl_01";
+    $tst_cmd[2]="ncks -m -v ppc_dbl %tmp_fl_01 | grep 'number_of_significant_digits'";
+    $tst_cmd[3]="ppc_dbl attribute 3: number_of_significant_digits, size = 1 NC_INT, value = 3";
+    $tst_cmd[4]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 			
+	
 #####################
 #### ncpdq tests #### -OK !
 #####################
@@ -4072,7 +4004,7 @@ print "\n";
 #NEW 4.4.2	
 #ncra #32
 #ncra -O -v time301 -C in_grp_3.nc ~/foo.nc
-if (0){
+if(0){
     $dsc_sng="(Groups) Cell methods (Create) -v time301";
     $tst_cmd[0]="ncra $omp_flg $nco_D_flg -O -v time301 $in_pth_arg in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m %tmp_fl_00%";
@@ -4958,8 +4890,9 @@ if (0){
     @tst_cmd=(); # really reset array.		
 
 #ncrename #5
+# Absolute rename /g1/lon at units att to /g1/lon at new_units
 #ncrename -O -a /g1/lon at units,new_units ~/nco/data/in_grp.nc ~/foo.nc 
-# absolute rename /g1/lon at units att to /g1/lon at new_units
+#ncks -v /g1/lon ~/foo.nc | grep 'new_units'
 
     $dsc_sng="Attributes: Absolute rename '/g1/lon\@units' to 'new_units'";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -a '/g1/lon\@units,new_units' $in_pth_arg in_grp.nc %tmp_fl_00%";
@@ -5239,7 +5172,6 @@ if (0){
 #ncrename -O -d time,newrec ~/nco/data/in.nc ~/foo.nc
 #ncks -s %g -H -g // -v time -d newrec,0 -C ~/foo.nc
 # Check for valid values after renaming coordinate dimension in netCDF3 file
-
     $dsc_sng="netCDF3: Valid values after renaming coordinate dimension in netCDF3 file";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -d time,newrec $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -s %g -H -g // -v time -d newrec,0 -C %tmp_fl_00%";
@@ -5252,7 +5184,6 @@ if (0){
 #ncrename -O -v time,newrec ~/nco/data/in.nc ~/foo.nc
 #ncks -s %g -H -g // -v newrec -d time,0 -C ~/foo.nc
 # Check for valid values after renaming coordinate variable in netCDF3 file
-
     $dsc_sng="netCDF3: Valid values after renaming coordinate variable in netCDF3 file";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -v time,newrec $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -s %g -H -g // -v newrec -d time,0 -C %tmp_fl_00%";
@@ -5265,7 +5196,6 @@ if (0){
 #ncrename -O -d time,newrec -v time,newrec ~/nco/data/in.nc ~/foo.nc
 #ncks -s %g -H -g // -v newrec -d newrec,0 -C ~/foo.nc
 # Check for valid values after renaming coordinate dimension and variable in netCDF3 file
-
     $dsc_sng="netCDF3: Valid values after renaming coordinate dimension and variable in netCDF3 file";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -d time,newrec -v time,newrec $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -s %g -H -g // -v newrec -d newrec,0 -C %tmp_fl_00%";
@@ -5278,7 +5208,6 @@ if (0){
 #ncrename -O -d time,newrec ~/nco/data/in_4c.nc ~/foo.nc
 #ncks -s %g -H -g // -v time -d newrec,0 -C ~/foo.nc
 # Check for valid values after renaming coordinate dimension in netCDF4-classic file
-
     $dsc_sng="netCDF4-classic: Valid values after renaming coordinate dimension in netCDF4-classic file";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -d time,newrec $in_pth_arg in_4c.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -s %g -H -g // -v time -d newrec,0 -C %tmp_fl_00%";
@@ -5291,7 +5220,6 @@ if (0){
 #ncrename -O -v time,newrec ~/nco/data/in_4c.nc ~/foo.nc
 #ncks -s %g -H -g // -v newrec -d time,0 -C ~/foo.nc
 # Check for valid values after renaming coordinate variable in netCDF4-classic file
-
     $dsc_sng="netCDF4-classic: Valid values after renaming coordinate variable in netCDF4-classic file";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -v time,newrec $in_pth_arg in_4c.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -s %g -H -g // -v newrec -d time,0 -C %tmp_fl_00%";
@@ -5304,7 +5232,6 @@ if (0){
 #ncrename -O -d time,newrec -v time,newrec ~/nco/data/in_4c.nc ~/foo.nc
 #ncks -s %g -H -g // -v newrec -d newrec,0 -C ~/foo.nc
 # Check for valid values after renaming coordinate dimension and variable in netCDF4-classic file
-
     $dsc_sng="netCDF4-classic: Valid values after renaming coordinate dimension and variable in netCDF4-classic file";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -d time,newrec -v time,newrec $in_pth_arg in_4c.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -s %g -H -g // -v newrec -d newrec,0 -C %tmp_fl_00%";
@@ -5317,7 +5244,6 @@ if (0){
 #ncrename -O -d time,newrec ~/nco/data/in_grp.nc ~/foo.nc
 #ncks -s %g -H -g // -v time -d newrec,0 -C ~/foo.nc
 # Check for valid values after renaming coordinate dimension in netCDF4 file
-
     $dsc_sng="netCDF4: Valid values after renaming coordinate dimension in netCDF4 file";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -d time,newrec $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -s %g -H -g // -v time -d newrec,0 -C %tmp_fl_00%";
@@ -5330,7 +5256,6 @@ if (0){
 #ncrename -O -v time,newrec ~/nco/data/in_grp.nc ~/foo.nc
 #ncks -s %g -H -g // -v newrec -d time,0 -C ~/foo.nc
 # Check for valid values after renaming coordinate variable in netCDF4 file
-
     $dsc_sng="netCDF4: Valid values after renaming coordinate variable in netCDF4 file";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -v time,newrec $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -s %g -H -g // -v newrec -d time,0 -C %tmp_fl_00%";
@@ -5343,7 +5268,6 @@ if (0){
 #ncrename -O -d time,newrec -v time,newrec ~/nco/data/in_grp.nc ~/foo.nc
 #ncks -s %g -H -g // -v newrec -d newrec,0 -C ~/foo.nc
 # Check for valid values after renaming coordinate dimension and variable in netCDF4 file
-
     $dsc_sng="netCDF4: Valid values after renaming coordinate dimension and variable in netCDF4 file";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -d time,newrec -v time,newrec $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -s %g -H -g // -v newrec -d newrec,0 -C %tmp_fl_00%";
diff --git a/configure b/configure
index 9e2677b..d366b65 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for NCO netCDF Operators 4.4.7.
+# Generated by GNU Autoconf 2.69 for NCO netCDF Operators 4.4.8.
 #
 # Report bugs to <nco-bugs at lists.sourceforge.net>.
 #
@@ -592,8 +592,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='NCO netCDF Operators'
 PACKAGE_TARNAME='nco'
-PACKAGE_VERSION='4.4.7'
-PACKAGE_STRING='NCO netCDF Operators 4.4.7'
+PACKAGE_VERSION='4.4.8'
+PACKAGE_STRING='NCO netCDF Operators 4.4.8'
 PACKAGE_BUGREPORT='nco-bugs at lists.sourceforge.net'
 PACKAGE_URL=''
 
@@ -1385,7 +1385,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures NCO netCDF Operators 4.4.7 to adapt to many kinds of systems.
+\`configure' configures NCO netCDF Operators 4.4.8 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1456,7 +1456,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of NCO netCDF Operators 4.4.7:";;
+     short | recursive ) echo "Configuration of NCO netCDF Operators 4.4.8:";;
    esac
   cat <<\_ACEOF
 
@@ -1616,7 +1616,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-NCO netCDF Operators configure 4.4.7
+NCO netCDF Operators configure 4.4.8
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2482,7 +2482,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by NCO netCDF Operators $as_me 4.4.7, which was
+It was created by NCO netCDF Operators $as_me 4.4.8, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3245,7 +3245,7 @@ fi
 # End pvmgetarch Compatibility
 
 # Use automake to create Makefiles
-am__api_version='1.13'
+am__api_version='1.14'
 
 # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
@@ -3731,7 +3731,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='nco'
- VERSION='4.4.7'
+ VERSION='4.4.8'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -3782,6 +3782,47 @@ am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
 
 
 
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes.  So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+  cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present.  This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake at gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message.  This
+can help us improve future automake versions.
+
+END
+  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+    echo 'Configuration will proceed anyway, since you have set the' >&2
+    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+    echo >&2
+  else
+    cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+    as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
+  fi
+fi
 #AM_INIT_AUTOMAKE(nco,"${nco_version}")
 
 # Put preprocessor symbols in config.h
@@ -3795,6 +3836,7 @@ ac_config_headers="$ac_config_headers config.h"
 # 20061120: Require alternative compilers be passed to configure as environment variables
 #AC_PROG_CC( xlc_r xlc acc cc     pathcc pgcc icc  gcc     como c89)
 #AC_PROG_CXX(xlC_r xlC aCC CC cxx pathCC pgCC icpc g++ c++ como)
+# 20150107: Autotools on FC21 complain that next command requires autobld/compile
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -4583,6 +4625,65 @@ ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
+$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
+if ${am_cv_prog_cc_c_o+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+  # Make sure it works both with $CC and with simple cc.
+  # Following AC_PROG_CC_C_O, we do the test twice because some
+  # compilers refuse to overwrite an existing .o file with -o,
+  # though they will create one.
+  am_cv_prog_cc_c_o=yes
+  for am_i in 1 2; do
+    if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
+   ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } \
+         && test -f conftest2.$ac_objext; then
+      : OK
+    else
+      am_cv_prog_cc_c_o=no
+      break
+    fi
+  done
+  rm -f core conftest*
+  unset am_i
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+$as_echo "$am_cv_prog_cc_c_o" >&6; }
+if test "$am_cv_prog_cc_c_o" != yes; then
+   # Losing compiler, so override with the script.
+   # FIXME: It is wrong to rewrite CC.
+   # But if we don't then we get into trouble of one sort or another.
+   # A longer-term fix would be to have automake use am__CC in this case,
+   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+   CC="$am_aux_dir/compile $CC"
+fi
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
 DEPDIR="${am__leading_dot}deps"
 
 ac_config_commands="$ac_config_commands depfiles"
@@ -17450,9 +17551,9 @@ echo "#  Test for netCDF             #"
 echo "################################"
 
 #Mac OSX MacPorts packages
-#sudo port install netcdf
-#installs to /opt/local/include, /opt/local/lib
-#add this path to CPPFLAGS if it exists, otherwise do nothing
+# sudo port install netcdf
+# installs to /opt/local/include, /opt/local/lib
+# Add this path to CPPFLAGS if it exists, otherwise do nothing
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for /opt/local/include/netcdf.h" >&5
 $as_echo_n "checking for /opt/local/include/netcdf.h... " >&6; }
 if ${ac_cv_file__opt_local_include_netcdf_h+:} false; then :
@@ -17493,6 +17594,7 @@ fi
 
 
 # Greenplanet
+# fxm: 20150107 this is an embarassing kludge that needs to be changed
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for /sopt/netcdf/netcdf411-gcc-serial/include/netcdf.h" >&5
 $as_echo_n "checking for /sopt/netcdf/netcdf411-gcc-serial/include/netcdf.h... " >&6; }
 if ${ac_cv_file__sopt_netcdf_netcdf411_gcc_serial_include_netcdf_h+:} false; then :
@@ -19810,9 +19912,10 @@ case ${host} in
     i*86-*-linux-gnu | x86_64*-linux* )
 	case ${CC} in
 	    como* ) CFLAGS="${CFLAGS} --c99" ; ;;
-		icc* ) CFLAGS="${CFLAGS} -std=c99" ; CPPFLAGS="${CPPFLAGS} -D_BSD_SOURCE -D_POSIX_SOURCE -no-gcc" ; ;;
-		pathcc* ) CFLAGS="${CFLAGS} -std=c99" ; ;;
-		pgcc* ) CFLAGS="${CFLAGS} -c9x" ; CPPFLAGS="${CPPFLAGS} -DPGI_CC" ; ;;
+# 20150109: fxm Introduce -D_DEFAULT_SOURCE in place of deprecated (as of gcc 4.9.2) -D_BSD_SOURCE -D_POSIX_SOURCE
+	    icc* ) CFLAGS="${CFLAGS} -std=c99" ; CPPFLAGS="${CPPFLAGS} -D_BSD_SOURCE -D_POSIX_SOURCE -no-gcc" ; ;;
+	    pathcc* ) CFLAGS="${CFLAGS} -std=c99" ; ;;
+	    pgcc* ) CFLAGS="${CFLAGS} -c9x" ; CPPFLAGS="${CPPFLAGS} -DPGI_CC" ; ;;
 	esac
 	case ${CXX} in
 #	    icpc* ) CXXFLAGS="${CXXFLAGS} -cxxlib-icc" ; ;;
@@ -19856,8 +19959,9 @@ if test "x${GCC_OR_GXX}" = 'xyes' ; then
 # Compilation flags for numerical routines recommended by GSL 1.3 manual, p. 397
 # CFLAGS += -Werror -Wall -W -Wmissing-prototypes -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -fno-common -g -O4
 # 20070310: Change to no-shadow so ncoLexer.cpp compiles
+# 20150115: Deprecate GCC_CMD_ARGS='-std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE'
 
-    GCC_CMD_ARGS='-std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE'
+    GCC_CMD_ARGS='-std=c99 -pedantic -D_DEFAULT_SOURCE'
     GCC_BASE_FLAGS='-Wall -Wuninitialized -Wunused -W -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -fno-common -g -O4'
     GCC_BASE_FLAGS="${GCC_BASE_FLAGS} ${OPENMP_CFLAGS}"
     GCC_CFLAGS="${GCC_BASE_FLAGS} -Wmissing-prototypes"
@@ -19882,6 +19986,7 @@ if test "x${GCC_OR_GXX}" = 'xyes' ; then
 # -fno-common: Prevent global variables from being simultaneously defined in different files
 # -g: Put debugging symbols in executable
 # -pg: Enable profiling, generate gmon.out output files (also needed by linker)
+# -O3: Clang -O4 is is equivalent to -O3
 # -O4: Turn on optimization so uninitialized variables are flagged
 # Compilation flags recommended by GSL that I do not like and do not use:
 # -ansi: Support only strict ANSI C. Equivalent to -std=c89, conflicts with -std=c99
@@ -20286,7 +20391,8 @@ if test $ac_compiler_gnu = 'yes'; then
     CFLAGS="${CFLAGS} -std=c99 -D_BSD_SOURCE -D_POSIX_SOURCE"
     case ${host} in
 # MacOSX does not understand shared libraries
-	*-apple-darwin* ) CFLAGS=`echo "${CFLAGS}" | sed -e 's/-D_POSIX_SOURCE//'` ; CFLAGS="-fno-common ${CFLAGS}" ; enable_shared='no' ;;
+# Clang -O4 DNE. Highest is -O3. CEWI.
+	*-apple-darwin* ) CFLAGS=`echo "${CFLAGS}" | sed -e 's/-D_POSIX_SOURCE//'` ; CFLAGS=`echo "${CFLAGS}" | sed -e 's/-O4/-O3/'` ; CFLAGS="-fno-common ${CFLAGS}" ; enable_shared='no' ;;
 # Solaris has problems with time.h
 	sparc-sun-solaris2* ) CFLAGS=`echo "${CFLAGS}" | sed -e 's/-D_POSIX_SOURCE//'` ; ;;
     esac
@@ -20974,7 +21080,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by NCO netCDF Operators $as_me 4.4.7, which was
+This file was extended by NCO netCDF Operators $as_me 4.4.8, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -21040,7 +21146,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-NCO netCDF Operators config.status 4.4.7
+NCO netCDF Operators config.status 4.4.8
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index 06f4720..d4b0cc7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,9 +1,9 @@
-# $Header: /cvsroot/nco/nco/configure.ac,v 1.52 2014/10/22 18:47:06 zender Exp $ -*-Shell-script-*-
+# $Header: /cvsroot/nco/nco/configure.ac,v 1.60 2015/02/05 19:26:54 zender Exp $ -*-Shell-script-*-
 
 # Purpose: Template autoconf uses to generate NCO configure script
 # Newer convention names this file configure.ac, rather than configure.in
 
-# Copyright (C) 2003--2014 Charlie Zender
+# Copyright (C) 2003--2015 Charlie Zender
 # License: GNU General Public License (GPL) Version 3
 # See http://www.gnu.org/copyleft/gpl.html for full license text
 
@@ -51,7 +51,7 @@
 
 # Process configure input with autoconf to produce configure script
 # (package name,version,bug-report-address,tarball name)
-AC_INIT([NCO netCDF Operators],[4.4.7],[nco-bugs at lists.sourceforge.net],[nco])
+AC_INIT([NCO netCDF Operators],[4.4.8],[nco-bugs at lists.sourceforge.net],[nco])
 
 # Print GNU copyright in configure script
 AC_COPYRIGHT
@@ -164,6 +164,7 @@ AM_CONFIG_HEADER(config.h)
 # 20061120: Require alternative compilers be passed to configure as environment variables
 #AC_PROG_CC( xlc_r xlc acc cc     pathcc pgcc icc  gcc     como c89)
 #AC_PROG_CXX(xlC_r xlC aCC CC cxx pathCC pgCC icpc g++ c++ como)
+# 20150107: Autotools on FC21 complain that next command requires autobld/compile
 AC_PROG_CC
 AC_PROG_CXX
 AC_PROG_CPP
@@ -220,13 +221,14 @@ echo "#  Test for netCDF             #"
 echo "################################"
 
 #Mac OSX MacPorts packages
-#sudo port install netcdf
-#installs to /opt/local/include, /opt/local/lib
-#add this path to CPPFLAGS if it exists, otherwise do nothing
+# sudo port install netcdf
+# installs to /opt/local/include, /opt/local/lib
+# Add this path to CPPFLAGS if it exists, otherwise do nothing
 AC_CHECK_FILE([/opt/local/include/netcdf.h], [CPPFLAGS="$CPPFLAGS -I/opt/local/include"], [])
 AC_CHECK_FILE([/opt/local/lib/libnetcdf.a], [LDFLAGS="$LDFLAGS -L/opt/local/lib -lnetcdf"], [])
 
 # Greenplanet
+# fxm: 20150107 this is an embarassing kludge that needs to be changed
 AC_CHECK_FILE([/sopt/netcdf/netcdf411-gcc-serial/include/netcdf.h], [CPPFLAGS="$CPPFLAGS -I/sopt/netcdf/netcdf411-gcc-serial/include"], [])
 AC_CHECK_FILE([/sopt/netcdf/netcdf411-gcc-serial/lib/libnetcdf.a], [LDFLAGS="$LDFLAGS -L/sopt/netcdf/netcdf411-gcc-serial/lib -lnetcdf"], [])
 
@@ -719,9 +721,10 @@ case ${host} in
     i*86-*-linux-gnu | x86_64*-linux* )
 	case ${CC} in
 	    como* ) CFLAGS="${CFLAGS} --c99" ; ;;
-		icc* ) CFLAGS="${CFLAGS} -std=c99" ; CPPFLAGS="${CPPFLAGS} -D_BSD_SOURCE -D_POSIX_SOURCE -no-gcc" ; ;;
-		pathcc* ) CFLAGS="${CFLAGS} -std=c99" ; ;;
-		pgcc* ) CFLAGS="${CFLAGS} -c9x" ; CPPFLAGS="${CPPFLAGS} -DPGI_CC" ; ;;
+# 20150109: fxm Introduce -D_DEFAULT_SOURCE in place of deprecated (as of gcc 4.9.2) -D_BSD_SOURCE -D_POSIX_SOURCE 
+	    icc* ) CFLAGS="${CFLAGS} -std=c99" ; CPPFLAGS="${CPPFLAGS} -D_BSD_SOURCE -D_POSIX_SOURCE -no-gcc" ; ;;
+	    pathcc* ) CFLAGS="${CFLAGS} -std=c99" ; ;;
+	    pgcc* ) CFLAGS="${CFLAGS} -c9x" ; CPPFLAGS="${CPPFLAGS} -DPGI_CC" ; ;;
 	esac
 	case ${CXX} in
 #	    icpc* ) CXXFLAGS="${CXXFLAGS} -cxxlib-icc" ; ;;
@@ -765,8 +768,9 @@ if test "x${GCC_OR_GXX}" = 'xyes' ; then
 # Compilation flags for numerical routines recommended by GSL 1.3 manual, p. 397
 # CFLAGS += -Werror -Wall -W -Wmissing-prototypes -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -fno-common -g -O4
 # 20070310: Change to no-shadow so ncoLexer.cpp compiles
+# 20150115: Deprecate GCC_CMD_ARGS='-std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE'
 
-    GCC_CMD_ARGS='-std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE'
+    GCC_CMD_ARGS='-std=c99 -pedantic -D_DEFAULT_SOURCE'
     GCC_BASE_FLAGS='-Wall -Wuninitialized -Wunused -W -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -fno-common -g -O4'
     GCC_BASE_FLAGS="${GCC_BASE_FLAGS} ${OPENMP_CFLAGS}"
     GCC_CFLAGS="${GCC_BASE_FLAGS} -Wmissing-prototypes"
@@ -791,6 +795,7 @@ if test "x${GCC_OR_GXX}" = 'xyes' ; then
 # -fno-common: Prevent global variables from being simultaneously defined in different files
 # -g: Put debugging symbols in executable
 # -pg: Enable profiling, generate gmon.out output files (also needed by linker)
+# -O3: clang -O4 DNE, highest clang optimization is -O3 
 # -O4: Turn on optimization so uninitialized variables are flagged
 # Compilation flags recommended by GSL that I do not like and do not use:
 # -ansi: Support only strict ANSI C. Equivalent to -std=c89, conflicts with -std=c99
@@ -1049,7 +1054,8 @@ if test $ac_compiler_gnu = 'yes'; then
     CFLAGS="${CFLAGS} -std=c99 -D_BSD_SOURCE -D_POSIX_SOURCE"
     case ${host} in
 # MacOSX does not understand shared libraries
-	*-apple-darwin* ) CFLAGS=`echo "${CFLAGS}" | sed -e 's/-D_POSIX_SOURCE//'` ; CFLAGS="-fno-common ${CFLAGS}" ; enable_shared='no' ;;
+# clang -O4 DNE, highest clang optimization is -O3 
+	*-apple-darwin* ) CFLAGS=`echo "${CFLAGS}" | sed -e 's/-D_POSIX_SOURCE//'` ; CFLAGS=`echo "${CFLAGS}" | sed -e 's/-O4/-O3/'` ; CFLAGS="-fno-common ${CFLAGS}" ; enable_shared='no' ;;
 # Solaris has problems with time.h
 	sparc-sun-solaris2* ) CFLAGS=`echo "${CFLAGS}" | sed -e 's/-D_POSIX_SOURCE//'` ; ;;
     esac
diff --git a/configure.eg b/configure.eg
index 858d8e2..95644cb 100644
--- a/configure.eg
+++ b/configure.eg
@@ -1,4 +1,4 @@
-$Header: /cvsroot/nco/nco/configure.eg,v 1.168 2014/02/07 18:08:12 zender Exp $ -*-Fundamental-*-
+$Header: /cvsroot/nco/nco/configure.eg,v 1.171 2015/01/17 00:53:13 zender Exp $ -*-Fundamental-*-
 
 Purpose(s):
 Track status of autobuild features for NCO
@@ -228,13 +228,14 @@ End HPPA
 ************************************************************************
 Start LINUX
 Status: Works
+Commands for LINUX are the only ones "regularly" used after ~2010
 ************************************************************************
 zender at dust:~/nco$ pvmgetarch;uname -a;~/nco/autobld/config.guess
 LINUX
 Linux dust.ess.uci.edu 2.4.19-pre8 #1 SMP Wed May 8 10:16:29 PDT 2002 i686 unknown
 i686-pc-linux-gnu
 
-# gcc/g++ Zender uses this to install/update NCO in personal directories:
+# gcc/g++ Install/update NCO in personal directories using all configure defaults:
 export GNU_TRP=`~/nco/autobld/config.guess`
 cd ~/nco;/bin/rm -f *.${GNU_TRP}.foo;make distclean
 CC='gcc' CXX='g++' ./configure --prefix=${HOME} --bindir=${MY_BIN_DIR} --datadir=${HOME}/nco/data --libdir=${MY_LIB_DIR} --mandir=${HOME}/nco/man > nco.configure.${GNU_TRP}.foo 2>&1
@@ -245,10 +246,10 @@ make check >> nco.make.${GNU_TRP}.foo 2>&1
 make install >> nco.make.${GNU_TRP}.foo 2>&1
 scp nco.configure.${GNU_TRP}.foo nco.config.log.${GNU_TRP}.foo nco.libtool.${GNU_TRP}.foo nco.make.${GNU_TRP}.foo dust.ess.uci.edu:/var/www/html/nco/rgr
 
-# gcc/g++ Zender uses this to install/update netCDF4-enabled NCO in personal directories:
+# gcc/g++ Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories:
 export GNU_TRP=`~/nco/autobld/config.guess`
 cd ~/nco;/bin/rm -f *.${GNU_TRP}.foo;make distclean
-CC='gcc' CXX='g++' NETCDF4_ROOT='/usr/local/netcdf4' ./configure --disable-shared --enable-dap-netcdf --enable-netcdf4 --enable-optimize-custom --prefix=${HOME} --bindir=${MY_BIN_DIR} --datadir=${HOME}/nco/data --libdir=${MY_LIB_DIR} --mandir=${HOME}/nco/man > nco.configure.${GNU_TRP}.foo 2>&1
+CC='gcc' CXX='g++' ./configure --disable-shared --enable-optimize-custom --prefix=${HOME} --bindir=${MY_BIN_DIR} --datadir=${HOME}/nco/data --libdir=${MY_LIB_DIR} --mandir=${HOME}/nco/man > nco.configure.${GNU_TRP}.foo 2>&1
 /bin/cp -f config.log nco.config.log.${GNU_TRP}.foo
 /bin/cp -f libtool nco.libtool.${GNU_TRP}.foo
 make clean;make > nco.make.${GNU_TRP}.foo 2>&1
@@ -558,7 +559,7 @@ End LINUXSPARC64
 
 ************************************************************************
 Start MACOSX
-Status: works.  rorik Thu Oct 30 12:09:15 AKST 2003
+Status: works. rorik Thu Oct 30 12:09:15 AKST 2003
 MACOSX requires netCDF3.x be built with CFLAGS=-fno-common to link with NCO 
 This may also be the case for netCDF4.
 NCO's configure detects MACOSX adds '-fno-common' automatically to CFLAGS
diff --git a/data/Makefile.am b/data/Makefile.am
index cb7d0c0..232787b 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -1,15 +1,15 @@
-# $Header: /cvsroot/nco/nco/data/Makefile.am,v 1.40 2014/10/11 00:03:58 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/data/Makefile.am,v 1.44 2015/01/20 18:44:52 zender Exp $ -*-makefile-*-
 
 test_data = big.nc in.nc in_rec_zero.nc
 
-test_data_netCDF4 = in_4c.nc in_grp.nc in_grp_1.nc in_grp_2.nc in_grp_3.nc in_grp_4.nc in_grp_5.nc in_grp_6.nc cmip5.nc obs.nc mdl_1.nc mdl_2.nc mdl_3.nc hdn.nc mrd.nc
+test_data_netCDF4 = in_4c.nc in_grp.nc in_grp_1.nc in_grp_2.nc in_grp_3.nc in_grp_4.nc in_grp_5.nc in_grp_6.nc in_grp_7.nc cmip5.nc obs.nc mdl_1.nc mdl_2.nc mdl_3.nc hdn.nc mrd.nc
 
 # netCDF build rules
 %.nc : %.cdl
 	- at PATH_TO_NCGEN@ -o $@ $< 
 
 in_4c.nc : in.cdl
-	-ncks -O -7 --cnk_dmn time,10 $< $@
+	-ncks -O -7 --cnk_dmn time,10 in.nc $@
 # ncgen default chunksize for time = 4 MB produces ~200 MB in_4c.nc file. Avoid that!
 #	- at PATH_TO_NCGEN@ -k hdf5-nc3 -o $@ $< 
 
@@ -77,7 +77,7 @@ EXTRA_DIST = big.cdl dsm.cdl hdn.cdl mrd.cdl in.cdl in_grp.cdl in_grp_1.cdl in_g
 DISTCLEANFILES = foo*
 
 # Build procedure produces these files:
-CLEANFILES = 85.nc 86.nc 87.nc 88.nc 89.nc big.nc foo.nc h0001.nc h0002.nc h0003.nc in.nc in_grp.nc in_grp_1.nc in_grp_2.nc in_grp_3.nc in_grp_4.nc in_grp_5.nc in_grp_6.nc in_grp_7.nc cmip5.nc hdn.nc mrd.nc dsm.nc obs.nc mdl_1.nc mdl_2.nc mdl_3.nc buggy.nc in_rec_zero.nc ../src/nco_c++/in.nc
+CLEANFILES = 85.nc 86.nc 87.nc 88.nc 89.nc big.nc foo.nc h0001.nc h0002.nc h0003.nc in.nc in_1.nc in_2.nc in_grp.nc in_grp_1.nc in_grp_2.nc in_grp_3.nc in_grp_4.nc in_grp_5.nc in_grp_6.nc in_grp_7.nc cmip5.nc hdn.nc mrd.nc dsm.nc lrg_bm1.nc lrg_bm.nc obs.nc mdl.nc mdl2.nc mdl_1.nc mdl_2.nc mdl_3.nc buggy.nc in_rec_zero.nc ../src/nco_c++/in.nc
 
 MAINTAINERCLEANFILES = Makefile.in
 
diff --git a/data/Makefile.in b/data/Makefile.in
index f212c71..632dd19 100644
--- a/data/Makefile.in
+++ b/data/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# $Header: /cvsroot/nco/nco/data/Makefile.in,v 1.118 2014/10/22 18:47:06 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/data/Makefile.in,v 1.122 2015/01/20 18:44:52 zender Exp $ -*-makefile-*-
 VPATH = @srcdir@
 am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
@@ -260,7 +260,7 @@ top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 test_data = big.nc in.nc in_rec_zero.nc
-test_data_netCDF4 = in_4c.nc in_grp.nc in_grp_1.nc in_grp_2.nc in_grp_3.nc in_grp_4.nc in_grp_5.nc in_grp_6.nc cmip5.nc obs.nc mdl_1.nc mdl_2.nc mdl_3.nc hdn.nc mrd.nc
+test_data_netCDF4 = in_4c.nc in_grp.nc in_grp_1.nc in_grp_2.nc in_grp_3.nc in_grp_4.nc in_grp_5.nc in_grp_6.nc in_grp_7.nc cmip5.nc obs.nc mdl_1.nc mdl_2.nc mdl_3.nc hdn.nc mrd.nc
 EXTRA_DIST = big.cdl dsm.cdl hdn.cdl mrd.cdl in.cdl in_grp.cdl in_grp_1.cdl in_grp_2.cdl in_grp_3.cdl in_grp_4.cdl in_grp_5.cdl in_grp_6.cdl in_grp_7.cdl in_1.cdl in_2.cdl cmip5.cdl obs.cdl mdl_1.cdl buggy.cdl in_rec_zero.cdl ncap.in ncap.in2 ncap2.in tst.nco
 
 # Automake manual section 14:
@@ -269,7 +269,7 @@ EXTRA_DIST = big.cdl dsm.cdl hdn.cdl mrd.cdl in.cdl in_grp.cdl in_grp_1.cdl in_g
 DISTCLEANFILES = foo*
 
 # Build procedure produces these files:
-CLEANFILES = 85.nc 86.nc 87.nc 88.nc 89.nc big.nc foo.nc h0001.nc h0002.nc h0003.nc in.nc in_grp.nc in_grp_1.nc in_grp_2.nc in_grp_3.nc in_grp_4.nc in_grp_5.nc in_grp_6.nc in_grp_7.nc cmip5.nc hdn.nc mrd.nc dsm.nc obs.nc mdl_1.nc mdl_2.nc mdl_3.nc buggy.nc in_rec_zero.nc ../src/nco_c++/in.nc
+CLEANFILES = 85.nc 86.nc 87.nc 88.nc 89.nc big.nc foo.nc h0001.nc h0002.nc h0003.nc in.nc in_1.nc in_2.nc in_grp.nc in_grp_1.nc in_grp_2.nc in_grp_3.nc in_grp_4.nc in_grp_5.nc in_grp_6.nc in_grp_7.nc cmip5.nc hdn.nc mrd.nc dsm.nc lrg_bm1.nc lrg_bm.nc obs.nc mdl.nc mdl2.nc mdl_1.nc mdl_2.nc mdl_3.nc buggy.nc in_rec_zero.nc ../src/nco_c++/in.nc
 MAINTAINERCLEANFILES = Makefile.in
 all: all-am
 
@@ -470,7 +470,7 @@ uninstall-am:
 	- at PATH_TO_NCGEN@ -o $@ $< 
 
 in_4c.nc : in.cdl
-	-ncks -O -7 --cnk_dmn time,10 $< $@
+	-ncks -O -7 --cnk_dmn time,10 in.nc $@
 # ncgen default chunksize for time = 4 MB produces ~200 MB in_4c.nc file. Avoid that!
 #	- at PATH_TO_NCGEN@ -k hdf5-nc3 -o $@ $< 
 
diff --git a/data/in.cdl b/data/in.cdl
index d46f92f..63dea4c 100644
--- a/data/in.cdl
+++ b/data/in.cdl
@@ -68,7 +68,7 @@ variables:
 	:Conventions = "CF-1.0";
 	:history = "History global attribute.\nAttributes like this often have embedded newlines to enhance legibility.\nSuch newlines should serve as linebreaks on the screen, hence,\nfriendly CDL converters print a single NC_CHAR attribute as a comma-separated list of strings\nwhere each embedded delimiter marks a linebreak.\nOtherwise it would be harder for humans to read the CDL.";
 	:julian_day = 200000.04;
-	:RCS_Header = "$Header: /cvsroot/nco/nco/data/in.cdl,v 1.198 2014/11/11 21:20:17 zender Exp $";
+	:RCS_Header = "$Header: /cvsroot/nco/nco/data/in.cdl,v 1.212 2015/02/09 18:04:43 zender Exp $";
 
 	int date_int(date_dmn);
 	date_int:long_name = "Date (as array of ints: YYYY,MM,DD,HH,MM)";
@@ -345,6 +345,39 @@ variables:
 	lon_wgt:long_name = "Gaussian weights";
 	lon_wgt:purpose = "Gaussian weights which sum to two for n = 4. These weights are all have floor of 0.0 so should cause SIGFPE when applied to integer types in weighted average.";
 
+	double ppc_dbl(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, double precision";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+	float ppc_flt(time);
+        ppc_flt:long_name = "Precision-Preserving Compression, single precision";
+        ppc_flt:purpose = "test --ppc switches";
+        ppc_flt:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+	double ppc_big(time);
+        ppc_big:long_name = "Precision-Preserving Compression, big numbers";
+        ppc_big:purpose = "test --ppc switches";
+        ppc_big:original_values="123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1";
+
+	float ppc_bgr(time);
+        ppc_bgr:long_name = "Precision-Preserving Compression, bigger numbers";
+        ppc_bgr:purpose = "test --ppc switches";
+        ppc_bgr:original_values="1234567890e20,1234567890e19,1234567890e18,1234567890e17,1234567890e16,1234567890e15,1234567890e14,1234567890e13,1234567890e12,1234567890e11";
+
+	float ppc_bgr_scl;
+        ppc_bgr_scl:long_name = "Precision-Preserving Compression, bigger numbers, scalar";
+        ppc_bgr_scl:purpose = "test --ppc switches";
+        ppc_bgr_scl:original_value="1234567890e11";
+
+	double ppc_hgh(time);
+        ppc_hgh:long_name = "Precision-Preserving Compression, high precision";
+        ppc_hgh:purpose = "test --ppc switches";
+
+	double ppc_hgr(time);
+        ppc_hgr:long_name = "Precision-Preserving Compression, higher precision";
+        ppc_hgr:purpose = "test --ppc switches";
+
 	char md5_a;
 	md5_a:long_name = "the letter a";
 	md5_a:purpose = "String with known MD5 digest"; 
@@ -461,7 +494,7 @@ variables:
         val_eminusten:att_eminusten = 1.1e-10f;
 
 	int val_one_int;
-	val_one_int:long_name = "scalar equal to 1";
+	val_one_int:long_name = "scalar integer equal to 1";
 	val_one_int:_FillValue = -99l;
 
 	int val_one_one_int(lat);
@@ -573,6 +606,15 @@ variables:
 	float zero;
 	zero:long_name = "zero";
 
+	float ppc_zro_flt(time);
+	zero:long_name = "array of single precision floating point zeros";
+
+	double ppc_zro_dbl(time);
+	zero:long_name = "array of double precision floating point zeros";
+
+	int ppc_zro_int(time);
+	zero:long_name = "array of integer zeros";
+
 	float one;
 	one:long_name = "one";
 
@@ -1207,6 +1249,16 @@ data:
 	lon_wgt=0.347855,0.652145,0.652145,0.347855;
 //	lon_T42=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127;
 	lon_T42=0.000000,2.812500,5.625000,8.437500,11.250000,14.062500,16.875000,19.687500,22.500000,25.312500,28.125000,30.937500,33.750000,36.562500,39.375000,42.187500,45.000000,47.812500,50.625000,53.437500,56.250000,59.062500,61.875000,64.687500,67.500000,70.312500,73.125000,75.937500,78.750000,81.562500,84.375000,87.187500,90.000000,92.812500,95.625000,98.437500,101.250000,104.062500,106.875000,109.687500,112.500000,115.312500,118.125000,120.937500,123.750000,126.562500,129.375000,132.18 [...]
+	ppc_dbl=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+	ppc_flt=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+	ppc_big=123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1;
+	ppc_bgr=1234567890e20,1234567890e19,1234567890e18,1234567890e17,1234567890e16,1234567890e15,1234567890e14,1234567890e13,1234567890e12,1234567890e11;
+	ppc_bgr_scl=1234567890e11;
+	ppc_hgh=0.00000000000000000000,0.10000000000000000000,0.12000000000000000000,0.123000000000000000000,0.1234000000000000000,0.12345000000000000000,0.123456000000000000000000,0.12345670000000000000000000,0.123456780000000000000,0.123456789000000000000;
+	ppc_hgr=0.123456789000000000000,0.1234567890100000000000,0.1234567890120000000000,0.12345678901230000000000,0.123456789012340000000,0.12345678901234500000,0.12345678901234560000,0.12345678901234567000,0.12345678901234567800,0.12345678901234567890;
+	ppc_zro_flt=0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0;
+	ppc_zro_dbl=0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0;
+	ppc_zro_int=0,0,0,0,0,0,0,0,0,0;
 	var_msk=0.,1.,0.,0.,1.,1.,0.,2.;
 	ORO=0.,1.,0.,0.,1.,1.,0.,2.;
 	mask=0.,1.,0.,0.,1.,1.,0.,2.;
diff --git a/data/in_grp.cdl b/data/in_grp.cdl
index 2a3663c..92a80d1 100644
--- a/data/in_grp.cdl
+++ b/data/in_grp.cdl
@@ -47,6 +47,21 @@ netcdf in_grp {
   gds_crd=8;
   
  variables:
+  double ppc_dbl(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, double precision";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  float ppc_flt(time);
+        ppc_flt:long_name = "Precision-Preserving Compression, single precision";
+        ppc_flt:purpose = "test --ppc switches";
+        ppc_flt:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  double ppc_big(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, big numbers";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1";
+
   double time(time);
   
   float lat(lat);
@@ -78,9 +93,12 @@ netcdf in_grp {
   :Conventions = "CF-1.0";
   :history = "History global attribute.\n";
   :julian_day = 200000.04;
-  :RCS_Header = "$Header: /cvsroot/nco/nco/data/in_grp.cdl,v 1.123 2014/09/22 21:37:13 zender Exp $";
+  :RCS_Header = "$Header: /cvsroot/nco/nco/data/in_grp.cdl,v 1.125 2015/02/03 04:43:45 zender Exp $";
   
  data:
+  ppc_dbl=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_flt=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_big=123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1;
   area=10.,10.;
   lat=-90,90;
   lat_lon=1.,2.,3.,4.,5.,6.,7.,8;
@@ -91,12 +109,27 @@ netcdf in_grp {
   scl=1.0;
   time=1.,2.,3.,4.,5.,6.,7.,8.,9.,10.;
   unique=73;
+
   //
   //g1
   //
  group: g1 { 
   :history = "History group attribute.\n";
   variables:
+  double ppc_dbl(time);
+  ppc_dbl:long_name = "Precision-Preserving Compression, double precision";
+  ppc_dbl:purpose = "test --ppc switches";
+  ppc_dbl:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  float ppc_flt(time);
+  ppc_flt:long_name = "Precision-Preserving Compression, single precision";
+  ppc_flt:purpose = "test --ppc switches";
+  ppc_flt:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  double ppc_big(time);
+  ppc_dbl:long_name = "Precision-Preserving Compression, big numbers";
+  ppc_dbl:purpose = "test --ppc switches";
+  ppc_dbl:original_values="123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1";
   
     //coordinate variable (/lon)
     float lon(lon);
@@ -106,16 +139,38 @@ netcdf in_grp {
     int g1v2;
     int v1;
   data:
+  ppc_dbl=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_flt=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_big=123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1;
     lon=0,90,180,270;
     scl=1.1;
     g1v1=1;
     g1v2=2;
     v1=1;  
+
   group: g1g1 { 
     variables:
+  double ppc_dbl(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, double precision";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  float ppc_flt(time);
+        ppc_flt:long_name = "Precision-Preserving Compression, single precision";
+        ppc_flt:purpose = "test --ppc switches";
+        ppc_flt:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  double ppc_big(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, big numbers";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1";
+
       float scl;
       int v1;
     data:
+  ppc_dbl=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_flt=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_big=123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1;
       scl=1.11;
       v1=11;
     } // end g1g1
@@ -145,10 +200,29 @@ netcdf in_grp {
   //
  group: g4 { 
   variables:
+  double ppc_dbl(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, double precision";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  float ppc_flt(time);
+        ppc_flt:long_name = "Precision-Preserving Compression, single precision";
+        ppc_flt:purpose = "test --ppc switches";
+        ppc_flt:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  double ppc_big(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, big numbers";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1";
+
     int one_dmn_rec_var(time);
 	one_dmn_rec_var:long_name = "one dimensional record variable";
 	one_dmn_rec_var:units = "kelvin";
   data:
+  ppc_dbl=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_flt=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_big=123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1;
+
     one_dmn_rec_var=1,2,3,4,5,6,7,8,9,10;  
   } // end g4
   
@@ -195,6 +269,22 @@ netcdf in_grp {
  group: g7 { 
   variables:
   
+  double ppc_dbl(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, double precision";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  float ppc_flt(time);
+        ppc_flt:long_name = "Precision-Preserving Compression, single precision";
+        ppc_flt:purpose = "test --ppc switches";
+        ppc_flt:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  double ppc_big(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, big numbers";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1";
+
+  
     //coordinate variable (/g7/gds_crd)
     float gds_crd(gds_crd);
     gds_crd:long_name = "Geodesic coordinate";
@@ -216,6 +306,10 @@ netcdf in_grp {
     lon_gds:purpose = "1-D longitude coordinate referred to by geodesic grid variables";
     
   data:
+  ppc_dbl=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_flt=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_big=123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1;
+
     gds_crd=0,1,2,3,4,5,6,7;
     lat_gds=-90, -30,  -30,    0,   0, 30,  30,  90;
     lon_gds=  0,   0,  180,    0, 180,  0, 180,   0;
@@ -260,8 +354,27 @@ netcdf in_grp {
 	  group: g9g1g1g1g1g1 { // Level 6
 	    group: g9g1g1g1g1g1g1 { // Level 7
 	      variables:
+  double ppc_dbl(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, double precision";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  float ppc_flt(time);
+        ppc_flt:long_name = "Precision-Preserving Compression, single precision";
+        ppc_flt:purpose = "test --ppc switches";
+        ppc_flt:original_values="0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789";
+
+  double ppc_big(time);
+        ppc_dbl:long_name = "Precision-Preserving Compression, big numbers";
+        ppc_dbl:purpose = "test --ppc switches";
+        ppc_dbl:original_values="123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1";
+
 		int v7;
 	      data:
+  ppc_dbl=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_flt=0.0,0.1,0.12,0.123,0.1234,0.12345,0.123456,0.1234567,0.12345678,0.123456789;
+  ppc_big=123456789e-10,123456789e-9,123456789e-8,123456789e-7,123456789e-6,123456789e-5,123456789e-4,123456789e-3,123456789e-2,123456789e-1;
+
 		v7=73;
 	      } // end g9g1g1g1g1g1g1
 	    } // end g9g1g1g1g1g1
diff --git a/doc/ANNOUNCE b/doc/ANNOUNCE
index 0a9e853..25f2dc4 100644
--- a/doc/ANNOUNCE
+++ b/doc/ANNOUNCE
@@ -1,21 +1,28 @@
-$Header: /cvsroot/nco/nco/doc/ANNOUNCE,v 1.757 2014/11/26 21:11:28 zender Exp $ -*-text-*-
+$Header: /cvsroot/nco/nco/doc/ANNOUNCE,v 1.772 2015/02/16 23:33:48 zender Exp $ -*-text-*-
 
-The netCDF Operators NCO version 4.4.7 are ready. 
+The netCDF Operators NCO version 4.4.8 are ready. 
 
 http://nco.sf.net (Homepage)
 http://dust.ess.uci.edu/nco (Homepage "mirror")
 
-This stabilization release also contains useful new features that
-assist users with chunking policies, hyperslabbing, and creating
-record variables. First, hyperslab specifications now use
-Python-consistent indexing (negative indices) to indicate the last 
-elements of a dimension. Second, chunking behavior has been revamped.
-Overall the chunking algorithms are much more robust and optimized.
-See below for the user-visible changes. Of note is the new balanced
-chunking map named for Russ Rew. Finally, ncap2 can create record
-variables.  
-
-Work on NCO 4.4.8 is underway, still focused on stability and speed.
+NCO now implements a major new feature: lossy compression.
+This is distinct from the packing (scale_factor+add_offset) that
+NCO has long supported. The new lossy compression feature is
+activated by specifying desired level of precision in terms of
+either the total number of significant digits or the number of
+significant digits after (or before) the decimal point.
+These precision features are lumped together under the generic
+name Precision-Preserving Compression (PPC), summarized below.
+
+Specifying more reasonable and optimized chunking maps has been
+made easier by the addition of a new "best practices" policy 
+which implements Rew's balanced chunking for three-dimensional
+variables, and Lefter Product chunking for all others.
+
+New ncwa/ncra/nces arithmetic operators mabs(), mebs(), and mibs()
+simplify statistical analysis.
+
+Work on NCO 4.4.9 is underway, still focused on stability and speed.
 This includes more netCDF4 mop-up and new chunking features.
 
 Enjoy,
@@ -23,103 +30,88 @@ Charlie
 
 NEW FEATURES (full details always in ChangeLog):
 
-A. Hyperslab specifications now accept -1 (negative one) to indicate
-   the last element of a dimension. This is consistent with Python
-   syntax, unlike NCO's previous behavior (from 20120709--20141001)
-   where negative integers indicated the number of elements from the
-   last (-1 was penultimate, -0 was ultimate). Now -1 is last element,
-   -2 is penultimate element, and -N is the first element. NCO warns
-   users who may expect the old behavior.
-   ncks -d lon,-1 in.nc out.nc # last longitude
-   ncks -d lon,-3,-1 in.nc out.nc # last three longitudes
-   http://nco.sf.net/nco.html#hyp
-
-B. ncap2 creates record dimension when dimension size is negative: 
-   ncap2 -s 'defdim("time",10)'  in.nc out.nc # Fixed-size dimension
-   ncap2 -s 'defdim("time",-10)' in.nc out.nc # Record dimension
-   Formerly ncap2 had no way to create new record dimensions.
-   http://nco.sf.net/nco.html#ncap2
-
-C. A new chunking map, --cnk_map=rew, implements a chunking strategy 
-   that balances common 1-D (e.g., timeseries) and 2-D (e.g.,
-   geographic slices) access patterns to 3-D (time, lat, lon) data.
-   Name in honor of its (and netCDF's) developer Russ Rew:
-   http://www.unidata.ucar.edu/blogs/developer/en/entry/chunking_data_choosing_shapes
-   For now, this map only applies to 3-D variables. We hope to include 
-   a version generalized to N-D variables in the next release.
-   ncks --cnk_map=rew in.nc out.nc # Use Rew's balanced chunking
+A. NCO will now store data at a per-variable precision level.
+   We call this Precision-Preserving Compression (PPC). PPC currently
+   understands two types of precision. Users can specify either the
+   total Number of Significant Digits (NSD) or the Decimal Significant
+   Digits (DSD), meaning the number of significant digits after (or
+   before) the decimal point. For example, NSD=5 tells NCO to retain 5
+   significant digits. Specifying DSD=3 or DSD=-2 causes NCO to
+   preserve the number rounded to the nearest thousandth or hundred,
+   respectively. 
+   Under the hood, NSD uses bitmasking for quantization, while DSD
+   utilizes rounding. The bitmasking/rounding results in consecutive
+   zero-bits ending the IEEE-754 storage of each floating point
+   number. Standard byte-stream compression techniques, such as the
+   DEFLATE compression used by gzip (and in HDF5), compress these
+   zero-bits more efficiently than unrounded numbers.
+   The net result is PPC makes netCDF files skinnier when compressed.
+   Compression is internal with netCDF4 and external (e.g., gzip or
+   bzip2) with netCDF3. Space savings can be large.   
+   And face it, how often does your precision exceed 3 digits?
+   PPC data can also be packed to save additional space.
+   And don't worry, coordinate variables are not rounded :)
+   Thanks to Rich Signell for suggesting lossy compression for NCO. 
+   ncks --ppc default=5 --ppc temperature=3 in.nc out.nc
+   ncks --ppc AER.?,AOD.?,ARE.?,AW.?,BURDEN.?=3 in.nc out.nc
+   ncpdq --ppc default=4 --ppc grid_area=15 in.nc out.nc
+   http://nco.sf.net/nco.html#ppc has extensive documentation.
+
+B. New "nco" chunking policy and modified "rew" chunking map: 
+   Policy "nco" is a virtual option that implements the best
+   (in the subjective opinion of the authors) policy and map
+   for typical usage. This combination will evolve with time.
+   As of NCO version 4.4.8, this virtual policy implements 
+   map_rew for 3-D variables and map_lfp for all other variables. 
+   For the time being, map_rew does the same, i.e., it also
+   calls map_lfp when variables are not 3-D. This ensures that
+   Rew's balanced chunking is used on variables for which it
+   applies, and another sensible default (lfp = Lefter Product) 
+   is used on all other variables big enough to chunk.
+   ncks --cnk_plc=nco in.nc out.nc
+   ncks --cnk_map=rew in.nc out.nc
    http://nco.sf.net/nco.html#cnk
 
-D. A new chunking map, --cnk_map=nc4, implements the netCDF4 default
-   chunking map as implemented in the netCDF library used to build NCO. 
-   Formerly, NCO had no way to explicitly resort to netCDF4 defaults.
-   (netCDF4 and NCO chunking defaults differ).
-   This option allows users to change the chunking of a dataset to
-   what it would be if it were created from scratch by ncgen without
-   any specific chunking options.
-   ncks --cnk_map=nc4 in.nc out.nc # Use netCDF4 default chunking
-   http://nco.sf.net/nco.html#cnk
-
-E. NCO's default chunking policy now preserves existing chunking.
-   Previously NCO would use its favorite chunking policy (which
-   variables to chunk) and map (how to chunk those variables) on all 
-   input files unless the user explicitly specified other chunking
-   options. Thus a chain of processing commands had to explicitly
-   specify chunking parameters in each command otherwise the 
-   chunksizes could be reset to a shape not optimal for the
-   anticipated access patterns. Now once a file is optimally chunked,
-   no further NCO operations on that file need specify chunking
-   options (since they are preserved by default).
-   ncks in.nc out.nc # Defaults to --cnk_plc=xst, --cnk_map=xst
-   ncks --cnk_map=xst --cnk_plc=xst in.nc out.nc # Same effect
-   http://nco.sf.net/nco.html#cnk
-
-F. The minimum size of variables to chunk may now be specified with
-   --cnk_min=var_sz, where var_sz is the minimum size in bytes (not
-   elements) of variables to chunk. This threshold is intended to
-   restrict use of chunking to variables for which it is efficient. 
-   By default this minimum variable size for chunking is 8192 B.
-   Formerly, NCO would chunk all arrays of any size.
-   To obtain that behavior now users must specifiy --cnk_min=1, so
-   that arrays of any size will be chunked. 
-   To obtain a system-dependent minimum size, set cnk_min=0 and then
-   NCO will compute the minimum size as twice the system blocksize
-   (when available) and 8192 B otherwise.
-   ncks in.nc out.nc # Minimum variable size to chunk is 8192 B
-   ncks --cnk_min=1 in.nc out.nc # Minimum size is 1 B
-   ncks --cnk_min=0 in.nc out.nc # Minimum size is twice blocksize
-   http://nco.sf.net/nco.html#cnk
+C. NCO dimension-reducing operators (ncra, ncwa, nces) now support 
+   three new arithmetic operations to facilitate statistics:
+   mabs(), mebs(), and mibs(). These compute the maximum, mean, and 
+   minimum absolute value, respectively. They are invoked with the
+   -y or --op_typ switch in the same manner as max/min/avg:
+   ncwa -y mabs in.nc out.nc # Maximum absolute value 
+   ncra -y mebs in.nc out.nc # Mean absolute value 
+   nces -y mibs in.nc out.nc # Minimum absolute value 
+   http://nco.sf.net/nco.html#op_typ
+
+D. NCO warns when appended output type differs from input type. 
+   Previously NCO would not warn or die when the user (usually
+   inadvertently) wrote data of one type into a destination meant 
+   for a different type. These commands would therefore complete
+   without warning:
+   ncks -C -O -v double_var ~/nco/data/in.nc ~/foo.nc
+   ncrename -O -v double_var,float_var ~/foo.nc
+   ncks -C -A -v float_var ~/nco/data/in.nc ~/foo.nc
+   Now the user is warned though the operation is still permitted. 
+   http://nco.sf.net/nco.html#-A
 
 BUG FIXES:
 
-A. ncrename has known problems when renaming netCDF4 coordinates.
-   These problems will go away when Unidata issues a fix to the
-   underlying netCDF library. Thanks to Parker Allen for reporting.
+A. ncrename had problems when renaming netCDF4 coordinates.
+   These problems appear fixed but now there are new ones when 
+   renaming netCDF4 attributes. These will go away when Unidata
+   finishes fixing rename() routines in the netCDF4 library.
    http://nco.sf.net#bug_nc4_rename
 
-B. Auxiliary coordinate hyperslabbing (with -X) was inadvertently 
-   turned-off for 1-D variables. Now it works fine with 1-D vars.
-   Fixed by Pedro Vicente.
-   Moreover, files without a "Conventions=CF-1.X" attribute are now
-   treated as if they had the attribute to exploit -X functionality. 
-
-C. Auxiliary coordinate hyperslabbing (with -X) was broken for 
-   variables with non-coordinate dimensions. Fixed by Pedro Vicente. 
-   Thanks to romzie04 for alerting us to these -X issues.
-
-D. Fixed ncks bug when built on netCDF < 4.3.1 due to error in
-   handling NULL arguments to nco_inq_format_extended() stub.
-   Also fix printing problem with strncpy().
-   Only known to affect with strict initialization like clang.
+B. Fix ncks bug dumping files with multiple long dimension names.
+   This means you, NASA AIRS.
 
 KNOWN PROBLEMS DUE TO NCO:
 
    This section of ANNOUNCE reports and reminds users of the
    existence and severity of known, not yet fixed, problems. 
-   These problems occur with NCO 4.4.7 built/tested with netCDF
-   4.3.3-rc2 (20141112) on top of HDF5 hdf5-1.8.13 with:
+   These problems occur with NCO 4.4.8 built/tested with netCDF
+   4.3.3-rc3 (20150129) on top of HDF5 hdf5-1.8.13 with:
 
-   cd ~/nco;./configure --enable-netcdf4  # Configure mechanism -or-
+   cd ~/nco;./configure # Configure mechanism -or-
    cd ~/nco/bld;make dir;make allinone # Old Makefile mechanism
 
 A. NOT YET FIXED (NCO problem)
@@ -148,11 +140,18 @@ B. NOT YET FIXED (NCO problem?)
 KNOWN PROBLEMS DUE TO BASE LIBRARIES/PROTOCOLS:
 
 A. NOT YET FIXED (netCDF4 problem)
+   Renaming attributes in netCDF4 enhanced file deletes attributes.
+
+   Demonstration with netCDF <= 4.3.3-rc3:
+   ncrename -O -a /g1/lon at units,new_units ~/nco/data/in_grp.nc ~/foo.nc
+   ncks -v /g1/lon ~/foo.nc
+
+   Possibly new manifestation of already reported bug NCF-177
    Renaming netCDF4 coordinate variables or dimensions "succeeds" but  
    corrupts (sets to _FillValue) values in the output dataset.
    Full description here http://nco.sf.net#bug_nc4_rename
 
-   Demonstration with netCDF <= 4.3.2:
+   Demonstration with netCDF <= 4.3.2 (fixed in 4.3.3-rc3?):
    ncrename -O -v time,newrec ~/nco/data/in_grp.nc ~/foo.nc
    ncks --cdl -g // -v newrec -d time,0 -C ~/foo.nc
 
@@ -160,6 +159,8 @@ A. NOT YET FIXED (netCDF4 problem)
    20141008: Problem reported to Unidata
    20141010: Verified by Unidata.
    20141112: Verified problem still exists
+   20150129: Coordinate problem fixed with 4.3.3-rc3?
+   20150202: Attribute renaming in netCDF4 files deletes attributes
    Bug tracking: https://www.unidata.ucar.edu/jira/browse/NCF-177
    Workaround: Convert to netCDF3, rename, convert back to netCDF4
 
@@ -225,4 +226,3 @@ E. Reminder that NCO works on most HDF4 and HDF5 datasets, e.g.,
    HDF4: AMSR MERRA MODIS ...
    HDF5: GLAS ICESat Mabel SBUV ...
    HDF-EOS5: AURA HIRDLS OMI ...
-
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 9e9da55..386eb6b 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,225 @@
+2015-02-16  Charlie Zender  <zender at uci.edu>
+
+	* NCO 4.4.8 release procedure:
+ 	Changes since nco-4_4_7: -A warn, PPC, cnk nco=rew+lfp, mabs/mebs/mibs()
+	cd ~/nco;cvs tag -d nco-4_4_8;cvs tag -d nco-4_4_8-1
+	cd ~/nco;cvs commit -m "Preparing nco-4.4.8 release"
+	cvs tag -c nco-4_4_8;cvs tag -c nco-4_4_8-1
+
+	* One week of documentation improvements while SF was down
+
+2015-02-09  Charlie Zender  <zender at uci.edu>
+
+	* More inclusive definition of "coordinate variables" to avoid quantizing
+
+	* Never quantize upwards floating point values of zero
+
+2015-02-08  Charlie Zender  <zender at uci.edu>
+
+	* Implement PPC in ncecat, ncflint (revert ncbo)
+
+	* Correctly format brackets on indices of missing_values in nco_prn.c
+
+	* Rewrite tables with new less-lossy NSD algorithm
+
+	* Implement rounding (DSD) on integer types
+
+	* Prevent bitmasking (NSD) on integer types
+
+	* Prevent bitmasking when desired precision exceeds representable precision
+
+	* Preserve one extra bit for NC_DOUBLE, based on empirical tests results with ppc=array(1.234567,1.e-6,$dmn)
+
+2015-02-07  Charlie Zender  <zender at uci.edu>
+
+	* Add pure float version of nco_var_around()
+
+	* Bitmask-up to ones instead of down to zeros every other element to avoid bias in rounded mean
+
+2015-02-06  Charlie Zender  <zender at uci.edu>
+
+	* Document mabs/mebs/mibs
+
+	* Add nco_op_typ=mabs, mebs, mibs for maximum, mean, minimum absolute value
+
+2015-02-05  Charlie Zender  <zender at uci.edu>
+
+	* Increase prc_bnr_xpl_rqr by 2 so prc_bnr_xpl_rqr=prc_bnr_ceil. Fixes NSD=1 for Q?? in in.nc
+
+	* Reduce verbosity of dbg_lvl_std
+
+	* Implement PPC in ncwa.c, ncra.c
+
+	* Use -O3 not -O4 on clang
+
+2015-02-04  Charlie Zender  <zender at uci.edu>
+
+	* Document PPC efficacy in tbl_ppc_nc
+
+	* Fix ppc used in ncpdq
+
+2015-02-03  Charlie Zender  <zender at uci.edu>
+
+	* Explicit cast instead of implicit coercion to squelch many MSVC warnings
+
+	* Put string.h headers in nco_cln_utl.h
+
+	* Add isblank() for MSVC
+
+	* Fix nco_var_lst_add() call in ncap_lex.l to restore g++ compilation capability
+
+	* Fix compiling problems on MSVC
+
+2015-02-02  Charlie Zender  <zender at uci.edu>
+
+	* Implement cnk plc_nco and cause it and map_rew to do map_rew for 3-D otherwise map_lfp
+
+	* Optimize nco_ppc_set_var(), fail on invalid variable names
+
+	* Fully document PPC, NSD, DSD
+
+2015-01-31  Charlie Zender  <zender at uci.edu>
+
+	* Specifying PPC triggers dfl_lvl=1 on netCDF4 if not otherwise set
+
+	* Allow PPC on netCDF3
+
+2015-01-30  Charlie Zender  <zender at uci.edu>
+
+	* Warn on incorrect NSD input
+
+2015-01-29  Charlie Zender  <zender at uci.edu>
+
+	* Change generic name from LSD to PPC (precision-preserving compression)
+
+	* Implement threshold precision that turns-off LSD on per-variable basis
+
+2015-01-28  Charlie Zender  <zender at uci.edu>
+
+	* DSD and NSD compression both appear to work and pass all regressions
+
+	* Zero two additional bits from significand in nco_var_bitmask()
+
+	* Fix missing value treatment in nco_var_bitmask()
+
+	* Change nco_var_around() from lrint() to rint() (duh!)
+
+	* Dynamically allocate dimension string info in nco_prn_var_dfn() so NCO works on AIRS files with loooong dimension names
+
+2015-01-26  Charlie Zender  <zender at uci.edu>
+
+	* Functionalize NSD algorithm into nco_var_bitmask()
+
+	* Prototype NSD algorithm compiles, runs, and appears to work as expected
+
+2015-01-25  Charlie Zender  <zender at uci.edu>
+
+	* Demonstrate LSD failure on lsd_bgr, need real precision algorithm
+
+	* Add LSD to ncpdq, document in nco.texi, regression tests
+
+	* Move nco_lsd_att_prc() from main.c into nco_xtr_dfn() for maintainability
+
+2015-01-22  Charlie Zender  <zender at uci.edu>
+
+	* DYW added least_significant_digit attribute
+
+2015-01-20  Charlie Zender  <zender at uci.edu>
+
+	* Move DYW functions to new nco_sld.[ch] files
+
+	* Use tgamma() instead of gamma() on MacOSX
+
+	* Tidy --enable-custom warnings on clang
+
+	* Fix automake error on in_4c.nc
+
+2015-01-19  Charlie Zender  <zender at uci.edu>
+
+	* Fix LSD on MM3 codepath by using brute force instead of hash table in trv_tbl_var_nm_fll()
+
+2015-01-18  Charlie Zender  <zender at uci.edu>
+
+	* Clean-up rx code for LSD by DYW
+
+2015-01-16  Charlie Zender  <zender at uci.edu>
+
+	* Deprecate -D_BSD_SOURCE -D_POSIX_SOURCE in favor of -D_DEFAULT_SOURCE in configure
+
+	* Fix nco_var_typ_trv() prototype for C++ compilers
+
+2015-01-14  Charlie Zender  <zender at uci.edu>
+
+	* LSD implementation in MM3 code compiles cleanly yet has problem finding traversal objects
+
+	* Introduce nco_var_around() calls in MM3 write/copy code
+
+	* Patch nco_mss_val_get() to avoid invalid free()---now	nco_var_around() can work
+
+	* Regressions now fixed. Failures may have been due to excessive .tmp files in regression directory.
+
+2015-01-12  Charlie Zender  <zender at uci.edu>
+
+	* Do not call nco_var_around when lsd == NC_MAX_INT, ensure lsd always initialized
+
+	* Implement multiple LSD options by Dingying Wei (DYW). Currently broken.
+
+	* Improve ISO8601 functionality with nco_cln_sng_rbs()
+
+2015-01-09  Charlie Zender  <zender at uci.edu>
+
+	* Quiet CEWIs exposed by GCC 4.9.2
+
+	* Verify recent (20150109+) netCDF library snapshots fix coordinate renaming problems yet break attribute renaming
+
+	* Introduce -D_DEFAULT_SOURCE in place of deprecated (as of gcc 4.9.2) -D_BSD_SOURCE -D_POSIX_SOURCE
+	Include -O optimization when OPTS=X to quiet warning messages
+	Whether these Makefile changes introduce compile problems on older GCCs is TBD
+
+	* Add --lbr, --library to ncap2 to facilitate link-path debugging
+
+2015-01-08  Charlie Zender  <zender at uci.edu>
+
+	* New ncecat regression test to verify concatentated coordinates do not gain new record dimension
+
+	* Implement temporary fix for autoconf issues
+
+	* Discovered that NCO autotools do not follow autoconf guidelines
+	This only matters in practice for ncap2 which uses multiple additional libraries
+	Incorrect usage of CPPFLAGS and friends can lead to wrong precedence in ncap2 linking
+	Will be hard to fix correctly---thorough rewrite of configure.ac *.am required
+
+2015-01-07  Charlie Zender  <zender at uci.edu>
+
+	* Add autobld/compile: Wrapper for compilers which do not understand '-c -o'. Required by autoconf/configure on FC21.
+
+	* NCO_CHECK_FUNCS() for nc_rename_grp() and nc_inq_format() in configure
+ 	Oversight---configure builds have only used stub versions of these functions so far!
+
+2014-12-30  Charlie Zender  <zender at uci.edu>
+
+	* Change copyright year to 2015 and tweak LICENSE from "can" to "may"
+
+	* Introduce stubs to print calendar "time since"dates in more human-readable format
+
+2014-12-18  Charlie Zender  <zender at uci.edu>
+
+	* Impose nco_*() namespace convention on var_scv_*() and scv_var_*() routines
+
+2014-12-08  Charlie Zender  <zender at uci.edu>
+
+	* --lsd ready-to-go except needs per-variable option and needs to avoid coordinates
+
+	* Add nco_var_around() to enhance zlib compression by making it	lossy up to specified precision
+
+2014-12-08  Henry Butowsky  <henryb at hush.com>
+
+	* defdim() now accepts an additional optional arg UNLIMITED or LIMITED
+
+2014-12-01  Charlie Zender  <zender at uci.edu>
+
+	* Warn when appended output type differs from input type (legal	yet sketchy with -A)
+
 2014-11-26  Charlie Zender  <zender at uci.edu>
 
 	* NCO 4.4.7 release procedure:
diff --git a/doc/MANIFEST b/doc/MANIFEST
index 4278851..de4f6b2 100644
--- a/doc/MANIFEST
+++ b/doc/MANIFEST
@@ -1,4 +1,4 @@
-$Header: /cvsroot/nco/nco/doc/MANIFEST,v 1.73 2014/10/15 17:20:28 zender Exp $ -*-text-*-
+$Header: /cvsroot/nco/nco/doc/MANIFEST,v 1.74 2015/01/07 18:05:50 zender Exp $ -*-text-*-
 
 This file enumerates the files in the NCO distribution and, where
 appropriate, describes the purpose of the file.
@@ -46,6 +46,10 @@ nco/obj		Object files
 nco/qt		Qt and Visual Studio project files
 nco/src		Source files
 
+Autotools directory:
+nco/autobld/compile	Wrapper for compilers which do not understand '-c -o'
+nco/autobld/fxm		Many files need documentation here
+
 Binary directory:
 nco/bin/README		Description of binary directory
 
diff --git a/doc/Makefile.in b/doc/Makefile.in
index 8fd3540..fe959bb 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -417,13 +417,9 @@ clean-libtool:
 	$(AM_V_at)if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
 	 -o $(@:.html=.htp) $<; \
 	then \
-	  rm -rf $@; \
-	  if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
-	    mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \
+	  rm -rf $@ && mv $(@:.html=.htp) $@; \
 	else \
-	  if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
-	    rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \
-	  exit 1; \
+	  rm -rf $(@:.html=.htp); exit 1; \
 	fi
 $(srcdir)/nco.info: nco.texi 
 nco.dvi: nco.texi 
diff --git a/doc/TAG b/doc/TAG
index fd30dfa..d90bda8 100644
--- a/doc/TAG
+++ b/doc/TAG
@@ -1 +1 @@
-$Name: nco-4_4_7 $
+$Name: nco-4_4_8 $
diff --git a/doc/TODO b/doc/TODO
index f4fd2e6..b4edd0c 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -1,4 +1,4 @@
-$Header: /cvsroot/nco/nco/doc/TODO,v 1.1269 2014/09/19 20:38:28 zender Exp $
+$Header: /cvsroot/nco/nco/doc/TODO,v 1.1276 2015/02/10 01:11:40 zender Exp $
 
 # Purpose: TODO items for NCO
 
@@ -653,7 +653,7 @@ nco1109. broadcast degenerate dimensions in nco_var_cnf_dmn()/ncap_var_cnf_dmn()
 nco1110. ncap2: allow type specification as per christine smit (GSFC) request 20140407
 nco1111. ncrcat/ncecat check consistency of packing attributes across files (requested by ocehugo 20140522)
 nco1112. nco: nintap double iterator rqs by dave allured 20140813
-nco1113. nco: rsp parker norton help srd slowdown issue help 20140718
+nco1113. nco: rsp parker norton help srd slowdown issue help 20140718 completely fixed 201411
       Slowdown occurs only when using srd
       time ncks -O ~/ET_2000-01_2001-12.nc ~/foo.nc # works 1m38s
       time ncks -O -d time,0 ~/ET_2000-01_2001-12.nc ~/foo.nc # works 0m03s
@@ -661,7 +661,9 @@ nco1113. nco: rsp parker norton help srd slowdown issue help 20140718
       time ncks -O -L 0 -d time,0,0,12 ~/ET_2000-01_2001-12.nc ~/foo.nc # borken after 6m13s, numerous HDF Errors
       time ncks -O -d time,0,,12 ~/ET_2000-01_2001-12.nc ~/foo.nc # borken after 6m13s, numerous HDF Errors
 nco1114. ncrcat fails when single record dimension is not first dimension
-nco1115. 
+nco1116. --add_bnds for creating bounds variables
+nco1117. ncks human-readable times
+nco1118. 
 qrk
 ************************************************************************
 End ncoXXX TODOs
diff --git a/doc/VERSION b/doc/VERSION
index 3401474..bc30b06 100644
--- a/doc/VERSION
+++ b/doc/VERSION
@@ -1 +1 @@
-4.4.7
\ No newline at end of file
+4.4.8
\ No newline at end of file
diff --git a/doc/acme.png b/doc/acme.png
new file mode 100644
index 0000000..c32f3be
Binary files /dev/null and b/doc/acme.png differ
diff --git a/doc/debian.txt b/doc/debian.txt
index 51dd7ef..7026fee 100644
--- a/doc/debian.txt
+++ b/doc/debian.txt
@@ -1,4 +1,4 @@
-# $Header: /cvsroot/nco/nco/doc/debian.txt,v 1.205 2014/10/08 21:00:45 zender Exp $ -*-text-*-
+# $Header: /cvsroot/nco/nco/doc/debian.txt,v 1.206 2014/12/01 20:51:40 zender Exp $ -*-text-*-
 
 # Purpose: Debian information for NCO netCDF Operators project
 # Notes describe procedure to manipulate Debian-specific distribution
@@ -29,19 +29,19 @@ apt-get install dh-make debhelper devscripts fakeroot gnupg debian-policy develo
 
 2. Debian build procedure recommends placing entire package source in
    subdirectory of main package. 
-   For starters, we wish to create .debs of tagged releases, e.g., nco-4.4.7
-   First we create a clean source distribution of nco and place it in nco-4.4.7
-   Once automated, we will use cvs co -rnco-4_4_7 to get source
+   For starters, we wish to create .debs of tagged releases, e.g., nco-4.4.8
+   First we create a clean source distribution of nco and place it in nco-4.4.8
+   Once automated, we will use cvs co -rnco-4_4_8 to get source
    Until we know what is necessary, however, we just copy a snapshot
    
    2.1 Clean all build files from development directory
 
 cd ~/nco;make distclean;cd bld;make clean;cd ~
 tar cvzf ./nco/nco.tar.gz ./nco/*
-cd ~/nco;tar xvzf nco.tar.gz;mv nco nco-4.4.7
-/bin/rm nco.tar.gz;tar cvzf nco-4.4.7.tar.gz ./nco-4.4.7/*
-cd ~/nco/nco-4.4.7
-dh_make -e zender at uci.edu -f ../nco-4.4.7.tar.gz
+cd ~/nco;tar xvzf nco.tar.gz;mv nco nco-4.4.8
+/bin/rm nco.tar.gz;tar cvzf nco-4.4.8.tar.gz ./nco-4.4.8/*
+cd ~/nco/nco-4.4.8
+dh_make -e zender at uci.edu -f ../nco-4.4.8.tar.gz
 
     2.2 The preceding steps created template debian files for a .deb,
     Those files now reside in ~/nco/debian.
@@ -56,7 +56,7 @@ dh_make -e zender at uci.edu -f ../nco-4.4.7.tar.gz
    from previous build
 
    cd ~/nco;/bin/rm *.gz
-   cd ~/nco/nco-4.4.7
+   cd ~/nco/nco-4.4.8
    dpkg-buildpackage -rfakeroot > foo 2>&1
    dpkg-buildpackage -rsudo > foo 2>&1
 
@@ -85,12 +85,13 @@ patch -p0 < nco_X.Y.Z-3.diff   # Patch destination with Debian diff
    make tags
 # Put cute version-specific string in nco_ctl.c:nco_nmn_get()
 # Install correct version numbers before updating Debian
-# tags-query replace 4_4_7 with X_Y_Z+1
-# tags-query replace 4.4.7 with X.Y.Z+1
+# tags-query replace 4_4_8 with X_Y_Z+1
+# tags-query replace 4.4.8 with X.Y.Z+1
 # If tags-query replace does not work, be sure to manually change
 # versions in configure.ac, debian/files, doc/ANNOUNCE, doc/debian.txt,
-# doc/index.shtml, doc/nco.texi, bld/nco_dst.pl, doc/VERSION 
-   cd ~/nco/debian;dch -b --force-distribution --distribution=unstable -v 4.4.7-1 # Update changelog (-b forces this version number)
+# doc/index.shtml, doc/nco.texi, bld/nco_dst.pl, doc/VERSION
+# 20141201: Change NCO_VERSION_PATCH in src/nco.h!
+   cd ~/nco/debian;dch -b --force-distribution --distribution=unstable -v 4.4.8-1 # Update changelog (-b forces this version number)
    emacs ~/nco/bld/nco.spec # Update changelog
 # For unknown reason rules file may lose its executable bit
    chmod a+x ~/nco/debian/rules
@@ -98,22 +99,22 @@ patch -p0 < nco_X.Y.Z-3.diff   # Patch destination with Debian diff
    cd ~/nco;aclocal;autoheader;automake --foreign;autoconf
 # Save all files in emacs before tagging
 # Tag CVS code after changing files in ~/nco/debian
-   cd ~/nco;cvs commit -m "Preparing nco-4.4.7 release";cvs tag -c nco-4_4_7
-   ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4_4_7
+   cd ~/nco;cvs commit -m "Preparing nco-4.4.8 release";cvs tag -c nco-4_4_8
+   ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4_4_8
 # Upload tarball to SF https://sourceforge.net/projects/nco/files 
-   cd;scp dust.ess.uci.edu:/var/www/html/nco/src/nco-4.4.7.tar.gz .
+   cd;scp dust.ess.uci.edu:/var/www/html/nco/src/nco-4.4.8.tar.gz .
 
 7. Ubuntu PPA
 https://help.launchpad.net/Packaging/PPA
-dput NCO nco_4.4.7-2~ppa1_source.changes
+dput NCO nco_4.4.8-2~ppa1_source.changes
 sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com
 
 # Location of build diagnostics for mentors to help 
-http://dust.ess.uci.edu/nco/src/nco_4.4.7-1.dpkg-buildpackage.txt
-http://dust.ess.uci.edu/nco/src/nco_4.4.7-1.dsc
-http://dust.ess.uci.edu/nco/src/nco_4.4.7-1_i386.changes
-http://dust.ess.uci.edu/nco/src/nco_4.4.7-1_i386.deb
-http://dust.ess.uci.edu/nco/src/nco_4.4.7.orig.tar.gz
+http://dust.ess.uci.edu/nco/src/nco_4.4.8-1.dpkg-buildpackage.txt
+http://dust.ess.uci.edu/nco/src/nco_4.4.8-1.dsc
+http://dust.ess.uci.edu/nco/src/nco_4.4.8-1_i386.changes
+http://dust.ess.uci.edu/nco/src/nco_4.4.8-1_i386.deb
+http://dust.ess.uci.edu/nco/src/nco_4.4.8.orig.tar.gz
 
 # Becoming a Debian developer
 http://www.debian.org/devel/join/newmaint
@@ -167,31 +168,31 @@ Matej Vela <vela at debian.org>, Daniel Baumann <daniel at debian.org>, Warren Turkal
 # export LD_LIBRARY_PATH=/usr/lib:/lib:/usr/X11R6/lib
 # sudo aptitude install antlr bison flex gsl-bin libgsl0-dev libantlr-dev netcdf-bin libnetcdfc7 libnetcdf-dev texinfo libcurl4-gnutls-dev libexpat1-dev libxml2-dev udunits-bin libudunits2-0 libudunits2-dev
 cd ~/nco;cvc
-sudo /bin/rm -rf ${DATA}/nco-4.4.7 ${DATA}/nco_4.4.7* ${DATA}/debian # Cleanup last build. sudo necessary for removal because dpkg-buildpackage uses sudo?
-# cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_7-1 -d nco-4.4.7 nco # Export based on tag
-cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -D "1 second ago" -d nco-4.4.7 nco # Export most recent
-tar cvzf ./nco_4.4.7.orig.tar.gz --exclude='nco-4.4.7/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.7 
-/bin/rm -rf ${DATA}/nco-4.4.7 # Remove cvs-exported directory
-tar xvzf ./nco_4.4.7.orig.tar.gz # Untar to get directory without excluded files
-mkdir -p ${DATA}/nco-4.4.7/debian/source;cd ~/nco/debian;/bin/cp changelog compat control convert copyright doc-base files info rules ${DATA}/nco-4.4.7/debian;cd ~/nco/debian/source;/bin/cp format ${DATA}/nco-4.4.7/debian/source # Replace debian directory with _CURRENT_ (main trunk) settings
+sudo /bin/rm -rf ${DATA}/nco-4.4.8 ${DATA}/nco_4.4.8* ${DATA}/debian # Cleanup last build. sudo necessary for removal because dpkg-buildpackage uses sudo?
+# cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_8-1 -d nco-4.4.8 nco # Export based on tag
+cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -D "1 second ago" -d nco-4.4.8 nco # Export most recent
+tar cvzf ./nco_4.4.8.orig.tar.gz --exclude='nco-4.4.8/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.8 
+/bin/rm -rf ${DATA}/nco-4.4.8 # Remove cvs-exported directory
+tar xvzf ./nco_4.4.8.orig.tar.gz # Untar to get directory without excluded files
+mkdir -p ${DATA}/nco-4.4.8/debian/source;cd ~/nco/debian;/bin/cp changelog compat control convert copyright doc-base files info rules ${DATA}/nco-4.4.8/debian;cd ~/nco/debian/source;/bin/cp format ${DATA}/nco-4.4.8/debian/source # Replace debian directory with _CURRENT_ (main trunk) settings
 #export DEB_BUILD_OPTIONS='disable-dap-netcdf disable-netcdf4 disable-udunits2'; # Disable optional packages based on available Debian support
-#cd ${DATA}/nco-4.4.7;dpkg-buildpackage -rsudo -uc -us > ~/foo.nco 2>&1 # -uc -us: Do not sign changes or source files
-#cd ${DATA}/nco-4.4.7;dpkg-buildpackage -rsudo -sa > ~/foo.nco 2>&1 # -sa: Include _orig.tar.gz in .changes 
-cd ${DATA}/nco-4.4.7;dpkg-buildpackage -rsudo > ~/foo.nco 2>&1
+#cd ${DATA}/nco-4.4.8;dpkg-buildpackage -rsudo -uc -us > ~/foo.nco 2>&1 # -uc -us: Do not sign changes or source files
+#cd ${DATA}/nco-4.4.8;dpkg-buildpackage -rsudo -sa > ~/foo.nco 2>&1 # -sa: Include _orig.tar.gz in .changes 
+cd ${DATA}/nco-4.4.8;dpkg-buildpackage -rsudo > ~/foo.nco 2>&1
 sudo dpkg --remove nco
-sudo dpkg --install ${DATA}/nco_4.4.7-1_*.deb
+sudo dpkg --install ${DATA}/nco_4.4.8-1_*.deb
 cd ~/nco/bld;MY_BIN_DIR=/usr/bin ../bm/nco_bm.pl --regress
 # http://lintian.debian.org/full/zender@uci.edu.html
-lintian ${DATA}/nco_4.4.7-1_*.deb
-ls -l ${DATA}/nco_4.4.7*
+lintian ${DATA}/nco_4.4.8-1_*.deb
+ls -l ${DATA}/nco_4.4.8*
 m ~/foo.nco
 # Upload Ubuntu (rather than Debian) packages to websites
-scp ${DATA}/nco_4.4.7* dust.ess.uci.edu:/var/www/html/nco/src
-scp ${DATA}/nco_4.4.7* zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
+scp ${DATA}/nco_4.4.8* dust.ess.uci.edu:/var/www/html/nco/src
+scp ${DATA}/nco_4.4.8* zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
 # NB: Make sure RPMs build before uploading to debian, since changing
 # Debian versions is a PITA
 # NB: Only upload pbuilder Debian Sid (not personal Ubuntu) .deb builds to Debian mentors
-# cd ${DATA};dupload -t mentors nco_4.4.7-1_*.changes
+# cd ${DATA};dupload -t mentors nco_4.4.8-1_*.changes
 bsrc # Reset shell environment for regular development
 
 # New build system #2
@@ -205,52 +206,52 @@ DIST=sid sudo pbuilder update # Update chroot before building package in it
 # dget http://ftp.debian.org/debian/pool/main/n/nco/nco_3.9.0-1.dsc
 # dget http://ftp.debian.org/debian/pool/main/n/netcdf/netcdf_3.6.1-1.dsc
 # apt-get source nco # Get package source
-sudo /bin/rm /var/cache/pbuilder/result/nco_4.4.7* # Cleanup prior build
+sudo /bin/rm /var/cache/pbuilder/result/nco_4.4.8* # Cleanup prior build
 # To pass DEB_BUILD_OPTIONS to pbuilder while using sudo, one must first
 # modify sudoers with visudo to prevent sudo from resetting environment
 #export DEB_BUILD_OPTIONS='disable-dap-netcdf disable-netcdf4 disable-udunits2'; # Disable optional packages based on available Debian support
-cd ${DATA};DIST=sid sudo pbuilder build nco_4.4.7-1.dsc > ~/foo.nco.pbuilder 2>&1
-cd /var/cache/pbuilder/result;debsign -k6F635D10 nco_4.4.7-1_*.changes
-lintian /var/cache/pbuilder/result/nco_4.4.7-1_*.deb
+cd ${DATA};DIST=sid sudo pbuilder build nco_4.4.8-1.dsc > ~/foo.nco.pbuilder 2>&1
+cd /var/cache/pbuilder/result;debsign -k6F635D10 nco_4.4.8-1_*.changes
+lintian /var/cache/pbuilder/result/nco_4.4.8-1_*.deb
 sudo dpkg --remove nco
-sudo dpkg --install /var/cache/pbuilder/result/nco_4.4.7-1_*.deb
+sudo dpkg --install /var/cache/pbuilder/result/nco_4.4.8-1_*.deb
 cd ~/nco/bld;MY_BIN_DIR=/usr/bin ../bm/nco_bm.pl --regress
 # NB: Upload pbuilder Debian Sid packages to Debian mentors, but not
 # to personal or NCO websites since most people use Ubuntu not Debian
 # NB: Debian versions are a PITA, ensure RPMs build before uploading to Debian
-cd /var/cache/pbuilder/result;dupload -t mentors nco_4.4.7-1_*.changes
+cd /var/cache/pbuilder/result;dupload -t mentors nco_4.4.8-1_*.changes
 
 # RPM builds as root
 export rpm_root='/usr/src/redhat'
 # export sudo_sng='' # sudo not-necessary when builing in user directories
 export sudo_sng='sudo' # sudo necessary when building in system directories
 cd ~/nco;cvc;cvu
-/bin/rm -rf ${DATA}/nco-4.4.7 ${DATA}/nco-4.4.7* # Cleanup last build
+/bin/rm -rf ${DATA}/nco-4.4.8 ${DATA}/nco-4.4.8* # Cleanup last build
 ${sudo_sng} /bin/rm -r -f \
-${rpm_root}/BUILD/nco-4.4.7 \
-${rpm_root}/RPMS/i386/nco-4.4.7-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-debuginfo-4.4.7-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-devel-4.4.7-?.i386.rpm \
-${rpm_root}/SOURCES/nco-4.4.7.tar.gz \
-${rpm_root}/SPECS/nco-4.4.7.spec \
-${rpm_root}/SRPMS/nco-4.4.7-?.src.rpm
-cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_7-1 -d nco-4.4.7 nco # Export based on tag
-${sudo_sng} ln -s ${HOME}/nco/bld/nco.spec ${rpm_root}/SPECS/nco-4.4.7.spec
-tar cvzf ./nco-4.4.7.tar.gz --exclude='nco-4.4.7/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.7 
-${sudo_sng} /bin/cp ${DATA}/nco-4.4.7.tar.gz ${rpm_root}/SOURCES
+${rpm_root}/BUILD/nco-4.4.8 \
+${rpm_root}/RPMS/i386/nco-4.4.8-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-debuginfo-4.4.8-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-devel-4.4.8-?.i386.rpm \
+${rpm_root}/SOURCES/nco-4.4.8.tar.gz \
+${rpm_root}/SPECS/nco-4.4.8.spec \
+${rpm_root}/SRPMS/nco-4.4.8-?.src.rpm
+cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_8-1 -d nco-4.4.8 nco # Export based on tag
+${sudo_sng} ln -s ${HOME}/nco/bld/nco.spec ${rpm_root}/SPECS/nco-4.4.8.spec
+tar cvzf ./nco-4.4.8.tar.gz --exclude='nco-4.4.8/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.8 
+${sudo_sng} /bin/cp ${DATA}/nco-4.4.8.tar.gz ${rpm_root}/SOURCES
 cd ${rpm_root}/SPECS
-${sudo_sng} rpmbuild -ba --sign nco-4.4.7.spec > ~/foo.nco 2>&1
+${sudo_sng} rpmbuild -ba --sign nco-4.4.8.spec > ~/foo.nco 2>&1
 scp \
-${rpm_root}/RPMS/i386/nco-4.4.7-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-debuginfo-4.4.7-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-devel-4.4.7-?.i386.rpm \
-${rpm_root}/SRPMS/nco-4.4.7-?.src.rpm \
+${rpm_root}/RPMS/i386/nco-4.4.8-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-debuginfo-4.4.8-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-devel-4.4.8-?.i386.rpm \
+${rpm_root}/SRPMS/nco-4.4.8-?.src.rpm \
 dust.ess.uci.edu:/var/www/html/nco/src
 scp \
-${rpm_root}/RPMS/i386/nco-4.4.7-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-debuginfo-4.4.7-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-devel-4.4.7-?.i386.rpm \
-${rpm_root}/SRPMS/nco-4.4.7-?.src.rpm \
+${rpm_root}/RPMS/i386/nco-4.4.8-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-debuginfo-4.4.8-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-devel-4.4.8-?.i386.rpm \
+${rpm_root}/SRPMS/nco-4.4.8-?.src.rpm \
 zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
 
 # RPM builds as user
@@ -259,33 +260,33 @@ zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
 export rpm_root="${DATA}/rpm/nco"
 #cd ~/nco;cvc;cvu # This risks committing unwanted *.[ch]pp files
 mkdir -p ${DATA}/rpm/nco/TMP ${DATA}/rpm/nco/BUILD
-/bin/rm -rf ${DATA}/nco-4.4.7 ${DATA}/nco-4.4.7* # Cleanup last build
+/bin/rm -rf ${DATA}/nco-4.4.8 ${DATA}/nco-4.4.8* # Cleanup last build
 /bin/rm -r -f \
-${rpm_root}/nco-4.4.7-?.src.rpm \
-${rpm_root}/nco-4.4.7.spec \
-${rpm_root}/nco-4.4.7.tar.gz \
-${rpm_root}/*/nco-4.4.7-?.*.rpm \
-${rpm_root}/*/nco-debuginfo-4.4.7-?.*.rpm \
-${rpm_root}/*/nco-devel-4.4.7-?.*.rpm
-# cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_7-1 -d nco-4.4.7 nco # Export based on tag
-cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -D "1 second ago" -dnco-4.4.7 nco # Export most recent and build as 4.4.7-1
-tar cvzf ./nco-4.4.7.tar.gz --exclude='nco-4.4.7/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.7 
-/bin/cp ${DATA}/nco-4.4.7.tar.gz ${rpm_root}
+${rpm_root}/nco-4.4.8-?.src.rpm \
+${rpm_root}/nco-4.4.8.spec \
+${rpm_root}/nco-4.4.8.tar.gz \
+${rpm_root}/*/nco-4.4.8-?.*.rpm \
+${rpm_root}/*/nco-debuginfo-4.4.8-?.*.rpm \
+${rpm_root}/*/nco-devel-4.4.8-?.*.rpm
+# cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_8-1 -d nco-4.4.8 nco # Export based on tag
+cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -D "1 second ago" -dnco-4.4.8 nco # Export most recent and build as 4.4.8-1
+tar cvzf ./nco-4.4.8.tar.gz --exclude='nco-4.4.8/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.8 
+/bin/cp ${DATA}/nco-4.4.8.tar.gz ${rpm_root}
 ln -s ${HOME}/nco/bld/nco.spec ${rpm_root}/nco.spec
 cd ${rpm_root}
 rpmbuild -ba --sign nco.spec > ~/foo.nco 2>&1
-rpmlint ${rpm_root}/*/nco-4.4.7-?.*.rpm
+rpmlint ${rpm_root}/*/nco-4.4.8-?.*.rpm
 sudo yum remove nco
-sudo yum install ${rpm_root}/*/nco-4.4.7-?.*.rpm
+sudo yum install ${rpm_root}/*/nco-4.4.8-?.*.rpm
 scp \
-${rpm_root}/*/nco-4.4.7-?.*.rpm \
-${rpm_root}/*/nco-debuginfo-4.4.7-?.*.rpm \
-${rpm_root}/*/nco-devel-4.4.7-?.*.rpm \
-${rpm_root}/nco-4.4.7-?.*.src.rpm \
+${rpm_root}/*/nco-4.4.8-?.*.rpm \
+${rpm_root}/*/nco-debuginfo-4.4.8-?.*.rpm \
+${rpm_root}/*/nco-devel-4.4.8-?.*.rpm \
+${rpm_root}/nco-4.4.8-?.*.src.rpm \
 dust.ess.uci.edu:/var/www/html/nco/src
 scp \
-${rpm_root}/*/nco-4.4.7-?.*.rpm \
-${rpm_root}/*/nco-debuginfo-4.4.7-?.*.rpm \
-${rpm_root}/*/nco-devel-4.4.7-?.*.rpm \
-${rpm_root}/nco-4.4.7-?.*.src.rpm \
+${rpm_root}/*/nco-4.4.8-?.*.rpm \
+${rpm_root}/*/nco-debuginfo-4.4.8-?.*.rpm \
+${rpm_root}/*/nco-devel-4.4.8-?.*.rpm \
+${rpm_root}/nco-4.4.8-?.*.src.rpm \
 zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
diff --git a/doc/index.shtml b/doc/index.shtml
index 4a2cb91..46c184b 100644
--- a/doc/index.shtml
+++ b/doc/index.shtml
@@ -1,4 +1,4 @@
-<!-- $Header: /cvsroot/nco/nco/doc/index.shtml,v 1.940 2014/11/26 21:11:28 zender Exp $
+<!-- $Header: /cvsroot/nco/nco/doc/index.shtml,v 1.951 2015/02/16 23:36:39 zender Exp $
 Purpose: NCO homepage
 
 URL:
@@ -70,7 +70,7 @@ Try to disable Spammers' machines:
 <p><h1 align="center">Welcome to the netCDF Operator (NCO) Homepage</h1>
 
 <p><h2>
-Current NCO version is 4.4.7 last updated on <!--#flastmod file="VERSION"-->
+Current NCO version is 4.4.8 last updated on <!--#flastmod file="VERSION"-->
 </h2>
 
 <table border=0 width=100%>
@@ -149,7 +149,10 @@ and
 <h2>Recent Releases & Milestones</h2>
 
 <ul>
-<li>2014 Nov ??: 4.4.7 (<i>In progress</i>)
+<li>2015 Mar ??: 4.4.9 (<i>In progress</i>)
+<li>2015 Feb 16: 4.4.8 (Precision-preserving Compression)
+<li>2014 Dec 15: DOE ACME <a href="#prp_acme">project</a> commences</li>
+<li>2014 Nov 26: 4.4.7 (Chunking features)
 <li>2014 Oct 01: 4.4.6 (<tt>ncra, ncwa</tt> packing bugfixes, stride optimization)
 <li>2014 Aug 26: 4.4.5 (Stability)
 <li>2014 Jul 01: NASA ACCESS 2013 <a href="#prp_axs">project</a> commences</li>
@@ -319,10 +322,33 @@ This may incentivize us to tackle your favorite <a href="./TODO"><tt>TODO</tt></
 Inspired by President Obama's plan to bring more transparency to
 government investment, these homepage donation counters track the
 influence of your monetary donations on NCO development: 
-<dt>Donations received between 20030624 and 20140615: US$144.55. Thank you, donors!</dt>
+<dt>Donations received between 20030624 and 20141126: US$144.55. Thank you, donors!</dt>
 <dt>NCO features “incentivized” by these donations: More emoticons in the documentation :)</dt>
 <hr></p>
 
+<a name="doe"></a> <!-- http://nco.sf.net#doe -->
+<a name="DOE"></a> <!-- http://nco.sf.net#DOE -->
+<a name="ACME"></a> <!-- http://nco.sf.net#ACME -->
+<a name="acme"></a> <!-- http://nco.sf.net#acme -->
+<dt><a name="prp_acme"></a></dt> <!-- http://nco.sf.net#prp_acme -->
+<h2>DOE ACME Project</h2>
+<img src="doe.jpg" height=180 width=180 align=right>
+“Lightweight Climate Analysis Tools for ACME”
+is a US Department of Energy Cooperative Agreement (CA)
+<a href="http://www.climatemodeling.science.energy.gov/projects/nco">DE-SC0012998</a>
+from 20141215–20171214 that funds our
+<a href="http://dust.ess.uci.edu/prp/prp_acme/prp_acme.pdf">contribution</a>
+to the Accelerated Climate Modeling for Energy (ACME)
+<a href="https://acme-climate.atlassian.net/wiki/display/ACME/ACME+Home">project</a>,
+a part of DOE's Earth System Modeling (ESM)
+<a href="http://science.energy.gov/ber/research/cesd/earth-system-modeling-program">program</a>.
+The ACME project provides the resources to implement support for
+parallel regridding and workflows in NCO accessible through UV-CDAT.
+Spatially intelligent, parallelized analysis tools are a key component
+of the Group-Oriented Data Analysis and Distribution
+(<a href="http://nco.sf.net/nco.html#godad">GODAD</a>) paradigm we
+are developing for geoscience data analysis.</p>
+
 <a name="nasa"></a> <!-- http://nco.sf.net#nasa -->
 <a name="access"></a> <!-- http://nco.sf.net#access -->
 <dt><a name="prp_axs"></a></dt> <!-- http://nco.sf.net#prp_axs -->
@@ -628,19 +654,24 @@ San Francisco, CA, December 5–9, 2006.
 Releases receive unique CVS tags and their tarballs are stored  
 <a href="http://nco.sf.net/src">here</a> on SourceForge and
 <a href="http://dust.ess.uci.edu/nco/src">here</a> on our server at UCI.
-You can also retrieve the source of tagged versions directly
+You may also retrieve the source of tagged versions directly
 <a name="#Source">with CVS</a>.
 <ul>
-<li><b>NCO 4.4.8</b>: (<i>Future</i>) 
+<li><b>NCO 4.5.0</b>: (<i>Future</i>) 
+<li><b>NCO 4.4.9</b>: (<i>In Progress, features completed or being worked on include</i>)
 extensive hashing?;
 netCDF4 compound types?;
-Chunking <tt>cnk_map=rew</tt>;
 <a href="http://nco.sf.net/nco.html#cnk">Chunking</a> bytes not elements, caching;
+<tt>ncks</tt> prints human-legible ISO8601 dates;</li>
 Optimize diskless files?</li>
-<li><b>NCO 4.4.7</b>: (<i>In Progress, features completed or being worked on include</i>)
-Smarter chunking defaults</li>
+<li><b>NCO 4.4.8</b>: (<i>Current Stable Release</i>)
+Precision-Preserving Compression with <tt>--ppc</tt>;
+Arithmetic operators <tt>-y mabs/mebs/mibs</tt></li>
+<li><b>NCO 4.4.7</b>:
 <tt>cnk_min</tt> minimum chunksize;
-<li><b>NCO 4.4.6</b>: (<i>Current Stable Release</i>)
+Chunking <tt>cnk_map=rew</tt>;
+Smarter chunking defaults;</li>
+<li><b>NCO 4.4.6</b>: 
 <tt>-0</tt> hyperslabs;
 <tt>configure</tt> DAP correctly;
 HDF4 chunking and deflation;
@@ -783,7 +814,7 @@ Thanks to NSF for supporting AIX machines at NCAR over the years.
 <h3><a href="http://www.debian.org">Debian</a> and <a href="http://www.ubuntu.com">Ubuntu</a> GNU/Linux</a></h3>
 <ul>
 <!--
-<li><a href="http://www.debian.org">Debian</a> and <a href="http://www.ubuntu.com">Ubuntu</a> GNU/Linux-compatible Intel systems, prebuilt binary executable <a href="http://www.debian.org">deb</a>: <a href="http://packages.debian.org/testing/math/nco.html">nco-4.4.7</a></li>
+<li><a href="http://www.debian.org">Debian</a> and <a href="http://www.ubuntu.com">Ubuntu</a> GNU/Linux-compatible Intel systems, prebuilt binary executable <a href="http://www.debian.org">deb</a>: <a href="http://packages.debian.org/testing/math/nco.html">nco-4.4.8</a></li>
 -->
 <a href="http://packages.debian.org/unstable/science/nco">Debian NCO</a> and 
 <a href="http://packages.ubuntu.com/natty/nco">Ubuntu NCO</a> homepages.
@@ -791,12 +822,12 @@ Thanks to NSF for supporting AIX machines at NCAR over the years.
 NCO packages in the Debian/Ubuntu repositories (i.e., Sid and Raring) generally lag the packages distributed here by 6–12 months.
 <a name="beta"></a><a name="prerelease"> <!-- http://nco.sf.net#beta -->
 Newer (beta- or pre-release) packages are often available for intrepid Debian/Ubuntu users as described <a href="http://nco.cvs.sf.net/nco/nco/doc/beta.txt">here</a>.
-<dt>Debian package for most recent NCO release (install with, e.g., ‘<tt>dpkg --install nco_4.4.7-1_i386.deb</tt>’):</dt>
-<li><a href="src/nco_4.4.7-1_amd64.deb">nco_4.4.7-1_amd64.deb</a> (<!--#fsize file="src/nco_4.4.7-1_amd64.deb"-->): Executables AMD64-compatible (last updated <!--#flastmod file="src/nco_4.4.7-1_amd64.deb"-->)</li>
-<li><a href="src/nco_4.4.7-1.dsc">nco_4.4.7-1.dsc</a> (<!--#fsize file="src/nco_4.4.7-1.dsc"-->): Description (last updated <!--#flastmod file="src/nco_4.4.7-1.dsc"-->)</li>
-<li><a href="src/nco_4.4.7-1_amd64.changes">nco_4.4.7-1_amd64.changes</a> (<!--#fsize file="src/nco_4.4.7-1_amd64.changes"-->): Changes since last deb package (last updated <!--#flastmod file="src/nco_4.4.7-1_amd64.changes"-->)</li>
-<li><a href="src/nco_4.4.7.orig.tar.gz">nco_4.4.7.orig.tar.gz</a> (<!--#fsize file="src/nco_4.4.7.orig.tar.gz"-->): Upstream Source (last updated <!--#flastmod file="src/nco_4.4.7.orig.tar.gz"-->)</li>
-<li><a href="src/nco_4.4.7-1.diff.gz">nco_4.4.7-1.diff.gz</a> (<!--#fsize file="src/nco_4.4.7-1_amd64.changes"-->): Debian patch to upstream source (last updated <!--#flastmod file="src/nco_4.4.7-1_amd64.changes"-->)</li>
+<dt>Debian package for most recent NCO release (install with, e.g., ‘<tt>dpkg --install nco_4.4.8-1_i386.deb</tt>’):</dt>
+<li><a href="src/nco_4.4.8-1_amd64.deb">nco_4.4.8-1_amd64.deb</a> (<!--#fsize file="src/nco_4.4.8-1_amd64.deb"-->): Executables AMD64-compatible (last updated <!--#flastmod file="src/nco_4.4.8-1_amd64.deb"-->)</li>
+<li><a href="src/nco_4.4.8-1.dsc">nco_4.4.8-1.dsc</a> (<!--#fsize file="src/nco_4.4.8-1.dsc"-->): Description (last updated <!--#flastmod file="src/nco_4.4.8-1.dsc"-->)</li>
+<li><a href="src/nco_4.4.8-1_amd64.changes">nco_4.4.8-1_amd64.changes</a> (<!--#fsize file="src/nco_4.4.8-1_amd64.changes"-->): Changes since last deb package (last updated <!--#flastmod file="src/nco_4.4.8-1_amd64.changes"-->)</li>
+<li><a href="src/nco_4.4.8.orig.tar.gz">nco_4.4.8.orig.tar.gz</a> (<!--#fsize file="src/nco_4.4.8.orig.tar.gz"-->): Upstream Source (last updated <!--#flastmod file="src/nco_4.4.8.orig.tar.gz"-->)</li>
+<li><a href="src/nco_4.4.8-1.diff.gz">nco_4.4.8-1.diff.gz</a> (<!--#fsize file="src/nco_4.4.8-1_amd64.changes"-->): Debian patch to upstream source (last updated <!--#flastmod file="src/nco_4.4.8-1_amd64.changes"-->)</li>
 Thanks to Daniel Baumann, Barry deFreese, Francesco Lovergine, 
 Brian Mays, Rorik Peterson, and Matej Vela for their help packaging
 NCO for Debian over the years. 
@@ -842,10 +873,10 @@ Thanks to Gavin Burris and Kyle Wilcox for documenting build procedures for RHEL
 <!-- 
 # Mac OS X 10.9 (Mavericks) systems (aerosol):
 /usr/bin/scp ~/nco/doc/index.shtml zender,nco at web.sf.net:/home/project-web/nco/htdocs
-cd ~/bin/MACOSX;tar cvzf ${DATA}/nco-4.4.7.macosx.10.9.tar.gz nc*;scp ${DATA}/nco-4.4.7.macosx.10.9.tar.gz zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
+cd ~/bin/MACOSX;tar cvzf ${DATA}/nco-4.4.8.macosx.10.9.tar.gz nc*;scp ${DATA}/nco-4.4.8.macosx.10.9.tar.gz zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
 -->
 The most up-to-date binaries are probably those in the tarball below. Those unfamiliar with installing executables from tarballs may try the (older) <a href="http://en.wikipedia.org/wiki/Apple_Disk_Image">DMG</a> files (you may need to add <tt>/opt/local/bin</tt> to your executable path to access those operators).
-<li><a href="src/nco-4.4.7.macosx.10.9.tar.gz">nco-4.4.7.macosx.10.9.tar.gz</a> (<!--#fsize file="src/nco-4.4.7.macosx.10.9.tar.gz"-->): Executables MacOSX 10.9-compatible (last updated <!--#flastmod file="src/nco-4.4.7.macosx.10.9.tar.gz"-->). 
+<li><a href="src/nco-4.4.8.macosx.10.9.tar.gz">nco-4.4.8.macosx.10.9.tar.gz</a> (<!--#fsize file="src/nco-4.4.8.macosx.10.9.tar.gz"-->): Executables MacOSX 10.9-compatible (last updated <!--#flastmod file="src/nco-4.4.8.macosx.10.9.tar.gz"-->). 
 (NB: These executables require
   the <a href="http://trac.macosforge.org/projects/macports/wiki">MacPorts</a>
   <a href="#bld_macports">dependencies</a> for <a href="http://svn.macports.org/repository/macports/trunk/dports/science/nco">NCO</a>). Maintained by NCO Project.</li>
@@ -867,10 +898,10 @@ To build NCO from source yourself using MSVC or Qt, please see the <a href="nco_
 <ul>
 <!-- Copy files from http://glace.ess.uci.edu
 /usr/bin/scp /home/pvicente/nco/doc/index.shtml pvicente,nco at web.sf.net:/home/project-web/nco/htdocs
-/usr/bin/scp /home/pvicente/windows_setup/nco-4.4.6.windows.mvs.exe pvicente,nco at web.sf.net:/home/project-web/nco/htdocs/src
+/usr/bin/scp /home/pvicente/windows_setup/nco-4.4.7.windows.mvs.exe pvicente,nco at web.sf.net:/home/project-web/nco/htdocs/src
 /usr/bin/scp /home/pvicente/windows_setup/nco-4.4.5.win32.cygwin.tar.gz pvicente,nco at web.sf.net:/home/project-web/nco/htdocs/src
 -->
-<li><a href="src/nco-4.4.6.windows.mvs.exe">nco-4.4.6.windows.mvs.exe</a> (<!--#fsize file="src/nco-4.4.6.windows.mvs.exe"-->) : Windows Self-Extracting Installer (last updated <!--#flastmod file="src/nco-4.4.6.windows.mvs.exe"-->). Maintained by Pedro Vicente.</li>
+<li><a href="src/nco-4.4.7.windows.mvs.exe">nco-4.4.7.windows.mvs.exe</a> (<!--#fsize file="src/nco-4.4.7.windows.mvs.exe"-->) : Windows Self-Extracting Installer (last updated <!--#flastmod file="src/nco-4.4.7.windows.mvs.exe"-->). Maintained by Pedro Vicente.</li>
 </ul>
 
 <a name="cygwin"></a> <!-- http://nco.sf.net#cygwin -->
@@ -1035,10 +1066,10 @@ The best way to acquire the source is with <a href="http://www.cvshome.org">CVS<
 The second best way is to download the source as a compressed tarfile:
 <ul>
 <li>
-<a href="src/nco-4.4.7.tar.gz">nco-4.4.7.tar.gz</a> 
-(<!--#fsize file="src/nco-4.4.7.tar.gz"--> compressed tar-file)<br>
-<!--#exec cmd="openssl dgst -md5 src/nco-4.4.7.tar.gz"--><br>
-<!--#exec cmd="openssl dgst -sha1 src/nco-4.4.7.tar.gz"--> 
+<a href="src/nco-4.4.8.tar.gz">nco-4.4.8.tar.gz</a> 
+(<!--#fsize file="src/nco-4.4.8.tar.gz"--> compressed tar-file)<br>
+<!--#exec cmd="openssl dgst -md5 src/nco-4.4.8.tar.gz"--><br>
+<!--#exec cmd="openssl dgst -sha1 src/nco-4.4.8.tar.gz"--> 
 </li>
 </ul>
 
@@ -1061,19 +1092,19 @@ Hit <tt>return</tt> when asked for the CVS password.
 This login procedure is only required the first time you access the CVS server.
 Then you may retrieve any NCO distribution you wish.
 Usually you wish to retrieve a recent tagged (i.e., released) version.
-This command retrieves and places NCO version <tt>4.4.7</tt> (which is
-tagged as <tt>nco-4_4_7</tt> due to CVS rules) into local directory
-<tt>nco-4.4.7</tt>:   
-<p><tt>cvs -z3 -d:pserver:anonymous at nco.cvs.sf.net:/cvsroot/nco co -r nco-4_4_7 -d nco-4.4.7 nco</tt></p>
+This command retrieves and places NCO version <tt>4.4.8</tt> (which is
+tagged as <tt>nco-4_4_8</tt> due to CVS rules) into local directory
+<tt>nco-4.4.8</tt>:   
+<p><tt>cvs -z3 -d:pserver:anonymous at nco.cvs.sf.net:/cvsroot/nco co -r nco-4_4_8 -d nco-4.4.8 nco</tt></p>
 This command retrieves the current (“bleeding edge”)
 development version of NCO into a local directory named <tt>nco</tt>:
 <p><tt>cvs -z3 -d:pserver:anonymous at nco.cvs.sf.net:/cvsroot/nco co -kk nco</tt></p>
 Track changes to the development version using
 <p><tt>cd nco;cvs update -kk</tt></p>
 One difference between running a "tagged" release 
-(e.g., <tt>nco-4_4_7</tt>) and the development version is that the
+(e.g., <tt>nco-4_4_8</tt>) and the development version is that the
 tagged release operators will print a valid version number (e.g.,
-<tt>4.4.7</tt>) when asked to do so with the <tt>-r</tt> flag
+<tt>4.4.8</tt>) when asked to do so with the <tt>-r</tt> flag
 (e.g., <tt>ncks -r</tt>).
 The development version simply places today's date in place of the
 version.
@@ -1197,7 +1228,7 @@ Users should instead first download and install the Antlr found <a href="http://
 <tt>
 <dt>wget http://dust.ess.uci.edu/nco/nco.tar.gz</dt>
 <dt>tar xvzf nco.tar.gz</dt>
-<dt>cd nco-4.4.7</dt>
+<dt>cd nco-4.4.8</dt>
 <dt>./configure --prefix=/usr/local</dt>
 <dt>make</dt>
 <dt>sudo make install</dt>
@@ -1313,8 +1344,8 @@ Comments welcome. Updates will be posted right here.
 <!-- http://nco.sf.net#bug_nc4_rename -->
 <a name="bug_nc4_rename"></a>
 <li><i>netCDF4 Renaming bugs:</i>
-Unforunately from 2007–present (October, 2014) the netCDF
-library (versions 4.0.0–4.3.2) contained bugs or limitations  
+Unforunately from 2007–present (February, 2015) the netCDF
+library (versions 4.0.0–4.3.3-rc3) contained bugs or limitations  
 that prevent <tt>ncrename</tt> (and other netCDF4-based software) 
 from correctly renaming coordinate variables, dimensions, and groups
 in netCDF4  files.  
diff --git a/doc/nco.dvi b/doc/nco.dvi
index d1ea755..1e11d12 100644
Binary files a/doc/nco.dvi and b/doc/nco.dvi differ
diff --git a/doc/nco.html b/doc/nco.html
index b73ced0..a104ea3 100644
--- a/doc/nco.html
+++ b/doc/nco.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 <html>
-<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
+<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
 <head>
-<title>NCO 4.4.7 User Guide</title>
+<title>NCO 4.4.8 User Guide</title>
 
-<meta name="description" content="NCO 4.4.7 User Guide">
-<meta name="keywords" content="NCO 4.4.7 User Guide">
+<meta name="description" content="NCO 4.4.8 User Guide">
+<meta name="keywords" content="NCO 4.4.8 User Guide">
 <meta name="resource-type" content="document">
 <meta name="distribution" content="global">
 <meta name="Generator" content="makeinfo">
@@ -47,7 +47,7 @@ ul.no-bullet {list-style: none}
 </head>
 
 <body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
-<h1 class="settitle" align="center"><acronym>NCO</acronym> 4.4.7 User Guide</h1>
+<h1 class="settitle" align="center"><acronym>NCO</acronym> 4.4.8 User Guide</h1>
 
 
 
@@ -107,7 +107,7 @@ ul.no-bullet {list-style: none}
 <p>This file documents <acronym>NCO</acronym>, a collection of utilities to
 manipulate and analyze netCDF files.
 </p>
-<p>Copyright © 1995–2014 Charlie Zender
+<p>Copyright © 1995–2015 Charlie Zender
 </p>
 <p>This is the first edition of the <cite>NCO User Guide</cite>,<br>
 and is consistent with version 2<!-- /@w --> of <samp>texinfo.tex</samp>.
@@ -173,7 +173,7 @@ Irvine, CA 92697-3100<br>
     </ul></li>
     <li><a name="toc-Performance-1" href="#Performance">2.10 Performance</a></li>
   </ul></li>
-  <li><a name="toc-NCO-Features" href="#Common-features">3 NCO Features</a>
+  <li><a name="toc-Shared-Features" href="#Shared-features">3 Shared Features</a>
   <ul class="no-bullet">
     <li><a name="toc-Internationalization-1" href="#Internationalization">3.1 Internationalization</a></li>
     <li><a name="toc-Metadata-Optimization-1" href="#Metadata-Optimization">3.2 Metadata Optimization</a></li>
@@ -216,32 +216,33 @@ Irvine, CA 92697-3100<br>
     <li><a name="toc-Multiple-Record-Dimensions-1" href="#Multiple-Record-Dimensions">3.24 Multiple Record Dimensions</a></li>
     <li><a name="toc-Missing-values" href="#Missing-Values">3.25 Missing values</a></li>
     <li><a name="toc-Chunking-1" href="#Chunking">3.26 Chunking</a></li>
-    <li><a name="toc-Deflation-1" href="#Deflation">3.27 Deflation</a></li>
-    <li><a name="toc-MD5-digests-1" href="#MD5-digests">3.28 MD5 digests</a></li>
-    <li><a name="toc-Buffer-sizes-1" href="#Buffer-sizes">3.29 Buffer sizes</a></li>
-    <li><a name="toc-RAM-disks-1" href="#RAM-disks">3.30 RAM disks</a></li>
-    <li><a name="toc-Packed-data-1" href="#Packed-data">3.31 Packed data</a>
+    <li><a name="toc-Compression-1" href="#Compression">3.27 Compression</a></li>
+    <li><a name="toc-Deflation-1" href="#Deflation">3.28 Deflation</a></li>
+    <li><a name="toc-MD5-digests-1" href="#MD5-digests">3.29 MD5 digests</a></li>
+    <li><a name="toc-Buffer-sizes-1" href="#Buffer-sizes">3.30 Buffer sizes</a></li>
+    <li><a name="toc-RAM-disks-1" href="#RAM-disks">3.31 RAM disks</a></li>
+    <li><a name="toc-Packed-data-1" href="#Packed-data">3.32 Packed data</a>
     <ul class="no-bullet">
       <li><a name="toc-Packing-Algorithm" href="#Packing-Algorithm">Packing Algorithm</a></li>
       <li><a name="toc-Unpacking-Algorithm" href="#Unpacking-Algorithm">Unpacking Algorithm</a></li>
       <li><a name="toc-Default-Handling-of-Packed-Data" href="#Default-Handling-of-Packed-Data">Default Handling of Packed Data</a></li>
       <li><a name="toc-Default-Handling-of-Packed-Data-1" href="#Default-Handling-of-Packed-Data-1">Default Handling of Packed Data</a></li>
     </ul></li>
-    <li><a name="toc-Operation-Types-1" href="#Operation-Types">3.32 Operation Types</a></li>
-    <li><a name="toc-Type-Conversion-1" href="#Type-Conversion">3.33 Type Conversion</a>
+    <li><a name="toc-Operation-Types-1" href="#Operation-Types">3.33 Operation Types</a></li>
+    <li><a name="toc-Type-Conversion-1" href="#Type-Conversion">3.34 Type Conversion</a>
     <ul class="no-bullet">
-      <li><a name="toc-Automatic-type-conversion-1" href="#Automatic-type-conversion">3.33.1 Automatic type conversion</a></li>
-      <li><a name="toc-Promoting-Single_002dprecision-to-Double-1" href="#Promoting-Single_002dprecision-to-Double">3.33.2 Promoting Single-precision to Double</a></li>
-      <li><a name="toc-Manual-type-conversion-1" href="#Manual-type-conversion">3.33.3 Manual type conversion</a></li>
+      <li><a name="toc-Automatic-type-conversion-1" href="#Automatic-type-conversion">3.34.1 Automatic type conversion</a></li>
+      <li><a name="toc-Promoting-Single_002dprecision-to-Double-1" href="#Promoting-Single_002dprecision-to-Double">3.34.2 Promoting Single-precision to Double</a></li>
+      <li><a name="toc-Manual-type-conversion-1" href="#Manual-type-conversion">3.34.3 Manual type conversion</a></li>
     </ul></li>
-    <li><a name="toc-Batch-Mode-1" href="#Batch-Mode">3.34 Batch Mode</a></li>
-    <li><a name="toc-History-Attribute-1" href="#History-Attribute">3.35 History Attribute</a></li>
-    <li><a name="toc-File-List-Attributes-1" href="#File-List-Attributes">3.36 File List Attributes</a></li>
-    <li><a name="toc-CF-Conventions-1" href="#CF-Conventions">3.37 <acronym>CF</acronym> Conventions</a></li>
-    <li><a name="toc-ARM-Conventions-1" href="#ARM-Conventions">3.38 <acronym>ARM</acronym> Conventions</a></li>
-    <li><a name="toc-Operator-Version-1" href="#Operator-Version">3.39 Operator Version</a></li>
+    <li><a name="toc-Batch-Mode-1" href="#Batch-Mode">3.35 Batch Mode</a></li>
+    <li><a name="toc-History-Attribute-1" href="#History-Attribute">3.36 History Attribute</a></li>
+    <li><a name="toc-File-List-Attributes-1" href="#File-List-Attributes">3.37 File List Attributes</a></li>
+    <li><a name="toc-CF-Conventions-1" href="#CF-Conventions">3.38 <acronym>CF</acronym> Conventions</a></li>
+    <li><a name="toc-ARM-Conventions-1" href="#ARM-Conventions">3.39 <acronym>ARM</acronym> Conventions</a></li>
+    <li><a name="toc-Operator-Version-1" href="#Operator-Version">3.40 Operator Version</a></li>
   </ul></li>
-  <li><a name="toc-Operator-Reference-Manual-1" href="#Operator-Reference-Manual">4 Operator Reference Manual</a>
+  <li><a name="toc-Reference-Manual-1" href="#Reference-Manual">4 Reference Manual</a>
   <ul class="no-bullet">
     <li><a name="toc-ncap2-netCDF-Arithmetic-Processor-1" href="#ncap2-netCDF-Arithmetic-Processor">4.1 <code>ncap2</code> netCDF Arithmetic Processor</a>
     <ul class="no-bullet">
@@ -331,7 +332,7 @@ Irvine, CA 92697-3100<br>
 <a name="Top"></a>
 <div class="header">
 <p>
-Next: <a href="#Foreword" accesskey="n" rel="next">Foreword</a>, Previous: <a href="dir.html#Top" accesskey="p" rel="previous">(dir)</a>, Up: <a href="dir.html#Top" accesskey="u" rel="up">(dir)</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Foreword" accesskey="n" rel="next">Foreword</a>, Previous: <a href="dir.html#Top" accesskey="p" rel="prev">(dir)</a>, Up: <a href="dir.html#Top" accesskey="u" rel="up">(dir)</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="NCO-User-Guide"></a>
 <h1 class="top">NCO User Guide</h1>
@@ -362,8 +363,8 @@ examples from the field of climate modeling and analysis.
 The <acronym>NCO</acronym> homepage is <a href="http://nco.sf.net">http://nco.sf.net</a>, and
 there is a mirror at <a href="http://dust.ess.uci.edu/nco">http://dust.ess.uci.edu/nco</a>.
 </p>
-<p>This documentation is for <acronym>NCO</acronym> version 4.4.7.
-It was last updated 26 November 2014.
+<p>This documentation is for <acronym>NCO</acronym> version 4.4.8.
+It was last updated 17 February 2015.
 Corrections, additions, and rewrites of this documentation are very
 welcome.
 </p>
@@ -379,9 +380,9 @@ Charlie Zender
 </td></tr>
 <tr><td align="left" valign="top">• <a href="#Strategies" accesskey="4">Strategies</a>:</td><td>  </td><td align="left" valign="top">
 </td></tr>
-<tr><td align="left" valign="top">• <a href="#Common-features" accesskey="5">Common features</a>:</td><td>  </td><td align="left" valign="top">
+<tr><td align="left" valign="top">• <a href="#Shared-features" accesskey="5">Shared features</a>:</td><td>  </td><td align="left" valign="top">
 </td></tr>
-<tr><td align="left" valign="top">• <a href="#Operator-Reference-Manual" accesskey="6">Operator Reference Manual</a>:</td><td>  </td><td align="left" valign="top">
+<tr><td align="left" valign="top">• <a href="#Reference-Manual" accesskey="6">Reference Manual</a>:</td><td>  </td><td align="left" valign="top">
 </td></tr>
 <tr><td align="left" valign="top">• <a href="#Contributing" accesskey="7">Contributing</a>:</td><td>  </td><td align="left" valign="top">
 </td></tr>
@@ -403,7 +404,7 @@ Charlie Zender
 <a name="Foreword"></a>
 <div class="header">
 <p>
-Next: <a href="#Summary" accesskey="n" rel="next">Summary</a>, Previous: <a href="#Top" accesskey="p" rel="previous">Top</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Summary" accesskey="n" rel="next">Summary</a>, Previous: <a href="#Top" accesskey="p" rel="prev">Top</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Foreword-1"></a>
 <h2 class="unnumbered">Foreword</h2>
@@ -506,7 +507,7 @@ Irvine, California<br>
 <a name="Summary"></a>
 <div class="header">
 <p>
-Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previous: <a href="#Foreword" accesskey="p" rel="previous">Foreword</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previous: <a href="#Foreword" accesskey="p" rel="prev">Foreword</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Summary-1"></a>
 <h2 class="unnumbered">Summary</h2>
@@ -531,7 +532,7 @@ netCDF itself.
 <a name="Introduction"></a>
 <div class="header">
 <p>
-Next: <a href="#Strategies" accesskey="n" rel="next">Strategies</a>, Previous: <a href="#Summary" accesskey="p" rel="previous">Summary</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Strategies" accesskey="n" rel="next">Strategies</a>, Previous: <a href="#Summary" accesskey="p" rel="prev">Summary</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Introduction-1"></a>
 <h2 class="chapter">1 Introduction</h2>
@@ -558,7 +559,7 @@ Next: <a href="#Strategies" accesskey="n" rel="next">Strategies</a>, Previous: <
 <a name="Availability"></a>
 <div class="header">
 <p>
-Next: <a href="#How-to-Use-This-guide" accesskey="n" rel="next">How to Use This guide</a>, Previous: <a href="#Introduction" accesskey="p" rel="previous">Introduction</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#How-to-Use-This-guide" accesskey="n" rel="next">How to Use This guide</a>, Previous: <a href="#Introduction" accesskey="p" rel="prev">Introduction</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Availability-1"></a>
 <h3 class="section">1.1 Availability</h3>
@@ -631,7 +632,7 @@ and on the <code>nco-announce</code> mailing list
 <a name="How-to-Use-This-guide"></a>
 <div class="header">
 <p>
-Next: <a href="#Compatability" accesskey="n" rel="next">Compatability</a>, Previous: <a href="#Availability" accesskey="p" rel="previous">Availability</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Compatability" accesskey="n" rel="next">Compatability</a>, Previous: <a href="#Availability" accesskey="p" rel="prev">Availability</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="How-to-Use-This-Guide"></a>
 <h3 class="section">1.2 How to Use This Guide</h3>
@@ -645,12 +646,12 @@ descriptions of <a href="http://nco.sf.net/#bug">Known Problems</a> etc.
 are on our homepage 
 (<a href="http://nco.sf.net/">http://nco.sf.net/</a>).
 </p>
-<p>There are twelve operators in the current version (4.4.7).
-The function of each is explained in <a href="#Operator-Reference-Manual">Operator Reference Manual</a>.
+<p>There are twelve operators in the current version (4.4.8).
+The function of each is explained in <a href="#Reference-Manual">Reference Manual</a>.
 Many of the tasks that <acronym>NCO</acronym> can accomplish are described during
-the explanation of common <acronym>NCO</acronym> Features (see <a href="#Common-features">Common features</a>).
+the explanation of common <acronym>NCO</acronym> Features (see <a href="#Shared-features">Shared features</a>).
 More specific use examples for each operator can be seen by visiting the
-operator-specific examples in the <a href="#Operator-Reference-Manual">Operator Reference Manual</a>.
+operator-specific examples in the <a href="#Reference-Manual">Reference Manual</a>.
 These can be found directly by prepending the operator name with the
 <code>xmp_</code> tag, e.g., <a href="http://nco.sf.net/nco.html#xmp_ncks">http://nco.sf.net/nco.html#xmp_ncks</a>.
 Also, users can type the operator name on the shell command line to 
@@ -658,7 +659,7 @@ see all the available options, or type, e.g., ‘<samp>man ncks</samp>&rsquo
 a help man-page.
 </p>
 <p><acronym>NCO</acronym> is a command-line language.
-You can either use an operator after the prompt (e.g., ‘<samp>$</samp>’ here),
+You may either use an operator after the prompt (e.g., ‘<samp>$</samp>’ here),
 like, 
 </p><div class="example">
 <pre class="example">$ <code>operator</code> <samp>[options]</samp> <samp>input</samp> <samp>[output]</samp>
@@ -680,7 +681,7 @@ see <a href="#Help-Requests-and-Bug-Reports">Help Requests and Bug Reports</a>.
 <a name="Compatability"></a>
 <div class="header">
 <p>
-Next: <a href="#Symbolic-Links" accesskey="n" rel="next">Symbolic Links</a>, Previous: <a href="#How-to-Use-This-guide" accesskey="p" rel="previous">How to Use This guide</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Symbolic-Links" accesskey="n" rel="next">Symbolic Links</a>, Previous: <a href="#How-to-Use-This-guide" accesskey="p" rel="prev">How to Use This guide</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Operating-systems-compatible-with-NCO"></a>
 <h3 class="section">1.3 Operating systems compatible with <acronym>NCO</acronym></h3>
@@ -705,18 +706,21 @@ Next: <a href="#Symbolic-Links" accesskey="n" rel="next">Symbolic Links</a>, Pre
 <a name="index-compatability"></a>
 <a name="index-portability"></a>
 <a name="index-installation"></a>
-<p><acronym>NCO</acronym> has been successfully ported and tested and is known to
-work on the following 32- and 64-bit platforms:  
+<p>In its time on Earth, <acronym>NCO</acronym> has been successfully ported and
+tested on so many 32- and 64-bit platforms that if we did not write
+them down here we would forget their names:  
 <acronym>IBM AIX</acronym> 4.x, 5.x,
 FreeBSD 4.x, 
 <acronym>GNU</acronym>/Linux 2.x, LinuxPPC, LinuxAlpha, LinuxARM, LinuxSparc64,
+LinuxAMD64, 
 <acronym>SGI IRIX</acronym> 5.x and 6.x,
 MacOS X<!-- /@w --> 10.x, 
-<acronym>NEC</acronym> Super-UX 10.x, 
 <acronym>DEC OSF</acronym>, 
+<acronym>NEC</acronym> Super-UX 10.x, 
 Sun SunOS 4.1.x, Solaris 2.x, 
 <acronym>Cray UNICOS</acronym> 8.x–10.x,
-and MS Windows95 and all later versions.
+and Microsoft Windows (95, 98, <acronym>NT</acronym>, 2000, <acronym>XP</acronym>, Vista,
+7, 8, 10).
 If you port the code to a new operating system, please send me a note 
 and any patches you required.
 </p>
@@ -881,7 +885,7 @@ contact me.
 <a name="Windows-Operating-System"></a>
 <div class="header">
 <p>
-Previous: <a href="#Compatability" accesskey="p" rel="previous">Compatability</a>, Up: <a href="#Compatability" accesskey="u" rel="up">Compatability</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Compatability" accesskey="p" rel="prev">Compatability</a>, Up: <a href="#Compatability" accesskey="u" rel="up">Compatability</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Compiling-NCO-for-Microsoft-Windows-OS"></a>
 <h4 class="subsection">1.3.1 Compiling <acronym>NCO</acronym> for Microsoft Windows <acronym>OS</acronym></h4>
@@ -955,7 +959,7 @@ The <acronym>NCO</acronym> operators should behave identically on Windows and
 <a name="Symbolic-Links"></a>
 <div class="header">
 <p>
-Next: <a href="#Libraries" accesskey="n" rel="next">Libraries</a>, Previous: <a href="#Compatability" accesskey="p" rel="previous">Compatability</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Libraries" accesskey="n" rel="next">Libraries</a>, Previous: <a href="#Compatability" accesskey="p" rel="prev">Compatability</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Symbolic-Links-1"></a>
 <h3 class="section">1.4 Symbolic Links</h3>
@@ -1009,7 +1013,7 @@ For example, <code>ncdivide</code> is a pseudonym for
 <a name="Libraries"></a>
 <div class="header">
 <p>
-Next: <a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support" accesskey="n" rel="next">netCDF2/3/4 and HDF4/5 Support</a>, Previous: <a href="#Symbolic-Links" accesskey="p" rel="previous">Symbolic Links</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support" accesskey="n" rel="next">netCDF2/3/4 and HDF4/5 Support</a>, Previous: <a href="#Symbolic-Links" accesskey="p" rel="prev">Symbolic Links</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Libraries-1"></a>
 <h3 class="section">1.5 Libraries</h3>
@@ -1045,7 +1049,7 @@ operators statically linked.
 <a name="netCDF2_002f3_002f4-and-HDF4_002f5-Support"></a>
 <div class="header">
 <p>
-Next: <a href="#Help-Requests-and-Bug-Reports" accesskey="n" rel="next">Help Requests and Bug Reports</a>, Previous: <a href="#Libraries" accesskey="p" rel="previous">Libraries</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Help-Requests-and-Bug-Reports" accesskey="n" rel="next">Help Requests and Bug Reports</a>, Previous: <a href="#Libraries" accesskey="p" rel="prev">Libraries</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="netCDF2_002f3_002f4-and-HDF4_002f5-Support-1"></a>
 <h3 class="section">1.6 netCDF2/3/4 and HDF4/5 Support</h3>
@@ -1243,9 +1247,10 @@ Conversion of <acronym>HDF4</acronym> to netCDF4 as above suffices when the data
 will only be processed by <acronym>NCO</acronym> and other netCDF4-aware tools.  
 </p>
 <a name="index-ncl_005fconvert2nc"></a>
+<a name="index-nc3tonc4"></a>
 <p>However, many tools are not fully netCDF4-aware, and so conversion to
 netCDF3 may be desirable.
-Obtaining a netCDF3 file from an <acronym>HDF4</acronym> is now easy:
+Obtaining any netCDF file from an <acronym>HDF4</acronym> is easy:
 </p><div class="example">
 <pre class="example">ncks -3 fl.hdf fl.nc      # HDF4->netCDF3 (NCO 4.4.0+, netCDF 4.3.1+)
 ncks -4 fl.hdf fl.nc      # HDF4->netCDF4 (NCO 4.4.0+, netCDF 4.3.1+)
@@ -1321,7 +1326,7 @@ operators.
 <a name="Help-Requests-and-Bug-Reports"></a>
 <div class="header">
 <p>
-Previous: <a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support" accesskey="p" rel="previous">netCDF2/3/4 and HDF4/5 Support</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support" accesskey="p" rel="prev">netCDF2/3/4 and HDF4/5 Support</a>, Up: <a href="#Introduction" accesskey="u" rel="up">Introduction</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Help-Requests-and-Bug-Reports-1"></a>
 <h3 class="section">1.7 Help Requests and Bug Reports</h3>
@@ -1446,7 +1451,7 @@ differences between these files and your own.
 <a name="Strategies"></a>
 <div class="header">
 <p>
-Next: <a href="#Common-features" accesskey="n" rel="next">Common features</a>, Previous: <a href="#Introduction" accesskey="p" rel="previous">Introduction</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Shared-features" accesskey="n" rel="next">Shared features</a>, Previous: <a href="#Introduction" accesskey="p" rel="prev">Introduction</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Operator-Strategies"></a>
 <h2 class="chapter">2 Operator Strategies</h2>
@@ -1478,7 +1483,7 @@ Next: <a href="#Common-features" accesskey="n" rel="next">Common features</a>, P
 <a name="Philosophy"></a>
 <div class="header">
 <p>
-Next: <a href="#Climate-Model-Paradigm" accesskey="n" rel="next">Climate Model Paradigm</a>, Previous: <a href="#Strategies" accesskey="p" rel="previous">Strategies</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Climate-Model-Paradigm" accesskey="n" rel="next">Climate Model Paradigm</a>, Previous: <a href="#Strategies" accesskey="p" rel="prev">Strategies</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Philosophy-1"></a>
 <h3 class="section">2.1 Philosophy</h3>
@@ -1522,7 +1527,7 @@ usage is detailed in <a href="#Memory-Requirements">Memory Requirements</a>.
 <a name="Climate-Model-Paradigm"></a>
 <div class="header">
 <p>
-Next: <a href="#Temporary-Output-Files" accesskey="n" rel="next">Temporary Output Files</a>, Previous: <a href="#Philosophy" accesskey="p" rel="previous">Philosophy</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Temporary-Output-Files" accesskey="n" rel="next">Temporary Output Files</a>, Previous: <a href="#Philosophy" accesskey="p" rel="prev">Philosophy</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Climate-Model-Paradigm-1"></a>
 <h3 class="section">2.2 Climate Model Paradigm</h3>
@@ -1544,7 +1549,7 @@ environment are as easy to visualize for the layman as the expert.
 <a name="Temporary-Output-Files"></a>
 <div class="header">
 <p>
-Next: <a href="#Appending-Variables" accesskey="n" rel="next">Appending Variables</a>, Previous: <a href="#Climate-Model-Paradigm" accesskey="p" rel="previous">Climate Model Paradigm</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Appending-Variables" accesskey="n" rel="next">Appending Variables</a>, Previous: <a href="#Climate-Model-Paradigm" accesskey="p" rel="prev">Climate Model Paradigm</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Temporary-Output-Files-1"></a>
 <h3 class="section">2.3 Temporary Output Files</h3>
@@ -1677,7 +1682,7 @@ interactive keyboard input.
 <a name="Appending-Variables"></a>
 <div class="header">
 <p>
-Next: <a href="#Simple-Arithmetic-and-Interpolation" accesskey="n" rel="next">Simple Arithmetic and Interpolation</a>, Previous: <a href="#Temporary-Output-Files" accesskey="p" rel="previous">Temporary Output Files</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Simple-Arithmetic-and-Interpolation" accesskey="n" rel="next">Simple Arithmetic and Interpolation</a>, Previous: <a href="#Temporary-Output-Files" accesskey="p" rel="prev">Temporary Output Files</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Appending-Variables-1"></a>
 <h3 class="section">2.4 Appending Variables</h3>
@@ -1734,7 +1739,7 @@ same name but different sizes.
 <a name="Simple-Arithmetic-and-Interpolation"></a>
 <div class="header">
 <p>
-Next: <a href="#Statistics-vs_002e-Concatenation" accesskey="n" rel="next">Statistics vs. Concatenation</a>, Previous: <a href="#Appending-Variables" accesskey="p" rel="previous">Appending Variables</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Statistics-vs_002e-Concatenation" accesskey="n" rel="next">Statistics vs. Concatenation</a>, Previous: <a href="#Appending-Variables" accesskey="p" rel="prev">Appending Variables</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Simple-Arithmetic-and-Interpolation-1"></a>
 <h3 class="section">2.5 Simple Arithmetic and Interpolation</h3>
@@ -1755,7 +1760,7 @@ operations from the command line.
 <a name="Statistics-vs_002e-Concatenation"></a>
 <div class="header">
 <p>
-Next: <a href="#Large-Numbers-of-Files" accesskey="n" rel="next">Large Numbers of Files</a>, Previous: <a href="#Simple-Arithmetic-and-Interpolation" accesskey="p" rel="previous">Simple Arithmetic and Interpolation</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Large-Numbers-of-Files" accesskey="n" rel="next">Large Numbers of Files</a>, Previous: <a href="#Simple-Arithmetic-and-Interpolation" accesskey="p" rel="prev">Simple Arithmetic and Interpolation</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Statistics-vs_002e-Concatenation-1"></a>
 <h3 class="section">2.6 Statistics vs. Concatenation</h3>
@@ -1793,7 +1798,7 @@ First, let’s describe the concatenators, then the statistics tools.
 <a name="Concatenation"></a>
 <div class="header">
 <p>
-Next: <a href="#Averaging" accesskey="n" rel="next">Averaging</a>, Previous: <a href="#Statistics-vs_002e-Concatenation" accesskey="p" rel="previous">Statistics vs. Concatenation</a>, Up: <a href="#Statistics-vs_002e-Concatenation" accesskey="u" rel="up">Statistics vs. Concatenation</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Averaging" accesskey="n" rel="next">Averaging</a>, Previous: <a href="#Statistics-vs_002e-Concatenation" accesskey="p" rel="prev">Statistics vs. Concatenation</a>, Up: <a href="#Statistics-vs_002e-Concatenation" accesskey="u" rel="up">Statistics vs. Concatenation</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Concatenators-ncrcat-and-ncecat"></a>
 <h4 class="subsection">2.6.1 Concatenators <code>ncrcat</code> and <code>ncecat</code></h4>
@@ -1876,7 +1881,7 @@ To conserve system memory, use <code>ncrcat</code> where possible.
 <a name="Averaging"></a>
 <div class="header">
 <p>
-Next: <a href="#Interpolating" accesskey="n" rel="next">Interpolating</a>, Previous: <a href="#Concatenation" accesskey="p" rel="previous">Concatenation</a>, Up: <a href="#Statistics-vs_002e-Concatenation" accesskey="u" rel="up">Statistics vs. Concatenation</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Interpolating" accesskey="n" rel="next">Interpolating</a>, Previous: <a href="#Concatenation" accesskey="p" rel="prev">Concatenation</a>, Up: <a href="#Statistics-vs_002e-Concatenation" accesskey="u" rel="up">Statistics vs. Concatenation</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Averagers-nces_002c-ncra_002c-and-ncwa"></a>
 <h4 class="subsection">2.6.2 Averagers <code>nces</code>, <code>ncra</code>, and <code>ncwa</code></h4>
@@ -1912,7 +1917,7 @@ description of <code>ncra</code>).
 <a name="Interpolating"></a>
 <div class="header">
 <p>
-Previous: <a href="#Averaging" accesskey="p" rel="previous">Averaging</a>, Up: <a href="#Statistics-vs_002e-Concatenation" accesskey="u" rel="up">Statistics vs. Concatenation</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Averaging" accesskey="p" rel="prev">Averaging</a>, Up: <a href="#Statistics-vs_002e-Concatenation" accesskey="u" rel="up">Statistics vs. Concatenation</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Interpolator-ncflint"></a>
 <h4 class="subsection">2.6.3 Interpolator <code>ncflint</code></h4>
@@ -1930,7 +1935,7 @@ units.
 <a name="Large-Numbers-of-Files"></a>
 <div class="header">
 <p>
-Next: <a href="#Large-Datasets" accesskey="n" rel="next">Large Datasets</a>, Previous: <a href="#Statistics-vs_002e-Concatenation" accesskey="p" rel="previous">Statistics vs. Concatenation</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Large-Datasets" accesskey="n" rel="next">Large Datasets</a>, Previous: <a href="#Statistics-vs_002e-Concatenation" accesskey="p" rel="prev">Statistics vs. Concatenation</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Large-Numbers-of-Files-1"></a>
 <h3 class="section">2.7 Large Numbers of Files</h3>
@@ -2075,7 +2080,7 @@ date.
 <a name="Large-Datasets"></a>
 <div class="header">
 <p>
-Next: <a href="#Memory-Requirements" accesskey="n" rel="next">Memory Requirements</a>, Previous: <a href="#Large-Numbers-of-Files" accesskey="p" rel="previous">Large Numbers of Files</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Memory-Requirements" accesskey="n" rel="next">Memory Requirements</a>, Previous: <a href="#Large-Numbers-of-Files" accesskey="p" rel="prev">Large Numbers of Files</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Large-Datasets-1"></a>
 <h3 class="section">2.8 Large Datasets</h3>
@@ -2157,7 +2162,7 @@ multi-file <acronym>NCO</acronym> operators consume is given in
 <a name="Memory-Requirements"></a>
 <div class="header">
 <p>
-Next: <a href="#Performance" accesskey="n" rel="next">Performance</a>, Previous: <a href="#Large-Datasets" accesskey="p" rel="previous">Large Datasets</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Performance" accesskey="n" rel="next">Performance</a>, Previous: <a href="#Large-Datasets" accesskey="p" rel="prev">Large Datasets</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Memory-Requirements-1"></a>
 <h3 class="section">2.9 Memory Requirements</h3>
@@ -2203,7 +2208,7 @@ the exception of <code>ncap2</code>.
 <a name="Single-and-Multi_002dfile-Operators"></a>
 <div class="header">
 <p>
-Next: <a href="#Memory-for-ncap2" accesskey="n" rel="next">Memory for ncap2</a>, Previous: <a href="#Memory-Requirements" accesskey="p" rel="previous">Memory Requirements</a>, Up: <a href="#Memory-Requirements" accesskey="u" rel="up">Memory Requirements</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Memory-for-ncap2" accesskey="n" rel="next">Memory for ncap2</a>, Previous: <a href="#Memory-Requirements" accesskey="p" rel="prev">Memory Requirements</a>, Up: <a href="#Memory-Requirements" accesskey="u" rel="up">Memory Requirements</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Single-and-Multi_002dfile-Operators-1"></a>
 <h4 class="subsection">2.9.1 Single and Multi-file Operators</h4>
@@ -2307,7 +2312,7 @@ number of threads.
 <a name="Memory-for-ncap2"></a>
 <div class="header">
 <p>
-Previous: <a href="#Single-and-Multi_002dfile-Operators" accesskey="p" rel="previous">Single and Multi-file Operators</a>, Up: <a href="#Memory-Requirements" accesskey="u" rel="up">Memory Requirements</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Single-and-Multi_002dfile-Operators" accesskey="p" rel="prev">Single and Multi-file Operators</a>, Up: <a href="#Memory-Requirements" accesskey="u" rel="up">Memory Requirements</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Memory-for-ncap2-1"></a>
 <h4 class="subsection">2.9.2 Memory for <code>ncap2</code></h4>
@@ -2348,7 +2353,7 @@ interested in receiving a detailed bug report.
 <a name="Performance"></a>
 <div class="header">
 <p>
-Previous: <a href="#Memory-Requirements" accesskey="p" rel="previous">Memory Requirements</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Memory-Requirements" accesskey="p" rel="prev">Memory Requirements</a>, Up: <a href="#Strategies" accesskey="u" rel="up">Strategies</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Performance-1"></a>
 <h3 class="section">2.10 Performance</h3>
@@ -2414,13 +2419,13 @@ been reduced or eliminated.
 </li></ol>
 
 <a name="ftr"></a> <!-- http://nco.sf.net/nco.html#ftr --><hr>
-<a name="Common-features"></a>
+<a name="Shared-features"></a>
 <div class="header">
 <p>
-Next: <a href="#Operator-Reference-Manual" accesskey="n" rel="next">Operator Reference Manual</a>, Previous: <a href="#Strategies" accesskey="p" rel="previous">Strategies</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Reference-Manual" accesskey="n" rel="next">Reference Manual</a>, Previous: <a href="#Strategies" accesskey="p" rel="prev">Strategies</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
-<a name="NCO-Features"></a>
-<h2 class="chapter">3 NCO Features</h2>
+<a name="Shared-Features"></a>
+<h2 class="chapter">3 Shared Features</h2>
 
 <p>Many features have been implemented in more than one operator and are
 described here for brevity. 
@@ -2485,6 +2490,8 @@ feature is automatic and cannot be controlled by the user.
 </td></tr>
 <tr><td align="left" valign="top">• <a href="#Chunking">Chunking</a>:</td><td>  </td><td align="left" valign="top">
 </td></tr>
+<tr><td align="left" valign="top">• <a href="#Compression">Compression</a>:</td><td>  </td><td align="left" valign="top">
+</td></tr>
 <tr><td align="left" valign="top">• <a href="#Deflation">Deflation</a>:</td><td>  </td><td align="left" valign="top">
 </td></tr>
 <tr><td align="left" valign="top">• <a href="#MD5-digests">MD5 digests</a>:</td><td>  </td><td align="left" valign="top">
@@ -2517,7 +2524,7 @@ feature is automatic and cannot be controlled by the user.
 <a name="Internationalization"></a>
 <div class="header">
 <p>
-Next: <a href="#Metadata-Optimization" accesskey="n" rel="next">Metadata Optimization</a>, Previous: <a href="#Common-features" accesskey="p" rel="previous">Common features</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Metadata-Optimization" accesskey="n" rel="next">Metadata Optimization</a>, Previous: <a href="#Shared-features" accesskey="p" rel="prev">Shared features</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Internationalization-1"></a>
 <h3 class="section">3.1 Internationalization</h3>
@@ -2540,7 +2547,7 @@ favorite languages.
 <a name="Metadata-Optimization"></a>
 <div class="header">
 <p>
-Next: <a href="#OpenMP-Threading" accesskey="n" rel="next">OpenMP Threading</a>, Previous: <a href="#Internationalization" accesskey="p" rel="previous">Internationalization</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#OpenMP-Threading" accesskey="n" rel="next">OpenMP Threading</a>, Previous: <a href="#Internationalization" accesskey="p" rel="prev">Internationalization</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Metadata-Optimization-1"></a>
 <h3 class="section">3.2 Metadata Optimization</h3>
@@ -2583,7 +2590,7 @@ library (see <a href="#File-Formats-and-Conversion">File Formats and Conversion<
 <a name="OpenMP-Threading"></a>
 <div class="header">
 <p>
-Next: <a href="#Command-Line-Options" accesskey="n" rel="next">Command Line Options</a>, Previous: <a href="#Metadata-Optimization" accesskey="p" rel="previous">Metadata Optimization</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Command-Line-Options" accesskey="n" rel="next">Command Line Options</a>, Previous: <a href="#Metadata-Optimization" accesskey="p" rel="prev">Metadata Optimization</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="OpenMP-Threading-1"></a>
 <h3 class="section">3.3 OpenMP Threading</h3>
@@ -2694,7 +2701,7 @@ This information is also useful for benchmarking.
 <a name="Command-Line-Options"></a>
 <div class="header">
 <p>
-Next: <a href="#Specifying-Input-Files" accesskey="n" rel="next">Specifying Input Files</a>, Previous: <a href="#OpenMP-Threading" accesskey="p" rel="previous">OpenMP Threading</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Specifying-Input-Files" accesskey="n" rel="next">Specifying Input Files</a>, Previous: <a href="#OpenMP-Threading" accesskey="p" rel="prev">OpenMP Threading</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Command-Line-Options-1"></a>
 <h3 class="section">3.4 Command Line Options</h3>
@@ -2799,7 +2806,7 @@ name that most suits their taste.
 <a name="Specifying-Input-Files"></a>
 <div class="header">
 <p>
-Next: <a href="#Specifying-Output-Files" accesskey="n" rel="next">Specifying Output Files</a>, Previous: <a href="#Command-Line-Options" accesskey="p" rel="previous">Command Line Options</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Specifying-Output-Files" accesskey="n" rel="next">Specifying Output Files</a>, Previous: <a href="#Command-Line-Options" accesskey="p" rel="prev">Command Line Options</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Specifying-Input-Files-1"></a>
 <h3 class="section">3.5 Specifying Input Files</h3>
@@ -2953,7 +2960,7 @@ automatically generate, in order, the filenames <samp>85_12.nc</samp>,
 <a name="Specifying-Output-Files"></a>
 <div class="header">
 <p>
-Next: <a href="#Remote-storage" accesskey="n" rel="next">Remote storage</a>, Previous: <a href="#Specifying-Input-Files" accesskey="p" rel="previous">Specifying Input Files</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Remote-storage" accesskey="n" rel="next">Remote storage</a>, Previous: <a href="#Specifying-Input-Files" accesskey="p" rel="prev">Specifying Input Files</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Specifying-Output-Files-1"></a>
 <h3 class="section">3.6 Specifying Output Files</h3>
@@ -2993,7 +3000,7 @@ Second, specification of a long list of input files may be difficult
 (see <a href="#Large-Numbers-of-Files">Large Numbers of Files</a>).
 Making the input file list the final argument to an operator facilitates 
 using <code>xargs</code> for this purpose.
-Some alternatives to <code>xargs</code> are very ugly and undesirable.
+Some alternatives to <code>xargs</code> are heinous and undesirable.
 Finally, many users are more comfortable specifying output files 
 with ‘<samp>-o <var>fl_out</var></samp>’ near the beginning of an argument list.
 <a name="index-compilers"></a>
@@ -3009,7 +3016,7 @@ precedence.
 <a name="Remote-storage"></a>
 <div class="header">
 <p>
-Next: <a href="#Retaining-Retrieved-Files" accesskey="n" rel="next">Retaining Retrieved Files</a>, Previous: <a href="#Specifying-Output-Files" accesskey="p" rel="previous">Specifying Output Files</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Retaining-Retrieved-Files" accesskey="n" rel="next">Retaining Retrieved Files</a>, Previous: <a href="#Specifying-Output-Files" accesskey="p" rel="prev">Specifying Output Files</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Accessing-Remote-Files"></a>
 <h3 class="section">3.7 Accessing Remote Files</h3>
@@ -3189,7 +3196,7 @@ syntactically more clear.
 <a name="OPeNDAP"></a>
 <div class="header">
 <p>
-Previous: <a href="#Remote-storage" accesskey="p" rel="previous">Remote storage</a>, Up: <a href="#Remote-storage" accesskey="u" rel="up">Remote storage</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Remote-storage" accesskey="p" rel="prev">Remote storage</a>, Up: <a href="#Remote-storage" accesskey="u" rel="up">Remote storage</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="OPeNDAP-1"></a>
 <h4 class="subsection">3.7.1 <acronym>OPeNDAP</acronym></h4>
@@ -3347,7 +3354,7 @@ which to test <acronym>NCO</acronym> are welcome.
 <a name="Retaining-Retrieved-Files"></a>
 <div class="header">
 <p>
-Next: <a href="#File-Formats-and-Conversion" accesskey="n" rel="next">File Formats and Conversion</a>, Previous: <a href="#Remote-storage" accesskey="p" rel="previous">Remote storage</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#File-Formats-and-Conversion" accesskey="n" rel="next">File Formats and Conversion</a>, Previous: <a href="#Remote-storage" accesskey="p" rel="prev">Remote storage</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Retaining-Retrieved-Files-1"></a>
 <h3 class="section">3.8 Retaining Retrieved Files</h3>
@@ -3423,7 +3430,7 @@ when your other preferred methods are not available locally.
 <a name="File-Formats-and-Conversion"></a>
 <div class="header">
 <p>
-Next: <a href="#Large-File-Support" accesskey="n" rel="next">Large File Support</a>, Previous: <a href="#Retaining-Retrieved-Files" accesskey="p" rel="previous">Retaining Retrieved Files</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Large-File-Support" accesskey="n" rel="next">Large File Support</a>, Previous: <a href="#Retaining-Retrieved-Files" accesskey="p" rel="prev">Retaining Retrieved Files</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="File-Formats-and-Conversion-1"></a>
 <h3 class="section">3.9 File Formats and Conversion</h3>
@@ -3450,7 +3457,7 @@ Next: <a href="#Large-File-Support" accesskey="n" rel="next">Large File Support<
 <a name="index-_002d_002dfile_005fformat"></a>
 <a name="index-_002d_002d64bit"></a>
 <table class="cartouche" border="1"><tr><td>
-<p>Availability: <code>ncap2</code>, <code>ncbo</code>, <code>nces</code>,
+<p>Availability: <code>ncap2</code>, <code>nces</code>,
 <code>ncecat</code>, <code>ncflint</code>, <code>ncks</code>, <code>ncpdq</code>,
 <code>ncra</code>, <code>ncrcat</code>, <code>ncwa</code><br>
 Short options: ‘<samp>-3</samp>’, ‘<samp>-4</samp>’, ‘<samp>-6</samp>’, ‘<samp>-7</samp>’<br>
@@ -3484,7 +3491,7 @@ format as the input netCDF file.)
 <a name="File-Formats"></a>
 <div class="header">
 <p>
-Next: <a href="#Determining-File-Format" accesskey="n" rel="next">Determining File Format</a>, Previous: <a href="#File-Formats-and-Conversion" accesskey="p" rel="previous">File Formats and Conversion</a>, Up: <a href="#File-Formats-and-Conversion" accesskey="u" rel="up">File Formats and Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Determining-File-Format" accesskey="n" rel="next">Determining File Format</a>, Previous: <a href="#File-Formats-and-Conversion" accesskey="p" rel="prev">File Formats and Conversion</a>, Up: <a href="#File-Formats-and-Conversion" accesskey="u" rel="up">File Formats and Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="File-Formats-1"></a>
 <h4 class="subsection">3.9.1 File Formats</h4>
@@ -3495,7 +3502,8 @@ netCDF2 and netCDF3.
 As of 2005, nearly all netCDF datasets were in <code>CLASSIC</code> format. 
 The <code>64BIT</code> format was added in Fall, 2004.
 As of 2010, many netCDF datasets were in <code>64BIT</code> format. 
-As of 2013, many netCDF datasets are in <code>NETCDF4_CLASSIC</code> format. 
+As of 2013, an increasing number of netCDF datasets were in
+<code>NETCDF4_CLASSIC</code> format.
 </p>
 <p>The <code>NETCDF4</code> format uses <acronym>HDF5</acronym> as the file storage layer. 
 The files are (usually) created, accessed, and manipulated using the 
@@ -3556,7 +3564,7 @@ that all of the file contents are readable with the netCDF3 library.
 <a name="Determining-File-Format"></a>
 <div class="header">
 <p>
-Next: <a href="#File-Conversion" accesskey="n" rel="next">File Conversion</a>, Previous: <a href="#File-Formats" accesskey="p" rel="previous">File Formats</a>, Up: <a href="#File-Formats-and-Conversion" accesskey="u" rel="up">File Formats and Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#File-Conversion" accesskey="n" rel="next">File Conversion</a>, Previous: <a href="#File-Formats" accesskey="p" rel="prev">File Formats</a>, Up: <a href="#File-Formats-and-Conversion" accesskey="u" rel="up">File Formats and Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Determining-File-Format-1"></a>
 <h4 class="subsection">3.9.2 Determining File Format</h4>
@@ -3665,7 +3673,7 @@ Values of ‘<samp>C D F 001</samp>’ and ‘<samp>C D F 002</samp>
 <a name="File-Conversion"></a>
 <div class="header">
 <p>
-Next: <a href="#Autoconversion" accesskey="n" rel="next">Autoconversion</a>, Previous: <a href="#Determining-File-Format" accesskey="p" rel="previous">Determining File Format</a>, Up: <a href="#File-Formats-and-Conversion" accesskey="u" rel="up">File Formats and Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Autoconversion" accesskey="n" rel="next">Autoconversion</a>, Previous: <a href="#Determining-File-Format" accesskey="p" rel="prev">Determining File Format</a>, Up: <a href="#File-Formats-and-Conversion" accesskey="u" rel="up">File Formats and Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="File-Conversion-1"></a>
 <h4 class="subsection">3.9.3 File Conversion</h4>
@@ -3702,7 +3710,7 @@ Producing (netCDF3) <code>CLASSIC</code> or <code>64BIT</code> files from
 <a name="Autoconversion"></a>
 <div class="header">
 <p>
-Previous: <a href="#File-Conversion" accesskey="p" rel="previous">File Conversion</a>, Up: <a href="#File-Formats-and-Conversion" accesskey="u" rel="up">File Formats and Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#File-Conversion" accesskey="p" rel="prev">File Conversion</a>, Up: <a href="#File-Formats-and-Conversion" accesskey="u" rel="up">File Formats and Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Autoconversion-1"></a>
 <h4 class="subsection">3.9.4 Autoconversion</h4>
@@ -3800,7 +3808,7 @@ If this feature would interest you, please let us know.
 <a name="Large-File-Support"></a>
 <div class="header">
 <p>
-Next: <a href="#Subsetting-Files" accesskey="n" rel="next">Subsetting Files</a>, Previous: <a href="#File-Formats-and-Conversion" accesskey="p" rel="previous">File Formats and Conversion</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Subsetting-Files" accesskey="n" rel="next">Subsetting Files</a>, Previous: <a href="#File-Formats-and-Conversion" accesskey="p" rel="prev">File Formats and Conversion</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Large-File-Support-1"></a>
 <h3 class="section">3.10 Large File Support</h3>
@@ -3849,7 +3857,7 @@ build time.
 <a name="Subsetting-Files"></a>
 <div class="header">
 <p>
-Next: <a href="#Subsetting-Coordinate-Variables" accesskey="n" rel="next">Subsetting Coordinate Variables</a>, Previous: <a href="#Large-File-Support" accesskey="p" rel="previous">Large File Support</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Subsetting-Coordinate-Variables" accesskey="n" rel="next">Subsetting Coordinate Variables</a>, Previous: <a href="#Large-File-Support" accesskey="p" rel="prev">Large File Support</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Subsetting-Files-1"></a>
 <h3 class="section">3.11 Subsetting Files</h3>
@@ -4243,7 +4251,7 @@ filename expansion (globbing).
 <a name="Subsetting-Coordinate-Variables"></a>
 <div class="header">
 <p>
-Next: <a href="#Group-Path-Editing" accesskey="n" rel="next">Group Path Editing</a>, Previous: <a href="#Subsetting-Files" accesskey="p" rel="previous">Subsetting Files</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Group-Path-Editing" accesskey="n" rel="next">Group Path Editing</a>, Previous: <a href="#Subsetting-Files" accesskey="p" rel="prev">Subsetting Files</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Subsetting-Coordinate-Variables-1"></a>
 <h3 class="section">3.12 Subsetting Coordinate Variables</h3>
@@ -4292,7 +4300,7 @@ convention described in <a href="#CF-Conventions">CF Conventions</a>.
 <a name="Group-Path-Editing"></a>
 <div class="header">
 <p>
-Next: <a href="#C-and-Fortran-Index-Conventions" accesskey="n" rel="next">C and Fortran Index Conventions</a>, Previous: <a href="#Subsetting-Coordinate-Variables" accesskey="p" rel="previous">Subsetting Coordinate Variables</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#C-and-Fortran-Index-Conventions" accesskey="n" rel="next">C and Fortran Index Conventions</a>, Previous: <a href="#Subsetting-Coordinate-Variables" accesskey="p" rel="prev">Subsetting Coordinate Variables</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Group-Path-Editing-1"></a>
 <h3 class="section">3.13 Group Path Editing</h3>
@@ -4363,7 +4371,7 @@ positive-definite.
 <a name="Flattening-Groups"></a>
 <div class="header">
 <p>
-Next: <a href="#Moving-Groups" accesskey="n" rel="next">Moving Groups</a>, Previous: <a href="#Group-Path-Editing" accesskey="p" rel="previous">Group Path Editing</a>, Up: <a href="#Group-Path-Editing" accesskey="u" rel="up">Group Path Editing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Moving-Groups" accesskey="n" rel="next">Moving Groups</a>, Previous: <a href="#Group-Path-Editing" accesskey="p" rel="prev">Group Path Editing</a>, Up: <a href="#Group-Path-Editing" accesskey="u" rel="up">Group Path Editing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Deletion_002c-Truncation_002c-and-Flattening-of-Groups"></a>
 <h4 class="subsection">3.13.1 Deletion, Truncation, and Flattening of Groups</h4>
@@ -4481,7 +4489,7 @@ ncks -G g1:-1 -g g1/g2 -v v1 # /g1/g2/v1 -> /g1/g1/v1
 <a name="Moving-Groups"></a>
 <div class="header">
 <p>
-Next: <a href="#Dismembering-Files" accesskey="n" rel="next">Dismembering Files</a>, Previous: <a href="#Flattening-Groups" accesskey="p" rel="previous">Flattening Groups</a>, Up: <a href="#Group-Path-Editing" accesskey="u" rel="up">Group Path Editing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Dismembering-Files" accesskey="n" rel="next">Dismembering Files</a>, Previous: <a href="#Flattening-Groups" accesskey="p" rel="prev">Flattening Groups</a>, Up: <a href="#Group-Path-Editing" accesskey="u" rel="up">Group Path Editing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Moving-Groups-1"></a>
 <h4 class="subsection">3.13.2 Moving Groups</h4>
@@ -4537,7 +4545,7 @@ all other groups (e.g., <code>ecmwf</code>, <code>giss</code>).
 <a name="Dismembering-Files"></a>
 <div class="header">
 <p>
-Next: <a href="#Checking-CF_002dcompliance" accesskey="n" rel="next">Checking CF-compliance</a>, Previous: <a href="#Moving-Groups" accesskey="p" rel="previous">Moving Groups</a>, Up: <a href="#Group-Path-Editing" accesskey="u" rel="up">Group Path Editing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Checking-CF_002dcompliance" accesskey="n" rel="next">Checking CF-compliance</a>, Previous: <a href="#Moving-Groups" accesskey="p" rel="prev">Moving Groups</a>, Up: <a href="#Group-Path-Editing" accesskey="u" rel="up">Group Path Editing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Dismembering-Files-1"></a>
 <h4 class="subsection">3.13.3 Dismembering Files</h4>
@@ -4659,7 +4667,7 @@ is netCDF3.
 <a name="Checking-CF_002dcompliance"></a>
 <div class="header">
 <p>
-Previous: <a href="#Dismembering-Files" accesskey="p" rel="previous">Dismembering Files</a>, Up: <a href="#Group-Path-Editing" accesskey="u" rel="up">Group Path Editing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Dismembering-Files" accesskey="p" rel="prev">Dismembering Files</a>, Up: <a href="#Group-Path-Editing" accesskey="u" rel="up">Group Path Editing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Checking-CF_002dcompliance-1"></a>
 <h4 class="subsection">3.13.4 Checking CF-compliance</h4>
@@ -4718,7 +4726,7 @@ Example compliance checks of common <acronym>NASA</acronym> datasets are at
 Our long-term goal is to enrich the hierarchical data model with the 
 expressivity and syntactic power of <acronym>CF</acronym> conventions.
 </p>
-<p><acronym>NASA</acronym> asked the <acronym>DIWG</acronym> to prepare a one-page summary
+<a name="daac"></a> <!-- http://nco.sf.net/nco.html#daac --><p><acronym>NASA</acronym> asked the <acronym>DIWG</acronym> to prepare a one-page summary
 of the procedure necessary to check <acronym>HDF</acronym> files for
 <acronym>CF</acronym>-compliance: 
 </p><div class="example">
@@ -4829,7 +4837,7 @@ EOF
 <a name="C-and-Fortran-Index-Conventions"></a>
 <div class="header">
 <p>
-Next: <a href="#Hyperslabs" accesskey="n" rel="next">Hyperslabs</a>, Previous: <a href="#Group-Path-Editing" accesskey="p" rel="previous">Group Path Editing</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Hyperslabs" accesskey="n" rel="next">Hyperslabs</a>, Previous: <a href="#Group-Path-Editing" accesskey="p" rel="prev">Group Path Editing</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="C-and-Fortran-Index-conventions"></a>
 <h3 class="section">3.14 C and Fortran Index conventions</h3>
@@ -4895,7 +4903,7 @@ lon(1)=0 lev(1)=100 lat(1)=-90 three_dmn_var(1)=0
 <a name="Hyperslabs"></a>
 <div class="header">
 <p>
-Next: <a href="#Stride" accesskey="n" rel="next">Stride</a>, Previous: <a href="#C-and-Fortran-Index-Conventions" accesskey="p" rel="previous">C and Fortran Index Conventions</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Stride" accesskey="n" rel="next">Stride</a>, Previous: <a href="#C-and-Fortran-Index-Conventions" accesskey="p" rel="prev">C and Fortran Index Conventions</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Hyperslabs-1"></a>
 <h3 class="section">3.15 Hyperslabs</h3>
@@ -5059,7 +5067,7 @@ This option may be specified more than once in a single command
 <a name="Stride"></a>
 <div class="header">
 <p>
-Next: <a href="#Record-Appending" accesskey="n" rel="next">Record Appending</a>, Previous: <a href="#Hyperslabs" accesskey="p" rel="previous">Hyperslabs</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Record-Appending" accesskey="n" rel="next">Record Appending</a>, Previous: <a href="#Hyperslabs" accesskey="p" rel="prev">Hyperslabs</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Stride-1"></a>
 <h3 class="section">3.16 Stride</h3>
@@ -5152,7 +5160,7 @@ ncrcat -F -d time,3,,12 85.nc 86.nc 87.nc 88.nc 89.nc 8503_8903.nc
 <a name="Record-Appending"></a>
 <div class="header">
 <p>
-Next: <a href="#Subcycle" accesskey="n" rel="next">Subcycle</a>, Previous: <a href="#Stride" accesskey="p" rel="previous">Stride</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Subcycle" accesskey="n" rel="next">Subcycle</a>, Previous: <a href="#Stride" accesskey="p" rel="prev">Stride</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Record-Appending-1"></a>
 <h3 class="section">3.17 Record Appending</h3>
@@ -5231,7 +5239,7 @@ We recommend users try to understand the safety trade-offs involved.
 <a name="Subcycle"></a>
 <div class="header">
 <p>
-Next: <a href="#Multislabs" accesskey="n" rel="next">Multislabs</a>, Previous: <a href="#Record-Appending" accesskey="p" rel="previous">Record Appending</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Multislabs" accesskey="n" rel="next">Multislabs</a>, Previous: <a href="#Record-Appending" accesskey="p" rel="prev">Record Appending</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Subcycle-1"></a>
 <h3 class="section">3.18 Subcycle</h3>
@@ -5335,7 +5343,7 @@ records.
 <a name="Multislabs"></a>
 <div class="header">
 <p>
-Next: <a href="#Wrapped-Coordinates" accesskey="n" rel="next">Wrapped Coordinates</a>, Previous: <a href="#Subcycle" accesskey="p" rel="previous">Subcycle</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Wrapped-Coordinates" accesskey="n" rel="next">Wrapped Coordinates</a>, Previous: <a href="#Subcycle" accesskey="p" rel="prev">Subcycle</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Multislabs-1"></a>
 <h3 class="section">3.19 Multislabs</h3>
@@ -5526,7 +5534,7 @@ hyperslabs makes this clearer.
 <a name="Wrapped-Coordinates"></a>
 <div class="header">
 <p>
-Next: <a href="#Auxiliary-Coordinates" accesskey="n" rel="next">Auxiliary Coordinates</a>, Previous: <a href="#Multislabs" accesskey="p" rel="previous">Multislabs</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Auxiliary-Coordinates" accesskey="n" rel="next">Auxiliary Coordinates</a>, Previous: <a href="#Multislabs" accesskey="p" rel="prev">Multislabs</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Wrapped-Coordinates-1"></a>
 <h3 class="section">3.20 Wrapped Coordinates</h3>
@@ -5604,7 +5612,7 @@ values (see <a href="#Hyperslabs">Hyperslabs</a>).
 <a name="Auxiliary-Coordinates"></a>
 <div class="header">
 <p>
-Next: <a href="#UDUnits-Support" accesskey="n" rel="next">UDUnits Support</a>, Previous: <a href="#Wrapped-Coordinates" accesskey="p" rel="previous">Wrapped Coordinates</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#UDUnits-Support" accesskey="n" rel="next">UDUnits Support</a>, Previous: <a href="#Wrapped-Coordinates" accesskey="p" rel="prev">Wrapped Coordinates</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Auxiliary-Coordinates-1"></a>
 <h3 class="section">3.21 Auxiliary Coordinates</h3>
@@ -5750,7 +5758,7 @@ to avoid confusion.
 <a name="UDUnits-Support"></a>
 <div class="header">
 <p>
-Next: <a href="#Rebasing-Time-Coordinate" accesskey="n" rel="next">Rebasing Time Coordinate</a>, Previous: <a href="#Auxiliary-Coordinates" accesskey="p" rel="previous">Auxiliary Coordinates</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Rebasing-Time-Coordinate" accesskey="n" rel="next">Rebasing Time Coordinate</a>, Previous: <a href="#Auxiliary-Coordinates" accesskey="p" rel="prev">Auxiliary Coordinates</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="UDUnits-Support-1"></a>
 <h3 class="section">3.22 UDUnits Support</h3>
@@ -5974,7 +5982,7 @@ esoteric units (e.g., furlongs, pounds per square inch, fortnights).
 <a name="Rebasing-Time-Coordinate"></a>
 <div class="header">
 <p>
-Next: <a href="#Multiple-Record-Dimensions" accesskey="n" rel="next">Multiple Record Dimensions</a>, Previous: <a href="#UDUnits-Support" accesskey="p" rel="previous">UDUnits Support</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Multiple-Record-Dimensions" accesskey="n" rel="next">Multiple Record Dimensions</a>, Previous: <a href="#UDUnits-Support" accesskey="p" rel="prev">UDUnits Support</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Rebasing-Time-Coordinate-1"></a>
 <h3 class="section">3.23 Rebasing Time Coordinate</h3>
@@ -6040,7 +6048,7 @@ but also any bounds associated with the record coordinate (e.g.,
 <a name="Multiple-Record-Dimensions"></a>
 <div class="header">
 <p>
-Next: <a href="#Missing-Values" accesskey="n" rel="next">Missing Values</a>, Previous: <a href="#Rebasing-Time-Coordinate" accesskey="p" rel="previous">Rebasing Time Coordinate</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Missing-Values" accesskey="n" rel="next">Missing Values</a>, Previous: <a href="#Rebasing-Time-Coordinate" accesskey="p" rel="prev">Rebasing Time Coordinate</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Multiple-Record-Dimensions-1"></a>
 <h3 class="section">3.24 Multiple Record Dimensions</h3>
@@ -6101,7 +6109,7 @@ Use ‘<samp>--mrd</samp>’ to override this.
 <a name="Missing-Values"></a>
 <div class="header">
 <p>
-Next: <a href="#Chunking" accesskey="n" rel="next">Chunking</a>, Previous: <a href="#Multiple-Record-Dimensions" accesskey="p" rel="previous">Multiple Record Dimensions</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Chunking" accesskey="n" rel="next">Chunking</a>, Previous: <a href="#Multiple-Record-Dimensions" accesskey="p" rel="prev">Multiple Record Dimensions</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Missing-values"></a>
 <h3 class="section">3.25 Missing values</h3>
@@ -6259,7 +6267,7 @@ important information from being lost.
 <a name="Chunking"></a>
 <div class="header">
 <p>
-Next: <a href="#Deflation" accesskey="n" rel="next">Deflation</a>, Previous: <a href="#Missing-Values" accesskey="p" rel="previous">Missing Values</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Compression" accesskey="n" rel="next">Compression</a>, Previous: <a href="#Missing-Values" accesskey="p" rel="prev">Missing Values</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Chunking-1"></a>
 <h3 class="section">3.26 Chunking</h3>
@@ -6413,6 +6421,18 @@ Alternate invocation: none<br>
 <var>cnk_plc</var> key values: ‘<samp>xst</samp>’, ‘<samp>cnk_xst</samp>’, ‘<samp>plc_xst</samp>’<br>
 Mnemonic: E<em>X</em>i<em>ST</em>ing chunked variables<br>
 </p></dd>
+<dt><em>Chunk Variables with <acronym>NCO</acronym> recommendations</em></dt>
+<dd><p>Definition: Chunk all variables according to <acronym>NCO</acronym> best
+practices. 
+This is a virtual option that ensures the chunking policy is (in the 
+subjective opinion of the authors) the best policy for typical usage.
+As of <acronym>NCO</acronym> version 4.4.8 (February, 2015), this virtual policy
+implements ‘<samp>map_rew</samp>’ for 3-D variables and ‘<samp>map_lfp</samp>’ for all
+other variables.<br>
+Alternate invocation: none<br>
+<var>cnk_plc</var> key values: ‘<samp>nco</samp>’, ‘<samp>cnk_nco</samp>’, ‘<samp>plc_nco</samp>’<br>
+Mnemonic: <em>N</em>et<em>C</em>DF<em>O</em>perator<br>
+</p></dd>
 <dt><em>Unchunking</em></dt>
 <dd><p>Definition: Unchunk all variables possible. 
 The <acronym>HDF5</acronym> storge layer requires that record variables (i.e.,
@@ -6544,6 +6564,18 @@ default chunking values.<br>
 <var>cnk_map</var> key values: ‘<samp>nc4</samp>’, ‘<samp>cnk_nc4</samp>’, ‘<samp>map_nc4</samp>’<br>
 Mnemonic: <em>N</em>et<em>C</em>DF<em>4</em><br>
 </p></dd>
+<dt><em>Chunksizes use <acronym>NCO</acronym> recommendations</em></dt>
+<dd><p>Definition: Chunksizes are determined by the currently recommended
+<acronym>NCO</acronym> map.
+This is a virtual option that ensures the chunking map is (in the 
+subjective opinion of the authors) the best map for typical usage.
+As of <acronym>NCO</acronym> version 4.4.8 (February, 2015), this virtual map
+calls ‘<samp>map_rew</samp>’ for 3-D variables and ‘<samp>map_lfp</samp>’ for all
+others.<br>  
+<var>cnk_map</var> key values: ‘<samp>nco</samp>’, ‘<samp>cnk_nco</samp>’, ‘<samp>map_nco</samp>’<br>
+Mnemonic: <em>N</em>et<em>C</em>DF<em>O</em>perator<br>
+</p>
+</dd>
 </dl>
 <p>It is possible to combine the above chunking map algorithms with
 user-specified per-dimension (though not per-variable) chunksizes that 
@@ -6617,7 +6649,7 @@ ncwa -O -4 -D 4 -a time --cnk_plc=g2d --cnk_map=rd1 --cnk_dmn lat,32 \
 </pre></div>
 
 <a name="r1d"></a> <!-- http://nco.sf.net/nco.html#r1d --><p>Chunking policy ‘<samp>r1d</samp>’ changes the chunksize of 1-D record variables
-(and no other variables) to the specified (with ‘<samp>--cnk_dmn</samp>’)
+(and no other variables) to that specified (with ‘<samp>--cnk_dmn</samp>’)
 chunksize. 
 Any specified record dimension chunksizes will be applied to 1-D
 record variables only. 
@@ -6646,6 +6678,661 @@ Do not be surprised to learn that files created without any explicit
 instructions to activate chunking nevertheless contain chunked
 variables. 
 </p>
+<a name="ppc"></a> <!-- http://nco.sf.net/nco.html#ppc -->
+<a name="PPC"></a> <!-- http://nco.sf.net/nco.html#PPC -->
+<a name="compression"></a> <!-- http://nco.sf.net/nco.html#compression -->
+<a name="cmp"></a> <!-- http://nco.sf.net/nco.html#cmp -->
+<a name="nsd"></a> <!-- http://nco.sf.net/nco.html#nsd -->
+<a name="NSD"></a> <!-- http://nco.sf.net/nco.html#NSD -->
+<a name="dsd"></a> <!-- http://nco.sf.net/nco.html#dsd -->
+<a name="DSD"></a> <!-- http://nco.sf.net/nco.html#DSD -->
+<a name="qnt"></a> <!-- http://nco.sf.net/nco.html#qnt --><hr>
+<a name="Compression"></a>
+<div class="header">
+<p>
+Next: <a href="#Deflation" accesskey="n" rel="next">Deflation</a>, Previous: <a href="#Chunking" accesskey="p" rel="prev">Chunking</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<a name="Compression-1"></a>
+<h3 class="section">3.27 Compression</h3>
+<a name="index-_002d_002dppc"></a>
+<a name="index-_002d_002dprecision_005fpreserving_005fcompression"></a>
+<a name="index-_002d_002dquantize"></a>
+<a name="index-lossy-compression"></a>
+<a name="index-quantization"></a>
+<a name="index-rounding"></a>
+<a name="index-Huffman-coding"></a>
+<a name="index-gzip"></a>
+<a name="index-zlib"></a>
+<table class="cartouche" border="1"><tr><td>
+<p>Availability: <code>ncbo</code>, <code>ncecat</code>, <code>nces</code>,
+<code>ncflint</code>, <code>ncks</code>, <code>ncpdq</code>, <code>ncra</code>,
+<code>ncrcat</code>, <code>ncwa</code><br> 
+Short options: None<br>
+Long options: ‘<samp>--ppc <var>var1</var>[,<var>var2</var>[,...]]=<var>prc</var></samp>’,<br>
+‘<samp>--precision_preserving_compression <var>var1</var>[,<var>var2</var>[,...]]=<var>prc</var></samp>’,<br>
+‘<samp>--quantize <var>var1</var>[,<var>var2</var>[,...]]=<var>prc</var></samp>’<br>
+</p></td></tr></table>
+
+<p><acronym>NCO</acronym> implements or accesses four different compression
+algorithms, the standard lossless <acronym>DEFLATE</acronym> algorithm
+and three lossy compression algorithms.
+All four algorithms reduce the on-disk size of a dataset while
+sacrificing no (lossless) or a tolerable amount (lossy) of precision. 
+First, <acronym>NCO</acronym> can access the lossless <acronym>DEFLATE</acronym> algorithm,
+a combination of Lempel-Ziv encoding and Huffman coding, algorithm on
+any netCDF4 dataset (see <a href="#Deflation">Deflation</a>). 
+Because it is lossless, this algorithm re-inflates deflated data to
+their full original precision. 
+This algorithm is accessed via the <acronym>HDF5</acronym> library layer
+(which itself calls the <code>zlib</code> library also used by
+<code>gzip</code>), and is unavailable with netCDF3.   
+</p>
+<p>The three lossy compression algorithms are Packing 
+(see <a href="#Packed-data">Packed data</a>), and two precision-preserving algorithms.
+Packing quantizes data of a higher precision type into a lower precision 
+type (often <code>NC_SHORT</code>) that thus stores a fewer (though constant)
+number of bytes per value. 
+Packed data almost unpacks into a (much) smaller dynamic range than
+the floating-point data can represent. 
+The type-conversion and reduced dynamic range of the data allows packing
+to eliminate bits typically used to store an exponent, thus improving 
+its packing efficiency.
+Packed data also can also be deflated for additional space savings. 
+</p>
+<p>A limitation of packing is that unpacking data stored as integers
+into the linear range defined by <code>scale_factor</code> and
+<code>add_offset</code> rapidly loses precision outside of a narrow range of
+floating point values.  
+Variables packed as <code>NC_SHORT</code>, for example, can represent only
+about 64000 discrete values in the range 
+<em>-32768*scale_factor+add_offset</em> to
+<em>32767*scale_factor+add_offset</em>. 
+The precision of packed data equals the value of <code>scale_factor</code>,
+and <code>scale_factor</code> is usually chosen to span the range of valid
+data, not to represent the intrinsic precision of the variable.
+In other words, the precision of packed data cannot be specified in
+advance because it depends on the range of values to quantize.
+</p>
+<a name="index-PPC"></a>
+<a name="index-LSD"></a>
+<a name="index-Least-Significant-Digit"></a>
+<a name="index-quantization-1"></a>
+<p><acronym>NCO</acronym> implemented the final two lossy compression algorithms
+in version 4.4.8 (February, 2015).
+These are both <em>Precision-Preserving Compression</em> (<acronym>PPC</acronym>)
+algorithms and since standard terminology for precision is remarkably 
+imprecise, so is our nomenclature. 
+The operational definition of “significant digit” in our precision
+preserving algorithms is that the exact value, before rounding or
+quantization, is within one-half the value of the decimal place occupied
+by the <em>Least Significant Digit</em> (<acronym>LSD</acronym>) of the rounded value.
+For example, the value <em>pi = 3.14</em> correctly represents the exact
+mathematical constant <var>pi</var> to three significant digits because the
+<acronym>LSD</acronym> of the rounded value (i.e., 4)<!-- /@w --> is in the one-hundredths 
+digit place, and the difference between the exact value and the rounded
+value is less than one-half of one one-hundredth, i.e., 
+(<em>3.14159265358979323844 - 3.14 = 0.00159 < 0.005</em>).
+</p>
+<a name="index-Number-of-Significant-Digits"></a>
+<a name="index-NSD"></a>
+<p>One <acronym>PPC</acronym> algorithm preserves the specified total 
+<em>Number of Signifcant Digits</em> (<acronym>NSD</acronym>) of the value.
+For example there is only one significant digit in the weight of
+most “eight-hundred pound gorillas” that you will encounter, 
+i.e., so <em><var>nsd=1</var></em>.
+This is the most straightforward measure of precision, and thus
+<acronym>NSD</acronym> is the default <acronym>PPC</acronym> algorithm.
+</p>
+<a name="index-Decimal-Significant-Digits"></a>
+<a name="index-DSD"></a>
+<p>The other <acronym>PPC</acronym> algorithm preserves the number of 
+<em>Decimal Significant Digits</em> (<acronym>DSD</acronym>), i.e., the number of
+significant digits following (positive, by convention) or preceding
+(negative) the decimal point.  
+For example, “0.008” and “800” have, respectively, three and
+negative two digits digits following the decimal point, corresponding 
+<em><var>dsd=3</var></em> and <em><var>dsd=-2</var></em>. 
+</p>
+<p>The only justifiable <acronym>NSD</acronym> for a given value depends on 
+intrinsic accuracy and error characteristics of the model or
+measurements, and not on the units with which the value is stored.
+The appropriate <acronym>DSD</acronym> for a given value depends on these
+intrinsic characteristics and, in addition, the units of storage.
+This is the fundamental difference between the <acronym>NSD</acronym> and 
+<acronym>DSD</acronym> approaches. 
+The eight-hundred pound gorilla always has <em><var>nsd=1</var></em> regardless 
+of whether the value is store in pounds or in some other unit.
+<acronym>DSD</acronym> corresponding to this weight is <em><var>dsd=-2</var></em> if the
+value is store in pounds, <em><var>dsd=4</var></em> if stored in megapounds.
+</p>
+<p>Users may wish to express the precision to be preserved as either
+<acronym>NSD</acronym> or <acronym>DSD</acronym>.
+Invoke <acronym>PPC</acronym> with the long option ‘<samp>--ppc var=prc</samp>’, or give
+the same arguments to the synonyms
+‘<samp>--precision_preserving_compression</samp>’, or to ‘<samp>--quantize</samp>’. 
+Here <var>var</var> is the variable to quantize, and <var>prc</var> is the 
+precision.
+The default algorithm assumes <var>prc</var> specifies <acronym>NSD</acronym>
+precision, e.g., ‘<samp>T=2</samp>’ means <em><var>nsd=2</var></em>.
+Prepend <var>prc</var> with a decimal point to specify <acronym>DSD</acronym>
+precision, e.g., ‘<samp>T=.2</samp>’ means <em><var>dsd=2</var></em>.
+<acronym>NSD</acronym> precision must be specified as a positive integer.
+<acronym>DSD</acronym> precision may be a positive or negative integer;
+and is specified as the negative base 10<!-- /@w --> logarithm of the desired 
+precision, in accord with common usage. 
+For example, specifying ‘<samp>T=.3</samp>’ or ‘<samp>T=.-2</samp>’ tells the
+<acronym>DSD</acronym> algorithm to store only enough bits to preserve the  
+value of <var>T</var> rounded to the nearest thousandth or hundred,
+respectively. 
+</p>
+<a name="index-CF-conventions-3"></a>
+<a name="index-coordinates-attribute"></a>
+<a name="index-bounds-attribute"></a>
+<p>Setting <var>var</var> to <code>default</code> has the special meaning of applying 
+the associated <acronym>NSD</acronym> or <acronym>DSD</acronym> algorithm to all floating
+point variables except coordinate variables.
+Variables <em>not affected</em> by <code>default</code> include integer and
+non-numeric atomic types, coordinates, and variables mentioned in 
+the <code>coordinates</code> or <code>bounds</code> attribute of any variable.
+<acronym>NCO</acronym> applies <acronym>PPC</acronym> to coordinate variables only if 
+those variables are explicitly specified (i.e., not with the
+‘<samp>default=<var>prc</var></samp>’ mechanism. 
+<acronym>NCO</acronym> applies <acronym>PPC</acronym> to integer-type variables only if 
+those variables are explicitly specified (i.e., not with the
+‘<samp>default=<var>prc</var></samp>’, and only if the <acronym>DSD</acronym> algorithm is
+invoked with a negative <var>prc</var>.
+To prevent <acronym>PPC</acronym> from applying to certain non-coordinate
+variables (e.g., <code>gridcell_area</code> or <code>gaussian_weight</code>),
+explicitly specify a precision exceeding 7<!-- /@w --> (for <code>NC_FLOAT</code>)
+or 15<!-- /@w --> (for <code>NC_DOUBLE</code>) for those variables. 
+Since these are the maximum representable precisions in decimal digits,
+<acronym>NCO</acronym> <em>turns-off</em> <acronym>PPC</acronym> (i.e., does nothing)
+when more precision is requested.
+</p>
+<a name="index-bitmask"></a>
+<a name="index-significand"></a>
+<a name="index-IEEE-754"></a>
+<p>The time penalty for compressing and uncompressing data varies according 
+to the algorithm.
+The Number of Significant Digit (<acronym>NSD</acronym>) algorithm quantizes by
+bitmasking, and employs no floating point math.
+The Decimal Significant Digit (<acronym>DSD</acronym>) algorithm quantizes by
+rounding, which does require floating point math.
+Hence <acronym>NSD</acronym> is likely faster than <acronym>DSD</acronym>, though
+the difference has not been measured.
+<acronym>NSD</acronym> creates a bitmask to alter the <em>significand</em> of
+<acronym>IEEE</acronym> 754<!-- /@w --> floating point data.
+The bitmask is one for all bits to be retained and zero or one for all
+bits to be ignored.
+The algorithm assumes that the number of binary digits (i.e., bits)
+necessary to represent a single base-10 digit is 
+<em>ln(10)/ln(2) = 3.32</em>.
+The exact numbers of bits <var>Nbit</var> retained for single and double
+precision values are <em>ceil(3.32*<var>nsd</var>)+1</em> and
+<em>ceil(3.32*<var>nsd</var>)+2</em>, respectively.
+Once these reach 23<!-- /@w --> and 53<!-- /@w -->, respectively, bitmasking is
+completely ineffective. 
+This occurs at <em><var>nsd</var>=6.3</em> and 15.4<!-- /@w -->, respectively.
+</p>
+<p>The <acronym>DSD</acronym> algorithm, by contrast, uses rounding to remove
+undesired precision.  
+<a name="index-rint_0028_0029"></a>
+<a name="index-C99-3"></a>
+<a name="index-IEEE"></a>
+<a name="index-significand-1"></a>
+The rounding 
+<a name="DOCF38" href="#FOOT38"><sup>38</sup></a>
+zeroes the greatest number of significand bits consistent with
+the desired precision.
+</p>
+<p>To demonstrate the change in <acronym>IEEE</acronym> representation caused by
+<acronym>PPC</acronym> rounding algorithms, consider again the case of <var>pi</var>,
+represented as an <code>NC_FLOAT</code>.
+The <acronym>IEEE</acronym> 754<!-- /@w --> single precision representations of the exact
+value (3.141592...), the value with only three significant digits treated
+as exact (3.140000...), and the value as stored (3.140625) after
+<acronym>PPC</acronym>-rounding with either the <acronym>NSD</acronym> (<em><var>prc</var>=3</em>)
+or <acronym>DSD</acronym> (<em><var>prc</var>=2</em>) algorithm are, respectively,
+</p><div class="example">
+<pre class="example">S Exponent  Fraction (Significand)   Decimal    Notes
+0 100000001 0010010000111111011011 # 3.14159265 Exact
+0 100000001 0010001111010111000011 # 3.14000000
+0 100000001 0010010000000000000000 # 3.14062500 NSD = 3
+0 100000001 0010010000000000000000 # 3.14062500 DSD = 2
+</pre></div>
+<p>The string of trailing zero-bits in the rounded values facilitates
+byte-stream compression. 
+Note that the <acronym>NSD</acronym> and <acronym>DSD</acronym> algorithms do not always
+produce results that are bit-for-bit identical, although they do in this
+particular case.
+</p>
+<a name="ppc_tbl_bit"></a> <!-- http://nco.sf.net/nco.html#ppc_tbl_bit --><p>Reducing the preserved precision of <acronym>NSD</acronym>-rounding produces
+increasingly long strings of identical-bits amenable to compression: 
+</p><div class="example">
+<pre class="example">S Exponent  Fraction (Significand)   Decimal    Notes
+0 100000001 0010010000111111011011 # 3.14159265 Exact
+0 100000001 0010010000111111011011 # 3.14159265 NSD = 8
+0 100000001 0010010000111111011010 # 3.14159262 NSD = 7
+0 100000001 0010010000111111011000 # 3.14159203 NSD = 6
+0 100000001 0010010000111111000000 # 3.14158630 NSD = 5
+0 100000001 0010010000111100000000 # 3.14154053 NSD = 4
+0 100000001 0010010000000000000000 # 3.14062500 NSD = 3
+0 100000001 0010010000000000000000 # 3.14062500 NSD = 2
+0 100000001 0010000000000000000000 # 3.12500000 NSD = 1
+</pre></div>
+<p>The consumption of about 3 bits<!-- /@w --> per digit of base-10 precision is
+evident, as is the coincidence of a quantized value that greatly
+exceeds the mandated precision for <em><acronym>NSD</acronym> = 2</em>.
+Although the <acronym>NSD</acronym> algorithm generally masks some bits for all 
+<em><var>nsd</var> <= 7</em> (for <code>NC_FLOAT</code>), compression algorithms like
+<acronym>DEFLATE</acronym> may need byte-size-or-greater (i.e., at least
+eight-bit) bit patterns before their algorithms can take advantage of
+of encoding such patterns for compression.
+Do not expect significantly enhanced compression from 
+<em><var>nsd</var> > 5</em> (for <code>NC_FLOAT</code>) or <em><var>nsd</var> > 14</em> (for
+<code>NC_DOUBLE</code>). 
+Clearly values stored as <code>NC_DOUBLE</code> (i.e., eight-bytes) are
+susceptible to much greater compression than <code>NC_FLOAT</code> for a given
+precision because their significands explicitly contain 53 bits<!-- /@w -->
+rather than 23 bits<!-- /@w -->.
+</p>
+<p>Maintaining non-biased statistical properties during lossy compression
+requires special attention. 
+The <acronym>DSD</acronym> algorithm uses <code>rint()</code>, which rounds toward the
+nearest even integer. 
+Thus <acronym>DSD</acronym> has no systematic bias.
+However, the <acronym>NSD</acronym> algorithm uses a bitmask technique
+susceptible to statistical bias.
+Zeroing all non-significant bits is guaranteed to produce numbers 
+quantized to the specified tolerance, i.e., half of the decimal value
+of the position occupied by the <acronym>LSD</acronym>. 
+However, always zeroing the non-significant bits results in quantized
+numbers that never exceed the exact number.
+This would produce a negative bias in statistical quantities (e.g., the
+average) subsequently derived from the quantized numbers. 
+To avoid this bias, <acronym>NSD</acronym> rounds non-significant bits down (to
+zero) or up (to one) in an alternating fashion when processing array
+data.
+In general, the first element is rounded down, the second up, and so
+on. 
+This results in a mean bias quite close to zero.
+The only exception is that the floating point value of zero is never 
+quantized upwards.
+For simplicity, <acronym>NSD</acronym> always rounds scalars downwards.
+</p>
+<a name="index-DEFLATE"></a>
+<a name="index-HDF5-2"></a>
+<a name="index-gzip-1"></a>
+<a name="index-gunzip"></a>
+<p>Although <acronym>NSD</acronym> or <acronym>DSD</acronym> are different algorithms under
+the hood, they both replace the (unwanted) least siginificant bits of
+the <acronym>IEEE</acronym> significand with a string of consecutive zeroes.  
+Byte-stream compression techniques, such as the <code>gzip</code>
+<acronym>DEFLATE</acronym> algorithm compression available in <acronym>HDF5</acronym>, 
+always compress zero-strings more efficiently than random digits. 
+The net result is netCDF files that utilize compression can be
+significantly reduced in size.  
+This feature only works when the data are compressed, either internally 
+(by netCDF) or externally (by another user-supplied mechanism).
+It is most straightfoward to compress data internally using the built-in 
+compression and decompression supported by netCDF4.
+For convenience, <acronym>NCO</acronym> automatically activates file-wide
+Lempel-Ziv deflation (see <a href="#Deflation">Deflation</a>) level one (i.e., ‘<samp>-L 1</samp>’)
+when <acronym>PPC</acronym> is invoked on any variable in a netCDF4 output file. 
+This makes <acronym>PPC</acronym> easier to use effectively, since the user
+need not explicitly specify deflation.
+Any explicitly specified deflation (including no deflation, ‘<samp>-L 0</samp>’) 
+will override the <acronym>PPC</acronym> deflation default.
+If the output file is a netCDF3 format, <acronym>NCO</acronym> will emit a
+message suggesting internal netCDF4 or external netCDF3 compression. 
+netCDF3 files compressed by an external utility such as <code>gzip</code>
+accrue approximately the same benefits (shrinkage) as netCDF4, although
+with netCDF3 the user or provider must uncompress (e.g.,
+<code>gunzip</code>) the file before accessing the data. 
+There is no benefit to rounding numbers and storing them in netCDF3
+files unless such custom compression/decompression is employed.
+Without that, one may as well maintain the undesired precision. 
+</p>
+<p>The user accesses <acronym>PPC</acronym> through a single switch, ‘<samp>--ppc</samp>’,
+repeated as many times as necessary.
+To apply the <acronym>NSD</acronym> algorithm to variable <var>u</var> use, e.g., 
+</p><div class="example">
+<pre class="example">ncks -7 --ppc u=2 in.nc out.nc
+</pre></div>
+<p>The output file will preserve only two significant digits of <var>u</var>.
+The options ‘<samp>-4</samp>’ or ‘<samp>-7</samp>’ ensure a netCDF4-format output 
+(regardless of the input file format) to support internal compression.
+It is recommended though not required to write netCDF4 files after 
+<acronym>PPC</acronym>.
+For clarity the ‘<samp>-4/-7</samp>’ switches are omitted in subsequent
+examples. 
+<a name="index-number_005fof_005fsignificant_005fdigits"></a>
+<a name="index-least_005fsignificant_005fdigit"></a>
+<acronym>NCO</acronym> attaches attributes that indicate the algorithm used and
+degree of precision retained for each variable affected by
+<acronym>PPC</acronym>. 
+The <acronym>NSD</acronym> and <acronym>DSD</acronym> algorithms store the attributes
+<code>number_of_significant_digits</code> and <code>least_significant_digit</code>
+<a name="DOCF39" href="#FOOT39"><sup>39</sup></a>, respectively.
+</p>
+<p>It is safe to attempt <acronym>PPC</acronym> on input that has already been
+rounded. 
+Variables can be made rounder, not sharper, i.e., variables cannot be
+“un-rounded”. 
+Thus <acronym>PPC</acronym> attempted on an input variable with an existing
+<acronym>PPC</acronym> attribute proceeds only if the new rounding level exceeds
+the old, otherwise no new rounding occurs (i.e., a “no-op”), and the
+original <acronym>PPC</acronym> attribute is retained rather than replaced with
+the newer value of <var>prc</var>.
+</p>
+<p>To request, say, five significant digits (<em><var>nsd=5</var></em>) for all
+fields, except, say, wind speeds which are only known to integer values
+(<em><var>dsd=0</var></em>) in the supplied units, requires ‘<samp>--ppc</samp>’ twice: 
+</p><div class="example">
+<pre class="example">ncks -4 --ppc default=5 --ppc u,v=.0 in.nc out.nc
+</pre></div>
+<p>To preserve five digits in all variables except coordinate variables
+and <var>u</var> and <var>v</var>, use the ‘<samp>default</samp>’ option and separately
+specify the exceptions:
+</p><div class="example">
+<pre class="example">ncks --ppc default=5 --ppc u,v=20 in.nc out.nc
+</pre></div>
+<p>The ‘<samp>--ppc</samp>’ option may be specified any number of times to
+support varying precision types and levels, and each option may
+aggregate all the variables with the same precision
+</p><div class="example">
+<pre class="example">ncks --ppc p,w,z=5 --ppc q,RH=4 --ppc T,u,v=3 in.nc out.nc
+</pre></div>
+<p>Any <var>var</var> argument may be a regular expression.
+This simplifies generating lists of related variables:
+</p><div class="example">
+<pre class="example">ncks --ppc Q.?=5 --ppc FS.?,FL.?=4 --ppc RH=.3 in.nc out.nc
+</pre></div>
+<p>Although <acronym>PPC</acronym>-rounding instantly reduces data precision,
+on-disk storage reduction only occurs once the data are compressed.  
+</p>
+<a name="ppc_tbl_ffc"></a> <!-- http://nco.sf.net/nco.html#ppc_tbl_ffc --><p>How can one be sure the lossy data are sufficiently precise?
+<acronym>PPC</acronym> preserves all significant digits of every value.
+The <acronym>DSD</acronym> algorithm uses floating point math to round each 
+value optimally so that it has the maximum number of zeroed bits
+that preserve the specified precision.
+The <acronym>NSD</acronym> algorithm uses a theoretical approach (3.2 bits per
+base-10 digit), tuned and tested to ensure the <em>worst</em> case
+quantization error is less than half the value of the minimum increment
+in the least significant digit. 
+</p>
+<table class="cartouche" border="1"><tr><td>
+<p><b>Note for HTML users</b>: 
+<br>The definition of error metrics relies heavily on mathematical
+expressions which cannot easily be represented in HTML.  
+<b>See the <a href="./nco.pdf">printed manual</a> for much more detailed
+and complete documentation of this subject.</b></td></tr></table>
+
+
+<p>All three metrics are expressed in terms of the fraction of the ten’s
+place occupied by the <acronym>LSD</acronym>.
+If the <acronym>LSD</acronym> is the hundreds digit or the thousandths digit,
+then the metrics are fractions of 100<!-- /@w -->, or of 1/100<!-- /@w -->,
+respectively. 
+<acronym>PPC</acronym> algorithms should produce maximum absolute errors no
+greater than 0.5<!-- /@w --> in these units.
+If the <acronym>LSD</acronym> is the hundreds digit, then quantized versions of
+true values will be within fifty of the true value.
+It is much easier to satisfy this tolerance for a true value 
+of 100<!-- /@w --> (only 50% accuracy required) than for 999<!-- /@w --> 
+(5% accuracy<!-- /@w --> required). 
+Thus the minimum accuracy guaranteed for <em><var>nsd</var>=1</em> ranges
+from 5–50%.
+For this reason, the best and worst cast performance usually occurs for
+true values whose <acronym>LSD</acronym> value is close to one and nine,
+respectively. 
+Of course most users prefer <em><var>prc</var> > 1</em> because accuracies
+increase exponentially with <var>prc</var>.
+Continuing the previous example to <em><var>prc</var>=2</em>, 
+quantized versions of true values from 1000–9999 will also be 
+within 50<!-- /@w --> of the true value, i.e., have accuracies from 0.5–5%.
+In other words, only two significant digits are necessary to guarantee 
+better than 5%<!-- /@w --> accuracy in quantization. 
+We recommend that dataset producers and users consider quantizing
+datasets with <em><var>nsd</var>=3</em>.
+This guarantees accuracy of 0.05–0.5% for individual values.
+Statistics computed from ensembles of quantized values will, assuming
+the mean error 
+<em><var>Emean</var></em>
+is small, have much better accuracy than 0.5%<!-- /@w -->.
+This accuracy is the most that can be justified for many applications.   
+</p>
+<p>To demonstrate these principles we conduct error analyses on an
+artificial, reproducible dataset, and on an actual dataset of
+observational analysis values. 
+<a name="DOCF40" href="#FOOT40"><sup>40</sup></a>
+The table summarizes quantization accuracy based on the three metrics.
+</p><dl compact="compact">
+<dt><code>NSD</code></dt>
+<dd><p>Number of Significant Digits.
+</p></dd>
+<dt><code>Emabs</code></dt>
+<dd><p>Maximum absolute error.
+</p></dd>
+<dt><code>Emebs</code></dt>
+<dd><p>Mean absolute error.
+</p></dd>
+<dt><code>Emean</code></dt>
+<dd><p>Mean error.
+</p></dd>
+</dl>
+
+<div class="example">
+<pre class="example">Artificial Data: N=1000000 values in [1.0,2.0) in steps of 1.0e-6
+Single-Precision        Double-Precision   Single-Precision
+NSD Emabs Emebs Emean   Emabs Emebs Emean  DSD Emabs Emebs Emean
+ 1  0.31  0.11  4.1e-4  0.31  0.11  4.0e-4  1  0.30  0.11 -8.1e-4  
+ 2  0.39  0.14  6.8e-5  0.39  0.14  5.5e-5  2  0.39  0.14 -1.3e-4
+ 3  0.49  0.17  1.0e-6  0.49  0.17 -5.5e-7  3  0.49  0.17 -2.0e-5
+ 4  0.30  0.11  3.2e-7  0.30  0.11 -6.1e-6  4  0.30  0.11  5.1e-8
+ 5  0.37  0.13  3.1e-7  0.38  0.13 -5.6e-6  5  0.38  0.13  2.6e-6
+ 6  0.36  0.12 -4.4e-7  0.48  0.17 -4.1e-7  6  0.48  0.17  7.2e-6
+ 7  0.00  0.00  0.0     0.30  0.10  1.5e-7  7  0.00  0.00  0.0     
+
+Observational Analysis: N=13934592 values MERRA Temperature 20130601
+Single-Precision        
+NSD Emabs Emebs Emean   
+ 1  0.31  0.11  2.4e-3
+ 2  0.39  0.14  3.8e-4
+ 3  0.49  0.17 -9.6e-5 
+ 4  0.30  0.11  2.3e-3
+ 5  0.37  0.13  2.2e-3
+ 6  0.36  0.13  1.7e-2
+ 7  0.00  0.00  0.0     
+</pre></div>
+<p>All results show that <acronym>PPC</acronym> quantization performs as expected.
+Absolute maximum errors <em><var>Emabs</var> < 0.5</em> for all <var>prc</var>.
+For <em>1 <= <var>prc</var> <= 6</em>, quantization results in comparable
+maximum absolute and mean absolute errors <var>Emabs</var> and <var>Emebs</var>,
+respectively. 
+Mean errors <var>Emean</var> are orders of magnitude smaller because 
+quantization produces over- and under-estimated values in balance.
+When <em><var>prc</var>=7</em>, quantization of single-precision values is
+ineffective, because all available bits are used to represent the 
+maximum precision of seven digits.
+The maximum and mean absolute errors <var>Emabs</var> and <var>Emebs</var> are
+nearly identical across algorithms, precisions, and dataset types.
+This is consistent with both the artificial data and empirical data
+being random, and thus exercising equally strengths and weaknesses of
+the algorithms over the course of millions of input values.
+We generated artificial arrays with many different starting values
+and interval spacing and all gave qualitatively similar results.
+The results presented are the worst obtained.
+</p>
+<p>The artificial data has much smaller mean error <var>Emean</var> than the
+observational analysis. 
+The reason why is unclear.
+It may be because the temperature field is concentrated in particular
+ranges of values (and associated quantization errors) prevalent on
+Earth, e.g., <em>200 < <var>T</var> < 320</em>. 
+It is worth noting that the mean error <em><var>Emean</var> < 0.01</em> for
+<em>1 <= <var>prc</var> < 6</em>, and that <var>Emean</var> is typically at least 
+two or more orders of magnitude less than <var>Emabs</var>.
+Thus quantized values with precisions as low as <em><var>prc</var>=1</em> 
+still yield highly significant statistics by contemporary scientific
+standards. 
+</p>
+<p>Testing shows that <acronym>PPC</acronym> quantization enhances compression of 
+typical climate datasets. 
+The degree of enhancement depends, of course, on the required
+precision. 
+Model results are often computed as <code>NC_DOUBLE</code> then archived 
+as <code>NC_FLOAT</code> to save space. 
+<a name="ppc_tbl_nc"></a> <!-- http://nco.sf.net/nco.html#ppc_tbl_nc --><a name="index-Burrows_002dWheeler-algorithm"></a>
+<a name="index-bzip2"></a>
+This table summarizes the performance of lossless and lossy compression
+on two typical, or at least random, netCDF data files.  
+The files were taken from representative model-simulated and
+satellite-retrieved datasets.
+Only floating point data were compressed.
+No attempt was made to compress integer-type variables as they occupy an 
+insignificant fraction of every dataset.
+The columns are
+</p><dl compact="compact">
+<dt><code>Type</code></dt>
+<dd><p>File-type: 
+<kbd>N3</kbd> for netCDF <code>CLASSIC</code>,
+<kbd>N4</kbd> for <code>NETCDF4</code>), 
+<kbd>N7</kbd> for <code>NETCDF4_CLASSIC</code> (which comprises netCDF3
+data types and structures with netCDF4 storage features like
+compression),  
+<kbd>H4</kbd> for <acronym>HDF4</acronym>, and
+<kbd>H5</kbd> for <acronym>HDF5</acronym>.
+<kbd>N4/7</kbd> means results apply to both <kbd>N4</kbd> and <kbd>N7</kbd> filetypes.
+</p></dd>
+<dt><code>LLC</code></dt>
+<dd><p>Type of lossless compression employed, if any.
+Bare numbers refer to the strength of the <acronym>DEFLATE</acronym> algorithm
+employed internally by netCDF4/<acronym>HDF5</acronym>, while numbers prefixed
+with <kbd>B</kbd> refer to the block size employed by the Burrows-Wheeler
+algorithm in <code>bzip2</code>. 
+</p></dd>
+<dt><code>PPC</code></dt>
+<dd><p>Number of significant digits retained by the precision-preserving
+compression <acronym>NSD</acronym> algorithm.  
+</p></dd>
+<dt><code>Pck</code></dt>
+<dd><p><kbd>Y</kbd> if the default <code>ncpdq</code> packing algorithm (convert
+floating point types to <code>NC_SHORT</code>) was employed.
+A dash (<kbd>-</kbd>) indicates the associated compression feature
+was not employed.
+</p></dd>
+<dt><code>Size</code></dt>
+<dd><p>Resulting filesize in <acronym>MB</acronym>.
+</p></dd>
+<dt><code>%</code></dt>
+<dd><p>Compression ratio, i.e., resulting filesize relative to original size,
+in percent. 
+In some cases the original files is already losslessly compressed. 
+The compression ratios reported are relative to the size of the original
+file as distributed, not as optimally losslessly compressed. 
+</p></dd>
+</dl>
+<div class="example">
+<pre class="example"># dstmch90_clm.nc
+Type LLC PPC Pck  Size   %    Flags and Notes
+  N3   -   -  -   34.7 100.0  Original is not compressed
+  N3  B1   -  -   28.9  83.2  bzip2 -1
+  N3  B9   -  -   29.3  84.4  bzip2 -9
+  N7   -   -  -   35.0 101.0     
+  N7   1   -  -   28.2  81.3  -L 1
+  N7   9   -  -   28.0  80.8  -L 9
+  N7   -   -  Y   17.6  50.9  ncpdq -L 0
+  N7   1   -  Y    7.9  22.8  ncpdq -L 1
+  N7   1   7  -   28.2  81.3  --ppc default=7
+  N7   1   6  -   27.9  80.6  --ppc default=6
+  N7   1   5  -   25.9  74.6  --ppc default=5
+  N7   1   4  -   22.3  64.3  --ppc default=4
+  N7   1   3  -   18.9  54.6  --ppc default=3
+  N7   1   2  -   14.5  43.2  --ppc default=2
+  N7   1   1  -   10.0  29.0  --ppc default=1
+
+# b1850c5cn_doe_polar_merged_0_cesm1_2_0_HD+MAM4+tun2b.hp.e003.cam.h0.0001-01.nc
+Type LLC PPC Pck  Size   %    Flags and Notes
+  N3   -   -  -  119.8 100.0  Original is not compressed
+  N3  B1   -  -   84.2  70.3  bzip2 -1
+  N3  B9   -  -   84.8  70.9  bzip2 -9
+  N7   -   -  -  120.5 100.7     
+  N7   1   -  -   82.6  69.0  -L 1
+  N7   9   -  -   82.1  68.6  -L 9
+  N7   -   -  Y   60.7  50.7  ncpdq -L 0
+  N7   1   -  Y   26.0  21.8  ncpdq -L 1
+  N7   1   7  -   82.6  69.0  --ppc default=7
+  N7   1   6  -   81.9  68.4  --ppc default=6
+  N7   1   5  -   77.2  64.5  --ppc default=5
+  N7   1   4  -   69.0  57.6  --ppc default=4
+  N7   1   3  -   59.3  49.5  --ppc default=3
+  N7   1   2  -   49.5  41.3  --ppc default=2
+  N7   1   1  -   38.2  31.9  --ppc default=1
+
+# MERRA300.prod.assim.inst3_3d_asm_Cp.20130601.hdf
+Type LLC PPC Pck  Size   %    Flags and Notes
+  H4   5   -  -  244.3 100.0  Original is compressed
+  H4  B1   -  -  244.7 100.1  bzip2 -1
+  N4   5   -  -  214.5  87.8
+  N7   5   -  -  210.6  86.2  
+  N4  B1   -  -  215.4  88.2  bzip2 -1
+  N4  B9   -  -  214.8  87.9  bzip2 -9
+  N3   -   -  -  617.1 252.6
+N4/7   -   -  -  694.0 284.0  -L 0
+N4/7   1   -  -  223.2  91.3  -L 1
+N4/7   9   -  -  207.3  84.9  -L 9
+N4/7   -   -  Y  347.1 142.1  ncpdq -L 0
+N4/7   1   -  Y  133.6  54.7  ncpdq -L 1
+N4/7   1   7  -  223.1  91.3  --ppc default=7
+N4/7   1   6  -  225.1  92.1  --ppc default=6
+N4/7   1   5  -  221.4  90.6  --ppc default=5
+N4/7   1   4  -  201.4  82.4  --ppc default=4
+N4/7   1   3  -  185.3  75.9  --ppc default=3
+N4/7   1   2  -  150.0  61.4  --ppc default=2
+N4/7   1   1  -  100.8  41.3  --ppc default=1
+
+# OMI-Aura_L2-OMIAuraSO2_2012m1222-o44888_v01-00-2014m0107t114720.h5
+Type LLC PPC Pck  Size   %    Flags and Notes
+  H5   5   -  -   29.5 100.0  Original is compressed
+  H5  B1   -  -   29.3  99.6  bzip2 -1
+  N4   5   -  -   29.5 100.0
+  N4  B1   -  -   29.3  99.6  bzip2 -1
+  N4  B9   -  -   29.3  99.4  bzip2 -9
+  N4   -   -  -   50.7 172.3  -L 0
+  N4   1   -  -   29.8 101.3  -L 1
+  N4   9   -  -   29.4  99.8  -L 9
+  N4   -   -  Y   27.7  94.0  ncpdq -L 0
+  N4   1   -  Y   12.9  43.9  ncpdq -L 1
+  N4   1   7  -   29.7 100.7  --ppc default=7
+  N4   1   6  -   29.7 100.8  --ppc default=6
+  N4   1   5  -   27.3  92.8  --ppc default=5
+  N4   1   4  -   23.8  80.7  --ppc default=4
+  N4   1   3  -   20.3  69.0  --ppc default=3
+  N4   1   2  -   15.1  51.2  --ppc default=2
+  N4   1   1  -    9.9  33.6  --ppc default=1
+</pre></div>
+
+<a name="index-NCAR-1"></a>
+<a name="index-CAM"></a>
+<a name="index-GCM-1"></a>
+<p>A selective, per-variable approach to <acronym>PPC</acronym> yields the
+best balance of precision and compression yet requires the dataset
+producer to understand the intrinsic precision of each variable.
+Such a specification for a <acronym>GCM</acronym> dataset might look like this 
+(using names for the <acronym>NCAR</acronym> <acronym>CAM</acronym> model):
+</p><div class="example">
+<pre class="example"># Be conservative on non-explicit quantities, so default=5
+# Some quantities deserve four significant digits
+# Many quantities, such as aerosol optical depths and burdens, are 
+# highly uncertain and only useful to three significant digits.
+ncks -7 -O \
+--ppc default=5 \
+--ppc AN.?,AQ.?=4 \
+--ppc AER.?,AOD.?,ARE.?,AW.?,BURDEN.?=3 \
+ncar_cam.nc ~/foo.nc
+</pre></div>
+
 <a name="dfl_lvl"></a> <!-- http://nco.sf.net/nco.html#dfl_lvl -->
 <a name="dfl"></a> <!-- http://nco.sf.net/nco.html#dfl -->
 <a name="lz"></a> <!-- http://nco.sf.net/nco.html#lz -->
@@ -6655,10 +7342,10 @@ variables.
 <a name="Deflation"></a>
 <div class="header">
 <p>
-Next: <a href="#MD5-digests" accesskey="n" rel="next">MD5 digests</a>, Previous: <a href="#Chunking" accesskey="p" rel="previous">Chunking</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#MD5-digests" accesskey="n" rel="next">MD5 digests</a>, Previous: <a href="#Compression" accesskey="p" rel="prev">Compression</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Deflation-1"></a>
-<h3 class="section">3.27 Deflation</h3>
+<h3 class="section">3.28 Deflation</h3>
 <a name="index-_002dL"></a>
 <a name="index-_002d_002ddeflate"></a>
 <a name="index-_002d_002ddfl_005flvl"></a>
@@ -6673,22 +7360,24 @@ Short options: ‘<samp>-L</samp>’<br>
 Long options: ‘<samp>--dfl_lvl</samp>’, ‘<samp>--deflate</samp>’<br>  
 </p></td></tr></table>
 
-<p>All <acronym>NCO</acronym> operators that define variables support 
-the netCDF4 feature of storing variables compressed with Lempel-Ziv
-deflation. 
-The Lempel-Ziv algorithm is a lossless data compression technique.
-Activate this deflation with the <code>-L <var>dfl_lvl</var></code> short option
-(or with the same argument to the ‘<samp>--dfl_lvl</samp>’ or ‘<samp>--deflate</samp>’ 
-long options).
-Specify the deflation level <var>dfl_lvl</var> on a scale from 
-no deflation (<var>dfl_lvl = 0</var>) to maximum deflation 
-(<var>dfl_lvl = 9</var>).
+<p>All <acronym>NCO</acronym> operators that define variables support the netCDF4
+feature of storing variables compressed with the lossless
+<acronym>DEFLATE</acronym> compression algorithm.
+<acronym>DEFLATE</acronym> combines the Lempel-Ziv encoding with Huffman coding.
+The specific version used by netCDF4/<acronym>HDF5</acronym> is that implemented
+in the <code>zlib</code> library used by <code>gzip</code>.
+Activate deflation with the <code>-L <var>dfl_lvl</var></code> short option (or
+with the same argument to the ‘<samp>--dfl_lvl</samp>’ or ‘<samp>--deflate</samp>’ long
+options). 
+Specify the deflation level <var>dfl_lvl</var> on a scale from no deflation
+(<var>dfl_lvl = 0</var>) to maximum deflation (<var>dfl_lvl = 9</var>).
+Under the hood, this selects the compression blocksize.
 Minimal deflation (<var>dfl_lvl = 1</var>) achieves considerable storage
 compression with little time penalty.
 Higher deflation levels require more time for compression.
 File sizes resulting from minimal (<var>dfl_lvl = 1</var>) and maximal   
-(<var>dfl_lvl = 9</var>) deflation levels typically differ by a few
-percent in size. 
+(<var>dfl_lvl = 9</var>) deflation levels typically differ by less 
+than 10%<!-- /@w --> in size. 
 </p>
 <p>To compress an entire file using deflation, use
 </p><div class="example">
@@ -6720,10 +7409,10 @@ ncpdq -4 -L 9 in.nc out.nc # Deflated packing  (~80% compression)
 <a name="MD5-digests"></a>
 <div class="header">
 <p>
-Next: <a href="#Buffer-sizes" accesskey="n" rel="next">Buffer sizes</a>, Previous: <a href="#Deflation" accesskey="p" rel="previous">Deflation</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Buffer-sizes" accesskey="n" rel="next">Buffer sizes</a>, Previous: <a href="#Deflation" accesskey="p" rel="prev">Deflation</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="MD5-digests-1"></a>
-<h3 class="section">3.28 MD5 digests</h3>
+<h3 class="section">3.29 MD5 digests</h3>
 <a name="index-_002d_002dmd5_005fdigest"></a>
 <a name="index-_002d_002dmd5_005fdgs"></a>
 <a name="index-_002d_002dmd5_005fwrt_005fatt"></a>
@@ -6825,10 +7514,10 @@ We welcome feedback and suggestions from users.
 <a name="Buffer-sizes"></a>
 <div class="header">
 <p>
-Next: <a href="#RAM-disks" accesskey="n" rel="next">RAM disks</a>, Previous: <a href="#MD5-digests" accesskey="p" rel="previous">MD5 digests</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#RAM-disks" accesskey="n" rel="next">RAM disks</a>, Previous: <a href="#MD5-digests" accesskey="p" rel="prev">MD5 digests</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Buffer-sizes-1"></a>
-<h3 class="section">3.29 Buffer sizes</h3>
+<h3 class="section">3.30 Buffer sizes</h3>
 <a name="index-_002d_002dbfr_005fsz_005fhnt"></a>
 <a name="index-Buffer-sizes"></a>
 <a name="index-File-buffers"></a>
@@ -6849,7 +7538,7 @@ invoke to read and write files.
 By default, netCDF uses the preferred I/O block size returned as the
 ‘<samp>st_blksize</samp>’ member of the ‘<samp>stat</samp>’ structure returned by the
 <code>stat()</code> system call
-<a name="DOCF38" href="#FOOT38"><sup>38</sup></a>.
+<a name="DOCF41" href="#FOOT41"><sup>41</sup></a>.
 Otherwise, netCDF uses twice the system pagesize.
 Larger sizes can increase access speed by reducing the number of 
 system calls netCDF makes to read/write data from/to disk.
@@ -6871,10 +7560,10 @@ ncks: INFO nc__open() opened file with buffer size = 2097152 bytes
 <a name="RAM-disks"></a>
 <div class="header">
 <p>
-Next: <a href="#Packed-data" accesskey="n" rel="next">Packed data</a>, Previous: <a href="#Buffer-sizes" accesskey="p" rel="previous">Buffer sizes</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Packed-data" accesskey="n" rel="next">Packed data</a>, Previous: <a href="#Buffer-sizes" accesskey="p" rel="prev">Buffer sizes</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="RAM-disks-1"></a>
-<h3 class="section">3.30 RAM disks</h3>
+<h3 class="section">3.31 RAM disks</h3>
 <a name="index-_002d_002dram_005fall-1"></a>
 <a name="index-_002d_002dcreate_005fram-1"></a>
 <a name="index-_002d_002dopen_005fram-2"></a>
@@ -7000,10 +7689,10 @@ This is accomplished with the ‘<samp>--no_tmp_fl</samp>’ switch
 <a name="Packed-data"></a>
 <div class="header">
 <p>
-Next: <a href="#Operation-Types" accesskey="n" rel="next">Operation Types</a>, Previous: <a href="#RAM-disks" accesskey="p" rel="previous">RAM disks</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Operation-Types" accesskey="n" rel="next">Operation Types</a>, Previous: <a href="#RAM-disks" accesskey="p" rel="prev">RAM disks</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Packed-data-1"></a>
-<h3 class="section">3.31 Packed data</h3>
+<h3 class="section">3.32 Packed data</h3>
 <a name="index-packing-2"></a>
 <a name="index-unpacking-1"></a>
 <a name="index-add_005foffset-1"></a>
@@ -7040,7 +7729,7 @@ The packed variable is stored (usually) as type <code>NC_SHORT</code>
 with the two attributes required to unpack the variable,
 <code>scale_factor</code> and <code>add_offset</code>, stored at the original
 (unpacked) precision of the variable
-<a name="DOCF39" href="#FOOT39"><sup>39</sup></a>.
+<a name="DOCF42" href="#FOOT42"><sup>42</sup></a>.
 Let <var>min</var> and <var>max</var> be the minimum and maximum values 
 of <var>x</var>.<!-- /@w --> 
 </p><br>
@@ -7173,16 +7862,19 @@ Pack and unpack individual variables with <code>ncpdq</code> and the
 <a name="Operation-Types"></a>
 <div class="header">
 <p>
-Next: <a href="#Type-Conversion" accesskey="n" rel="next">Type Conversion</a>, Previous: <a href="#Packed-data" accesskey="p" rel="previous">Packed data</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Type-Conversion" accesskey="n" rel="next">Type Conversion</a>, Previous: <a href="#Packed-data" accesskey="p" rel="prev">Packed data</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Operation-Types-1"></a>
-<h3 class="section">3.32 Operation Types</h3>
+<h3 class="section">3.33 Operation Types</h3>
 <a name="index-operation-types"></a>
 <a name="index-avg"></a>
 <a name="index-sqravg"></a>
 <a name="index-avgsqr"></a>
 <a name="index-min"></a>
 <a name="index-max"></a>
+<a name="index-mabs"></a>
+<a name="index-mebs"></a>
+<a name="index-mibs"></a>
 <a name="index-rmssdn"></a>
 <a name="index-rms"></a>
 <a name="index-ttl"></a>
@@ -7217,10 +7909,19 @@ Set <var>op_typ</var> to the abbreviated key for the corresponding operation:
 <dd><p>Mean of sum of squares
 </p></dd>
 <dt><code>max</code></dt>
-<dd><p>Maximium value
+<dd><p>Maximum value
 </p></dd>
 <dt><code>min</code></dt>
-<dd><p>Minimium value
+<dd><p>Minimum value
+</p></dd>
+<dt><code>mabs</code></dt>
+<dd><p>Maximum absolute value
+</p></dd>
+<dt><code>mebs</code></dt>
+<dd><p>Mean absolute value
+</p></dd>
+<dt><code>mabs</code></dt>
+<dd><p>Minimum absolute value
 </p></dd>
 <dt><code>rms</code></dt>
 <dd><p>Root-mean-square (normalized by <var>N</var>)
@@ -7274,12 +7975,15 @@ defined in <acronym>NCO</acronym> please contact the <acronym>NCO</acronym> proj
 </p>
 <p>EXAMPLES
 </p>
+<a name="mabs"></a> <!-- http://nco.sf.net/nco.html#mabs -->
+<a name="mebs"></a> <!-- http://nco.sf.net/nco.html#mebs -->
+<a name="mibs"></a> <!-- http://nco.sf.net/nco.html#mibs -->
 <a name="min"></a> <!-- http://nco.sf.net/nco.html#min -->
 <a name="max"></a> <!-- http://nco.sf.net/nco.html#max -->
 <a name="rms"></a> <!-- http://nco.sf.net/nco.html#rms --><p>Suppose you wish to examine the variable <code>prs_sfc(time,lat,lon)</code> 
 which contains a time series of the surface pressure as a function of
 latitude and longitude.
-Find the minimium value of <code>prs_sfc</code> over all dimensions:
+Find the minimum value of <code>prs_sfc</code> over all dimensions:
 </p><div class="example">
 <pre class="example">ncwa -y min -v prs_sfc in.nc foo.nc 
 </pre></div>
@@ -7307,7 +8011,7 @@ given).
 Suppose that <code>prs_sfc</code> is stored in multiple timesteps per file
 across multiple files, say <samp>jan.nc</samp>, <samp>feb.nc</samp>,
 <samp>march.nc</samp>.  
-We can now find the three month maximium surface pressure at every point.
+We can now find the three month maximum surface pressure at every point.
 </p><div class="example">
 <pre class="example">nces -y max -v prs_sfc jan.nc feb.nc march.nc out.nc
 </pre></div>
@@ -7405,10 +8109,10 @@ less required by the <code>ncbo</code> operation in the third step.
 <a name="Type-Conversion"></a>
 <div class="header">
 <p>
-Next: <a href="#Batch-Mode" accesskey="n" rel="next">Batch Mode</a>, Previous: <a href="#Operation-Types" accesskey="p" rel="previous">Operation Types</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Batch-Mode" accesskey="n" rel="next">Batch Mode</a>, Previous: <a href="#Operation-Types" accesskey="p" rel="prev">Operation Types</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Type-Conversion-1"></a>
-<h3 class="section">3.33 Type Conversion</h3>
+<h3 class="section">3.34 Type Conversion</h3>
 <a name="index-type-conversion"></a>
 <table class="cartouche" border="1"><tr><td>
 <p>Availability (automatic type conversion): <code>ncap2</code>, <code>ncbo</code>, <code>nces</code>,
@@ -7448,10 +8152,10 @@ which manual type conversion is advantageous.
 <a name="Automatic-type-conversion"></a>
 <div class="header">
 <p>
-Next: <a href="#Promoting-Single_002dprecision-to-Double" accesskey="n" rel="next">Promoting Single-precision to Double</a>, Previous: <a href="#Type-Conversion" accesskey="p" rel="previous">Type Conversion</a>, Up: <a href="#Type-Conversion" accesskey="u" rel="up">Type Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Promoting-Single_002dprecision-to-Double" accesskey="n" rel="next">Promoting Single-precision to Double</a>, Previous: <a href="#Type-Conversion" accesskey="p" rel="prev">Type Conversion</a>, Up: <a href="#Type-Conversion" accesskey="u" rel="up">Type Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Automatic-type-conversion-1"></a>
-<h4 class="subsection">3.33.1 Automatic type conversion</h4>
+<h4 class="subsection">3.34.1 Automatic type conversion</h4>
 
 <p>There are at least two reasons to avoid type conversions.
 First, type conversions are expensive since they require creating
@@ -7485,14 +8189,14 @@ A straightforward average without promotion results in garbage since the
 intermediate value which holds their sum is also of type <code>NC_SHORT</code>
 and thus overflows on (i.e., cannot represent) values greater than
 32,767 
-<a name="DOCF40" href="#FOOT40"><sup>40</sup></a>.
+<a name="DOCF43" href="#FOOT43"><sup>43</sup></a>.
 There are valid reasons for expecting this operation to succeed and 
 the <acronym>NCO</acronym> philosophy is to make operators do what you want, not
 what is purest.
 Thus, unlike C and Fortran, but like many other higher level interpreted
 languages, <acronym>NCO</acronym> arithmetic operators will perform automatic type
 conversion on integers when all the following conditions are met
-<a name="DOCF41" href="#FOOT41"><sup>41</sup></a>: 
+<a name="DOCF44" href="#FOOT44"><sup>44</sup></a>: 
 </p><ol>
 <li> The requested operation is arithmetic.
 This is why type conversion is limited to the operators <code>ncap2</code>, 
@@ -7542,7 +8246,7 @@ variables’ original storage type (e.g., from <code>NC_DOUBLE</code> to
 <acronym>NCO</acronym> has handled this demotion in three ways in its history.
 Prior to October, 2011 (version 4.0.8), <acronym>NCO</acronym> employed the
 C library<!-- /@w --> truncate function, <code>trunc()</code>
-<a name="DOCF42" href="#FOOT42"><sup>42</sup></a>.
+<a name="DOCF45" href="#FOOT45"><sup>45</sup></a>.
 Truncation rounds <var>x</var> to the nearest integer not larger in absolute 
 value.
 For example, truncation rounds <code>1.0d</code>, <code>1.5d</code>, and
@@ -7571,7 +8275,7 @@ This rounds, for example, <code>1.5d</code> and <code>2.5d</code> to <code>2s</c
 and <code>3s</code>, respectively.
 </p>
 <a name="index-lrint_0028_0029_002e"></a>
-<a name="index-IEEE"></a>
+<a name="index-IEEE-1"></a>
 <p>Since April, 2013 (version 4.3.0), <acronym>NCO</acronym> has employed the 
 other C library<!-- /@w --> family of rounding functions, <code>lrint()</code>. 
 This algorithm rounds <var>x</var> to the nearest integer, using the current 
@@ -7597,10 +8301,10 @@ stores it on disk as
 <a name="Promoting-Single_002dprecision-to-Double"></a>
 <div class="header">
 <p>
-Next: <a href="#Manual-type-conversion" accesskey="n" rel="next">Manual type conversion</a>, Previous: <a href="#Automatic-type-conversion" accesskey="p" rel="previous">Automatic type conversion</a>, Up: <a href="#Type-Conversion" accesskey="u" rel="up">Type Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Manual-type-conversion" accesskey="n" rel="next">Manual type conversion</a>, Previous: <a href="#Automatic-type-conversion" accesskey="p" rel="prev">Automatic type conversion</a>, Up: <a href="#Type-Conversion" accesskey="u" rel="up">Type Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Promoting-Single_002dprecision-to-Double-1"></a>
-<h4 class="subsection">3.33.2 Promoting Single-precision to Double</h4>
+<h4 class="subsection">3.34.2 Promoting Single-precision to Double</h4>
 <a name="index-promotion-1"></a>
 <a name="index-implicit-conversion"></a>
 <a name="index-_002d_002ddbl"></a>
@@ -7615,10 +8319,10 @@ Single-precision (four-byte) numbers contain about seven significant
 figures, while double-precision contain about sixteen.
 More, err, precisely, the <acronym>IEEE</acronym> single-precision representation
 gives from 6 to 9<!-- /@w --> significant decimal digits precision
-<a name="DOCF43" href="#FOOT43"><sup>43</sup></a>.
+<a name="DOCF46" href="#FOOT46"><sup>46</sup></a>. 
 And the <acronym>IEEE</acronym> double-precision representation
 gives from 15 to 17<!-- /@w --> significant decimal digits precision
-<a name="DOCF44" href="#FOOT44"><sup>44</sup></a>. 
+<a name="DOCF47" href="#FOOT47"><sup>47</sup></a>.  
 Hence double-precision numbers represent about nine digits more
 precision than single-precision numbers.
 </p>
@@ -7653,7 +8357,7 @@ our judgement, the performance penalty of always doing so would outweigh
 the potential benefits. 
 The now-classic text “Numerical Recipes in C<!-- /@w -->” discusses this point
 under the section “Implicit Conversion of Float to Double”
-<a name="DOCF45" href="#FOOT45"><sup>45</sup></a>.
+<a name="DOCF48" href="#FOOT48"><sup>48</sup></a>.
 That said, such promotion is warranted in some circumstances.
 </p>
 <p>For example, rounding errors can accumulate to worrisome levels during
@@ -7685,7 +8389,7 @@ In Method 1<!-- /@w --> we derive the 15-year ensemble January average in t
 steps, as the average of three five-year averages.
 This method is naturally used when each input file contains multiple
 years and multiple input files are needed
-<a name="DOCF46" href="#FOOT46"><sup>46</sup></a>.
+<a name="DOCF49" href="#FOOT49"><sup>49</sup></a>.
 In Method 2<!-- /@w --> we obtain 15-year ensemble January average in a single
 step, by averaging all 15 Januaries at one time:
 </p><div class="example">
@@ -7789,7 +8493,7 @@ would be warranted.
 </p>
 <a name="index-TREFHT"></a>
 <a name="index-CAM3"></a>
-<a name="index-GCM-1"></a>
+<a name="index-GCM-2"></a>
 <p>This can be seen with another example, averaging a global surface
 temperature field with <code>ncwa</code>.
 The input contains a single-precision global temperature field
@@ -7868,7 +8572,7 @@ It means that the global mean temperature changes scientists are looking
 for are comparable in size to the numerical artifacts produced by the
 averaging procedure. 
 </p>
-<a name="index-rounding"></a>
+<a name="index-rounding-1"></a>
 <a name="index-random-walk"></a>
 <p>Why are the single-precision numerical artifacts so large?
 Each global average is the result of multiplying almost 15,000 elements
@@ -7878,7 +8582,7 @@ Thus about 50,000 single-precision floating point operations caused
 the loss of two to three significant digits of precision.
 The net error of a series of independent rounding errors is a random
 walk phenomena
-<a name="DOCF47" href="#FOOT47"><sup>47</sup></a>.
+<a name="DOCF50" href="#FOOT50"><sup>50</sup></a>.
 Successive rounding errors displace the answer further from the truth.
 An ensemble of such averages will, on average, have no net bias.
 In other words, the expectation value of a series of <acronym>IEEE</acronym>
@@ -7988,10 +8692,10 @@ Please let us know what you think of the selected defaults and options.
 <a name="Manual-type-conversion"></a>
 <div class="header">
 <p>
-Previous: <a href="#Promoting-Single_002dprecision-to-Double" accesskey="p" rel="previous">Promoting Single-precision to Double</a>, Up: <a href="#Type-Conversion" accesskey="u" rel="up">Type Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Promoting-Single_002dprecision-to-Double" accesskey="p" rel="prev">Promoting Single-precision to Double</a>, Up: <a href="#Type-Conversion" accesskey="u" rel="up">Type Conversion</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Manual-type-conversion-1"></a>
-<h4 class="subsection">3.33.3 Manual type conversion</h4>
+<h4 class="subsection">3.34.3 Manual type conversion</h4>
 <a name="index-ncap2-2"></a>
 <p><code>ncap2</code> provides intrinsic functions for performing manual type
 conversions.
@@ -8008,10 +8712,10 @@ external type <code>NC_DOUBLE</code> (a C-type <code>double</code>).
 <a name="Batch-Mode"></a>
 <div class="header">
 <p>
-Next: <a href="#History-Attribute" accesskey="n" rel="next">History Attribute</a>, Previous: <a href="#Type-Conversion" accesskey="p" rel="previous">Type Conversion</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#History-Attribute" accesskey="n" rel="next">History Attribute</a>, Previous: <a href="#Type-Conversion" accesskey="p" rel="prev">Type Conversion</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Batch-Mode-1"></a>
-<h3 class="section">3.34 Batch Mode</h3>
+<h3 class="section">3.35 Batch Mode</h3>
 <a name="index-batch-mode"></a>
 <a name="index-overwriting-files-1"></a>
 <a name="index-appending-to-files-1"></a>
@@ -8051,10 +8755,10 @@ already contain the appended dimensions.
 <a name="History-Attribute"></a>
 <div class="header">
 <p>
-Next: <a href="#File-List-Attributes" accesskey="n" rel="next">File List Attributes</a>, Previous: <a href="#Batch-Mode" accesskey="p" rel="previous">Batch Mode</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#File-List-Attributes" accesskey="n" rel="next">File List Attributes</a>, Previous: <a href="#Batch-Mode" accesskey="p" rel="prev">Batch Mode</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="History-Attribute-1"></a>
-<h3 class="section">3.35 History Attribute</h3>
+<h3 class="section">3.36 History Attribute</h3>
 <a name="index-history-2"></a>
 <a name="index-timestamp"></a>
 <a name="index-global-attributes-1"></a>
@@ -8101,10 +8805,10 @@ Note that the ‘<samp>-h</samp>’ switch also turns off writing the
 <a name="File-List-Attributes"></a>
 <div class="header">
 <p>
-Next: <a href="#CF-Conventions" accesskey="n" rel="next">CF Conventions</a>, Previous: <a href="#History-Attribute" accesskey="p" rel="previous">History Attribute</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#CF-Conventions" accesskey="n" rel="next">CF Conventions</a>, Previous: <a href="#History-Attribute" accesskey="p" rel="prev">History Attribute</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="File-List-Attributes-1"></a>
-<h3 class="section">3.36 File List Attributes</h3>
+<h3 class="section">3.37 File List Attributes</h3>
 <a name="index-nco_005finput_005ffile_005flist-1"></a>
 <a name="index-nco_005finput_005ffile_005fnumber-1"></a>
 <a name="index-stdin-1"></a>
@@ -8155,11 +8859,11 @@ may amount to many thousands of filenames in a metadata attribute.
 <a name="CF-Conventions"></a>
 <div class="header">
 <p>
-Next: <a href="#ARM-Conventions" accesskey="n" rel="next">ARM Conventions</a>, Previous: <a href="#File-List-Attributes" accesskey="p" rel="previous">File List Attributes</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ARM-Conventions" accesskey="n" rel="next">ARM Conventions</a>, Previous: <a href="#File-List-Attributes" accesskey="p" rel="prev">File List Attributes</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="CF-Conventions-1"></a>
-<h3 class="section">3.37 <acronym>CF</acronym> Conventions</h3>
-<a name="index-CF-conventions-3"></a>
+<h3 class="section">3.38 <acronym>CF</acronym> Conventions</h3>
+<a name="index-CF-conventions-4"></a>
 <a name="index-CCSM-conventions"></a>
 <a name="index-UDUnits-2"></a>
 <a name="index-ORO"></a>
@@ -8194,10 +8898,10 @@ Skip this section if you never work with <acronym>CF</acronym> metadata.
 <p>The latest <acronym>CF</acronym> netCDF conventions are described 
 <a href="http://cfconventions.org/1.6.html">here</a>. 
 Most <acronym>CF</acronym> netCDF conventions are transparent to <acronym>NCO</acronym>  
-<a name="DOCF48" href="#FOOT48"><sup>48</sup></a>.
+<a name="DOCF51" href="#FOOT51"><sup>51</sup></a>.
 There are no known pitfalls associated with using any <acronym>NCO</acronym>
 operator on files adhering to these conventions
-<a name="DOCF49" href="#FOOT49"><sup>49</sup></a>.
+<a name="DOCF52" href="#FOOT52"><sup>52</sup></a>.
 However, to facilitate maximum user friendliness, <acronym>NCO</acronym> applies 
 special rules to certain variables in <acronym>CF</acronym> files.
 The special functions are not required by the <acronym>CF</acronym> netCDF
@@ -8258,7 +8962,7 @@ For example rename the variables first with <code>ncrename</code>,
 or alter the <code>Conventions</code> attribute.
 </p>
 <a name="cnv_CF_bnd"></a> <!-- http://nco.sf.net/nco.html#cnv_CF_bnd -->
-<a name="bnd"></a> <!-- http://nco.sf.net/nco.html#bnd --><a name="index-bounds"></a>
+<a name="bnd"></a> <!-- http://nco.sf.net/nco.html#bnd --><a name="index-bounds-attribute-1"></a>
 <a name="index-bounds-convention"></a>
 <p>As of <acronym>NCO</acronym> version 4.0.8 (April, 2011), <acronym>NCO</acronym> 
 supports the <acronym>CF</acronym> <code>bounds</code> convention for cell boundaries
@@ -8278,7 +8982,7 @@ Bounds are subject to the user-specified override switches
 <a href="#Subsetting-Coordinate-Variables">Subsetting Coordinate Variables</a>. 
 </p>
 <a name="cnv_CF_ncl"></a> <!-- http://nco.sf.net/nco.html#cnv_CF_ncl -->
-<a name="ncl"></a> <!-- http://nco.sf.net/nco.html#ncl --><a name="index-ancillary_005fvariables"></a>
+<a name="ncl"></a> <!-- http://nco.sf.net/nco.html#ncl --><a name="index-ancillary_005fvariables-attribute"></a>
 <a name="index-ancillary-variables-convention"></a>
 <p>As of <acronym>NCO</acronym> version 4.4.5 (July, 2014), <acronym>NCO</acronym> 
 supports the <acronym>CF</acronym> <code>ancillary_variables</code> convention for 
@@ -8358,10 +9062,10 @@ These options are only available in the operators <code>ncwa</code> and
 <a name="ARM-Conventions"></a>
 <div class="header">
 <p>
-Next: <a href="#Operator-Version" accesskey="n" rel="next">Operator Version</a>, Previous: <a href="#CF-Conventions" accesskey="p" rel="previous">CF Conventions</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Operator-Version" accesskey="n" rel="next">Operator Version</a>, Previous: <a href="#CF-Conventions" accesskey="p" rel="prev">CF Conventions</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ARM-Conventions-1"></a>
-<h3 class="section">3.38 <acronym>ARM</acronym> Conventions</h3>
+<h3 class="section">3.39 <acronym>ARM</acronym> Conventions</h3>
 <a name="index-ARM-conventions"></a>
 <a name="index-time_005foffset"></a>
 <a name="index-base_005ftime"></a>
@@ -8412,10 +9116,10 @@ whenever these <acronym>ARM</acronym>-specific procedures are executed.
 <a name="Operator-Version"></a>
 <div class="header">
 <p>
-Previous: <a href="#ARM-Conventions" accesskey="p" rel="previous">ARM Conventions</a>, Up: <a href="#Common-features" accesskey="u" rel="up">Common features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#ARM-Conventions" accesskey="p" rel="prev">ARM Conventions</a>, Up: <a href="#Shared-features" accesskey="u" rel="up">Shared features</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Operator-Version-1"></a>
-<h3 class="section">3.39 Operator Version</h3>
+<h3 class="section">3.40 Operator Version</h3>
 <a name="index-version"></a>
 <a name="index-RCS"></a>
 <a name="index-_002dr-2"></a>
@@ -8445,13 +9149,13 @@ ncks version 20090918</samp>’.
 This tells you that <code>ncks</code> contains all patches up to version 
 <code>3.9.5</code>, which dates from May 11<!-- /@w -->, 2008.
 <a name="rfr"></a> <!-- http://nco.sf.net/nco.html#rfr --></p><hr>
-<a name="Operator-Reference-Manual"></a>
+<a name="Reference-Manual"></a>
 <div class="header">
 <p>
-Next: <a href="#Contributing" accesskey="n" rel="next">Contributing</a>, Previous: <a href="#Common-features" accesskey="p" rel="previous">Common features</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Contributing" accesskey="n" rel="next">Contributing</a>, Previous: <a href="#Shared-features" accesskey="p" rel="prev">Shared features</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
-<a name="Operator-Reference-Manual-1"></a>
-<h2 class="chapter">4 Operator Reference Manual</h2>
+<a name="Reference-Manual-1"></a>
+<h2 class="chapter">4 Reference Manual</h2>
 
 <p>This chapter presents reference pages for each of the operators
 individually. 
@@ -8459,7 +9163,7 @@ The operators are presented in alphabetical order.
 <a name="index-command-line-switches-3"></a>
 All valid command line switches are included in the syntax statement.
 Recall that descriptions of many of these command line switches are
-provided only in <a href="#Common-features">Common features</a>, to avoid redundancy.
+provided only in <a href="#Shared-features">Shared features</a>, to avoid redundancy.
 Only options specific to, or most useful with, a particular operator are 
 described in any detail in the sections below.  
 </p>
@@ -8495,7 +9199,7 @@ described in any detail in the sections below.
 <a name="ncap2-netCDF-Arithmetic-Processor"></a>
 <div class="header">
 <p>
-Next: <a href="#ncatted-netCDF-Attribute-Editor" accesskey="n" rel="next">ncatted netCDF Attribute Editor</a>, Previous: <a href="#Operator-Reference-Manual" accesskey="p" rel="previous">Operator Reference Manual</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncatted-netCDF-Attribute-Editor" accesskey="n" rel="next">ncatted netCDF Attribute Editor</a>, Previous: <a href="#Reference-Manual" accesskey="p" rel="prev">Reference Manual</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncap2-netCDF-Arithmetic-Processor-1"></a>
 <h3 class="section">4.1 <code>ncap2</code> netCDF Arithmetic Processor</h3>
@@ -8529,7 +9233,7 @@ in-depth examples of <code>ncap2</code> solutions to complex problems.
 <p>DESCRIPTION
 </p>
 <p><code>ncap2</code> arithmetically processes netCDF files
-<a name="DOCF50" href="#FOOT50"><sup>50</sup></a>.
+<a name="DOCF53" href="#FOOT53"><sup>53</sup></a>.
 <a name="index-script-file"></a>
 <a name="index-_002d_002dscript_002dfile"></a>
 <a name="index-_002d_002dfl_005fspt"></a>
@@ -8637,7 +9341,7 @@ using left hand casting.
 <a name="Syntax-of-ncap2-statements"></a>
 <div class="header">
 <p>
-Next: <a href="#Expressions" accesskey="n" rel="next">Expressions</a>, Previous: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="p" rel="previous">ncap2 netCDF Arithmetic Processor</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Expressions" accesskey="n" rel="next">Expressions</a>, Previous: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="p" rel="prev">ncap2 netCDF Arithmetic Processor</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Syntax-of-ncap2-statements-1"></a>
 <h4 class="subsection">4.1.1 Syntax of <code>ncap2</code> statements</h4>
@@ -8699,7 +9403,7 @@ variable name.
 <a name="Expressions"></a>
 <div class="header">
 <p>
-Next: <a href="#Dimensions" accesskey="n" rel="next">Dimensions</a>, Previous: <a href="#Syntax-of-ncap2-statements" accesskey="p" rel="previous">Syntax of ncap2 statements</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Dimensions" accesskey="n" rel="next">Dimensions</a>, Previous: <a href="#Syntax-of-ncap2-statements" accesskey="p" rel="prev">Syntax of ncap2 statements</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="index-expressions"></a>
 <a name="Expressions-1"></a>
@@ -8900,7 +9604,7 @@ RDM2=RDM <<  90s  // 1, 9, 36, 84, 90, 90, 84, 36, 9, 1 int
 <a name="Dimensions"></a>
 <div class="header">
 <p>
-Next: <a href="#Left-hand-casting" accesskey="n" rel="next">Left hand casting</a>, Previous: <a href="#Expressions" accesskey="p" rel="previous">Expressions</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Left-hand-casting" accesskey="n" rel="next">Left hand casting</a>, Previous: <a href="#Expressions" accesskey="p" rel="prev">Expressions</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Dimensions-1"></a>
 <h4 class="subsection">4.1.3 Dimensions</h4>
@@ -8908,7 +9612,11 @@ Next: <a href="#Left-hand-casting" accesskey="n" rel="next">Left hand casting</a
 <a name="index-defdim_0028_0029"></a>
 <p>Dimensions are defined in Output using the <code>defdim()</code> function.
 </p><div class="example">
-<pre class="example">defdim("cnt",10);
+<pre class="example">defdim("cnt",10); # Dimension size is fixed by default
+defdim("cnt",10,NC_UNLIMITED); # Dimension is unlimited (record dimension)
+defdim("cnt",10,0); # Dimension is unlimited (record dimension)
+defdim("cnt",10,1); # Dimension size is fixed
+defdim("cnt",10,737); # All non-zero values indicate dimension size is fixed
 </pre></div>
 
 <p>This dimension name must then be prefixed with a dollar-sign ‘<samp>$</samp>’
@@ -8968,7 +9676,7 @@ It is not possible to manually define in Output any dimensions that exist in Inp
 <a name="Left-hand-casting"></a>
 <div class="header">
 <p>
-Next: <a href="#Arrays-and-hyperslabs" accesskey="n" rel="next">Arrays and hyperslabs</a>, Previous: <a href="#Dimensions" accesskey="p" rel="previous">Dimensions</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Arrays-and-hyperslabs" accesskey="n" rel="next">Arrays and hyperslabs</a>, Previous: <a href="#Dimensions" accesskey="p" rel="prev">Dimensions</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Left-hand-casting-1"></a>
 <h4 class="subsection">4.1.4 Left hand casting</h4>
@@ -9034,7 +9742,7 @@ coordinate system is easy with left hand casting.
 <a name="Arrays-and-hyperslabs"></a>
 <div class="header">
 <p>
-Next: <a href="#Attributes" accesskey="n" rel="next">Attributes</a>, Previous: <a href="#Left-hand-casting" accesskey="p" rel="previous">Left hand casting</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Attributes" accesskey="n" rel="next">Attributes</a>, Previous: <a href="#Left-hand-casting" accesskey="p" rel="prev">Left hand casting</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Arrays-and-hyperslabs-1"></a>
 <h4 class="subsection">4.1.5 Arrays and hyperslabs</h4>
@@ -9231,7 +9939,7 @@ three_dmn_var_prm=
 <a name="Attributes"></a>
 <div class="header">
 <p>
-Next: <a href="#Number-literals" accesskey="n" rel="next">Number literals</a>, Previous: <a href="#Arrays-and-hyperslabs" accesskey="p" rel="previous">Arrays and hyperslabs</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Number-literals" accesskey="n" rel="next">Number literals</a>, Previous: <a href="#Arrays-and-hyperslabs" accesskey="p" rel="prev">Arrays and hyperslabs</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Attributes-1"></a>
 <h4 class="subsection">4.1.6 Attributes</h4>
@@ -9303,7 +10011,7 @@ th_min=1.0 + 2*three_dmn_var_dbl.min($time);
 <a name="Number-literals"></a>
 <div class="header">
 <p>
-Next: <a href="#if-statement" accesskey="n" rel="next">if statement</a>, Previous: <a href="#Attributes" accesskey="p" rel="previous">Attributes</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#if-statement" accesskey="n" rel="next">if statement</a>, Previous: <a href="#Attributes" accesskey="p" rel="prev">Attributes</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Number-literals-1"></a>
 <h4 class="subsection">4.1.7 Number literals</h4>
@@ -9377,7 +10085,7 @@ n6 at units="kelvin" // attribute will be type @code{NC_CHAR}
 <a name="if-statement"></a>
 <div class="header">
 <p>
-Next: <a href="#print-statement" accesskey="n" rel="next">print statement</a>, Previous: <a href="#Number-literals" accesskey="p" rel="previous">Number literals</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#print-statement" accesskey="n" rel="next">print statement</a>, Previous: <a href="#Number-literals" accesskey="p" rel="prev">Number literals</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="if-statement-1"></a>
 <h4 class="subsection">4.1.8 if statement</h4>
@@ -9457,7 +10165,7 @@ th_nw=(three_dmn_var_sht >= 0 ? three_dmn_var_sht.uint() : \
 <a name="print-statement"></a>
 <div class="header">
 <p>
-Next: <a href="#Missing-values-ncap2" accesskey="n" rel="next">Missing values ncap2</a>, Previous: <a href="#if-statement" accesskey="p" rel="previous">if statement</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Missing-values-ncap2" accesskey="n" rel="next">Missing values ncap2</a>, Previous: <a href="#if-statement" accesskey="p" rel="prev">if statement</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="print-statement-1"></a>
 <h4 class="subsection">4.1.9 print statement</h4>
@@ -9497,7 +10205,7 @@ This function is 	  monotonic
 <a name="Missing-values-ncap2"></a>
 <div class="header">
 <p>
-Next: <a href="#Methods-and-functions" accesskey="n" rel="next">Methods and functions</a>, Previous: <a href="#print-statement" accesskey="p" rel="previous">print statement</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Methods-and-functions" accesskey="n" rel="next">Methods and functions</a>, Previous: <a href="#print-statement" accesskey="p" rel="prev">print statement</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Missing-values-ncap2-1"></a>
 <h4 class="subsection">4.1.10 Missing values ncap2</h4>
@@ -9607,7 +10315,7 @@ print(three_dmn_var_dbl);
 <a name="Methods-and-functions"></a>
 <div class="header">
 <p>
-Next: <a href="#RAM-variables" accesskey="n" rel="next">RAM variables</a>, Previous: <a href="#Missing-values-ncap2" accesskey="p" rel="previous">Missing values ncap2</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#RAM-variables" accesskey="n" rel="next">RAM variables</a>, Previous: <a href="#Missing-values-ncap2" accesskey="p" rel="prev">Missing values ncap2</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Methods-and-functions-1"></a>
 <h4 class="subsection">4.1.11 Methods and functions</h4>
@@ -9656,6 +10364,18 @@ These methods mirror the averaging types available in <code>ncwa</code>. The arg
 <dd><a name="index-min_0028_0029"></a>
 <p>Minimum value
 </p></dd>
+<dt><code>mabs()</code></dt>
+<dd><a name="index-mabs_0028_0029"></a>
+<p>Maximum absolute value
+</p></dd>
+<dt><code>mebs()</code></dt>
+<dd><a name="index-mebs_0028_0029"></a>
+<p>Mean absolute value
+</p></dd>
+<dt><code>mibs()</code></dt>
+<dd><a name="index-mibs_0028_0029"></a>
+<p>Minimum absolute value
+</p></dd>
 <dt><code>rms()</code></dt>
 <dd><p>Root-mean-square (normalize by <var>N</var>)
 </p></dd>
@@ -9763,7 +10483,7 @@ lat_2D_rrg_new=0,90,-30,30,-30,30,-90,0
 
 <br>
 <p><strong>Type Conversion Methods <br></strong>
-These methods allow <code>ncap2</code> to convert variables and attributes to the different netcdf types. For more details on automatic and manual type conversion see (see <a href="#Type-Conversion">Type Conversion</a>). You can only use the new netCDF4 types if you have compiled/links <acronym>NCO</acronym> with the netCDF4 library and the Output file is HDF5.
+These methods allow <code>ncap2</code> to convert variables and attributes to the different netcdf types. For more details on automatic and manual type conversion see (see <a href="#Type-Conversion">Type Conversion</a>). You may only use the new netCDF4 types if you have compiled/links <acronym>NCO</acronym> with the netCDF4 library and the Output file is HDF5.
 </p>
 <dl compact="compact">
 <dt><code><strong>netCDF3/4 Types</strong></code></dt>
@@ -9836,7 +10556,7 @@ n3=1/(three_dmn_var_dbl.cos().pow(2))-tan(three_dmn_var_dbl)^2; // n3 type doubl
 <a name="RAM-variables"></a>
 <div class="header">
 <p>
-Next: <a href="#Where-statement" accesskey="n" rel="next">Where statement</a>, Previous: <a href="#Methods-and-functions" accesskey="p" rel="previous">Methods and functions</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Where-statement" accesskey="n" rel="next">Where statement</a>, Previous: <a href="#Methods-and-functions" accesskey="p" rel="prev">Methods and functions</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="RAM-variables-1"></a>
 <h4 class="subsection">4.1.12 <acronym>RAM</acronym> variables</h4>
@@ -9872,7 +10592,7 @@ temp_avg.ram_write();           // Write Variable to output
 <a name="Where-statement"></a>
 <div class="header">
 <p>
-Next: <a href="#Loops" accesskey="n" rel="next">Loops</a>, Previous: <a href="#RAM-variables" accesskey="p" rel="previous">RAM variables</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Loops" accesskey="n" rel="next">Loops</a>, Previous: <a href="#RAM-variables" accesskey="p" rel="prev">RAM variables</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Where-statement-1"></a>
 <h4 class="subsection">4.1.13 Where statement</h4>
@@ -10014,7 +10734,7 @@ We plan to extend such <acronym>SLD</acronym> features to more operators soon.
 <a name="Loops"></a>
 <div class="header">
 <p>
-Next: <a href="#Include-files" accesskey="n" rel="next">Include files</a>, Previous: <a href="#Where-statement" accesskey="p" rel="previous">Where statement</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Include-files" accesskey="n" rel="next">Include files</a>, Previous: <a href="#Where-statement" accesskey="p" rel="prev">Where statement</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Loops-1"></a>
 <h4 class="subsection">4.1.14 Loops</h4>
@@ -10064,7 +10784,7 @@ print("Total of odd elements ");print(sum);print("\n");
 <a name="Include-files"></a>
 <div class="header">
 <p>
-Next: <a href="#Sort-methods" accesskey="n" rel="next">Sort methods</a>, Previous: <a href="#Loops" accesskey="p" rel="previous">Loops</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Sort-methods" accesskey="n" rel="next">Sort methods</a>, Previous: <a href="#Loops" accesskey="p" rel="prev">Loops</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Include-files-1"></a>
 <h4 class="subsection">4.1.15 Include files</h4>
@@ -10092,7 +10812,7 @@ e=2.71828; // Regular (disk) variable, written to output
 <a name="Sort-methods"></a>
 <div class="header">
 <p>
-Next: <a href="#Irregular-grids" accesskey="n" rel="next">Irregular grids</a>, Previous: <a href="#Include-files" accesskey="p" rel="previous">Include files</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Irregular-grids" accesskey="n" rel="next">Irregular grids</a>, Previous: <a href="#Include-files" accesskey="p" rel="prev">Include files</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="sort-methods"></a>
 <h4 class="subsection">4.1.16 <code>sort</code> methods</h4>
@@ -10369,7 +11089,7 @@ ncap2 -O -v -S ~/ncap2_foo.nco ~/nco/data/in.nc ~/foo.nc
 <a name="Irregular-grids"></a>
 <div class="header">
 <p>
-Next: <a href="#Bilinear-interpolation" accesskey="n" rel="next">Bilinear interpolation</a>, Previous: <a href="#Sort-methods" accesskey="p" rel="previous">Sort methods</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Bilinear-interpolation" accesskey="n" rel="next">Bilinear interpolation</a>, Previous: <a href="#Sort-methods" accesskey="p" rel="prev">Sort methods</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Irregular-Grids"></a>
 <h4 class="subsection">4.1.17 Irregular Grids</h4>
@@ -10502,7 +11222,7 @@ The mask procedure is identical for all <var>R</var>.
 <a name="Bilinear-interpolation"></a>
 <div class="header">
 <p>
-Next: <a href="#GSL-special-functions" accesskey="n" rel="next">GSL special functions</a>, Previous: <a href="#Irregular-grids" accesskey="p" rel="previous">Irregular grids</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#GSL-special-functions" accesskey="n" rel="next">GSL special functions</a>, Previous: <a href="#Irregular-grids" accesskey="p" rel="prev">Irregular grids</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Bilinear-interpolation-1"></a>
 <h4 class="subsection">4.1.18 Bilinear interpolation</h4>
@@ -10646,7 +11366,7 @@ print(T_out);
 <a name="GSL-special-functions"></a>
 <div class="header">
 <p>
-Next: <a href="#GSL-interpolation" accesskey="n" rel="next">GSL interpolation</a>, Previous: <a href="#Bilinear-interpolation" accesskey="p" rel="previous">Bilinear interpolation</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#GSL-interpolation" accesskey="n" rel="next">GSL interpolation</a>, Previous: <a href="#Bilinear-interpolation" accesskey="p" rel="prev">Bilinear interpolation</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="GSL-special-functions-1"></a>
 <h4 class="subsection">4.1.19 GSL special functions</h4>
@@ -10665,7 +11385,7 @@ build, use <code>ncap2 -f | grep ^gsl</code>.
 The <acronym>NCO</acronym> wrappers for <acronym>GSL</acronym> functions automatically
 call the error-handling version of the <acronym>GSL</acronym> function when
 available  
-<a name="DOCF51" href="#FOOT51"><sup>51</sup></a>.
+<a name="DOCF54" href="#FOOT54"><sup>54</sup></a>.
 This allows <acronym>NCO</acronym> to return a missing value when the
 <acronym>GSL</acronym> library encounters a domain error or a floating point 
 exception. 
@@ -11073,7 +11793,7 @@ prototypes look at the spreadsheet <strong>doc/nco_gsl.ods</strong>. <br> <br>
 <a name="GSL-interpolation"></a>
 <div class="header">
 <p>
-Next: <a href="#GSL-least_002dsquares-fitting" accesskey="n" rel="next">GSL least-squares fitting</a>, Previous: <a href="#GSL-special-functions" accesskey="p" rel="previous">GSL special functions</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#GSL-least_002dsquares-fitting" accesskey="n" rel="next">GSL least-squares fitting</a>, Previous: <a href="#GSL-special-functions" accesskey="p" rel="prev">GSL special functions</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="GSL-interpolation-1"></a>
 <h4 class="subsection">4.1.20 GSL interpolation</h4>
@@ -11125,7 +11845,7 @@ gsl_spline_integ()<br>
 <a name="GSL-least_002dsquares-fitting"></a>
 <div class="header">
 <p>
-Next: <a href="#GSL-statistics" accesskey="n" rel="next">GSL statistics</a>, Previous: <a href="#GSL-interpolation" accesskey="p" rel="previous">GSL interpolation</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#GSL-statistics" accesskey="n" rel="next">GSL statistics</a>, Previous: <a href="#GSL-interpolation" accesskey="p" rel="prev">GSL interpolation</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="GSL-least_002dsquares-fitting-1"></a>
 <h4 class="subsection">4.1.21 GSL least-squares fitting</h4>
@@ -11207,7 +11927,7 @@ print(yout);  // 3.18545454545 ,9.15636363636, ,12.1418181818 ,33.04
 <a name="GSL-statistics"></a>
 <div class="header">
 <p>
-Next: <a href="#GSL-random-number-generation" accesskey="n" rel="next">GSL random number generation</a>, Previous: <a href="#GSL-least_002dsquares-fitting" accesskey="p" rel="previous">GSL least-squares fitting</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#GSL-random-number-generation" accesskey="n" rel="next">GSL random number generation</a>, Previous: <a href="#GSL-least_002dsquares-fitting" accesskey="p" rel="prev">GSL least-squares fitting</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="GSL-statistics-1"></a>
 <h4 class="subsection">4.1.22 GSL statistics</h4>
@@ -11305,21 +12025,21 @@ print(dmin);print(dmax);
 <a name="GSL-random-number-generation"></a>
 <div class="header">
 <p>
-Next: <a href="#Examples-ncap2" accesskey="n" rel="next">Examples ncap2</a>, Previous: <a href="#GSL-statistics" accesskey="p" rel="previous">GSL statistics</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Examples-ncap2" accesskey="n" rel="next">Examples ncap2</a>, Previous: <a href="#GSL-statistics" accesskey="p" rel="prev">GSL statistics</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="GSL-random-number-generation-1"></a>
 <h4 class="subsection">4.1.23 GSL random number generation</h4>
-<p>The <acronym>GSL</acronym> library has a large number of random number generators. In addition there are a large set of functions for turning uniform random numbers into discrete or continuous probabilty distributions. The random number generator algorithms vary in terms of quality numbers output, speed of execution and maximium number output. For more information see the <acronym>GSL</acronym> documentation. The algorithm and seed are set via environment variables, these are picked u [...]
+<p>The <acronym>GSL</acronym> library has a large number of random number generators. In addition there are a large set of functions for turning uniform random numbers into discrete or continuous probabilty distributions. The random number generator algorithms vary in terms of quality numbers output, speed of execution and maximum number output. For more information see the <acronym>GSL</acronym> documentation. The algorithm and seed are set via environment variables, these are picked up [...]
 </p>
 <p><strong>Setup</strong> <br>  
 The number algorithm is set by the environment variable <code>GSL_RNG_TYPE</code>. If this variable isn’t set then the default rng algorithm is gsl_rng_19937. The seed is set with the environment variable <code>GSL_RNG_SEED</code>. The following wrapper functions in ncap2 provide information about the chosen algorithm. <br> 
 </p>
 <dl compact="compact">
 <dt><code>gsl_rng_min()</code></dt>
-<dd><p>the minimium value returned by the rng algorithm.
+<dd><p>the minimum value returned by the rng algorithm.
 </p></dd>
 <dt><code>gsl_rng_max()</code></dt>
-<dd><p>the maximium value returned by the rng algorithm. 
+<dd><p>the maximum value returned by the rng algorithm. 
 </p></dd>
 </dl>
 
@@ -11329,7 +12049,7 @@ The number algorithm is set by the environment variable <code>GSL_RNG_TYPE</code
 <dd><p>This function returns var_in with integers from the chosen rng algorithm. The min and max values depend uoon the chosen rng algorthm.
 </p></dd>
 <dt><code>gsl_rng_uniform_int(var_in)</code></dt>
-<dd><p>This function returns var_in with random integers from 0 to n-1. The value n must be less than or equal to the maximium value of the chosen rng algorithm. 
+<dd><p>This function returns var_in with random integers from 0 to n-1. The value n must be less than or equal to the maximum value of the chosen rng algorithm. 
 </p></dd>
 <dt><code>gsl_rng_uniform(var_in)</code></dt>
 <dd><p>This function returns var_in with double-precision numbers in the range [0.0,1). The range includes 0.0 and excludes 1.0.
@@ -11354,14 +12074,14 @@ a2 = 1, 1, 6, 9, 11, 13, 13, 15, 16, 19 ;
 
 </pre></div>
 
-<p>The following example produces an <code>ncap2</code> runtime error. This is because the chose rng algorithm has a maximium value greater than <code> NC_MAX_INT=2147483647 </code>; the wrapper functions to <code>gsl_rng_get()</code> and <code>gsl_rng_uniform_int()</code> return variable of type <code>NC_INT</code>. Please be aware of this when using random number distribution functions functions from the <acronym>GSL</acronym> library which return <code>unsigned int</code>. Examples of [...]
+<p>The following example produces an <code>ncap2</code> runtime error. This is because the chose rng algorithm has a maximum value greater than <code> NC_MAX_INT=2147483647 </code>; the wrapper functions to <code>gsl_rng_get()</code> and <code>gsl_rng_uniform_int()</code> return variable of type <code>NC_INT</code>. Please be aware of this when using random number distribution functions functions from the <acronym>GSL</acronym> library which return <code>unsigned int</code>. Examples of  [...]
 </p>
 <div class="example">
 <pre class="example">export GSL_RNG_TYPE=mt19937
 ncap2 -v -O -s 'a1[time]=0;a2=gsl_rng_get(a1);' in.nc foo.nc 
 </pre></div>
 
-<p>To find the maximium value of the chosen rng algorithm use the following code snippet.
+<p>To find the maximum value of the chosen rng algorithm use the following code snippet.
 </p><div class="example">
 <pre class="example">ncap2 -v -O -s 'rng_max=gsl_rng_max();print(rng_max)' in.nc foo.nc
 </pre></div>
@@ -11410,7 +12130,7 @@ print(b6_avg);
 <a name="Examples-ncap2"></a>
 <div class="header">
 <p>
-Next: <a href="#Intrinsic-mathematical-methods" accesskey="n" rel="next">Intrinsic mathematical methods</a>, Previous: <a href="#GSL-random-number-generation" accesskey="p" rel="previous">GSL random number generation</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Intrinsic-mathematical-methods" accesskey="n" rel="next">Intrinsic mathematical methods</a>, Previous: <a href="#GSL-random-number-generation" accesskey="p" rel="prev">GSL random number generation</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Examples-ncap2-1"></a>
 <h4 class="subsection">4.1.24 Examples ncap2</h4>
@@ -11610,7 +12330,7 @@ Knowing when to use <code>ncwa -a time</code> rather than the default
 <a name="Intrinsic-mathematical-methods"></a>
 <div class="header">
 <p>
-Next: <a href="#Operator-precedence-and-associativity" accesskey="n" rel="next">Operator precedence and associativity</a>, Previous: <a href="#Examples-ncap2" accesskey="p" rel="previous">Examples ncap2</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Operator-precedence-and-associativity" accesskey="n" rel="next">Operator precedence and associativity</a>, Previous: <a href="#Examples-ncap2" accesskey="p" rel="prev">Examples ncap2</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Intrinsic-mathematical-methods-1"></a>
 <h4 class="subsection">4.1.25 Intrinsic mathematical methods</h4>
@@ -11906,7 +12626,7 @@ and are indicated with an asterisk
 <a name="index-double_002dprecision"></a>
 <a name="index-long-double"></a>
 <a name="index-NC_005fDOUBLE"></a>
-<a name="DOCF52" href="#FOOT52"><sup>52</sup></a>.
+<a name="DOCF55" href="#FOOT55"><sup>55</sup></a>.
 and are indicated with an asterisk. 
 <a name="index-_002df"></a>
 <a name="index-_002d_002dprn_005ffnc_005ftbl"></a>
@@ -11914,7 +12634,7 @@ and are indicated with an asterisk.
 Use the ‘<samp>-f</samp>’ (or ‘<samp>fnc_tbl</samp>’ or ‘<samp>prn_fnc_tbl</samp>’) switch
 to print a complete list of functions supported on your platform.
 <a name="index-Linux"></a>
-<a name="DOCF53" href="#FOOT53"><sup>53</sup></a>
+<a name="DOCF56" href="#FOOT56"><sup>56</sup></a>
 </p>
 <a name="xmp_ncap"></a> <!-- http://nco.sf.net/nco.html#xmp_ncap -->
 <a name="xmp_ncap2"></a> <!-- http://nco.sf.net/nco.html#xmp_ncap2 -->
@@ -11923,7 +12643,7 @@ to print a complete list of functions supported on your platform.
 <a name="Operator-precedence-and-associativity"></a>
 <div class="header">
 <p>
-Next: <a href="#ID-Quoting" accesskey="n" rel="next">ID Quoting</a>, Previous: <a href="#Intrinsic-mathematical-methods" accesskey="p" rel="previous">Intrinsic mathematical methods</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ID-Quoting" accesskey="n" rel="next">ID Quoting</a>, Previous: <a href="#Intrinsic-mathematical-methods" accesskey="p" rel="prev">Intrinsic mathematical methods</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Operator-precedence-and-associativity-1"></a>
 <h4 class="subsection">4.1.26 Operator precedence and associativity</h4>
@@ -11968,7 +12688,7 @@ Next: <a href="#ID-Quoting" accesskey="n" rel="next">ID Quoting</a>, Previous: <
 <a name="ID-Quoting"></a>
 <div class="header">
 <p>
-Previous: <a href="#Operator-precedence-and-associativity" accesskey="p" rel="previous">Operator precedence and associativity</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Operator-precedence-and-associativity" accesskey="p" rel="prev">Operator precedence and associativity</a>, Up: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="u" rel="up">ncap2 netCDF Arithmetic Processor</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ID-Quoting-1"></a>
 <h4 class="subsection">4.1.27 ID Quoting</h4>
@@ -12040,7 +12760,7 @@ netcdf-4.0 Final  2008/08/28<br>
 <a name="ncatted-netCDF-Attribute-Editor"></a>
 <div class="header">
 <p>
-Next: <a href="#ncbo-netCDF-Binary-Operator" accesskey="n" rel="next">ncbo netCDF Binary Operator</a>, Previous: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="p" rel="previous">ncap2 netCDF Arithmetic Processor</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncbo-netCDF-Binary-Operator" accesskey="n" rel="next">ncbo netCDF Binary Operator</a>, Previous: <a href="#ncap2-netCDF-Arithmetic-Processor" accesskey="p" rel="prev">ncap2 netCDF Arithmetic Processor</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncatted-netCDF-Attribute-Editor-1"></a>
 <h3 class="section">4.2 <code>ncatted</code> netCDF Attribute Editor</h3>
@@ -12110,8 +12830,12 @@ See <a href="#Missing-Values">Missing Values</a>, for more information.
 <p>To master <code>ncatted</code> one must understand the meaning of the
 structure that describes the attribute modification, <var>att_dsc</var> 
 specified by the required option ‘<samp>-a</samp>’ or ‘<samp>--attribute</samp>’. 
-Each <var>att_dsc</var> contains five elements, which makes using
-<code>ncatted</code> somewhat complicated, yet powerful.
+This option is repeatable and may be used multiple time in a single
+<code>ncatted</code> invocation to increase the efficiency of altering
+multiple attributes.
+Each <var>att_dsc</var> contains five elements.
+This makes using <code>ncatted</code> somewhat complicated, though
+powerful. 
 The <var>att_dsc</var> fields are in the following order:<br> 
 </p>
 <p><var>att_dsc</var> = <var>att_nm</var>, <var>var_nm</var>, <var>mode</var>, <var>att_type</var>,
@@ -12153,8 +12877,7 @@ arguments.
 The description of these arguments follows in their order of
 appearance. 
 </p>
-<p>The value of <var>att_nm</var> is the name of the attribute you want to
-edit. 
+<p>The value of <var>att_nm</var> is the name of the attribute to edit. 
 This meaning of this should be clear to all <code>ncatted</code> users.
 Recall, as mentioned above, that <var>var_nm</var> (but not <var>att_nm</var>) may
 be specified as a regular expression. 
@@ -12207,7 +12930,7 @@ effect.
 Create variable <var>var_nm</var> attribute <var>att_nm</var> with <var>att_val</var>
 if <var>att_nm</var> does not yet exist.  
 If <var>var_nm</var> already has an attribute <var>att_nm</var>, there is no
-effect. 
+effect, so the existing attribute is preserved without change.
 </p></dd>
 <dt><code>d</code></dt>
 <dd><p><em>Delete</em>.
@@ -12419,7 +13142,7 @@ from whatever it currently is to “temperature”:
 <p><acronym>NCO</acronym> arithmetic operators may not work as expected on
 <acronym>IEEE</acronym> NaN (short for Not-a-Number) and NaN-like numbers such as
 positive infinity and negative infinity
-<a name="DOCF54" href="#FOOT54"><sup>54</sup></a>. 
+<a name="DOCF57" href="#FOOT57"><sup>57</sup></a>. 
 One way to work-around this problem is to change <acronym>IEEE</acronym> NaNs to
 normal missing values. 
 As of <acronym>NCO</acronym> 4.1.0 (March, 2012), <code>ncatted</code> works with
@@ -12538,7 +13261,7 @@ omitted in batch scripts.
 <a name="ncbo-netCDF-Binary-Operator"></a>
 <div class="header">
 <p>
-Next: <a href="#nces-netCDF-Ensemble-Statistics" accesskey="n" rel="next">nces netCDF Ensemble Statistics</a>, Previous: <a href="#ncatted-netCDF-Attribute-Editor" accesskey="p" rel="previous">ncatted netCDF Attribute Editor</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#nces-netCDF-Ensemble-Statistics" accesskey="n" rel="next">nces netCDF Ensemble Statistics</a>, Previous: <a href="#ncatted-netCDF-Attribute-Editor" accesskey="p" rel="prev">ncatted netCDF Attribute Editor</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncbo-netCDF-Binary-Operator-1"></a>
 <h3 class="section">4.3 <code>ncbo</code> netCDF Binary Operator</h3>
@@ -12627,11 +13350,11 @@ Examples: ‘<samp>ncbo --op_typ=/ 1.nc 2.nc 3.nc</samp>’, ‘<sam
 i.e., ‘<samp>+</samp>’, ‘<samp>-</samp>’, ‘<samp>*</samp>’, and ‘<samp>/</samp>’<!-- /@w -->.
 Some of these single characters may have special meanings to the shell
 <a name="index-naked-characters"></a>
-<a name="DOCF55" href="#FOOT55"><sup>55</sup></a>.
+<a name="DOCF58" href="#FOOT58"><sup>58</sup></a>.
 <a name="index-Bash-shell"></a>
 Place these characters inside quotes to keep them from being interpreted 
 (globbed) by the shell
-<a name="DOCF56" href="#FOOT56"><sup>56</sup></a>. 
+<a name="DOCF59" href="#FOOT59"><sup>59</sup></a>. 
 <a name="index-globbing-4"></a>
 <a name="index-shell-4"></a>
 <a name="index-quotes-2"></a>
@@ -12676,12 +13399,12 @@ Should users or system adminitrators decide to activate them, the
 procedure is simple. 
 For example, to use ‘<samp>ncadd</samp>’ instead of ‘<samp>ncbo --op_typ=add</samp>’, 
 simply create a symbolic link from <code>ncbo</code> to <code>ncadd</code>
-<a name="DOCF57" href="#FOOT57"><sup>57</sup></a>.
+<a name="DOCF60" href="#FOOT60"><sup>60</sup></a>.
 The alternatate invocations supported for each operation type are listed
 above. 
 Alternatively, users may always define ‘<samp>ncadd</samp>’ as an <em>alias</em> to 
 ‘<samp>ncbo --op_typ=add</samp>’
-<a name="DOCF58" href="#FOOT58"><sup>58</sup></a>.
+<a name="DOCF61" href="#FOOT61"><sup>61</sup></a>.
 </p>
 <p>It is important to maintain portability in <acronym>NCO</acronym> scripts.
 Therefore we recommend that site-specfic invocations (e.g.,
@@ -12699,7 +13422,7 @@ stores the results in <var>file_3</var>.
 <a name="index-broadcasting-variables-2"></a>
 Variables in <var>file_1</var> or <var>file_2</var> are <em>broadcast</em> to conform
 to the corresponding variable in the other input file if
-necessary<a name="DOCF59" href="#FOOT59"><sup>59</sup></a>. 
+necessary<a name="DOCF62" href="#FOOT62"><sup>62</sup></a>. 
 Now <code>ncbo</code> is completely symmetric with respect to <var>file_1</var>
 and <var>file_2</var>, i.e., 
 <em><var>file_1</var> - <var>file_2</var> = - (<var>file_2</var> - <var>file_1</var></em>.
@@ -12735,7 +13458,7 @@ dimension of size 1<!-- /@w --> rather than having no <code>time</code> dim
 all 
 <a name="index-degenerate-dimension-3"></a>
 <a name="index-_002db-1"></a>
-<a name="DOCF60" href="#FOOT60"><sup>60</sup></a>.   
+<a name="DOCF63" href="#FOOT63"><sup>63</sup></a>.   
 In this case the input files to <code>ncbo</code>, <var>file_1</var> and
 <var>file_2</var>, will have unequally sized <code>time</code> dimensions which
 causes <code>ncbo</code> to fail.
@@ -12750,7 +13473,7 @@ of type <code>NC_CHAR</code> or <code>NC_STRING</code>.
 This ensures that coordinates like (e.g., latitude and longitude) are 
 physically meaningful in the output file, <var>file_3</var>. 
 This behavior is hardcoded.
-<a name="index-CF-conventions-4"></a>
+<a name="index-CF-conventions-5"></a>
 <code>ncbo</code> applies special rules to some 
 <acronym>CF</acronym>-defined (and/or <acronym>NCAR CCSM</acronym> or <acronym>NCAR CCM</acronym> 
 fields) such as <code>ORO</code>.
@@ -12918,7 +13641,7 @@ seasonal cycle of the monthly anomalies:
 <a name="nces-netCDF-Ensemble-Statistics"></a>
 <div class="header">
 <p>
-Next: <a href="#ncecat-netCDF-Ensemble-Concatenator" accesskey="n" rel="next">ncecat netCDF Ensemble Concatenator</a>, Previous: <a href="#ncbo-netCDF-Binary-Operator" accesskey="p" rel="previous">ncbo netCDF Binary Operator</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncecat-netCDF-Ensemble-Concatenator" accesskey="n" rel="next">ncecat netCDF Ensemble Concatenator</a>, Previous: <a href="#ncbo-netCDF-Binary-Operator" accesskey="p" rel="prev">ncbo netCDF Binary Operator</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="nces-netCDF-Ensemble-Statistics-1"></a>
 <h3 class="section">4.4 <code>nces</code> netCDF Ensemble Statistics</h3>
@@ -12933,7 +13656,7 @@ Next: <a href="#ncecat-netCDF-Ensemble-Concatenator" accesskey="n" rel="next">nc
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,…]] [-h] [--hdf] [--hdr_pad <var>nbr</var>] 
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-n <var>loop</var>] [--no_tmp_fl] [--nsm_fl|grp] [--nsm_sfx sfx]
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] [--rth_dbl|flt]
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] [--rth_dbl|flt]
 [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,…]] [-X ...] [-x] [-y <var>op_typ</var>]
 [<var>input-files</var>] [<var>output-file</var>]
 </pre></div>
@@ -12946,7 +13669,7 @@ input groups within each file.
 Each file (or group) receives an equal weight.
 <code>nces</code> was formerly (until <acronym>NCO</acronym> version 4.3.9,
 released December, 2013) known as <code>ncea</code> (netCDF Ensemble
-Averager)<a name="DOCF61" href="#FOOT61"><sup>61</sup></a>.
+Averager)<a name="DOCF64" href="#FOOT64"><sup>64</sup></a>.
 <a name="index-ensemble-1"></a>
 For example, <code>nces</code> will average a set of files or groups,
 weighting each file or group evenly. 
@@ -12968,7 +13691,7 @@ is the operator to use.
 <p>Variables in the <var>output-file</var> are the same size as the variable
 hyperslab in each input file or group, and each input file or group
 must be the same size after hyperslabbing
-<a name="DOCF62" href="#FOOT62"><sup>62</sup></a>
+<a name="DOCF65" href="#FOOT65"><sup>65</sup></a>
 <a name="index-record-dimension-3"></a>
 <a name="index-hyperslab-2"></a>
 <code>nces</code> does allow files to differ in the record dimension size
@@ -13120,7 +13843,7 @@ member in the first file.
 <a name="ncecat-netCDF-Ensemble-Concatenator"></a>
 <div class="header">
 <p>
-Next: <a href="#ncflint-netCDF-File-Interpolator" accesskey="n" rel="next">ncflint netCDF File Interpolator</a>, Previous: <a href="#nces-netCDF-Ensemble-Statistics" accesskey="p" rel="previous">nces netCDF Ensemble Statistics</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncflint-netCDF-File-Interpolator" accesskey="n" rel="next">ncflint netCDF File Interpolator</a>, Previous: <a href="#nces-netCDF-Ensemble-Statistics" accesskey="p" rel="prev">nces netCDF Ensemble Statistics</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncecat-netCDF-Ensemble-Concatenator-1"></a>
 <h3 class="section">4.5 <code>ncecat</code> netCDF Ensemble Concatenator</h3>
@@ -13135,7 +13858,7 @@ Next: <a href="#ncflint-netCDF-File-Interpolator" accesskey="n" rel="next">ncfli
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,…]] [--gag] [-h] [--hdf] [--hdr_pad <var>nbr</var>]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-M] [--md5_digest] [--mrd] [-n <var>loop</var>] [--no_tmp_fl] 
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] 
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] 
 [-t <var>thr_nbr</var>] [-u <var>ulm_nm</var>] [--unn] [-v <var>var</var>[,…]] [-X ...] [-x] 
 [<var>input-files</var>] [<var>output-file</var>]
 </pre></div>
@@ -13150,7 +13873,7 @@ single output file using using one of two methods.
 <em>Group AGgregation</em> (<acronym>GAG</acronym>) stores <var>input-files</var> as top-level
 groups in the netCDF4 <var>output-file</var>.
 Record Aggregation (<acronym>RAG</acronym>) makes numerous assumptions about the
-structure of input files and Group Aggregation (<acronym>GAG</acronym>) makes
+structure of input files whereas Group Aggregation (<acronym>GAG</acronym>) makes
 none. 
 Both methods are described in detail below.
 Since <code>ncecat</code> aggregates all the contents of the input files,
@@ -13357,7 +14080,7 @@ of changing variable dimensionality, including the record dimension.
 <a name="ncflint-netCDF-File-Interpolator"></a>
 <div class="header">
 <p>
-Next: <a href="#ncks-netCDF-Kitchen-Sink" accesskey="n" rel="next">ncks netCDF Kitchen Sink</a>, Previous: <a href="#ncecat-netCDF-Ensemble-Concatenator" accesskey="p" rel="previous">ncecat netCDF Ensemble Concatenator</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncks-netCDF-Kitchen-Sink" accesskey="n" rel="next">ncks netCDF Kitchen Sink</a>, Previous: <a href="#ncecat-netCDF-Ensemble-Concatenator" accesskey="p" rel="prev">ncecat netCDF Ensemble Concatenator</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncflint-netCDF-File-Interpolator-1"></a>
 <h3 class="section">4.6 <code>ncflint</code> netCDF File Interpolator</h3>
@@ -13374,7 +14097,7 @@ Next: <a href="#ncks-netCDF-Kitchen-Sink" accesskey="n" rel="next">ncks netCDF K
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]
 [-F] [--fix_rec_crd] [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,…]] [-h] [--hdr_pad <var>nbr</var>]
 [-i <var>var</var>,<var>val3</var>] [-L <var>dfl_lvl</var>] [-l <var>path</var>] [--no_tmp_fl] 
-[-O] [-o <var>file_3</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] 
+[-O] [-o <var>file_3</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] 
 [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,…]] [-w <var>wgt1</var>[,<var>wgt2</var>]] [-X ...] [-x]
 <var>file_1</var> <var>file_2</var> [<var>file_3</var>]
 </pre></div>
@@ -13573,7 +14296,7 @@ ncatted -a units,prs_sfc,o,c,millibar out.nc
 <a name="ncks-netCDF-Kitchen-Sink"></a>
 <div class="header">
 <p>
-Next: <a href="#ncpdq-netCDF-Permute-Dimensions-Quickly" accesskey="n" rel="next">ncpdq netCDF Permute Dimensions Quickly</a>, Previous: <a href="#ncflint-netCDF-File-Interpolator" accesskey="p" rel="previous">ncflint netCDF File Interpolator</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncpdq-netCDF-Permute-Dimensions-Quickly" accesskey="n" rel="next">ncpdq netCDF Permute Dimensions Quickly</a>, Previous: <a href="#ncflint-netCDF-File-Interpolator" accesskey="p" rel="prev">ncflint netCDF File Interpolator</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncks-netCDF-Kitchen-Sink-1"></a>
 <h3 class="section">4.7 <code>ncks</code> netCDF Kitchen Sink</h3>
@@ -13589,7 +14312,7 @@ Next: <a href="#ncpdq-netCDF-Permute-Dimensions-Quickly" accesskey="n" rel="next
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]] [-F] [--fix_rec_dmn <var>dim</var>] 
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,…]] [--grp_xtr_var_xcl] [-H] [-h] [--hdn] [--hdr_pad <var>nbr</var>]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-M] [-m] [--mk_rec_dmn <var>dim</var>] [--md5_digest]
-[--no_blank] [--no_tmp_fl] [-O] [-o <var>output-file</var>] [-P] [-p <var>path</var>] 
+[--no_blank] [--no_tmp_fl] [-O] [-o <var>output-file</var>] [-P] [-p <var>path</var>] [--ppc ...]
 [-Q] [-q] [-R] [-r] [--rad] [--ram_all] [-s <var>format</var>] 
 [-u] [--unn] [-V] [-v <var>var</var>[,…]] [-X ...] [-x] [--xml]
 <var>input-file</var> [[<var>output-file</var>]]
@@ -13683,7 +14406,7 @@ if any) must agree (conform) in both files.
 Then the variable values (and any coordinate dimension values)
 from <var>input-file</var> will overwrite the corresponding variable values
 (and coordinate dimension values, if any) in <var>output-file</var> 
-<a name="DOCF63" href="#FOOT63"><sup>63</sup></a>.
+<a name="DOCF66" href="#FOOT66"><sup>66</sup></a>.
 </p>
 <p>Since there can only be one record dimension in a file, the record
 dimension must have the same name (though not necessarily the same size) in 
@@ -13709,7 +14432,7 @@ existing files and variables, respectively.
 
 <p>The following summarizes features unique to <code>ncks</code>.  
 Features common to many operators are described in 
-<a href="#Common-features">Common features</a>. 
+<a href="#Shared-features">Shared features</a>. 
 </p>
 <dl compact="compact">
 <dd>
@@ -14308,7 +15031,7 @@ include an NcML formatting characters (e.g., commas, angles, quotes).
 <a name="Filters-for-ncks"></a>
 <div class="header">
 <p>
-Previous: <a href="#ncks-netCDF-Kitchen-Sink" accesskey="p" rel="previous">ncks netCDF Kitchen Sink</a>, Up: <a href="#ncks-netCDF-Kitchen-Sink" accesskey="u" rel="up">ncks netCDF Kitchen Sink</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#ncks-netCDF-Kitchen-Sink" accesskey="p" rel="prev">ncks netCDF Kitchen Sink</a>, Up: <a href="#ncks-netCDF-Kitchen-Sink" accesskey="u" rel="up">ncks netCDF Kitchen Sink</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Filters-for-ncks-1"></a>
 <h4 class="subsection">4.7.1 Filters for <code>ncks</code></h4>
@@ -14603,15 +15326,20 @@ multidimensional arrays of characters representing fixed length strings
 <a name="index-subsetting-4"></a>
 <a name="index-exclusion-2"></a>
 <a name="index-extraction-2"></a>
+<a name="index-CF-conventions-6"></a>
+<a name="index-coordinates-attribute-1"></a>
+<a name="index-bounds-attribute-2"></a>
+<a name="index-ancillary_005fvariables-attribute-1"></a>
 <p>Create netCDF <samp>out.nc</samp> containing all variables, and any associated 
 coordinates, except variable <code>time</code>, from netCDF <samp>in.nc</samp>:
 </p><div class="example">
 <pre class="example">ncks -x -v time in.nc out.nc
 </pre></div>
 <p>As a special case of this, consider how to remove a 
-<acronym>CF</acronym> Convention comliant <code>ancillary_variables</code>,
-<code>bounds</code>, or <code>coordinates</code> variable (see <a href="#CF-Conventions">CF Conventions</a>)
-such as <code>time_bounds</code>. 
+variable such as <code>time_bounds</code> that is identified in a
+<acronym>CF</acronym> Convention (see <a href="#CF-Conventions">CF Conventions</a>) compliant
+<code>ancillary_variables</code>, <code>bounds</code>, or <code>coordinates</code>
+attribute. 
 <acronym>NCO</acronym> subsetting assumes the user wants all ancillary variables,
 axes, bounds and coordinates associated with all extracted variables 
 (see <a href="#Subsetting-Coordinate-Variables">Subsetting Coordinate Variables</a>).
@@ -14678,7 +15406,7 @@ the easternmost longitude as <var>max</var>, as follows:
 <a name="ncpdq-netCDF-Permute-Dimensions-Quickly"></a>
 <div class="header">
 <p>
-Next: <a href="#ncra-netCDF-Record-Averager" accesskey="n" rel="next">ncra netCDF Record Averager</a>, Previous: <a href="#ncks-netCDF-Kitchen-Sink" accesskey="p" rel="previous">ncks netCDF Kitchen Sink</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncra-netCDF-Record-Averager" accesskey="n" rel="next">ncra netCDF Record Averager</a>, Previous: <a href="#ncks-netCDF-Kitchen-Sink" accesskey="p" rel="prev">ncks netCDF Kitchen Sink</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncpdq-netCDF-Permute-Dimensions-Quickly-1"></a>
 <h3 class="section">4.8 <code>ncpdq</code> netCDF Permute Dimensions Quickly</h3>
@@ -14700,7 +15428,7 @@ Next: <a href="#ncra-netCDF-Record-Averager" accesskey="n" rel="next">ncra netCD
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]
 [-F] [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,…]] [-h] [--hdf] [--hdr_pad <var>nbr</var>]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-M <var>pck_map</var>] [--mrd] [--no_tmp_fl] 
-[-O] [-o <var>output-file</var>] [-P <var>pck_plc</var>] [-p <var>path</var>] 
+[-O] [-o <var>output-file</var>] [-P <var>pck_plc</var>] [-p <var>path</var>] [--ppc ...]
 [-R] [-r] [--ram_all] [-t <var>thr_nbr</var>] [-U] [--unn] [-v <var>var</var>[,…]] [-X ...] [-x]
 <var>input-file</var> [<var>output-file</var>]
 </pre></div>
@@ -14945,7 +15673,7 @@ The record dimension is always the most slowly varying dimension in a
 record variable (see <a href="#C-and-Fortran-Index-Conventions">C and Fortran Index Conventions</a>).
 The specified re-ordering fails if it requires creating more than
 one record dimension amongst all the output variables
-<a name="DOCF64" href="#FOOT64"><sup>64</sup></a>.
+<a name="DOCF67" href="#FOOT67"><sup>67</sup></a>.
 </p>
 <p>Two special cases of dimension re-ordering and reversal deserve special
 mention. 
@@ -15021,7 +15749,7 @@ ncl_convert2nc modis.hdf
 ncpdq --hdf_upk -P xst_new modis.nc modis.nc
 </pre></div>
 <p><acronym>NCO</acronym> now
-<a name="DOCF65" href="#FOOT65"><sup>65</sup></a>
+<a name="DOCF68" href="#FOOT68"><sup>68</sup></a>
 automatically detects <acronym>HDF4</acronym> files.  
 In this case it produces an output file <samp>modis.nc</samp> which preserves
 the <acronym>HDF</acronym> packing used in the input file.
@@ -15032,7 +15760,7 @@ and then repacks those same variables using the netCDF algorithm
 As described above the ‘<samp>--P xst_new</samp>’ packing policy only repacks
 variables that are already packed. 
 Not-packed variables are copied directly without loss of precision
-<a name="DOCF66" href="#FOOT66"><sup>66</sup></a>.
+<a name="DOCF69" href="#FOOT69"><sup>69</sup></a>.
 </p>
 <p>Re-order file <samp>in.nc</samp> so that the dimension <code>lon</code> always
 precedes the dimension <code>lat</code> and store the results in
@@ -15175,7 +15903,7 @@ changing variable dimensionality, including the record dimension.
 <a name="ncra-netCDF-Record-Averager"></a>
 <div class="header">
 <p>
-Next: <a href="#ncrcat-netCDF-Record-Concatenator" accesskey="n" rel="next">ncrcat netCDF Record Concatenator</a>, Previous: <a href="#ncpdq-netCDF-Permute-Dimensions-Quickly" accesskey="p" rel="previous">ncpdq netCDF Permute Dimensions Quickly</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncrcat-netCDF-Record-Concatenator" accesskey="n" rel="next">ncrcat netCDF Record Concatenator</a>, Previous: <a href="#ncpdq-netCDF-Permute-Dimensions-Quickly" accesskey="p" rel="prev">ncpdq netCDF Permute Dimensions Quickly</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncra-netCDF-Record-Averager-1"></a>
 <h3 class="section">4.9 <code>ncra</code> netCDF Record Averager</h3>
@@ -15192,7 +15920,7 @@ Next: <a href="#ncrcat-netCDF-Record-Concatenator" accesskey="n" rel="next">ncrc
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>][,[<var>subcycle</var>]]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,…]] [-h] [--hdf] [--hdr_pad <var>nbr</var>] 
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [--mro] [-n <var>loop</var>] [--no_tmp_fl]
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] [--rec_apn] [--rth_dbl|flt]
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn] [--rth_dbl|flt]
 [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,…]] [-X ...] [-x] [-y <var>op_typ</var>]
 [<var>input-files</var>] [<var>output-file</var>]
 </pre></div>
@@ -15286,7 +16014,7 @@ averages June, 1985–June, 1989:
 <a name="ncrcat-netCDF-Record-Concatenator"></a>
 <div class="header">
 <p>
-Next: <a href="#ncrename-netCDF-Renamer" accesskey="n" rel="next">ncrename netCDF Renamer</a>, Previous: <a href="#ncra-netCDF-Record-Averager" accesskey="p" rel="previous">ncra netCDF Record Averager</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncrename-netCDF-Renamer" accesskey="n" rel="next">ncrename netCDF Renamer</a>, Previous: <a href="#ncra-netCDF-Record-Averager" accesskey="p" rel="prev">ncra netCDF Record Averager</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncrcat-netCDF-Record-Concatenator-1"></a>
 <h3 class="section">4.10 <code>ncrcat</code> netCDF Record Concatenator</h3>
@@ -15301,7 +16029,7 @@ Next: <a href="#ncrename-netCDF-Renamer" accesskey="n" rel="next">ncrename netCD
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>][,[<var>subcycle</var>]]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,…]] [-h] [--hdr_pad <var>nbr</var>]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [--md5_digest] [-n <var>loop</var>] [--no_tmp_fl]
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] [--rec_apn]
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn]
 [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,…]] [-X ...] [-x] 
 [<var>input-files</var>] [<var>output-file</var>]
 </pre></div>
@@ -15414,7 +16142,7 @@ concatenates June, 1985–June, 1989:
 <a name="ncrename-netCDF-Renamer"></a>
 <div class="header">
 <p>
-Next: <a href="#ncwa-netCDF-Weighted-Averager" accesskey="n" rel="next">ncwa netCDF Weighted Averager</a>, Previous: <a href="#ncrcat-netCDF-Record-Concatenator" accesskey="p" rel="previous">ncrcat netCDF Record Concatenator</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#ncwa-netCDF-Weighted-Averager" accesskey="n" rel="next">ncwa netCDF Weighted Averager</a>, Previous: <a href="#ncrcat-netCDF-Record-Concatenator" accesskey="p" rel="prev">ncrcat netCDF Record Concatenator</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncrename-netCDF-Renamer-1"></a>
 <h3 class="section">4.11 <code>ncrename</code> netCDF Renamer</h3>
@@ -15729,7 +16457,7 @@ Variables not prefixed with a period (<code>global</code>) must be present.
 <a name="ncwa-netCDF-Weighted-Averager"></a>
 <div class="header">
 <p>
-Previous: <a href="#ncrename-netCDF-Renamer" accesskey="p" rel="previous">ncrename netCDF Renamer</a>, Up: <a href="#Operator-Reference-Manual" accesskey="u" rel="up">Operator Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#ncrename-netCDF-Renamer" accesskey="p" rel="prev">ncrename netCDF Renamer</a>, Up: <a href="#Reference-Manual" accesskey="u" rel="up">Reference Manual</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="ncwa-netCDF-Weighted-Averager-1"></a>
 <h3 class="section">4.12 <code>ncwa</code> netCDF Weighted Averager</h3>
@@ -15746,7 +16474,7 @@ Previous: <a href="#ncrename-netCDF-Renamer" accesskey="p" rel="previous">ncrena
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,…]] [-h] [--hdr_pad <var>nbr</var>] [-I]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-M <var>mask_val</var>] [-m <var>mask_var</var>] [-N] [--no_tmp_fl]
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] [--rth_dbl|flt]
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] [--rth_dbl|flt]
 [-T <var>mask_comp</var>] [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,…]] [-w <var>weight</var>]
 [-X ...] [-x] [-y <var>op_typ</var>]
 <var>input-file</var> [<var>output-file</var>]
@@ -15842,7 +16570,7 @@ of the hyperslab.
 <a name="index-_002dI"></a>
 Option ‘<samp>-I</samp>’ overrides this default behavior and causes
 <code>ncwa</code> not to weight or mask coordinate variables
-<a name="DOCF67" href="#FOOT67"><sup>67</sup></a>.
+<a name="DOCF70" href="#FOOT70"><sup>70</sup></a>.
 In the above case, this causes the value of <code>latitude</code> in the
 <var>output-file</var> to be 45.0<!-- /@w -->, an appealing result.
 Thus, ‘<samp>-I</samp>’ specifies simple arithmetic averages for the coordinate
@@ -15850,7 +16578,7 @@ variables.
 In the case of latitude, ‘<samp>-I</samp>’ specifies that you prefer to archive
 the arithmetic mean latitude of the averaged hyperslabs rather than the 
 area-weighted mean latitude.
-<a name="DOCF68" href="#FOOT68"><sup>68</sup></a>.  
+<a name="DOCF71" href="#FOOT71"><sup>71</sup></a>.  
 </p>
 <a name="index-average-1"></a>
 <a name="index-operation-types-2"></a>
@@ -15874,7 +16602,7 @@ is given above (see <a href="#Operation-Types">Operation Types</a>).
 <a name="Mask-condition"></a>
 <div class="header">
 <p>
-Next: <a href="#Normalization-and-Integration" accesskey="n" rel="next">Normalization and Integration</a>, Previous: <a href="#ncwa-netCDF-Weighted-Averager" accesskey="p" rel="previous">ncwa netCDF Weighted Averager</a>, Up: <a href="#ncwa-netCDF-Weighted-Averager" accesskey="u" rel="up">ncwa netCDF Weighted Averager</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Normalization-and-Integration" accesskey="n" rel="next">Normalization and Integration</a>, Previous: <a href="#ncwa-netCDF-Weighted-Averager" accesskey="p" rel="prev">ncwa netCDF Weighted Averager</a>, Up: <a href="#ncwa-netCDF-Weighted-Averager" accesskey="u" rel="up">ncwa netCDF Weighted Averager</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Mask-condition-1"></a>
 <h4 class="subsection">4.12.1 Mask condition</h4>
@@ -15894,7 +16622,7 @@ the ‘<samp>-B</samp>’ or ‘<samp>--mask_condition</samp>’
 The older method is to use the three switches ‘<samp>-m</samp>’, ‘<samp>-T</samp>’, and
 ‘<samp>-M</samp>’ to specify the <var>mask_var</var>, <var>mask_comp</var>, and 
 <var>mask_val</var>, respectively.  
-<a name="DOCF69" href="#FOOT69"><sup>69</sup></a>.
+<a name="DOCF72" href="#FOOT72"><sup>72</sup></a>.
 The <var>mask_condition</var> string is automatically parsed into its three
 constituents <var>mask_var</var>, <var>mask_comp</var>, and <var>mask_val</var>.
 </p>
@@ -15926,7 +16654,7 @@ the mask condition is
 <a name="Normalization-and-Integration"></a>
 <div class="header">
 <p>
-Previous: <a href="#Mask-condition" accesskey="p" rel="previous">Mask condition</a>, Up: <a href="#ncwa-netCDF-Weighted-Averager" accesskey="u" rel="up">ncwa netCDF Weighted Averager</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Mask-condition" accesskey="p" rel="prev">Mask condition</a>, Up: <a href="#ncwa-netCDF-Weighted-Averager" accesskey="u" rel="up">ncwa netCDF Weighted Averager</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Normalization-and-Integration-1"></a>
 <h4 class="subsection">4.12.2 Normalization and Integration</h4>
@@ -16024,7 +16752,7 @@ for the <samp>85_0112.nc</samp> file described by the sample header above.
 <a name="index-climate-model-5"></a>
 <p>Compute the meridional (latitudinal) mean, with values weighted by
 the corresponding element of <var>gw</var>
-<a name="DOCF70" href="#FOOT70"><sup>70</sup></a>: 
+<a name="DOCF73" href="#FOOT73"><sup>73</sup></a>: 
 </p><div class="example">
 <pre class="example">ncwa -w gw -a lat in.nc out.nc
 </pre></div>
@@ -16042,7 +16770,7 @@ The sum of the Gaussian weights is 2.0.<!-- /@w -->
 <a name="index-climate-model-6"></a>
 <p>Compute the area-mean over the globe using only points for which 
 <var>ORO</var> < 0.5
-<a name="DOCF71" href="#FOOT71"><sup>71</sup></a>: 
+<a name="DOCF74" href="#FOOT74"><sup>74</sup></a>: 
 </p><div class="example">
 <pre class="example">ncwa -B 'ORO < 0.5'      -w gw -a lat,lon in.nc out.nc
 ncwa -m ORO -M 0.5 -T lt -w gw -a lat,lon in.nc out.nc
@@ -16050,7 +16778,7 @@ ncwa -m ORO -M 0.5 -T lt -w gw -a lat,lon in.nc out.nc
 <p>It is considerably simpler to specify the complete <var>mask_cond</var> with
 the single string argument to ‘<samp>-B</samp>’ than with the three separate
 switches ‘<samp>-m</samp>’, ‘<samp>-T</samp>’, and ‘<samp>-M</samp>’
-<a name="DOCF72" href="#FOOT72"><sup>72</sup></a>. 
+<a name="DOCF75" href="#FOOT75"><sup>75</sup></a>. 
 If in doubt, enclose the <var>mask_cond</var> within quotes since some
 of the comparators have special meanings to the shell.
 </p>
@@ -16103,7 +16831,7 @@ where <em><var>thr_min</var> <= <var>msk_var</var> <= <var>thr_max</var></
 <a name="Contributing"></a>
 <div class="header">
 <p>
-Next: <a href="#Quick-Start" accesskey="n" rel="next">Quick Start</a>, Previous: <a href="#Operator-Reference-Manual" accesskey="p" rel="previous">Operator Reference Manual</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Quick-Start" accesskey="n" rel="next">Quick Start</a>, Previous: <a href="#Reference-Manual" accesskey="p" rel="prev">Reference Manual</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Contributing-1"></a>
 <h2 class="chapter">5 Contributing</h2>
@@ -16117,7 +16845,7 @@ contains more information on how to contribute.
 <a href="https://www.paypal.com/xclick/business=zender%40uci.edu&item_name=NCO+development&item_number=nco_dnt_dvl&no_note=1&tax=0&currency_code=USD">PayPal</a>.
 <acronym>NCO</acronym> has been shared for over 10 years<!-- /@w --> yet only two 
 users have contributed any money to the developers
-<a name="DOCF73" href="#FOOT73"><sup>73</sup></a>. 
+<a name="DOCF76" href="#FOOT76"><sup>76</sup></a>. 
 So you could be the third!
 </p>
 <a name="dvl"></a> <!-- http://nco.sf.net/nco.html#dvl -->
@@ -16135,7 +16863,7 @@ So you could be the third!
 <a name="Contributors"></a>
 <div class="header">
 <p>
-Next: <a href="#Citation" accesskey="n" rel="next">Citation</a>, Previous: <a href="#Contributing" accesskey="p" rel="previous">Contributing</a>, Up: <a href="#Contributing" accesskey="u" rel="up">Contributing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Citation" accesskey="n" rel="next">Citation</a>, Previous: <a href="#Contributing" accesskey="p" rel="prev">Contributing</a>, Up: <a href="#Contributing" accesskey="u" rel="up">Contributing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Contributors-1"></a>
 <h3 class="section">5.1 Contributors</h3>
@@ -16333,7 +17061,7 @@ netCDF4 groups.
 <a name="Citation"></a>
 <div class="header">
 <p>
-Next: <a href="#Proposals-for-Institutional-Funding" accesskey="n" rel="next">Proposals for Institutional Funding</a>, Previous: <a href="#Contributors" accesskey="p" rel="previous">Contributors</a>, Up: <a href="#Contributing" accesskey="u" rel="up">Contributing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Proposals-for-Institutional-Funding" accesskey="n" rel="next">Proposals for Institutional Funding</a>, Previous: <a href="#Contributors" accesskey="p" rel="prev">Contributors</a>, Up: <a href="#Contributing" accesskey="u" rel="up">Contributing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Citation-1"></a>
 <h3 class="section">5.2 Citation</h3>
@@ -16368,7 +17096,7 @@ This list links to the full papers and seminars themselves.
 <a name="Proposals-for-Institutional-Funding"></a>
 <div class="header">
 <p>
-Previous: <a href="#Citation" accesskey="p" rel="previous">Citation</a>, Up: <a href="#Contributing" accesskey="u" rel="up">Contributing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Citation" accesskey="p" rel="prev">Citation</a>, Up: <a href="#Contributing" accesskey="u" rel="up">Contributing</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Proposals-for-Institutional-Funding-1"></a>
 <h3 class="section">5.3 Proposals for Institutional Funding</h3>
@@ -16419,7 +17147,7 @@ Comments on the proposals and letters of support are also very welcome.
 <a name="Quick-Start"></a>
 <div class="header">
 <p>
-Next: <a href="#CMIP5-Example" accesskey="n" rel="next">CMIP5 Example</a>, Previous: <a href="#Contributing" accesskey="p" rel="previous">Contributing</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#CMIP5-Example" accesskey="n" rel="next">CMIP5 Example</a>, Previous: <a href="#Contributing" accesskey="p" rel="prev">Contributing</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Quick-Start-1"></a>
 <h2 class="chapter">6 Quick Start</h2>
@@ -16444,7 +17172,7 @@ monthly data in either one file or multiple files.
 <a name="Daily-data-in-one-file"></a>
 <div class="header">
 <p>
-Next: <a href="#Monthly-data-in-one-file" accesskey="n" rel="next">Monthly data in one file</a>, Previous: <a href="#Quick-Start" accesskey="p" rel="previous">Quick Start</a>, Up: <a href="#Quick-Start" accesskey="u" rel="up">Quick Start</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Monthly-data-in-one-file" accesskey="n" rel="next">Monthly data in one file</a>, Previous: <a href="#Quick-Start" accesskey="p" rel="prev">Quick Start</a>, Up: <a href="#Quick-Start" accesskey="u" rel="up">Quick Start</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Daily-data-in-one-file-1"></a>
 <h3 class="section">6.1 Daily data in one file</h3>
@@ -16492,7 +17220,7 @@ There are detailed instructions on <code>ncra</code> (see <a href="#ncra-netCDF-
 <a name="Monthly-data-in-one-file"></a>
 <div class="header">
 <p>
-Next: <a href="#One-time-point-one-file" accesskey="n" rel="next">One time point one file</a>, Previous: <a href="#Daily-data-in-one-file" accesskey="p" rel="previous">Daily data in one file</a>, Up: <a href="#Quick-Start" accesskey="u" rel="up">Quick Start</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#One-time-point-one-file" accesskey="n" rel="next">One time point one file</a>, Previous: <a href="#Daily-data-in-one-file" accesskey="p" rel="prev">Daily data in one file</a>, Up: <a href="#Quick-Start" accesskey="u" rel="up">Quick Start</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Monthly-data-in-one-file-1"></a>
 <h3 class="section">6.2 Monthly data in one file</h3>
@@ -16536,7 +17264,7 @@ you can leave it blank if you want to include the minimum or the maximum of the
 <a name="One-time-point-one-file"></a>
 <div class="header">
 <p>
-Next: <a href="#Multiple-files-with-multiple-time-points" accesskey="n" rel="next">Multiple files with multiple time points</a>, Previous: <a href="#Monthly-data-in-one-file" accesskey="p" rel="previous">Monthly data in one file</a>, Up: <a href="#Quick-Start" accesskey="u" rel="up">Quick Start</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Multiple-files-with-multiple-time-points" accesskey="n" rel="next">Multiple files with multiple time points</a>, Previous: <a href="#Monthly-data-in-one-file" accesskey="p" rel="prev">Monthly data in one file</a>, Up: <a href="#Quick-Start" accesskey="u" rel="up">Quick Start</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="One-time-point-one-file-1"></a>
 <h3 class="section">6.3 One time point one file</h3>
@@ -16565,7 +17293,7 @@ done
 <a name="Multiple-files-with-multiple-time-points"></a>
 <div class="header">
 <p>
-Previous: <a href="#One-time-point-one-file" accesskey="p" rel="previous">One time point one file</a>, Up: <a href="#Quick-Start" accesskey="u" rel="up">Quick Start</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#One-time-point-one-file" accesskey="p" rel="prev">One time point one file</a>, Up: <a href="#Quick-Start" accesskey="u" rel="up">Quick Start</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Multiple-files-with-multiple-time-points-1"></a>
 <h3 class="section">6.4 Multiple files with multiple time points</h3>
@@ -16581,7 +17309,7 @@ And for seasonal averages, you can specify the three months by shell scripts.
 <a name="CMIP5-Example"></a>
 <div class="header">
 <p>
-Next: <a href="#Parallel" accesskey="n" rel="next">Parallel</a>, Previous: <a href="#Quick-Start" accesskey="p" rel="previous">Quick Start</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Parallel" accesskey="n" rel="next">Parallel</a>, Previous: <a href="#Quick-Start" accesskey="p" rel="prev">Quick Start</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="CMIP5-Example-1"></a>
 <h2 class="chapter">7 <acronym>CMIP5</acronym> Example</h2>
@@ -16660,7 +17388,7 @@ group-based processing as well.
 <a name="Combine-Files"></a>
 <div class="header">
 <p>
-Next: <a href="#Global-Distribution-of-Long_002dterm-Average" accesskey="n" rel="next">Global Distribution of Long-term Average</a>, Previous: <a href="#CMIP5-Example" accesskey="p" rel="previous">CMIP5 Example</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Global-Distribution-of-Long_002dterm-Average" accesskey="n" rel="next">Global Distribution of Long-term Average</a>, Previous: <a href="#CMIP5-Example" accesskey="p" rel="prev">CMIP5 Example</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Combine-Files-1"></a>
 <h3 class="section">7.1 Combine Files</h3>
@@ -16910,7 +17638,7 @@ ncrename -g ${xpt}/${mdl}/${mdl}_00,r1i1p1 \
 <a name="Global-Distribution-of-Long_002dterm-Average"></a>
 <div class="header">
 <p>
-Next: <a href="#Annual-Average-over-Regions" accesskey="n" rel="next">Annual Average over Regions</a>, Previous: <a href="#Combine-Files" accesskey="p" rel="previous">Combine Files</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Annual-Average-over-Regions" accesskey="n" rel="next">Annual Average over Regions</a>, Previous: <a href="#Combine-Files" accesskey="p" rel="prev">Combine Files</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Global-Distribution-of-Long_002dterm-Average-1"></a>
 <h3 class="section">7.2 Global Distribution of Long-term Average</h3>
@@ -17025,7 +17753,7 @@ ensembles with only one ensemble member will be left untouched.
 <a name="Annual-Average-over-Regions"></a>
 <div class="header">
 <p>
-Next: <a href="#Monthly-Cycle" accesskey="n" rel="next">Monthly Cycle</a>, Previous: <a href="#Global-Distribution-of-Long_002dterm-Average" accesskey="p" rel="previous">Global Distribution of Long-term Average</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Monthly-Cycle" accesskey="n" rel="next">Monthly Cycle</a>, Previous: <a href="#Global-Distribution-of-Long_002dterm-Average" accesskey="p" rel="prev">Global Distribution of Long-term Average</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Annual-Average-over-Regions-1"></a>
 <h3 class="section">7.3 Annual Average over Regions</h3>
@@ -17342,7 +18070,7 @@ ncra -O -y rmssdn ${drc}${pfx}_${tms}_rgn2_anm.nc \
 <a name="Monthly-Cycle"></a>
 <div class="header">
 <p>
-Next: <a href="#Regrid-MODIS-Data" accesskey="n" rel="next">Regrid MODIS Data</a>, Previous: <a href="#Annual-Average-over-Regions" accesskey="p" rel="previous">Annual Average over Regions</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Regrid-MODIS-Data" accesskey="n" rel="next">Regrid MODIS Data</a>, Previous: <a href="#Annual-Average-over-Regions" accesskey="p" rel="prev">Annual Average over Regions</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Monthly-Cycle-1"></a>
 <h3 class="section">7.4 Monthly Cycle</h3>
@@ -17522,7 +18250,7 @@ ncrcat -O ${drc}${pfx}_grl_??_anm.nc \
 <a name="Regrid-MODIS-Data"></a>
 <div class="header">
 <p>
-Next: <a href="#Add-Coordinates-to-MODIS-Data" accesskey="n" rel="next">Add Coordinates to MODIS Data</a>, Previous: <a href="#Monthly-Cycle" accesskey="p" rel="previous">Monthly Cycle</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Add-Coordinates-to-MODIS-Data" accesskey="n" rel="next">Add Coordinates to MODIS Data</a>, Previous: <a href="#Monthly-Cycle" accesskey="p" rel="prev">Monthly Cycle</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Regrid-MODIS-Data-1"></a>
 <h3 class="section">7.5 Regrid <acronym>MODIS</acronym> Data</h3>
@@ -17680,7 +18408,7 @@ wsa_sw_less at long_name = "Global_Albedo_WSA_shortwave";
 <a name="Add-Coordinates-to-MODIS-Data"></a>
 <div class="header">
 <p>
-Next: <a href="#Permute-MODIS-Coordinates" accesskey="n" rel="next">Permute MODIS Coordinates</a>, Previous: <a href="#Regrid-MODIS-Data" accesskey="p" rel="previous">Regrid MODIS Data</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#Permute-MODIS-Coordinates" accesskey="n" rel="next">Permute MODIS Coordinates</a>, Previous: <a href="#Regrid-MODIS-Data" accesskey="p" rel="prev">Regrid MODIS Data</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Add-Coordinates-to-MODIS-Data-1"></a>
 <h3 class="section">7.6 Add Coordinates to <acronym>MODIS</acronym> Data</h3>
@@ -17739,7 +18467,7 @@ lat = 90.f- array(0.f, 0.05, $lat);
 <a name="Permute-MODIS-Coordinates"></a>
 <div class="header">
 <p>
-Previous: <a href="#Add-Coordinates-to-MODIS-Data" accesskey="p" rel="previous">Add Coordinates to MODIS Data</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#Add-Coordinates-to-MODIS-Data" accesskey="p" rel="prev">Add Coordinates to MODIS Data</a>, Up: <a href="#CMIP5-Example" accesskey="u" rel="up">CMIP5 Example</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Permute-MODIS-Coordinates-1"></a>
 <h3 class="section">7.7 Permute <acronym>MODIS</acronym> Coordinates</h3>
@@ -17798,7 +18526,7 @@ done
 <a name="Parallel"></a>
 <div class="header">
 <p>
-Next: <a href="#CCSM-Example" accesskey="n" rel="next">CCSM Example</a>, Previous: <a href="#CMIP5-Example" accesskey="p" rel="previous">CMIP5 Example</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#CCSM-Example" accesskey="n" rel="next">CCSM Example</a>, Previous: <a href="#CMIP5-Example" accesskey="p" rel="prev">CMIP5 Example</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="Parallel-1"></a>
 <h2 class="chapter">8 Parallel</h2>
@@ -17813,7 +18541,7 @@ Next: <a href="#CCSM-Example" accesskey="n" rel="next">CCSM Example</a>, Previou
 <a name="CCSM-Example"></a>
 <div class="header">
 <p>
-Next: <a href="#mybibnode" accesskey="n" rel="next">mybibnode</a>, Previous: <a href="#Parallel" accesskey="p" rel="previous">Parallel</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#mybibnode" accesskey="n" rel="next">mybibnode</a>, Previous: <a href="#Parallel" accesskey="p" rel="prev">Parallel</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="CCSM-Example-1"></a>
 <h2 class="chapter">9 CCSM Example</h2>
@@ -18125,7 +18853,7 @@ Level III: Many derived products from level II, e.g.,
 <a name="mybibnode"></a>
 <div class="header">
 <p>
-Next: <a href="#General-Index" accesskey="n" rel="next">General Index</a>, Previous: <a href="#CCSM-Example" accesskey="p" rel="previous">CCSM Example</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#General-Index" accesskey="n" rel="next">General Index</a>, Previous: <a href="#CCSM-Example" accesskey="p" rel="prev">CCSM Example</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="References"></a>
 <h2 class="chapter">10 References</h2>
@@ -18161,7 +18889,7 @@ Next: <a href="#General-Index" accesskey="n" rel="next">General Index</a>, Previ
 <a name="General-Index"></a>
 <div class="header">
 <p>
-Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
+Previous: <a href="#mybibnode" accesskey="p" rel="prev">mybibnode</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a>   [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#General-Index" title="Index" rel="index">Index</a>]</p>
 </div>
 <a name="General-Index-1"></a>
 <h2 class="unnumbered">General Index</h2>
@@ -18263,6 +18991,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
    
 <a class="summary-letter" href="#General-Index_cp_letter-Y"><b>Y</b></a>
    
+<a class="summary-letter" href="#General-Index_cp_letter-Z"><b>Z</b></a>
+   
 </td></tr></table>
 <table class="index-cp" border="0">
 <tr><td></td><th align="left">Index Entry</th><td> </td><th align="left"> Section</th></tr>
@@ -18473,12 +19203,15 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-_002d_002dpath-input_002dpath-1"><code>--path <var>input-path</var></code></a>:</td><td> </td><td valign="top"><a href="#Remote-storage">Remote storage</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dpck_005fmap-pck_005fmap"><code>--pck_map <var>pck_map</var></code></a>:</td><td> </td><td valign="top"><a href="#ncpdq-netCDF-Permute-Dimensions-Quickly">ncpdq netCDF Permute Dimensions Quickly</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dpck_005fplc-pck_005fplc"><code>--pck_plc <var>pck_plc</var></code></a>:</td><td> </td><td valign="top"><a href="#ncpdq-netCDF-Permute-Dimensions-Quickly">ncpdq netCDF Permute Dimensions Quickly</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_002d_002dppc"><code>--ppc</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_002d_002dprecision_005fpreserving_005fcompression"><code>--precision_preserving_compression</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dprint"><code>--print</code></a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dprn"><code>--prn</code></a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dprn_005ffnc_005ftbl"><code>--prn_fnc_tbl</code></a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dpseudonym"><code>--pseudonym</code></a>:</td><td> </td><td valign="top"><a href="#Symbolic-Links">Symbolic Links</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dpth-input_002dpath"><code>--pth <var>input-path</var></code></a>:</td><td> </td><td valign="top"><a href="#Specifying-Input-Files">Specifying Input Files</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dpth-input_002dpath-1"><code>--pth <var>input-path</var></code></a>:</td><td> </td><td valign="top"><a href="#Remote-storage">Remote storage</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_002d_002dquantize"><code>--quantize</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dquench"><code>--quench</code></a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dquiet"><code>--quiet</code></a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dquiet-1"><code>--quiet</code></a>:</td><td> </td><td valign="top"><a href="#Filters-for-ncks">Filters for <code>ncks</code></a></td></tr>
@@ -18747,7 +19480,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-anchor">anchor</a>:</td><td> </td><td valign="top"><a href="#Subsetting-Files">Subsetting Files</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-anchoring">anchoring</a>:</td><td> </td><td valign="top"><a href="#Subsetting-Files">Subsetting Files</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-ancillary-variables-convention">ancillary variables convention</a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-ancillary_005fvariables"><code>ancillary_variables</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-ancillary_005fvariables-attribute"><code>ancillary_variables</code> attribute</a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-ancillary_005fvariables-attribute-1"><code>ancillary_variables</code> attribute</a>:</td><td> </td><td valign="top"><a href="#Filters-for-ncks">Filters for <code>ncks</code></a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Andrea-Cimatoribus">Andrea Cimatoribus</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Andrew-Wittenberg">Andrew Wittenberg</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-annual-average">annual average</a>:</td><td> </td><td valign="top"><a href="#Annual-Average-over-Regions">Annual Average over Regions</a></td></tr>
@@ -18869,9 +19603,12 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-binary-operations">binary operations</a>:</td><td> </td><td valign="top"><a href="#Memory-for-ncap2">Memory for ncap2</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-binary-operations-1">binary operations</a>:</td><td> </td><td valign="top"><a href="#ncbo-netCDF-Binary-Operator">ncbo netCDF Binary Operator</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-binary-Operators">binary Operators</a>:</td><td> </td><td valign="top"><a href="#Expressions">Expressions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-bitmask">bitmask</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-blank">blank</a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-blocksize">blocksize</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-bounds"><code>bounds</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-bounds-attribute"><code>bounds</code> attribute</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-bounds-attribute-1"><code>bounds</code> attribute</a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-bounds-attribute-2"><code>bounds</code> attribute</a>:</td><td> </td><td valign="top"><a href="#Filters-for-ncks">Filters for <code>ncks</code></a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-bounds-convention">bounds convention</a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Bourne-Shell">Bourne Shell</a>:</td><td> </td><td valign="top"><a href="#Stride">Stride</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Bourne-Shell-1">Bourne Shell</a>:</td><td> </td><td valign="top"><a href="#ncbo-netCDF-Binary-Operator">ncbo netCDF Binary Operator</a></td></tr>
@@ -18889,7 +19626,9 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-Buffer-sizes">Buffer sizes</a>:</td><td> </td><td valign="top"><a href="#Buffer-sizes">Buffer sizes</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-buffering">buffering</a>:</td><td> </td><td valign="top"><a href="#Performance">Performance</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-bugs_002c-reporting">bugs, reporting</a>:</td><td> </td><td valign="top"><a href="#Help-Requests-and-Bug-Reports">Help Requests and Bug Reports</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-Burrows_002dWheeler-algorithm">Burrows-Wheeler algorithm</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-byte_0028_0029">byte()</a>:</td><td> </td><td valign="top"><a href="#Methods-and-functions">Methods and functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-bzip2"><code>bzip2</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_letter-C">C</a></th><td></td><td></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C-index-convention">C index convention</a>:</td><td> </td><td valign="top"><a href="#C-and-Fortran-Index-Conventions">C and Fortran Index Conventions</a></td></tr>
@@ -18910,6 +19649,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-C99">C99</a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C99-1">C99</a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C99-2">C99</a>:</td><td> </td><td valign="top"><a href="#Windows-Operating-System">Windows Operating System</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-C99-3">C99</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-CAM"><acronym>CAM</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-CAM3"><acronym>CAM3</acronym></a>:</td><td> </td><td valign="top"><a href="#Promoting-Single_002dprecision-to-Double">Promoting Single-precision to Double</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-CC"><code>CC</code></a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-cc"><code>cc</code></a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
@@ -18929,8 +19670,10 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-CF-conventions"><acronym>CF</acronym> conventions</a>:</td><td> </td><td valign="top"><a href="#Subsetting-Coordinate-Variables">Subsetting Coordinate Variables</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-CF-conventions-1"><acronym>CF</acronym> conventions</a>:</td><td> </td><td valign="top"><a href="#Auxiliary-Coordinates">Auxiliary Coordinates</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-CF-conventions-2"><acronym>CF</acronym> conventions</a>:</td><td> </td><td valign="top"><a href="#UDUnits-Support">UDUnits Support</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-CF-conventions-3"><acronym>CF</acronym> conventions</a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-CF-conventions-4"><acronym>CF</acronym> conventions</a>:</td><td> </td><td valign="top"><a href="#ncbo-netCDF-Binary-Operator">ncbo netCDF Binary Operator</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-CF-conventions-3"><acronym>CF</acronym> conventions</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-CF-conventions-4"><acronym>CF</acronym> conventions</a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-CF-conventions-5"><acronym>CF</acronym> conventions</a>:</td><td> </td><td valign="top"><a href="#ncbo-netCDF-Binary-Operator">ncbo netCDF Binary Operator</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-CF-conventions-6"><acronym>CF</acronym> conventions</a>:</td><td> </td><td valign="top"><a href="#Filters-for-ncks">Filters for <code>ncks</code></a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-cfchecker"><code>cfchecker</code></a>:</td><td> </td><td valign="top"><a href="#Checking-CF_002dcompliance">Checking CF-compliance</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-change_005fmiss_0028_0029"><code>change_miss()</code></a>:</td><td> </td><td valign="top"><a href="#Missing-values-ncap2">Missing values ncap2</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-char_0028_0029">char()</a>:</td><td> </td><td valign="top"><a href="#Methods-and-functions">Methods and functions</a></td></tr>
@@ -18980,9 +19723,9 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-Comeau">Comeau</a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-command-line-options">command line options</a>:</td><td> </td><td valign="top"><a href="#Command-Line-Options">Command Line Options</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-command-line-switches">command line switches</a>:</td><td> </td><td valign="top"><a href="#Philosophy">Philosophy</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-command-line-switches-1">command line switches</a>:</td><td> </td><td valign="top"><a href="#Common-features">Common features</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-command-line-switches-1">command line switches</a>:</td><td> </td><td valign="top"><a href="#Shared-features">Shared features</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-command-line-switches-2">command line switches</a>:</td><td> </td><td valign="top"><a href="#Specifying-Output-Files">Specifying Output Files</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-command-line-switches-3">command line switches</a>:</td><td> </td><td valign="top"><a href="#Operator-Reference-Manual">Operator Reference Manual</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-command-line-switches-3">command line switches</a>:</td><td> </td><td valign="top"><a href="#Reference-Manual">Reference Manual</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-comments">comments</a>:</td><td> </td><td valign="top"><a href="#Syntax-of-ncap2-statements">Syntax of ncap2 statements</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-como"><code>como</code></a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Compaq">Compaq</a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
@@ -19014,6 +19757,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-coordinates"><code>coordinates</code></a>:</td><td> </td><td valign="top"><a href="#Auxiliary-Coordinates">Auxiliary Coordinates</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-coordinates-1"><code>coordinates</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-coordinates-2">coordinates</a>:</td><td> </td><td valign="top"><a href="#Add-Coordinates-to-MODIS-Data">Add Coordinates to MODIS Data</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-coordinates-attribute"><code>coordinates</code> attribute</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-coordinates-attribute-1"><code>coordinates</code> attribute</a>:</td><td> </td><td valign="top"><a href="#Filters-for-ncks">Filters for <code>ncks</code></a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-coordinates-convention">coordinates convention</a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-coordinates_002c-modifying">coordinates, modifying</a>:</td><td> </td><td valign="top"><a href="#Permute-MODIS-Coordinates">Permute MODIS Coordinates</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-core-dump">core dump</a>:</td><td> </td><td valign="top"><a href="#Help-Requests-and-Bug-Reports">Help Requests and Bug Reports</a></td></tr>
@@ -19058,8 +19803,10 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-debugging-1">debugging</a>:</td><td> </td><td valign="top"><a href="#Large-Datasets">Large Datasets</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-debugging-2">debugging</a>:</td><td> </td><td valign="top"><a href="#OpenMP-Threading">OpenMP Threading</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-DEC"><acronym>DEC</acronym></a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-Decimal-Significant-Digits">Decimal Significant Digits</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-defdim_0028_0029"><code>defdim()</code></a>:</td><td> </td><td valign="top"><a href="#Dimensions">Dimensions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-defining-dimensions-in-ncap2">defining dimensions in <code>ncap2</code></a>:</td><td> </td><td valign="top"><a href="#Dimensions">Dimensions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-DEFLATE"><acronym>DEFLATE</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-deflation">deflation</a>:</td><td> </td><td valign="top"><a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support">netCDF2/3/4 and HDF4/5 Support</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-deflation-1">deflation</a>:</td><td> </td><td valign="top"><a href="#Deflation">Deflation</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-deflation-2">deflation</a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
@@ -19103,6 +19850,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-dot-product-1">dot product</a>:</td><td> </td><td valign="top"><a href="#Normalization-and-Integration">Normalization and Integration</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-double_0028_0029">double()</a>:</td><td> </td><td valign="top"><a href="#Methods-and-functions">Methods and functions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-double_002dprecision">double-precision</a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-DSD"><acronym>DSD</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-dsort"><code>dsort</code></a>:</td><td> </td><td valign="top"><a href="#Sort-methods">Sort methods</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-duration">duration</a>:</td><td> </td><td valign="top"><a href="#Subcycle">Subcycle</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-dynamic-linking">dynamic linking</a>:</td><td> </td><td valign="top"><a href="#Libraries">Libraries</a></td></tr>
@@ -19211,7 +19959,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-gcc"><code>gcc</code></a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-gcc-1"><code>gcc</code></a>:</td><td> </td><td valign="top"><a href="#Windows-Operating-System">Windows Operating System</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-GCM"><acronym>GCM</acronym></a>:</td><td> </td><td valign="top"><a href="#Climate-Model-Paradigm">Climate Model Paradigm</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-GCM-1"><acronym>GCM</acronym></a>:</td><td> </td><td valign="top"><a href="#Promoting-Single_002dprecision-to-Double">Promoting Single-precision to Double</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-GCM-1"><acronym>GCM</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-GCM-2"><acronym>GCM</acronym></a>:</td><td> </td><td valign="top"><a href="#Promoting-Single_002dprecision-to-Double">Promoting Single-precision to Double</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-geographical-weight">geographical weight</a>:</td><td> </td><td valign="top"><a href="#Monthly-Cycle">Monthly Cycle</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-George-Shapavalov">George Shapavalov</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-George-Shapovalov">George Shapovalov</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
@@ -19275,8 +20024,11 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-gsl_005fsf_005fbessel_005fJn"><var>gsl_sf_bessel_Jn</var></a>:</td><td> </td><td valign="top"><a href="#GSL-special-functions">GSL special functions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-gsl_005fsf_005fgamma"><var>gsl_sf_gamma</var></a>:</td><td> </td><td valign="top"><a href="#GSL-special-functions">GSL special functions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-gsl_005fsf_005flegendre_005fPl"><code>gsl_sf_legendre_Pl</code></a>:</td><td> </td><td valign="top"><a href="#GSL-special-functions">GSL special functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-gunzip"><code>gunzip</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-gw"><code>gw</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-gw-1"><code>gw</code></a>:</td><td> </td><td valign="top"><a href="#Normalization-and-Integration">Normalization and Integration</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-gzip"><code>gzip</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-gzip-1"><code>gzip</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_letter-H">H</a></th><td></td><td></td></tr>
 <tr><td></td><td valign="top"><a href="#index-H4CF"><acronym>H4CF</acronym></a>:</td><td> </td><td valign="top"><a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support">netCDF2/3/4 and HDF4/5 Support</a></td></tr>
@@ -19293,6 +20045,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-HDF4_005fUNKNOWN"><code>HDF4_UNKNOWN</code></a>:</td><td> </td><td valign="top"><a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support">netCDF2/3/4 and HDF4/5 Support</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-HDF5"><acronym>HDF5</acronym></a>:</td><td> </td><td valign="top"><a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support">netCDF2/3/4 and HDF4/5 Support</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-HDF5-1"><acronym>HDF5</acronym></a>:</td><td> </td><td valign="top"><a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support">netCDF2/3/4 and HDF4/5 Support</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-HDF5-2"><acronym>HDF5</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-hdf_005fname"><code>hdf_name</code></a>:</td><td> </td><td valign="top"><a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support">netCDF2/3/4 and HDF4/5 Support</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-hdp"><code>hdp</code></a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-help">help</a>:</td><td> </td><td valign="top"><a href="#Help-Requests-and-Bug-Reports">Help Requests and Bug Reports</a></td></tr>
@@ -19314,6 +20067,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-hsi"><code>hsi</code></a>:</td><td> </td><td valign="top"><a href="#Remote-storage">Remote storage</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-HTML"><acronym>HTML</acronym></a>:</td><td> </td><td valign="top"><a href="#Availability">Availability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-HTTP-protocol"><acronym>HTTP</acronym> protocol</a>:</td><td> </td><td valign="top"><a href="#OPeNDAP">OPeNDAP</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-Huffman-coding">Huffman coding</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-hyai"><code>hyai</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-hyam"><code>hyam</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-hybi"><code>hybi</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
@@ -19344,7 +20098,9 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-icc"><code>icc</code></a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-ID-Quoting">ID Quoting</a>:</td><td> </td><td valign="top"><a href="#ID-Quoting">ID Quoting</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-IDL"><acronym>IDL</acronym></a>:</td><td> </td><td valign="top"><a href="#Philosophy">Philosophy</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-IEEE"><acronym>IEEE</acronym></a>:</td><td> </td><td valign="top"><a href="#Automatic-type-conversion">Automatic type conversion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-IEEE"><acronym>IEEE</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-IEEE-1"><acronym>IEEE</acronym></a>:</td><td> </td><td valign="top"><a href="#Automatic-type-conversion">Automatic type conversion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-IEEE-754"><acronym>IEEE</acronym> 754<!-- /@w --></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-IEEE-NaN"><acronym>IEEE</acronym> NaN</a>:</td><td> </td><td valign="top"><a href="#ncatted-netCDF-Attribute-Editor">ncatted netCDF Attribute Editor</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-if_0028_0029">if()</a>:</td><td> </td><td valign="top"><a href="#if-statement">if statement</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-ilimit"><code>ilimit</code></a>:</td><td> </td><td valign="top"><a href="#Large-Datasets">Large Datasets</a></td></tr>
@@ -19404,6 +20160,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-Large-File-Support-1">Large File Support</a>:</td><td> </td><td valign="top"><a href="#Large-File-Support">Large File Support</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-lat_005fbnds"><code>lat_bnds</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-LD_005fLIBRARY_005fPATH"><code>LD_LIBRARY_PATH</code></a>:</td><td> </td><td valign="top"><a href="#Libraries">Libraries</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-Least-Significant-Digit">Least Significant Digit</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-least_005fsignificant_005fdigit"><code>least_significant_digit</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-left-hand-casting">left hand casting</a>:</td><td> </td><td valign="top"><a href="#Memory-for-ncap2">Memory for ncap2</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-left-hand-casting-1">left hand casting</a>:</td><td> </td><td valign="top"><a href="#Left-hand-casting">Left hand casting</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Legendre-polynomial">Legendre polynomial</a>:</td><td> </td><td valign="top"><a href="#GSL-special-functions">GSL special functions</a></td></tr>
@@ -19433,11 +20191,15 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-longitude">longitude</a>:</td><td> </td><td valign="top"><a href="#Wrapped-Coordinates">Wrapped Coordinates</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-lon_005fbnds"><code>lon_bnds</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Lori-Sentman">Lori Sentman</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-lossy-compression">lossy compression</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-lrint_0028_0029_002e"><code><code>lrint()</code>.</code></a>:</td><td> </td><td valign="top"><a href="#Automatic-type-conversion">Automatic type conversion</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-lround_0028_0029_002e"><code><code>lround()</code>.</code></a>:</td><td> </td><td valign="top"><a href="#Automatic-type-conversion">Automatic type conversion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-LSD"><acronym>LSD</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Luk-Claes">Luk Claes</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_letter-M">M</a></th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-mabs"><code>mabs</code></a>:</td><td> </td><td valign="top"><a href="#Operation-Types">Operation Types</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-mabs_0028_0029">mabs()</a>:</td><td> </td><td valign="top"><a href="#Methods-and-functions">Methods and functions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Macintosh">Macintosh</a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Makefile"><samp>Makefile</samp></a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Makefile-1"><samp>Makefile</samp></a>:</td><td> </td><td valign="top"><a href="#Windows-Operating-System">Windows Operating System</a></td></tr>
@@ -19473,6 +20235,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-maximum">maximum</a>:</td><td> </td><td valign="top"><a href="#Operation-Types">Operation Types</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-MD5-digest">MD5 digest</a>:</td><td> </td><td valign="top"><a href="#MD5-digests">MD5 digests</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-mean">mean</a>:</td><td> </td><td valign="top"><a href="#Operation-Types">Operation Types</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-mebs"><code>mebs</code></a>:</td><td> </td><td valign="top"><a href="#Operation-Types">Operation Types</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-mebs_0028_0029">mebs()</a>:</td><td> </td><td valign="top"><a href="#Methods-and-functions">Methods and functions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-memory-available">memory available</a>:</td><td> </td><td valign="top"><a href="#Memory-Requirements">Memory Requirements</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-memory-available-1">memory available</a>:</td><td> </td><td valign="top"><a href="#RAM-disks">RAM disks</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-memory-leaks">memory leaks</a>:</td><td> </td><td valign="top"><a href="#Memory-for-ncap2">Memory for ncap2</a></td></tr>
@@ -19485,6 +20249,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-metadata-optimization">metadata optimization</a>:</td><td> </td><td valign="top"><a href="#Metadata-Optimization">Metadata Optimization</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-metadata_002c-global">metadata, global</a>:</td><td> </td><td valign="top"><a href="#ncecat-netCDF-Ensemble-Concatenator">ncecat netCDF Ensemble Concatenator</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-metadata_002c-global-1">metadata, global</a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-mibs"><code>mibs</code></a>:</td><td> </td><td valign="top"><a href="#Operation-Types">Operation Types</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-mibs_0028_0029">mibs()</a>:</td><td> </td><td valign="top"><a href="#Methods-and-functions">Methods and functions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Michael-Decker">Michael Decker</a>:</td><td> </td><td valign="top"><a href="#Checking-CF_002dcompliance">Checking CF-compliance</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Michael-Prather">Michael Prather</a>:</td><td> </td><td valign="top"><a href="#Promoting-Single_002dprecision-to-Double">Promoting Single-precision to Double</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Michael-Schulz">Michael Schulz</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
@@ -19550,6 +20316,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-NASA"><acronym>NASA</acronym></a>:</td><td> </td><td valign="top"><a href="#Proposals-for-Institutional-Funding">Proposals for Institutional Funding</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-NASA-EOSDIS"><acronym>NASA EOSDIS</acronym></a>:</td><td> </td><td valign="top"><a href="#Large-Numbers-of-Files">Large Numbers of Files</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-National-Virtual-Ocean-Data-System">National Virtual Ocean Data System</a>:</td><td> </td><td valign="top"><a href="#OPeNDAP">OPeNDAP</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-nc3tonc4"><code>nc3tonc4</code></a>:</td><td> </td><td valign="top"><a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support">netCDF2/3/4 and HDF4/5 Support</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-nc4">‘<samp>nc4</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-ncadd"><code>ncadd</code></a>:</td><td> </td><td valign="top"><a href="#ncbo-netCDF-Binary-Operator">ncbo netCDF Binary Operator</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-ncap"><code>ncap</code></a>:</td><td> </td><td valign="top"><a href="#ncap2-netCDF-Arithmetic-Processor">ncap2 netCDF Arithmetic Processor</a></td></tr>
@@ -19560,6 +20327,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-ncap2-2"><code>ncap2</code></a>:</td><td> </td><td valign="top"><a href="#Manual-type-conversion">Manual type conversion</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-ncap2-3"><code>ncap2</code></a>:</td><td> </td><td valign="top"><a href="#ncpdq-netCDF-Permute-Dimensions-Quickly">ncpdq netCDF Permute Dimensions Quickly</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-NCAR"><acronym>NCAR</acronym></a>:</td><td> </td><td valign="top"><a href="#Climate-Model-Paradigm">Climate Model Paradigm</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-NCAR-1"><acronym>NCAR</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-NCAR-MSS"><acronym>NCAR MSS</acronym></a>:</td><td> </td><td valign="top"><a href="#Remote-storage">Remote storage</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-ncatted-3"><code>ncatted</code></a>:</td><td> </td><td valign="top"><a href="#Missing-Values">Missing Values</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-ncatted-4"><code>ncatted</code></a>:</td><td> </td><td valign="top"><a href="#ncatted-netCDF-Attribute-Editor">ncatted netCDF Attribute Editor</a></td></tr>
@@ -19708,6 +20476,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-NO_005fNETCDF_005f2"><code>NO_NETCDF_2</code></a>:</td><td> </td><td valign="top"><a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support">netCDF2/3/4 and HDF4/5 Support</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-NRA"><acronym>NRA</acronym></a>:</td><td> </td><td valign="top"><a href="#Proposals-for-Institutional-Funding">Proposals for Institutional Funding</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-nrnet"><code>nrnet</code></a>:</td><td> </td><td valign="top"><a href="#Remote-storage">Remote storage</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-NSD"><acronym>NSD</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-NSF"><acronym>NSF</acronym></a>:</td><td> </td><td valign="top"><a href="#Proposals-for-Institutional-Funding">Proposals for Institutional Funding</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-NSF-1"><acronym>NSF</acronym></a>:</td><td> </td><td valign="top"><a href="#Proposals-for-Institutional-Funding">Proposals for Institutional Funding</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-NT-_0028Microsoft-operating-system_0029"><acronym>NT</acronym> (Microsoft operating system)</a>:</td><td> </td><td valign="top"><a href="#Windows-Operating-System">Windows Operating System</a></td></tr>
@@ -19716,7 +20485,9 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-NUL_002dtermination">NUL-termination</a>:</td><td> </td><td valign="top"><a href="#ncatted-netCDF-Attribute-Editor">ncatted netCDF Attribute Editor</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-null-operation">null operation</a>:</td><td> </td><td valign="top"><a href="#ncflint-netCDF-File-Interpolator">ncflint netCDF File Interpolator</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-number-literals-ncap2">number literals <code>ncap2</code></a>:</td><td> </td><td valign="top"><a href="#Number-literals">Number literals</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-Number-of-Significant-Digits">Number of Significant Digits</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-number_005fmiss_0028_0029"><code>number_miss()</code></a>:</td><td> </td><td valign="top"><a href="#Missing-values-ncap2">Missing values ncap2</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-number_005fof_005fsignificant_005fdigits"><code>number_of_significant_digits</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-numerator"><code>numerator</code></a>:</td><td> </td><td valign="top"><a href="#Normalization-and-Integration">Normalization and Integration</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-NVODS"><acronym>NVODS</acronym></a>:</td><td> </td><td valign="top"><a href="#OPeNDAP">OPeNDAP</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-nxt_005flsr">‘<samp>nxt_lsr</samp>’</a>:</td><td> </td><td valign="top"><a href="#ncpdq-netCDF-Permute-Dimensions-Quickly">ncpdq netCDF Permute Dimensions Quickly</a></td></tr>
@@ -19825,6 +20596,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-pow"><var>pow</var></a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-power">power</a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-power-function">power function</a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-PPC"><acronym>PPC</acronym></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-prd">‘<samp>prd</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-precision">precision</a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-preprocessor-tokens">preprocessor tokens</a>:</td><td> </td><td valign="top"><a href="#Windows-Operating-System">Windows Operating System</a></td></tr>
@@ -19850,6 +20622,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-QLogic">QLogic</a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Qt">Qt</a>:</td><td> </td><td valign="top"><a href="#Windows-Operating-System">Windows Operating System</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-quadruple_002dprecision">quadruple-precision</a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-quantization">quantization</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-quantization-1">quantization</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-quench">quench</a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Quick-Start">Quick Start</a>:</td><td> </td><td valign="top"><a href="#Quick-Start">Quick Start</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-quotes">quotes</a>:</td><td> </td><td valign="top"><a href="#Subsetting-Files">Subsetting Files</a></td></tr>
@@ -19940,13 +20714,15 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-rew">‘<samp>rew</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Rich-Signell">Rich Signell</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-rint"><var>rint</var></a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rint_0028_0029"><code>rint()</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-rms"><code>rms</code></a>:</td><td> </td><td valign="top"><a href="#Operation-Types">Operation Types</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-rmssdn"><code>rmssdn</code></a>:</td><td> </td><td valign="top"><a href="#Operation-Types">Operation Types</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-rmssdn_0028_0029">rmssdn()</a>:</td><td> </td><td valign="top"><a href="#Methods-and-functions">Methods and functions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-root_002dmean_002dsquare">root-mean-square</a>:</td><td> </td><td valign="top"><a href="#Operation-Types">Operation Types</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Rorik-Peterson">Rorik Peterson</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-round"><var>round</var></a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-rounding">rounding</a>:</td><td> </td><td valign="top"><a href="#Promoting-Single_002dprecision-to-Double">Promoting Single-precision to Double</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rounding">rounding</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rounding-1">rounding</a>:</td><td> </td><td valign="top"><a href="#Promoting-Single_002dprecision-to-Double">Promoting Single-precision to Double</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-rounding-functions">rounding functions</a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-RPM"><acronym>RPM</acronym></a>:</td><td> </td><td valign="top"><a href="#netCDF2_002f3_002f4-and-HDF4_002f5-Support">netCDF2/3/4 and HDF4/5 Support</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-running-average">running average</a>:</td><td> </td><td valign="top"><a href="#ncra-netCDF-Record-Averager">ncra netCDF Record Averager</a></td></tr>
@@ -19996,6 +20772,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-shell-4">shell</a>:</td><td> </td><td valign="top"><a href="#ncbo-netCDF-Binary-Operator">ncbo netCDF Binary Operator</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-shell-5">shell</a>:</td><td> </td><td valign="top"><a href="#Filters-for-ncks">Filters for <code>ncks</code></a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-signedness"><var>signedness</var></a>:</td><td> </td><td valign="top"><a href="#Performance">Performance</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-significand">significand</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-significand-1">significand</a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-sin"><var>sin</var></a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-sine-function">sine function</a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-single_002dprecision">single-precision</a>:</td><td> </td><td valign="top"><a href="#Intrinsic-mathematical-methods">Intrinsic mathematical methods</a></td></tr>
@@ -20217,6 +20995,9 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-Yorick">Yorick</a>:</td><td> </td><td valign="top"><a href="#Philosophy">Philosophy</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Yorick-1">Yorick</a>:</td><td> </td><td valign="top"><a href="#Performance">Performance</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
+<tr><th><a name="General-Index_cp_letter-Z">Z</a></th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-zlib"><code>zlib</code></a>:</td><td> </td><td valign="top"><a href="#Compression">Compression</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
 </table>
 <table><tr><th valign="top">Jump to:   </th><td><a class="summary-letter" href="#General-Index_cp_symbol-1"><b>"</b></a>
    
@@ -20315,6 +21096,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
    
 <a class="summary-letter" href="#General-Index_cp_letter-Y"><b>Y</b></a>
    
+<a class="summary-letter" href="#General-Index_cp_letter-Z"><b>Z</b></a>
+   
 </td></tr></table>
 
 <div class="footnote">
@@ -20377,9 +21160,10 @@ It is simply too much trouble.</p>
 <code>ncl_convert2nc</code> tool to convert <acronym>HDF</acronym> to netCDF3 when
 both these are true: 1. You<!-- /@w --> must have netCDF3 and 2. the<!-- /@w -->
 <acronym>HDF</acronym> file contains netCDF4 atomic types. 
-More recent versions of <acronym>NCO</acronym> handle this problem fine, so we
-no longer recommend <code>ncl_convert2nc</code> because <code>ncks</code>
-is faster and more space-efficient.
+More recent versions of <acronym>NCO</acronym> handle this problem fine, and
+include other advantages so we no longer recommend
+<code>ncl_convert2nc</code> because <code>ncks</code> is faster and more
+space-efficient. 
 Both automatically convert netCDF4 types to netCDF3 types, yet
 <code>ncl_convert2nc</code> cannot produce full netCDF4 files.
 In contrast, <code>ncks</code> will happily convert <acronym>HDF</acronym> straight
@@ -20389,7 +21173,9 @@ Unsigned bytes stay unsigned bytes.
 64-bit integers stay 64-bit integers. 
 Strings stay strings. 
 Hence, <code>ncks</code> conversions often result in smaller files than
-<code>ncl_convert2nc</code> conversions.</p>
+<code>ncl_convert2nc</code> conversions.
+A tool useful for converting netCDF3 to netCDF4 files is the Python
+script <code>nc3tonc4</code> by Jeff Whitaker.</p>
 <h3><a name="FOOT10" href="#DOCF10">(10)</a></h3>
 <p>Two real-world examples: <acronym>NCO</acronym> translates the
 <acronym>NASA</acronym> <acronym>CERES</acronym> dimension <code>(FOV) Footprints</code> to
@@ -20578,43 +21364,69 @@ Prior versions would always use netCDF default chunking in the output
 file when no <acronym>NCO</acronym> chunking switches were activated, regardless
 of the chunking in the input file.</p>
 <h3><a name="FOOT38" href="#DOCF38">(38)</a></h3>
+<p>Rounding is performed by the internal math library <code>rint()</code> 
+family of functions that were standardized in C99.
+The exact alorithm employed is
+<em><var>val</var> := rint(<var>scale</var>*<var>val</var>)/<var>scale</var></em> where
+<var>scale</var> is the nearest power of 2<!-- /@w --> that exceeds 
+<em>10**<var>prc</var></em>, and the inverse of <var>scale</var> is used when 
+<em><var>prc</var> < 0</em>.
+For <em><var>ppc</var> = 3</em> or <em><var>ppc</var> = -2</em>, for example, we have
+<em><var>scale</var> = 1024</em> and <em><var>scale</var> = 1/128</em>.</p>
+<h3><a name="FOOT39" href="#DOCF39">(39)</a></h3>
+<p>The <code>nc3tonc4</code> tool by Jeff Whitaker inspired
+<acronym>NCO</acronym> to implement <acronym>PPC</acronym>.
+<acronym>NCO</acronym> implements a different <acronym>DSD</acronym> algorithm than 
+<code>nc3tonc4</code>, and produces slightly different (not bit-for-bit) 
+though self-consistent and equivalent results.
+<code>nc3tonc4</code> records the precision of its <acronym>DSD</acronym> algorithm 
+in the attribute <code>least_significant_digit</code> and <acronym>NCO</acronym> 
+does the same for consistency.</p>
+<h3><a name="FOOT40" href="#DOCF40">(40)</a></h3>
+<p>The artificial dataset employed is one million evenly spaced
+values from 1.0–2.0.
+The analysis data are <em>N=13934592</em> values of the temperature field
+from the <acronym>NASA</acronym> <acronym>MERRA</acronym> analysis of 20130601.</p>
+<h3><a name="FOOT41" href="#DOCF41">(41)</a></h3>
 <p>On modern Linux systems the block size defaults to 8192 B<!-- /@w -->.
 The GLADE filesystem at NCAR has a block size of 512 kB<!-- /@w -->.</p>
-<h3><a name="FOOT39" href="#DOCF39">(39)</a></h3>
+<h3><a name="FOOT42" href="#DOCF42">(42)</a></h3>
 <p>Although not a part of the standard, <acronym>NCO</acronym> enforces
 the policy that the <code>_FillValue</code> attribute, if any, of a packed
 variable is also stored at the original precision.</p>
-<h3><a name="FOOT40" href="#DOCF40">(40)</a></h3>
+<h3><a name="FOOT43" href="#DOCF43">(43)</a></h3>
 <p><em>32767 = 2^15-1</em>
 </p>
-<h3><a name="FOOT41" href="#DOCF41">(41)</a></h3>
+<h3><a name="FOOT44" href="#DOCF44">(44)</a></h3>
 <p>Operators began performing automatic type conversions before
 arithmetic in <acronym>NCO</acronym> version 1.2<!-- /@w -->, August, 2000. 
 Previous versions never performed unnecessary type conversion for
 arithmetic.</p>
-<h3><a name="FOOT42" href="#DOCF42">(42)</a></h3>
+<h3><a name="FOOT45" href="#DOCF45">(45)</a></h3>
 <a name="index-C-language-2"></a>
 <p>The actual type conversions with trunction were handled by intrinsic
 type conversion, so the <code>trunc()</code> function was never explicitly
 called, although the results would be the same if it were.</p>
-<h3><a name="FOOT43" href="#DOCF43">(43)</a></h3>
-<p>According to Wikipedia’s summary of <acronym>IEEE</acronym> standard
-754, “If a decimal string with at most 6 significant digits is
-converted to <acronym>IEEE</acronym> 754 single-precision and then converted back to the
-same number of significant decimal, then the final string should match
-the original; and if an <acronym>IEEE</acronym> 754 single-precision is converted to a
-decimal string with at least 9 significant decimal and then converted
-back to single, then the final number must match the original”.</p>
-<h3><a name="FOOT44" href="#DOCF44">(44)</a></h3>
-<p>According to Wikipedia’s summary of <acronym>IEEE</acronym> standard
-754, “If a decimal string with at most 15 significant digits is
-converted to <acronym>IEEE</acronym> 754 double-precision representation and then converted
-back to a string with the same number of significant digits, then the
-final string should match the original; and if an <acronym>IEEE</acronym> 754 double
-precision is converted to a decimal string with at least 17 significant
-digits and then converted back to double, then the final number must
-match the original”.</p>
-<h3><a name="FOOT45" href="#DOCF45">(45)</a></h3>
+<h3><a name="FOOT46" href="#DOCF46">(46)</a></h3>
+<p>According to Wikipedia’s summary of <acronym>IEEE</acronym> 
+standard 754<!-- /@w -->, “If a decimal string with at most 6 significant<!-- /@w --> 
+digits is converted to <acronym>IEEE</acronym> 754<!-- /@w --> single-precision and then
+converted back to the same number of significant decimal, then the final
+string should match the original; and if an <acronym>IEEE</acronym> 754<!-- /@w -->
+single-precision is converted to a decimal string with at leastn 9<!-- /@w -->
+significant decimal and then converted back to single, then the final
+number must match the original”.</p>
+<h3><a name="FOOT47" href="#DOCF47">(47)</a></h3>
+<p>According to Wikipedia’s summary of <acronym>IEEE</acronym> 
+standard 754<!-- /@w -->, “If a decimal string with at most 15 significant<!-- /@w -->
+digits is converted to <acronym>IEEE</acronym> 754<!-- /@w --> double-precision
+representation and then converted back to a string with the same number
+of significant digits, then the final string should match the original;
+and if an <acronym>IEEE</acronym> 754<!-- /@w --> double precision is converted to a
+decimal string with at least 17 significant<!-- /@w --> digits and then
+converted back to double, then the final number must match the
+original”.</p>
+<h3><a name="FOOT48" href="#DOCF48">(48)</a></h3>
 <p>See page 21<!-- /@w --> in Section 1.2 of the First edition for this
 gem:
 </p><blockquote>
@@ -20623,19 +21435,19 @@ that the implicit conversion rules are, in fact, sheer madness!
 In effect, they make it impossible to write efficient numerical
 programs. 
 </p></blockquote>
-<h3><a name="FOOT46" href="#DOCF46">(46)</a></h3>
+<h3><a name="FOOT49" href="#DOCF49">(49)</a></h3>
 <p>For example, the <acronym>CMIP5</acronym> archive tends to distribute
 monthly average timeseries in 50-year chunks.</p>
-<h3><a name="FOOT47" href="#DOCF47">(47)</a></h3>
+<h3><a name="FOOT50" href="#DOCF50">(50)</a></h3>
 <a name="index-Michael-Prather"></a>
 <p>Thanks to Michael J.<!-- /@w --> Prather for explaining this to me.</p>
-<h3><a name="FOOT48" href="#DOCF48">(48)</a></h3>
+<h3><a name="FOOT51" href="#DOCF51">(51)</a></h3>
 <p>The exception is appending/altering the attributes <code>x_op</code>,
 <code>y_op</code>, <code>z_op</code>, and <code>t_op</code> for variables which have been
 averaged across space and time dimensions.
 This feature is scheduled for future inclusion in <acronym>NCO</acronym>.
 </p>
-<h3><a name="FOOT49" href="#DOCF49">(49)</a></h3>
+<h3><a name="FOOT52" href="#DOCF52">(52)</a></h3>
 <p>The <acronym>CF</acronym> conventions recommend <code>time</code> be stored in the
 format <var>time</var> since <var>base_time</var>, e.g., the <code>units</code>
 attribute of <code>time</code> might be 
@@ -20650,21 +21462,21 @@ The analogous problem has been fixed in <acronym>ARM</acronym> files
 (see <a href="#ARM-Conventions">ARM Conventions</a>) and could be fixed for <acronym>CF</acronym> files if
 there is sufficient lobbying.
 </p>
-<h3><a name="FOOT50" href="#DOCF50">(50)</a></h3>
+<h3><a name="FOOT53" href="#DOCF53">(53)</a></h3>
 <p><code>ncap2</code> is the successor to <code>ncap</code> which was
 put into maintenance mode in November, 2006. 
 This documentation refers to <code>ncap2</code>, which has a superset of
 the <code>ncap</code> functionality. 
 Eventually <code>ncap</code> will be deprecated in favor <code>ncap2</code>.
 <code>ncap2</code> may be renamed <code>ncap</code> in 2013.</p>
-<h3><a name="FOOT51" href="#DOCF51">(51)</a></h3>
+<h3><a name="FOOT54" href="#DOCF54">(54)</a></h3>
 <p>These are the <acronym>GSL</acronym> standard function names postfixed with
 <code>_e</code>.  
 <acronym>NCO</acronym> calls these functions automatically, without the 
 <acronym>NCO</acronym> command having to specifically indicate the <code>_e</code>
 function suffix.
 </p>
-<h3><a name="FOOT52" href="#DOCF52">(52)</a></h3>
+<h3><a name="FOOT55" href="#DOCF55">(55)</a></h3>
 <p>ANSI C<!-- /@w --> compilers are guaranteed to support double-precision versions
 of these functions.
 These functions normally operate on netCDF variables of type <code>NC_DOUBLE</code>
@@ -20681,22 +21493,22 @@ performing the operation, and then re-casting.
 <acronym>NCO</acronym> uses the faster intrinsic functions when they are
 available, and uses the casting method when they are not.
 </p>
-<h3><a name="FOOT53" href="#DOCF53">(53)</a></h3>
+<h3><a name="FOOT56" href="#DOCF56">(56)</a></h3>
 <p>Linux supports more of these intrinsic functions than
 other OSs.</p>
-<h3><a name="FOOT54" href="#DOCF54">(54)</a></h3>
+<h3><a name="FOOT57" href="#DOCF57">(57)</a></h3>
 <p>Arithmetic comparisons to NaN and NaN-like numbers always
 return False, contrary to the behavior of all other numbers.
 This is difficult to inuit, yet is the behavior defined for NaN by
-<acronym>IEEE</acronym> 754.
+<acronym>IEEE</acronym> 754<!-- /@w -->.
 Using NaN for the missing value in datasets is legal.
 We strongly discourage it.</p>
-<h3><a name="FOOT55" href="#DOCF55">(55)</a></h3>
+<h3><a name="FOOT58" href="#DOCF58">(58)</a></h3>
 <p>A naked<!-- /@w --> (i.e., unprotected or unquoted) ‘<samp>*</samp>’ is a
 wildcard character.  
 A naked<!-- /@w --> ‘<samp>-</samp>’ may confuse the command line parser.
 A naked<!-- /@w --> ‘<samp>+</samp>’ and ‘<samp>/</samp>’ are relatively harmless.</p>
-<h3><a name="FOOT56" href="#DOCF56">(56)</a></h3>
+<h3><a name="FOOT59" href="#DOCF59">(59)</a></h3>
 <p>The widely used shell Bash correctly interprets all these
 special characters even when they are not quoted. 
 That is, Bash does not prevent <acronym>NCO</acronym> from correctly interpreting 
@@ -20704,30 +21516,30 @@ the intended arithmetic operation when the following arguments are given
 (without quotes) to <code>ncbo</code>:
 ‘<samp>--op_typ=+</samp>’, ‘<samp>--op_typ=-</samp>’, ‘<samp>--op_typ=*</samp>’,
 and ‘<samp>--op_typ=/</samp>’</p>
-<h3><a name="FOOT57" href="#DOCF57">(57)</a></h3>
+<h3><a name="FOOT60" href="#DOCF60">(60)</a></h3>
 <p>The command to do this is ‘<samp>ln -s -f ncbo ncadd</samp>’</p>
-<h3><a name="FOOT58" href="#DOCF58">(58)</a></h3>
+<h3><a name="FOOT61" href="#DOCF61">(61)</a></h3>
 <p>The command to do this is ‘<samp>alias ncadd='ncbo --op_typ=add'</samp>’</p>
-<h3><a name="FOOT59" href="#DOCF59">(59)</a></h3>
+<h3><a name="FOOT62" href="#DOCF62">(62)</a></h3>
 <p>Prior to <acronym>NCO</acronym> version 4.3.1 (May, 2013), <code>ncbo</code>
 would only broadcast variables in <var>file_2</var> to conform to
 <var>file_1</var>. 
 Variables in <var>file_1</var> were <em>never</em> broadcast to conform to the 
 dimensions in <var>file_2</var>.</p>
-<h3><a name="FOOT60" href="#DOCF60">(60)</a></h3>
+<h3><a name="FOOT63" href="#DOCF63">(63)</a></h3>
 <p>This is because <code>ncra</code> collapses the record dimension
 to a size of 1<!-- /@w --> (making it a <em>degenerate</em> dimension), but does
 not remove it, while, unless ‘<samp>-b</samp>’ is given, <code>ncwa</code> removes
 all averaged dimensions.
 In other words, by default <code>ncra</code> changes variable size though
 not rank, while, <code>ncwa</code> changes both variable size and rank.</p>
-<h3><a name="FOOT61" href="#DOCF61">(61)</a></h3>
+<h3><a name="FOOT64" href="#DOCF64">(64)</a></h3>
 <p>The old ncea command was deprecated in <acronym>NCO</acronym> version 4.3.9,  
 released December, 2013.
 <acronym>NCO</acronym> will attempt to maintain back-compatibility and work
 as expected with invocations of <code>ncea</code> for as long as possible.
 Please replace <code>ncea</code> by <code>nces</code> in all future work.</p>
-<h3><a name="FOOT62" href="#DOCF62">(62)</a></h3>
+<h3><a name="FOOT65" href="#DOCF65">(65)</a></h3>
 <p>As of <acronym>NCO</acronym> version 4.4.2 (released February, 2014)
 <code>nces</code> allows hyperslabs in all dimensions so long as the
 hyperslabs resolve to the same size. 
@@ -20737,7 +21549,7 @@ the hypserslabs may (and usually do) change the size of the dimensions
 from the input to the output files.
 Prior to this, <code>nces</code> was only guaranteed to work on hyperslabs
 in the record dimension that resolved to the same size.</p>
-<h3><a name="FOOT63" href="#DOCF63">(63)</a></h3>
+<h3><a name="FOOT66" href="#DOCF66">(66)</a></h3>
 <p>Those familiar with netCDF mechanics might wish to know what is
 happening here: <code>ncks</code> does not attempt to redefine the variable
 in <var>output-file</var> to match its definition in <var>input-file</var>,
@@ -20745,10 +21557,10 @@ in <var>output-file</var> to match its definition in <var>input-file</var>,
 coordinate dimensions, if any, from <var>input-file</var> to
 <var>output-file</var>. 
 </p>
-<h3><a name="FOOT64" href="#DOCF64">(64)</a></h3>
+<h3><a name="FOOT67" href="#DOCF67">(67)</a></h3>
 <p>This limitation, imposed by the netCDF storage layer,
 may be relaxed in the future with netCDF4.</p>
-<h3><a name="FOOT65" href="#DOCF65">(65)</a></h3>
+<h3><a name="FOOT68" href="#DOCF68">(68)</a></h3>
 <p>Prior to <acronym>NCO</acronym> 4.4.0 and netCDF 4.3.1 (January, 2014),
 <acronym>NCO</acronym> requires the ‘<samp>--hdf4</samp>’ switch to correctly read
 HDF4 input files.
@@ -20760,38 +21572,38 @@ software necessary to workaround netCDF library flaws handling
 <acronym>HDF4</acronym> files to netCDF files.
 In those cases, use the <code>ncl_convert2nc</code> command distributed
 with <acronym>NCL</acronym> to convert <acronym>HDF4</acronym> files to netCDF.</p>
-<h3><a name="FOOT66" href="#DOCF66">(66)</a></h3>
+<h3><a name="FOOT69" href="#DOCF69">(69)</a></h3>
 <p><code>ncpdq</code> does not support packing data using the
 <acronym>HDF</acronym> convention.
 Although it is now straightforward to support this, we think it might
 sow more confusion than it reaps. 
 Let us know if you disagree and would like <acronym>NCO</acronym> to support
 packing data with <acronym>HDF</acronym> algorithm.</p>
-<h3><a name="FOOT67" href="#DOCF67">(67)</a></h3>
+<h3><a name="FOOT70" href="#DOCF70">(70)</a></h3>
 <p>The default behavior of (‘<samp>-I</samp>’) changed on
 19981201—before this date the default was not to weight or mask
 coordinate variables.</p>
-<h3><a name="FOOT68" href="#DOCF68">(68)</a></h3>
+<h3><a name="FOOT71" href="#DOCF71">(71)</a></h3>
 <p>If <code>lat_wgt</code> contains Gaussian weights then the value of 
 <code>latitude</code> in the <var>output-file</var> will be the area-weighted
 centroid of the hyperslab. 
 For the example given, this is about 30 degrees.<!-- /@w --></p>
-<h3><a name="FOOT69" href="#DOCF69">(69)</a></h3>
+<h3><a name="FOOT72" href="#DOCF72">(72)</a></h3>
 <p>The three switches ‘<samp>-m</samp>’, ‘<samp>-T</samp>’, and ‘<samp>-M</samp>’ are
 maintained for backward compatibility and may be deprecated in the
 future.
 It is safest to write scripts using ‘<samp>--mask_condition</samp>’.</p>
-<h3><a name="FOOT70" href="#DOCF70">(70)</a></h3>
+<h3><a name="FOOT73" href="#DOCF73">(73)</a></h3>
 <p><code>gw</code> stands for <em>Gaussian weight</em> in many
 climate models.</p>
-<h3><a name="FOOT71" href="#DOCF71">(71)</a></h3>
+<h3><a name="FOOT74" href="#DOCF74">(74)</a></h3>
 <p><code>ORO</code> stands for <em>Orography</em> in some climate models
 and in those models <em><var>ORO</var> < 0.5</em> selects ocean gridpoints.</p>
-<h3><a name="FOOT72" href="#DOCF72">(72)</a></h3>
+<h3><a name="FOOT75" href="#DOCF75">(75)</a></h3>
 <p>Unfortunately the ‘<samp>-B</samp>’ and ‘<samp>--mask_condition</samp>’
 options are unsupported on Windows (with the <acronym>MVS</acronym> compiler),
 which lacks a free, standard parser and lexer.</p>
-<h3><a name="FOOT73" href="#DOCF73">(73)</a></h3>
+<h3><a name="FOOT76" href="#DOCF76">(76)</a></h3>
 <a name="index-chocolate"></a>
 <p>Happy users have sent me a few gifts, though.
 This includes a box of imported chocolate.
diff --git a/doc/nco.pdf b/doc/nco.pdf
index 517408d..ec044f8 100644
Binary files a/doc/nco.pdf and b/doc/nco.pdf differ
diff --git a/doc/nco.ps b/doc/nco.ps
index 37b1286..72b5b12 100644
--- a/doc/nco.ps
+++ b/doc/nco.ps
@@ -1,19 +1,19 @@
 %!PS-Adobe-2.0
-%%Creator: dvips(k) 5.993 Copyright 2013 Radical Eye Software
+%%Creator: dvips(k) 5.994 Copyright 2014 Radical Eye Software
 %%Title: nco.dvi
-%%CreationDate: Wed Nov 26 13:06:25 2014
-%%Pages: 274
+%%CreationDate: Tue Feb 17 08:27:47 2015
+%%Pages: 286
 %%PageOrder: Ascend
 %%BoundingBox: 0 0 596 842
 %%DocumentFonts: CMBX12 CMR10 CMSY10 CMSL10 CMTT10 CMMI12 CMMI10 CMR7
 %%+ CMR9 CMTT9 CMB10 CMR8 CMTI10 CMSLTT10 CMSL9 CMTT12 LCIRCLE10 CMTI9
-%%+ CMTI8 CMMI7 CMEX10 CMSY9 CMSY7 CMMI9
+%%+ CMTI8 CMMI7 CMMI9 CMSY9 CMEX10 CMSY7
 %%DocumentPaperSizes: a4
 %%EndComments
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -o nco.ps nco.dvi
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2014.11.26:1306
+%DVIPSSource:  TeX output 2015.02.17:0827
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -138,246 +138,6 @@ matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc
 savematrix setmatrix}N end
 
 %%EndProcSet
-%%BeginFont: CMMI9
-%!PS-AdobeFont-1.0: CMMI9 003.002
-%%Title: CMMI9
-%Version: 003.002
-%%CreationDate: Mon Jul 13 16:17:00 2009
-%%Creator: David M. Jones
-%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
-%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI9.
-% This Font Software is licensed under the SIL Open Font License, Version 1.1.
-% This license is in the accompanying file OFL.txt, and is also
-% available with a FAQ at: http://scripts.sil.org/OFL.
-%%EndComments
-FontDirectory/CMMI9 known{/CMMI9 findfont dup/UniqueID known{dup
-/UniqueID get 5087384 eq exch/FontType get 1 eq and}{pop false}ifelse
-{save true}{false}ifelse}{false}ifelse
-11 dict begin
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
-/FontName /CMMI9 def
-/FontBBox {-29 -250 1075 750 }readonly def
-/PaintType 0 def
-/FontInfo 10 dict dup begin
-/version (003.002) readonly def
-/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI9.) readonly def
-/FullName (CMMI9) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-/UnderlinePosition -100 def
-/UnderlineThickness 50 def
-/ascent 750 def
-end readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 58 /period put
-dup 60 /less put
-readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
-45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
-7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
-72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
-BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
-974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
-11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBD07FC5A8862A8DB
-7E2B90C16137614CDAFB584A32E50C0935109679E31306B8BDD29F1756946A67
-7A7C2D9BA6FAB9B20A424AA0E6F4BA64C2801C2FB5A1156CBEED0ACB95F697B8
-BC2A6E6AA7EB1F9FD8E3C9B1A16697EE1F0E7400421A7765AB218FC837A49365
-82DC6B2C877A7DA84A81E6126EE96DB25C17A207D3020A045DCDAA064360DFFC
-E3CD50E21ED239D2A6450D04F879A26443ADEB6A20ACC504989876476C7D1A74
-91564FEA1F4CC2C8C8FDF666DB537F315AE1886C73CB5B00E67E7B398A6C018E
-540EAEE98BB8136C4F044EDD63C33431D2CF9740F051DF365A4045D9D8782112
-7BB5D494D9235BA98CF2F30CB119F5A904C32AD04C960C43FC1F5FD8DA7D90D8
-93AFB59F3FF4F796481AE2A7548F948FECFC6C127C4D3F159B08F206AE8C296D
-EE470DB2F879EA79475E029D22D7A8535C09A18689DB0609CC233E5199C02756
-972CC9C94D9FCE264DEE5D75C8D651E4E2D1189AD9588CB815722BB5EE3C379A
-6F31C2E6AE1AE4CCEB29766190AFA20EA937114978752189F1A9F42B39483149
-796FCFA123BA9CCD1D9BE28289660BCAE16C40B5B504058D55CFCBFB4F4E3D94
-DDBF39F157E63946534DA81C018B1C01B9F10DDB55E0A5C2B3985ED1977C039B
-D6755EA42CD09E27751E159C30B93F376DBE61CD3AED34BA36A768F232EB3B80
-E3E6B77C4A48D408217818E398B83D995AB6BC871F20991DF57313D6EB0C793D
-0F28088EBDB7F38DAF7E01AAB3476EC24D7BB38A9889A7D3038D930FF4289B83
-F54A7BE1E2D98A3822098D2E4D067A0D400C20C0B2B4BBD74C13ED1B827490F9
-ECF48F8C3994C1C5AAC9CF783BFA4F307528F51EAB55F961808A42ED53F00C97
-72A432EAEDCFCFB622389BDA707B6ACC9433B065CF29EBFE93AD14B8ECD5F47F
-F073F11822C49B8BE924CDFA6348C3A75E9BB9BF3F31C41716B34794B28CDAC9
-4DB8B087E180A9B3B17680F73D9C12C8D86A922C948093629F5D7F542ED882A1
-692F4F6696865E53E3E2DD43B2D5E8C989CFAA5CA5C4C5999045E170BDE9921C
-BACD6F2863F5553EAB2BA2D4A9034729EC0C4201DE90DA89B0A27C5A5C974109
-4E37BFB3F46B3A506169FB0C68E1CAFC844419A8D261A1FD86A3BB78E33D5FB1
-CFC687A5975987CE45155E5FDFAF0CC5FD5568CB1C26212F92E88255F0549F59
-41B33125946DE43436BEC00804063FBF03EC796E3361B1C852EC3038D107F80A
-9198968265D5488B26D7670B22C2D75EDFFD1B7B4AAFA36DFD94640C9D0E2D20
-5BCA18683EFB91834A3939AB8EB60E2F09655BE003582634C52770DA9668C292
-2E02929D812EE2B0CC65F020064AD5BDAC5F5693B30508F40ED8E20E87149BD5
-8DD41AFF83FD1944804017DC5A04512E593549FFFAE501131CE2FDB65EFD0B8B
-33809CBAEE411B3941C241550B9C30DD28088708F1C0CC3125CBEDCD985EAD28
-03313741F67DB5744A87B381147D5BA70AE1145C27F794854628D87D6C1ECCA1
-749E3465B950175D3C3F40E344297BD92D3190041A4392033A79BEAEAABB8DBE
-CC14E39612F43721CFAE6F79074429221CA588AA2501DE520A464DE157A03AFE
-3C082FAE7628FC0C57FFC61D0330AE6332D20FDBB09BF36848FE05E782D6379F
-64F9C82C45402481B0A35989027F9756BF5A79DA2D96E10F39167ADB4305578F
-90B509B6891338FA1D67DCFD61804AA6621526B2EE4769589A2646581712AC05
-DA6E98D16494F07D612743058F54FEE516BD89A8EC3E03F9D7F905175D3412C8
-F7329077FD6EB25213F3CAC94BA0C3363B759401B6EF7548C7D709F3241D030D
-4EB46A1AE81863C412BDDAEA6084C37143A4C5E41BC646315B1CD09F934186CF
-49D1D8239E363A435307030BD79536B50B723A39DD763DB539F24A10DDA12BD4
-E467339D2D6DB177D6FC539FA77D2DE4118EBAC161E928749F7C753ADEF86117
-58619F1155C563DF2E11ACA8347908B98113AED58FCD0394150EEC94B7F986EE
-88BF7171D208D8F1774B1DD478F0C2958AE372D257E7EDF0F6B5D6059CC4D5D3
-B00FCBD2E9CBE79235B9A5A3E943CC27AABB58728C95C7DBD4F4A1F8A4DA99AE
-7377B0CC0BFBD454794398AE0D5F7281771FFE87B25A819F36E692286A42D776
-01794A43CA9BB30FB8FFDAAF014F909A369E34C2F6C75B7D4EB9DB0580E33F46
-19654443AFF8384B95600B86FF8E41FEFD032355626D60C7507C058EF832DF41
-194B48A36F11082D1DCF4723E21401E0C7447AABFAB4639B26E3D2730E348F55
-53EBFF39CDD03E06E2FA5FB379603C879EDB7E1A10F89695C9C47DEEE52BE0A3
-F446F187AB9D7E93E6F9387F21129034F36DF40605D28FD526AF82CA9D232BE4
-412567F06B38ECCD496EF40A7B243E46C9FEBA4F1BF4B1ECA029C5EC239353D6
-C0B100BF7E7DB33BD1277DE104F15AA19F37340A777741AD1AD693BC76DA48CC
-C6F83CD84591ECFEE375979972B0FAC4C10B625E4BFB261B9FFFA83C31DA0108
-4FFB6377466E9739E0EB64424BD9FC7239C7DD834EC6788A0F97FE714AF92831
-E1BA36A8A9E24739F1DC82DC26CC3CE28C210AA7C569B19E1784D663A0CA4E81
-AFF43E86D6F5F63778847700072CEB77A4EB946DC1F23DBC00BCE773203F76DF
-00F0B085F31420672974DDC642D885E95BA6BBE43E1CA8ABF464D9881CDECC7A
-E98E31B9754C9B72A8BD5CF6D4D214DBC3BA7A0CDF6635953F5AC1E7639C4A91
-C7AECE4C75CA3389C348F656FC2CC96C84C85A926237B6504DB51937C9CFCDAC
-B75C31ED570D180757884E27757783DB2D5F35ECC48C496CDA342D49AA947BF8
-2FDAD2F19DFE8CD1C76A8FA08F33681F3E12E229D7DAB45BE3A3F258B5ED4980
-F15340CF20D965252843E026803E8AEE736EC41CCA82167401977AB719AA2F50
-0B791EEAA82027B3C712D2EB9D14BF8F94FBDE2227609BCAC41EC08DE2BAC023
-28352F913F7DF08D4E1C66E83F764578B22B4EB7191E852B91ADCCB1BCFDB1F4
-E63DFD152E86FA9DE9BC8908130EFDE29CC4401339C05B5B9764CF8EFF14951A
-C6C13AF979546996BF22F2B96D3D585B90CD27DADEC78914DA48432C6ACBDD42
-20EF583FD41F2F6D6D10C3DF7DD077304B5940BB0462656E306CBD91EB9B756B
-7014B1884A36201EC582FC9345C386043DD2818FC301EF78791C1D7854F8FACE
-5DE9801DE9F59D5B4271E003AB897B2EF49501589D681D59CFFD9B03F722EEF4
-74ABD29997515DA3591496B62666744EA76DCA45504F8075C0652D6779DBEAE4
-90430C2945FBD60AD53B51DDBEFC7ED703C418B4B244C8FFA5A3C1B7600C5A55
-3EBDB93C16AC191C3A28EB2279BD3F0D67C826BC6A73D3C0AD02262368AB4621
-98A1605F2887BC5880E1AF2780330E0FD01D7CAACBB0F008A42C427F38236066
-54799594E515B289044BAC4DADF8B3686B4372C5110201221FDA923F131E07E7
-93C44BAD406838BA4D1C277EF74098B8C0EDC41EEDD58C195D7DFF5FEDBF96FC
-19CEBC6C3006DD2CBF76916B4298BB915663C2F61AFD7747E03A03BD7280197A
-9DA590E3D081C6F53DBF94E8D6FDDDD910A70AB18A0F6D48A590FFAB314D6CFD
-E3FB20C1F3C91063F00726A2C13A3D48323F9854839405E5A29D66A43E6E2B84
-A8B3765F1D817071D4D6FF42BC785C2D11AB2B9452F141696CE19C6AFB9777DB
-107D6E22D8CC6C26440BC48248AD8805C4329D46BF433741CB519B21663392DA
-5DC7FC9BF37E5BC396BFADD7263D09F6B4D69594AB386B7BDFCF3BACB97A0E08
-22013E716E642592A20136CF9CFD61D4E515D80E06A4CB4FC9D9B916C93CEA95
-B83B98C48CF36C1D02291D4F5C0419338D64E33C90C90EDD2BA3B96D70FAFE0D
-403A060CFF448D3E28A9B1E3916018465E86095BAAB4706CF7ED350D7C554789
-D7F4FE5F180767DE8739259E68CF142040BE1E2E8C6152DE3417C1FAEA7584B6
-20781DC4A9796431EE713DAC4E713C839D7A4FDC8AB6BFEFFE767AFD8B67FDA6
-943AD387E5D3BCB09039ADB64ECC2BE2620C6EC269E708DD06C311F450099E33
-AF46AEC644222E7DC4DBB9371EE12CFBC4F9B27AB46AD1DA96CE006E1DF8291F
-A550A93026CBFFC1087B134EC6EA76F5E109CDA58FF47338A0039A786A575F70
-B8A03A4F9C8D07A4C856C77D9BCC8E3EAA740172D0C2D0A15BA35C9E5717D7FA
-2691774DDE730BB9D7C70D7AE103DB8D35F3728470C76EBA0E670634E1A0BA84
-2FA102BAD7271DF2680D86A4CA6FC353869987700E5E3FD778165456033D624F
-E9B3E80EBF431ACC934AA0357E824B8AD73E222B510DE8445C55C07C8E5DE46D
-E478F832BDDECAF2EBB11941DCF84CCD887043FAED9AA90D12BC8CA9A0C8D94F
-8D3BF1F80B14B6CAE6BB1C6AA405AA64BB94D5A82CFEA548BA070796A02F9642
-87326D066101435AB9EB40BA9EA9E61B363F5F5E3B924369796E8B78DE3414A4
-2B79C6A13ECB2F34E6299658D07D2B3DEF3D4383CE009A927F0EF5C196652842
-D96B857AB5E905201E7E8BA21A5EBED1FC6863BA9A1A6E5390407F75055E2EEC
-512FBDB3E82CEA13663F1A1944DA072C765D8CED06AB461470C5723BDC1271D4
-4D1D049D3EB131743F1EC9A6ADDAA038ACA2C41D139DC6A84EC3C61AC7F1E559
-6155CC2F49171F6E07CF56D721D9728E87FC7DCBCAC46455A3694C765FE807E9
-9CBC2D304AF37E0F28CCB22F239541B53A4D24D09C662559267467EA487BD33A
-0BEFD4899B581D20582930703A868655C31BE935364CA6A95FBCB22CB714C040
-9718824DFE97929D0482430726CCB5A5307957DD2432A9B6271E849148DEB76B
-FAA290FF6D0B18DC5B76407852E81C105EC6CFAB0F620C6DC9DA555A33C167B1
-430A8BC338BFC7D75B7099CC906AD923FA107C74D3FBB719D77A4E5A685FF9D8
-56424EE4AA074434B809D894ED50F6A60A035C5223EA25DD8983B9B34210DABE
-718D7B2BEB293FF1B63CFB1CBDAFC69552963D90F5E3FF533A3FDBB626E9FAA3
-F3C119E5E01C7BFF832A033C3515BF049E29558B1DAD652F2888E339E67D15AE
-95F9BD14E3253DFE9072B24C0E7E85025B71096AF51C86AECB2921126A43156B
-EC812B32B1164BD9B2B947D503C015616DBF2024F5C8CB3236C1DCA653D661FE
-6B1C19A22D272A176B7F1B7F9E67AF40DB0EFD4940E58B2A050249CA4E55CAF7
-6ACFD84FB46FEF952D18552B3972D79D808B4C263B8C7E1BB647A2D03E102867
-630D5C3F2C917F765A4F6FB8106BA6A9D0093E27A4CB6049C2371287D94B5111
-6E7020776EBD744C6C920464BBBC0AC206033E8240017F8CCB112596ECD7CAFA
-89950CF43FD87ACA750C03A778A37FBCE9C82C2F5ABB135BB02DA8E8C0D24475
-3BEA9D79372D0022FF1ABD378C151417DBC69FE5C9CA38D23A3900E34BF924A2
-90777ACDC37930B67DD44A2E76DDBD9B89598D5F626BFD325A978D277265DA47
-38CFAF16E7FF1946E15F41CA73F7B4B02E5AE8FC4C37B115BC567E4EEEFEFC34
-EC8974B1465AE57759EDDA28DD38A9210871D35D331AE1BE6097C3EC21C770C9
-B25D040B2ECCC3AEB1EA1BF99E0C2C0F192C13BB9152CFCF75332E03F9CEC376
-9B8C285A35F53655BE38713E09AE34BA2DA9C06FA42A6FD2D00CBF2AFD2BADB9
-1571629C65DA38A431710CF5B01FCA68E8B8569922FBC3F9B64A5509B6F677AF
-1B97E91FFFEB6308AB68AC58F9BA43DB5E764021E75B56170EB44C2C0A7DB86C
-62B8982256D3621EBE3DB3994DBF5C5A14CF34B4AF3BD5697F8E3203085DE9D5
-84B0598169760B925463E93DC87CE70AF4C2DF0F4287D2F2069847BCCF7A37A2
-AD451D5ACE4DBCCB2E14D5DF38B226952E7446BF87BEC736EF3D5AE793304618
-D66D3299AB9F9CA1D13F134FAEDF36750046E27706C7CBD8E0877BB6276E5196
-BC2A355D109C0253644918E1CC11B717DE6FBDA201E769812752888CD66268F6
-4ACF4A9449378F9F9923D584BA1B51F33663BE7A306887BC14A37E3C5A4654E6
-531D6EB63DE3946BD8BA95CFB037991174F36D61D842071E6625605CAA350A24
-FE551025D10871FE0E2599A63900C8520EF4911C53A03897C8BEE152451708E2
-43FCF4E700C583A5E8DBCC03BF9CAB864DBD19E1760945DEA0EC0BA38BEA8256
-D3A8D4F70F6685A99C6BD2BA8B412A26C002D76138CFCC7DF6802931E5D97BA6
-0151F6A4C572235B4196B22B7B2D14B32886DF0D2CA8A277ABAAC53B63F64CE4
-E4C088192AAB674497E8AF81961359C389B51F4A257373D907C615030BFBEF53
-DBD99058FD06E352450B658478C10454AC8FC0232B70D5CB916981978053E358
-99D322A07294748BA427FFD1E45C909171017B52B7C742FD77A8560852D819DD
-8DD53211A14D7B2FD11E42941722FD3985D627FDAF87EB57326A0D290B5077D1
-8A4230BEB40523A8565F95E0D44F036A571DB698EDD9D94FEC9512369E5E5E73
-A3CA5C142617944F4F99C0697ED088ACAC007FCE06E5A6EDE7D0E03A3399DCE5
-362271BC31533866BA79FD1FB3F608B22CCD4111FFB1BA35D920A23AD157C6B3
-C3DAE11069D5E46DEDA7158C6478D8B8C0D9DC237CDF0CC6633911673C43FB79
-E4F9B7F27495201E5ADE66255BC2CBE9D9F237DECB62A19D62CB41A1C92432D2
-07F0629E913A71B3F1AAF8B8C5AC66D3C8605A48F8913E39C859E163DB1DBC8F
-0ACFEE80A40B6172032E95A76B752B873FB4DF23CF3A655AF1A1B88C8DC156C6
-190DE72973950565454C0A188A33395FD3D529A88F2B578356DE8EBBC12F04C4
-5B899F667D9E6F3A4EC6DD8DE71FD4C2E2B6D56823EE4E0526679D71FF1B868D
-F261489F06F97B010CCBE640E2F57BA3DC3332B329F7958394BA9777D833AB50
-005E8E9232547104065ACE33396772B0E0BD66D2C6CC54DEDD071E444D8C95F8
-6F88B31E20FDB80F77C83151B7E25BD3736B4F9BDC52EE78C41E9475E5A6D94C
-D348AB42F5E36B4F167D29EBDFBD43B03F77EB296B06A36880FF17D412E77EA9
-F2E7C25FD05E16BEC6732681EA21AC3FF6893B93FC09316A370CDDB86D9E6087
-F6042C3F9ECD742778389170F5F041329782FB9F9702F7533E51F355F71825AE
-2BF4F8FE50D413AC9A20C41B42537FDBE8DDC5A5C793D3760C1EE13716068752
-F0AF10812250BEDFB4D7133FD58F4587BACD572505C84A7D3802D27443175FE0
-0D89C3398B55176D8642AFBAB5CBCDFD6220C8488564B4306D74A58CD2921AAD
-73CF803C754DAC2F30A5324886E273064FA51781D5BC596BFEDDCE3982EA1AA2
-62CA7BAA1B16C6EBB99B2AAC4E6C9CEFB3D10F19987045C4918DB239E6E63D79
-5F44B9D097118D081153AFF96E5EB39CBFBB99A3BE30909F614869031358EB98
-F07A97EA78AE50375941B2474DB46AF3305F2B208D45921F93743A6CB8AC584F
-6BEBE25ECAADD5A789EF60C9F54446687E7B030DA3E5243189F02BA46BFD28B7
-DC14822E136AC7E40CE20458DDBF356488045C95907363864CD6943643BF0109
-EE027A3091C11EA392EA91320EBFEA3B857370AD8EB86D73F035A476F7058222
-E8CDE78CA1AA9EA69A8AA6EBFF3E67324C567B914134DE042D6F8F18A9373107
-536E8D90189917D343F5299024239E2EC1D2D177D82DC8E344A7CF2AC71AEC18
-36F139E7A4EB59A67192BCA9ED0EB25DE13032F6FEAFC3B1F4FC81BB0EDC41DF
-B9EB92618667C59EA499B788CD26C2137D70F1B0AF793AF5AD0D0941F2E746E3
-F5A7F0288BC1EE11E982EAAE763CA422D72FBBC0D754AD58FBF92629DC8866A0
-431213513744DB48E52EFC89C83FEB082588E4F30D7DA77BB4C90E011A8C6BFD
-78C82BDCF2A4AAC3F5414C57C9ED29EEE1D68060473C239DBA7010537BF1D2CA
-1310A26AD4F71AB9C414BCCF10203734AF782E067931EFDECFE6919D632B4CDF
-967583F5DEB2BE8868EB08D1B0C7B0024EA03AD592E24F47A6D28525C823C945
-743609B53849276DF9E112781D53309AEF17B92DE777EC90486B0B8F5CBEC6D9
-9E053FE75FABDD66A317EB1B8BF2982AEC246A706076E279D99FEB5F61F1CF22
-C5C8AFBCD095599A81E6695A191FD7EEC5B28140B8EFA448B6532AC9E2618FCD
-8DFDDD56AC4B38BD355F9D94665B605CBC57C31AE91DC4E37F1B8E4144E88376
-D09C66FDDED81CBF4B9E91DAF49C91A710EB4176F47E8C16C7A5423C223196CC
-3E3F649D0427D85F31F444FF93FCFA28DA581658DD6EF8AB329035AEB2ECBBE9
-A53C0BA8EC71
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-{restore}if
-%%EndFont 
 %%BeginFont: CMB10
 %!PS-AdobeFont-1.0: CMB10 003.002
 %%Title: CMB10
@@ -1441,241 +1201,6 @@ FE
 cleartomark
 {restore}if
 %%EndFont 
-%%BeginFont: CMSY9
-%!PS-AdobeFont-1.0: CMSY9 003.002
-%%Title: CMSY9
-%Version: 003.002
-%%CreationDate: Mon Jul 13 16:17:00 2009
-%%Creator: David M. Jones
-%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
-%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY9.
-% This Font Software is licensed under the SIL Open Font License, Version 1.1.
-% This license is in the accompanying file OFL.txt, and is also
-% available with a FAQ at: http://scripts.sil.org/OFL.
-%%EndComments
-FontDirectory/CMSY9 known{/CMSY9 findfont dup/UniqueID known{dup
-/UniqueID get 5096650 eq exch/FontType get 1 eq and}{pop false}ifelse
-{save true}{false}ifelse}{false}ifelse
-11 dict begin
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
-/FontName /CMSY9 def
-/FontBBox {-29 -958 1146 777 }readonly def
-/PaintType 0 def
-/FontInfo 9 dict dup begin
-/version (003.002) readonly def
-/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY9.) readonly def
-/FullName (CMSY9) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-/UnderlinePosition -100 def
-/UnderlineThickness 50 def
-end readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 0 /minus put
-readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
-7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
-DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
-511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
-1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
-028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
-1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A580F0834F28818EBF
-F29D3B2C7C9AFD969BA6D3B7429E222AF78F6DE00CE2C8008A5966422936DC5A
-DE549B458EB41026E123FE75E703E046F665B7DC78298A145548DEF8D579E008
-39279A5208EAF898A357DF3FD9CE4450811F20B454D86B2947BEBB11EABFC62B
-187B12458E022CDBAA6EDF4A89D79300F635D8CD973E35FA8D9B1240B3D30D72
-4F30444BDF0B51ABA15A181A3196A6CDF9CD1D38D64C83E745A767446641991E
-23EAE067609DC2E84B44D923CC98407812813D5AEF0EA21E560B31BD77D735BD
-E35EAA564A570DD3294C703E16BB9F251D54407269C8B23DEAD063018D6EB748
-4204A415AAC8384025FA922E7074FA7B8A6C31FD3761E7B2737D4D9C9992B7B6
-DBD0CFDBD87D42E1A451FC5C7EFAAEC65D10D278470DDF42DFABC836CF15D042
-6900E0DCDD36E7153BA186B8358E74F91A1D43D62EB0B821C0E97FE63F1586D0
-98F01E8F6B6F2A435343A25CDD80D3AEB42DC8E5AE02F8837B84EE5EB508B02B
-6980D2349984FE1A0D3ED12355D556BA483CA078B7921FB336EDAFC22AE05C1C
-5614F5025B890009272DA8C838B81913C872A54F7E932237FB1BC2CE5D64CD04
-2D320C8E2E610E9EE36EAC7C28C833F8A14048E751B61D0CEB342CBAAB34D104
-311B421B8CE4D903D2E2518BA8B734E2637E2CA55426C4A87EEBCE637F8D71F1
-54626C52083262A5A9A3B49142948BC1AC0B7698811AE81FC3D3B1C14E6C274E
-CFD6C480514F3649D7725A0A14C82C9D537B1C5A9ADC816340B8B4E484AF55AA
-905EA936A83FE2BE788D084469008F407447E0077417096333F163CE94CD3098
-4B9712EE23120829AE2695EA63975492DB2615214B11C87ED0ADB776ED4BA0B1
-40D09D1A617D4F57EE1A9B05C8D5F42AECB9C6AE67757DE6307B1A9C467123DA
-773239976AB0EA052B23F263031ACABEC9EEC7A43ACD0DC2D7AD66664FB0D937
-6A0F463A173E8B90B2596DD323D2350435D9D31B638112D70492F44769FC0C6B
-40A291FE78AA598CAFC19E5AD195BE7264F0EC29305D36C7AB8F2A733797D75D
-94C8F7AAFC49C13C108F514745A394F460294C6F3F44162BBFA878F773A5115F
-062E934253B786DA2B9A6E8E843E06B97075BE99F21B330D6684998C5C340B72
-09D69B655097354CB682D42120ABF5109E5522ABEC94D05E7211DACE8737A1A9
-0BD3EC16F48798E67C7C85560D79366504BBFE5F7F5EC1B05B9F68F98149A02E
-E53F321C213456D802C01871E9024F965258F71215F40EA71057C15E349F06A3
-A016BF1B7E44DC4766FC92EE500EBF7C47D36B1EA34981EE6FE38FF4903466A8
-C9020B91CFC731642003AAEB145EC0F13D6281B0838BB4236C220F6F467F7DCB
-C79BB9CD5B6A180DD2ED7F94DA6B5CB833E62E898BE832DF601BFBC8148F9430
-C8AC459F23EA2536E301C9DFD3FFBAF4D01E7853B60A69B5D012DCC0054C0BA2
-1293D3B4EEDF7C5C78118138544A60FB1A500F72BA39E63EF5D97D68369850E6
-9B6336DA577128DE68FEB71877360D97204B5F3C06E808BF95AA6D6013524BCC
-85CBA9FD2CFEF383645E7E960E7AD471A6A3B8B8C3A0A0B8464836499309D82F
-52004FCDB68997BAD9E4B5B881634FE1213283B6B19308BB67F2364F7ECD5534
-467EF07CBE71989FFCBC6224417C0710EB3EF2676B9DE846E7FFB1AA6608EC9A
-76C31724A19ABB2AD08CC102F5DE8E4E513F90A53F06D440A66B000CCAF6AD12
-6F4B161B56FA5FAED65A24FA183B84F4B45407AA69624068EE0E3E47BBE973CA
-C72137823F1D676131C8CD5070092CD73FC2A93E0480310E21CFB14C031206AB
-411694AFE7B639ACF35C28705A115E98BC69C66F6C58E9E79902453798D76267
-29B780AFB6B895B34CBEA51530E8300569EE4D500527BA294282FED81F730A46
-6ED19AA5AD45852739882216EE937FC45D75116BBDBA6FF4B4423B398E383CCD
-A7D705B8BA85076133E823300C3EFC9EB9399575F5F6BBF868265304B299AD77
-B6B4EEA04C83E163E8CE2BFACA65F9DAAE3AD2B0F8DA1F986E6A12DDB2AFACD2
-217E37B093F46FF3E20E587A9490401C2833F5844763FE2C528E151214E8CA95
-018E1D8D47C9EB5FB4F0EA2A6D064680DEFD2C5489298F83B58EA7FA8CB019E0
-671028C59C3E007DD86CD247889ECFA6AD6DA2433B02180DCE6ECF9E495D0976
-D063A61B007233DED5E3F351D790F26D4011582735A69F37E7CCBB0AF254B925
-B378522B748BD9BF152E2187DEA12BB168C42AD8D67D18567393B35DB2AD8403
-5A7093EB59FC276525B8796FE81944F7F03349BB077110E182A61754ADECECD8
-A5255DBADB523F3DC251A7D97F17DC76281CC632FAEB382A972D60A15FDDA57E
-2F42AA338D889B47F6A3C1FADAFA8D11D63EF8D0C8C0FCE61FBD8AD34EB8DB3B
-722BD86CE5B1268F704ACE82A39466DC2D96C9849B9422567FA5E728B17FAF61
-59A77E9B3289DB807DF54D076139E3DFE176C3131FA4540C1542AE5AD6200FCD
-B92D5DAA77DD4D3022049B6EA2A037FE96E0CEBB1608C663F1373246FA74D70A
-BAE7BD37F3AC23E003204FA8270B4514DE1FDC5401B69CBC98A67A5CAB5505F2
-87C242B6ECC86E88EEF44B9C79DA5F88CFADAE8B4CF437A7CBD5E0C01A9BC479
-E92EA48C808820C567E74D62ED7597FCEC53DE9A0B3EBB9A3FB50AEACAB82BF9
-2AA56D029357AAE016582592972ED01C0ADE565E87607F17BCF4983E3321F606
-ED664B9516D404B277C2C1B0F873D469D64A9744D9C1897125FD471E71BE060B
-A3A617DC8D812E184664BD83EC74EEB5197611380F2D859E1A61A14404493D04
-B5537C04541E557CB5039905F37E72B762EBD2321633E12C38C409338AD5AAD3
-1A507BB2B8F5235F0614D0CEC2BE44CAD504C9B2CD3E45437A493A33B9BF8A1C
-3FE66B1E673449A54E8E3C3470688E94EE4404C888583F7C96B43A592D586D25
-8AC1F206EE5FBF3AFF7EDF9BA91EEC6BABD573D455E0AD6802E7E23A662D4F12
-FDDA00EA054CD331DF86C099C4BE8AB4EAF5D8EC1BFEFCF50302BE61E6FF26D8
-1E88C544570E8D6F7D875466C70AA91D6CCD4DF4BBA34FC67191D1692D3FB76A
-66F114152956A5E38345E7495BEB1A389B7D0A59624ABA784F77C1BF7728E556
-F9D97D71858D61624C22C6914A3A995BD75922A2C37EF2CA91F923A4561CD3D5
-2DCEACD9C3A65A9FAFFFA4822E79D6D89D6366DA6362DB16FF061840582DA35D
-E4EE8308040C2DA5F298944EED470D6E4E1FF58DFDDA96C20C85E2DF2652E12B
-2EFB8F890D301E8CE777678FA786E552A62A60DFC369AF4BDC069F5457FC86F5
-1FB1A38A2222EEE86FE1AC9A8227663AE33217C1F381115CCD04D2F381A27E97
-36D356DC64615AD63E1952B37AD4F967317D76A6DEF039CE8446AA634086BFB7
-7B0B34F595B61ACEB346F51ED10ADDB7B852B5B2BCFE416D0435A7CAA4C9D9A6
-152D9AD938F39E9756AC752F1604D884992BAD768C720C45479F5AD8E53A4832
-1B44D6109DE4460A662DA6081465E2BE02ACBEB52259E046767DA24E1416FF44
-D5AA1D303CC4249510D703CC6CD0FD7DDB078A91089FD86ACE1721F875F019B9
-82D7C5B2530567F2306F47DE90EADDCD12AA1C693B1982827DC36A74C86474B7
-0A8A2E084CA403AF654E2F8488806B943E38ABF544ECD45FECDC441DD970B180
-FF3FFF1A50D5E22216B240A527F95DA1E43770A3867F225DD2A8AF01A965E06E
-A063997C4CDC0B16B52F9B9C8B0DBA94F88F26A7A01E596DCF8F33DA3DA5B02D
-2ACF771F25A1372F521A80B93DB0337886FCAC0A2E8FAE0D7E1E0C31EB43AE3D
-B4C2020F322A9857A9EADFA7782CA70DE7421B9A83DE1873EED8D096701370B7
-7EC33B9C104E9CC16DF8C80ED24D1F91677E355DF037621ABBB75E09ACDBEB82
-30F1AFB82FAEC4D9E2DA93303F72C1078679EDDA35ABF2AB38DFF091AEB273CC
-5A7B29C0164977160CA75F62BC20474C7C1F127AE7E4DE865FBCEF852698AB80
-B61340CAB6F86017FEF570104E46B6FB3320E78D387CC58DF1C4FAD8570C0126
-B6F54AB5BCD47904A9255366AC9C88576456D3CF605822269CC65979EC3CC740
-AE3D09257BA3AC7A364A7F5EECA3E658AA20B53423553C416D98FD8100D80A30
-A1B19F029B7473070D7C60CDE51BBEEFD2B45B1C82F4FE32A5BB6BB5BC32BBB8
-F600ABE893B83B806A5435AE2B40E5CEA9068C6ABBCE73C9B3533520439F28F5
-E171DB1DD90B2EC04A1F36767B2B97D4EC0FBF217D4E80ADA5383BADCD7E066F
-5F4B23738A14F19AC7D765119AAC9AB6CD0A8AD4EAF8955CB9F5BDB0156CACFF
-236D24E8A12AEBA549FAA9D7053D10AB7094B5D9B86FC7375E245EA8D7FC64B9
-859A1A37C006E0449AA8DB8B89730348C71C7E014A2EF8D871AAA856407C33C9
-392720173DA60850938D0537564455C3957631AC8F8C0B3B29BF6163828796E6
-0944C3000B990715188203B32BC4E3FCDF173A4A9C78753AB7D76BB9A4C2DA4E
-3EC638753D6FF6356EBB07D0A9E8D3F50EA5451FB6C836B9E5EBB8F1331C8CA0
-B0CD271AF316502CBE87F652B5ACCD43176AAA32C6530C69E77E3C85DA496F3C
-06980ACA739DECB5D986622AD81F204579218660EA791774C2D11878DE23F858
-BBC4ABC7EBA01B7FEBB32BC914FEA8E5720731FD43F8A5CC53954D13455827EE
-9C7BADAE8322E77EE7413D6C86E6D378FF8044F50F529E765A1CAC29E8B1D91E
-CD40F70F2D4890E0FD04502933212D5AB176DB143831958605C1667B8841E770
-CB4D513DF0C3182C23CA653A7A714B2A8DE29D6B203F5A9481E0CF3FF073FC6F
-476B0B205136DA43650A940035A970584DD7D06B7CDA8E960186158B75FE3917
-9B1D0FFE45EE1606C875DF635B80F5A9E5B67A6ED748F52A53A710A45AC20BCF
-FC96755E685A3B0712D5E09D860986C61C631A8D2A505C57D57C1D4AE78C552C
-DC5C9EE15B82A4C3020331B78FDEFDE53974C391F375E8118EB7B2D23DFA3F15
-389043EB6F33842C82B896073760197B13D3DAC172D77779DF517AE31BAC43BF
-5BD6F75B59AAA59C7EB81B776FADB720282DC06BBC9C33AF5AC0BC59F6A0044E
-3898A4B5868EF32BC4F980DD863E8EDF6DE3E753A7B3E39F8E8BCB3D3BF14EDE
-3395E73BD07440FCE88FB28A96878E823C1E5519650F2054EC2CF733EB8AEB0D
-510E5659A3179C3FA8E31EED621BE0EA648D76C370C3CBD8043BE206F28699D7
-5871DA483AA5D3580CD55902C85DB9EF5CF5D3191738FE64DB42410F5AB8ACFC
-CE07E524BECA5633B082F4793002A4A7215AD1BA31159A30D72AC60EDD0B2BAF
-73C9934C85C5372B47BCD3ECEE463CADC05CE8352EC1399ABE2465AA53E5965E
-79400336B1F5D1401EE2DA5807F9701D1086DE505F6AD4E64DD4F3E5E90CD64D
-FDD25E6FA03B679597CFB8C5C1F03641CEB7B9B40787E70BC6B063621382E3D5
-1287365426E44A2EA208C26155CDF782F404CA7B3C6D379103EF4A51CA3F1343
-22B04A0B55CE5A7633175838B9E50480E9B80446CD3B541362E7A10BB3C58A42
-88C0FF580B4A0296073F5B6505E4FCCA5D4BA2F7E8D59BB04EC9ED4E664BC2BB
-8754777594DB26DA0985663D321CCD13FB261BE8A771470DDDA783493E452A87
-D0AD01AFF8EDCB7BB159F1408FBCC52F126C46234CE6BEF241B49472102598D6
-91FF2DCBA2CD0E6658A61DB3591EA02E4DF202954B655C5A3C34B14CB60CF9C9
-2A6683AB282DFD79B33FF3A6AA524582F174F11A5568159083496B242ACD2770
-0ACE8473D363AC11250E5DCDCD3CB2281B71FCEB8AAC1367D0714796AF3BF01E
-80BD4B05A0A45E6CFA6C672850B9DF113F5EB15923ED885A0E4488D4914B62A2
-FAFB6A63F8AF0CF0DA498E1BA68C4150B6E59CBA80BD17026FA09920006D2075
-BC6F1010D0A10648A20D8ABF8137BFCD6A5DB3606F6B3CA51E8A4645D32E5966
-6DFF7537F65DA4268A86BCA5791C21F5FA9F4C2F1F6C1AFC4D4BADFA63609C4F
-5F5158608E6FFD9C5BF00646C3AAB983DDA5E37A9C2EA81796B161A06201FB6F
-8EACE87008EE7A008BFBA69AAC04D73A8C0447FADA0249D8861ED405537E23E7
-BE68C4349FD64A14E3A53D6C6484E704BE4AD5FA0269F56D3B752A070D9872FD
-A5CEE543B413F13CC4CFABCE885BA4533EA0969FDADC14DE6846B330552CFD60
-A75BC8C9DDA76102E48DB6B81975A1F3FBE182CEF410841CC6164AFA0CE51FD6
-8E8E6F0971277052E21126909B5EE51508306B886E945C11DFFE1C91BD0D79E4
-554CC7D6A774C9B98610A1E49C3326D62F157CA9D89B56699F32DBB9D49C716D
-CBDEC052133F8E18E8F3D7A59008398AF3E4E1192CFFE4D0B7D2ECC8DE2ABC1D
-4DF7F2EA5EC0DD756CB2FF9F95FF10E506463D3037BABD221C08506FA603DE1C
-DC45A5998921C4023E501DBA494C1F41C0955A761AC3D5B13A88EC4F0BF40756
-BAE8645EA76027B8AF74726521DC129B9AED4BAE67A511EA56EE9D0D8D30C7F6
-FA8BB890375A263A0BC4E9CBBBB8F8F8613A43B10E964F8CBD6BAA2B0BAA70C4
-4CFAF6EBF4882B610AE13689823D37B046FD26DA85BD96B896CBDAB6662573D0
-2CB87D45A86A016146513441BF7A748F1E9C2AC7172460EA628BFB22F9797905
-F6DF6749F13C7F234A2CE4829D41E0F53EF3C5F52165297AAC4B5AF4747A9F53
-60370B4C0110DBB42C25308F489A856B6664371FC2126BAF4710790021255653
-CACDE1B9ED6AF5C696C3D8BEA4698DD9045B3004A5C4C03EA994A5445C9D4EB9
-865266850047E28F2D82A08617E9283FE637CFAE4F7F261CC2D616A8C746EF23
-7360553A6B434201944C04B1522533C61F615A20BA3678AF8D4BAD1FB548D82C
-72D41699FB96EF40ABBABDEE633F05B4445BFC4E6E661DCBC8EC473BD2BBAF7F
-75F7FC86CC7B1F3A2343EDEDF6B5F7E98A0BC4443E21611F4D807FE7F597A37A
-A4DAF8A8E6D04FEFB320E0E25C61E156A72A3E4A69EDA04B0E3B72B69FC19E63
-AA33A682663A8F37F4FFC1533CCA2A80DAA675DD723A7E13D9DAE3BB0F5F3E07
-99BAB9B9BCFB29B73FC76EFA02F4F632690651DAAEC2B3688B636F0FCB156047
-F8EF7239716BE5D3DB2FD1DAEEC11DC2D65CFBEDC1C950CA737A04FCCCA509C4
-7E47664E160322366F70CCC641B9B49192AB839E0AC609AB2FDD3783095293C3
-11C56740FB50D23AE9FEAF66DB13F35367B562F15161AA270EE44713881B2387
-7889FD10198AD4D750390811714DAE7A8DC6F5770224E93408F8CCD4F8712A9B
-3C583C983D98CCA7FF9DDDEF8AFA292781B1D7089336CA631413EA0728353E8B
-3650EDED7ABB6E5DB5B85014A3A9C4C76EBB664A5B3E0F3CB2ECFBB6294F5C4F
-69EA3AC8C071B122B129A28E04FE989DA9670EB6246806A516517DDBC52DC001
-4C027D51EF1F98506F21E63D57FEF267B913F1ED4770D892239222F3A9035C35
-FFA38D1AF3ED9A8C02235D7422695D30A2F801389DADF34CDC489EEB38089B6B
-026D884EE1C24FE5785C383B988FFFEB5459A1644CA44D353503AE117E87F956
-393DEF6C47D4E1C5B1A33835C9B8E1B98809DFEE43C4D6DBEF1C2B1ADE4B8F13
-3B5D224C25927433D5738B0FE019CB88B1F373E4AC2BDB5BD86887FCFC50FA1F
-3E01CC550BE5FA0703E1B89486C67E8A16C560DBC051028078BEF85B349D3058
-55D633040BF5853FE9E50A671CA0A088959B2AACA1B614DBDBD906FBCB6A6B13
-7ED6C5BF448F92E9EB110ECAEADA36CADF4B6D79703CA2EA9BBCC810A6E3532F
-63C155FB86CBF6A6049D730B4729C613BD759AF3742399C6B118C1D2B38FBC4A
-22154122B3E325ACA78A9D418FB443FB334F67F8BD2D33A8491FB2E85BA2BB40
-F538F5DCA031BB3A7E6FB3A47391B9CBBE69A420143793087399AE2CD4C47FB1
-9A93E945FA671D902C95EABDB29F20FAD4D984B5EA0D9F7B1896F77899649E55
-098A11CB40F7BF083B1CE8C511F5858E189ABE6C7F66953621FE5A90479B79F5
-E20C65EF767759387B788A7759465B889B262B3987DCD0D2FA2A948AEC42C3B5
-33C38B3B2E312EE8D2DCD5E0AF1FDF5FA0059464ADC08ECAC4614497F7A7E702
-A4F394B0
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-{restore}if
-%%EndFont 
 %%BeginFont: CMEX10
 %!PS-AdobeFont-1.0: CMEX10 003.002
 %%Title: CMEX10
@@ -1954,6 +1479,530 @@ CD9C9C2C1F8753504BA85661C3984609B659BD3159E064186B65FAACC178284C
 cleartomark
 {restore}if
 %%EndFont 
+%%BeginFont: CMSY9
+%!PS-AdobeFont-1.0: CMSY9 003.002
+%%Title: CMSY9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSY9 known{/CMSY9 findfont dup/UniqueID known{dup
+/UniqueID get 5096650 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSY9 def
+/FontBBox {-29 -958 1146 777 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY9.) readonly def
+/FullName (CMSY9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /minus put
+dup 3 /asteriskmath put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A580F0834F28818EBF
+F29D3B2C7C9AFD969BA6D3B7429E222AF78F6DE00CE2C8008A5966422936DC5A
+DE549B458EB41026E123FE75E703E046F665B7DC78298A145548DEF8D579E008
+39279A5208EAF898A357DF3FD9CE4450811F20B454D86B2947BEBB11EABFC62B
+187B12458E022CDBAA6EDF4A89D79300F635D8CD973E35FA8D9B1240B3D30D72
+4F30444BDF0B51ABA15A181A3196A6CDF9CD1D38D64C83E745A767446641991E
+23EAE067609DC2E84B44D923CC98407812813D5AEF0EA21E560B31BD77D735BD
+E35EAA564A570DD3294C703E16BB9F251D54407269C8B23DEAD063018D6EB748
+4204A415AAC8384025FA922E7074FA7B8A6C31FD3761E7B2737D4D9C9992B7B6
+DBD0CFDBD87D42E1A451FC5C7EFAAEC65D10D278470DDF42DFABC836CF15D042
+6900E0DCDD36E7153BA186B8358E74F91A1D43D62EB0B821C0E97FE63F1586D0
+98F01E8F6B6F2A435343A25CDD80D3AEB42DC8E5AE02F8837B84EE5EB508B02B
+6980D2349984FE1A0D3ED12355D556BA483CA078B7921FB336EDAFC22AE05C1C
+5614F5025B890009272DA8C838B81913C872A54F7E932237FB1BC2CE5D64CD04
+2D320C8E2E610E9EE36EAC7C28C833F8A14048E751B61D0CEB342CBAAB34D104
+311B421B8CE4D903D2E2518BA8B734E2637E2CA55426C4A87EEBCE637F8D71F1
+54626C52083262A5A9A3B49142948BC1AC0B7698811AE81FC3D3B1C14E6C274E
+CFD6C480514F3649D7725A0A14C82C9D537B1C5A9ADC816340B8B4E484AF55AA
+905EA936A83FE2BE788D084469008F407447E0077417096333F163CE94CD3098
+4B9712EE23120829AE2695EA63975492DB2615214B11C87ED0ADB776ED4BA0B1
+40D09D1A617D4F57EE1A9B05C8D5F42AECB9C6AE67757DE6307B1A9C467123DA
+773239976AB0EA052B23F263031ACABEC9EEC7A43ACD0DC2D7AD66664FB0D937
+6A0F463A173E8B90B2596DD323D2350435D9D31B638112D70492F44769FC0C6B
+40A291FE78AA598CAFC19E5AD195BE7264F0EC29305D36C7AB8F2A733797D75D
+94C8F7AAFC49C13C108F514745A394F460294C6F3F44162BBFA878F773A5115F
+062E934253B786DA2B9A6E8E843E06B97075BE99F21B330D6684998C5C340B72
+09D69B655097354CB682D42120ABF5109E5522ABEC94D05E7211DACE8737A1A9
+0BD3EC16F48798E67C7C85560D79366504BBFE5F7F5EC1B05B9F68F98149A02E
+E53F321C213456D802C01871E9024F965258F71215F40EA71057C15E349F06A3
+A016BF1B7E44DC4766FC92EE500EBF7C47D36B1EA34981EE6FE38FF4903466A8
+C9020B91CFC731642003AAEB145EC0F13D6281B0838BB4236C220F6F467F7DCB
+C79BB9CD5B6A180DD2ED7F94DA6B5CB833E62E898BE832DF601BFBC8148F9430
+C8AC459F23EA2536E301C9DFD3FFBAF4D01E7853B60A69B5D012DCC0054C0BA2
+1293D3B4EEDF7C5C78118138544A60FB1A500F72BA39E63EF5D97D68369850E6
+9B6336DA577128DE68FEB71877360D97204B5F3C06E808BF95AA6D6013524BCC
+85CBA9FD2CFEF383645E7E960E7AD471A6A3B8B8C3A0A0B8464836499309D82F
+52004FCDB68997BAD9E4B5B881634FE1213283B6B19308BB67F2364F7ECD5534
+467EF07CBE71989FFCBC6224417C0710EB3EF2676B9DE846E7FFB1AA6608EC9A
+76C31724A19ABB2AD08CC102F5DE8E4E513F90A53F06D440A66B000CCAF6AD12
+6F4B161B56FA5FAED65A24FA183B84F4B45407AA69624068EE0E3E47BBE973CA
+C72137823F1D676131C8CD5070092CD73FC2A93E0480310E21CFB14C031206AB
+411694AFE7B639ACF35C28705A115E98BC69C66F6C58E9E79902453798D76267
+29B780AFB6B895B34CBEA51530E8300569EE4D500527BA294282FED81F730A46
+6ED19AA5AD45852739882216EE937FC45D75116BBDBA6FF4B4423B398E383CCD
+A7D705B8BA85076133E823300C3EFC9EB9399575F5F6BBF868265304B299AD77
+B6B4EEA04C83E163E8CE2BFACA65F9DAAE3AD2B0F8DA1F986E6A12DDB2AFACD2
+217E37B093F46FF3E20E587A9490401C2833F5844763FE2C528E151214E8CA95
+018E1D8D47C9EB5FB4F0EA2A6D064680DEFD2C5489298F83B58EA7FA8CB019E0
+671028C59C3E007DD86CD247889ECFA6AD6DA2433B02180DCE6ECF9E495D0976
+D063A61B007233DED5E3F351D790F26D4011582735A69F37E7CCBB0AF254B925
+B378522B748BD9BF152E2187DEA12BB168C42AD8D67D18567393B35DB2AD8403
+5A7093EB59FC276525B8796FE81944F7F03349BB077110E182A61754ADECECD8
+A5255DBADB523F3DC251A7D97F17DC76281CC632FAEB382A972D60A15FDDA57E
+2F42AA338D889B47F6A3C1FADAFA8D11D63EF8D0C8C0FCE61FBD8AD34EB8DB3B
+722BD86CE5B1268F704ACE82A39466DC2D96C9849B9422567FA5E728B17FAF61
+59A77E9B3289DB807DF54D076139E3DFE176C3131FA4540C1542AE5AD6200FCD
+B92D5DAA77DD4D3022049B6EA2A037FE96E0CEBB1608C663F1373246FA74D70A
+BAE7BD37F3AC23E003204FA8270B4514DE1FDC5401B69CBC98A67A5CAB5505F2
+87C242B6ECC86E88EEF44B9C79DA5F88CFADAE8B4CF437A7CBD5E0C01A9BC479
+E92EA48C808820C567E74D62ED7597FCEC53DE9A0B3EBB9A3FB50AEACAB82BF9
+2AA56D029357AAE016582592972ED01C0ADE565E87607F17BCF4983E3321F606
+ED664B9516D404B277C2C1B0F873D469D64A9744D9C1897125FD471E71BE060B
+A3A617DC8D812E184664BD83EC74EEB5197611380F2D859E1A61A14404493D04
+B5537C04541E557CB5039905F37E72B762EBD2321633E12C38C409338AD5AAD3
+1A507BB2B8F5235F0614D0CEC2BE44CAD504C9B2CD3E45437A493A33B9BF8A1C
+3FE66B1E673449A54E8E3C3470688E94EE4404C888583F7C96B43A592D586D25
+8AC1F206EE5FBF3AFF7EDF9BA91EEC6BABD573D455E0AD6802E7E23A662D4F12
+FDDA00EA054CD331DF86C099C4BE8AB4EAF5D8EC1BFEFCF50302BE61E6FF26D8
+1E88C544570E8D6F7D875466C70AA91D6CCD4DF4BBA34FC67191D1692D3FB76A
+66F114152956A5E38345E7495BEB1A389B7D0A59624ABA784F77C1BF7728E556
+F9D97D71858D61624C22C6914A3A995BD75922A2C37EF2CA91F923A4561CD3D5
+2DCEACD9C3A65A9FAFFFA4822E79D6D89D6366DA6362DB16FF061840582DA35D
+E4EE8308040C2DA5F298944EED470D6E4E1FF58DFDDA96C20C85E2DF2652E12B
+2EFB8F890D301E8CE777678FA786E552A62A60DFC369AF4BDC069F5457FC86F5
+1FB1A38A2222EEE86FE1AC9A8227663AE33217C1F381115CCD04D2F381A27E97
+36D356DC64615AD63E1952B37AD4F967317D76A6DEF039CE8446AA634086BFB7
+7B0B34F595B61ACEB346F51ED10ADDB7B852B5B2BCFE416D0435A7CAA4C9D9A6
+152D9AD938F39E9756AC752F1604D884992BAD768C720C45479F5AD8E53A4832
+1B44D6109DE4460A662DA6081465E2BE02ACBEB52259E046767DA24E1416FF44
+D5AA1D303CC4249510D703CC6CD0FD7DDB078A91089FD86ACE1721F875F019B9
+82D7C5B2530567F2306F47DE90EADDCD12AA1C693B1982827DC36A74C86474B7
+0A8A2E084CA403AF654E2F8488806B943E38ABF544ECD45FECDC441DD970B180
+FF3FFF1A50D5E22216B240A527F95DA1E43770A3867F225DD2A8AF01A965E06E
+A063997C4CDC0B16B52F9B9C8B0DBA94F88F26A7A01E596DCF8F33DA3DA5B02D
+2ACF771F25A1372F521A80B93DB0337886FCAC0A2E8FAE0D7E1E0C31EB43AE3D
+B4C2020F322A9857A9EADFA7782CA70DE7421B9A83DE1873EED8D096701370B7
+7EC33B9C104E9CC16DF8C80ED24D1F91677E355DF037621ABBB75E09ACDBEB82
+30F1AFB82FAEC4D9E2DA93303F72C1078679EDDA35ABF2AB38DFF091AEB273CC
+5A7B29C0164977160CA75F62BC20474C7C1F127AE7E4DE865FBCEF852698AB80
+B61340CAB6F86017FEF570104E46B6FB3320E78D387CC58DF1C4FAD8570C0126
+B6F54AB5BCD47904A9255366AC9C88576456D3CF605822269CC65979EC3CC740
+AE3D09257BA3AC7A364A7F5EECA3E658AA20B53423553C416D98FD8100D80A30
+A1B19F029B7473070D7C60CDE51BBEEFD2B45B1C82F4FE32A5BB6BB5BC32BBB8
+F600ABE893B83B806A5435AE2B40E5CEA9068C6ABBCE73C9B3533520439F28F5
+E171DB1DD90B2EC04A1F36767B2B97D4EC0FBF217D4E80ADA5383BADCD7E066F
+5F4B23738A14F19AC7D765119AAC9AB6CD0A8AD4EAF8955CB9F5BDB0156CACFF
+236D24E8A12AEBA549FAA9D7053D10AB7094B5D9B86FC7375E245EA8D7FC64B9
+859A1A37C006E0449AA8DB8B89730348C71C7E014A2EF8D871AAA856407C33C9
+392720173DA60850938D0537564455C3957631AC8F8C0B3B29BF6163828796E6
+0944C3000B990715188203B32BC4E3FCDF173A4A9C78753AB7D76BB9A4C2DA4E
+3EC638753D6FF6356EBB07D0A9E8D3F50EA5451FB6C836B9E5EBB8F1331C8CA0
+B0CD271AF316502CBE87F652B5ACCD43176AAA32C6530C69E77E3C85DA496F3C
+06980ACA739DECB5D986622AD81F204579218660EA791774C2D11878DE23F858
+BBC4ABC7EBA01B7FEBB32BC914FEA8E5720731FD43F8A5CC53954D13455827EE
+9C7BADAE8322E77EE7413D6C86E6D378FF8044F50F529E765A1CAC29E8B1D91E
+CD40F70F2D4890E0FD04502933212D5AB176DB143831958605C1667B8841E770
+CB4D513DF0C3182C23CA653A7A714B2A8DE29D6B203F5A9481E0CF3FF073FC6F
+476B0B205136DA43650A940035A970584DD7D06B7CDA8E960186158B75FE3917
+9B1D0FFE45EE1606C875DF635B80F5A9E5B67A6ED748F52A53A710A45AC20BCF
+FC96755E685A3B0712D5E09D860986C61C631A8D2A505C57D57C1D4AE78C552C
+DC5C9EE15B82A4C3020331B78FDEFDE53974C391F375E8118EB7B2D23DFA3F15
+389043EB6F33842C82B896073760197B13D3DAC172D77779DF517AE31BAC43BF
+5BD6F75B59AAA59C7EB81B776FADB720282DC06BBC9C33AF5AC0BC59F6A0044E
+3898A4B5868EF32BC4F980DD863E8EDF6DE3E753A7B3E39F8E8BCB3D3BF14EDE
+3395E73BD07440FCE88FB28A96878E823C1E5519650F2054EC2CF733EB8AEB0D
+510E5659A3179C3FA8E31EED621BE0EA648D76C370C3CBD8043BE206F28699D7
+5871DA483AA5D3580CD55902C85DB9EF5CF5D3191738FE64DB42410F5AB8ACFC
+CE07E524BECA5633B082F4793002A4A7215AD1BA31159A30D72AC60EDD0B2BAF
+73C9934C85C5372B47BCD3ECEE463CADC05CE8352EC1399ABE2465AA53E5965E
+79400336B1F5D1401EE2DA5807F9701D1086DE505F6AD4E64DD4F3E5E90CD64D
+FDD25E6FA03B679597CFB8C5C1F03641CEB7B9B40787E70BC6B063621382E3D5
+1287365426E44A2EA208C26155CDF782F404CA7B3C6D379103EF4A51CA3F1343
+22B04A0B55CE5A7633175838B9E50480E9B80446CD3B541362E7A10BB3C58A42
+88C0FF580B4A0296073F5B6505E4FCCA5D4BA2F7E8D59BB04EC9ED4E664BC2BB
+8754777594DB26DA0985663D321CCD13FB261BE8A771470DDDA783493E452A87
+D0AD01AFF8EDCB7BB159F1408FBCC52F126C46234CE6BEF241B49472102598D6
+91FF2DCBA2CD0E6658A61DB3591EA02E4DF202954B655C5A3C34B14CB60CF9C9
+2A6683AB282DFD79B33FF3A6AA524582F174F11A5568159083496B242ACD2770
+0ACE8473D363AC11250E5DCDCD3CB2281B71FCEB8AAC1367D0714796AF3BF01E
+80BD4B05A0A45E6CFA6C672850B9DF113F5EB15923ED885A0E4488D4914B62A2
+FAFB6A63F8AF0CF0DA498E1BA68C4150B6E59CBA80BD17026FA09920006D2075
+BC6F1010D0A10648A20D8ABF8137BFCD6A5DB3606F6B3CA51E8A4645D32E5966
+6DFF7537F65DA4268A86BCA5791C21F5FA9F4C2F1F6C1AFC4D4BADFA63609C4F
+5F5158608E6FFD9C5BF00646C3AAB983DDA5E37A9C2EA81796B161A06201FB6F
+8EACE87008EE7A008BFBA69AAC04D73A8C0447FADA0249D8861ED405537E23E7
+BE68C4349FD64A14E3A53D6C6484E704BE4AD5FA0269F56D3B752A070D9872FD
+A5CEE543B413F13CC4CFABCE885BA4533EA0969FDADC14DE6846B330552CFD60
+A75BC8C9DDA76102E48DB6B81975A1F3FBE182CEF410841CC6164AFA0CE51FD6
+8E8E6F0971277052E21126909B5EE51508306B886E945C11DFFE1C91BD0D79E4
+554CC7D6A774C9B98610A1E49C3326D62F157CA9D89B56699F32DBB9D49C716D
+CBDEC052133F8E18E8F3D7A59008398AF3E4E1192CFFE4D0B7D2ECC8DE2ABC1D
+4DF7F2EA5EC0DD756CB2FF9F95FF10E506463D3037BABD221C08506FA603DE1C
+DC45A5998921C4023E501DBA494C1F41C0955A761AC3D5B13A88EC4F0BF40756
+BAE8645EA76027B8AF74726521DC129B9AED4BAE67A511EA56EE9D0D8D30C7F6
+FA8BB890375A263A0BC4E9CBBBB8F8F8613A43B10E964F8CBD6BAA2B0BAA70C4
+4CFAF6EBF4882B610AE13689823D37B046FD26DA85BD96B896CBDAB6662573D0
+2CB87D45A86A016146513441BF7A748F1E9C2AC7172460EA628BFB22F9797905
+F6DF6749F13C7F234A2CE4829D41E0F53EF3C5F52165297AAC4B5AF4747A9F53
+60370B4C0110DBB42C25308F489A856B6664371FC2126BAF4710790021255653
+CACDE1B9ED6AF5C696C3D8BEA4698DD9045B3004A5C4C03EA994A5445C9D4EB9
+865266850047E28F2D82A08617E9283FE637CFAE4F7F261CC2D616A8C746EF23
+7360553A6B434201944C04B1522533C61F615A20BA3678AF8D4BAD1FB548D82C
+72D41699FB96EF40ABBABDEE633F05B4445BFC4E6E661DCBC8EC473BD2BBAF7F
+75F7FC86CC7B1F3A2343EDEDF6B5F7E98A0BC4443E21611F4D807FE7F597A37A
+A4DAF8A8E6D04FEFB320E0E25C61E156A72A3E4A69EDA04B0E3B72B69FC19E63
+AA33A682663A8F37F4FFC1533CCA2A80DAA675DD723A7E13D9DAE3BB0F5F3E07
+99BAB9B9BCFB29B73FC76EFA02F4F632690651DAAEC2B3688B636F0FCB156047
+F8EF7239716BE5D3DB2FD1DAEEC11DC2D65CFBEDC1C950CA737A04FCCCA509C4
+7E47664E160322366F70CCC641B9B49192AB839E0AC609AB2FDD3783095293C3
+11C56740FB50D23AE9FEAF66DB13F35367B562F15161AA270EE44713881B2387
+7889FD10198AD4D750390811714DAE7A8DC6F5770224E93408F8CCD4F8712A9B
+3C583C983D98CCA7FF9DDDEF8AFA292781B1D7089336CA631413EA0728353E8B
+3650EDED7ABB6E5DB5B85014A3A9C4C76EBB664A5B3E0F3CB2ECFBB6294F5C4F
+69EA3AC8C071B122B129A28E04FE989DA9670EB6246806A516517DDBC52DC001
+4C027D51EF1F98506F21E63D57FEF267B913F1ED4770D892239222F3A9035C35
+FFA38D1AF3ED9A8C02235D7422695D30A2F801389DADF34CDC489EEB38089B6B
+026D884EE1C24FE5785C383B988FFFEB5459A1644CA44D353503AE117E87F956
+393DEF6C47D4E1C5B1A33835C9B8E1B98809DFEE43C4D6DBEF1C2B1ADE4B8F13
+3B5D224C25927433D5738B0FE019CB88B1F373E4AC2BDB5BD86887FCFC50FA1F
+3E01CC550BE5FA0703E1B89486C67E8A16C560DBC051028078BEF85B349D3058
+55D633040BF5853FE9E50A671CA0A088959B2AACA1B614DBDBD906FBCB6A6B13
+7ED6C5BF448F92E9EB110ECAEADA36CADF4B6D79703CA2EA9BBCC810A6E3532F
+63C155FB86CBF6A6049D730B4729C613BD759AF3742399C6B118C1D2B38FBC4A
+2324BCABE5841102D7040970F36DCEE10B8D8708CC440A7C71AB86921F94B67E
+7E100DEED6F4DE49CABF3B3C9E4A39444AFB50DC2E2ED00D993F9C24F678538A
+E1C2ABC5FED4789AB85A2DAD84C1027A396A134BF58700C757C868F794AD73A1
+11C0BD9FEF7AF11ED7FB6CB2AE7B61D543238F4DEB8608EB561A59C962E48264
+3DCE6A8E7141320B09AF9D3ECAB58C41A04A15849BE452079C0A5C63678389AE
+476CD86E0354B450230B358DD6FF9D94FE738D9535C2B3518B46AE91538DCA60
+66F27EA829DF3D3FFFCE3C7982AFAF2BB743BB3325CD0F2A4758194EFC215A48
+2DF2CB824B38E20AC268F6BC234660D169681E7DE8706B544B28388DF448478A
+62CD6A7BDA118B86EC937C3C5523130284390F80E60F9D8589B2F24907B2AEE6
+0B3DEE0AC6B69031CC103347D5C9A9520E704F0DB5617FBB9F716F21887E58B5
+44398171903A28AE1BA2AFC99DCC7595A9515ACE3801F07FC30904AB9B934B05
+9C054A8C0D765834C94F8A9071973DB6D1DBD7324A6BC54813C9E7A0360DF902
+7A43C9A6A8321173A33792E2614B2E457C24C5FA3A
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont 
+%%BeginFont: CMMI9
+%!PS-AdobeFont-1.0: CMMI9 003.002
+%%Title: CMMI9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI9 known{/CMMI9 findfont dup/UniqueID known{dup
+/UniqueID get 5087384 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI9 def
+/FontBBox {-29 -250 1075 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI9.) readonly def
+/FullName (CMMI9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 58 /period put
+dup 60 /less put
+dup 61 /slash put
+dup 78 /N put
+dup 105 /i put
+dup 110 /n put
+dup 114 /r put
+dup 116 /t put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBD07FC5A8862A8DB
+7E2B90C16137614CDAFB584A32E50C0935109679E31306B8BDD29F1756946A67
+7A7C2D9BA6FAB9B20A424AA0E6F4BA64C2801C2FB5A1156CBEED0ACB95F697B8
+BC2A6E6AA7EB1F9FD8E3C9B1A16697EE1F0E7400421A7765AB218FC837A49365
+82DC6B2C877A7DA84A81E6126EE96DB25C17A207D3020A045DCDAA064360DFFC
+E3CD50E21ED239D2A6450D04F879A26443ADEB6A20ACC504989876476C7D1A74
+91564FEA1F4CC2C8C8FDF666DB537F315AE1886C73CB5B00E67E7B398A6C018E
+540EAEE98BB8136C4F044EDD63C33431D2CF9740F051DF365A4045D9D8782112
+7BB5D494D9235BA98CF2F30CB119F5A904C32AD04C960C43FC1F5FD8DA7D90D8
+93AFB59F3FF4F796481AE2A7548F948FECFC6C127C4D3F159B08F206AE8C296D
+EE470DB2F879EA79475E029D22D7A8535C09A18689DB0609CC233E5199C02756
+972CC9C94D9FCE264DEE5D75C8D651E4E2D1189AD9588CB815722BB5EE3C379A
+6F31C2E6AE1AE4CCEB29766190AFA20EA937114978752189F1A9F42B39483149
+796FCFA123BA9CCD1D9BE28289660BCAE16C40B5B504058D55CFCBFB4F4E3D94
+DDBF39F157E63946534DA81C018B1C01B9F10DDB55E0A5C2B3985ED1977C039B
+D6755EA42CD09E27751E159C30B93F376DBE61CD3AED34BA36A768F232EB3B80
+E3E6B77C4A48D408217818E398B83D995AB6BC871F20991DF57313D6EB0C793D
+0F28088EBDB7F38DAF7E01AAB3476EC24D7BB38A9889A7D3038D930FF4289B83
+F54A7BE1E2D98A3822098D2E4D067A0D400C20C0B2B4BBD74C13ED1B827490F9
+ECF48F8C3994C1C5AAC9CF783BFA4F307528F51EAB55F961808A42ED53F00C97
+72A432EAEDCFCFB622389BDA707B6ACC9433B065CF29EBFE93AD14B8ECD5F47F
+F073F11822C49B8BE924CDFA6348C3A75E9BB9BF3F31C41716B34794B28CDAC9
+4DB8B087E180A9B3B17680F73D9C12C8D86A922C948093629F5D7F542ED882A1
+692F4F6696865E53E3E2DD43B2D5E8C989CFAA5CA5C4C5999045E170BDE9921C
+BACD6F2863F5553EAB2BA2D4A9034729EC0C4201DE90DA89B0A27C5A5C974109
+4E37BFB3F46B3A506169FB0C68E1CAFC844419A8D261A1FD86A3BB78E33D5FB1
+CFC687A5975987CE45155E5FDFAF0CC5FD5568CB1C26212F92E88255F0549F59
+41B33125946DE43436BEC00804063FBF03EC796E3361B1C852EC3038D107F80A
+9198968265D5488B26D7670B22C2D75EDFFD1B7B4AAFA36DFD94640C9D0E2D20
+5BCA18683EFB91834A3939AB8EB60E2F09655BE003582634C52770DA9668C292
+2E02929D812EE2B0CC65F020064AD5BDAC5F5693B30508F40ED8E20E87149BD5
+8DD41AFF83FD1944804017DC5A04512E593549FFFAE501131CE2FDB65EFD0B8B
+33809CBAEE411B3941C241550B9C30DD28088708F1C0CC3125CBEDCD985EAD28
+03313741F67DB5744A87B381147D5BA70AE1145C27F794854628D87D6C1ECCA1
+749E3465B950175D3C3F40E344297BD92D3190041A4392033A79BEAEAABB8DBE
+CC14E39612F43721CFAE6F79074429221CA588AA2501DE520A464DE157A03AFE
+3C082FAE7628FC0C57FFC61D0330AE6332D20FDBB09BF36848FE05E782D6379F
+64F9C82C45402481B0A35989027F9756BF5A79DA2D96E10F39167ADB4305578F
+90B509B6891338FA1D67DCFD61804AA6621526B2EE4769589A2646581712AC05
+DA6E98D16494F07D612743058F54FEE516BD89A8EC3E03F9D7F905175D3412C8
+F7329077FD6EB25213F3CAC94BA0C3363B759401B6EF7548C7D709F3241D030D
+4EB46A1AE81863C412BDDAEA6084C37143A4C5E41BC646315B1CD09F934186CF
+49D1D8239E363A435307030BD79536B50B723A39DD763DB539F24A10DDA12BD4
+E467339D2D6DB177D6FC539FA77D2DE4118EBAC161E928749F7C753ADEF86117
+58619F1155C563DF2E11ACA8347908B98113AED58FCD0394150EEC94B7F986EE
+88BF7171D208D8F1774B1DD478F0C2958AE372D257E7EDF0F6B5D6059CC4D5D3
+B00FCBD2E9CBE79235B9A5A3E943CC27AABB58728C95C7DBD4F4A1F8A4DA99AE
+7377B0CC0BFBD454794398AE0D5F7281771FFE87B25A819F36E692286A42D776
+01794A43CA9BB30FB8FFDAAF014F909A369E34C2F6C75B7D4EB9DB0580E33F46
+19654443AFF8384B95600B86FF8E41FEFD032355626D60C7507C058EF832DF41
+194B48A36F11082D1DCF4723E21401E0C7447AABFAB4639B26E3D2730E348F55
+53EBFF39CDD03E06E2FA5FB379603C879EDB7E1A10F89695C9C47DEEE52BE0A3
+F446F187AB9D7E93E6F9387F21129034F36DF40605D28FD526AF82CA9D232BE4
+412567F06B38ECCD496EF40A7B243E46C9FEBA4F1BF4B1ECA029C5EC239353D6
+C0B100BF7E7DB33BD1277DE104F15AA19F37340A777741AD1AD693BC76DA48CC
+C6F83CD84591ECFEE375979972B0FAC4C10B625E4BFB261B9FFFA83C31DA0108
+4FFB6377466E9739E0EB64424BD9FC7239C7DD834EC6788A0F97FE714AF92831
+E1BA36A8A9E24739F1DC82DC26CC3CE28C210AA7C569B19E1784D663A0CA4E81
+AFF43E86D6F5F63778847700072CEB77A4EB946DC1F23DBC00BCE773203F76DF
+00F0B085F31420672974DDC642D885E95BA6BBE43E1CA8ABF464D9881CDECC7A
+E98E31B9754C9B72A8BD5CF6D4D214DBC3BA7A0CDF6635953F5AC1E7639C4A91
+C7AECE4C75CA3389C348F656FC2CC96C84C85A926237B6504DB51937C9CFCDAC
+B75C31ED570D180757884E27757783DB2D5F35ECC48C496CDA342D49AA947BF8
+2FDAD2F19DFE8CD1C76A8FA08F33681F3E12E229D7DAB45BE3A3F258B5ED4980
+F15340CF20D965252843E026803E8AEE736EC41CCA82167401977AB719AA2F50
+0B791EEAA82027B3C712D2EB9D14BF8F94FBDE2227609BCAC41EC08DE2BAC023
+28352F913F7DF08D4E1C66E83F764578B22B4EB7191E852B91ADCCB1BCFDB1F4
+E63DFD152E86FA9DE9BC8908130EFDE29CC4401339C05B5B9764CF8EFF14951A
+C6C13AF979546996BF22F2B96D3D585B90CD27DADEC78914DA48432C6ACBDD42
+20EF583FD41F2F6D6D10C3DF7DD077304B5940BB0462656E306CBD91EB9B756B
+7014B1884A36201EC582FC9345C386043DD2818FC301EF78791C1D7854F8FACE
+5DE9801DE9F59D5B4271E003AB897B2EF49501589D681D59CFFD9B03F722EEF4
+74ABD29997515DA3591496B62666744EA76DCA45504F8075C0652D6779DBEAE4
+90430C2945FBD60AD53B51DDBEFC7ED703C418B4B244C8FFA5A3C1B7600C5A55
+3EBDB93C16AC191C3A28EB2279BD3F0D67C826BC6A73D3C0AD02262368AB4621
+98A1605F2887BC5880E1AF2780330E0FD01D7CAACBB0F008A42C427F38236066
+54799594E515B289044BAC4DADF8B3686B4372C5110201221FDA923F131E07E7
+93C44BAD406838BA4D1C277EF74098B8C0EDC41EEDD58C195D7DFF5FEDBF96FC
+19CEBC6C3006DD2CBF76916B4298BB915663C2F61AFD7747E03A03BD7280197A
+9DA590E3D081C6F53DBF94E8D6FDDDD910A70AB18A0F6D48A590FFAB314D6CFD
+E3FB20C1F3C91063F00726A2C13A3D48323F9854839405E5A29D66A43E6E2B84
+A8B3765F1D817071D4D6FF42BC785C2D11AB2B9452F141696CE19C6AFB9777DB
+107D6E22D8CC6C26440BC48248AD8805C4329D46BF433741CB519B21663392DA
+5DC7FC9BF37E5BC396BFADD7263D09F6B4D69594AB386B7BDFCF3BACB97A0E08
+22013E716E642592A20136CF9CFD61D4E515D80E06A4CB4FC9D9B916C93CEA95
+B83B98C48CF36C1D02291D4F5C0419338D64E33C90C90EDD2BA3B96D70FAFE0D
+403A060CFF448D3E28A9B1E3916018465E86095BAAB4706CF7ED350D7C554789
+D7F4FE5F180767DE8739259E68CF142040BE1E2E8C6152DE3417C1FAEA7584B6
+20781DC4A9796431EE713DAC4E713C839D7A4FDC8AB6BFEFFE767AFD8B67FDA6
+943AD387E5D3BCB09039ADB64ECC2BE2620C6EC269E708DD06C311F450099E33
+AF46AEC644222E7DC4DBB9371EE12CFBC4F9B27AB46AD1DA96CE006E1DF8291F
+A550A93026CBFFC1087B134EC6EA76F5E109CDA58FF47338A0039A786A575F70
+B8A03A4F9C8D07A4C856C77D9BCC8E3EAA740172D0C2D0A15BA35C9E5717D7FA
+2691774DDE730BB9D7C70D7AE103DB8D35F3728470C76EBA0E670634E1A0BA84
+2FA102BAD7271DF2680D86A4CA6FC353869987700E5E3FD778165456033D624F
+E9B3E80EBF431ACC934AA0357E824B8AD73E222B510DE8445C55C07C8E5DE46D
+E478F832BDDECAF2EBB11941DCF84CCD887043FAED9AA90D12BC8CA9A0C8D94F
+8D3BF1F80B14B6CAE6BB1C6AA405AA64BB94D5A82CFEA548BA070796A02F9642
+87326D066101435AB9EB40BA9EA9E61B363F5F5E3B924369796E8B78DE3414A4
+2B79C6A13ECB2F34E6299658D07D2B3DEF3D4383CE009A927F0EF5C196652842
+D96B857AB5E905201E7E8BA21A5EBED1FC6863BA9A1A6E5390407F75055E2EEC
+512FBDB3E82CEA13663F1A1944DA072C765D8CED06AB461470C5723BDC1271D4
+4D1D049D3EB131743F1EC9A6ADDAA038ACA2C41D139DC6A84EC3C61AC7F1E559
+6155CC2F49171F6E07CF56D721D9728E87FC7DCBCAC46455A3694C765FE807E9
+9CBC2D304AF37E0F28CCB22F239541B53A4D24D09C662559267467EA487BD33A
+0BEFD4899B581D20582930703A868655C31BE935364CA6A95FBCB22CB714C040
+9718824DFE97929D0482430726CCB5A5307957DD2432A9B6271E849148DEB76B
+FAA290FF6D0B18DC5B76407852E81C105EC6CFAB0F620C6DC9DA555A33C167B1
+430A8BC338BFC7D75B7099CC906AD923FA107C74D3FBB719D77A4E5A685FF9D8
+56424EE4AA074434B809D894ED50F6A60A035C5223EA25DD8983B9B34210DABE
+718D7B2BEB293FF1B63CFB1CBDAFC69552963D90F5E3FF533A3FDBB626E9FAA3
+F3C119E5E01C7BFF832A033C3515BF049E29558B1DAD652F2888E339E67D15AE
+95F9BD14E3253DFE9072B24C0E7E85025B71096AF51C86AECB2921126A43156B
+EC812B32B1164BD9B2B947D503C015616DBF2024F5C8CB3236C1DCA653D661FE
+6B1C19A22D272A176B7F1B7F9E67AF40DB0EFD4940E58B2A050249CA4E55CAF7
+6ACFD84FB46FEF952D18552B3972D79D808B4C263B8C7E1BB647A2D03E102867
+630D5C3F2C917F765A4F6FB8106BA6A9D0093E27A4CB6049C2371287D94B5111
+6E7020776EBD744C6C920464BBBC0AC206033E8240017F8CCB112596ECD7CAFA
+89950CF43FD87ACA750C03A778A37FBCE9C82C2F5ABB135BB02DA8E8C0D24475
+3BEA9D79372D0022FF1ABD378C151417DBC69FE5C9CA38D23A3900E34BF924A2
+90777ACDC37930B67DD44A2E76DDBD9B89598D5F626BFD325A978D277265DA47
+38CFAF16E7FF1946E15F41CA73F7B4B02E5AE8FC4C37B115BC567E4EEEFEFC34
+EC8974B1465AE57759EDDA28DD38A9210871D35D331AE1BE6097C3EC21C770C9
+B25D040B2ECCC3AEB1EA1BF99E0C2C0F192C13BB9152CFCF75332E03F9CEC376
+9B8C285A35F53655BE38713E09AE34BA2DA9C06FA42A6FD2D00CBF2AFD2BADB9
+1571629C65DA38A431710CF5B01FCA68E8B8569922FBC3F9B64A5509B6F677AF
+1B97E91FFFEB6308AB68AC58F9BA43DB5E764021E75B56170EB44C2C0A7DB86C
+62B8982256D3621EBE3DB3994DBF5C5A14CF34B4AF3BD5697F8E3203085DE9D5
+84B0598169760B925463E93DC87CE70AF4C2DF0F4287D2F2069847BCCF7A37A2
+AD451D5ACE4DBCCB2E14D5DF38B226952E7446BF87BEC736EF3D5AE793304618
+D66D3299AB9F9CA1D13F134FAEDF36750046E27706C7CBD8E0877BB6276E5196
+BC2A355D109C0253644918E1CC11B717DE6FBDA201E769812752888CD66268F6
+4ACF4A9449378F9F9923D584BA1B51F33663BE7A306887BC14A37E3C5A4654E6
+531D6EB63DE3946BD8BA95CFB037991174F36D61D842071E6625605CAA350A24
+FE551025D10871FE0E2599A63900C8520EF4911C53A03897C8BEE152451708E2
+43FCF4E700C583A5E8DBCC03BF9CAB864DBD19E1760945DEA0EC0BA38BEA8256
+D3A8D4F70F6685A99C6BD2BA8B412A26C002D76138CFCC7DF6802931E5D97BA6
+0151F6A4C572235B4196B22B7B2D14B32886DF0D2CA8A277ABAAC53B63F64CE4
+E4C088192AAB674497E8AF81961359C389B51F4A257373D907C615030BFBEF53
+DBD99058FD06E352450B658478C10454AC8FC0232B70D5CB916981978053E358
+99D322A07294748BA427FFD1E45C909171017B52B7C742FD77A8560852D819DD
+8DD53211A14D7B2FD11E42941722FD3985D627FDAF87EB57326A0D290B5077D1
+8A4230BEB40523A8565F95E0D44F036A571DB698EDD9D94FEC9512369E5E5E73
+A3CA5C142617944F4F99C0697ED088ACAC007FCE06E5A6EDE7D0E03A3399DCE5
+362271BC31533866BA79FD1FB3F608B22CCD4111FFB1BA35D920A23AD157C6B3
+C3DAE11069D5E46DEDA7158C6478D8B8C0D9DC237CDF0CC6633911673C43FB79
+E4F9B7F27495201E5ADE66255BC2CBE9D9F237DECB62A19D62CB41A1C92432D2
+07F0629E913A71B3F1AAF8B8C5AC66D3C8605A48F8913E39C859E163DB1DBC8F
+0ACFEE80A40B6172032E95A76B752B873FB4DF23CF3A655AF1A1B88C8DC156C6
+190DE72973950565454C0A188A33395FD3D529A88F2B578356DE8EBBC12F04C4
+5B899F667D9E6F3A4EC6DD8DE71FD4C2E2B6D56823EE4E0526679D71FF1B868D
+F261489F06F97B010CCBE640E2F57BA3DC3332B329F7958394BA9777D833AB50
+005E8E9232547104065ACE33396772B0E0BD66D2C6CC54DEDD071E444D8C95F8
+6F88B31E20FDB80F77C83151B7E25BD3736B4F9BDC52EE78C41E9475E5A6D94C
+D348AB42F5E36B4F167D29EBDFBD43B03F77EB296B06A36880FF17D412E77EA9
+F2E7C25FD05E16BEC6732681EA21AC3FF6893B93FC09316A370CDDB86D9E6087
+F6042C3F9ECD742778389170F5F041329782FB9F9702F7533E51F355F71825AE
+2BF4F8FE50D413AC9A20C41B42537FDBE8DDC5A5C793D3760C1EE13716068752
+F0AF10812250BEDFB4D7133FD58F4587BACD572505C84A7D3802D27443175FE0
+0D89C3398B55176D8642AFBAB5CBCDFD6220C8488564B4306D74A58CD2921AAD
+73CF803C754DAC2F30A5324886E273064FA51781D5BC596BFEDDCE3982EA1AA2
+62CA7BAA1B16C6EBB99B2AAC4E6C9CEFB3D10F19987045C4918DB239E6E63D79
+5F44B9D097118D081153AFF96E5EB39CBFBB99A3BE30909F614869031358EB98
+F07A97EA78AE50375941B2474DB46AF3305F2B208D45921F93743A6CB8AC584F
+6BEBE25ECAADD5A789EF60C9F54446687E7B030DA3E5243189F02BA46BFD28B7
+DC14822E136AC7E40CE20458DDBF356488045C95907363864CD6943643BF0109
+EE027A3091C11EA392EA91320EBFEA3B857370AD8EB86D73F035A476F7058222
+E8CDE78CA1AA9EA69A8AA6EBFF3E67324C567B914134DE042D6F8F18A9373107
+536E8D90189917D343F5299024239E2EC1D2D177D8211BA44AC3CE67694563D2
+841B62F8110E87700E6D1522A79EDECDA6C59DC3004C4C3CB2DFA31AF1544E5A
+4FFE7802F51C8402B2991BBC188AB976B4E85B124B81A226930F5F80E1D34658
+2C2E711A080DBC1EC1D661782A37A121F9F469BE383F47BB8E249300A4E2A660
+56BB18F8C35B4B830993FB73790CF101C3BB9BFDF16CE498196B69EB18BA4DD2
+95682F6E109B03CAADF1C109B7FBAA515F68E3D13AF1E8067FE8AD1D722E59AC
+028F18A90A93B0A8092E176ACF53A13E05692A45910501C4F0C4060C40434A26
+B014245EFB211DD41AAD932109F364CDE249E47B2500A344D3B45DC41704F107
+F9FD70DBCFD768F531C969C8F2C743E993A9064AC89AF45FA0EE8466189EF286
+59BA3CB358D134D3789A40B5359E84029E48F594BA5C5DF179176109A85170E0
+4A2753C3818A40D52CE36F3AB8B526FA6ACCA04314585D7D7666D5D9CB098D37
+880CAF14D81C779796A9485290A4EAB6AC387921AE4F5BC49EF0AC962C6C24DF
+5B89AB3F736522F0C4765840D794695FA5BC242D74E2FF57B1122DB4B15BFBF7
+B4D1FFF173F7A385EE19EAF27F5523E1495D673174FB31EEE3A4AEBE3DAEE372
+9FDD72BA54C0A2F60D8BFA5BCFD52EAE9382D0F6F1B0988D1728F4F50160780A
+E0895820E1047E6D8E2C91148770A11F69A5DF5D379EAACE9EF0DA26328358FB
+D81A08D637D6F98F5F574D0B2B6645808B58F62B9288E1FB7341A47769348382
+7C7261E5C203A1B520AD7091B72CCBD90C134DC469B8BF330515EF8B92B5A160
+648F7644072A5CBC558149C12ABAC07FC36F462A6D255D8C80C45D4C03366D7D
+0EAA0C3FDDA1022A40D928B2093380529B211A962B6AFC75D1812B78E56EBAE3
+A2BCC31CB0C09A6EACD61ECEBC94A6D691642464F431CD4C5A18E48F83C29D18
+F26D6472B02B300776F8D2BF7B4FE19F25A3B60CB68500DE36EA384AC11580C5
+5850DCEA62EC5ED8DC3C9E3BA17A705B781C21BF11DCB403CEC6C0F7C99069A2
+3E3C5EDCDB772382820C16C28CB78578C6A8AEBCACFE9F93A200A0F5D04EA7D1
+D506030FEEDA4FE6BE35CA6B2652F5206A62C78BE6362E42FDCD1CAB8021302C
+24DAAE88E9DA18F3ED18F18C52D3A59BD40F0A9C4735B3CE10F9C49B19C71CF7
+9DBF5F89068547EE5B6DE7008AC083F16458B6F7AE7011B5A4ECE6EAF6D730EE
+73F3E03D2BEDEF0F25166041B00BDBB011829CEDB11ABCDAADDC5BB14E21CA65
+4D34927C37AEBE6467B55E2ECE1A59356AD532E5A5A29E2FBB2165854EA84EA4
+8E86A683ACFB73478F7AD1AFF3432CE262433959B2C96099D5AB73201F4F3694
+1A0CD1293ACE84852AF320EAF9737FE7E29322ACCB61DA08C9D5AF14BAB972A5
+A60E3283EA8D64C889B010D8CECE9913E3511DE04165D00CB90887E8B6AFEAD2
+8862DC826EEE1D569E795BF7E135990EF5BAAF4223575BE5007DE19377252660
+D6C9C1D1FB721A84C31EBC9EFC833070D97CDD4BC8F166E7E30AB478126141C0
+0C8B930C227EA90370195EE0500BFC0770462370E47368B62B545D8C69FDFD65
+F63CAF2CB15F23605444B5A58D8691626369BA8FC2886F427AD90555CA6A2AC2
+2419EBFD08F551CBB2AF739BDB2E3BA9DA3CFCD6FE5176F077D899920543395A
+43C26FB06B0BCC302DAA8F6DD6BD86D29316BBDF6F871290118A6BF7268EF531
+CACB518E4E78C8B36111CA1DF8676486C4926C5BCF2E25A06DA5A97AA194FE30
+B79FB80100DB6BC69A53ABEACB32F30C67681E7982DB164C535CD5A4D839483E
+AB9BCE3957AFA602ADE3F06EB848E6E97CD1F387ECD65ED94817557731C1D1B5
+36F1B0F091D1BBE3CD13BD6100611580D8D711E80E0068AFD334E1353E759677
+60AC76E59FE48A14B5EE47FD59609E9C9E9287213F4268027646F3CD89B214F2
+578B236B179C48C83F18B685A3E4BAD9A00DBBA4B1D8B9FD41851D3B2F1C24B7
+4C25905D6EA681290FDBD74DAF7770B9637724EB3724A1DDB3CCDC3F08C2994A
+009D6E6227784E54B51468BC5CF10E66727BA8CFED697BE93A8E395BE61A2C13
+94974D99593C10D215AAE9AA690708D2589AD3BF56AEC534B379709C960087D3
+5CC85284E1B29DF2492D227E5A70E3FE3A91990F489B02E7016AA2B96F33256F
+599785CAD7CD81AF8F821BF4B6287830499367266CA9FB6C86B89E63A8C508AC
+587D6A22FEFD4E6834024D429E22B0059A0D95AE71E1937E9D10E5998E1E66D2
+E4804C95C04F4C0F
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont 
 %%BeginFont: CMMI7
 %!PS-AdobeFont-1.0: CMMI7 003.002
 %%Title: CMMI7
@@ -1993,9 +2042,11 @@ dup 28 /tau put
 dup 78 /N put
 dup 82 /R put
 dup 83 /S put
+dup 102 /f put
 dup 105 /i put
 dup 106 /j put
 dup 110 /n put
+dup 111 /o put
 dup 114 /r put
 dup 115 /s put
 dup 116 /t put
@@ -2190,80 +2241,90 @@ D58B882B96D1D0AF2274EC40BF80AA2D323DBF12839DDC16CD48B4F6549B8EDE
 044C96A9CC8F911B864C5D7230690AFAFB176EECB756DFE15133B7173A6C058C
 62584ECAB08EF752434BCED665E7E1C67B7C49BFA4516BF9E870BCD342D18AD8
 5CE246CE72ABAA86A483CE01CC370C45A6A2CF9B4C84EBB2670C26013BE4BB6B
-72A2AFADE105643B389616752FD84BAD4064ADE7576EFAB481B94C85135276C8
-4ACFF0A774194E3BA0F24FEEBA02D35C0BBC0F9E152C300510F511561664524F
-93F4770B700FBF2F2813504CA1EC0B3FF5C5846A96538891CCF04F4CBFFF3D2F
-2F38EF6A80C8F66A69CD4F9B0592096086B6442EA869995A2166423E9427B8E9
-356C5380F89961D44A4E9683970360F90F8402DC5F14AC095C43990F2BC3445A
-667194C34CC44237285037E321BAF2F34D978BCB43317BCAEB58D4B2EE59417F
-9A16D5178C7290C8BFAB66680239FB6B89ED6A51E2B297BC3587ACB18B41D169
-9C9C52C536229C333A059C91171FDC8698080D7B76F45BC6EA83453A6FA312F9
-17ADF154B9000F7583FFE37CFEB155942117C6539E20533CB8B611FEB5284C1D
-F66F145B255512CB73222578BA17E1B849E0EF8674AF6032F64E2C91F68AA109
-472D03BFE68DD462A89851882CB730EBBD1EA5090260E9DD94C29006E942BD3A
-35B784511F77B8C743996FC6AAA6C1078232D0B20BC06EF006A83D66BBCC05E0
-211D480CDC914698797C8D627BEB4A24AD9B2EBE70B7CA2EAA421EEB2A21FD76
-F94B8848F1CB8F4BD7FCF317A35C5A4691323F006604F62D5360BC42DC80537E
-79683A41C261BE135F4E1015116035AFEA1D04CF84B46567D1A153CC13EE7195
-91BCF7CF31A04528580B58C5D6556C106D99A503965EBBAAF48B6FC2B2780AB5
-8D1C09A89B062E71D33F54EBC1B7C256B161AE2BDA0FA40B8105E39C905E242D
-F09BB7FC0B6F97EA092E181D77A6984BD6DB7E2BE48D94A43B2D475EE8EC8535
-60069C7E2957894333D5DC8D83D72A2C872C0014FE902A1548DDA81BC2C64109
-A5B422CE9DCA2D16A8D65C684572B3E97EEB34E2B444D87544AEAFF235AA87A3
-6E0C1EC488CEE9F49EBD0C00771F9667553481245A167F898102D44CB1D7B48E
-7E459EF361303128B1370EC9A7B2D2238B7F0D7C4C644772B5D3CCCE731442D4
-A95F7A1C4A7C0F09B7A959F31C19413843539591853BFDA5CF0154E5CAA991E2
-3506267479798723251F6D39B9343F107CD17E75988B58E087A08C568A14A2C4
-50DE1A854EB79608E52F06AE5E39CA85B9FF651C5B30178CDA0027F752A59B4D
-B86CBCDBF6CBED58684F1689EE57D558C8760C2C516A3D1E04590C69FE9B28E0
-FA5887A621416D7F61C8751320248E5F03716E8775D662F7C80AED68AACE7749
-243BE9B9E21D5039A39D7335D33698AAB8940347ABB2213DB9686F320397094F
-7DB5E1A6EBE4E419C8F359380FE8A0C033D8147AADD8A9E8585F73EA783101E7
-B86B32F025611C9D6030871CE13D292F97058670C6E61EB7600236DBE30AA888
-8D90ECB9CC49E898819FC500E087D64CE8B8E070216413964069859C65B3F6F4
-11602580BC4928189DF803BC2B8559F7383744168D03A892B04EDF4539D429AE
-E8EE61DDA844C7590676E115AA5C6AA188943813F33BF5EE4A53C995F159F511
-2A65840F49E1DF95B1DEA4452B22886F368D1A704E643979BE6DEAE838BF72C2
-953E734E691BC16C5035BBF3E6D1E5FF5D4911DEF666ED8A31E4F2A77BF611B5
-824B2B8D179C2A16D219EF5F68FE0A405065ABCBD5F880096EA96FFF759DFA71
-043707CE9E7F56F1CC8074ED996EFC22CDC91B22E04F74E78FE23AE7C3B7A0E8
-B8A7A870DCA5BA7FB297E4A1ECCB501BD2EA3ED3CCDC2344BD2666CABB27A39A
-D5CBD0DDCCAA872665DD312102DCAB9341E727353429D4691E9CAB420E5B7C46
-170F357F718C689C115B406394500EDB1E8FDB8EA68B65E68BC7AA340714CCFC
-3D2359202C8C16720028798D782199C363AC60C93D36A038D871F11D2E47225D
-E848D12D7DC5CADD5C2B397C71D1CDB5894F0DD7767E9FB34BB9614A9B812A2D
-CE02D57B3998B0B6622384E41E71D5D5973F5BDC8575B0D433BE8BFC025964F7
-00BCD36DFD42E521F7C86891A3B2BC7EED22F6A31FFB449A02BD57EDD9E24B62
-70F9EC3F7A23B10B6F21E960345169B0660B1C54521323A60D4853891090CC47
-354F299CF5A07AA526408E75DC12AAAF4181A2AB043CAA3FF6B3C03848A892F2
-FB0BE0E88FCCB64B38F0EB5E50C9750EA6DF46FD8E22DE12FB4EDF5158ABB8D9
-E82CCD3229B583D1856D6A0696B0AE2F1DC10D9FD200136C101EC0CB2BA6EB44
-483595832B3EC6BC1BD1BE7FBBA6188798E9795F61B76A1B7E039E7B989B3CAB
-9CE28973AE6BB0ABDDDEAF354232CE21DD2383677BAB9D2E66F1D26904469C2E
-62AC6D3B483DDF47BDB38C2A00689DC0BD183133E78F9FB6DD27DFB5DAC18E37
-1D2A1D414EE3DFA13F88C98758A77401D7D5C671002B670A3D6F8E3197A3DBC7
-245BA7197CD870FFCC6132CB3CEB583FCB501D86B1AF8CA0929A4BB8A94B23A3
-F56EBCD82EDE14195A7F2714537A8F5FB99EA10F5AE4870401D9154408356D47
-FDF2BC4BB8B9B941AB01CB622B34627208DFF8A6D94B5DF66FFFD135D3285FE9
-F272C068D1F44E5F815946DAB89D2D3B8732608E0B36E5C29ED7034641AFB1B4
-C5EE92F0C2BE4095BD5AA366303DEADEE04920B67C60D69977C756598983FF7E
-D05C534B6D1C227E27ED631850257734CBA8D4B94BAE88391B0DD249775220BB
-44CEB28CEC2449F00D18D64564BCD270215F09DB5E8F0986CDAE91F84F2ACB47
-B78AD52656C5E6E72595801420624C1BCC9608EC3E9952E0B473E599EEC161F2
-52846312121C86D8ACA5EC463941FC78CB6EBE796671B19F34FEA698D23C6234
-8AA58D09683C9213EB1A205E2278E5452E4F3E49DD5845936D067F2BB2EF30CC
-E08DFD505A9E8B4962824BF09BD9979B12AF6A0D6BBD0B79D7483113995847D4
-16E263F0E7515A11C8A3AC8B632B7C7F8813106BE042EB281B03E88FACD342B9
-BD67A71168B736A4EBCC3AB93F50130828F1C81FA7B4B5A5F5C6F5D536411A77
-4A6C151EAFAC44DEEEA61B988767E01411933561857C71D30E2A720535C427E1
-C3C9B127010D9F0AB01013E93620AF5F2C894100E502E538EC634E20D086C2A7
-4385B35E646ED6880D248F1B3187ACCCC389F940D8E312B82F8072422EE19F39
-FAFCCC717BD5FB0E7F4011DC2567FBE95D2B05C8A85D8240C7B9064FFCAB1B04
-0C754002C32B88977B584CBD8DDE52277CEE68376FC42AF5CB601E359A58A256
-FC025517BC6D15D299221BC4BBFBC115487E49BD940E854E106D554BA342E4B3
-5B15B40F0B0CC421A1854266F4B9C42470773C3AE349BC46EFFBDF3295A2AB63
-CEFA183A4EEA7C70CAAC9B94137C3DDC204CA9F91B551B9C573EB2B3327374E5
-40A4A0A27B6AB00E9C1B155C72BB
+72A2AFADE105643B389616752FD84BAD4064ADE7576823B0FA6F59D9FCAB2B92
+4C330C5D63A085ED97FF31FE1F3B40AEEAB9CCE57B8B14C5BB7136BB8A9BB7F4
+7DD12EE71A31A1B0F1CD0F88340E81D2CF5011E8FCBFE9F4A1B8BD7D0D575E63
+E10BF28FD611AC7E5E7B70B56A231762CBED366C8460E5ED448BBF21FFA3DD90
+9C06BC86E3AF7CF0A1B5827AC8D365F9FF67997981E095066BA393D53C8115CC
+4DB5B26065F0771F54EA602604084FF65544FFD3D99A2572E4CDF1C6E5BA87B4
+E97CB6D126F572A91363AC6B783AAFC2D6E42A325BAC7C8063592314E328EE34
+0CB241237598CD4E14A37C8664668A1ADE23343E94A5E7B509BB9F0E7B05EC31
+A6C6E1200F41B7FB4E93A93BCBF9984D608951CF313BAB73AB9B86D18E0A13EC
+CF8EB4690A157C41824EC13CE517AB6683F89A7E1A1D7812C6CBD0617A9DD99B
+7D4823A21CE4E3427E58307CDB56C8B03A88CCFAA7BA510ED8F7CB5800951C5A
+6FF034BF60675CDAB05EC82232532B4536DB92148E19C058139159430311D314
+4454B11104A71BF0B6E738BB631E01E547100BBD529CB15EF6E27890581115B4
+5F87BEE0BF00596C1360AC86D4509FE11DEA50CDCAF99A2BA424DBC144EB49EB
+D93163CE09F51077748D1F0A95C215AD2CF7F47713CF52775FA2CF65B5FBEB4B
+15F1E01BE0C9E231DC01E7C34753E8F1146478A2501B22C0796FD15936D911B8
+2C3E17389E2AEA23F2533A1AAF1D3D46DC3025209FCBC89F436EE099A6726B83
+51DECCEE69A6B5FC5D7B4A67E646BEF24228AC293EDAA6FFF6F19CA7A7188684
+AE210093A337240C33BA0BDB5A83BD69976C46DDD2C5F19B8ED5FFA7BE59CA43
+E3E5E1F5A8F2C16A5DA660B405C1ED4DF1DF92F42DC79DDCF13F5527169563E1
+80C262A31CE9E52580FFC09DCFE55513641E3482453707BAFED7864BCCC7CE8B
+1F11C6BE007005AE6FE21CCC7F31EA7C161C62F8D39E07F6553047FB686B06FC
+6964D957867338277FA13E1128D8C49B1A15B95F7867FF528FEA80A429F74207
+F165C972294E32B0991CF39536784A5CDF0AED5D84F33344EC900DEB0B772923
+BE35AC036715EC18FD6FACA03263187E77EBEACEBD601FD4FEC8C0210942C4F0
+7D31F2634C42BC2FECC67DF439CEB5433B6367D25D9E6E82A60A614B457BCBE4
+FF245495A4EF659383DDC673905A00A526166E52C71D4E3E58325BBA1DC50FFB
+6A932F13A56229D38F6205954A2F5ACD29F93FC3E2E65B2615396C0783A06237
+CD503CA138D96173D9FE784EB299C2D4A48A9F52BB83E71CFFA3CDD4D91E4C2F
+D428D4524EAD9747A583CC098CA12BCDD7AF48116C455FB8BFA14D2FDC8DF3E2
+3ECD8070283DA48C9C988F74367859DC16F16C18343BB961CDA3AD47CD032800
+D1ABB576A87782A10614A1486D224DFBC49927BAE661400C53E0DCF0830C02BE
+A21574AE34789049A3E50341679C5F67A54F648DDC3137B84A459FC2844A55C7
+12D85267EDE1307FC62B3CEBA371A7748C1B1B581460A591FBAE48616778EBF5
+0A35E4B7FF1A9B307D34E009CABD9D9F48AE9A90D8D7BB84B2CB1370A4FE99D1
+081F08DAD5984F73FA0D636CE1A1A8E670AC3C8A379F6CFCE8079FB4D517572A
+7C174DCC791F7A070DCA2D8CF0704E7CDB15816125AF1C8420F1D81C80F7386A
+9AD8C037667571EAD58D8EEF66AC2C5487FE0D4C7FE9DBA85E860232129E4AEE
+1A13BF9A6BDAA24DE24DDD416E56FD22C4623F66FD8F1254BB39D6361F2F44CB
+867F70503BEB469B798117E9A4A6E641E48C3C83B3979DBD1AA3B04B17936938
+33D2C0ECCA2120FB91E333FC2B95ECCF029A6B1825341861B40CD11B8592CF6A
+3712BF0E6B82D78386C44C4E02003EC6B1E6CCB97C3851391DC0DC7E97FD07B4
+E5FBE512E7203221250AA3136859BEA712CAE205DFDD5F9A0CC6214FBCEAE3FF
+2B8FB156F484E46440290A16C24BDDFFFA4E05D9D1785BCDDC051CE7D8F9B071
+281F294670B1E3AC37888B367C38A3D98DE27E5D0E856DF6CF9DC0475C85A300
+F990C51D741340B6A4A182730AE0B9FE179C3B6D260DB857C9742A91B4961986
+0EA3A268C5CB33F1D35839597F1C195D5705EAC2645782D769EEBF6D311E7709
+F6C20222B419CBE672433E8B547CB67A3CC1437D293A2EE0A51BFF1E08E407E6
+76A05F79D7441BBC60D9E665132C3FB376946C5CE7B0990D705A719D4A80DF0C
+E33817836BE7ECA8ECF9BEB2F818F1186D13C6FB487D646FB1C5D9515219737B
+E2082F457A503E29C18E1A372FD1BCB6BC4BAE092F62E7A8DB992CE40262CEE5
+41A6BA09D782BFEBF9F2FB365C766C92DF15939603E0A2FD857D558F711632D7
+FA449EBB7E015AD23E22DBDAD2F6A9D8672CEE99137025C91D39C82D1833FB96
+FF7CFD4C356B8D5854ED7F6B3A61A18BA02ADFEFA6933F7F3E1F2F9C089DDC84
+0EE902408B52C03A292E784A73C7D371ACAAFFE7C3BBB647214AADDDF689565C
+332C6222D22C210F344D06809008F7531DB1E1AC71F88343A3FD7CCAD774F30B
+8B6B98F2EF83386342A4F1299F8DD8FCF7CF497DE52D0E147947B2E2FBC1A0A3
+8A5987ACF479511E13FAC3F428ED5254201338C54DF9839A52D82234FA8AD78B
+DDFE825D7A697AAD94C455B5B9656A8FA546ABE72BFD48E4496EF0BE0F713C3A
+E7D1F44B780FB822CF84044891DC345E55F6710D5CB61DFF15B1AB8746BA1EE9
+E3189B7A4AB40A0A3556A45391ED1DC1F09CBD6C0C3533555673728C319FC2E6
+9B62A0A805370F231FA94A53330A99B18742DE0DE4FC0EB227B8102821986FF3
+4D5C2C26A7808C2CDADD63F020D0898676D2A396BC2E8CAEF843F86AF18C5E91
+B6CD62499375AE77F3250A03101095DF88ABA3EA46DC823FB360F0BB3094AB9D
+94DED826CECA0344F4729694BF198FC3C9CBB4741ED9E5FC9C0964E50008AEAC
+4633F50D41B03FDD1B7801413727B778C86990602417D72E56CC01DE304E55FE
+EAD944C1F73816BF7B63E376DDA05B826B6291C0C090AB3702950A5655CF2486
+64CA7BE8592F06E5E4B91ADB2368AA152E3C0A83EC27A87CD8129F3B9C5AB4C5
+21BB0DDB0538B089702F6AF26347F4113A5EAED62FD27FA7EE27F3125BB0695C
+B857D7D130ABDFFFAA9A1DB4479C8EC854DC6CB2E550B5B0812AE94013C63AE0
+52666B2CB6EEA1E86AA4F8C4C12E923338A8CC03F69F0EC1EAC571EF5FC29B4B
+72A85C9517884DAAF6B6B926C58CBA2CB09F3830E32AEB11FC29074C0AD5F9B4
+4A1A8150F63D7B061EA43F9682F988B012B04E8526FE0B7156A1EAB1D7F59410
+E6D89547E7A38D4BCBC95A8C133CAD1A881F27BA91D1E67DCA2BC270E4E404F8
+100BB8554F8D248BE69268D38627FB01759960464A9844C747A31D664B083755
+D7630B8C959E82A8335A5E8330DC7ED9605606500727A6ED05D943752858D342
+2D3BEAF95771C172C527CE75F43E26D8A87D99EEEE30D7931202B8A5605350E8
+394DF9995F37CB161D0D2976F846C40E400AE070C3393FEF06A420A6BA386245
+5234B9F0CF8BCCCE6ADC36DDDE3C619EA94A68C2C78854054D769531418D78C7
+6112B5A673659EE86CFCBEC00ADCFD5B3934BBB0D5D98962D46632DA321CDE7E
+B24670123A009C6AD29744AFEC0869AD7EF4719AF48A498E3A55C2ACC5509742
+C3E8685E1716044CDCC7968622ACF2178E0F6288D5FF814D72767CCDC17FE95D
+36E7312A45174BF80BDF3A94876DA46F630F596303226ED77B0A71165BCDA32D
+B9EA751B4C17ABED332D3B5386
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -2275,51 +2336,61 @@ CEFA183A4EEA7C70CAAC9B94137C3DDC204CA9F91B551B9C573EB2B3327374E5
 cleartomark
 {restore}if
 %%EndFont 
-%%BeginFont: CMSLTT10
-%!PS-AdobeFont-1.0: CMSLTT10 003.002
-%%Title: CMSLTT10
+%%BeginFont: CMSL10
+%!PS-AdobeFont-1.0: CMSL10 003.002
+%%Title: CMSL10
 %Version: 003.002
 %%CreationDate: Mon Jul 13 16:17:00 2009
 %%Creator: David M. Jones
 %Copyright: Copyright (c) 1997, 2009 American Mathematical Society
-%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSLTT10.
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSL10.
 % This Font Software is licensed under the SIL Open Font License, Version 1.1.
 % This license is in the accompanying file OFL.txt, and is also
 % available with a FAQ at: http://scripts.sil.org/OFL.
 %%EndComments
-FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
-/UniqueID get 5000800 eq exch/FontType get 1 eq and}{pop false}ifelse
+FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
+/UniqueID get 5000798 eq exch/FontType get 1 eq and}{pop false}ifelse
 {save true}{false}ifelse}{false}ifelse
 11 dict begin
 /FontType 1 def
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
-/FontName /CMSLTT10 def
-/FontBBox {-20 -233 617 696 }readonly def
+/FontName /CMSL10 def
+/FontBBox {-62 -250 1123 750 }readonly def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
-/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSLTT10.) readonly def
-/FullName (CMSLTT10) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSL10.) readonly def
+/FullName (CMSL10) readonly def
 /FamilyName (Computer Modern) readonly def
 /Weight (Medium) readonly def
 /ItalicAngle -9.46 def
-/isFixedPitch true def
+/isFixedPitch false def
 /UnderlinePosition -100 def
 /UnderlineThickness 50 def
 end readonly def
 /Encoding 256 array
 0 1 255 {1 index exch /.notdef put} for
-dup 37 /percent put
-dup 39 /quoteright put
-dup 42 /asterisk put
+dup 11 /ff put
+dup 12 /fi put
+dup 13 /fl put
+dup 14 /ffi put
+dup 40 /parenleft put
+dup 41 /parenright put
 dup 45 /hyphen put
-dup 46 /period put
 dup 47 /slash put
+dup 48 /zero put
 dup 49 /one put
 dup 50 /two put
 dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 54 /six put
+dup 57 /nine put
+dup 58 /colon put
 dup 61 /equal put
+dup 64 /at put
 dup 65 /A put
+dup 66 /B put
 dup 67 /C put
 dup 68 /D put
 dup 69 /E put
@@ -2332,10 +2403,17 @@ dup 77 /M put
 dup 78 /N put
 dup 79 /O put
 dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
 dup 83 /S put
+dup 84 /T put
 dup 85 /U put
 dup 86 /V put
-dup 95 /underscore put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 91 /bracketleft put
+dup 93 /bracketright put
 dup 97 /a put
 dup 98 /b put
 dup 99 /c put
@@ -2345,6 +2423,7 @@ dup 102 /f put
 dup 103 /g put
 dup 104 /h put
 dup 105 /i put
+dup 106 /j put
 dup 107 /k put
 dup 108 /l put
 dup 109 /m put
@@ -2364,7 +2443,764 @@ dup 122 /z put
 readonly def
 currentdict end
 currentfile eexec
-D9D66F633B846AB284BCF8B0411B772DE5CE33C33655F6FF751F340A8D6C01E3
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1BA6FC8D4362C3CE32E0D
+DCE118A7394CB72B56624142B74A3863C1D054C7CB14F89CBAFF08A4162FC384
+7FEDA760DD8E09028C461D7C8C765390E13667DD233EA2E20063634941F668C0
+C14657504A30C0C298F341B0EC9D1247E084CC760B7D4F27874744CDC5D76814
+25E2367955EA15B0B5CD2C4A0B21F3653FCC70D32D6AC6E28FB470EB246D6ED5
+7872201EF784EE43930DC4801FC99043C93D789F5ED9A09946EC104C430B5581
+299CB76590919D5538B16837F966CF6B213D6E40238F55B4E0F715DBD2A8B8B8
+80A4B633D128EB01BB783569E827F83AF61665C0510C7EA8E6FC89A30B0BC0EB
+5A53E5E67EF62D8855F6606E421BD351916549C569C7368AAFB714E22A023584
+8B1D6B52FC6F635E44058690002C6BA02CEC21C54CC8875B408A8BB84F445894
+5D6B3E4841CA20AF852A660FE9C832F773691DC6F7197FF3DEAEE97418A5ED2F
+F2AE65300416227CD3BB03C29003C770CD7D2A7A2E4C1DCA193651C2CDDBF93B
+966938788694BFB562AB0010268955FC3555E5984CCAB0A9B7590C77C9BC713E
+A29E5BD7193A4E971D1752DDD0F0AA4648E7E87BBCE66A1E836C715C408B07A5
+9EB56BEFD4596706CF839BA4CFA90CAD4038C1E006B51913279A2C31FBEE5BD4
+A7D74F9103CE6124F5B439CB860987DF44FE17EF88EF1BF62C67060D25696BCD
+94ADF08F04E349CEBDF9D3389D870D94CC05E393B3F4362A13A6A672EE5E8F5A
+DFE7046AFE3EBAEA58FFEBA4A47BF61F92E2003756DA643CCF2C9DFCCAB62669
+E3C2A18D690B64D907F50BCA155A85E47C3A6954C6FF7ACA36D8DFCE777B7929
+5F5D5F787B9C247ABF13D6D7B4A8F06BA25CCB342F8A5071325CDA86AD71BA23
+8A9695C7D1D50D0AAC267AB7CDBA7AAF46A264B7B081B7E79AD937FEE4969FD5
+155A99E652461EFFB4BD010E5885631E2B2497D6B8C43CE77D7D47FE201DD46E
+4482FFDCE150A1183C22C004A0AF0E1F42AA6804E038E1DFC8B0A3CE26B52038
+44D2E7F759DA5C252489E5525963D68BC27C82247BEB18818C7D4CF0BC5CC97D
+8C701034B8DF798DD4CE36C3F8B1FD40B2DA14EA75583852875031AF8C909EE0
+04495FDCD04B05A5EFEBA56A8CAC1F57F1B8AB91FB25C81CD51EE69D6E0F52CC
+A0E12CF7E3187D67DF71A599FFD895FAA7BF80E2E6B96592BE77AE96905BAF0F
+F547355A36C443797DDA7C414AA606CF9153E03450B77D1BA4088D739DF55F07
+111B9E11AF37F45B6EDE6D7AC126E05886A57C83886DA87761BE600DEECD1344
+8A82BD652BE7ABFE6A0F50ED7C6F4EE12CDFD80CA7A5518692F267C51C3FE76C
+567BB8DDBE09A2AF901F79AD02B435287CB8057B3D5EE6655071F67B00438728
+C4C3EBD648BAF650993AFE5E2B29074A99ED0FB725D9B8CE8B0292B08A280214
+C3AF252BEEAD30C88F72E322FAC3E9D78A1038F5DFC41F7BF1AE3744A0677094
+51B77C2D630B67853FE5E975A395C06A4D4DA744040B272C2B88D8B7ED3A2C01
+66F503C9DFD3C7DDAC865900D2A4F2CDF517F449851DB1963468D0266D7A3E58
+9F6B2A1843E6444274F16A9930302DACD8D2BC4588765099A86BCCD8A31DF0E6
+2853114DFF2D19F812F19AE6C2E419D7AC1BC024D1195074FD0C6717BFB389A4
+4D5428E7BB2E4F9E9FDEDED7BDCBDD3460805AEA0B5F6460C2FDF19273CE5BA7
+5D3AAE0DB94C6AFA8339646191C23B0149E7CBF136FC4C844E025A38935DF256
+0A0A6466A45EE8B9B23B6A055856FB084F87C73BA28F1883E3B184CD813C72F9
+233B78CA4E125ABD26F29B92CD9DF39D6FDC2A217E2B6B45D9B0A4D536790A5D
+BC0903069565A442FA7466414D948AC432C6B75D8D0E1DBB217CA3DC38A52DEF
+62E9D5AE9E753956C13819D93148C7683BE4F71B80BC066D8C19FC807FB1C086
+B49215DCF56A91A42089F0D063B9981925691F7DDE3237403AC714F5CC3ACA88
+DB2F1DD205578C00472FD70C8BA4F752E3923ACF3164D442A6B639902ED060D0
+C5777BC20F9A3BDA60FA3BC986C38136FBD2E8F910E32EF36377C9CC187F4AFA
+CCEC423DB925B378522B748BDF12D523804CABA83CB5A7ED69FAB9AAB75EE8FC
+38D9866E3754C4E2F2B9AEFA804044D878DED0E114EA0E9682FCF38F6628E63D
+FE1C1B5615E54FAE8684566EDC4B616F76EEFD6207E0386F06D3BFFA26425F24
+303CC7C8A8D7021E7D09B202616988287838C3DBCE3179B4FB5C726E603A47F2
+8248CB508F327D1291CF3F08F7C88298DC2D0F778D24304EFCF6E074182BF5B1
+8E6551811FD6991971692108E289B61053D6DCBA2925B3903E8916EBD09D97A2
+C6D08E89DE4C0CDF7185E1E00DF456B249F0BFC686E04FDAAD2772DC2C39DD53
+9C23A41471267F53A87E5C2B8CBCDB66CE0B9844BC506428E6150B48D2FA6363
+4FDB2CEDFBAE0B7DBCE4D83E29B2955F8966272CB865EDB360C8A8C19EC62A29
+03066483E4083524A1E8D80FE3867BC1AA91753C26ACBE8489AB0E3330206212
+93E07ED473DBF457EB8489E66FB4B8ED8A9EA8911CF9308CFE3E6D6F36810EE8
+91CCB11BD548617B2C683C354452B9229E7C9E68828BBEC324420DF7C188CCE0
+FBB514547553A7E9B38AC265783891F42DA472388569C8E7594F7E8810895A27
+06E456902A8D9F65CA808F1FD475D011C4572F8A654BA01D67942226A663D179
+95149FFF41A9F55AE84EEB9A6A39C017D7E4FD6EFEEE7FF3CE847CDB064A4954
+9DCD273B810E0F259501BA4003A3EC1ABA6E13D24C0B57FF82D6DF077833B6A2
+7EA54801BA81DB961C261689C0887FAD83771E55D3D137AFBB21779397E11972
+6C6CA922F45AFA5C0526863A5AD8B9C0775CCBA17FFD37A44CED4710884DBC31
+5C9D3F5441595B86CF7CA2EEE42AE87896E9E60EBF5F35C2B7FDBF9A9CDAE262
+3F48396F0F741E9DDF1D4FEF75E68AFB020D06CC29B3A7B2ED819D1AABC12B91
+CA2A65F1AFDDA2F3FB322E0268DBBA024663E49EFF076455338FE31A16B04EC1
+797EAB0B49AFFB906A0690A1E8E2F5314773E1CCFFF43E6FB3875AC907F0C5D0
+DCB9BCC127014D472463560CA0CB1C2CE614D94177C7A52A5B089316689C8112
+CA57E35D716D956DBF9013B1E5B9626456B1433C8C15FA906458F957133B9E19
+8D46DC3AC015F7602538C2AE3927C6DDBACF38E59220C2F5AF36B68DE9117C51
+04CF7DF32B1AF55B87D1D8A5F4BCFEC66F63B32B6548DEDA3AAB06C5310E4757
+78AFF947DA22809B360FE535506A554DDDE5A6F2411246653710ECE5CD3185BE
+730520A766C47E1ED01890059882BE1432586864E1A86A7F586438C8DD35C00F
+021A741ED47E0F16DB6070ED0C50038632CA4AC2975578A8372A080CC0447C79
+CEABDF2BCD5E78564247B0F0025F556DA8FB62125227849EACFB724A4AE3EF57
+90C07A5B27D2E59425F56BF8AD84C5F5310FEB1BC73D536339FC2E6A5BE2DAFD
+97FC835E0D52F680F80ACA37DB498AACF152B9B44626CD89E3302C3EE1623EE0
+F998FA78305960AAB9F483F731F5F67A8C963C23DB8E48FB804EF8B86FAFE7F9
+4C09641915FA7E3930AC922682313408BC1607C76751CEEAFD660206A39CF394
+40ABE2A313AB7D5FD6444E219DC5C26734D322BA268D330AC17959A390D6C8E7
+3A155095BDD66516DAD5D65519A7FB871ECDA77061EFB21F359158B4470EF79B
+362C35C06B85C9A9505C8361939C6AC013F2CFE8EEF46FD8CB4452AAB3EF1FA7
+DC066557BADC2ADDDF7DDC2A0E1DD4A357E27A2073427EACF9B9035DA5272136
+7DF37E26D96ED4B2ACD60596E039BCB15E259C72FEB3344E3EEE3D4F17DF4233
+04C1416BCADE80BD483DD8C9AF979E1C7D50C4CF015870703F88B92C4FE46AB8
+DE6717B55C460C805B391B84333097E116F4A51F631FAFAB34CFC925BEE8B72B
+C9FD5F5A79D8F2295FBFAE649DC6AB47794AC7D73431FFE5BE992F2B5AC67049
+B5208251C0E442385A9FACF25E3A98D7F5D4C2A1ABDC600AABE84769CA83350F
+9B87F71CEAD3600E02FF9AC03C1B5C21C84F911511A0CF0111BAC7605EE31229
+3C526A79D943D92E1CC3C38ABE82D560CFD4172F318030852A5FCC0534B8B3FE
+D7365987C8B48A072907B26CDC2108130A33233E8E0BB5FDF14FB55098A10EA2
+B51AD9EFB119F82B08D256D396D3263FBD9DBF172D43A90ACD1A31F3E89E8571
+74BE98B9560E2CD661A2F93C69FEA3FF26B00772AE2C2C24B98D3D122EA2AA8A
+44652CCDF4EF4F01CA7D62A976E23E8A86291F43BFAF38FD9C325E70F9C36CB5
+A181DAD30156E98339E6A0498D3420B7BB3B4E651A9090D4A17604AE386273A8
+3D4AE8CC18345E6E19DF06BA848F203F74B161D6A8882991CBA7385F308696A1
+BEEB0130D938A764B98A2001A38489B1334025EA848CA44A116D64926D460D64
+01159E77EA7ED9ECE7BA77635BE564A4ED89315BDFF54ACE6AA1A26591D13CD4
+6D6425CA7933769B842192858D10998509396829263290A3A7CFEBBDA3EE6CDD
+DF1E492AECDFF7941B53573F01F623CA0A5ECC9D05A3D0954F7AE8CE94AC3B2A
+CD4E27519B2E16F033EB732AA024BBAF74626DB55DC74B1FDDB07FAE98B4AC5C
+683CFD8744F361838D343B657EBF52DEEE7AEA7565C5BEEFE455DDDBC4DCCA7D
+87D6D769C5ECCF14118A14A85A86865777C8E28F953160D5E82844AE54D541DF
+550D5F1519E183E0C42BE88F0458CE8087F2CD4B1B49A8E9E3D127C4A4CB74A6
+2E73BF4CC317781D03FF04BC36AC0E4AF99E2ACAD20F6F8029DE8A035DAB40DB
+17D237850BCDD05931FF4B0FE2D0B79EC5A88FE0236271CCB075BD194AA25AFB
+3FB93A5206F61A14602E4EB6F1C31C654527CE0C02D04314DF9AFD710D0EBB9E
+F8721B97F5FB18E27507E1F800B5509A58A1A8296C72B7B73F99B6CFE42E9C2F
+B63B3555475E562672645CD374BCDE937A9B05A157FB3E74C8297507253E957B
+1A9DC421946734CEFA3D5EE357DAC7E9DE17A5BDDEF6B2D2A740BC58128FC514
+61154664412BA1C05209EC992A77B7CA45AB7C0EEBF590A5B5652866008CDEF7
+124A3003AE6A7CF9DF3C72750CBD281358CD2FF25B162B78CBB971DB3477F8D2
+ECA3EE9CBC90323B2C236E375337EA0848CD7CB5781A2B0A42DE7E4D99DB2746
+0B26796CEE129D23C76794B7CE21C13C7D4A998B752C8CF43A4821B736EBE246
+D2A2BD7BA3351FBCD1B0A501EC1EAABE60D06DA2FE39BE1F0AD629769FDDC933
+F9D02F9686EC8C2D7455C26AF4DD3F6860B2289E3A30E1C254AD17D731CB73B2
+BF4DFE90CAEECE3ED0CD3FB4C8F4C7BE1C056AB4E9B95781A8968E3CC1010003
+75DFBC4AB9F6B27C5A9AD88D94441A8ADF09EB275E5F0E5E6F3BFEA0FA8C308A
+8593ABA0645ECA8FDC3F0E264B35D4B0DDB86B93CD8A047FC409E18196B501C3
+B003622999C47BAC04FD1ABD8AD359C977766E9643EF3BD6385306B08EE3E13E
+7DA5A06AE33D17A3D574C6390DB6E9429754B210F0C349C359559C7EAA2350BD
+F61D4D8A92B1AF697BC620FA0351E67E0D9F41A95A47EE0BF210C2C48691901F
+F905F65693DCB85BE412F097480F6A7266AE0A928729DA0F691CBFFF3B276EA7
+322BCD2206D96E3DAFDFB992CA8F2955F0E8B882729DFF840569D12E4DA1775E
+523AA734552AAB6F2F16B89B39F1A3FF0E07EA08D13E612F201716C67F327017
+6C041760DA30374434808273062C1FFA2C47B3FB578807BC26537F542040FF77
+66C995EF3E8B08B09FCD3EE89C30F157158A739606D2CEAA26694A4F1CEA6633
+B54933141CB85C60AB262E2D4E824A3B85C2BEF810DD774F296AB37D0BAE7182
+5648CD18556ACB124246A75474B232D712C2358908B5D9A76F82C626BFDE01A1
+093B8FA6AA0B32F2CDEF737B28BC0448FF816DDB5812131DA0DD5979D77C3838
+B978CC3F6778A4BFCE9A7087EFB19749285AE4C92B99A6649DA349A2E0889D72
+6D4FC664522F06C8C4D86D30BA43ED4E42211217D01636A4E17E2A132D26F394
+EC34EA12D84594AED9C6CDBBC0908860F39B240FA7D7B3003DB10322498691CF
+A294C0FC7ACC0BAD1EED3E9D60AAE3F7429695892D1A21CEBF062C6129B33966
+8B2EF6E932F9891DE6028B81C5E9B23278D35B7F0D83989BCBA25E20E9D503DE
+144DC485F09A4EFA1268AC5E4B551C5B2F1D51E9B9B9C0FEE585204F869D0BE0
+7287D7570A12940A47C1F51AC6134F03B415C30E147C49F89228855D093EE55F
+172711F37776E97A99CC4B36E2F10713E36FB279FD3FA5A0EB9F3938F42E2BB9
+254EB8F0C0F30391735019E02BFDA21D9813C6A22279B898EAF01AA892B14DC6
+5912B9275167AB46EBC420836CC1A5F38A4EB47C039A7BCA62BC3FCE4199FC71
+011DD6E5FFA0F3D7F04AC02AF91B9249B9F993AE346572329DA852115BEF8460
+B94690E790003586F473F37EAB5AC2922F5F663EE2C3C0C336A8DB71650631AC
+0A923A389AC911CB215EC2EC7D50CF8AEFD59EBFFA53A9F1FFB7E6215F17093E
+3975F186FE23BB5FA5474C11408FABD223E1E6F62035B5A5C1AEFD8899F00FFB
+E729C2D5FD551E80716CEA4E8281660286A802AAE8D5834F37F2EAC46297E57E
+993B09251DD7789D3467417E393B7DEABD06676B96241B0E43ED1A1A9FC3B12E
+0D34B2B0792B79AA648FE9450C3B209FB6D7D91F50C52A5DAB0BC81A8B698BD9
+18946EFF691912D7348D48FE68CD876FC6F71F81165D0C3272DA1A992308D9E0
+ED6D0A4DAD679AF495F62B78D462B463BD4A40931172290C615B3B3B6B47E45F
+CEBB85E0A6AB6832067CA6D403C239530D07F199788AA4DD52553836851C5228
+1072406F6D7323A334E7A7FCA588897C4FBA6D4F7DEB65525EFB74E539C988C3
+A685A98752F7198E77E456A545F0D23A1BEF81EF58B02D289CF980A3F17BEC8A
+6F83DD90C4A917EB0E5E2B444A608E2E9D2FF80620E16AC1D7775C0A10C1299B
+BEE0E1AB24C50647E5CA1DA65CFF3B2C295F0644CA7826E1DC6FADEA93D66A20
+DE852F20AD224D28DB900519EB1569837139C833F24B799F7EBE3FDC14235323
+1D0BCD4991C861F38DF413A5A5588B73AEC3BBFDB885CE17BB3E97B4E6A79761
+93EC8418C2BC4725CD61B5E30C07352F647C3FD50083878C13CFAC241DDCB082
+E53703D182068727F9EB6FACEC25F6D901D7309ED7370867E34E267519E22D62
+4FC7093448BD0D6B1C43D318A3E14C92032325C132AE0FF7ED707E1FA4A955FB
+F5224BE0045CB14ECC321D0F333FE24EEFCC504F7C756451D7693C3E6CA87526
+4912E1B6DB935BDE76FBFAFCA4ED473F1D2618812CFF25A6859C626A216603C1
+361BE3E071FCFEC2D4BF2FEBDE07DBD56A1BFF8303901168FA06488BA6B76F36
+95B0A90D7724E9ADB567C2ADC65CF3482CF47FD1D16F70AA19A97D0F9EFC611C
+AEA5E1ACCDA7FB2DF05E9480936281484BC329F0B771775E73F7FD72FE3F45F0
+50ADBD03932B38F37A8F0A66B2F739EA3AC8811C8F514E68C5643E4AFF485C81
+88475A523D7FCCA5C8809BD49846C77795A38DC6406082000236A4D2628B5932
+AB7916D44EC2210CB941B143FB218EDE899E4C47E0081BD91A7BAA1D80F1562B
+A19D442C49D1295FE662395CA9143CB136751300AB9F9341255A9BA1323DDE0B
+DB92E2D787DB0F57D7600215E8FC23ED8E1F0D3764780499D425D7824DE64B3F
+988AB0C9ED06E600942526F12590D8A239B8AC70E319262AF6A41B2D45B2C200
+5DDD22E105A1F4AE4D2529C9B9A1CFBA75207C66D0B692FE7C9CEED9A54EE660
+7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E611ADF045E0AF3C
+46E2F650CC36E969855BFA34B66B0C13481151129AA93F8003F666C963A5086C
+8F7DA89ED6D2616BEC5F71C3D5C65C821419AE7F10EEA2F1D2F4353A40F2A99C
+5C2A47A16E9F55A77D248163C0B7CC9E2FBAE80D7344BF0365A8CFE2D96E4E1C
+342B8478B7485BE9C86297677D66B683C75C0023B71D456F5039788CDFF6049C
+4D63AE6E85DDBE826FD8145968FC237F12812FEF2505E3ED7565083022A07F2D
+ABDD90859F3DE0E6A95121238DBF05300C35CAA9065DC45D17FF350A4022FC78
+2C32EFBD53D8605DFB775CABF857C2F54BA01FAA6288A52E1F78969FBBF99013
+99D0DC4D53DFC2166A2DE5CB0DAC8F839CF46EBAFAD2162A214B85D77EA7DDC6
+A3A60AC085A5229AD801503BCC725E7243736559F03FA898F0D03B7B07DE7434
+70275491D0D5E8F1A2188FFE9DE4D3E3B5AE17AE0AE2ECAD5CF1852B2C0A2CD6
+322DB273868F38DDC2172211151D04A56EF39F058F7C08BE6D5BB1B8A3A06A2D
+030AE1D24A4E0B88E5C5DEF5D00C8C12FC372B6E100063D520D574EDD883F591
+AEA95AB0D5B7DB2CAC709D0F5A4CAE4F2CC44DEB0C846AB6829827C2CD9D96CE
+128518297830F0A7D98E9302AB5C1A5B694AC8DD60F2DA3E2F81724E5345063D
+F1E40AE366C14FD44B8CBE054B0B668A84212F1D714F64277875D9D93B837F31
+5A4DF4654A9D06AA5582D36A26F1A6482C1C39D684A4E8313C75647B4006CCC7
+C58588EA51CF0825BF0315C02E69DEAC8C6F5D177F6FCF056F69FC632932D034
+77AD9BEA5BCB4ACC50FDF4C28825E73B5F499F6B8971BAA0C5EF41106AF7EBE9
+1B27FAB3E02A999D255BA6AE0E3C4F6D033CAB4A01FA5B78A86CF49CD7B4E8F7
+77C7E7D61164CC54F8F77CAEA3AE1AAE77D20E3264EBC2C5B32C28A81024CB4A
+F18086F4E5DB6F7C3C354724C2C1D78F5FAE57B974E1236F4245AEBCD67E4CDE
+FBB9AF62D86F741D4407016B4F63329DD900593609028355D120942679B6CA2F
+F8E54126284BDDEB7E773E0152362B14620985F6B2666F9472D221C1DF2D86ED
+79C8FD0DB14F73E1D33874C4E4D87EA192E1FBBD7DC29E8D815BEA35DB07E024
+ECC8B5641CAA512C269146DCE3D42C4EBEFFD77006665528387ECDAD8E8767BF
+E030C1989FEAC789BD65B5078DDCF6AEB4E285FB9A4CC9B33AA66F1E3524C126
+8365EFE365B1403333A3B801D666DD6C694FAA422627FD3FFC731DCB0D258522
+650C2B89ACD6BEA0505CB93E66CA653E92F500FA3B4434145AACE5FF06F18A12
+C833040CA19102D8877A35B355A84BCB4A39DAF9F6EEDA0AF077082B093670B3
+322CB17CBBD893A6EA0770F3A1524643C5B25D84DD0189A1A86A441A63E83A7D
+3AB095B797140E5046D91A25C809BCD53E300E46D9B871E449E292232B82D426
+90EC1721B5F513728737F7EBF5AF326230143E84EAF463AA6786B318D3783B10
+1EB65943A88B387190562EDE321B30F41C61CA2F3898D371B07E7B0BCBF71D15
+8C1A0A1DBE2230A8845537D19A05F750D9E0CF21E88A445F06D4BCA34799DA4C
+E89D5F4305081C59E761347DF265602400326AC7D170462FD5E4BD43E203DE94
+BBB4E9B40CB1283E6A55D10D6C15C691682C640B9AFA603146D3037424DBE83D
+7155D915D7C5AF0E1F3EB9BFB43006ACE01EF6B9C0AF0A052E208389E9737464
+7063274509CCBBA875CFE0777C214E960FDC6600E7D45EB40B4CE89D4277EEF0
+7E13285E8F5EEEDE9FA50FDBDDA50698533EDB77095591E0750B9BBCFE3046B3
+81D4C1FF1A9FD710E32D5F1EBBAA0103D5D74425AD30D86FF5ACCA2495EC902E
+40C2845C579F4DB1E7C157FA79D5ABC960ED592A27C71767C886778EF5275B5F
+1E6E9F052B79C719BDA7D663C5AC180699FFD076D9F2565AAA7A2C1A45EAF673
+93FB12A3F8CED2BE09201524819D2747839E9575CF431D883877C08F614E5C1C
+51CDAA11F9A8B8C7B36C127F12FDA0CED3EAC720DE6F97A9105591A30A2A2B7D
+B463EFEAAD1D12E05A990C63864C8C208B967668BE9008E1E67DE80D8B1DA5CE
+F67FE2BA589D6DAE753024CDC22D8782CBA137DDD4CCD167D4AF1655A9437DA9
+8233D25EFEBA74496EBDE2B21352A7DDC77B6A69789351400A0FF357B1890861
+3A81DD07C240E87945CBFAC472A2C2DDF3E4C87B1DBDBB6CDF992C3CE9E40D74
+19AC04CACFCFFE8CC751F3CCFC6201D4B792E27B640024FE1ECE200967B61758
+C3EB5B05573A950B9CEC05A752F62A944F99470CAD3D6971A2424E7DDECA1052
+91AF03E89B2806A1EA88D16D04151579213A307F9074609AF89D835493D3EFCE
+9AF05CC9309EEA71CF7D05114B54C49A3A464DCE7C27808004C12033BECACE03
+BE6A6D9E34E133D511181345B4B8D1ADFEC6852EA61579EDBE041597A8A57730
+469F859F10C4BC7808B3AA847B812AA5C97807BB96B930D77B8765F9CF43DFB9
+E09612CCD2DFDD8DD2AB7DA335D6E39B42610EC1817D00AA4E6286458DC832FF
+F3FB9F77BE0FACC4A564D21188570F43DCB352B0D649A94DE80597BF6B7A4691
+CF8579682628150B5BD7F0C92FE63F226F5F6280FA9072E4E58620584F1398D0
+04EE1E0B448FF6231139BFA13A80432DF534BBBB808CF3943BF8DE1D05B2BD1D
+3CFA95A3C14D41C5B98345D6B3D760F73C5A3F69E80F51247B8D8E4F0446B787
+8F474EDFA1E9C3E4148A7C7191D85F5A8AF5020E0DCECAD11632AB871DE3688D
+6628BABDF620B9DD5067C80312B87A1528AD133A98A55F09296F963D83FB2430
+6935F08D034A4B682F54F66EDA82C114CF6C012A52B6F0EA299D0CFAA88C4F09
+A6504D39AF70ED4239CDCD185C02FDDEDCB319D24A356C10CB39DCD0A2921173
+AB221AD140E3024C7B3BDFD384A44293C729001D0BC45F8F94177BC540B31E99
+924468613AC75A478C1A1333C584BFE5F7EA74940E7CD501982BD4D574EDAD82
+8755C02C03C73A305564048DE0E37A28DADF10EE8295287D3B16EECB90A34552
+C43F4792F990250463A14A56D3CCF07C367A29CE243E09A72969900324EB819C
+3FF92FD11C12013E5A971F94224CE147DE380514E7F63D468985C807F46A4913
+06F39F7A7BC1072ADC4C9964FF88B6D4526F1DB4F944293B14B6673118F12D76
+65C5CC10E9578E547E1A0CFDFB7652C016C553A4420E7AA0B19C624734DD4956
+22695B43764D5DC6D8D11532608CEE44EC7C41F5D37B32885147240A0C054588
+43D77BC76BB6BD8E13E0A940E1D20C30A9AE6A732C78BD3EB6CB5E913560B844
+1B73F97ABB0EAC8BABE16E3E9C00BEA503B21C3419E6237EF318187E0AEF8CD9
+88C989944A9568AD515CD0F3D1617218EE422F47F5E4E7353F0D0325F5169291
+029FE621DD54A4AADCF2D3287939458BE62BCDD9517FB902428838DB72200D2E
+ABEAD8C717459F81C59E9160BB5B6200B25D5A62B6DE2CC75ABEEB4C6078673D
+5E54B3F3B40A018592A06BEE061CA8AC5D0F545C415563B65409F838610AB2DE
+45E9A49AAEC3F81A71175FE7004B0FA8361BF2559834723B0C9553A864A632E5
+8A23E59DC47772E83AFBC3558376565EEC66B45C39DCE2385568627BA66297E8
+403631869981BF2F044A0B9BEDC3588F4853FF87E15B71E46CCE3D6FD269ED59
+BDB25752AC43F22F7EE433853C8932BF1CEB021D52F622E40431F50A15080EEC
+1D9E17DC64BBD04262C82052A3E0BAA70DE371CCB1EE1EF065E9B92D192422C2
+B31B398319C8E1F2C573C17BF6BF6A314526178EFD2BBF2DF9DB0BCED05C2604
+09A974CBE63661EEB689BA93DEAEF61402BCF3238DC0F2599EA45126845F3846
+DC04B51DE90AD5A79D285B3A4D4C64F7A704874B1CC3226C0C0DD58DE418E1D2
+6F7AADC565DCE59C20AE49D3FE7B47F07C6495E114937C97D8AB801016B9444B
+68CD65188D9239B27EF2EC0777E5F2067CD68F7B9D11A09B172F4E2DE71AC0FD
+D446CF3196A0C4EAFAA64CBDA52936A2F8272AA33167FF71EF2C132473E4A6FA
+491C156DB06F7EC13F05DE61624A778E97032F6AF0CD8B3E8A4CCF5D8918AE06
+D5962C111F797C5705A063A4456B2B89F43B0509925D4406340C9F8D378CFEFD
+BC87A177E586B22688556D62874899AEA74C02CFBA4A6885CF4B2214E5539893
+40FC65DB61D8DBF584FD101BA9CC1C9D9633A5C9AF49958A68912F2EF550118B
+405AD3E2CB332B318A8C3632DDBFC74FEFE5B566CE85D71970D5C01ACFA81084
+E491D85A5D211471904D96833699A3469EB54EE9303F85E674FA2253CFA6A294
+8EA36D73B534FA0C8C4608E35511448CE9E99231E8633B27D7D3D14C7A5370DA
+00FC3BAF785D43D8CB08EB52BC27052E181E3E32872AF3CAD548FA5266CC0D11
+ED489A7CC862974AB0D41DEEA48F98C760F48CCD59C1C1C904E116BC182F3ED7
+DA94A1ED30310D0C2890C54F884400F065BA1B03F48633C58BCC4B01595D767F
+9084FF24925907266B4BBB3F6839CA6CE4EE60E70CF2EE98E80682819938F6CB
+771E1D1519723A1FB90C9C436B893DEC5C786BF4334F117C6DE6FFA0E10B6BEA
+EE12D60C185DB51CE492184A23C3639D95D63DB1CDFFD024A96456AF27E805ED
+AA15BBCB204C559D99AEA959ED74095B9D0C15F4B2AB4D9E20424C267EC92E7C
+16F2E8B4177D68562FDC712F10F0FAA18CB479B50630A588DAAEB682839E706C
+4B054147481223672557C37780AFE5F4A1245F24199D0B7A554794ADC3770F4D
+933667A6DEBECF7903CC0891B97867CA7DE0BE6B5C1ED0700F7FA0B38A0B2A08
+879D126129528E2867D9E31A95ABC40C7EE75093DDB7296CDF0E19D3A830F84A
+F325C48C3F8EC6765E0AFB2A5B12F7BDE06D1C8908A845BA257FDF3121EA0FC3
+AE41F762FD94D43B4E8F5045EF1D0E630A9ABA3B52B069EB57C8F33979A4EB90
+33CD16FC53FDA7E0764A258C305947DA7F6A5689DE245EB977B5E6529787AC63
+5A3151BD1047A0699FDFC883A45283900FA5634759B52769102836567E45E201
+F70A91DBA3D06D2F73D94B4E81BBCAC5940CF9B1B2A56CCE03AC8536701A1D99
+A4949A39D91E2C927FC02F6F01CCB5DB32566A2DCC0EF52304527D3A55476AB3
+40420C90B5870E2790BB75B30078ABF2727094053104D58112913B297B7F28C5
+810BE40E0AD2B13BD555690DB76E6E6607F788311AF72BABAB1C76E8D8C9BFB4
+EA1278E210D3056787C105B475A699DB37FF041727F036E6D42734973DC0B691
+5FA0E32193BDF61A8559AA700CC84343E573A2D39250554C55A1085358D62CDC
+F4A43DCF7D27803645C0522B1CC5343DB6B6BCAA2D33CEC71FF4C830684A533C
+3BE096F30AEDB78C02868024E5F66B18C0254362D798D397AD3C1563A656F6CA
+F95F7D01F267308658E17011866968F16E189CD2CF73109F52423AE96839CEC2
+F6DA06FF7305100CD409DE6DECA46E64DFCA8458C1C630DFBCC1BF5111317432
+B400D7FCA8A4439DA530715C8F697DAF5C7C2BD15F6D7D86DD1B94A6A8242850
+878049DFBE940D36B114FEE819743F064E8985685961ADC3EB3A48DB76C0533E
+52CA96D94732EC2A6CFB60000A2D277A39FC42EE3624CA97F473BAB9CDF1F087
+006974CA28470AB8B0593FC50C88EDF216C92C9D4E0B6EEC9B3C80A1697A0F81
+3C486D843C96B26B879C125EF84CB9AA940A43C18B483076C2F14803C46B5771
+69CFC93A1038C0464C33BAC52D305F50F6F1D6ADFFA8FDFDD577B1BCF9BFF429
+CE01079B68B1413F7A07DB2B6169A3AFC2562C382FEC2BE24A9151727D1773A9
+C4A9DDCB0CF4200755D92BF112AC1B4CE22ADD481210E37F5CDEEE4ECAC6263F
+CE2DBA1D90FB20778000B77B880783963C2A750F38984B0E5897586CBC51E09A
+9ADD13D9797ACC73B5E7A9BA05FB2901870227AA34AB28DFBCBBF59FBE141F0C
+CDA18E635E5768203B73CDC50EC6D0057345E54576A5BA1DCF63100A195E04E9
+F0AA0197BEA9D6E9547BE836CC1BBEB60700AAEE2B1AE2CB1D8266D4C5C7143F
+2A9990E694D3EDDCC27DA5C5F633F9B81A159872AED025F373D37255AA1569AD
+433BE5286870E46F31AF1362330DBDBB2101626E86A2228F7F36DCBF2DD79248
+B5B689A48A6227722F406C1BFFA4F9D960EE0A28E1F4FB2E7B83AE0B5B1251C2
+9F4FEC97E20F2CC68B0C726D08374C0810C5D289B7FBA2F1F83E7E343C121558
+438956294B84987C3CDBC4530E06A81589E529978E14FFEB370AA90DA1279F02
+3E850C7B4FA1BC095054C0483FDD3323F1F64A7483D91A3161028524E3FE301C
+1CAD21636BF6F09418EBBE0945C0EB09EC3B495905A11CA988D7DE1E8780B3C4
+4DB375761CD2C3FF57196572ABA7F5B3B6821EA87253CE56B1724BA75D07AE79
+8C892D73DD29FA406C5D333934A9EB139D95BA1CD09FC965416C092B8215DC93
+BF9DAFE46A25C8E396D1C8C2647B2F89BADF5F68B225F611A005E4B095085AAA
+33E69BE4F4269C395FEFDF1F490033D6D088E6F0ADCED85F44DCEFF2C838FE4E
+5E640773BE820E2EB4DCB1D97CC467034CBF61C252856C6CDB022E5BD2F5C40E
+7CF906EAF1D18CEC695FFC2C27E88092121DA338C82439E464F0C2CFA88E1F31
+48C9BFFF34ACDA066D78B3008E8BBBE6622D64E942B91550EDDBE819971A9344
+748671989A32F5A91A2310C194FE7872DFF9BDD3A73D07EB1757E191DA795F78
+D0847A9F51DEE2AFFC47FD2BE4CDD0C90201759158C9D999F663AE87599EFB20
+383A8FCBEEFD45F2280FC158E0C009407B83485E0E6E55F9E696E27540F929AC
+5195569BB56F566008ED090229227219C5757959286F8DC8563A3879A13CDC2E
+87AB2BBDD786E9B36541C3D67A4F8E9DDCCD396586B31B60936A1289602080C6
+C4880C17C818057D85C1FFB80C716AEDA261E1A1E3F497511988EC4A14DA7CAB
+3169ABB9AF8D66BF602B0F9A4915A612318059A25307BF82C99684224E8065A4
+26950C172FF5DE9D46ED7E5164CFDFF09276126FC49672D5211AD40F696FAE46
+E809B47DF30D5E7E243892EA9221BEB2D81AEDF912C2F484F5BD0CE5FF066861
+AE87933BDB2F0CB0BFB81DAD972F448A7CEE39BC365FEF23C786090CC48C636F
+B74AFB1707C582D08529AE5720FECBBEBD99855357E4FA2489F0D3A70C4C42EE
+71DF9189743C289E57FF6F15FC91217BE20F4499B9D5A313EA06235AA9F52EE2
+7276BA0FE227EC282DAFCDC483884FE34CD3A4F4C4ABA8CCE9D9218AC886D639
+2070315562E00EB871607656FB4728C1DF2A73149703FAB11A2CB61D6E5AD4F0
+BF9467C27BF9F200C34447A99D46084F4CEB1CFECFB4733F672B59586197BAC1
+1626B918A7EC9DC9B04CB2E9A5EAE9ED809E8FC676D8E5CFC088D2E77F6452AB
+B7E5367863AAA9D9B41329A80A0DDA03BB197F75665D0F0863F06EFFB076F59F
+47EEC8A386A8D4C93555EB62DCB74E62AD50345C57703BE882DE9850A19308E2
+52D317CB744BB1A5525859AF9A6F9C05E8ADC13078BD80D840A90DB35EBE334E
+55D26435012C2B8C1EC31CD95BDB8F2FB20A780189BD6AAEA39D0F2725E0DBA7
+6FB9C322F19B969ED160FF12BDF2DFA023B3295A45282CA4518DAB29E3BBA802
+50FE8CE9B948E42CFC5C3FB4DC344BB5899F6D1412E0601B4C1CFE9492DDE165
+23B7B4F99D631127180B0F0EC4778CC6BCB53B8EF74F1F913C6C067C0B37F17C
+7896DA29C0CB6F60B8023E06FC8D1D252E766BCCCCC370B580E5A90E02851A17
+BEA856DEBDADCA109B182D7D9619E66931A2D670D7FE3FDCCB0FED213B22EE67
+B5EBB735E0EA638714135FC58F95A3ED25E834A9106729AAD4927FF542F3889E
+76200E99CA2126EE0C45ACEE17F6EFA2E6DE1C9616070D9E0901152B8CF98644
+82170F0DE48F9909C80BDE219DB1696BB05617D84ACC84ECA75DB9712AF405BB
+034B6FB511F7550B16C8455B087B41582A708D663CAD99822241989776C38A6D
+8A87341D6E2BD0DB981BE9D4A9CA883063167860834498525A019B8E648A1795
+6BB0BC91515B818C4291D8CE201E292B8BCEB0749E83AF473906C4FE8DF7495E
+45883FF909F1B85E6AF620C0822E53C363CFA41A5F9C1AF8AA6E393840CC3F2D
+1D7E429D6DF71E63A70D9E1376441C51650750C86C99AAD490823588469E40FD
+34B07CC32AE40AF13F286DADBB6A7FF78855118568EF0D91D9B5B90987C22388
+852254FAC0A1EE78448384431DB390D39570A3BC9009694D8A852C56094EC483
+06F4F4C251B65A7A60BC582582423978BF76DCBFCB3951E67292B3DF9FB309D6
+C90EFF0ABB819C53E1E5EFA7A8795C771B75DB24F9F7BA623DACCF2137E0664C
+AB03436408E5F2400D8B98BA19A60D69F6B13236A698794AEF3B65BF69925CF6
+47F1A3A745549A2C8D28ACFC7D4C5D83A0E9169DF0D14A6572684C9FB9958473
+948F9F9638D66043BB9BB58B147EE32CDB47CFF5D130537A4DE9DAFE149A9EF8
+E188577B04A416287025600533958DEB7AF6CC5A89FD1A26AC0B854EBEA952A5
+9E7EF99A5C508EACF927D750E3EB1AA5C1C0D392CD5CBB9FA309568043B47E14
+7BA621CAB63A5A8BC8A2E3E6E5C4BB1E50F68F3019A122FD2A22EDA0A68A95C7
+2649DF51065B38AAC3EE9F61649C8934EDCA599ACCE77977F371C6DC57278397
+6A8118E92F98400E8C3E448438FC8B22C286251AEB727839E71A9992AC4C4F6A
+33C3DF0123BCE35DB7D47DCC78ADFC4ECDAE8AFE85160B1BE97DE69041851012
+48F33203CCDB29B15E613B30D1615EE65B68DBF1015CA2F48D09548CAF6E89AA
+100BA7AA80F45D74D03D6DD65FDAEB9B88B34EF5833319547F64E432B5BF0D9F
+222B0627D7B973390DA4B038C5D18E42D5D90E76B153F590BC64E6E0002BBD6D
+C0434DA8CC033FFC0F40FF8A66EA43E65E426BE3F5E7B251C47ED5067B98F53C
+DB4F56693E3B7A1D142569537EAF8F0413A7314619837F305FFD23BDC594E308
+BFB71BE7FEEC4992363A05ECD727D0C3BAC8ED8A6990F9B695AC5D0C487B1A43
+566BFE77BEE6966E12A5C21079CBB051A30441CC2097EFFB9F6DB381ACE1FEEF
+D74F049F9CA961484B71158A83BB6F43EB63AEAAAE2BAFF743E15300F7403E9B
+A9C2556D3EEA00AB887FD4171752E7821A4DB87802BD2F69B29C3381A62D6497
+8AA4483B8FBAD445459B50882C8DAE95D3EC6D0A6CE90291EEC422E5F6420644
+CBF60337907291152529AC6352E873BB3F531F7E3D29E1F438184A98D3C04B56
+67BFF2D136A5D23A47D8E424AAD4F3BE1ECE9C0533F43D579FCB0A4A6968F208
+CA1334BB9A67C3B87730A3FF0665706B12265FE32CDBD6355EF31DF6A789CF9B
+3C3ECEB2082ED684B948E6C414D0EF814EE209A19D54AD2FF76AA5A5FBD2BD0B
+E9208FF57A7B6063BF7406CCB85964255F7346DC712638990D589BCC55F352AD
+CB01BC985BA91ADA5B15EA2AEAF9AE457EB6FE818C235627360BC68DDDBCAD25
+38AE29C26C57168E97078A1A5E7F5134382012F62C9FBCCA09196B2BA72127F2
+7C069F3C268C70D3C023E1FD81849C040CDBF2E633455A1B80F93C9EE346B1D3
+EB73493AAF2230F6A552A82974955DB2B782422DA9DFB89ED767E93F255D3047
+8D4A50A55A2192ED78FAD9A335570A96D3786DF9963ACE1E4D09BED0CC5AF274
+6C016C7CFAFF06F9E12E4BD680C7C1B5FCD77F10057F60D4076FCF0E94802B90
+DD6DCAADB28A7AED1FBF5EFC5C6FD871391DCA2E2BA18934EC875B8D0A0810F4
+13ECF50535B8C337C93C36CE99B1EFECAD58E2C9BDAA01367AFBC3893A221D07
+99416A0AFD09A32444755428F44E49BC9B7354FA6489B257D34D4ABCB2DBA421
+AD38127285D4DE1D6829D383DEA8D2BCFCB8275CBBE4A78705E9D637DA843147
+5764136BC2B02221F8A53BAE2D6B9763494C37C0F488FAE97BBAF54597116CF8
+1FF53139F86747F2294086E81DC5B51F935E3DD9EC521AB9D3FDA5374D8C2639
+AA02FABD7F6D5741CE272BB1980E1E37F47DF20BF3E9B7C8941F9E76363BA1EA
+0C768F861447F0A35664B8EB8F8501C9F8ED4BB528FFD63A6198F1DFBB4591D5
+47C9CB5C211B78F7B53B29B2D695C2B61EE2285ABAA01B65D199D60186233C05
+CDD4597B2FDD563A55E3A9244B761221B54FC28EF52DAB37C6CC7EF5541D2082
+5DD5C29CE5E0910D81CDF2DC0AE468ED0F7215111E2999D292CDCB55D56855C3
+6B3775E38AC2A209A47B9376D8C72D5161FDB6F675A5AA1E74A1FB2D8F29F7E2
+CD43D52704CFADCBD0D44A668CF6CA3B0BD534D6DDE7A9FB36CBAE39233FE426
+779CAE9866986F07A938357A3F48DEDD0CB886FA4B8C5E013B30975AF4BB18DA
+427124D1EC1BBB5BD763500FF1FF7B68F4DAE2C77A20AD729A38CAAD44F23159
+19DD7E060D7513B11EF20E86C1B169494436D564C0BD58A4041010E433D11814
+FBE3ADEDB43FB3C80BBBDF68748BFCBA20B2C17109AE269F7E0A44F5D240E451
+1E11F6C12FA09A6482FD323CC9F3656D5256D41137F257C9EFC46C387199B94B
+6A864E46B2F43F29607140C1D8ECE061B0AC1087A1504A5BB67C786678A6B5AC
+AD137C20642C32A38BDEAC25F0645A258ADF62E9D337C614E5714DA83BFB0B8E
+6882F8ADC3456C2FEC17A6BA1F45F8FFCA162661612E9B1915A439CDFF0B36BD
+54D067B0ADDDDBEF52661C1F8533633A15CCEB68B16A646B1D1238023ECD812E
+A12CEA0D4AE201BB93C0AF4C53DDFCB20FE47203EC8B3DE94BB710258C6E9A49
+4CAAC652CB25E5332DFA345C8347B4D1F9BB5133BFBC8AFE58642B146B73B321
+25B8F98E35D4BCBF791A8619826A700790CC185531021BF05506C79367B8495A
+DF83A2F462647C7D4313ADA8A76BAB3ECB2637B867A1D16EDF3BB714C5A0CB88
+7262BA3CEA147356A61683C5F959A81219ED3BA182608B80B6AF18E2B30D0460
+1E3F2CBA5E9199632989A762FB7382D69D9D4177ED3AC8FF139FF5465F670CC2
+C6EF3E432D27ABCA9B20CDE5660016BE3350DBB533F4973BC628CD412FD10F12
+E25D757DB4F35168AEE6B4BF8EF930F12BF10C6E6BCC1A398CA789401014A25A
+86B73E3BF94FA96DD63B3B1DFBE76D46E75672F34CC114B9FF5DF0E2B1247696
+8BC097CBA64B14F03E0831F7AE7E04A58C16D0EBEAC40F12E359510129541839
+1E411638CADF055B07AB94B8393090610D8A6599B0F76382087D088FBC437683
+233AE86E5DADF0E84BB2FC38F8C6F9D2977EFB4C080A820653FAD14E8E47D1E5
+2952F5247DA7316869E88FF0757E5A7B644997CA16C3E4DF003B60CF6E9BDBD4
+18185C8D85B2565B52BA20FE95E49085480BA41DD90689B6C72DB739E238DE8C
+D862EF615E23E27C3047F822A5C82E7B650FBEA55885FE1A5D9D573D4BA8B5B2
+9BFEF2162A42E20CC07035E18AE5DA0AA63D0BED9F6EB927B1B33FFC05BB756D
+292A909250800FB6C66ED68F13E5313F1F70D0F14165FDEF1CEAAF7C5CC68A3E
+4337458D0D74CF352B4EC807F4AFA68EFAB60A3BCAFB1E024A9B433C67D90105
+3C40B92287818D710128ADA27300E183B2F0B348FAEC15E8124978CC52CAF205
+31569DD4460CAFE8A78D6AC2CBEB36B84BC749AA2FB62A5BD655798ED0A84615
+22A31F27236373E391E9C79F9DA36168B00E2D75FA775C8A9A3A41642FAA56C2
+CF6FF5990A942053DB921A271DF3576F79D6699841FBED54A437FBC93E0E9CBA
+C22765BC7CAC068A49B9569747A3F98B2112DE5557ADE8266DF49F24574AD37A
+29224D4E70B69FD185D526A81482D97F8588CB10818F4CEA4D88C39F8C7EB7D3
+BEF63349746FB400D94E4E3DFA0786D902B96F39D9E0D2311EA9EFBD839ABE7D
+0F1D01EB77DDE08DFB6E5AC7B2A53B538A670A40CCAD1C247DF0BFE827AAD232
+8BAA4CF9E2C91646EB4E6A1F01745AE5148275DB78CE9476EE622D8700E546B0
+4D30BF9768E72AB5D52652BD8911275110127A8F927A74909A6D22216AE9437A
+AD25B118B69C4420529AA5FE412CA82AFEC9944270C53E0F84CBD2AD2C2EFA2D
+459BA223D5DC0DF74FDC671F3E37AFB03411279D59DD0A1D930906E5877E3B05
+4E5FF2C27F9C18BD338D7E6DB3B042B0BADDF17602900146EB8FF940D59BBAE7
+A88AD58F5506F7A758E2BF2A41A720F604F99D4E08F956A0E914A6BBBE33C44D
+A8A9C4008F4A735C68434813D88D25882ACE05809C51312B5DE2483EAE201484
+4206F385F9B67D1365B2CB4E001F4573509BCD9A88E446AA250F3A7C52E02D7B
+A9CF5054356ACF097D690942F2363F461124CFA402298DFF944529FD5BB9A64D
+316C4A8DC15A2B37A25CC0374451EA927F5FBAD73D76A45C0A3DCD179E002A03
+1CA82297EB8CA91C504792381CD13AEB66C86E0E67EC9D84B74DEB08625C5E17
+AF73EF7D9CAE28E3B913019AD2ADE65B44E93EA5BDCD0F0572CE4335E01D70FD
+26019CE0F6A89B83119165EB1173E53B55F95C1851D72398B70A894E48A8555F
+DA328EA3850DD4BC15111658421F35F49EF9BF4C079DD32FBBE8D69A02EEEECB
+BCE1C2597D6AE73E5C6246B260B7FB172AE993969F4C1C17E42B41863E83ED11
+C4333885C5457E14FB490A3E8801E04F2EB87046B92502710E2B8AC63C923533
+E679BAD014A66646692517FCA73BCAA77AE36DFF05C7BB1BE455ECBD8409A538
+2B2F0DDACC470FD1B69A1BB8067E03C1AC57B2BE2A7831985A218A90C7F3EED9
+986E78DF30BA525E71D8EA65C14EFFD4461ABE65F488E7CE4F5E5070456010A5
+62D40DC3354A1A3B5C4A5896E1152C85446A624B467D5AC2AB6F60DCFA5E3E97
+FC3C879DDEB99535E5CCC4F76E5B2066778EBBB8C37775C469ED9A075BF29C31
+3B64C777A00158935F5DAA8357D89D27ADDCE07649D051266D970B0657FF5172
+A22077B4775B728E70148ECB44EC346B744D56A3CE09959D1F37450837BB1E1A
+1E70648A513BBE328E1E80E293F770C365E5CCE022314F9F2A2BFF929A1888D0
+12A1EAE18D353A53FBC40A9B9E47B62CEEEFD5FE463B4714F70349EA55BF1DEE
+37E80DFD6A0A8A5C5BCC52EA5C3851853EC659CE5B7A323E11C9687ED5198EB8
+94B9CEC67DA77D8778E3AB4F1D7A8D9B9FCCA4F50C131FEDDCE86D756CFAAC13
+D6283CBF49A5C320A1DB30DAB68EA649F067BB16F27D608C78884AFE47819F76
+D8DA3537F2B67EEA4F11F17511C2CE035D0BA2F75770F302D14D8CFDF7E01E4A
+F98369E70C77303FC63DDD5667594FAC20AE98EA08A83881C781547DCE51E5ED
+4B63E3081101B91E84031F77638B0DF5DE996C890CA7F201DFB1C7E4DBB21DFF
+8B8D06C348ED33D72843BCB7F268246ACBA25DC6F14ADC348B1150E3328A5E4F
+F6601D39CBE490CD874FDF35DEF7E0E076ED0E9891A2A11DA60D6C441A9F2196
+5DA3CC103FEBDE08126E8325A6B90D9010F896E600113C1050E2AAF219F88E27
+FB02224514542968E5DC0C449003B4E3B3B5353EFB32F03C6331C1AB36D15A43
+FE760730B5A07F57FCA4F01D86B4110F3F455898614561C4F2D041C70BEDF4C2
+312C43890B5149D242E678E8F1833F64448A2D3E75ACDA720057C499CBECF719
+C5EC8511D53C8888B5BAB71BE126ACC977D64FF41771605102ED966FD5B91BFD
+FFECC63F20402078D5D6B3E0B4F91873341E3F8C4A33E197BF09AACF2BC99526
+F691199FF8FCC50F4899D7C22D825899CC064259DAED6EE68A3C31899FA0915A
+82193C5C8E44E09048A93835234840834D168E75362442607B5A17CB34774382
+A9851B3262D39308A61C5216661A26389B725A6C2FBBF563DC6BAA81926F0987
+1618AC3B1E561952473B430B1A110B9D9A83E12B92B3589F706FF7285012E43E
+3C01E9E36363BD8F6A5EB8EDDD5A5A67144C22C75995DBCB3F39CAB0B30BF962
+D7BDA086DEE02CB77A4EAE7BC26C23F5D23D463FF6DD2107A660516563C30D35
+0A62D5FEBE9C2EBA62DB1A09AAF09F2E35801F128C98EB6AC93E5271E67EB7B1
+DDC9E99F62DE73A6E2428375A510B636ED211620A0FADEAFCFCC4E1971BF9F02
+B4A48A019745C6DB9B0B3F4420D5135530BD123CB98A26CFCA86BA45A4E0F2E7
+E8730D7E067AD72F918A66379EEEB9B9D884699DB01E6D69F639E2D3CC61562A
+9112C7BAC3CFF995AF7A8EFF61914663BAB0C9AF2931F4B913D05514D5871262
+FCF8484A71442747D8F5D667AC3C19666F96CEEA1D14C9FDF6DBDA180CF31BC5
+9A04E2633C85FA8B1D757BFCF3B6475147FC14ECC54BC519DC3E9474C3A74442
+0EEFCFC66F0B834C85160A17709A12EE793D484EEC603517279D4E49A3611B28
+DAE3CE929283CAE53AD8CF571BEA3ECC1234E37E89F55EFA3E9AB4670808E4EC
+29C0FB7290FCF0C96F808A0F49F667C3EF1069614C0BD45A3FDD404C9C513701
+21C4FFDCFC45088053DC1771BF8A5B0B825DB98303A7D0C0F07E712EEF5C9751
+3000F0C64A404ABFB969FE598429EE40782CF738A08F43A1805ACCB2C0DE2079
+2BC014FBF875519902B80B31BD0BCBEA7953C780685FFFEFA7299E33F96ACEBD
+0D28D36AFC582269625E2E34648A02499F0D61D7B8525C6438977BA5979ED75F
+5F6DD40E65FD6D28AE573EFD461E977FE5BB6F28B901D2A66A40D9CDBE19428D
+CE545E765D46C873E86BDB59D1768D51896D09005491B684098069E29D8CA4BB
+1F7FF6566D825389B2E9A6D2073ACE8899E2D7D6303BFBD144B2096C84D8B34D
+D5C9270A16F0694874E9232E0504656506A06299F4DA45BAF4BE7B0F1C26AB42
+D172A0DA419E79A96E11008541FA73A64BC0A332BF24EADAD501850F17E2E949
+8C5FA7A23BF856126D2AA0D616DCB7F122840C5E7EB42457FC398D1C6F55237C
+F3BF28BDF6A9463E25A2C22B23AB021DF86E3A9395EE616A7733E7C74C875FC8
+7BA3F77CB4E6B4CB920DE053CA8BE266F2CAD6AB439694647DCF36E8752D13CD
+586F3568B86BF7F2DF5F0E99349C2C24B7E78F8F3E848943BFC86D48F3D24AD9
+5460679D7D5F37EC27EA7CDDBACD65DAE002E118A8A1A9A63A2BD619475D7223
+317D323770B0DBAE58CE45DD7C7DFF030112BADC3896BC0DA208E8177B098AAF
+C0218D0C57DDA38B192F9E0FC0866F63BA5EFC8701327F22A9A4237044917739
+96933AAE5ACD25B0A8AC048A4DA385858E34F18828EBCE4F159341D4E45A9E67
+A00144173A36C2F441F72CB427F2B53EF381E6B6CFB8FF04609E800A7CC84B3C
+F5DC57E2E400A3DEF0F5A4772F4FD459FEA789D2CBD289EA5441B965896A665E
+9DA2B3118C2CF802A04E60A4FB54303D624C9E98102FCE87AA49BCE91BB59023
+D709FE6A554088C4068D3B0BA84ACB5BE078F5777C044C591835228241690C76
+576B8B0C773876EFB2C6A12CAD38DEB8789AF79911C8F8DDD660FFAF6F79158E
+E627F0ACB8423D6610DEE38E0E9F1292BE1714E06A43D39CB6AEDB4743C90BC9
+BD691D80B0B9C953817C50D78BDE1B52D1C78F212C5EB07F100343938C08D3DB
+36A5BFC3EF9DD4259B0200FCBF1C7F1F86911131D9316FD5EAF0FFAC9752502E
+09B2AD8928DF0EEFEA16EBB84A340E8ADFDFC5F85C0F4C838266BB05CA876B07
+6FCAB815C270FF17E4FA45C67CED4BBD94461E3C2F594839BE3D2EF0599DFD27
+D63B2A87FC2A3B5AE461B25AB52C65ADE029DD59BFB4A17E5BFC6FD314CF90F9
+EB2CBC52D0F84F50F6848000BCE4FCAF84CD0C96DF689746D3C09CCBEC8EE818
+F058D46A0174D88DB4CF760CC1C1DDB802B92978186811785E20C9E011BC0A74
+BCD9E17EFC58EEDDCCB81C6AA7734115F5B00FA7DE9BD332516A27167603FC27
+D72774C5421D84B99361280B0727AB097229A2045F41578DE0C62FCDB1C61A58
+447DB19757D5AF7752C4A3F7CAE71CCE0618421C6C1E21790103F6E0D20FA080
+7B15DEE510405FBD83205F73448EE6C3F9E229FF085FFBB66C10E51B64E0D3B3
+25C1134A7DF4D4A274CCCC57F02ACFDEF6096A9601E577D70D40106CF13E9025
+CF88D6E3C9F00DAD8BE4E66C1AF230913FA2FBBECC571F27B22CCE393C25BC07
+F5873A37B2777C0333EE3098F79688C78F88CAE13B9E9B7C2AAD608817400D63
+D7343E985390B52ACC8194EAC766981F9531DE7BDD56B379C672CD4DCD1244C4
+16C265E087EA35F538857EDC69FBF6D62A60B503C129D7C6186EAA0C07B1179B
+43BFEE2DDF84D3531A224C07B698D7634D50B9135693A90E623CD0E00A799FE1
+1949F6C31780F0E49AD00852BCBD190A3F3387E62EF428DE759280CA9BDBA0B1
+23C1B0459FD17BB35CF9DF737A687762D91A8387114FFFB5C75F5D6F0F2779C5
+24C6EDA2EDB774FFD979FD52CF3EDE75E907AA863B01290A83B9B88EF511BCA5
+A0000EC9B81DAA793478187DC18C4B72B6A922582B571FDFA4E0F4E02468883D
+F8DEF61487318AC52DF3A72DE7EE5E60EC2F805E45FB661B2BC0109FEB690740
+464A8AD4DF56E45BBD4467AD0330D43F308F5B8D1FD00C385F24D3163352CD85
+4787E8612CD6AEA98424E1F09B5554654C7A7698A0B5640591E7834DD651B9B2
+80AD3E497875917083A30F5C15045331795ADEA67BDF585F437D663A2DE4377B
+6050CDD95AB0B088F1C1CEE733E419581331150CEE1B942ECDD426C9B4AE31CB
+25D2D53D7CFD4300F669388C66D21E78CBBA1684E8E6B9DCFEF0FAC7103DA76C
+7C8F88A54E49ED70E1B7C73B8EB59A908460EA6E0F842BE88B4A7D6520BDC691
+FCD37A3534E13D961AFFA219B33865F52F83BA44CB81D6F074963256F3CBC81B
+A5BF749DEA55939D6DC80E24E7473952DCC158C5E467F5B293F353DC25D6CC41
+7B6130D6CEB0514F290EDF19F52995EF4AA17E65E714540F175D83BF0DAEB5E1
+9110ED33DC70668B37F7DB999C8C53E2D6B8DA2A9E2A64D39E1289587ABEFAE0
+A997D42E957015EFD985011FC0088D30BFA8008872CE52602BF3D9F6CBA64FFE
+BABBCADC0DCE1EAC6ACDBBE7D8BD466336477E79865C37286D44C965B368ADAF
+72114E8A5B33C28B7FF84C52B1360FB97D085151B754DD07DDDD1B82F3A5E910
+C06DE4122E32D9779F41FB831357DA9C3016438DF7428F23F64BF57EF5A61906
+85CD9828BC7D0607036F5FDA7B415DD354CBA1F6FD3AB98C6FACB576C73BC6FB
+638A46965B4392823A9367E1DB315F1A1037FD33847869B24EA7AF2FBC4592F2
+D94B0A0867F96125FDE0B9392412D212413C4667F30E0D1E9987AA551EFC0889
+7F476ED15C41DC65D56745466B0EBA8C947E09B167B238A9BA36D4DC8070AE8F
+1E681DFD70486D1732AAD9E55FD116CF5537E53FEBCAC7555416A0B5033E9443
+667402219B4123AB35784052CE4C6C85E9F51F4938D8274DFFD4ADCAF7F048E8
+07BBCD1BC7713AA58D99E6570AB5B71F44A1B4DC97D16478058986CDCD372004
+AD45950956F4935D5C8B092B32C2BE7B9433B2AC129A798B65084B2AE092C9CB
+39290D7D6A602EAB52E04B7A2B88B0BA75C4654906E6A495CDB61E0807F69BF2
+96E0B61CC0E8404D7B774EE00E797F5F591762F5285CE90FCD7EF4D0ED4C1796
+C1A683C11E307C3456D9C19B49EF3567E3825B9B83094A1325F088996DC971D0
+7D77CB13A7A96C2A043690459E9EBBF623F23EAE7C7087F5890F19A5E9C3AF44
+99F082473CBC23A8EC2034AD5F361F0E137DE05C144039A581F7E3D74C537A3D
+228AD813C9616B2C02CEF13A0D7EB235BC1E059ABC4AC5AD9DE4D7C0E941BFB1
+6F6D58200580400EFE7430DB2E93008A92BEE329A5A264B0C76A1C7C870BCEE9
+3570EF9F59DA3F2F37664E61B7EFDAE8730B7908281D8219ECADB67C5405B6F7
+17417E715137C7569DCC5D5166ADC2A351BF3B1F9104C9248ED20D210C7CF4EB
+281784ECCACCF971C630B509838E16CB89FF9F8C3C90B1F4D12861EE415F6188
+1F1508B06D3E9B68E9C45C3B7202F4370C242DE4435BEF0DE3631E0FEA8C9A15
+346F6CA9B9976A8A3518CAB2DE9E1385CB08E5319F8C5184AAD19C7F9D69B6A8
+0FFA8DE808CE430B2E9342AB687AEAA9E9A7AA6684A0887D91788D75CFB06D76
+5A43EF36DF74F0E9F5D0FF84A789EA614EC6C560B31DC1EE4B4D6085AEC48062
+D09414865F8646D47B6433FCF0349FBFD130C1777266416BD63872EF2CED36E1
+861CD42E80D690ED61A29F3E9A8E8CDDB123768199E3832CA0F2E5305927EB4F
+CD47574E1ED4981EC0ABE1AA31203A93FB8689B5E5A864409F556EF1138AC7B4
+30553ED32D95EE7DBE9AB0E5BEBA484931001ECE44963FB046A490039BE29027
+148A6357683766619E80B2C7BE6D313D7B141D0B1181A243E238EE1ED778C97B
+0A8871FD396955E6F271B3C26DA7FDB474109310EE4EFBEB92B1D3BA899D468F
+DFDF1D414145728A26A7E6A8261642BC76E406F26292E51C40BB1B40B9185AD9
+CD24DB16B68A4AA8E2E7AD31CE8681CA0231ECCEE181B876B30C2C73755E448A
+11A3465395C4E7DD29E3E30EAC990582976D6EE05263ACD58E00D530758EED28
+BD1287F11759F405776015142B55D51C88E70138177F7BAA9F7BC1F269322B4B
+6D31341424F26EA25654E2D8B5449D0ECDF77D77152CEE7BEFCDBCD0AA43D80D
+CF8FF0793AC1A50F8DB0345AEBE8DFFBBB936F596F84A0EF6E2E1483C2A58155
+0242AD7129BCD67DBCCDDDF60F784DFE8DFB4132C1F54BB6F48A406F1F8A16BD
+B3B936C588CAFBC5A06D80E8E16EF6122C23C0289FB482370F01F8768F19EC5C
+EDA6546FBF0FAC9127F9FCBA66E3B52509D2730A9E0B9C074C72CE962889B79B
+05474472F4859FC241DA640CD12C83AC1BAEF1CDC435ECAE7B834296BBDF6CFB
+E8710CB9C27029CA3E6ED6092B1429F9792697E4D9BD80C71C85AAE322F831FE
+99DD017EB73FCBDCBBAB15F0CC5C673090484E51CCF9DEC2D0F07839FB7631EB
+F3F271BEA18B57CF1CDF9B3CC2A517E420A84718F0249FF1105E9233513B963C
+9F5002A21F3436B0942308BE4AAF0E6BD8F763A48430E112F16769C96625DBA3
+13A3889FB75143D316C64A68707B90202187BA506B5B45986AFE19432CB6F29C
+6331314A7CE3FB991D3BA3A9E25EF2D555EAF557CAEC99F3EA200BC79A644DCE
+68F96E2C002524D69BB56AA77F3EB60435D79057FF0DED6661CA211A0AE0718D
+B5B7FB3A08CF8F6DB1DFDC2F7C13723ECA78713295BDAEBF3BD4F12E38544A18
+55BE61F40D539F19703F7280ECCC31517EDCBC1FB8E65F661CA142FD79377081
+7D755F39C7F4348CEEB9B7056BE75DC247ED0CBC8320321663766F46652F5EE1
+C50C30A3AE80CDB1D520C9941D96BE435CE6D9F0078C7719A3F0E4A177613783
+07E54C9C5E34169E6E376723B02BB48F3565460143D1B9C9931627111470DE6B
+D578212569DCF84D6E02D08E5E8A81F475C5CA8FB472676C6FF792A21523700F
+27485FAE4F9BF018D8884169174AF1934FF7BAD1198D71AB1FF8D7986EE000FD
+BD22C0D611B04F2D3E44C9165600D2C9B0839DBEBA9137C070CA4E568068B215
+5015210D9E2FBD6368816EEB98507E73DA3A889289D8CD2601C39FA996EDA5AB
+4AA5529A0176C6180AC5BA06C64F0E73137293092F03A7F6F958B74FA6C38D9A
+74ED94428378988E8E0B1D4954B348AA265A7F4C4D50BA28E1D59B7853AB595A
+ECFC6227D243381C9A695F3ECD11D770AAE09C8E440DD2816BF0EA2C8694E1ED
+AFD7E32A43B9E63C3CF405B2D5AE72A420B3CF08D82E378642FDF7CF4A62D241
+CA87471D3A6D2C6FB06B546A7EB3340D90F5C4D86AC52F65A02424B40F021E16
+794771A64779EBFD63AD9D3BF3DB0C25912EB2DCD01F4230C7D4D5ACB3E6D05F
+7D31C968DC6449AC804D988695C75AE6209563215077EB77136E2CE469ED2447
+58181C23198750ACC4A585E0A37F69C7C9A318576CB8211B2A4C1FB521E63648
+780A024540883156A70B71CCCE72F241B193D0B68D576729B2210884643D745F
+998EDAD1AF4F5FD8FC9F44344F43CEE3FBA91BEAD4B5B8E3A2AD95B974A33C0D
+2D1EBB7B2ECE4F92AE1FEE39D625CDCA67D44EA23439D67360BB468CD95F8162
+052ABA9BB3BB0B76D65994660282A5C9FD6A4C57CA9DF3F4F265CD9F684739A1
+E5297277DEB969B5E73CB1568C0BD59DCAD4AA28804CFCE562B11B8F8D00A2D1
+348E504DEC86F8754219CE7912D7F5129EC60BB8EBFC8584E0EC0418B4A9ECC0
+50BD1A86E0568B53B5AD75C252257904F5B0CF310139EDEC4DEB7A56F85896D8
+C6F210CAB2FF8265F326AC04A0A1DE3D595636E7993AED88C2C54CA0BF9F7938
+CAB97FA5423218B6608E6ADB4A0570F738F48BBC20D1696B5CB34E52C0373DD2
+1199E82706BD885F2AE9E9CB1F5105D13B235BB50BFB85FFB9E752549340A430
+4769449BC7765B17DF7945DE8B4EE47BBC1783E73B891FC2492AEDD05895168B
+970B19E062C826AF4B063F5E28CE886367A2B490B064F799D99ACC1605DB4A08
+0BEF07C356254F729C46AB7977DD3742BFB71B99361C48BD3B9B798A69C0B789
+8E2F96B1381B9733B67A5FABCF1FFD9AE7FD00E1F717E1C1E7DF3286F12F3605
+089BFD127F792994094B4EC9FFD41EDA106F9FAA9842C2A1FBE967E5DDEE32A0
+BF32D891C0D525259FA0DB2181283017C76F5B34FCB04953797FD4236EAE7128
+02989B7F5CA4641EF20B6F68ACD6ADC0327A03D7A5B0AAC2481C5FFC70F8C83F
+E6600582B4A596C162119502237CF6015B33DD6783B424C308EC01059D778653
+CEA5BD29638B06903DE866D60CE510BCA38A02F0E910B71A90634083AE1D3371
+22EC64CE4DD5D001CEED675FCDF40421080E1F83A92B276C4AAF267E9E8DBBA3
+481FDC471088016A0C5747CF5B2B55ABC5AC38118B03BAD16C2995166E12C910
+283BB56FAFBA21CC46BB3207E410AC14A936B24C8D0DEC467BEA1D559A5E579E
+E4906E8D7AD43C44B4A8F673EC252AD9877239997CA344CB36C539FBA9942E35
+622C67AD288E0BF4B22B6BA6AB747EF919C3A245BC0AE2082CC96F1C0FEB3175
+EB79983043986ABD92E4B702D00D9BEAD4F785B0FFEA2965F71A82CDD9001657
+510B20FB03E6116ABF4C3D322A111530018D2417B09EFB6669ED58CFD5D2448A
+2383E13ECA71CFDA3A7AC150EC500E7571423D6C2D067B7E19F9929FA9B64526
+F1D20FC6BFF7D9524264849F34C81BDCB8ECCE1852AAEA520D6540042F1CBFF7
+BBE905FBA5FEE93C7CD5912BE25E4F4D4012BEB55C44EBD1CDC3AD8E339C66BB
+4DE936CC3A4BF13C7C266D42B3FCAF1D88E3C1628FB24E2939AB8D691AE5DD20
+4ACB9894D4ABD9F2CE371BBC2E3D05C45BDE3A0AFE6A7580EEE11FA19F13A228
+9C46B280B54B8A538C79E9F657A10F4DE1070312BE34EDB8BE360823ADE5F9FF
+80FFBBACA3B3E61A85E6800E846A89D623C839BA0B4FC610493976C63EA23E0A
+0ECAA2D8FD9CEE522BD95B0A35331EB5F7F8C66E66DEDCB5675423EAA8E7EB1A
+E51400163ACEDEC20C06ABCF5D749C6D2AAD23B1AB9CC6DB509297B8235AB12E
+
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont 
+%%BeginFont: CMSLTT10
+%!PS-AdobeFont-1.0: CMSLTT10 003.002
+%%Title: CMSLTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSLTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000800 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSLTT10 def
+/FontBBox {-20 -233 617 696 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSLTT10.) readonly def
+/FullName (CMSLTT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -9.46 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 37 /percent put
+dup 39 /quoteright put
+dup 42 /asterisk put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 55 /seven put
+dup 61 /equal put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 83 /S put
+dup 85 /U put
+dup 86 /V put
+dup 89 /Y put
+dup 95 /underscore put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE33C33655F6FF751F340A8D6C01E3
 2E02C24E186BA91B34A1F538959D4450CB683EAE5B034D030186901B458D3777
 6B3942BD2E07121385120248891AEC2EB33C4E3A0CF00828D0F130C31A918C18
 979FE94379C648EF21ABF659253E43CD1253866F157F1DF85AE7E8714F061B1E
@@ -2554,248 +3390,271 @@ AC6F37B5FE670209BF6B22B6963985CFDF36B819B07306C44D6E21A31A8040DE
 DAFCC53459F1841A5CE8CE9602929AE901C72EA78A05D65FDD96722D089DEC3F
 24E178D7169ABA83504664F9F60576CF134E61CB40DD842E6AA9E935CA8F8B19
 2E73700CF9A9634F56E4B6A37CF10B64D7550BD110D16AE2830909986EEA2376
-E04709D49BB99F22944E2DA92CB6F7E032B80744B51E979A10C3F65F8498FD5A
-FC79B7F8EA75221B8E27C354AFAB785E6D3FF93C7C5DB8F0167597A4E9FD85E1
-6DE3D8BB734C95A200488CAF72C34A1F64F99B5914193A51F8447F03EBF091DF
-C4A54F30BCB6DD0033731D62330741F2EE8E88B5EA580A0232C95B1491780171
-0DFDAD0970487326A5AAF7FFEAC42271EE0FAC51BE7F2FC84E70FA86667F7654
-AAF8AF3AE33764D03FFBCED58DAC2318B5AD18B265A4CC7C142E72F7E171CFDE
-61ACCB3D43010CFA20E622FDA583BBAC96EB7F465BD011724EBC6BC1F6F1DDD6
-F2E1F5EACA70340C7C4C84A615ADCBE682BF1AE62BF29C97FB3BCD6492429A81
-04C028ECE31693725A9F85F6D97E297FF10031DAFB720725890A3BE90E42BAA3
-D1924FEF15E6DFAC27ADAC8094C11C41A98C42D242285B68D5E1B5607C2CD221
-508D406F8DA2B8463DA992D8FEF922B661BEA603B6DFE0B817E47224B08ABD10
-FA8712C2CC87A13A3A97710549FDEA79D592A9F44C414AC0359B01DA1AF0FB40
-52D93E8A3C1C9457DE568DEB1757E099BCF0641E6640816CEC786E25B54FEC03
-FAACF50780F963216EE4ED8918CBD9F7293A6E055EAA90588398D4CFD5959E0A
-20F0968A1CEF52F3B46F9E2986E1B25B0DADC7C2F13B84EB99CFC0056142E054
-F28EF8CBA3599BE532192AD512698DCEFCC7355DDAEF337E3A6A84F7D46FC0D1
-73C90D1140555331B460973CA68C3C075ED4CA0D96926477F77F11DA3204B6DF
-1769A1D60CEB0815238E4BAD49C4481425F120A3F47243D609190362DCE94027
-7B1A726F0A4077E2BBB47EFF8DEAA52365A8381FEA5ADA69793D674E07545CB2
-49F166EF1FCF38F8189F7ECD00FAA3945E3CE4639D4DC424C8BDCF578C6FCBD9
-1734A5D6409998114BF92E9AFB5F0AA9739D2AA40BB12DFC77E10E603EB7BF77
-D88D7239A0AE9281537CCB3D225F3BB0C585684D192EF6392AC3541D4617D04F
-3E72292C1C32AC7A20CF8AE1EAA2A9417B255D3EB84F75103B624733533E20C1
-C7EFCD3663BC03699EA7E36EDC760C93E5D41016CB0A1E2984E0122E6750A5F1
-EF3F22DAAB2E44F1325AF003707F76AAC8AB2469DE616C691CB8ADBBCCFC771F
-B0FB7EB0FF580201D75A85AB3F9F451C6E4706BF81085C5CDE67E960850CCAA6
-7651CB3B1EFAA81C8F778D5519C63A9C53A21234F3DC2ED2644B5F0FF7D9B5B1
-093217FAFB3DB12E5E233366FEDD2F2D0320321FF9BF7D3EC56D1EE80A831911
-649ABBA8FA21AF1252BCBAD0DD7B6A10BFBDD552A3C6C85FA1716B7E6F6236A0
-25E425ACB9F317A71A17BC464F3497E2AEEBF2313F198090AD50FD3CA114F9F7
-F968B0EA6E83864933B317E033A149ABB11A8C90A23CA8F175AD3F6CE84C20D2
-8DE734043E51259945F994D6D04687B8DA912E39031DF14A5467573EB376E84A
-5CEFD988ABA040ABD30198AB91BEA448FEF20D14B25277F4863DCC3B875CFC50
-C31BA18F44903B2EB275D35A7C19760DA2F7923708E20D8E348FCEB8665E1C75
-57B4DB8C792D6AC11DCD67E7AD7111A10E9D14864E0C2B2E7B99217354E47B26
-67E202503245541C2F5E0913916B03E2B26A026B9314F2929D6043F778A8E6CA
-12FEEC3AA698EECAA87FA849A29C19B3B62F0A2407F70B70C74EF3293E79CD01
-91AE5123F7949140AD1344FD40F4E02019631799204BD2CD60B012C966D0CC4C
-B5C50295CED8172750CA0CD1C4EF52A0705F87E8756DC3511D424D3470C03A73
-14F5ED5BAE6D6751572B1C04D2BE03A08BD9377B55399C06619AA6CCBC3DD8B2
-B4DDA425749088745565065624FC44161378F5CEE0C82CFFE8025F9205E2DB5A
-36CD565AB425AABBC0E4EF22CB618AB59D23680EFD18D853407D6CCDBBABDEC3
-780FBAD16591C791BB88B72967ADB2A54B9746B9E8D75D2A7421313AED08F80E
-3DBD6618259FBCB7EAC7922847ABAA4BDBCCF5ADCE9419BA3370E133282816E6
-9C292A4425531FC3C95FBA5347F2DB16D3390FBD0498E1449D261AB4BFB3DDAC
-77A5E128C657F5FF51664BD8BB6A8604C58F5BFC6432BC971B58CC9DBE08B7BD
-3A3A49294B05F9FBA808042B94F5BAEFAAB8F2C1DFB413DFEFFA90F0D5679319
-722E2AD80AC84C0B30291D8B85312E7D394678506643503C4D39519F167FF49C
-38944ABBA3038C2779DE65019B146A39A10E61C0F6DC271822C305117ADA6226
-409FDD3819C98C39F590974AC291C3BB5C65D1FBDF1E53579984BAAB9200AD40
-B029FC08797426DE7528B78A96C704C6326D3183D469315B5B9D86C6FA7EB877
-33ADEFB842CE4F6554F43E19B208B3BEB9082F0B14AB804EEB592EF8FF2D16D5
-5B0F61A9A4A8043733D692CB58FE1AFB7B94C354409D0D4308B73D8048EB8549
-B4A41F85280B6AE2DA0623431BCA13A9725D04AE740D0EEAF5EB942DDEB7E9E6
-01E4E804DB03FD5D4D2F9F2D9A1BE9B0F43EC2F671A276B3D41F0EFDA3814AB8
-BDC042F7D4463DD840751ABF6C1F500F8C78E15AAE355C33F294E33252DEDB5F
-9005A95783018471A67733971BA0C0A7980CCE7D563AD139E8A7C27F1C0D1707
-8944E0BEAA8EF6EF83741760ED81BC5B2BC0A28A4CD0235B2688316A50920ECA
-9BCE1D6D0D10CDABA2983EA49528E9898BD800FF2403F3A9C6073E255D5F6F14
-D13A36DB61BEB01E324731C59B119C12D137174BC6C05C120A8CF510BF57552B
-41B888239F58173E735D890AB5CC2983FED2579A98D76CA51093B8541871C001
-5DC849E869DCCD02D01C9DC140F3EE75C1EA0BCE56FD662D22A62CFF8E472D3D
-9223DDCA5F226016C4F02DE6A9CB470697A86D8275DBD787036A9CBDA528EBA1
-917B98F803DF1FA1C052B71DC55139CEBBC28FE30BD2D7CD787A95274A001CB9
-421DE1DD7BC5043DBC7B96558F1A81BD81E3A8420ADA6BE83993D22890673A4C
-7986DB88D435E1AAE4537C1A237140449F675BEC3C6614074EA05949DDB7B589
-33342DEDDC08483BFD73782028F113F1579A07581D3DAA1E5C14720A7672B405
-AA208B3022988A801540EF8374E891D0BCC318B117E8DA632D2E4D2A6466F48D
-C005CB111CE558868784A6CDBDBED1AD7D67D8A7C0B196EECB5CD85EE5469282
-12CD6433A26FA9BEE6DF6B7D5D0AB3514949CED97CF46C292C2DFB89F16C6FF7
-57E3733A7CAB1F0C8F9BBB0A1B6427DAD1800E537EEF90CD9636CBA0040C1BD5
-0AD000286692DD5F51AE2B3EEFAB8D47B1C07081717DD5746E8F27B22666E314
-08DF7A7183EF4DCADE90618C06D78CDFF17BCCF85CDFF27AED1DD15D07511A31
-126BFAE276DA3A6E51F8557F6BD436C71956BFF7651639FA4EEE296F53B3F344
-E71F90276BC0EF74F3189282DB9F737A96EDF6E9C52528A65BB9102E0FF1C83A
-E208340497F61BE2BA5E43F71A8017BA9EFE0958751571D1C1DB9BE5088CA5A5
-B7DEEA1A2C5D835DA786ED2987ED1D8FA9A0FB0AEE882FC2D12DA83AF8DBD30A
-5C709AEAF46664B955FD3D27018918BC21CF40A75F33DD530BB78ED946A8D49B
-3D5A32BE571625215CA76425551B8F4CAB74A5F64BEE97996B3AF90BC3D935E9
-58A66F6C7F8BC26E626BC1D79BA049933170580C0520B2C77F007E8886B54258
-DCEC03D76ECF86788B411F9B422A404910A3CF2363AC8D831BF2DB17281F4D93
-E1DB455725FC79BF58C882C204BCCB5BDF4EBA6FD80F70CA5208E905593D26BD
-B8485E39CC98CBD8E1C551795EFEEC0F69B3481A67C569712A29A5E8E664BA12
-68B97AA0001C7CADAB7C79DEE44D310A79AA2CF537661F5E5AC56B6C4CE4B4CC
-AB4CE667825DE33A1E8873767743C0D222FCA8A9588CDAF9F0FF3E4A1CD0D3AD
-BC8FB39F256649B57C7EF81662C25C7648E62003FFB754597634D716A0D03BB1
-D26447D84C7206C56CDE58E796086231493346805F775C1B488558CB1536D537
-4D0DE00308AFFCCD0C0057679C6E42891B5EC65059627BEBF1D13667519E9FC9
-2BAEA56EBE6097A07F5CB058FDFBAC0B0ED64B34340D07D2C79363A5FD25DC82
-7F6D83FAA8000525745158886A70680CF4E6069A2EDA23F95150EF36F8667D9F
-0AB3A22AD636D7F72966649E99549F4813FFDBCF519994BEF896DC3DDAAFAFCB
-991602383E5ABD0D31F77C787486721D5BC560E033139426CC6F10F109BEE2B6
-37FFA157A72EB161DCE1645DA0A53373BFD033DABD281EBD6BAA9A719A22BFF5
-D31C9CB8675B6E1CF2986744148B1B78BE87A9BEFDC38E3863157DDA3409762F
-F587388145681C89A42F0CD5303D92DFEDC5FEB369A2FF9C409581A8574939CD
-2CD484CE3E35C5D95EFDAFEB686C2F90329DF5D1A8F3EA760C253E9AD40B28DD
-7F5E4748BFB09CD4020180E7C071A12AB5B2BAEE80CB0292A6C2C93789830C21
-2984571D38E27F3CB25BE06D9C2BAF634D54D0FC8E5FFC96D76FDAFC01082655
-F96190E7D5BD4C178117A3A7A2BDC744108FAE4E31F03084314E828117A7BA5C
-2B9D9103B21B3FE9446C610E39C3F84AB46312DE1A188FE10A825C38F0A52FF2
-C80EF60C4E1F8613095FA8937E1F92877423000A190C0E6D25F253DA6D4F3D8A
-E41B75310B92E490EBC73E5AE2AC2F52A932946FBFF3B8F4E2031DEB3A5E7CE3
-292C5565B7E22B5E416ED493726AA3016D17FA1E8CEFDBF87F6030C5529F9E8E
-C57F6BF9458005A5129CCEA64DC14B18642471CB4C202AC357139DA4B8A89F1B
-C04E879411BB8A97135DEBE74AABBD2DD5F4B23ABECDED17F2C3B8B094C2A108
-277ACD33C0F7472A000248DC0458D5D6AB69CC74F2D58A3AC731B4FE60161C23
-277D6826D5136BDB06E0ED6D6807FFA2B276B949B96DC70430888C929A4C1BE7
-B9F106EEE46470A26C3188D46A92396C5B0118BD4396F87ACFAB95CAD76E38B5
-80479253975B4A3E54118941F4F0FB2C70ECFBC1CAD3B80C12C9704A2FC9502A
-F12FBC741A370F8D77AAFC43D51D71FFEBAC9248A2FC086972C132575CD8D898
-36419CDB2694AC72695F10C0A206C3E0CD8823125DCFC7D3B8FA77DB6CB550E0
-8DD264998F74B32F2DC260BFC2018925AE57B9DD9A3B2ED53C4584660E5250CF
-FE315E270B530A692998CE5B5C2D4E3193A6C724B1FE276BBE862D772E689635
-FA1451E92A30EFB9FF94D4E567D867A8E518FE0A646E8F5B03967BA1B9798E44
-021EC1F6588B9C0C8760D3E75E79F3E0D4282DA6E489803C29EBF73365E16F85
-8AFA366D123CAE5FD2A56EA3A5F88F1110541724F53AC3434D439796B15955AF
-C8E5F5FF930D2BC74A996AEE7A7EBBDFCD1BC0281FE40CC20E7D5143D3897E3E
-654D557ED95CF1F1E5B901433E4D8912FDB9BC31EA874DBA0BD460FB9D30E86F
-F48D15E4ED6E8BB21647C4AFCDFFE7426045AEE794E456E00133736217B1BB04
-EE27428AC5353B4AA07F19EB05485AF530E227C69DBBD6A718203DAAD8AA2DD6
-BB71F465D1DD1A676D9C8CEBF70348DC2635C22011D675B1CA56377B44835F3E
-764C3475A4F614BB89EFA8B75FA0AAEE63B34E3620DAD1FA8ECCFD022E3B016F
-C0CDEDCFDAFC5C82E855AA75804DDD589F5227B5868D6D4C39FFADBF00859F79
-61DCC0A2AF3B330796137EC2FDC99BB2C6F4658C6386209C1CC7221F33894BC3
-C6ECFE28A923A12140C70F82A7E1AD70F9C8F405D5EA99B619EFF805A36EB73A
-0627C65AF710472B5E2C502B79519B6C7F37F00AC044A759C63369B69D12F9C3
-B69E476EC1C4FE428C32B6B56B1AF81D5BC4A4615BC4D22FBB7B1E2876C3D3BE
-61C44D230B45254D7296188FED195417291015E468F4057CD22E8A69F1763287
-7D3D27A024AF47535A3A9158DC0D355100D1F56C7ADF6D858CF8864C69F96C96
-BCA5519BFBDC111BA0F7BAC132D55AA3E61DCAE53E40C88470C27A1B4ADD541A
-4FB87DDEA008C44869D63A68C00A83FA322E65E0EF26FCF592515BF10BC470C1
-D038D5DAF074B1A5C4237588783FEE22D9093A1D28A427239B24A69B87224F43
-CD202D27F12C5BF272253664CE9B65ED898571956378B62C2543063DF601B100
-4FB95D1384633019D9ADE8F8540E2213620BD4CAC61BA8238F5045C89901F29C
-1231D83BD9E817E4A6613CB8481050D7731B980EF3C793572728FEC05D74F980
-8B82A3A1D0EFC5DD67196F05014EBB8BCA6447C2727CA0F1954C97DE1BDEC838
-0A9C82A4ADA5B393DBFBF8E6CC4BDE9837F7324876B4F609B4552EDDD004BE67
-A84D3E8105EF8D8DBA8E6358F7178A153F9E89996987F4259C94EBCCBC6D190E
-7D973CC5C3D1D58471F71F9C5A9A7F7DE95179875F21CD2BCA5D811BFD4EA8BC
-A5A8C72072282236FE8634E6DFD69A8E8E466CD260605B47A07D1BDBF6E2184F
-498FEB9E32F901EA2FEAB98454D1DEAD45FA95D906A0D282AC98E540FB7B0C1A
-CE5A412C8482C8E7931B618A9363739901349445480407BA425188D71BECAA01
-EC7B7028621112E47B5DBD009EB3C9DBD6049434763239C96424CD1FFD442EF1
-C5494FBA8B3BA18E30A39B4B4455364FEFE0F824F70021F2BA644A8743C2557D
-93150884ED0D2679159348D90D45F68259D8ABB05CF73F5B9763E90AB11E51AB
-1379E8453D8FB32965C46E0AEEE2CDD53F93B68FD9A8AC749604773CE9FB872C
-4EC140ACB395FA04007B94FCC99A964A7CDC54E9E1298136440F1D6453BB6D82
-876C2D0A887B9C1981A079782CFAF4FB8280E14AEC14AB2BC7F288071B34676B
-360124AB94814EBC13B78200503682C09B0A8B9A19B72203E17458673E5B7919
-1F698401322A629B254B56F8B0523C2963FA1EDD09D7251B71C5492895658892
-D4AD04A29BD0C4D44A87245F28A67D9651280497B72B6B9E6E66461A3B4C7BC1
-DF82CC3A522373264735030BAB4BEAC1BD62CE96FA99C2DEA47F1F0FAF49BA08
-EEEDDE0125320E6CF468C0307A2BAB4D5A3055FC55DA094C8D41E6FA61F55F17
-FE84CA86CBBC83C0A789491792573D1AAEC580639046D7CA2BDF7F275DC6E39C
-26A555DA32A9551C2874196B049EE4A7556FF98852FDAC42724E4CBA4112A7C6
-3D7D29862289F09AAC559628CC5246142B324B108232F2575A17BB9FB6D59A68
-0F13FDB5A7A92C0B865E25B0FA38A6E0D17C4611DC9CEBCA707B18EA6E54E03C
-362D1946AC99F4225B8273777D980F69CC59A8EE8DACE154AF338A31FD1E3AA2
-601EC7273D7FD40B1774334C570F328DFDC7BD7ED52731DEA3E27B09ECA68916
-5FD52A54DB1ABCF1DA81F53A8B9EA77ACFF5C1AA6703416E243AA0A83115E8AE
-D878E7AB06019467261710B2AEE3A6857059E700A44F1C8587863DB557E0EB75
-E9938DC6DEE82D36D26FC03FB6A7A2E8B39580D7F919E1778EF82D4553E99295
-7467A6CA16836AFBB76DA896E2880FF2433C472DDBF075DC42752221AB5E4F8E
-FA0EFFBB95167C29F8E336B7D815427E75D875A02ED63FF2FEB8FA6CD180DB94
-A238173E012BB474412458190F6DBD3C105139D73B1577A9CE236EE26A2B59FB
-4E8AC2919737B1FBC90C4EC60B70148474D02C6579C3386299C5F4123FF78737
-C319984BE77C1D195A3D874DCF4FB1EBFC2B9F64042031F2DFB7F82F7CFF759A
-0F2F64C61D2A33D12FFC280AAA37AD740E45F119CBAD755A860D5D546C0D9ECA
-94810A70EC1D1BACB6DADE3B2D62EE04B6FD897614EB036BB3354F2C5181C148
-C3C0D84E00F337854AB6ED9D3154972982124F1A1D34584E3638F06BF0AA9436
-FDA8215FB613FC03C6DB87B48164F3DFE6D8034629EFA7DA3E3C101DC9E1BFF4
-E4850C70894E2CD7152FCA9F22F549DADEFD4127728585E834C8A851C7096B21
-B0AE401C50190EFA88BF92352E0A9D14487D015D04274DCD7EE339F3D1A665F2
-882F1866CE968946FE293AEF2A0E53362E6D9EFC7F45CCAEE891B3569581E3C6
-A1E84329B992D72109CD72A41003CFA3A61055E398F51D1808F3C94F40859A25
-0EF6CC1658BA149541442EB18D88627388E59CDF6ED7F482F692A8ACB0A57532
-1726CCA9063B7A2DF8A1BC12A4E7BACECCF337174B87D9E5089F513ED346BCFD
-7BE47230CEAC7FDA6898D20529126AB4484016353972ABFE29332F45BA335DDD
-E623ADD99CB1ABE3E818B22F9560C5BA14BAD345BF8A836C9E78A5B4E4E99699
-C4B063AA350F84988A68FA7F4F2106C9E99A4A5833BF9A6AE2D4671621953348
-E57B355C17B195366D461EAEB622859ED5F28CF0C28CA28AF6923456695F084C
-94FC6DAAFFC438D9B0DC765998C54A3A495517F4E75DD74F5AD0619B3664CA1E
-31D3B4F62B1B9D7C2B7EAD550C7A23E540A8B73FCAB88E40F28241C7A4DEA9BD
-084DC015359F43F0EE6FC4F9DE0766EE8DAD6EFB6BBB8C0AD0F0A02D0047C3BF
-FF553A539F05BFD36E8F94C8A1276EE4A417D7BA199E60E5ED36C007BDDD7346
-79C0BEAF65F56A1A2830582E73D60C8C04774151A9DEC7889A684E0B892FFCBE
-9E30AF6D91A72A1C285FEB799DBF93FF6EBCB1E17D475D6DE9B2DF9324831605
-6E4A5976A982FFA19EB9232206BFDDCDE09A459E8761AF55AF516E38DCCDBA13
-A15451B152FD3D6926237BF667E31E62CA0C45FB0FFD70C93A073ED26E7EA216
-4D9D62A656E4B05F8A14BC7381EFF8C1131A72E9FDB14B8CD0CA3728579B9C1A
-1A7DD9FA4E8CD39F124E6DD81C540AE436C037E7631224CFDD8CB18F9A3FE8EB
-1DC08821EE5E9B1D7B5E8DAF1935362E0312A16DB223043C96C9BFAF262D5244
-077A51AF9F9A02E3AF69D5CAC327334C4C3ED1B1D608EE446A574349A56F28F9
-48E31B89CEA070ACB641FD458FBA4A40064CBDB4FA8F6F5EAE54BA08CC3F6536
-2A33816362E648F6174BAA1C72B68E382FD9BF039A9A1D66F698F2C7CE937BC4
-46469F96EAB2528D4C5C173C5BD66D8C3B9D91E8BD20D8F5CE0023D4C88CE6F0
-F59550C9E244729ECEAB3B4167C204719B28C86C9F8714E1C07B2ECCC337E2EF
-18B5936096706AB1FB83C40F44415C3986CDBFC5639B15EB606952B6A6E54B02
-EF9F8914A5EB99772459D7052EF7B4B3E6234C06AB0AA6036CE2B09C71248060
-384B1F29840E211CA56F16E48B45C426F58222C45F2FA574B2338DBD5A369D97
-E6D9EDE855437AB2DA11775B2D51C561E2DE48283E09AFF7C896472F3B0978C4
-8C24E55A3AECB2CEC687436ACEAB0E132AF68EDBD2A50E5C45B58E6E29B31DB6
-1B8DA96B25A1AF46BD1EAEE2919ACE758064D27F8669A07D100CE0A61BB11957
-D208277C1B6C547F34598F9C69C8EB05EEB9CCE4CC5DF8D748F5E831825CF8D5
-8C3D1531E89F69CED148CE4F6ED85E7A5BA7F19B473F6A08C95A4373C4EAB134
-2A43F649911804675E91C0B1E74B9596C1184B1CCCBBC459C0B05E3FC4885BD2
-FEFD67683FE750E71C3801AB4F50ED172EF169E34273FCBC1C3E1D828C1B746B
-27F5BC4DD1D2A0CE14A27ECD949FF211E37ED98597FC09AE4868012441E36C1C
-A3269547D88D486E63F67792A27442FBB5545E1B5C3405ACC152B340A05CF868
-A1F8F82C8C90343A1111713E97AEE6EB70BD15C155EEB7E580DB6C8EFE7E111B
-7A52413283C5670341675BB5A1830329AEB3B2AC9D8CB945E717B586C39A8D29
-163D52F0587267C01A9596B669D352DAFB766E380C1A89F7DE849ECD3BE8BE12
-7499D47D3B56475F30355D218712ED682A15B31D08CFE5577FF1CE129C2F7CFC
-BF3AE97511324A8C312CBD77BDF550525E234640962472DC539E950D30C7154E
-5F77D2C612DD8DC198F4AF5DD3F2C336CF814EF092E58CE27729C219F270D035
-22D20530E522DFEB99B0E45CF69E58312D754241EEB13CEAD3356988BA9A3D7D
-77A0BB9CD886CF887413E652A5FAFE73D3E6205470E1A2F310B7E5B883E4F758
-10B8A6950B7C5463080DCFDDEE54CC4B914CF0B35700383C621290CC8634A68D
-33D72CAFEB9EE2DBD2FBEB5C0818A7356A7BBE882980F359A1C81C977F40ED3B
-BF1B0F532A7D41A2A2BC8CB0011DCA0F0FA453773BD6ECB28ECA185E7BF410E8
-A2F41F503A3CE099FBF069054F6EA5C00DB84F6756385A39DC068A60515142FD
-4BB755575A1DA1E0CAE53972BBE7E316032446223BA3B11948D6BFD6F519683F
-CF689053E855906991848F95B7E4A1AAFAC7E89CAC60E2E45167909702453C2A
-0DB783797E30FF6FF04A9D963B04F54A77DF4484889C3A49E112AD777D71DB1A
-FD245F1B7F06E0027137CA9DC440E28E37AEEE5AB1A2DD0E21D0BEAA061618CD
-B41FDF21488E9D4E8F3EF7B7F2DCD60620448F70BB27C5A3FFFFAA6277125140
-BA32F78403332E638AE10B60977080235C23CD9AC81256C96647A46B40D53FC6
-21424A3AD516B31ABC868F4B1019D1CF87FBDE2877F5C1E8E1353086D6C61D7B
-C5450555F0E10D50EEEA235F7E8224F62B758978505DA4261227758B52CD014D
-988D031EB40DAEAEEE7AAC1940F2F01A4D3563912D2D408644E5ED0768A68B75
-4D14D76F5AE57DD70B9EC6C90705368DAD8FF37ED150B24F2E20906EE523882C
-8B848D1FFB2F5DA878F1969CC81A409148C1A6B2E50A1B34D5973AA77E91FCB3
-F363AD88ED79943EA8D25EF390E12EC1E1C2E42FD70A125C6244164E3F77903B
-0D027C2797D789746FCC312B020E54075066881E79498B8052726DA688700133
-DCBFA4D79F723236B145D9D20DCE139744B3A47D812B094C15C2E0F0B953D923
-341D5E221BD06C19C20D17B11ABFA708F03035E244AB4F0A684BFBEB7D93B8BC
-C826B17ADAC1252EA09977AB12188A4BCBD50ACE59EF4E5BC254851F46D78590
-3DD7A92355AEA3A72782A29523CCC0E6AEF2BDAFF4B3CC6C0B207DDAB856D10C
-3678BF4D53B3C6D474B955E1F053933C086AC8E1D4874653440C811ADD1B4E8E
-D3988FDD4FEC69FDBC483E128D2D346E424AA83D882B4D1D65589A06F264E69E
-47D94CE5B5FFA87A6AE7ED1D9EBF9DE99B11B0D7BFE65B679936A4B67FF25A81
-175B07515A1F37
+EB666B78D66A5D7F0D6903CED6030983C38C46B54ABF7413CF33B4BE29FCE6F5
+6F93CC811F37F3816CE071EFE9140B85CD7BEAF7F1908DF4DC3AE6AB5436D0CC
+9B33056E9359724CDD0170D3597D547B41E21803545F87A2F19475849D64BEA3
+F7052832A9D22226581CFCF3E05304B18D73B0526FB1336DF4615FD7971FE07B
+B748A2AE61B5A838FE53DF392EBC3F42487DAB230CD78A282D1574ADCB444506
+FF5446EB34B873E4412588ECEFB63311B4F4EE44DF671A9A0052DAB9187C68F3
+60131CA2E8C592614C9EDE34F5B20EB9D38FC66C21ACABEE2AA823E893DC0EB9
+0954C30F36C619771F1A81A77D452B5F4B06B8AAAD231A995AB1C6DF8BE4A3E3
+6292F011FA3AFF7C764F462BDDAF81F41AAA24DF8FF0C364B79DB9168B8BD4A9
+F1D90236B0202D716E004D33BE8C7287A73B5B6A597B3CDD1D03204A5C63C66C
+640EE0242D46A92F084C4702F6236BD6B226BE26A97592B665D888C771F7C934
+908AA25F387B143C3488E373FF13FFE96C3C72A9BA1015FF7A63AD5289AD0670
+9A6E03D13998BC0B7A6FB6B150DBE54C0012E6E3E11BCAFDF36E83EB5EA9F0F6
+A1EF1521B5613390E9BF7824B0A5A597713A627D854B0B23654865E3F6EC9901
+E1C3F6832E3DEAAE37959D91745A126B4D92175F5B7F57E63125FFD47D97D356
+E137DB9F5AB63913FC5DEBB1A6B08A16308CE3D231FB1ABE792A0745FB824463
+063599795567FA3E3B6E0DDF4CE805988D85375003557BF0D0EAA57967475387
+32E23ED77CB2E7B3B08ECF7836F3C0D3DF16DCA52D49E43890FF2C7BF13329C7
+97822D533EBBAE1DA23B1804C0289895322D9388DAB8310415DFD74952A6D39C
+FFDBA3705F79DA3A9B9D106E85668EF0DB5006F05D4AE6667F9966B4F286632B
+59B3C716F333A71119C04E7CD10DEE5CFE2B6025F2ABCC610531A1CAAE650066
+33B6906CB8CB511CF4BAF59FF2C2848943D8F2474648229FFDB04AC51A82E812
+289CF5F96031E2BF7198838140EE00933BA6B8AA36F2C85E261CB19819C28263
+89CCE24815D5952B57470923B156CE378B3E9FF7EFA17761E0C37CF421451726
+E2059B11790374C7D3B96F61485826AF8EFD0E5589D82AD7EE25F3E2B2908BAA
+98EFC55B0F7CCE3ABED10437B93C7B15643AB3E5393423646FE61C823B18C7B6
+C76A3FEF724674FCB5F35414808CCA37CB4BF88039971CBFC41F3D3AD7748922
+39E1BB25839B07856900CB25B6E16783BF9C8D6A2B028A059F2367DAF807BDC4
+C2A5526B1ABAB8F3AA59AF0AA0627DA5412390C062AB472F9BDE57A6501E0F15
+C80A44F19223AC8C65733BDC60965BF4105C8045D59B18F64BD5DAFFA614FA13
+4051A593C02387D4F208ECD9617B3E4B8E0B7686545DA5B7A9D5D06026654B81
+C9474453C5881DD9DE2C1B9A4B4971ADB498716EC61701B0B87CBD559D1CFA5B
+5EFE32C3B87777A9C7B7CE8F6D2E5C5B437D1BB879F15662B5B8CC0045241408
+491F2C358C2C64E505A7F20236A5745CD70A5EAA32E24B9E0C466D59A8814A61
+E7A427837D1B4F87A8C11ED89800B6B29E44CD92A7747AA68E84F2AAC128FD42
+14AA61E960BB3B1888AB648543AD1A7E2DDF336B8241551899F183E049FDE8B5
+919FD3CED04BEE8D1607635D232240EADD63DB8853774AE1817528F717EE2E59
+FD9E92C5BA97406DCD0DAABCD58403FC5A55BCE26F5A8D18C30E51F950120FA0
+AEF6C0E53117F266E88B6B4DF252597402DD9400594CD58AF4E5BF25FDCC3531
+189862159C89D86D8A7E84D90A704A36645D115FBFF6C23CD007412E491B620D
+18C017A02EEF2E69C168F45D43E3DADAF73BDC9792171CAACD9E0371BBDC6A1D
+4A90CAB716B4A81D6A10EAC63EA4B4E58668DB3E0CE7CD7B88E1DF49C650EE47
+F69099DB08350CF2269E7BE0E2BF1BCFBD4454DF82BC35F3E7A2EBB7ECA85F2A
+7ECD3086D7D997F8AE65585E636EFD4DEB97ED94EDCE7581A062998929C57D68
+8C0D3548EDFA4CE6CA31272077ECDAD7C271AD15DCB4A7E9479B4BC9A0ADCCAA
+31F0F10565B9B94FBCF92003FC0F2FB49DB0182979A104EC2E4175FA5DDC25AC
+BE3C09A961BEF1DE08B5F6E14AB4461A17AB11BFC994F95155944AC2ED67DA8A
+D7EDFE27FEEE831BCEECE358F2CF97C6D59208950DF7F45313D2601293139777
+196E244720D6B15E7BEEC8C4F3060AAE424FAB7FC8A433F92CD98F95B69EA0D3
+76FAF30AEE18269FB0C6F06F8D58F76FC4C63D1C8C8B1D8B10BA9F9CA4651DA6
+8B8F88C5486A209A490BE75CABEDEACAB15F36910F7C7AF7F466C2ECF4B20A24
+28B69CF9F919D7996DBBD5D8B1901E6B568EEAE60366DA3EBF102BDE92D7C365
+B8E953A3AB03B3C084573AE337F1CB6E68BD8ECE1A00313C051CC66617ECDC04
+4E146AA677592580A269587EA3E381AD847D5976FA7D4474EAB609189F843CE6
+5C9262941735ADE805653902D9925276EF253053DD9BFF26529756E9CB32B60B
+A1C4C28FAA42F02607576953A7A60235AF6F6AE6F4254A0328EF0B0FF314FDBE
+4201A3F6185EB544CE9E18077E6D4E5213D96AFA134A95A4714C3E60816AF5BA
+018954445356299A85392B5A423FB21643F69D477F57C720A6B4065FD264E5C2
+DAF7347819A1F5C4B80629D72EF110814FA472EEEDF141EC1FF9BA69C05478FB
+4D39A62A088CC4FC18241BF8AB71C544575F74676715B2794BD283AC72E04106
+6F2BECF4AAE1036C093CA2714FF03CCF9F96C74E486F1D6B7747968F3CC75011
+58C6AE08C65C8D7CB3E590A15E621A852046FDABAAF312EA6B46B4B02556F345
+0AFFD8F836A9F50CD75C5C83B931C04E4F930C245C7C4B18D30A9BC80424B708
+146FEAB1DA67FACA00A87416FA4E370B8651A592AF4490A00F570AE8A95C8167
+44AD0BA08F7EF3836AE241A213000E2B8D45952597147DB5EB7293C4B3C2BE43
+262843EC7D527513AA712F405AA49CF50A45BFBF97623489B030C8431828A2AB
+596A503943CFE61EED8B3799E9DE5117B54B1273B66CBEF2FDED67E71DCF8465
+0B0D5D20F072E2FF25C6754963E17506BF4A665605867387BB0788670BE20062
+829392B33E1146027B9DCD261A512D896DE7F3763F36A65FA36692BBB03C1C39
+EF21B696A82B4D2AB06FA694A4D36E6FB41DEDF55B56CC83A418201A647814ED
+BF74CC64C5A3DC4BE58E1F0D29F555D141C031F82A2BB2200367B4FB6CD11569
+F3A57711B3F5375E00FA9260528443C0F839A5A7F9A2912D8B8331B39DF1EA0F
+18D5312ED551DC79B76CBCEED8770C41903D19AE524698FCB35C3B0A3E95C8FF
+3E1FC3C1B49F9FD06C1D9A8CF3043274A7A10661108F421894205EB28D87AC04
+0E35F9B77E66F1CA4F5FBFA7105232237FA20E4F3B655A0EADA1ED642CFA1671
+F870E4EBD79E47DEEEE6F8BCA9325009BB24CBD44001CB758036EE75795BB30D
+72C5E8485F70347A4F11E914EF701932C9CC6E958F89C152B8B3CEAF5CEA7C9D
+0B64FE2F9EA43FD7B51FD2970313626B16D9C3035C073707C396F48FA4348336
+7919FC2A05133B776464CEC829E2EE8E104B9911DD0B8F85BC76D2A0758FADD3
+2E615D5374F7F4F16D7CBC4210B1C959715695F2CFFE4A352BA6D0520FBEDC70
+91F388049DE80EFF8C7583207D5305C53C017037AF02D95FB72405BF77D9C3FC
+A8799978274AFDD3AE9E8FAE32C73C0EB7421190C885ABD0882D6FDC2FD6230B
+A97896E858757AD16BD6D3CEC6EA2D2C68910FF9FE0324D0914767F5A7400228
+837B4FC78D5F7B3E565BE1C3F6D59E30768C02BC5D53637C1702A786266DCA5E
+E8B590B8882FBEEEDAA3F3B0852B07F62BE304DE07A30F03DB253FCEACA17135
+9BEAA0847C0CCBF36930C10C22B3902FE24ED569116A1B77183CC38F29AE64DC
+96E6E9C98602FC2CCC6DE93024562CFEA1DE41F0BF567AA1D081D86F60870C29
+EC3AB99208A8DDC687F4BD4513EFCFF15F04BF38D5E154F43321E6C873FA003B
+260F63DA668684641C07C53CFF74B9456BA34A7793F7FF5C676BBA5DD6E20AE7
+A8BC3E64A2E909A8F9EC911DBC2B2DF5D86309917DE191115CF645D145B89689
+2AD9516561A5FDAD64F5D4189BEF66F6E2755E3978CE09A8AC42630D770C8CBB
+C0F28AEA26754B4EBCFBE8D42F97759C0DC64E0E06E6C8F90A01ECE6AEA6EBD2
+7104070BF5D2A9B4676852783D954C19444821F105FD9E217EB4E2C3D87A0553
+B52139B1B0040FA43B1C500DB126AD5FAA9D78220CDFF1BA5AFF5645F49056C7
+B29F25B9C11350143FC9BBDD557461806EF1DE27291DBA8795A7FC73D47A0005
+F6CBA65D2E3006B483B00492A0CFC656DF1C0A62F339F551889AC04CEDBFD543
+574FBF3BCB6CC9E2CD10CB68E5882F10F6767B6AA58C7B3A65D90CE1E60DAAE2
+2BEFBCF41E973F210E7891D507BC6CD4A5E55498DEC4EDFBB02C12B890085758
+2C7FC558F88C329019B7FC9F697CDD80199406B369FDF67D91F01C113ECB089C
+C34AFD6F26224FF1F516E247FC12CF145BE1972CC89101541234EF1FCA2822DC
+7A587AB42604493CDFB35659398C954CD3938D765F7CD3034BFA6DD936531433
+421E2999F873A38697AD13448ABDE9983CF2A5B21886A8E25A864CF85FBAE2A9
+362106C0C59D4BF7E9B99F27FD293D0E2A0EB065BD7DA208C6F10A55F6EDB2C8
+1A3352C1457FD5C1501E4A4D72887593686954C3EB3A982CB99A475D529AAEF2
+964FD5540D5C5DEB6FD6318667AE5A3930DF0FE8B936FC0291874F17A1D86547
+C0336997B53BE016CBA50590F54F76B60EBB4E3A262A6B9093D5C2A2501DC702
+87A6980D81B04277AC1F451639035081D3C4E787A2C17C9ADE9737C83AC3469F
+318CD5F5401FFBD6A0A46C6AF6D30BB2BF4742EAC627835E8FFAC6DABE631579
+EF730ED4BC1F40BE9028222D2D64D37DADED57B06402BF0BF4F98FFBECCA5ACE
+5F9AFBF2C5B7AFE358A7381EE80F81E7E066A104DCBE15ADC4DEE38D82FE6978
+594202F0ED123EBB9B22FE17715DC5AAF74EF7FA8AE548426ABDDB40F1F83301
+684C72FBCE10721C2BE52F73968B31C9DA864773CDBA601C59EC396C4287CB5B
+30A89E9403506F1CF924BFB08BFEA07BE161261E3FF86DAC8E6FBBE1BFC59955
+A18CAE11678DD0094DBEF9B383EFA5740C442473C6FB06CB918017B89E26BFF2
+B9A9941A380D58CA4F0958718205FC225BD027C7B7DDCAF6D7A6F38A59B8578E
+94C8AE5848E2B0EBBA01E2EDCFABB26CBFF7416BAC72BC8BFF2E40FEFB1F03E7
+00F1D283BA2A0A7CCD9F4DAA9AFB15AD531CC42C66FD50DBDDD9F145940580FA
+79EDF73A7C0E475A8DC5E9379997BFF919FF54AB19B367E794E36201B4040701
+9A287FF48EA8153D0C0FFDC1CC52C6E157CB2A86898A9F5E2A7ACC382B412D05
+CBFF80DC30877A8F609C0920C0FE0656BEA090CCFE8817C29172C97B6DA879B5
+DA63FA0D91E8FC700499B04B3B4C87B23A18C542842F7F20CA5706A0769E514C
+70F3AB064BF93636C8F7F637B844F0AC51686A2AF6802A38048A17318190032C
+BDCB5412A430F5D2CB42EFFF2E229A5EF8DA5D42A7B00D55404401E6A0BF4AE5
+970916742BEAE469BCBF76DC36CDEE7473BA13CD5E56559FFFEDDDF603932F6F
+00189BA51500BD0FD21FB2341987C05C6E3AE5382316D88EA6C543FB1D7EDAD8
+BF109D135CF4EEBE7E4DE02BF7D9E22B829A49BBF24ADA3DEE7D10194B87455A
+DCC0AAED79D5FD53F7514F28AEF121F1CC39BFBBC86A111F9AA60EB51CE20366
+0D955E0E16C203076295ADEBA82FB4C0498DBF1124E6D97CF9113FFBC0EEBC80
+2BF3F152D252A66B4B65CC03A97277EEADD70BBA8A23AF5F07DEACFBE92CEFA9
+CBE4060284B4D8EEF6DB1FD83F056774CC839A3F3738E12E240585AFC2A7559E
+36015B74CEDEF3CF6261DBE63E4D3154D59C5CE9805F19E0F2A3529F9468BB24
+35566D11FA3654CC9D4995C4DCA168DE6260A9B629F38CED9CBFB3DB635AC90E
+5F82ABE7639E74E129BD9FABE7FF025AB7140ACD8E1CE62CD776DF2C1FF9E31F
+5298E4D91BABE50BFF37533738405E9B7AB66125F66BF920782539E319499E0D
+20822E52B781C8ADBD006E7D91B65860F52765FE191E74BD5BC12F47503F3684
+C2EA9462D8BCC21D536337A786B93703FFC9EE8F97C15E52EB1670AEDBDE098C
+75BEA7804EA752656A16EE72A250C3A7CD641821760DD16FCB1F0B94477FB768
+540A3CA5829DFE2C9006F1875AB90A6FED18EFADF868DC7B13170278767DA0DE
+B5EE3AC041489B97D11BFE61423AED1B966AE6664D8F0C6E5E871624D44D4822
+FB9597B0A1458C4B069F7A0A136D52288962A5135A2E407A77DEA1D518C1D42F
+C179FF994C68C7D93EE6572DFEE27B62D9326C0A480148EC680F288F08B58E8B
+AE27BACA03630A66CEE212714B379445790A3F2C05FC7725303A2DCC85C89E2E
+897851AB53737BF74D16C1008B32451300E23E6737A0EA6C653925A2539CA58F
+E591E65ED19EF60870BC73FBF0E8FEA2EABFAC33AD365101B18ED5273AD6631E
+E6850A83BCCF561C9F00916EDDE61BCA325A76EDA81EDA28998FA76459D70AC5
+B3AB87C2A83F8E377F7FFDEFCEE0151A85DD07F071562955D4C43271D8040DE7
+1633D554E685C5B21128C38E4C9FD14D335A4519D28FE825691D98A2DE37B543
+6EBA15DACF27DE0FF6F59128555B7A60447FDDDF9CF6EFA284B147C8807303AF
+E533E1F84AACFA79E9998341A33BD7970142AE10498EED296B9C8FE9ABB3DCFC
+1A98C0311FA2CD71B565790F7EB2120D4DCEA0557E12A434DEE24F04E6E997CD
+F1FF46A73FC7F39494BBBF3CD146C17B415261E35C8637BF76A36E99B9C031A8
+2B73652E3329B03FC8A2F7BBDA2C372D962008214BEAD964DC45EFB256E96663
+4BC70915EC1466D6836F5557F48402072D54CACA30A4B8B2A298FA73CDF7A7E0
+A9AB2C02E961C728D4BFC96E5A72E01C255DCC61366CDF5AC17DA68EBFB449E7
+E01DB0D5F3190E4C09623437A13458DAA63DF07218ED333616AC57010EE664C9
+BA381A0DEAFB07B8C4873EB3CF6736C05A9674D35F58A4A4256ED7EB0328B3B9
+7D8A0898D0BB17D766FD713A60DAEA796BCB596BFA50682658EDBDBC36141195
+D8963E03D2A646A192C683194BBF55A09A26FD7CBC4B99EB446E5C3340E7E037
+14394A8989326D3E56752A8940CAE9BB3B8C2AA112DC329649B27E8FE07B13CB
+8CEF21C69EE470E6F92A9DE2BAE5484FA76C6CA29CD1014034380ED28F87E363
+66FB25ED1DA8E37F13D76B76F4B0503FB39DD018A7C2B3D96BF3CEE1382A35AA
+96F496CA7D9901CD242F0D9CC02F1BEDEEDAA33CBAAA641986867DF677BEA888
+8CD505456D91A18AF14CFF90EAA55EA51E74AFDEE38BD592F76E4F458C8AC08E
+B4EA1D256BF46F23ED9D9628CB3A2F592AB1D2BCC677AE92F8556048C9366778
+F440688BD285989259C6DC6EDFE71719DD08E1B7AA7B7FAF32184E696453700A
+C86EB2F398C0F6137CC28E91926116C7EBA645D1C79F3C0429323B2561A4D010
+A39533F2CF9E9947CA5D8D3AC106F97D15F84FEEFCAC4AD2D2F118BDEB6629A5
+5152687216DBE9ADF1F4B9D5277944CC9669C4C6F872C20DF23F641140DFE370
+0E5BBD5908138A0D473847A91E7760E9D2D8C1FE8E0F873D188272F07150D9EA
+B2FE69471E6154C29789011CF48CE1FCFF7F89CC212EF5685357F5C9629C165E
+915D02541CA08A3D8C8615725A83A382730B71D9BC611CA5B1C49C1226F04D48
+3C72B9AE5BFC36D2CE32891C8EAB9C9869F4F2CC9CFC6EBB263077F256C9CBE9
+2837CD9B6E0CD5308A59CD3E2E96F2E450C81C145DB57D4D600D92F69B64AD95
+31DF695DA50237D740FB1BCE73F6320E7FBCE965D69F1F384223012620C834E5
+7913F63AADF4A40CE5030504C3B81B884DEC87008F12A478E25F75E160838F58
+6A627DF04ED5C431D123B5651BA305632C2B9FEFCA4804D0A8FB4FFF7AA91614
+F86E93D185427F81C63060C0E821A1949D9FDEC06B0B431A5AF61EEC3338EEAC
+DC71C071EEA5CCFB95ED8824C91839008F7C6A96C05F1033075076E7A01FAED6
+2565BFBF66DAB0A91D0020D1A15A9CA88D966D6AB985672835712926F4C302E8
+7E4AB8B9C17DCEF9C7AA50F5C33B067AB935555C438D8FB0A7DC62F945643325
+069D2EDABC50FA1741E60DFFE3F0AAED49092ACA08EFF4D85C839ED67E36BD0C
+480EBC567CB7736A354B75E6672EE1D683F674E23B7B701BB62C55672A1839FD
+1DBB68B382503CF06F2DF67C041B54894D8D5D63AE9FE8C66DFDBDD524CF2A84
+5AD1600154E87CE40A484AC7A4867D255FC386B07A0965A49D082922DAB10274
+402592F8A1E1326F4A156031CB15B91E95984F2C8CB02E163C37CABDB397A880
+1ED034CE8BCD69356C99559A3EDC67FD339B0D914BD7C08EF86AE9878DF58545
+02D194F6D14B3E28CF847CFE22DA61CED79C23FD350D461A6CF65DB49A69BC91
+DC4CF08D98FFA9C8D2C0BD2F0B10C407FCFE1129D120D929D94934C9B8CD717A
+F0E4EF585B78C484B84DD4DDD8BFED3F74F913C42EB2C73F589E9960BD40C620
+CC1865C99F68D8CD764C3BB970408B9846767C014D689E624FC1E447CC5FEEA2
+0C7F33FD484D8912AD4E87A1CD2660B39FF3F0E2739E26470DFA09EE8DD01F84
+AFF3411FE8A54AB03A90C684FFA97BF4649E737BF60041FB06D9C7B6870130AC
+CED1E17FF79EC615F4F1A04D8D01E9DD27C6DE0739234FD74D81E8A0D9B8A6B9
+293E4999934B66685965F856A4F41C0326F3918660C04C40635BBDCAC5163029
+7A22F4CF592D23F4842CEAA7F56B881456F780F8D729FDDBE765067E496C7429
+A610507BBF032C4F64FA86509D8CE02A5D57B3D246C39C4D4D480B9CA77D944C
+6F5478C5E61791A80E371AB2B6CDAB5085D620F47D0D6E4F96F5098990A1AAD6
+F4EEF82B4D88948C15FA670AD3C48EA966D73580B976EE2D2E021EA484E5B360
+5578F91D627923B782651024B2F2CE430F72509EFF8A37827A829AB54156D8EC
+0E2B3235BEA46DD120FB0FCA841111B3556B6D84FC367C3CB18600D79AC34B35
+18B84B27FE8E339F584337BACC5E3206304B244F9691D965DD3F1244ECFE69D9
+EF586F319CDF0F13F4D77F800C4E8C07142F5417091D2904458F3F46F308D271
+4248131C99427F6F325888337D66C9B36DA33C512CF36773898349EA37925034
+5E59F8CA2E458B0813CBFD4F9283C53B7EB5AB29EAE08B17C4CEA5EBC76C9438
+416959F18B6A32A180C65C27F3C8856F012DFB4F1332ACF17395D1C4A91D80D9
+FE908D524A3DCF113AB2E84C429B97A6773C85F61499CBE915113F0E55AB1E3B
+6ACABE38B0224B194E191003CDECA1D74FFEF0AF51FFEEC88F1327D0ADF92820
+ACC7F71862D1D45F88A9B622BC15FA26120F136BAA02DB44983C2573E43A8A7C
+B2048A27D8A43FC5949925387B9520CD43EFCDC6C066A483E77B82059511990B
+4E7ECD47DB1651CFCE7F3409A3E23CEB9A4F87032096EB501FC742D3F34DC0F1
+71A979A810C30BEA0B3D44877E48782DD7B32E65EF42AA632D024DF760EF7ED4
+B9FC53EF65402A9AB6047A772529530F9DABEAD411B68AAD02919A3C5544A777
+4D04C2854EA9F47102D41F9923E4B6267B60774CC0F069A888259911F058C88E
+F6DD1F18BA2394385CDF77A901704AC608138641BEF29B25147D032CF6AF1DB0
+B3EF58C27527DC0CDD4BD328AEAADAC32C1FC72C99C4D220991453E179166FB7
+EA4F72F0114010E2B5CE42850346C7E5713E62DD36EDE5ADC1AE4CB0FD382E26
+1A88FC994CB8E7A44B7E538D4FB79C3C18903BAAB8A757AB6D6C7509473C7583
+3DA508FD7A710E688CE286245B3DD24170B3F1A9487B4566B56C96C34D9B0064
+59DEA3EB4DD28553EEBC0A46EC4ED03B12213754C4C605E9E63FE6B6039A5D5E
+704CC0A2CB17FC87EF575CB7F3DE45954D1A9E59AAF59D81BAFB0F0EC7233714
+18AA582BC9D1AC9174401F35A78BEFD069A8D33101032A2BE1ADA1800427C0E5
+79651BFB37614B006E9B73CFB734BB882605047FD836A954EC9AE0BD68ED59FE
+95AC1219CA61ADADE8A01AAFBAB94BA3E835B1FC4F88418EC1161C6425E97CF9
+625CB993D55060B435D3A039E03213F118616E7369F5CB1BCC1906BC39AF431E
+256C5E1FE3DE71F2CC49F8CB6711C080FBC872FC3D084FFB3BC3C1ED717E3CE6
+0898B765303EC0FAFE95B8E273E03CA8A5E2CA0656E350D9DA04615D749649B5
+82C063BC15F4B2232BD52C8C5FFA6E473049E2E45743F6849D882F5515E27046
+5CB108561E7FD5EB15A81D7833339160F4C1EF7528A216C5E963B2FAEA64D370
+49C481A54501C6CE2AEAADC67561283B08D3BA97D4D162F1132E713EA80C515B
+0CB2EF4C2C929D95FA7B686ECBEB1DA52DFC277DB8E1F2C45B471651A95AF1F7
+A2CD12EFFC77D7DFD8AF638B67112A11CD9C582E1945BF8D2018A539F4E85F6B
+AFFFBE08C354B7F769C285052DF4A5665208DCE52C4436A13934388D98A9C217
+4A2B3C0D7EECABC2778A2C96D10C638559669060A2A8762CA886E38BCB8F7338
+9A3FBD2A4734B8CC0EDD0554A1D5369583CFE43F38D30E0AFBE584D500BF3E3B
+7F7A0E0CBF8359DC7E63CF576A43997E21D1C42E4C460A908727AFC97643E064
+6EE28B1B5A9F121CB7B6180588A61B2CF52D246531A802A602174C8BBD254985
+2043B5A93B62AD7229ED2772F8CF22144420C147A004091692C976A08ECC649C
+49525FE78803F59A3CCE937721F1E6EB21AF1568096F3971FBF5C4B539D350DB
+5AF1B4D67BBECEE81728570CBEF3D27950439CBF8C2FE6B325C5F282EB604089
+6EA8C7E62A920D18CFE638C028AA2C0D913AEA3E0AE6D94408A4882161EB033C
+CDB2D61B56F8264323DCF7EA1B813D2947BBA0F5ACB6BCA093062717C5279BC0
+110F9CE0A6FA3C023C4E0A9CBDDF2D70909519A9AB182E1555C28A0F835884F0
+7165FD13AF32F67F9E312D969BE3474134C291253498DEEB8ACDA55D2CC5C4DD
+E6F22FCF43BE747B68A82787CE3335C668F1E40D2F2165530C993424BE54779C
+C09A852B8AE4679CFD95F8FB11C03EBC61418A90A44A0C88FAF1672F43F8A233
+75EA03E5AD02E5A5A79DFDB87693C2AAD1D5F930F8458553FC8DAD60254D569E
+41724D6CE55C8AA2C1A962D4BB4A538DD08C8A35D50D1C7526FA17BF21045DC0
+9C95C90EFDE502C70F54C5B9722B5057FC39D1DD8FD1D05AB6385D6A237E2954
+65AE93092540B2A156DE1262568A4D92B71BF3417513D93035471CC0AD9E8D40
+A1AB88041B0E4D5411B8F035C8FB03E35C7259F2E16615CE0D5C151191F02AC5
+5E7CB779CE3FDC447C9F548C768B07A2511713BF4DD82A08C65F492B501975FB
+3E237DF8584CF97F9F859B35F7614922AF296105C2EFEECB887A342D11C0D3B4
+50D864B6B348C6BB35A101F953593A39A908BF15EA44FAE33D0EB0C1AA6BFC17
+05FF96AEFACAB9926898A06A7C854E6D77830141B48A9B528302AA73FFF7E3E0
+47AB4505A268A8152F1227F308B87AAA375FA126B8B65638BAEF563F39F95F5D
+125E56715977BBBD6004E1E59F33CEA1B720AD0EE16E21284458EA1F70DA94F5
+16CD403560D6E1D85AB0EA449D93372298E3621C254E1503279068C29BA980DA
+ADD86960AD65A722954643637857B92C1CCCC22A5E56C0BD782471797CB62A06
+AE46A8C5EFD6943884E9E87FEABBD7EBF79ACBB72FA9659A1CA9D7B283DECA75
+2F8A11DBE017E7941012FFC32DDA7DB2C58C42A5059ABE050F1D76CB6D37F593
+C2B57DB0B005CDE48C77E43227C20C6853A5B51A65A6E3EA02ED47A721EA18A3
+8FEF9FF73316D8C0D839A04A019946696D0A6D4E5D6826C1034C37032A7EC7A7
+FA0AD9DA631B5D797321EED01639A7B792D4C0D876A653C04815A0516FA80B46
+39D5E386B1615206A08E4DD9BE00190C393960B470786B638C7B85FA9C166224
+CF
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -4074,6 +4933,7 @@ FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup
 end readonly def
 /Encoding 256 array
 0 1 255 {1 index exch /.notdef put} for
+dup 11 /ff put
 dup 12 /fi put
 dup 13 /fl put
 dup 39 /quoteright put
@@ -4362,369 +5222,379 @@ FCD42F1EED670768E05DD5DB5B945E6ADB0C8D23AF0A92F5072B8E68B8D125FD
 F9D5BAA0923E22CCC94861F1435B83062809E10D36AF5A15D4C162357C5BF9CE
 6BE96E61B0482F8FF93BF72B016A76562D641EAE89788F1C55B03F95BD2AE8F2
 C19F2DE157B8A61632AA0E5D3E2DE106EEBD7E137C7B040EA0DDF9BBA7571943
-7614A4E3996AE8A37E778AB1FBC4B5AA8C17E6D5FE6F89DD715FC0B672A261B5
-0B209BFD91324A90D56962EF5299055F7577B917B28AE2BF8E9F267DE2BD883F
-E87F8C18FE9E0918264D269A72DD46EF815CF944D6A4CFC288CD19C3E835C345
-1271001C8E602460F3A23208EF07B939430F97AA6FD2F57BA2A633A1703487C8
-1C0201F29E18B3A964354502B71DAB7A01261B9881FA8E8359A413560A2A6F2F
-E84045C864555DA842D409C812CAB68D23C950BF8A830D39022292668DC98687
-20145A0FE86EE4916C5D59B449D23598E5CDD25E7197BC9532538086E807DAA2
-9226D8C0B49213A6FC0BA05E48BF8CD75EFDD4BC15FB94863A7E5A220EA225F9
-5D6BE29EE42E1E44AAD54281A328F5B1ED3F55BF0BB21C822ECB02377B90AA41
-A1D09A91D2F0DEAC416ADB91E276DAC812EF16CD9EDFF448659A94C2B4B125F2
-01E9F8C0D2975F8D65C1F4B51072F6693CB1344028991075DFE7B9ED582B811F
-EC552878D762F5C068DB293F682311ABCB8C193C1D68E872654071E51421F17C
-6BFCFD6F7FDBE6E30A278823F1FEBEFCEB4C9ADF116BC95F6D44A41A15519F3F
-5D85EC2AFA18BDE94CFCCA3BE66F140B37084F75949EFF0C7677014134A1C6A5
-ACDFD480180E6D85CCE26ED8E8644FA850A2201F958F10A5244473E05A2A2600
-0FE5CE8A019FA746E14950ACEA2A70399900269E5D898907914A439A4A3683B2
-63E280E69B926BE43E1A773F0BDA1621AC68B261CA55D1CCEF4A46BF09C02CFC
-827C86FC60E3FAD2ADB2F5DF8E8C8CCA1B87150796A410A88C0CEDEBFDCD2006
-AE7BCC35CD30224F7D695F7DB9EC7ACCA5BEDE1B837920C7330061F6371071F3
-3DACFE1F6503DED0627475ED0F7AF8A9871F0C5664E0A9A227584317892433C5
-BD1C3A13653829D658E65363DA34A1D231C875BDC1573B95CD2ABBC6F0ECD3C3
-8F1B1653C98ED3C9B70A11009D3D5505F8AB84A8C85141FD7860FCE9F0C7DDCC
-338D3D30046CC283D62F245B85BBE2407486239925C08D1B8AB9B3DCBE4105D5
-6D9BBB5A84B0956B698D176CB462BC8427A3EC97928EE9BCE901F338D17030F8
-5BC4C51B8210156CD050D3A836864B08A0C16C68A82C6B14793876AAAB70D461
-9940D03381FEA543C62511E58EEEE2F0EE5DC052BDC6A2EBC56A2E14C8C132FD
-7AFC296D5B172F74B0A99A1030BB763B9EA2422766DEC7BDECEFC2C0686C168D
-B9265C7FBCE6570C27D14FE01BBF44655C22EE4F57A803B468DF9E7EA2A0539A
-D2A6A76D619B2B63D3145E925115F3420E6FD8BC6BA690F2CAB309CF46AED0BA
-38E0E306D8DDC05D5D4009BE34848FEA0015CCC2C12F102AEC9EDF5E09895042
-EE64E6C3131DA5F67EB1D9834B558D8477859474341D829D2AB708DA76DDFB2B
-CC8B812DA1B067A5210DF0C116999BF85FE5EE1D351C447CABE205F8452B0263
-E8A3EA482C9604BE266AE2292A6F1EA31C86D48867B2AC6A2866C32AC971F3BB
-4B88854388A2F7F52CE657366052152D0DDF96D56188CCAA91C185CD8462C428
-0AB85A1FCD3B95B3AB916D51690A34C2A713E9508B6346CC5FFEFECA048530F3
-054F3343D88244B34F77C287DCFEAB0AA224E070D4A447B5CC7B2CCF3571FDE3
-28124735DF2EABFBBF88EA47F9C1693E49E19CFF0E0F07C9A656203B9F4E7810
-1B0F27041812CF64E2518B63E0DC7A8D242FE8586ABF029A2ECBA05BCD0FABF2
-448CF312AB769D1396A9FEEFAAAB4E82099E8D7648557ACD53E6A64C2F946FB5
-3BE56D26D2EE0B43A3C067FFD08BEEF42133421E0C561A81B77927DEBACEB988
-227C0CC261D704CE49D0C50E1504CB9FF49A4CB68D3511DB9F3EA2643E3E7FB9
-BDDD87598BE708BD8C14B73AA7E2222508B34DB38FD5C67362D185ED29A43A64
-075177D0D02E2E3DDF0C4ECAC06B99B20C73E610949CCCE5FDF5FEA152E14AC1
-3812BD2446EE11D7B4E1A9308463E804D2F83EB6A1D2B555B41D431A07C5104B
-3991B63325C7DCD0C3807EF96440E5FFF71EF3C3ABD433B03A9241FBE986E140
-FF55448DD9E015E69105F70B348C2569301222D94497268FE84843282E176329
-379A8CD12D749FEABFBC200E3999A9E34C6177C65A30F125B9F2CF6C33F84FF5
-D871216C0D8976A391630D8E325A81372E9EBCAE12312CC924BA7B08472C6F77
-6399BB1829E2392A3122478C5E79659279F8AA93DAA3E2669713D1C047012200
-EF165C559B2E58FF97D7A6BC7CF7B35F2451AF2BC6D5A6FE123A32DF7E9648E6
-13BB7C02F7C95FF18D804951D3A2522D7BFE911EC5CD0720FE71D67759247463
-848FCDBBB6AB1C2D00FC20118DBDC8D51E18841EF1615A12B02C2EA3E70E93C9
-3871C1496F54DBA619F8B00093AD3CBEFA24AD71630BEB55B52AF9143D7FD83B
-9B6841223874CCA4897AC4FF10A80A99C104BD5F3D489555BE91FE175ED2FA8B
-A443629FA0376CF616CDA92CDABB35AD967FF99484624D3735869809091E764B
-7860FAE50760AF81AD92705B8373CFE34F99734949D01DCCCED2B146158EF372
-5E5D5804C10F6259096A942F4EF7E621B772DFE3E5699525D731F9364DBE5E68
-8CD9F29C38A32B621D478ED99071F0464E8FD82C5F9257126750E827CA34C552
-EDBC21184F102A3E796F03957F76D63D8BE19D34D90709EACEB5AC11629A355A
-119BA608B118E790B1E98AD7BA050766F554C626F81C419135FBAFB72CBC6413
-C40C671BBCCFCA24011D1A8ECBCF913E1CCEEAB6FA7561446A8ED3DE48250C5A
-2AF29CEBAE14A0926947EC09AF6A640BFE79884EE9A3CF55E71457B1EA4079CB
-126673F73D01E2144A3CBD92314F114B90161B441627FE83A80C4E3E8E0670E8
-A045A3BD752B10439B1C9A220A7740167FD7EBE8C12010F9F49CE19169F189B5
-0238B7458B7B97BBF56E85541BEB4AF08EAA200EE32DCBCC4E6B16A1B213DAA0
-4EDFDD84E8E716A85EA2DA0015DE0B584259C422CCA32938BAE9B54FA3ADF3AE
-433E2902C0458459DCB3CD7112622DA499E905931C692B643BA2CFCA9ACD9F33
-6E98E9C8CBF8B273FE6027D1C6C3FDD2F735C78C7FC5D968BF892EFA6AFBE907
-8CC5CF0B9BEF84A4207BFD0B0302E6F31B8E2634C94ECCE237A155932C1FB94E
-608FADA628342E7F2E5C7B49EFA444E909EE696D723153037F2FEF4DC2A42431
-A9B1F4B3731230AB756A222A5B5C3C8A8F0DD747FE00FAE3F656ACB82E8DD146
-41F2173CE6DA347B3308A44EF3DC14CA2FE605C277A4C321A89838F45252DEAC
-B919EFC4BC1404D741DE608E10C7F749B315EA67649E904A98297BFE74F6043F
-14BE7E1C645248BF400F0EFD5AFFD588AD6313935F6DDB24316FE776B1F75457
-40AA2E0598F20527E880103F19BA70CC4CF147C754DEEFAD387FEC004DB1AB30
-6967FD134DE472429E98DCC86FB8E3F18549F2BB5795DFECEBA90662E0B49B25
-72E4CDF1C6E5BAA0FDC5B6EF203B536E26681F01C193BA4B0A7563887390345E
-3BD306FA416C49C4956C859AA8F009F827F409EF1C5AE4743E9205615BB3F907
-56AB9787B3082CFF83C63B1BA4628CA0ED43A51FF6946A0ED26B99A4240D25DB
-B81BF1D20132F1B7BFCE5C3114E51DA98981DD36E908A0EA58DC026B6DE3A78D
-3A2903D67BD2C80F733B2731CB97C8C3B2C2350E764D7C35A613965390A22C45
-530AD70630F7482BA3D950A89FDE50576DE43019D74111FEF6B222FE28A575A0
-741D405BAB59F4E7CE39BDF3D25F238367CD3D4BC64CE94109256A271A139F31
-3B71C804E8BF4C1F8A1D09CD21B91A6823E022A8D9123B69B4E88B253979CFA6
-07026DA30123BE62F456D313B8D1D45E58C005E4F1299A94D560B8AC5B41C118
-7B4BF71FDD73F080078F2B3C79CFC6FA86ADD7B24F09528EC964482A4F274388
-24588E351EAD42A38D8D0654279338D86B5802FA1EF478B7A50F012E88C350C0
-DFD4FCB72F38791BCC49A12CE6B4FB8E35408783B9D29A87B000A2A274AE55B8
-B8737B886A46E47E08DEF79418713BDD412B74AE87B7AEE364F1A7FFDD9DCC7F
-2BC930C8199CE4B0FB302F979A62EC6F3D46D73346A843C78C7BEF33D59B94E7
-5E278FA03BE3D544526A13EA3B97539B25F9EBD9AC6A04EF6827667621429FD5
-EA05C426F5B87374ED7465E2A68BC69C5B2E8B4C2ADFB1C8FD2F18A3820747BF
-F8DF2540CC605A36399AC75ACFC1E5AAEA6CC61BCD4C3065CE700FC310465512
-F9E0E33693424CEC9375E9A8192DD0A4A01130D8A64F0A4BDBAE250467C5D269
-7F4BAF61516F52BC64D64235A4FD025CC6F87E8193F20CEFD2066110832112A7
-92D801946B5126F0D23FF1E1A435F35A26331501646457A4B0850BF338A403AD
-147F007B7D8D3DE9307EE2B0074701E3D7E3727F00C482CBBC9AD167A9F990B5
-0C28CA1E7B6E6A209FF324BB280DA5D4537FE58B32B99C820DC48CA5A83AF3EC
-4A89D5401798BEE3FB6C7EAACD8A785AD9894F007923DE2197B8851D14AE5097
-A1D20DA64618056D5B3981FC2CF4C119D65C581B8E1C19F77F6B8D4DEE07DDEB
-015F7597063EDAB463C4B6C355A4DD27A8ABEA881E08533C4A45B98D6B36A114
-402A32DF4B1A0551ADDC6D4112A2C40DA9C1B396BEFBA11EE7C4922B61DFA054
-373016A70D6B3B4F8D6EA15F4DBCE8968B7E17761D32D380D3E9212CDBDEB42A
-670AB034264E613A52702383E109B9BC339C2FA75F8750A4AA08F780B523520D
-9F0E126EC16C48B82C1005271A1CFFE7CF9F8DC3E65D434520160139E2A1A1BC
-BD5050A87B078D369379177F88DD6526DCCADE58C3DBCA86C7A5D90A28EE0AEB
-CE1C529A39C6A2A9BA94A898DEF1432DBC53D463D887ED6D00AADFB6D86F35DC
-83655B57519F1B05A8E5C032FE795CBE0F1830973705AC42627505FB2679B88D
-F2F521B6296F0BAED3B17A5835C8356207F67B38E11BA6C42EC277AE70E77054
-F5C00969D4E2A16863A3C923E14741C086DB2BBF24D9AC83428CDB5C32C57FAD
-11FD2346CE9207F10AB1F2A3AF31B5F728F814D684521790376159C52FF90975
-100D53E3A652381102D624B41A13691732941994C8DBBD70DE22373ABF0809CB
-5E74CD1B627CEE1DD47F91B06241704F9684F76B145D526849E25AD1134E6FB8
-56DD5A175DA563710C298830B593BEF7C1D2B06B33C79633B769376CFB2440DF
-68DB4600136596D9DACAB2D107A16B31075D1F49C643C19F7C9B32ED1E3F5760
-B877A993BC5F3552A08F9E4180B4099F7FB4A665B1502256B8C302CF560C26FF
-798F46C7FE84EF4F6551A95B065D2B981C356B0F37D5406A9E69ADB829DED3DC
-21C7F1773E0B4D7F8A82CD95938E3E3A72331E61B630431419B0FB9F9BB8ED80
-C9F581A60CAE69232F516CCDAD6E9833F14A2B2AC26E1C6BF615374C11549012
-966B8FECC760A6AB6EDC16D33302549B91B9BB5F9D1A52EE17D98240476EFF5E
-ECB417D2A35B4887A700FC89BF1B50777CC81FC490E7615CD8AAC23A3AEE0A01
-8E9E25C64A55F7444772D6D90378D693EBD1616F97EFE8B40D25218102AF5D3B
-653F649A09EE33AEA7F97DF457AF628D2ED6EADAC5E62E5D7FC00B4B40A7C504
-6A2264CBCAD8574DE57204C5B68EAF74B485F752CAE1CFB16972993BF21DA939
-353B3B66D289F29181FB3BF2EAD5221959542F3E74E9FCE961B335B1A40B2605
-DCB1749AA5D1AF0CD86BF1A7AC8C7772DB2510B10BE58B0B563CA0E5D340BEC3
-641F007F1CE6E410235398259D73491D13364F5898CB0BE1D33832F2A9FA4DF3
-E2AC9F5E23A2646C6A0407465530172770DE7E5EFE6664BC5A1B937E6E4B5825
-7166AA38832228AB971523EF92AC766AA975D92BC41AF8E88C66B14C9E77F4E6
-26E007DBD491CD7DE7A82251315202EF921AA55036E7A45BEDE226DB21753ABB
-4D1CEAD644364FC91AC88F98EED7E1B17E54B0F9D1579317B2ADECEFE5A08634
-6325CCC9778E8FE2B2340DEABE68E10631912B7EE82B99D4D42118913B2DDA36
-0F13E55A4EB5828C3E3746420D1B89124CA36421BC848131958436C73FD7125E
-24908D1D1A17E48096AF7F95E508953AEA2CA4B638A842567CE31261F01B6565
-A9254910B706F07511FAFA5746270C444CC160A3688A272E7A2B709E475CA685
-B479EE6984D535CE3B6573E29BFB93D73D0A825A7E23E54FAB35543AF9606B97
-3457E51381939AD7DBCFAA20EEF9C33B61D4CBA40D94D5D55C28CC9663BD80E6
-3498DA28B302C1A992862E13DC0A9C2903309E5F9C42180BD56F23FC19339D98
-AF6FC30F03F080025F4AFD5BC772A7E0B9DD9D5380C60D20454504F02A1600AC
-5EBF3FCA62C6A82D18DC8D7CDD718B8BCF999C814D6B293D8DD861E7D375BFE2
-74EFBD78008B0695E30DF60D235EF24312346CFF681D21116D44E95EFE01CA59
-65C6E5295BDB379B2A89F39FCEF9E8525B6B09AABE46658492EB8BC9F340F64C
-DED2E2710C7FEFF2AF42608D32B0E9EC290A54CB15F3532D1AAE2E7A2BCB405F
-D05B21C2684ED1FDED3AE50955E331235FB590ADF80A8AA3021D89BD1A27A1F5
-5706F1A4352D0FBE9C829EDCD8719A53D6C1DDEDE76289F0079A68E14D85BDFE
-E241A09BEE8990763508F996E9CBBFD9BCE4FE629C5600F05DE255191C9146DF
-979A156899171E9A05B294BDF6F0445F2A528D7F312C2081E7F487F8B08CB19B
-B5C8D578169AE46AD4998C2D6143E3E8DD95F15A3313E18E7290843B8AC27EFD
-EA15A9237A19CB264A71F4F114F186CC2102AD13BA3A779073866DAEAA53D1D8
-0A327D1E8BB039857947F67DB77D2D54E5AEACA20C14F68F6E7A32992417EB1B
-E0BB16C6B05B69CA43418912627E2091CE913B06DF232310B1D34A73F5DAC8BA
-DCB4916BFE9B548446109974F7E15788242B0F82BAED932947D4836ECC48CCAE
-DEA585E5849B01C28F1E98CEB344B77148B4E84724A91ACC83453FAB3007C097
-6918D763943A6AE28D994ECDC4CB71D08C062ABFD54ECFB9EC6D7A001ACE3A69
-C59B716E5F5EC6C663AD377F8AE0DCC60BAFB1DEA00F9E56106C2689F87B0770
-AAC389C75128FCC8CFB5BAABB3FC50E29C7162DB9D179E50F73057496F24A562
-70FB134932B695403F6EAFBCE58D61AA319D7E85EB8FF83CF0356415D5EB6F81
-E04143FCDBA8BF4660F14531492A7A7B824ACB758A80597D236AC7D3BED7BD42
-DDF446110BCB311BED56AC9FBB9BF6FBD49BB6BFA94E59538C11EAB5CD6B525E
-EE1A49F8AA90CBEE1D3584853286A2807B9D1F9461F5954A45B52718E56EBBA3
-5C44A1D6CB355BAED35BB83617E52B4EFF98976EFE26B76E766A456F93E1D0BD
-36B12367C713A7D214CE9F71D1852390C8A100A8DEA86D42AF9FE94095814917
-6FF69C94F042C1EDB09B08725481AE5AF84068BF62EF5AA2E888E571C226BB65
-AB69241A51F584C9B105A33CC049130D2B27EF741AD64CBBEC6A6E69C50F0C31
-7102434B6954AC81514D68E456AFBB373F28D90DCA9DF368D4024C161A2A826B
-A4AF6664511AE872CABB6CF2D25C6E3305270D22950BB33625E56563D48D70E3
-10BAE4C45944D6702D115D2EA0C3304BC3BC19A1A016669B53D36A0DF71BEC28
-A3861E0026476CE50E1A297165D096819A3C9529A49EA2942344B4EC4FDE3633
-5099442931D7FCFCFE84AE66C3E2B3E98FE9065C23414D1F7DCC59C09CCB3090
-E7C2276B2A7957F8FA30B30A35C39F94F87D22AEAB4191CE3FD878DA12657063
-3F184D00C87914C5CB8EBC18A1B602CBFBCA7EB71E1C7114CA0B66789E8C54F5
-62DC9A341B51A7A46B4ACBC0D6620EE48E62EBC258535B7D1AAA1C27519D9AD2
-234875528A00A128A1CE3965BF4B160357284E94C66C40238A172D5B153441F9
-5B5D629DDB095298D82D7A688A9080A1F9931DD0C7CBD8E516527AF3FDB2EAAB
-296BEDB39CAC250954D67B26918CE6F02026044071C7FCFF4492A8629D20B679
-A09AEB0B3D59C396FAA69A022DE43B16368AC5160908FA3AA93A437BD5C674AB
-580BB28971643EA16E097C120C3AFBDCECE15CB97691BE1150ECAAF0FBF34D1C
-B82A390BC796D064584B4B46201B37BD6462688D71085FF2CA95D960C5D92A78
-D6D342825D91CB87EBC03386ED9AAD57FE67296DC02F350FD8DB843F51508187
-23E7C81D84BD4398E1A6A1122D8C6760F493CF526766C20505E0B74CC0B01B12
-A74794E9A265ED5E0A19342BED6143B8C47A443708EB7E5F1AA888E12C939E2E
-64FBC2847C079510A1B38A2E526B5BDF2E8631FA3695CE8231DE90593D1C828C
-575B5BE18F4D9F081DBEA91A10F8BE198DD630272361C1EE1EB7F5F87E9F5733
-EDBDF78F8FD7DAA5F5750E3C660D2C9EF29E36161237B881860E7EE6F7C168E5
-E435043FE03050AC87509E16BE2926899CC87566DB827C66D4DDAE5C9C8F4464
-2897C94292965D51D5654837D1CE7A8F602385FDDD51E1DD81FFAC8DB53D7E70
-64E2181ECCA164C2F869EF546155F23B572A9A4C14F38F2402BAE6584B8DD212
-7ACA8327E633522ABE0D7AD7D528062A32BF505C28ADCBB7DB49BD9BDABB8052
-C1036B9C31C2CDEFB20F13A6B549DA7F907CAC2AB4DA639C86E7514C4F67B906
-C80147A47828924F8FA6EA89EFAFC40DEFE655F5ABBD196C5D6A5212F691A592
-D78EFB056D85037DECA0F0557D701D74FB88B3170A0CFD8DAEC5FFEF7BAE1C49
-EB204A618053F4A9BAC60CC7B6104040FCB3A72AA3C52FCC9B8C45F38D0124BD
-17CFEF1258339F47C6C005CE38BD1FA735863BFA1AB520DB26EEE35DECDFECE2
-5439587E79D5FB5584E61A9CE395B9E0274E99F7E9A7342822CB183B6B6F757E
-A7BE4B574B39F578FAC8A012FEDA8B30422A94489C5221E5977C3D5050457D99
-78BCB7E91D7B57BEEF30A68ECFF69CA714D461234A8FD7D2CE6BF58AAD227DB4
-A7CD242DDAEF268112A933E35F8DD2BA481B02B60417E2206D00D8FF0BD82932
-456A1079BF2CA55EF83D0E351C7E602125339651CB9C547935C7CC46FCE7CFF4
-41D2347E2E16986C9F6A657245E8B5D157522E0BF97CB1B4B592DF2CDB05E1CD
-3BBBDEC5A5610C95284E883395AA40521897D0355CCDA8DA3B625459ACE133FD
-70A25C2638A40935380F504D3F9679561BE76BC8BFDF2C306F0E04B1F9C466E9
-B1C87B6E0D3F15E8C88FEAC643740A89964ECE958C409D8605352366BB2EA752
-B85FA80833612329F06B2833CF0B088136DA1409CC0B0CEAAD48EBD5AF4739A0
-9D5702FA8567F76750AA5D221D604FEB4213E9711005CA90D6A7C5C410AFBB4D
-887D58CCD239461CD7F37485CEF35A9C9A379C8672ABE9E3C0748B5C9CE42E01
-D4FEF4CB7ACA013B48F3BE44BC449814F276F811EFE0EDF115C227839A0F1E16
-3B183CDD264D4FD7526974160DF30D8ACFBFFF8CD3A10865E965C3D7C4B0FC68
-BC2C7DC4AA0B54E41528F818163FB94727CE6757F56A6E7DED8E953D5D4E22D7
-8A42EDF6F0F75009D8B234F69D5348F19725A6C2A560222567CC185DD6595178
-ED909CA3D205AFA877CAFE972DC7D4ACFEA4C278D101734F48E64F852C442BA8
-1CFF0503FB516E91B3D48F5473C78AD42CD9944D1F0B831C8C0C476F6BF8B63C
-A0641B9F632E61077945639DA96CF53D4929FF971BE990862BA277DDDD742084
-DB213D920F19E68866CCBDC4D4A6BEB1AF4251E3A4FFA3580C4F5C3CE73FB506
-572CF4DA0211114DD03B672BA9FF84C0050E0EF2030DE246DDE90E0ACDF69E82
-CB76C0ACD208FF905FFAEE68D7C3A7B7B6772B5D90CC0B6C5264DB4EEF8129DC
-BEB3BA5535049C7DE24E0AD2AD8FF41A714168BA2364DF0DD82EC729A6630BD5
-1F372DB34BE8965378E3FCD318946E413D4AF843CFA73BF4EABCAFC586CA79F0
-3649CD847CD1721DEF363B65AB01D981556B15C8600EB9B00C53EE690C64E613
-0878AB6359885E1CE64F32330AF10550EAE30D976AFB9347CB277F7041F2F902
-0C75B36FDF08E123CDE2E7105AAA6DE9D74054237DA5BECFEF87C09B3766D0A8
-C710260E55D336C60B284973DB7AF5E5C32A127C4692419ECD0FD000AFEB8E3C
-3133CAACC6F42BEC496AD329F192A543E9BDCAA7BD7DF8745AC7E565790FE739
-C60A679B7D6E9C29A0B229BEEE05F457EC16E1E0DD785FEFEC49ED39E39A3A5F
-6CA4D4096F80B49CA3444C0D901CC969762B8128693EFDA4BD2A000E3E14E043
-40AF00BCB0E63C314A398C32A4D308BE7C3A12CABCD13FB7043D6E2FB63C9684
-0103BC3D9BE5A53B4A8805CC2E546B3BB23F0A43EB413687BA9F2E7DE57F3562
-5FCEDEF7C053B7BBD13896EF2A74A365D24AA9E73257D9CAD0185C388742F30F
-57D813DC73F85D08C9C5F60F5F76127B438ACEA9CCFE8DEBA6FB4C125451E68E
-85AE5602DAFF8EB98F123A5D4543E3933FA88C47348F2CD8392819DC9B35C236
-52C171B9A5026BA386C299005193FF5F488AD1A82A5BAA0E7CEB4C7CEBECE5FB
-0B5940BE5562A5A053B6E3D5C19371E2BD7E859748E5A5B39333E4CF9815498F
-02531112372D9E8F7B4B4A84AB2A334B71879077F329C7D8C20B7AF26B6D9EB9
-C04EB238FFC3AC2D3772DFF9A587A9DC9BBA73CC6C9A5097CFFC7F80188BE5EC
-C6BC26DC1B8FA3FE141E21B2D77598BB2BCC9BA167F53D74EF92C1FA88D193EC
-A85509E22F94B25CD24DB7D2348131A5E7843EC8E4ACDEA7281154B22F516807
-B398871E98E10E91CC453D085C385E22A9636C1175259776D369A63966462D28
-6C8E1E9DE4C76F8FA523A70943F8C73EF646063B48C83C5D0209DAD3A19AF326
-9D7283703A807CCF9586155A6091FDDC1CE3870E5FFD6A0CB80E91092B6591FA
-51DAE09CEA6FDF526F63230EACB4C35F6FC174E64B2510EB5CC07CD313A25F3A
-F27F94297128EB35C1B220627E44BE7066ABEDF864ABAB6FAEF19B79D411B5AA
-71FF494ED0DD5F22001EA5D806AC6F4B66B71BAADCDDDF6EDD4B141F4D66EC1B
-794326F8BBBFCCAA9904EB0CDD0F4AF326D546F2A3C58F4F013D8AC654FA99E2
-EE318B8D4D83BB10C49324EB0A09E06228DA07099FF1BA8BADC8B8EE8CF98405
-121A7A5A7BEAB0D625692F18079966388E0016C4117E9E528ECBFF908CA9CFDC
-D57F80E53AD2F3AF92F73041D849D7D4E4CB6317CD6E1C8A0F2E47E71D82DF85
-ED31469E473F59CBEA1E34987ABE7DF66D7655B5337B0CFF584E8DC310434A68
-925D830E1CD0B11033A7767D669E9A7C5CBF46E8847BA55B5E8779A393DA542B
-7A8986D10C7F883D86D731269B0E031294CD6CE22C851C4A56202D31D76BA298
-8973D38A89BAF9A7DA9EA8E941214779D02F3C8E4289EDAFFA93EF2EFA9E692B
-2493BF910F5FFA5B7481050ED924A1BA3A75DD9CA7E81A4626CBA29560BA3645
-44503E0A23B972FB0B70B267CCFA8F651AC0AE07A6CDC76197E1BB08D5203A83
-3BAFDBB479661D892E37920FA83AAB1A99175160C8AC4C1D584AF1EA93377378
-39E196FAD1D49B26F5AC07367F431EBC02DF6D289F94F4BC79D9CC7BE09109AB
-A3E88813692DAE4304EDF43D1AA068A23D897E9296A26562A68EA086A7937E64
-CAFFA19A94A4452BFDC5174652FB3E1201A797C0375CB846E620C2DC1DB94102
-FB88F631FC9286DEC8A4796DDD8A7ECC0D1D9FBF4BF11A7E0FDDFAB284853230
-34C6D609F130AB50CDC8989A70394CAFD3514CF0C4225A373FE6059B1C6256A5
-A9079AEAD9C62D89DE1EB34EEE8AC26729C6336F15C29954440C62A04F4004DF
-FBA31B0D958FDAD63EE796EC729C035BB68D430FFE068B31B5C923A9A610D208
-80340D5BD2D4C3633EE430EC0E09603A4B55959A77555E286DEFE9D731834F3C
-7C45FDC4EEE21F48520121701FD9CFE5CE84DC6975DBD59AD53F9F2110AE7CF9
-E01A6AA552202ABE9566E85E73E4D1774B5B8CE804FF5E0ECB3E0E18A41E79D0
-49AFBCF651BE1ED1BD0B0E48F67698AF4023AB1C1FF2A55302F45D52BBB1E31F
-72DCC6FB83662C70CB6BDB34B28049E472D9FBAC3C56B3488CBDB5E31C97174C
-8AE0AB3479F76B4BC8C4993E6781C4350A43236A987241E3EE006992523E6112
-2CA0C4B636E819078B1C4A6730A7F857E81AFA3B13B49B3E833DD7EF6D80712F
-D06B16DE6065C0531AC09D024002278D7A039FA7C01FEA5A75D7D10FF9EE6241
-53FB2CF044B6C3095F55D613276931CC66D1D6DA61CD2D13345C2CB85967C8D6
-22EC950EFE469E1425EE5BA899652351085CC4D081F6174DC98B0585EEA964C3
-AF13ABE9C41CCBB8CBD6FBEA0CD3638B4FD695C577B66EF623BF2DB28A4DE15F
-2B46AC36DD638C9C7AB675CE9DA34DA3AF425E46AA83A2B126A6AB3045061B0C
-AF2A20CDF37DC0FA7E9650BA57DC1A7DA53B0E4C253AB59745E9B0F1BD9F8471
-472A79C80C17A4AD82DCFAC153CA8349B2329C5A79E9F236E8A41206FBB7F705
-FF7F989F9DE8A1E719BCEDCED16922758DB0EAEE41200771801557B34800D32E
-04E0EDBEF468862E63446A53580C4F2E45A406FD8B908C44CF3587D6CCBEB591
-EA55C966DFBACE3BD02B5ADA20F368C19A806D243DDDAC2C2B6AC21A6B75477C
-3B7BE264BDE3D3F016917D661A56BAA1551B6D1D034DB6065E476FE03E368AC9
-BF5F68CA70A7E3B757A813DE17846CF67110E4ADF8BB137BBCA6A856F400D024
-6BD685A8CFE3074B89F94BB5DE82A8D4565FDC8BF3C084EAE14A5959E028467A
-A66ED3321686460D22FC7B35A615314E3CFC578BB26ADC034EAF6EE5EA4D4A67
-FF76A35C1BCB73F28CF9C1728DB63CB0E74C994ACC138E471C183CB1AC583421
-FBF1246C9C4491B0F24235C62BD6EA5248B95786AEAF2CC249274F67364874AD
-86BDBAF847A657EE26592FA0F1FC611C6A693A492DAE8CDDF71695D38203A03A
-8D231E44650E97EFAEECCAFB88FF44C967575A85EC6215E0B1DEFDCF3A9369AE
-BAD9CB84F7ECD732DCB0591A110456CD5A9B881F4208FBF0588DC7488E560D04
-4EB0B9115DE9004BE5BEEB6CDF985BA2BF6107481206DFFA2A09F66E59B4104C
-E95A4B072F2AF661FA1A47848021F66640DEBDACC45D47A8B2FA48F0EDE63DC5
-D2AF1C523284B3FADEF0616693494FF7C39D53A228FDF45F8A1543B1CF32DEC4
-DDC3821243013AA096EC81009E7FCF50323769505E1162C81D59CD6EBAC01C9E
-8F84CB7209F0068C45A6B99E2A2FDABE652AFF00F1D44AA1252CCEEA8227E31D
-F1338D916B954DEDEF57A93EFF1AA38234DB256FC82C652608F73F3D132F4D86
-927F93FB377B26AEC24363013DB030BD41B996C790840BD8F8EB5693DB75D036
-02D96DB78C9D38E7EC11825A01384ECFBEE8A3317BFDE7E54689788FC2CFC7D4
-3321D750F5EFEEF8BD33C1D556D869B1117334A445672B07836FA772B33498BF
-502346F53418A79BB5B25579D96C78CADAC309D3EA7C4E2FF936BDBFA71EDB0C
-13E4FE4BE3189FAB47CCCDBD6F553C6FA47433CC9BCBB50508AFD637B81E2D4A
-50454A664148E559327CBD2E0028F647CFD0D8FF660C59E8839E2E7197257944
-760EFCF0530E683A96AE49D8D9238BCED1A7A4DB9301752F5E881EE9C683D04D
-119D9710C78F1B0B8AF61C65BEACEEDC2AEF72C5336ED3282CD93B56A0902FFB
-EEC993D36545A0142329C5B1133C9CD9AABA98D9C9B558E3FCB2D9A183B6646E
-EA220E273BF80B50D34CBD2FD14A6BB78ADFD2F4CA8352A13B2DF72563B7EDD9
-3479CC71567C6ACD624276CEA8C8843D48349883723A1A0A9433ABA46DAC2B91
-D891F183D9530BCEBAEC4E81952AD28543AEC43E0E7AE93F6EDF56EBFA9CBEF8
-640CA7A4544E38AE658AC97C7555B20D606C8962EA2E19F454FFCA2DAB19C719
-C2D853B6D8422D6994146041F145EBA0B462CD336600389EA2B248B844514BE6
-2FC98AD6EAA19C996957B2B5F2E3D3539F66C69A7CC8E133A448A4B38E31A82B
-3C6C2E4D623D5698123E1B1E69EA12DC42A905CE5CDC514505A8BFED5CD5C35C
-CFBDCBCF3CDD7E0EDDBB68101EC56D7DE6F2B220696B6AF19BACF5DE9334DD2D
-FCF65D911A35FA2048888225C383859D73F4DE9BDBB9EDD08329ACF5FAEBC44F
-25CE8AF0ACC278647BEF88C010572541E3822C2EA54149484C8B64E36CC821F1
-F2430A2CD44F6ACA8A62A53FF7BC94DACEF1EA33D588FE6C5794BDEE3E08485E
-E89669A99A3165F2049E28EA8C6D05C267F37EE4C98CCF6CE226E3E8430345D1
-8EE5B7DBEA6948B7DD76EE9BB1CD5E3AAEF18286EE8C270016573FC46669239A
-3600A9916D08C014E23F120F1ED62DB787CD1830AA6F9CB90FBE36DDD6F196E7
-31BEB0B869E0C3C03F99FE5D59163AB78EA7CFF86337D6F1401CC1CF6EC47179
-B1A0A8F0B52A682AFF439486E10152BC95B099F574FDB2889457B81709D7510C
-4074A55EE2A60A948E2350C720AD875D34BD0723B8739A3D89533DF8FF8EC176
-9C22E7EE765968EDE59AAA056A1EA077F78AFF720924EAD05302ABFC1154DA66
-F0FC89E95A78F1E13AB55B42676E6A963C90E65D882618E1B65AD56FAFCDB2BF
-6F97C116C8D143C52D7983F8DEBD413F235C953C177A592D38697DCD4BB1118A
-C0FA784299A924C8AD3B715B04EE93C636A8F902D375AABC36C3E1F7E6C61566
-6EBF0547CD351333B74087E9888EA3A9CA037C47050BB672FCDA06EB47D42D71
-D63A3E0C375B6CC5D1D9AC38E6558603CB75D6D6DD7BD6493846559EE443F8E8
-927DCC4A3AD28942A7F92E13F994E031B6BC7A27A268331A0BFF44738ABC02E1
-0F727704D46BF2BA6A826F7DF1BF5DB81AB399B57517D772340B77E7B6488E3E
-A271D38614763D0A8F910A4B440E30A3D2C29AA8BA12B65D1A3587DCCC405B17
-63D6522D775FADD5E10F644F046E2F5F5DDC19D39BA7F43B041827E50FDB4D9A
-71FBBE0C473996BB4EFA33DD5D4ED1B895137C24D0CF12248D218C815BAED0F4
-5B7EE65CAA37C270C818272F18F2A51B7D2EB90E99EA8841B7C2502AB7857D25
-2BD4BF52EF65DE314831B6802A90F039C31127F4F01106703D6FE55799CAF0FD
-9C45B2542E9B4A004EE55D004A4007C1260162E58FB514F8CDCC388C414801CB
-48972C196E0CC5656DC84426DD1886C0C8A35DB35507475DF3C233C29CC69DF2
-31E1C42B9988CFEECA4BC649AE806372D861F37106CB8B78BB74B3D1A43AA96B
-8216AD9549B144BC1815C3E00CD14A421EACE056AF506F915C40B63FFBEBB49C
-8D96689DB4BA73CFD5965EDB70E82536A6A420DC28815AAD7ED050190269B816
-B760A76E929C9161D7C2E13A5F9862CBA2C51CD80DD94D99CE92525F9B4A1EB7
-DF07EF66E66E0AEF0FBE40C939EAC5DAA0872FED1A24048A92AABAD65070A572
-B5440FB45788C0376681FC0A516F3FA64725778C101F4B7D6C22E746B3F0808D
-05040BCF1857160F0DEEEC375956D752C99C5CD6919ADF2E99320F1E6408D585
-D1A1C9C0E3440BF8A3E2F5814DE796F80E5E0C67B8D166D82EB5B36DC7F62580
-4484CF18BEC3CA95F021EB7793486098F10B15A9F801644E3552912872AFEE52
-9DAD3DA311EAAC4A9E6F4616E86095B25A7265B1F292F481CC92E987E6F7B9DF
-2FA1D28AA87A13A0215075EF37CCFD8A2230119FAADAED96F4F8AC1CC88ED031
-07965179412B8C0F08E9D2F83A2C69815312CF72FEC128E493D0A1223E87E47F
-590C9FC4BF9A869934BD985F09707B5701D2E267C54F233E4BDAA5C0E88E4679
-6CBB5D77C6687A39C0C21A518724214349EBC737F886E871CF213F524A07A574
-37782B74497CF60867DB2A044AF3334742F1F478585DDF9C210F7F1E29D633C0
-5435B896D5A6F29AE0B4A91BC01E085941BB6695A5D311706C456422A374C5EB
-AAD5E5C6AACF04BEE106927484364C396180449754D8C21B517ED49DDE5AAE02
-F6321445BFA114D373F017341B36865666737E70F464BE4E5358F803C6D3F25D
-94DCEE5839396DCFE1A5D73E64A6E9F1C4CE7258E6AF028CE7BB7870821E2C4A
-8B96ED5EDC9B5C2918F006B6B160F267A961A49DF8ED39EDE58D8AF4D6DAFF77
-0A09AFCFD831CFC20B712825A46A68EBBA09826EEE7C1F713884551C4455E2E1
-BB3A326CA86A645D275DAAC0C994BCC2FE558C4030CC035F2716805400A559EE
-060565A1ACFBC16BE33C6E9545DF6A0FC232ABDB06467F46CAB4AC19229049F7
-D9DB84DA846A74C9E29D29FCB4600EFBF6F7ACE48B96E9AF96D2D4DFEDCF83E9
-59F95895C58025E4D97E2E964133D71EC3923C287D8D463756909E7EDCC89CD0
-6D7998A76AC3A7B4970D0A7EBF2D24A342CF097D2B713AAE47DE38CED87E5B8A
-3F8CE46B789B0C25F30EAA7C3757B0910CDB977B191A1D84B759461346AC4C31
-211494BAF2BB3537D30F47BB696AFECB3EF41B13A992D787EBA896DCCB86D2C9
-DDCC09941CC701F062B50EFF3ECCCEDBD2906BEBD1D10793B8CB450981EFF271
-120EFEF13DA27400ADED3C08481D1125D0DF9AB301A3E73E8ED2A5568F89F32E
-AD
+7614A4E3996AE8A37E778AB1FBC4B5AA8C17E6D5FE6F89DD715E318DE7960A44
+6D3FAF39EF480EEF5158353398845927E7827EBACF32C5C5A258F7DDDF1A6AFB
+0DCB1F874FF45BEB7A62A7170ED35AF47FF40F2DD9A0FB8BDB425AB68A15CEA5
+80AAF73DE0E61F81624A72D66FA296C5FAA1B2338CDD470073B72B86C28374E7
+A64F9A282A4ACAB3A68E50342FAA4889D91140EB2BA213882C16DC14FA33839D
+0171F404B1E692C8BB46E5AEBFABD7C25F459C0D48EB4273434E1491E2CA5D6A
+9ABDCA5812E1C05EDEE8BAFB471A605FCC6F97E32F5562869F94087926DB05D3
+B4E64B996EA8F2D9F817BBF689BD6050696E15D36CE6CED37BFC003D0B379F5B
+0C32F554B211852798BC84A03445110C22C871F05DB9496FD76877A48E9BD082
+6047CE7AE778C99ED02CAB9F25E4247B2D90D67E2E74D5FCB65496C608EF1460
+C97D9B3936133284D6E5955E95F8B5B7329EE2BAC4A52742E257727D08C9F01E
+9FBB8EC335DDF99A6451E79037910862D67D0FED915EB036C6EE54B099B2911F
+2E61E587952AEB3DC6CFCD46FC94511887FFC52CBCD6B04624ED3BE8E62A7510
+072368227E1F710A5080B0434F4C14C37B7BD8C605FB76BE15A265993EE9E96A
+6C354C2F69BD4A4F83AE7254DD68A24F0453F82B2153E355C92A12165564ACEA
+88E9B1FFE03BA91821F4EB6EF81FAAB14489ACD4BC1D2ED58EEEE1C3E796699A
+FE9A2E7617416CE686FB69535426407C38A7E99850795182825587EA9365ED78
+B47D3E218114BF742957B7D71337D11C9BAD37916CD8DE8C8124A2F69AA29555
+3045F5DC4CCBD69DE8141234148AD0ED9C6A72A2BBEF6F2A96FB8DCB3D493F29
+17E7143C20321E542E9210692448F5A30BF0619972449BF4EFBD92C1D24D7CEB
+8A69D8A88CF0104F469A3A965B1DF1531798E098D0B235A5D4B2F09E339EADFA
+5704BBEB464F4C7890DF8420A5899946DFDDCDBE2C8D9A64C7BDDED28F807FB5
+E51E4DD6A80DB02835A549A778E4117A9639949EF2826F9DC2EDAA70D39D7C99
+47DF928F80D8FB71C1D010ECD5C910373862B4A826F30890C08757EA9FF497B4
+2D7CB365C9382B701357BC8746E5E3EB54C4EBE58E284688B3EA26DC9E64B8A5
+7C73114AFE2AB2D7D0EDAD1EF643649C2EEE891A08F22FC32552CA23D0FB1912
+0D9848EA84E7B5B3A024DE3A5957481230160E0B619F9CC0D5B1A95C81199F87
+135DEC0245897F79365007F46E72EF5D9A0AAD130D06630111280F6C3AAE6A8C
+B281423FD42E5FFF7214B2B3D2D8485D48F4348ED5CA2B1573F35F2D12382AC6
+FAB45D492F6C111DA58F89C4DB8B4EDD04F6A0BB005CA054B91EB1A9FF039C96
+4C61A5B6B847219CB6D0E83FB2F383952E61E9B34FCB161E4C5547C25D2893E3
+5ED8502137268182EED272664786B2369CE6A92BE3245A81EA379C084618B5F6
+05D6D97CAB9B111BBC5D7B2CA5EC34A7601898E26E6929A62C66905D70042099
+0354175FB8A258C6515F311131E48752FC843F48271A9D5DBA8497DA1770DC5E
+D4EFECD6FA5EFCD23F4C94A88D486D643A02E97AE647387680D9995E1B1DAEF7
+2E2142A7FC6B3DF1DCA26BA45AA3C573BCF54C49263C29702FAFC2DF835EAF99
+F3D840B66E2A469CC24CF3C859630C52376DC7BA91F2D9153FC492A86AC9B585
+45AB317C0701D5F0FEAB3AD0BFBEAD7DC1B536A8B9A483879903288F60683147
+655D26AD5D73630A359AD55CAA52CA6FC2B110C3EFCD89678068FE70F8F31172
+D5029D2E8C842093F87044FDF8C762F81F57DCD72B592399CB559929FD0D5E8A
+F9EE8CF5A2556F490CC172877FC75C66CFEAD1976D81B3ED7A9A94E7EAA25D96
+1DD2E8EFDDDBA23BC089684A8CEC6E2E9387CE0FA89D50A63B8E8544CBEB3D90
+A37193D95166AD772DE4BA9BB8A30B10A66D8C67EAEC15B336AC4D40B3D588FF
+B00C28D6AD4F1A9ECFEBFC525697C2C3B0E1DA72CC91C44067D4FADC7C5DDD07
+3651B79E071106980E0A335262035AECE7790178D1461A6433D3365DA2F033E3
+EEDBF9E19EA1B71EA1C6187EF9EBFF37B35A3AA51DFD9B10A4C7131BA9BF5728
+6EE59331DA573BC87F00D396B3C1FFCBC4AB9A19602B85B5F0FB641A4339EC9E
+30ED3D8235A45515593956CABD1CEDAB0AA5F897E73231F7968BDE7204168898
+3B105A4557DA3F28AB5906994548E984638B87C29E22B007980F6D34B5C1C11A
+F5AFE78544ED4287A47AD72E4D767EE3D3006708109D84AEB6789229A6AAF113
+3E74A947D002BE23F65959D496D3837B1C4E8A7B7969B70176535330B6B40041
+97EFCEAC58EC0579F59AD9828DE6C8FDDCE1A3623E605A85873EBC6A10979C51
+6D958FCED5F5B26D72004A2495277EA72B166C24633714233F16B5FF32984DF1
+A781CE4A1D2CF36BF86DCE069AE67ECF63CA98D8C65D6FDEFA89445DE5F8D01A
+FBCC56FD9359D46E662AEBB8ED246390BAC065747517449629757600CC91E7B1
+44CC986E7733E0F93627BF158678B1865DA5EA6686BE43568DEC76C3284CAAD8
+FA6C2E1617704A6D186261E6F2B8E84CF69D8581A69EB28BAC26F8F307478108
+F4749EC24EC054DD4803588ED1880BF6D7A0577DBFD63EDD454B8B3984089835
+7BC4573DB94AC550703A892BBB7F9BDDD83445122F736D645319D6CA22DF74D8
+E3C2090E897C37ADF1ED660EC362D02717B2F1A98B7FB7DF9EDF8199E812E3C8
+312CF4C62D44DDC12A3DE3AE3F36149EAA3B4235F2254FCAB1519FFDE64C3857
+84354A6574A070AE8BCEC606ED56996B610790FD82681BB8839253CF2E58D6CF
+AE8CC4A0C75A1ED257A8CE021FC0A3834858ABC5290FF2517351F765153D94B0
+F41D2ED5BFB4A8A6D48B3C97E15A9F7AE69C83EB5AF4AA26DB1FC0F0E3B7E67F
+77097FDD3551C1CC3216AE9B5342B3AEB55A5F96D84C2D7B04673F91E95A4EE6
+9545DECE9C36DEE3E1BC8E3B13328A97FAB127854F475C72B1C4EC58B1F00292
+4DD2D9A6730E8D1BE20A33D3E7CA18492043645AAE11149BF0DF7D7560D83474
+D42879B28F078C0F4F69E4ACB0CE4A4343B6E138E926E4A422C515409FB081D8
+558ADF08CF6F504555690B3718539338CEE8E1B79AE4E4217473885632905B1C
+D52FB0C55EB698ADDBB004AC39A22450C9C82811B186CB44F8C0CE20408F1366
+F3651D1AF38CAFE9AB0E036B342D0B0BD9A658969B3BA969F68136DE58555D5F
+D4C3E07CC9C4611DB83C90628312A9C1CD4AB6CF3A0F24C7145CB7ACE8EF4A43
+812582DE38FD4703EB6B295ED1285137FDA29DD919DC5FE2D727E836E41110FC
+65A90EAD82FE6743F204CD97E241230D31ECA08C8BFC9A99560158E5243475F2
+DB1E6452801CBA96B883102B715AF4180B1445ABC62992DA5F30768BCBFADCF4
+98894D8F6BB97E42B2935DA50F784715589F490E237D20E038324EC968EB3A20
+ED61221D172E6E2038AFF959D66D65DE83E9F2DED60DC6F1D3172B02715C4B56
+C30ACC32E9C2C46CA7FCE48571ACC0015B413836E477696E4F0CA0A1D3DFD759
+AD98A4A1118133976243C9B9886BC8ECE0228925D13B41AE4334BB84AFE68379
+19B258EDADF62B8AF86A0AD23492675A1F5745F49E66D1039FDB254A7276E35E
+E530BBF26D85FD94954FD6E4CA25F2496B8234DED8060772787B4861C35E0F9C
+B3385A7346CE7F36A13B74E784C276A458FB09982BE99B0671F250180E24B7C1
+77BFB92163288383B244CB0D08CC1E4F6663409DA73AB7ABAD7ABF6FD4842255
+A2788FADDEB141320C9D0A42E56D8B5DB80E723324F4507ABBB6A7115A8A6A51
+F94363D9958BB755D6D847C60F4F577D1735C652A9C88AD65AD83859DF5163E3
+9AD2F9B6D26A2C01BA1F2B63AF53100BEF677801CAE1EAA764B2ADA8762F981D
+369BE3C6CE22D83C2135061B8D11AF8339662D16B2FB1FE9CB31D73D54CB01DE
+FB31602435A37062A18384B64B46A75C882C32CD8BFF39EBC7DFBF956CF5132D
+15047ECC97E9FB62684E1051533D2D72BA1C0EB971F2701BD7694692AE4BA980
+190D7FF5540CECF81FD381925DC5CC7988F487B96ED4E777CBFBE32CE2700130
+2BAD3628646B0BBED6078F4CCC49914BA082FC11AC73A5175201B82F27E92196
+2E2B18731D34A083DBCCBD1075F9914CE626DA64F03CB773806E86CF559879BA
+55FB226E275840E6A0B32BE1970C1FE12B4B05209986C98609AD55F9692F8509
+05066EE94E47B6D8F8E263A8206F402A135658861DA6A9C6D3BAD363B6FA522A
+DBFCCC78FFA6F8CE2887533D6632F8AC7122D18CD7260E1CF7BAAA82771B03E3
+D442C3011E71B31650FE2A66F3D0D5A4490D1ABE8D345620E935DB415ECBEE37
+09422940A8C369A051E68DD9D5EC5C74C90CA676DE65D328DCD84B4AC264BC2D
+A7D56904931FF99A57304573F7FC60C9D04DECE8CD76C60A74FA7F0C05B9BE84
+9DA05C6C829BCDFB952D0C5437E968C2B4C81C19B95DC638A94AC8EB2CE1393D
+2F3C6D8903621D953FEEC11FAD06282304000EF5EC4EF37A2BB899893FEE350A
+7E60FFEA7807028972BBC86C5B6A6B63246EECE6D0514FE4E665DF51ADC4E4B1
+757DE1A887262F716CF1DA9043A0B67FAC9B8C7B5AEB5E9F82BB83064C2B6D5A
+8ED2B8C04C7EB3890BE1D471ED6A02578F1DB2B88950C33AF0E8A409AB9A12AD
+ECB37973361D05E185E04DD3407D432C6CDC52444D6A1ACE06CAEAE62AFF11F3
+802D47FE455E18D7E1F4C72BFDC316456FA5E80276A83644682F6FBDE83D9A05
+BE21B287A39D3023D98FF7732DA0D86192328B24D063E44C0BBEB466C8A53E78
+B32BEB2F6BCB21E59C670D280832DAD85A893A562D9B751185CE1420B7B40605
+44CFB1526E00D8C6F55C7208FC70F3AD1748BD121D6E6F65CBA1D8FB67C463B2
+ECA1211B6C8ADA9D6759B95B3AEF6D8C6CDC3AB1A513B22AD12C4E68E6B987F5
+33CEC365D530E06992FEB5D603D0FB72BCFBBC79B86890559DE3820F26B3690D
+39102D723C91A4C55E4F60EBEFF9C93D0EF70EF6C42BA4D9543F612AB13F9804
+ECA8FA80B95513B55A0BABACC3738B2E80089374B6D5430DE68B4964F3FA9247
+3C80DDD3D4BC541A8A6ACA14DEE00DB5CC6974034CEE3C35BC32A97D48A3A8BA
+05B6C319DEDE2EC73D18CDFF89C91167244E4C54C5A59F53606708B64D498FD7
+651D61CDB53F6045E00AC1FA64EFD1F318D8CAA265ABDE5684DF4620B36BBBEC
+E21541CAC9DCF51061FD29C8EB2AB2D17F35AFA10105C70BB0C07BF30F91D318
+C61E83EF384E084C316164E7F93D66366FFDEBB676F1D0474DB63064959A1BD9
+F83BA144FDBD8BF19C5FAF6F3DFE72F498FE1BE70F65B630E04C3A337428543F
+2BC70D0C152271748B91D815BC92C0F259877440DE56D76C3948F1E2A8123FEB
+F95B32F27186A3C1D975C972EBF963F65B1840F9EE76A6C0CB3E59E3EF151538
+3E75D7281ADC5DA7CF628E24D88FF12F6F2416F12472CC476242D6E705E6484C
+1AD65FB8713DC4EB1682B978694C99C244A6C28AB0D4E8C80B2392565FF8EA60
+9E2DA4D13A0C575E638F091B242DF50CF028E9A4FF201309F148854FD00FD189
+6B15DE4BB15388A2FC01F6C74AFEEF783D792CF81CD05164EB8C23DB79D9E76C
+15B5522A64E82A552C865B3D7140653D021E2E6E33815B886FA5AE66B7BC6311
+3BDB3BE305B3C2FD814422B9FCD9BD89B3C4EB6779C2E87338B5A81F47C0D219
+62CD7D9F9EE1750E6CCE967D0251E99D23F4D8F3DD15747DA74B774C18B05870
+D7D78E73FC60D126DFD029D42352BF849A3AB754618A5AE5E993B9D8EA8FEB89
+550B5FB7666C0D112DB0D035744E46E542A6BE3704BF6B285E3DEF08A4608727
+DD75043E21FDCC1D7420BF5CFA704AD21C2C28AF0A70F8B4D85E73E328B7C1C2
+4AB0949AE46B952916A40BCD048DFCE8D721A4FD0498BD0E98DCAC61F2CE487B
+514B714B345CA3E55D0C5661DD8E05F155B9B87BA93E07432AA04A4C7D1D16D7
+20F7D7EE65F5369B24B51CDF2A85A11753F65CFB69B48989BFB49EFDBCC7D6CB
+4141BDAD53DCE1F095E7652D36FD86BBBCF0A1685EFA4676C0417CFEFD42B99D
+88ED71F8B989758915784EF5540B4748109A5FC5606FB483CC2F0F30128CD1FC
+F994BE3185F8B52C3654B355579336AB06D69DA921D23743DDE786DC70D3D355
+29A912FE62C154E280227D8B21F9DDF363D287212F080BBCA558B6A49FDAB0CA
+B3F675191EBB0B5EA9724A835366E0C3C2B1C6A3B5D9BD9818B13F55414B5DA4
+11472408E9C2892DABC35BDB046B9C3DD63436020CDF07E09356323842249CD9
+6FED229A0CD2E1C802ECF274EC002ACB875B7234B558B02612C4252CBE1D2A68
+B54B9A2F1FB2A3C4DAAC89BE2254931802958FA16F33A2455597F503DC7D20C9
+E54CB6BF11915CE61D1EF2005E3EB5C3129D439A406B7324BDDEEDB4E6C63FFE
+62B8D5E7826D776CC88DABBCC8674CAC5BA83E6D1D43946D4B0490AFEFD772FC
+4290B68A30116FE865A57B1AC6345001860605B647CD2ADB9AA1FD77561E5267
+858D2148938F0B06B3F28A43EE42E45A90F9C86429ABB912F5B5E3A9C1B2535F
+80774BEBEB6B81F7E4DE5199180051AB731D377B004C1F3E1065A6B4D5FE1785
+492ED3C74DB08477875C472F3D399B035CC09DB8DC3AEEDDA32FF49686A8B34A
+BE48EF5D72D050366CF4281E259EFAAD7973858664D1F5519E77B8AF1FD6A534
+FA18BE0EA58DD73C51B7B0F57A39B4B9A219E42BD4F4C0A66F9DF95C59E4A522
+051C9EF5FFF43164C6E596B894A69716CCF5DF4955F8559F669C24CC13599443
+E8EA99CF020D14E51E122170AC0A059858293901A02731D43768B9067B942F9E
+64A02D5FE5A78218C5DBFB42CEA8BBD5023EFD2EF78998542B94956AF3EA6A75
+013CE03246CE4DD9694C448D074360B40E934518B6052AAE6A78C4E8F121D5D4
+DC5CED8397413A6C192FBF2AC190E880A2446F4C297BC35D44466BF4241C7D2D
+C26E92AF4784CD1C72EFA5A18C4BFCEFD93B0D1E1910A8DE4459A1AB5CFCC401
+96DD59E45FFC6C2A054B6D4ACDB651C463900DF687BA3F74FE2F4788F176BD8B
+E2E98D0531D016E190314AC6913442B87201DE1127F31CB1DF0E06444B459D06
+10182B27A8860E0F3DA339ED18A6FA3BC05D6A9EC7426AADBB516B812E79AC2F
+BFAD96352161C2049FA404744543196B920A2B37047BCA0A53C9BDDC3FF061D3
+488F5796F47CA8B27BD2869D59777517F05442E99FC5B791B96819F7B6272FA5
+F2EC2E4C5F2CB30666914E8E901DA7ABA19C1B16726DA02C48169F7D55D6BFDC
+186513E59158D63380C7F64BFD71D3B175C3A57529B0DE94960069B344A3BC3D
+FDAC3A4C623FA96532FA00F88F0D68E35F6DCF6B9E4F67F26FE408FE99E8EE84
+B3652D89ED3877D6441EFC4573F980D7FAF07A121139BB7EB59D9E12E5B2A2CF
+EAB190F603C9CDE09D121014269D6B5985C539D631016D9ED0ED39F04B75F563
+73F185AF19BDCE32B1B29C898C5936D20D1A7EE4E48ED64509D2B152F50248A2
+9B714811E8E996474A8BD79564B52D53AA8F1525BF6A9EDF40ACBCBE8818C3A5
+4C1CDFF0EED83FFCC199C72873B31CA60AFE5A168F56F2D48269B4592AA801F6
+B6DE755C198F56840557C990E9354E02F3D247384E9E2FE52E4A4C69618FE8EE
+C21BD8C3E464C75A2F8C3009B03789B5E92F926930B9DE816FF96FCB6C231382
+50ACF60E5FD70BCF3949425FA5187319A513EFAFFAD93D6BFF875228A25359BD
+05807593FB0AAF7F3579BAE07F343D83DCB7CDFE5F223EF08B0993DAD49692F4
+693C91A8F517ABB7A3167831AEE889F4E26975DCB4AE19C3E94D08DE8D793EB1
+709E11DB655D727B43057CF6183A879B1BF4C2F6D92310D8F49E675971906738
+93920DBC63E1A063963EFBACB5958FB628EF39419EF16940B63CA6F17319106A
+8472D90A853B2E00704684ED4D4F5EDFB127AB773CA9BF61523448EA04629E92
+3F0CD1BA33BF0C4C3548D69F19B18AC5A8FCD22E981F6EE2017CB1A94B33CE3E
+F39263CD12AF8FD04D2292E899D1E258343FC420243817749A5B846DEE93975E
+5804BA46D1689A14EAF776CE9B95D8C5A648FD26F5460D914CF63D4E64A7F30C
+4F9E705562E79C639C308D45940B4E4651DD1278D04AF1826761653938A0D9A5
+699AC80D87B02297D003503A50A33D0FE15B3A932AB2B87FD5D0E2169B6CC530
+F8D895B66595F0264DF14615B1F3765AC48E4A711AF9C83E4EC79D882858F000
+212490CADE92A84C6B4CDF9EF1DAC960787C796296E5533B8D02B718F425FFE0
+BADBABE28BF8A19E27529F355EF0B2A50AE0C5EBB192C2E24999C7F7904204F0
+A0161FB405878302E96BD228EDD7BE54FA84EFF4A11F8FA99B10BAC0EE5EE6D0
+50CD3EFAABE2163D5B42704377C42824C7E92EFE326C71562F1C635FE92F7589
+EE174419E18341C0A3D100D9C3FEA00DBDC4FBE11B676DC086D56979B2DA5160
+BFF5DC75B90711538F1F26D0F6159E474E40BBCE8E668DA62B02124FD2084AE5
+F8E0BAB3DBED1D340831BDDC26CAB1E28E550CCDB069D70F52819287DDF4C90D
+1F8077C6C60BFF0C7245340D98D185D0B146B02ED7AB3390B347E3961B9B428A
+075698D42AABF162CFA38D81FD16A4BB760FB574B94CEA4E65228679CB358A5A
+AB4EF155EA47CB15283C280CDC1847337954187D49A2B2FD097360DB0EE6EED9
+1B9A8DE4DEDCB9009110DB3C6274361BF85D29CFC184BFA589916A585340C5CF
+B2114EFE6095F37BA577FEC553A9CD914749CB2CEA1A5AB3CBBE5946D3DEE7AD
+45C6248AFAFEB66B73658B0042E0DB51CED4388D55F6C9BE3EBA7E8B94686BC6
+31F7711284277FCE2C4CB768A114D7B944118696B442E6F00419FA3EE9DCC6FC
+20654D277B11E0DC09157B28CBCB1723697BCD6D17C423A3333D5B206D6E81A3
+F0CDFB52C8CB4633F6E1426DE5DCA4F7CBD7185DD8303182B1138A6114D86A31
+AD8C5324D06FDFB75B0F21E0D044691B126542FC6A192403A09F6326F6E89DC7
+6AD47E2FE5C34AC576E465E52785A9B363487F4E492DFEE73EA7B28CF6E3F515
+71B54868CBCC74A19A5589DF92ABA01963A8D8C1CEA21026B31B11CFBE2B541E
+CDFF7E625F995FCADAE20AC776AD67482F3E8503B830A3CF239C86D32DC98E1C
+3C6FD61C43E8C9EECD7B81D13B014E87DA033045980EE95DA8AAE4A6F8B04EE8
+465C72FD96B5A3280FFFFAE83B99DA253FA9250A7A02009BB77AAE43D5A1373D
+8882EDAFFC70A49E133490BD7A402D5FA660B83E556468D2AF10565050D5BF19
+8C9BCF89A3641C2574C3A6E9DF437FBC356F0C52A8F8940E4CCB2D862B9D6765
+4DDF209952941A3A026C9B3A7C2C657C87EBD9A78E02B9AFA641346853FEE67A
+21F8CBA32E07224BD8A3D4DC4EFEFFAF5CC5F2B301BE234BFA12CFA5A51BD501
+D9E1B9B0BE37FBE1572017A3A913775F229B2F4FB200498904C115837B261765
+50808B1AE10E85AB1C424891C2B8AF7AF4AF11BD14689739DDAF9D88B2598B5C
+2CB0674E4D13E8DA78B8986FDA0236C8A08948DE4965DFA917B64EE34A40C517
+76F0CCB7C0D2779AFE66E1234D7ADB68EB091AE8D63D3FE0140E948BB80B589D
+5658BECECC25DE6ABDFD92F5A9847E3B6C874BF2AC082BE65D382B894A675649
+CB580B3B6A4C01EB94105E591441E3045C66F5AA8B241E2C98714C4AAB75D264
+C966AE12C7969FFAE73E095B430945AE1DC95961C57158BC7AF8C9E41E5A95D1
+037B56AE77246046B0DCD221B29AA054837B0CE11914DB2F3BECCA5E81235B6B
+B5F86DF7D9CB78EB0D7BF26CB42040469333E3FEE2A24547D022E1C560DE43A7
+85595866ED7F273C10CA2B54717B5CB4CD3948797F6153839A1D245C69DC74AE
+6E405EAD8CAB84CB946312393C3AD1C3F619618513221C5FB6ED1D630AF9FB95
+4FC46D1CAA14528CC276218B5A334C16DC9DCC1A11A9649D3E01F94EB4B46ECD
+05F6427F7D96FF1080ED3F7BA720405D3D375E9830746B95CD628825BDC85477
+47A93A206F2941CA68C467DAC1618E0403C7FCC0A672DAEE909A4ABAD09B918C
+610DBB3F147F3770B70C33D42FFE67C72D6766C003A9FC8119BC332DC48CEF83
+C5C38442D6F0DFEBB545B63C73789DBBD408C7D6E8B410B20E5547EE53F685A4
+B50BEF2380F0A863EA981860186EE92A8E29BC419AF6D8B18E56C507FB07367D
+751D7F3C5D7D2FC8DD8215D9C4B630B464A611CDDE6871193415EDCBECCC7972
+139110567FAC15C44158C0224FBE3E8CAB7CFB0BE61C005E2434551A3511B947
+68815E87C4FD3042CF6F114328A2A5125CDDE5E580CDF8E9B9EACF524CC344CD
+A853B76CA650998389868AE9DAC23109E7CB8B93F08052EAC3426865D47016A1
+44E436DA1E5CD2B0DCA5D8A2FA93A08FB2A9B8F15D82B233CF1C9CD467A46D06
+A69BF95FAA3B1A2708D9FCFA951B15C5F5A239F298382E72F21A7B5A03A151C2
+05586A87ED74729C75D71C262829F3B821B1D1DF5F567ED09A93434CE8E4ADF8
+746415B8AA58A5A0FEBBE08F126B3BF34BF024067BF66E3F7A80EC1AEE3BC7A8
+96EE01AABEC21263F8F2DA4189ED30678C6BD6AADD455B57B49BBD04263CA18C
+6CF0DE57A613B707E3BE5EAFB63EC62CBB567C162828CD04681173CDDED37D42
+D069341130DBEC6D4D331DC5C80DF2B7B9CD91E3DF0034F26A598FAA60136DE5
+5CD8D4C900B6AC4061C13FD9D495305A82693082289CAACD9BB4491C7A3BF472
+02A3409FC59CBF021E092C106CC1934AC4D70B75C68DB8121B4A2252C563746E
+169F05435D8740DD9DF6654792A576F4272B157224ACADF326FD5FCC359B9E62
+1F00A94411EBCA81AD466D6DDE336DB73080A0483CB1FCAAAF791D09ACD383BE
+BD4490F3E1D244A960AFFDD4268D3E5F5675FDFA6005737C0B6BD89272FFD8FB
+681703C20D0CCAEA0B257AD6B74279335B03B96FE919FFE3B8B8B5D702FCE2D6
+5A03F0E59BCF05267FE2087CE1BA7F1CCC013966006045526E64512E496C6AA4
+5958AFDDEC13A14F6C4A1BE162C1751AC2AD65E979A3E26404C051792D6FF31E
+5B58F3282497CD5D716BD2B208D8E06C49373E30B278EC2706E242046D2ECEDF
+59907BECF272391A4E6F1B577D893B09D75C4DF7C39CBCB4A68B5D6E94E1984F
+19B4C3AFD83B853737BFCB25254C2FCB04B404FFA2127F65937FAD3C0D16ED71
+DB44B8DC8971C7FA5C8A3BCC74BF00C4B3C32770A789582D2B4EFD48647665D9
+908A359FD5EEB1FC0BC256A2F4FD64FC19F12C6418ABEA91516A851DD1422C65
+EC71F1BB7D3CAC875F3B157CA3E11E8E505F28432B67118A46D56201E07D6354
+74584284F02C1F1D9C5B1208DD67F4129934BCE4E4677E6B2BB6CFE2BC4B0734
+DCA77A1F20F842491C1C209DE37B49E7B22D807E2CBE65C9E9E4DACB832258E9
+A78ED09761B95A2526BC8C82D42BC92864221D3C03CA0B6C42AA4EFA30421F37
+B20FB56F15A03801485B0712DC62341E9364F00E4602A870F26D201DBBCEA015
+9F007B081163BABFFDF04B352665BC2026BCAB0134726A83E59971DF96CF539F
+4D71564825C0B1E9181403F9DEC3CCAD1B94BDCCA0A5B57DB25A70FB417936EB
+D0AAE22AA9DC18DC7D292A6834EC5538ED532010429DC594A7EE744FCB1DECFD
+6DC64B91E77E087FBF793D2F6D03987B569B34EB7688C7D747040FE2E734ECEC
+3D6F1C833F2D157BC1FBA508080685DEFEE5FD70BAC34127D6DA61153344261D
+47D77EE0D95BF97FF2BE4943537883DB77C71C886ACB3D1022F7BB3464379587
+1D2AF9303774E47FBF9A25F562B380D3D07CB86A6C661C7E2FABCC2427DC5014
+EB3E5E72F848E869924BF9C420868CBB0EABC2C48F4128C15603A0C82C5EEBAB
+ABD1D84E457478AA37F7A53443E808BAB9859271838EC411B22C27B24DE27A7C
+15E330E1EDCAF2DDBCFD7278FE3976990B41AE8B73F20EFB9DCD105888FD3BF9
+A358242CB7EB2616F95C14D23FF9D622BBF7229E8BBFE049DD33BB00C299E299
+CFF2C0EB3706554CF9B7DF6566C86463A84EA9CDDE21C127F39E85B897917C42
+A9C248293475152DEB49C92C190C14DF7A6AA0215236FA769337B32A69177842
+0E5826929FF34C26833E25A31517879E9B2C87EB980ED8863E0F79FFD73EDB10
+CA88161D4A5154E272493B94FF9FC72E3A87CDAB97D81EB047800C74E3C0D882
+7F9E92BC3632C90962B977E1DD1C9E02528B8A908125A9E3301CC2CC99176988
+6562673A08C421EA2D55D5B3B571DFDBE192A1E06F0D2C000AD13DC52F91509F
+7C49AA8F42C6D09A80482A7F2634F8844DBF023682B0E4D6DD32D2D84B2DBD5F
+68A8A682EDDE0CA7DBE53C5303EA99EE04EBE92CB03DE20C3CE0F6A0158E7F28
+056F8A4902ABD7BB9A192A1260864FF03783F6F8DA28A9CB60E4E661963A9D28
+1DBD07FCDC4DF9C684403C5DF625DFE33350A1ACD3BE753A0D9DA540E797F911
+78640687221136D3BCEFEEAFFF117529144BD2BB2BB013FE551971589AAB844C
+1F432694C1A1AE680870F0441ECC3B7AF1C6571A1593957773F83A13F05DE46A
+5A1A2AF7FD57B1D349ED0E46F12DCA387196DE2BBA9C4A4E1D620BCC96C264A0
+6F8B77642030316F8A4FC431DBB60DE329B14129D4F1A101AAFE7F75F51CC91D
+E28E0D76192B2E8B1207BAA00FE8CC17C14A301A464841FE2C81A215E2D09B4D
+F325BD1BCFD1896F61E4488FF387CC8878BB5ED54E83D4227FEC31E61404E7A3
+4397E12C220C39988CB4902CE87AE99AE2213F7EF9365F115589D389F9028F1A
+DB94DF81CABD242C372A1F6550A27A377D20AEE04B1757AB63B24C7D4FD2C4E6
+057B07401A5D8DACF384D3000BF35124F5DCC2F6360E4FEC26903ED80A6FB6EA
+1C080D240376F128E8FB70A94C3D679DD0BC8F72A08F54288B94FA2D9BA69397
+DDC50815A8EA7BC817508310FEE9BB9719BF1C63307C4E0CD9B36750A625B96D
+8140DE7A6515B6F03EF8600A939EC0F841CA1BA0E863EB32003D94EA6C2A4DDB
+CDA5EB76FF4FA2264E9F7B0EEEAB40567B0B365961300BCF5766750EFF74A83A
+4B158C4DEFDB0EA68F625534AE2084B80B03490E30A55FB5F3D21337C9ADC015
+048072A4E11E59CF878176D22390A1479E7132FF1B50EE81FB2385F442472970
+B57C26F278AECAEDB369181A26634883E427363DDF5CF4836DA98D2869C22D9A
+2F38795927239701F6C4559B545AF548915DC1EFB31CD6D274CBCD8A644B76A1
+347B77FE4D9E8F426CAE3C4095A89B57E1F1F805C35AE84B636E435CEF8AD8B4
+B846C917FD356CEA31C3C137E86938A2ABB747458DDEFFC78848FDFC4C972BC5
+645CBEBB186778B6C0F077DB071392E4A41DD634CB15FC7EA748152B2D969CE6
+55DAC323B3CFB95A677D69676A2C707FCF8D9532FF149B01961F11E542EAAC01
+B074A821999EDD96F613ABBA097C5D5AACBFDDF2544719756DB720A7341B720F
+5AE7D2408D5A27AC1BD23D08A7EE43DE1013BFC5B931952C871102ABCA00B8E2
+E68189360D5BCAF73A663F1EC0E592B31303F162561B76FEEAEC662B4CA0092B
+4A2AAC6E5C2345335CC01109FD9F67F76A25F8E15D7B7ECDDB0460D05DBA1765
+8BEA3468DA05C41CB68897B25FA52F12C06157E6FEC7268093E976B431B305DC
+4680AB320D7B53956A684ACFD21EADF8A097DD976C15FA1CCAEBCEFA5EF2FF02
+884EB924841BCC959BD6F511296223765ED63281C12B723EB6E405306306D7BA
+8F81B12B483DA42429390E6571A63C708DB5155130B1267DF729CB86E990AD1C
+8A03CD9E10F1A35B5B4F724BD1D85F48CA634D6CF89634247250E686A21C070E
+B5A3B20684ED81F62ECE609FC4FB2D12F533F7FB2CCF4D42120B4729F0741ADA
+520B005B9A52674AB96B65FD8BF5571D4AADAD7A56737C2FD758DC9A23BCE8D0
+C0ED4E2462A32A85103CEADC375F6330764344CCF1B9E4EF18F23AEE61DD116F
+54E092D938AB78C6F30E93FB585A4B2A06C6187EEC743ACCD39B0ACC24E80B12
+22C63676105C3E6BC58EACEDEFFAA1639B8F1E8DCE152FC5B5CC8463AAA991EF
+6539143D4993BBFE965017F7D4E7D1FDD79959FB3A32C1B26B08584D19AAAE6D
+7BAD0E26BF64F4D69055C9A9B1771359EDFBF7D6981F4EDDEDC3FC3BBC13A9EB
+77A4863319D878762969422E371FEADF90778970CB5B449D028A9648F0DB751C
+3DE48C09B7D1C6F91A12A579F5367A071C3E6115801C4F46F5E9D3E68CC056FB
+C728587892FD62BD24B55648532F775CA8FA81F1FB3D9136D80282037A518E55
+AF53A6E14AF293B4641CE1FFE610CEE0821C68FB4CB60CEE2DA00BB505D45393
+D02F53EAE19FB0B48DEDC6912373C60665681BB7938320F676D59B744296941D
+011C5D3E94FE276F88D07BB5BF71F4D17554827DB6BD8F39DD2AD975507EA4C5
+386E6C208DB2FE5A1E6A5351C3249F14FCA5351C067AF4449FED8A806ECD5594
+C1A5EAD51CE957BB6D5EC9154FC4BD7E8D6E698FA175193414956CEEFB78F600
+9DAC757ADF12880081DA25357D10D95E26A4CAEAC39715F1936AEDD1F9EE2AF6
+01214ECFA454359B4B20D4CA0E981283FA4F8C4B7DD7496897AEDCEB229C2A6E
+4F218FE04DE0D067D5433D3E0E91A6AD3E6A2413192F6FA5A31D62F54C014D6A
+514245A37C9F0BB961305DF56410663850EB43281CF84C1576F2698B1A43B480
+C668F505BAE2DD5CDA4921361986E89B138DE60B3F9F8C25FD1E0FEAD66174D4
+84B2F7B210A16F187998CBC3684BFDC7599F04D877DCD0A06A3B9A8EDACAA442
+9BA057DB71FC36446CC86C5446FEFB9843993F34BFC4697997CE921240E9C814
+C60BD02743D18D7359E2BEE79C58F7626055BD03FAF144C6E981F3AFDA174C1F
+FB9EB7DDB1AC96E57ED765078EA9AEACB3C468A114E40FE84C9E7FA7B5500E17
+9E2CA8D6759C86F1A119AE18FB082FB85EEE4AD377F20388553F56C127E3666D
+F89226E26D67F5582BE1C62A6B2FFC68236FCA41A1931BFC91D58CF4F17D4F3A
+9AC004956DCBD2A95B462E8B804075A213974AD1FA13DAF5842F99ACF4A0EF28
+BAEEE098068FC11C590D2BADC7C68466C3CB6B9A912E5E92EDFC942249564C1C
+DB51B7353518485CC64B56E066AF6F10C3E16E4947D22CA0D36D160D2BCA4E89
+11A808B155D3AB24FDB573C4C5C8AE12A11D59ADF85C4244DD394D14C8B7692B
+1D4428D10DEBC20F732B80DDECCDCDBFD3A40D77EF7D48E0D1A6E1C9325B0B0E
+F348438E314D8988E3277FCA3058DBEA210651C805976F1E9215F52E97E780C1
+5F3D3D3BBD831C43E0E9A75D19E5BDC365E7532A14BC5A2F8164C1030C2FD29E
+89593A988E55D0030559B8C72A36822E7A473BA9823D348074B530DD8F51BBA1
+60CF08DC94B21B21ACB97395D8B03FD6150F8042CF8273717315DCF2B7C5250A
+BFF0D498801D97B93FC982C7494253F42D313C4B8C03FBC5D9158EB638B76CBF
+5CD0D17F37878E67EF28F1E9B794586A9CD11CC1926628B273017E9EF1B2BA75
+BD7EBCD0C979FD4DC214C78DED5678FE2D8958A810E702636A5CCC9DAB33EA7E
+7A8ED7FD57F0D885E74A391A77948152B29EF7A0EE18B572A364E44621444149
+9F3E9FF528D0C60C76DE2464A2FD3E22D72AAEBFDCBAF56603B6B7F24B498AD3
+E9368917383AAF7A29DA2BB778E685E5A3BCF1678EFA7FDD73DA6C5561EA7E79
+A20BB0335D4F854876BA1E75152F68A88A5218214C35E2D36C0EFCB3A87B9E74
+B9A59BAF68747E5DFE81EEEE0DF8B332B55B49865B085AB78F9AB6A1B0E97786
+68E68447CDDC9D557498D499B37019765663BCADD5B8F982493438D66376020F
+C501B4758F1C0C14628031158FF0E7503FE348C2C0E220B1F4253E13EBB501ED
+F971A0E6585200EF664DF1966C4F23305C260D11393D15E1886E3DBF05C4E260
+2A21C5BA55D5C70E5696F0EB6E85C8603E8D51AE5BA5BCE62ED72E91B25CF966
+3D06283E393AB553D8F4D4393943EE72ADD6737416B3C69BE46F7D6C7ACE760C
+168F10DA1ECE3CBF0DA34A85BA2EBDA4766E28E7B855487FDFC7DF79469509F9
+9F27C5231030B35B4706C22BC29D5B6761DCD7FDAE12D94D0A91402BF8BB1DCC
+0648094387FD177946DEA705C360457C1A7F7177F40AF0872F1CF8D10FF9AD25
+BFFE9F5D2FA1489935D0382933AA18015EF8E9F24CFDD5C89582A65C416E7496
+BC2EB1DEEE5145CD7FD3EC11349D3B3FE0B8AC9B129A595211BED0F45D7F34C6
+125C7B256339E45A0C940A801342A0599819845683AB913B0C16A08D8CB9E116
+9C65508DB97FC0D3F5080DD790EAA1AB0E9EBF1BC58A167C32CF7D89427E7A4B
+D023BD788DCE32D24E7EA2B443ED1428DB1446617AA2956A8AB20C9939EA7427
+58B9629D559CDA3CE93B5FE75800D9205E9E077F706C218F4E50577DC499F741
+87C3CB0F83954B325688C92342F4891D9A4E143CEDF9893042350E8125646EF1
+CE3FD004E8720688B92C6B7D1408ED069572F90E964775CD4CF6D4651205699F
+4C16AC77D52CC2F969CDB6CCFCA75F562D665A0CD40E3073B2630C6A57825EDA
+7BC01EB1AFD80CE5EF108EE486347C6E4AA98FB9FAAC6F46945A00C5DE116272
+C59408D54189BE2857C8D4950BDE6CD745A0DE36CBC9C749ED597C5748A05FC3
+633EBAA17FD52A4A0FF033A32CFD6CBE52EBEDC412E69487F919D86327F21D89
+B3A8A0AE96EDB454C83F4C23E8BC7789972BDE606D1A9DDD5737E62F034A167D
+947117537D54312D785E9D2BDF4599DE4D2CCB81C04476B835445EEA711E0F3D
+301789E0136C428373B3CB93CDF6D78F7F354602948822ABD086270317529C7E
+1CC5A9AC72B394AEA73958FA184E9DE0E6937EC5D69A23DBB5FD4F6B35FDD5FB
+006BA77F54393BDA59F4D0CE9D6E
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -6030,6 +6900,7 @@ dup 119 /w put
 dup 120 /x put
 dup 121 /y put
 dup 122 /z put
+dup 123 /endash put
 dup 124 /emdash put
 dup 127 /dieresis put
 readonly def
@@ -6276,469 +7147,471 @@ C405361934E8A80986C49A4237E2D2ABB4A4F4B904715B3AC4C481E8E5A1158C
 2955CFFB11B7E1EE0EE8E7E8121083BA976C37BDF6809F9F5BC021E7B7E53D1F
 F320EBF19F2AF08668C26FD29AB6E849715BFCFAC2784D902D6F7A0105052936
 004A2EABFEC760804A958A22626CE9FDDBF894BD684FF8EFE3CEB44670B82BC1
-6D4B85C2FCEF694E50B8AD1C4823F6F35B0A023E6DE42AF570809A736DD2CCF2
-7DC2E35A20C3082D7F116BB9CDAD61F0D079C207ECFCAB9AC7528E3712A9163B
-64E48D0E4B884C10D8A4776C6C8571B6512A8DF2BB22E8CB85F591DB5D9D092F
-E891CEF12829C8FA3AD03DB1602D3007A0A1AF3026086A21B68443E56BFC0223
-8D6779C15A23F1B04780B1AF1AB3D8C52CB02E17FD6A5191D3A7E7A52A58F7D5
-A192B4428B7C8F36AC90A77D7CFBBE6A1F71A77307247ADBD55C86DF19E8D089
-C73FF40999F6E04DEE57C48A5794E026DF56D77AB921459022D7CE2B68A52AE4
-4AE97F247D1FE081D8932197E23B3E53F5F2584808D7895EC8BAE0773B9A6822
-42F06801C1DE59C4DF38C7A5AFE1C5D6F5BCCF615D41B7D4AB67BA51FEAF62F6
-8C1FCEC23B2BA62E33807B91C6DEB6493F61C16CB4067C296E04CF7CBFE0D46D
-B42D38082F573AC1E449567C2F7E6A18F4225686544E2010FF11852B8F6DC9E2
-145916A05C5BA18602B0852086BF2553285D2B83F646C7AA19D614E0C7FBC733
-562D95144281A16ED54026E6D979D12BE954E34D573EEF9AC2EC7284D71F0AEF
-5756B8026B1A2744B90ECC85C2354D62AF769E5F27AE8BA4A863286A6026B682
-DDCE6C665932442E05ABBF69BD0356DF5654CAA0EF1A6B36F538843092755758
-A96EAC37059F210FD0A592250793A23EC612C0010748A7E5BA8705197565DB5B
-089757FAD879B8DA0FE5E556C81783180D9325AA15D34EF253C8C8C81DE2C0A3
-05EC78E77D7339A556904E8A1FEC30091402AA916B4DAD07E31FFFEE0BF9B936
-BF909392D710B3976C795E8E8A7286BF15A26ADBBFD88102A65618858A687C8D
-7DCE0C419C9FAAB0CD1F06C9D8288944519E38463B6ADB8A83E5A8E6A0BF1DB8
-57B9E85D99BA8E7C1E2E2D8560E8F340344311762CF7A5A4E5035BF9AF621B97
-4F9FE7EBEDD03E97466C7C009D3D4A2D73765E4918819450458DBD52DE9F9424
-790B5AA5BD1F9FC78C497E829C00202C7B50A29BCD3A6160C687B24211555639
-B2EF2505FA31B95794032A64C48CD44B5C446C2C1BCB335F0970EE88AE166CFB
-08F6571D8AB122C765DD5579BA9BC70EE00AE43A284DD33386AC45DA4CA097F3
-463A040FA3BFE0FBB0315FC6DA7DA8F5F31AA1B7CE8D50826019F26470AF8CC6
-51363E3926574AF694FF807D61CE42922F67031E3DA7AE134145C913CA6DFF04
-0E9B25DD8840428E9BAD8DD3107EBD030AC7DB269017D778F9EE7F72FB8BB3F0
-80FE7CE17BA5063A1633A9D85D3161143AC4CD8B66CF0123F9C0E63AB33A21F8
-9FC6AE7FF84CD30739F081B13FE942076B808377EB1C29BEF0419AD4A80D6317
-B6388E427B6F212472E2D3A8C9A3D5CEE2B0A291D7B7544E57298F0FE0B4F974
-0A8D5B1DC1D2C55A67217C06B7B5A21E7625512B4A33E458362EACD753975BB1
-E6FC99E1253D1C61191570CB95BA5025BDF393532F6802B51F1962E5FCE07057
-60D927FC713D871EB2AAFE00914E0EEE9522840C69388D39C47A3B9B625997C1
-99AF4DBE7DD402FF4589667A325D6F08641E2BA3DF91CD39357798AB36D782E5
-22A70080FD0AC149C65C26A5E99834A04DDC5B55E57E55850B886F31CDA46C83
-737195D3DBFCDC9F2D8B0E4807E665B3DF4CA4E566BAD762782C75A72C53EB8E
-CAE990EFA060EF42AEC317AEA4BE411C7D15370C5A4CD0BF45AF48A7DD6AC34D
-FA01862040D4167DF207EFC6FEC53A029EFF203361CFCB769657CF60C0795990
-EA27A2FF6AC7E8613C7BE4AE57F76246CA1E1670DBF2CA58CEF6CBE78E920B6E
-DF96DBEE1F2CF86EDAD61E4476BCFAECAD30C8FA55E51D1822C9B5AE9D72C582
-9F56771C951B4430F18FDD8A8691F3FE1D7B30645D7FF9203F145A9EA06B2987
-4CAB541ED13AEEEAA272588FE7B900E4F4C1D4B4F11D1C410ACD096766CF8024
-D2D0EAB7FE13DA6EFC55D3AF100B0E2D54479D590C7E8A999C1B1254EC07A68E
-378527DE1A60E07C68FA757066F55CB2FF5F680FC0C3B0F8BE5B0C6085F6E93F
-0FBB85FBD2F95504A4D096EE832BE7725DA0252B9F661A180C70BCF47235016F
-38D6F42C014301E3126413B3764B41F8FA4805726842E288EED6750C35D1DABB
-A9EEA47991BB5FFEE5C8170640BDF5FC14FA1437784E66774186BE05580857DF
-7F38A88CBA14030AFB4F5EFF93575D100D389C07FB039392A0FE595BBDA29E5E
-42C9B06A714101C6B3572DEEC341207DFB71DA77BA277E9B1733BBE7C0FD6B0E
-9EEE34B93CD73EBCFCEC6C1F0A9B9BD7CF98D1607913C7BD2A5CEC1E99C28E78
-919C6BD97183D56314FB8CE370ADB0B7EC149070CA174DA12C9E78E2F8237DCE
-6542FD8F8FF09F30C7AA7512834D3C9023DC8C38AB822AB24B5868E95D11EEA0
-2B8E5DB0A0202733183E4D42A6ACFAC476719CE650E4D626DF0C61DAC38D2E0D
-F6A547BE27F6F81FF57E4429CD386550B1269AD1D5DAD3001F09219D84ED7DA0
-42BCE945AF25A2BBBA5A8A9837AAFF24834BE518C24B93116DBE2F3505918462
-8E5CB1837636824945C9EBEB19FAC2436234EFB6C7DDEC962443F95126115FDA
-9ED2EDCF90E89AAA4161CC2C9905C09A3AFC7F43F3CA5359A1B93D2708A7772C
-C38B3CAAA89039F2494B3B8A98CFDC1017DF2D56EA4D327DEF18192AF0C50443
-7F441EB251A4E0DED7E9AD1F97B7ED4AC84510B46A65106BFFEA8CE52B6B8761
-B67BC5E8BDB115F573B00288CCE135A81FDA356A64FD05EA4FA64FA5C2F65560
-9EC41377AF28EC1BD5C2E02DBA275DD1C0D3D1DD6B5D9DF50CF34F7FEAD7FDAE
-FD37AF16B984F465CCE7DCCE5B90C4629C9BDF32A148AC2A8D910FA0E29C40AE
-58A65887C0B88AC3FCDF9FD19A59D338FAE6D5B47B18EEC3DF3E6E8099B53C38
-631F105389025CE542B1DC0AD4C37A1E3D3750549597D8ADDEDC2EBB63CFDBBE
-715A17A63FDB1BA66CA14F1654ACCFEC673896E822134793E25CB19CF345738A
-30C2271A55FE6738DD024B885E162DFC3ED25A48E4D20AB1FA20F042F0E0D7EA
-920F4F762E372079028A768E1376933FB79F1ACB7491F1A46AC493765AFE952E
-5AA2C99D424B8A2C21515CB0E5C8C3DC7E3DBF98D7023E4BAB642DF9574B3A03
-77D6AA40E3EACEDDF61ECD5C2CED3A01136149DE496CFB79E8F9D8996B7CFA35
-5EAA591DD2FB7901450B2862EBBDADBC91482B242AF0DC5F160701BFC2F19E73
-C90BF0F70BB581F51E5672A14084BDA05072AB7F4C8273A7E692994EAA17D624
-C973DB63D069B1BE80133A6F2DD6AFC294A90D3A91E08E2DF6EA3B25C5183E9D
-D2C5B0EDC2206BE65DFFBCE16BE8F29EBD3B88CEC4566A8E13E4CADC903AC00B
-6004D8D004C9811E952EBC5556782DE99D6B89D78DAA83B72700FC07AC2A1533
-9F61068E3C51536A49A03EDFD6362E3EF785CEFC3637F7F6FCF01C145C9347B1
-EB7275DD83638C7D2D818D70C1856311A672F796FCFA926CFDB4BD6D5CD9A3F8
-4F5813652AF596D0B0D8DBD656EFD44941B373F6C8932B80257C401C507A76F0
-309242DF0090F2B11E667DB0D982939669A03C2A9A1929634267795763A8C8D8
-69EC48E7123A1F2A59E6FED8E2CC1622F405A20AD944D6117EF0C5D99BDD0644
-B867ACC187FB8EB8E2052DA933C9050BAE11C55820F594AF51CFA2E492ADDB85
-44D6B9BF91A93231D73B0AA98BF2454E37602F225005B34511DAA2DCDC00E080
-40AEE3EFB786ACC3460BDCC960417C9DA3D871F8AB4EBEDCF69F156B60572EC8
-6CEEB6C30E6B96ED68F21ED71BDC5CF134BEED8F2B14D63F51E5D231702EDE02
-B371AA01311549C60C18DF8C8A7B5E287E28489A0A826C01E6B2DDF660B00E1A
-A5A774030064EBCCB783B252F5F16311E4B5D18644D4690A91C7AF7218265958
-9DF9BE85709786DC0B61029D0B3733BF47A500399BB692E83B712DEA255CF6ED
-278846CD80787D44FABB12DE58E695F7C442B012CA6597A30A7EE2044EC827AB
-AAB695150F84BFF0550C9F9D4F8C11FC2CEB8366AD3D64B475F8CF767983A702
-2DC5BC1542A3F724C481E89B6CBB22B2E1EF14F1A966D1C1FE77DF03F6122893
-C8234CA23370E373DAF64E07806B250AC1026C8B8D77ABDA8BC5E68096C761EA
-C626D04AB428377CC56C100C945010D623FA29C20886760DBECBC789EE408B31
-C2ACEB25E07F23F486A62CB8CAD305AFAEA05818B9123793DECF15CC947F9C7A
-CE4DDA5710854E8F741CDBBC24180CE13CE065A62F88BC3C3689F59A4CE31223
-0A5A539E3083E8687B5AFC85ED17D9FF44797DC18CDF03DAD0A6793E9508F010
-ACFBDE6ACD434EBE2D484358628B82D322F2FDF5415A76758CE9693027CF8DED
-6BD640AC48DB05298D0886BEB91A465233C3FCD0A965B9C4CAB1D5BA26AFBD4D
-F4E90A0B6953ED2D83C1E17FC13DC56868E90551373DA33CCA31E46F90CDE47F
-7B7A909E71C33BB18BA8C2B99D8DF4CD578C139335D392D8E28E19ACFE262B8F
-25720BC91B292125833CD1F2D8729A067A671C09D82F5E510905C4AD9DC4937C
-9FA882BE39EFA7AA717FF51D651EF35784AD0F79F47C10D4D453BE6827A66343
-554CCDE1D3333427475C9A51A91D9162796AFD0CB4EBBB2CCFEF4B982F0A165C
-E4F2620DC0EBAAD7CB7488AC299FE2FBD5F0A8E74CD1E19F9C00D07096ABA755
-13A3624914E776E46CA24159DD3BE2FDC5380935A3EA56CCF855DEB471E0EA24
-E1A6607A321C5D252E297074406BD34A186E5A27F0E9266B1A0E5C76E2A7259C
-BB0CF1D4C09DCACCCE45B1B7E5FB1014926B28B51588508F8682313E1E9AF6BC
-4C2EA9E0056849EDCDC3488A89BC2914FAB950ED916F060DE90719ED42A5200F
-FF1661CD953E4DF79C855E5334CE101EE702F70854C809BB02BD2EFC168D2370
-1C05BF3E0CE8DBAE8195882032806DF9CB6F255BE2081AE8B1BD4A59B12872A5
-4A7C4493CD027EB52EA2DC4DCD13C71A5CFC077C1CA0FAA472F3CD23EA5F6D6F
-B613C147306950661D3303694F5AE7EB1F61CDF4F0E26C3245F598888FF8BB85
-3DE03BFC9D6100853DDB402995BBD0C07CA3AC37A9D431D29473D499DA0F98B8
-A87611EE0290C4B3176742A785DE6D70AB8E359869159607C703D8C6C0DDD385
-A375AEA1A0FDAA7DFB69E3EDACC38389350BD1768104503CAD2A918E5EA8FBEB
-B8B18C4E86442B667B4E9C3EBE393BAAF460708E9B08DFF09EC56DE840C7ABAC
-909150D6FA50B338A41F346C057FE09E7FC87EA5037BFE59EF31B1EBB3A3B6CB
-92ABE96E01AF1200053C1793B9D4B235DC5E462C56579B09EBA3DA1DD54677C3
-9418979C7F9949EE69800F889B787DDE3CE77AC588B018501A94A34E04F4AB71
-1B1AF892AA7EB62E988B0D81E1CC1BAD21B74EF5B74938C0DAF1595799DEB2EB
-74712F1B2581407FAA136E26F42EB97F7079D2F6A089D8E0C8F3EFE37AC22D01
-2CDA859611A534EFC25B981C3E09BD83BB794AAFD8348106C04DEFB1C45048C8
-5F974FB0E02D80289B27687052AC6FE0518E0DF50B3EA48E94E0759633D838EF
-345509EAEA08E380A2BE2F74DED3632919C6D445DB1C5E71C586ED8EDE60B466
-2C7B23826CFAC7D56D390ED69612EA6ECDA473786A3C50A5DFA892BE3A805DFD
-1821825083AD2E60FD5966E604B66D8DA798D3A8DBD4722BE83487D63BC279F8
-7EE507546EEFFE498C6353DB5E2A34B916686243CA3DF137F31D4F9AB0A5F218
-16B8108CF1FC37DDABD02F4503F5EBC0D474D3B2129E41D7B582B1715732519B
-4C8D330C50A50F5EBFE2CA930D6BE2F259FEAF9A84536F2FBA0CF08DAC607A1E
-A7613C3A4F484EC7F1EFAC73D46A704D6B28BE98329516943862F2060D966DBC
-D65EB1FE8B28D7ECB685B295381EA70878A4365BE7C0BE237EECC44B18C191E0
-A643A9302AE5C0E1DC5BA7492973E15C23C1F2971219470E3A0E1BB5A53CA01F
-A762ABB4485832FFA96EC84B91365BDAD51725CE384755D894CA44C3A16FE96B
-C8AF6679F0F6E742323174554DA8E3DC3AD18E27C444B77A9B5997240FA58490
-13F7C1CE8AE4BEE8E379437C4A0B6CE990F0563799201585E991B38489DD978E
-5686A4EFAAEC3FC44A2394CBE15099D481AF4E0CABD88C2EA43983624280CB18
-7FDC9ABEE3520B9D1A8EA9B6374852409785067C44878F3B6F549FA52D67E2F6
-9894BEF1F2D1A290A77DE1E2222C098E75B57DA6AA421F38540F42B771AA0334
-C4737C29C0A2F6F9471056E6975587B26B386E98B3AF18FAB90A0CE97D2891D8
-D09096FC147E6354969E96AC184C225D57D91456DE27B20EEA371205ACF8DAAB
-0F5F625BC0F4DAE8D6E3394BA9C83076B121EB70B1FDF7D08423A722E84D9FAC
-58D518824C0A28678E595D391C73E8DF7697D976F341DA9DB4D470EE6671955E
-C0A52ACF5585B13658009E52B34B43D3CA68C3ED60F4C559F3F14679E821242A
-4652EFED5EB2FA10FD79A7625A65F55FDBEB039F3ED81BF813F4B2903B100F49
-FB969582AAF8E7915240A797598E64CA013C2A677553C5D3B31DBE97808DC969
-D93E1E95D84561EBF2DE1C5385140BFE6DC008C8D69AF6C9E66D494D4A05196A
-E0B0EDDB89237695A47476F7A8D4FE4996257A68FBC95463FF5DBBDD7AF91987
-53144A0F1E87C8802873658C26E2122B275BB100FAF9B45B31CE1626D8F34E8C
-4B328E94AC5357F209ED3CABB5AC998CB12787EF5B91FA3E3D4A41A76F2F4A6D
-56DF840FC2CF7B6E6DEC1883D8AC69A4CCEBF6E12B299D6B0FF47518543E0F5A
-5B6EF034F2FC137889537A47F3471D095CADEAF2F5E79B963BE37E51702B582F
-4C40FBF833EA25146D3B84CB7D7F15D84F055DDC7DE1C1761E92D747E5E9408C
-F76BF379111A752AB8AEB60C89FD2B50EFD6E0248EAE16979B34DA5BBAD73BAF
-066BAD64231F5B7AF89086E9A359EDA0EB85F31E83822C53C21B4288FB486626
-F439671D64CC07B4109EBC20D226CF1D14149649F18C6DA944C418219053788F
-EF41D2AFCDA16A2E3134E6291D0EAD43779E1C8E08C330E25FEB5D9758B0D90C
-4EF22BE46B227321E394771C0A197427D7577825454E014196A0D1BE31C8C710
-B575622D690BBDA023D6D6F5A0C480C44164613EB2BA73A122540C7DB72BD689
-D6B7CAB154E68E9821A1CD04F7A19DEABE8CFAD3B82A1D3F72C568C2690E3DA5
-825224B7137BE317F786BF68EC61F9471E8A602AD23A5574B30EF1C5507F367E
-EF5BB3433527556D50648DD640736C859F3FC09FA88F27C2494E6135DDC30EDB
-28866065801AD1D0436FF0017BBD84B83C499D2BEA0CAF173AB82201D8A5BFD6
-832E74A970CF430455D1333B1832526EACF1F10B1175C2F70F8C29C8866E68A5
-C1A0FEEC5126F5E1D465CF53A0691DCC9BBB81A2F1AEF93C3ECD6AE37EE990B5
-F1116A13946A893BCB15DF826A51A76D02B187369A3996CD51BB7BA9A175E9B9
-E01ACEC915C2CFF351D2BEFC9481A5EE31969F21403A46BB2DEDE08E1A714677
-53A290657A3ACF80B7BBA1C0A3AA55193D46CEC9B84A3747E4C1DE0502BA2707
-9EE55266F1E6560A065745E7F9DCA5C43385466521DEAB53C0EC9B6ADA2A1256
-55F2FB1FE9877CADB4FEDFCD8D3C406D8298F827688D9468A7B0F1E62DC71189
-337D4D4C96A4398D1E5CBDCB81D7AC4D6FA6D704C9DD67A2938292D6DF0D108E
-295CB442D7FA63DEF8B948765EDD7CC7DCE33F91367FC693D365A5D1BF443C8F
-517E671D1B0750F663A9DC740D201024E494A55D69A9AC4F1F4DEFFA14137655
-8301A8007A5E9440130CA4B06F445BF5980D628E52A48FA40B4605534DA31227
-815484BA6E80A731C5231EDBA6E6C1E726778906AE0A2610EF04A4C6118AF0C2
-C9F80D817EFB721AF5CEA77FA63E5A5D06823090D876A4A0BD80805651294327
-980A51408C688EF1BB8CF9510B964EDCB3090A98ED580DBEB04DD2539FDF92A3
-312E14FDD1E97ABB9375DDA98D7DAB52137BB0A23EC2D6272964C959B5DD3807
-2127D51812B0506A18C1C32E743615A46DA5049B1C7788B834A387D724D3D093
-91AAF5E85C79B748F764E5FF1C0C62E8219BEAB9E6C898A70DE12E45999180EA
-0EFE85D1C271F1AAA6B22ACD961B5F069E98FDD7E389B9D2321A92692F572A1E
-286723013AFBF1BCE87EC20FB1A2CA631CEC078616DA0B8820C7B8FC38E40782
-0436BD0E5FFC15AC70D64B29D480ED29E87180C4BCFA326BD12E039905AB2A03
-F5BC16012AD5B365EF8833E75C1027A20E75D6FC90BB344483A0B4B9524EA050
-1EAEC5D2B1A1BEE774B3FF449ECB36799501D4D0BBE3D7A238A70245CEEDBE47
-21037B436CCDF087A1DBA2BBBA72E1FBA1C67D4A9B6C31F83F5B4D4C22083636
-C6A0E02497DE7D9B4F1F77AB35683E747730EEEC14C8E8D09E9E6AA8BADC1352
-5F4E0DFEEFEDDF79120B52CF864C15DFEF485102954E594234C5B8C3A1B8E781
-C94F5031CBD7B4F9D062E026C155FEADC34F5155661CD54629CEF3FE900A8DBD
-C420246807D654AE74A7F8B12FE83845B8A223ADF74D5A1CFFB0ADA8B7C3CDAE
-AD5A531A02CDBED684D582C687FBBEA28672D318D6EBBF69440AC288D2DA0D8F
-28D071A5925CBF464873200726F937F753D8E46223D33BD852C55F18DCC5EB7E
-90C156D31073DD1208B1413233A1453D0FD097BD9436A6D8C48D2C06F562E685
-5403C65647DBFECE330FF479B5AAA85A2062CCAF56CA86EA9DA8A2665B718F9D
-9BD99CC45E71761462FE9F1C9E6DC5A065B4E49D71B8D075FF39763FA421EE81
-13AA6299F88E858E72B1BFFA7E3718ACA332F4B4DB0BCA5F1949C0A9DFDCA08A
-5592A71B93ABCE7C7532E86E36521739E2FAC0657152D683AADC6C948BE885CB
-4A138B3E52DEA54E47635249A3E91AABF5B0D1F2E098916DDB0033DA6FAE4E8E
-3F249B75B28A761006D7C5AFB5446D01CB817D9EF4C577DF1B8CA8538F23470A
-473475E4D14FFE1FFC3641FA22D67A054F64EB7BA84AA7F3B64728E413E73D65
-E688DF8F1E2FDA51D26EE06556F90415EAA03B9FF16F2D71D31915783FA3E336
-2A351A50CD17B7C0A18BCBC2B8D723BA2E0B274B8F729D2F98F748525754A991
-C1A2E99A7F1CE6796F69ED0B3B65456446F3E44353B99EB0EF378B90F78AFA7C
-DAB8AA429FAE0E131E106EE6D1FF50342A55FAEE220314797A4178841D921073
-FD51EBC4717549E78D2F0EAC656B85982FFAD6E2323FBE976C6FF8B5CF305047
-ECD4D0A288AC9C4B6C3AF1A31698DB3E0B89D1F53682CD327840357AF76EDF85
-61C39658C50BAF03B6FB5E3849CFD15242BDB3127DDFACDE0B55E54113372FF3
-EAD5683980395B4B06DDDFEC8658D0DDA4C4F510AAA05829E66E05262DBA15F4
-5CC0D71FED30C5E581430DCF1C97E594AF8DCE92C9DDA10E548DA7C0D267AC08
-14AACABE8E19DF560785F574ACD0CC405D572731259D6CBC837C7DA4E657761B
-AE01F94FDB34810BB3D0E2710AC5759C1393E37A4C32199A4AF79D6051F22740
-2F4A4B0B7C5626843DD6A7111E7F235E576FEFD15D0A539D783D172F6D81366E
-3675769A38F189BBBD7DB67F1657EABE119DAD594358D460986C9DF3BC8E5F91
-8C793CE4EF65099608002971537DD4C142D56A04B3F277B027FF88AE185F618D
-1EC38FEA4917BF02BFABC7F38280DDFE621B5C0D3B7CE7BF3FCA10A104D884EA
-759A102ED85BE48E2D86BDDB22A3EFFF736F0C226BEDCE80549C46C58227984F
-7820CDCCD6D91B1D3DC0D64413E3D864AA555B1F8768FB56B3F2730EAC6651C6
-08974F3C001C831E088298BD62FBB651D533EA0D560457C3BF1ECD0600891A89
-208E0E64304EEAB64E7BBFE0C311110B69326B281E733CDE3E830F18A65344B6
-AB0BC49F600DB1FD0FAE003B282A3E53CC777F30BC7F5025B2DFC07ACA3F9F58
-F4CA04D4ECFBFCE044D7605741C5DA0BEBAD465A615847B1BF36ADCDB90D6E43
-A380748B53A88A38DA85596A6B9D763D6387C86C06029946B611EAD2571CD348
-4BC8156CA7DADC70B3B52305C87FBB149D4C2B494E187B88A9465D41B7506ACB
-C95AADD4DC86B73EBA2F8F9BFD114646D5F63D76076CED733312F79CD35E2636
-7C62214EBD2EC427045912F2641CF35F55EE950EAAF3D46A853C48F2FCF39E85
-F95D45FA3BAA655399FF86EBF5DED9058AFEA9F1ACA93E4CA45098ABA10DC21A
-82AB37DB61666C054AE9A7B0CC5E5BB0AFE5853AE83A6F2B195041BEDBDFE93B
-3FD9AE1C1071850B1322A2BE6661BD792875E4E1FBC1F5403C92B5D359823BFD
-E6660D6186FCAA2F8935812473013CB9FC8722E5826EF24892571029A9B2E04D
-AD278B866A3B3131DF6ABEC661A208D41ECE38246BFE505ABE1FF43AA9FBE173
-5976125DFE94748AC9E773CDF98D97C452DE40CEE2F22E096D56988E5FCA6F75
-FF26F21ED8B30BEC538A6EB6A32C91EEDA9E6A418AC7B65BD32C98E4D4905CBE
-732557CE8F13867D8DA1FCC26AC2C9EBCB4E5CF02A63622A7C78A0E4077E6C3C
-8124DDA2EE92EB024F2A9952B40AC4F268C82391A57FA6778E369691E9E45262
-6CBFE8465EE5E88963673530B393E1BFD2B31E3D4A179F2FADC18B3086AFB3E0
-C907E77553FB505D1E77B38B2B7BF7ACB47225AAF5012527825B05A074BA7DF6
-BF312FECDA6231935BF47DF86825A2597343AE6AF3037993E3FB2AE3887A0F8E
-D3A18F10A0EB221C3D0745429668C14160BB103C632901AE636E94021704C1FD
-229C48B75EC4D56D68C3FE65555F3433801436C5988D5C284D9FF9F5C0292916
-F92A3E4CF2A837CC9EB5817FC75470AD738D5D7FF7B2A1119D9100A832069705
-045ECFE15AC37413424FDFB1596787037513FA5C68B313FAF2674AF5E3146E88
-DC49A761BD3B1E7F6D7D4FB47837C020E335FCDC2A412BB2D6D26511BE395108
-A24DD06D2273A7743E1B37D28A33528BEB674A0437DFF8EE6CF20C11FAB343CF
-74EF415D8552708D6B8FE071E44DF304CB0DABB4DDFAB61021A433D3FDFFC67C
-E1F3C3A77C896D8BB41F239903360FE2CF43DA66C8F91697D3F51CACDC637F01
-3D1B0F5870C799F437E74F0E189559414DC0575EDFF802BE346227644344FB00
-C99A34939D08752FA14BC8FB82F01CEAF5D7CD37FCDB16A109ADF1C78953887F
-DDD35FFDE006E0DDB2D23D330176AF281094580187F2520B5243FF3709DE1F03
-0FF1AF46F526557778C85D838D62D8AF6EC569881F6E7C050B9E513D8285F690
-20E471BADB6037633AF4C5B170844E693489A3E839B41BD0E2143A780F0DA313
-23D35D2D4F2E62285697B61ED869AE81019DD391DF0408BD9E8F6281B1B927DC
-7540DAE676AFF9D9836C3D603BFAA665C416FA7A7E469C2C04451D3CAA4E377B
-44F94DAB0E73261D1E687079340150864D1BEA9C2D339EA16082B5A44A1C75C1
-82847F47DD03EDDFF32752D3E02E99DAA3B8DB957B7466973D06403C29B97F24
-BB8E98E13A8E9320D8E781913B20EA7538B818B8FAAA9F0824D95C2740987F32
-0B744E78A349D1DE89C448A320BBD94B8DB00FF6497B755027F03E5F54C75E6A
-21947E505134FA5EF393EEC36699E02C91666D159233E757942B27AF8C8330EF
-6259A6A50F5D8C44490F79239ED9C23CE1CBAC6F73B63A792F8F3CDF9088A7C5
-9478EE991E68D3656C0B7133D069C1BC507AA1115082390225A165B20C95B376
-D3201EBB9CCBAFB4955228F9C505F4C8A52AA46595B425D58FA6FE046C86A065
-9FAAF35EE91C8BE9F86A8554CBDDC09DA7A50E40BB6C5F2413F29DCC224B3963
-65AD2E5B379C32FE1836F6C4A34C61C49B9211999E75CFDE3BECA0354E2780C5
-8571551C9F33738AC21DB34538B1C1CB210BA109D665FFB5B532FF715F3F92A1
-8BFE7CB44B0B1025F7F90678655DA0F6733FA47EE8CC94D5596272E071DDBE95
-FE4443FA9A12EB34908091266102825BCC944404D0DBC94880C847D8C4ECA6E4
-58153F94CC0A5E79E5541DFF4238D21606CC71014C81A3471CBAC3D5184A95B3
-F4BA024FDF4CDA85A5036F4BA06F60AF697F0393C959076C46C8A1E6D9F981DF
-3AA6D1D0E6450CCEEDD93E9C32E602F2EDEF336AE58E192439E28ACD713F48F0
-4E17D2DD2285B486611A1D0BD75BD8A0F68EDA56CE7818840F37B2DE318C4A13
-A0F5DA34277B63ECB86C6069CB108173579ECB9DE09D648A17D93169AFD3B955
-A2A5903A5BA40F8EF974A1629833B197FBBBEB565B2860B339BC24DEF8C33F3D
-24969C37701491EBB7E8060DA5B2611932AFE8DD212D9EC4DEAC39C18AFB5B7C
-7EB41BEBF049D091BF808A5AB6931113F76486FB719523D908C778C90B7E3CD2
-2FAC73A7D615AF840BC898348535909350F587369BF4487F430AAD05E264AB58
-9B199B3656FD5B2EE30E84865522317A803DB4271408E03D5D1D58337C189069
-B12CBF1EECFD7390E99E3BEDB74C1B52BCF211D87CFF0421591541DCBCDDD787
-E76287821FB4B028B6FDF71633A311B37195B2114B4455520BFACA0AE008C532
-1DB9ADFD5D826D23F60C0D004614A30B940ABB17C0AC1F3CFC89C120E9760778
-44C01C3635B23CE5CCF9C3501EE6AC22ACBA5054BB51708DD215C86DC2B91393
-DF87672307B782A6637015B4D7FD94DD76A7B4459F7FCF0B56FFF2D9F933EC08
-306C331F091A85796A2C3FD0DE120B7E3614AAB3507B6259A22524DE6431147D
-99F525D64FFAFB0303C85808E4417944F56DDF77493F790F487EF7B946B1717E
-98A120D8DFB12E04C15BCABEE0FDDE6AE96B1EB12151DC559C5CA04253D43C6F
-E8DBEA0AB991F68580E0EFAEA156CE4C30397BBB6B77E136427CB54184F58F3F
-04A2270461917D234047AACA8263398D056D15F7BFDF8728B8E4E96EE2EC5D17
-C301079EA0D7BF7352EB1CDC808FA0606369C5D970606FA9A1A264AAF0AFACDB
-81EDE7FFFD3322ACCD8AA9BEE2BF58547E9EE98079E9E652B2B44BF40FC919A8
-6D93FF069DC89EE6B7DD3C7BEDEF8904C3DA71A7279A839A4898885B3BE61A53
-1FC8001AFD5F2D3C67EC848FD1A9C6D9A1F3AA71C7EC53C6F9D0AB5B18090ACC
-BC709E15AD073F908F7B2180013FF082B4A7129A719A3BDE4D0D2DDFB471475D
-570A557A578528FE23089BE67219F7961C18F2FD352AAECC9C031A3DFD102A88
-2DC8C741596FD630BF9FA4967F3E4A55B79DC79A87900866D98B88F25B30BA35
-FF523E798FEB65FD8FAFE1AE2E8D5120455FDA54B4408BEF62477CDD881661D7
-E2168F5528F1D9665C3239607C39A19F44D37E6301EB005BD0C6B0651A4DFAA0
-30409C5C10BA9031263E3C9D036307A513B1A1A15770130FE6EFE206DF689FBB
-F92114D3C10DC1AD88E10D4156FA2D07BAEFA5A3E756A46D9EC838DF5A8A288B
-BF28CC24EB4A50F07CEB8C65E28EAD4C39E1F9EB6D710260C05288897F6B923C
-B54D4238AC9D4C67060EBA295A9B171930D73C2358B8F2CC28EAE996590B863D
-9E7A5BC2342995ACE7D4F88741E49F797EB7FF08B8D42E1315573AAAED1E95BE
-11F2F8718A95BE4CC399BB8E5B26813CAFF85B93B8757C3D26DCB36C4411E0FD
-D8126FC86FB09EE3A243A90BAE287CE9CFEFF48D8DF37A5839E4E49802511B11
-810D030373A9BEBF406185E80797E66E2FAFB006D1B6A9C96BA8E4B0B4F52B10
-8DDC3E03CF3CDE14BA0C8D5038BD7FBE0995AEBD046D875EF91D5A4D8E6F3A0D
-F26A616751D0AE2AB43E7BB2A9BD9FA78FDB69536C5BC1D4403FCE0D9896B1F3
-6988EEE0E903E88E0C3745FC410EA85F5BC3379E6F2325499287C68E845BB448
-5EBC447A5683B96C69FEB150C270FCC5E8FF59C04B586C1973DEA3F9DBFF71AA
-939D27C78C089A96D1C2A693D7F4276077829324D681798D3E58350C8E5AF735
-6C262BABAD00C6C757576EA0E462EB25BF9D9E05EC29BE90A5571AE272BA6404
-F7B428B0150CDD14498BC1B8FF2D5F6C004F4D81030963A09ED2A4E162C5E2B6
-C77914390A35CAD73632F8EE97D36F11A6D81BBB898B35FEA3D8113F56C6A7B2
-BA73BED49CCD66AAC38D8827227C5EFD98ACF80D5927A0C004F2D317AEFD92AA
-1BFF1242D31636F48315F72C963D99464A517BD3073E8FB6A6E3BED023CF4579
-37C6520C28A831A9C5BAF45088D6C08DEC85F3E155C4E26721F45DFAE728B374
-96EC34E4ED7AB4B1599536FBA4570D07CC5D4B44DB3FC2CECC9F2D6D8A45B783
-B4080E437FD8B67B646D004DED5CA0EB26961401DD9E471B3ACC165C42310B08
-D3812C98F37358A65BD4071B164C6C6B952F7BB5826903A8F7ED9361DB25A152
-34165FA78B2615D98F8272E1D92C35FA9D984D0DCFF2CC0A8DC37E7195C80F5C
-26539378FF46640369571FAD6DDD7B385105FA33F684BDF134C59799E60E3B85
-85F2EF3B56FDE0A78AB57CE6284D055E55EBE9CD9CDDF0512CD1D124FFDB34BE
-0DB3C60DBB0D682FB90DA8F919B67D9E8972976B6AB6EDF4465D4428F07C900B
-454242768A1BBDEB38412F487788A5146B776C0809371DF3F185D5442C87DF02
-E8A6D7B2C5B6951511B06574D00356E21C19AB54B3176556B5289318D9EA3F2A
-E9E871EF3F9FEC2ECE45FBF68304C967AA2CB31ECD6377F02D1CC417CCFFE858
-7A8E4A5046714166AD865833701145D8DCF040E0E4C1921A06413AD9AF323656
-C2F3F2278479E7168F2FE892CAB7F5223A00609D58B4AF30B4A45ABCCA30728A
-FBFE731C6E826D6F240AEDEA3B99F85B6A370D8DFAFA62CC1B19E76F02A7E87B
-D4089D2C221995FD7DA83AD6F8181AAA483BE98FC7CE5B159805C3DA26CEE874
-57B2978C3E0285145FA96A9B2AF0CCE5CB68EA7EC95B166FF24B6687B020083F
-A10E639CDE59F7E59309F034B8DFD24C3E2479B83E57E25CFE67A2DC0DF375C8
-91E28313B03851B2F4CC917F2AE82FBCEB0CCE4F46C65F58F0BFAA3025750E23
-D916616FA7D88A90A634790FA1F403A7D583C99558B348170F6871CD1F528C80
-CDD2EC08D16EEA6642788AB015B834B37EC2845F83836B1C08676903B9ADD123
-C868E72A74F06B5DAD560BE028DECA2109210D32B231E30CF1E2545DD7B4C68A
-3F7946EA6B5DF7BE832E5076EA39C64561F9162901D418B94B97A4705A9639CF
-59F7480407D4C0A42B2708F156127766C430F86D5437A4441D3DF83C09B6BC75
-E533B0F96323A243318C2B1D2C38DA14ABA8803C15847A5DB49EB0D56AEC39A4
-F0BA4011CDC6D2AC0F7F469CC896FA6FEE960CA744E17A94D094CFB1FA136A6E
-A5844113A881DA8CF6E9A17C8644AA7CC149D73674BB9E23C7FDEAB512B5A5BE
-14CF8C7E94555961414D80FD03C69A9CEF41187123479C66C8C8CDE9FF16A45A
-39034CA2A45AA158DE8B3AE3509253E10121BABD3D17840618A2646F73B07E43
-EB0EB40FE4A7561DAC79859487BBC9E5CD46E13566416EBD16644063FE1727E9
-7F504D7D9CD0BEE3376A116C96D5F296D6694178778AFC44B9B06D4FE773FE2A
-651156FF236F70B509B68DA2683EF1B899E90B96DA8FFC1DDCC5E685082390D4
-9E55FFF0B4C22B60B9A24A34C749B90DA95969EB58A53ABBAF57EB13E00F5940
-EACCBA3D1D330932A475CF3871B29EB03CAA33CBF5EF73B97AB7D3BB0BE1F30E
-D32EBD2C56D30287CDB671904F2D8CFE0C8E8B99BF2E9D97B4896B1334BEFB03
-BB5AB9974692770856D2C1C6E544CB688EBE905CB2C56044DC02F34F23010142
-EF8279E29161C07CBBB60634DDD5F83E4EACF81E1909297A43B6ADC3E899F47A
-41088009AC604D16675B0D46869BD6804552B4DBC387C46B4113B1BE0BFC56B5
-53A04F4E2D1F874D3D04873A9623CED065FF174FF6CF094A6F401846657F6760
-83A231132B24EE08C7DC19C20A1AEEF9EBC291518142C68B0152B0ABDA981EA0
-B52C061ED89FF52C83D1E87E54267B53E7B70BFE11E12F03E667FC94954B82F2
-ADB1539B2C9EA18742105DE6C8D98EB5D5884A2CCA46F302CC3F01685D53B60C
-E20153395D1F42AC8194E0F80A2A9146A3F445D97161BB62C0C3A3B6D940C63D
-746ADB286F7B87124002FAFD3C4873A8779939899C1755276039943F8C80BF29
-2D8C6A53090A0073D64EBE58BB56CAB7AE3A1965800DEF454E3B49932850CD95
-89C4E6733CAD0E57718CF4B047D2B511938C14A9DB02B1096A62ED7265752233
-BD6603FDE98F1E5F353A07DAF565423E23F9868A3C239C4E0F3154A2A2D7D72C
-843C2BF577526612F35775404AE259A3AF07FD60C18EB309486763F95F8D83E8
-40390D6A4330D8A8BC7EDCFDDF35D92AFCD7287815E875E2A0FBCB6C9AD2286E
-F9E4B2E310D48403418720C93C307BA54A260B536FBCB14A8BE3F7BEDE7FE460
-21EE62AD2BCAFC0D22E3F31FE06ACFBDB6A75EE4E82580BABCCF4A50A1F9BB8D
-0BB40598F71D5A41E21137AD0D10AFA953FE91F5F2D77FF7518007927E3B8EBD
-04D22BAFC49447C51DCD16DB8A1442A582A7D42B87FFEE1237A7E6D8ADF24EE0
-ED80B64232B3FBD2505B9D3C15BA811024803830523CA8CA7F0E3267834AE74B
-CE956BB0289DD30CB462D2B433C4A703FADAAD37E7709F034295128C0DFDA3BF
-5426749CF1B091036478AB7EACE6BF1B9D16347596F6C99CE4A748F7C1FAF036
-EA7B52CD1E738637488BB252CD9DCA0AC8CBD4E43A7D7BEA8A37766C74666DB9
-87BC8D5F59E761A96C9FF0C9858336F527238E6987D67DEA5A2D76981D682CB4
-46B328504202DE579C501FB5CD968ACAC8BBE645551A80EA58E610AF9C1997C7
-C28D68465BA1282523A5548E166D4C6438BFD09272A6DA455BF8F9433F9A826F
-661965E2A1B5D500A1BDF01595343164CB202930F045885DF57A174A2F92998B
-18CE592C8E9FE0C032FCA5359829A178748D88E7919FBA3E5C512EDBC17FE06C
-9777C224052395A6635A92687AFB695F7B756BBF18604F89B5B35FB34E4AF83F
-1761647B6EA6F9328B1D98D4C01D95F2A4C624C89CABD5D13B6B7A81C485408D
-54501E6769E6798686EC746F406B5AC7D79BC18954026346C56526B929645817
-4AA79F861DAC4B016DD9FC4451124834F5D6D49D1913905F951F6A1557907554
-1F61A6EF6AB30BDD46E80ED54A88D6C02AFD014AD06F8A580342F227A9A179B2
-A706025911081B585926873C4D760E446972227FE6988DE2526572C264F419D6
-BA8458BE65774CB9BF8AC64C1986CD704EE52C508DEBF7D34227172DB4C9E6CA
-DE2F01141BFB5D11D5C1150B6AED028A0564509829ABDA80BF5ED8D67F48028E
-E5D040F361DECB1C4B4EEE546383E5D2DB1852CD507931A608641F572DB35334
-67B956CD2B10F3B9AEDF95348883725CEE8FD6FC3241AC406B9769562FFD515E
-8DCE4C10EFE1EDA26934C6F54DE4CCD6AFC691388DB70F6676191C8A425E20EE
-437C3D83A9F10019CB64B029464A7988B70285C3CBC03FE4C088C1828F0D80E6
-EE9DCE67719E6553352B965A339BFE5A901BA8CCD19AE5876E33C3911DDB5F75
-8BF8DDAB7BE8E5F3CA4B5FDA5D1D493EA2207184DE8FC05F02D28647D218E1DB
-05B40BFB267417C33ACA893F7298F43B11B6E6E4519A5898A31DA1733FED25E3
-B89EA375A300D8B82BFE53A226495274EFA1CFC835648B3B6D40277CA3CA5273
-BF209DC1AD8DAEEA7674FAE4F76289096605FABF493C71F7EE19F6BBE3EE9B29
-705476696D7797B90E86795819E830D4CDCBF135B351B47FE039950163C30DB8
-883EE94652DBB7E52212672C654277842E3869BC336E34F11883CA8D73A2D867
-68083489DF474E5D9E93E82FF7D6E53E8C39AAA17E059A88E19DEE9370418BA9
-87BDFECF2001DE95FFB8B43397DF3A3B9EEA9948EA2064011A18C8A946149FFC
-618A22427A61480E0E01524C6EE912F91A7AB50F612D6199DA68914B9FB77A9C
-AAE29FE7BBD1001DC5A05B0EF8C0A047B323865A9B03966CB35FCBA5348A8325
-65FA15A6F1105FA285B713D983BFBC89C26344B20478E64D0152CF1995D19936
-42CB35983A647E1C2397F448C46BA1640A7B167962BCFDAC01A81A5A280E35F6
-631C0709379658E711DC725265F6BB057082F4A5B15B1AD97FA14DF7E98B0EDF
-F8804A5D2B58B9A2C31E4220746CE72FCB13F19C769FBF517616275B1D09BCFA
-78A34DBB7EE210E82CBE47C11456974A1EF37A30B4A486947DBE26BEA2F5654D
-C6C1CD6AEB04936FF0902DF563E8FE36A9EFF440ABF0DB23A9BEB0F15E675E68
-3FFAF60A36D7FEF957289B0E8C6D2E4CCC1ED6E70F9A2D4DD48CCA14E2F47D48
-B84F128B674F64CE70AD616CCD9C2FEF4347F8A0B7E477F597655A366123C0B0
-43CE45BA523A5B03CF6B24E7D7DBC3F1DBFB4CB96D64DC8BBBDD6A1AA414E6B3
-82A8CB1E746B1D3C58A34FC0893D1E9F71C07617CB2B240A4D171D143C6FD66E
-6C0D3CB7045B411599EE16040A3CF867932B7186D7FBFF04979242FBA954C345
-8CCD52625A1C96F3EB6CE261A9B8ADEE3A03FF10D6184095A1FA0E2A7581E6B4
-23F62AC3AD6D4B6C705A3FE8C292603F71CEB72FF9134E86F881E105C29B7980
-6EA291361AFFE83279608299DF31672E2C41BA9EB285882BFC1C1D34E544539B
-4F0596285E26E5408457B0B7DF29E4FAC717F73E907B9E7E8E2DBB5289993537
-F705860C9AED41AB90330B3D0D46B330580EBA7D1154885C74B5715173292408
-34450907E45F5247001A441EEEEE67E8689E1C957383059E652281A8338FA282
-D9247643EFE539035B0BDB68280529CF712977AD351616DF396646BB540531AF
-B4F6943A992E63C0D41A7E4B1D34A4CB422FBB214D8CDB80D1EC6BAEA254D691
-DB730D99D447D892EEA99EAE6D5A2EB2FC9A40613AEBE5DB42C83AA822E4BC47
-89880FDAAF71ADB0EBCE10DA9FEDFF23A31DC35F283D410C561728E4A121FD8F
-60B487BBB15DBB309F94B8EE0BFABEB002DEF53C4BAABA8900A85BA07B09B435
-AFA429842C995BD22353B39DD60681DFB0EF3978BDEB08AE89A2F8D5A947445F
-EB8D1C7329102C29539E8255FE1CDF780EE7FAD66EB2FBEDAD852EEEEF7456CA
-A391AB497A300E547316AC5DE3201955628E668810F56FF5DD3AD6FC344AF8CC
-69A7364D971719DF51B5CDE2C798881D115AB677314166C1EEC8C656AC462CFF
-8653B191094F1BAC25E62A1B7072595B83A47635AD24B01408CE73A8F37C3241
-F915EF0F1C4AA2EDA019C0741C874D09E217D205A0E1DB9D234994A1AF2BBA7C
-FCFA17FF51C3EF0295CD2A473834A8B04459E9DA1AD8000A001AAA1D37FF0F13
-7C47F570EE428ECC180916D447D8A1FE3E61AFD1B1C8C0A6A2A68ABB1BB2F58D
-89142913EC06CD43067D9EC344EC550DB4E05120B9958EB909E5B0E4BEC52992
-37B221D2B19CA0C3B76754733CB9C2E92FFE6F0F3CF856D13E38772D10A3A47F
-32C4977D351B165CC77CF5A7A058307C38AF290430E2DDA105D7740FDB82329C
-BCC5188D45DDB074BABC2C836A4DF57F37975D228F572DEE5B730ABE903D193C
-B9FEE2BAA52D96E6E6E1DE0A9712E7D35B3F1AB3481448F519143ACDEDA7245D
-EA04A8785262FB58623FC93695AC71D63FE44869A378F7C84B7D96993B506527
-FC9CB99ED23FB42B2E8E44CB54CB0CEFA9857B1E2D8D835CF8795BC41F57BBC1
-77CAC72CE36097FC8819A0FAA91F69D39D1B4952402E1FB940149B12F8A1883D
-A7743C2372D0310A694A1992F83EC6DFE40F939DDAC05515162115D1609A129D
-28B0A4A41237FD295316BD21A2BFD952A5F22FAC1DD39309924DC3BBD588C846
-BC5E079C79B29AC92884CE0BCC21B3752DA76253BE0932492DB6C930E120E275
-FC30DD0F403F0B0D25470E27668AA9FD2FEE2D4927D88DA2A3763620376615DC
-2E9DA9472789C53EBA16F2D5B1A3F58452095A9958A4F1426089071014B493A6
-418877DA0B9571871AF05E0A6E231B51B959F7B6B27966AF4E7400B78ADB2F5B
-EC7619FAE378E21228E88D5DBCAE5F5A5F6212D7E30C370CD0D29E564AA01363
-5B6C83B8D708B542BFE9789CD5E5455329FA7FEA44A4A4F60818FD6CB14F4E82
-B32924F2EAD7815C2FB31CD64A5D3BA3043AAA1D807965D8170F09D263205A73
-0E631EC454B7CDD32E10FECEF07F8EBD76AD31064B8780EBB5C72FB97D8AE555
-D3A90A576A56DDA351F85E80F4FD34C84F42B1049D3620B6C48E93B4D5DB9E5C
-8FACEB6CC1B990215A296B53EFA396023FBCF2A237F26C26782E01C3785CF217
-5C554476C1D477977E764607C7BB3DA98F1DC5531A14D21A74B8FF9109C7BEAA
-7C53DF87CF5B54C94B5AE896A1B83AEC62E747ECF564A5D6CBB1B8D7A0A1EB8C
-40FD32DCD9EEEE9B54602743226D5F5E5FFA20D57A7DB57A3DBDE0D5F2306A06
-92C5F55D4A61625237E51CCF620415C65C91707ADB05716A7D46C40F50BA9AFC
-CE00B87CA1890C20693FCC674B0CAF2DF1D4F059581704D0116359508FFFC44E
-CBA7CB09C7DC3A9D325FC4209EC203177087974A287AC5E7E92BF2C8ACA61162
-0B22E161B45C7310CF7E32939BAB7950D30575A2BB6AC10DD6B1A54FAF98093F
-7D7F021B8057ED719A1823231E62D87384258BFB71E43DFB0B90D42B78E32DB2
-DA5A50927318E892921FC947AD8AA0AC377869C23301806E1DEE8036BA871A3C
-EBCD52010187CEB075D508D1B30AA9137DB417D7AB8456EE9D4E88444AC44278
-A1F99FCE4EFE0A0B847BDE8315BE07B57BE1E49E968F7B3CD9F384ADDF410218
-E18797966D46250AFD931FCF1E7EDA81C1EC6807160E0B45B509047B5BE9715F
-2167EC7CC20C2F5F010CF4766513B09DB8E57E802E1D81D8FC4747C25812C9FC
-CF8911CBD0A6EA1306BA164F64FD2C3777CD7FED4D053721EFC209C813948FF0
-EDE45A757C6FD958533BE1593D672B9FDCFC028E5F078DBE76729D6943688AE3
-F1B1F585D74ADF1DB099612CB445EB1A43DCBC20AA2348C5FB32F2C4E55FA85C
-5D849A772996E9B1EAD9F391900A0CCFBEC2D13BA8E110131F6A7B6387E84E8F
-1C9FE694C159EBC92BC6AD42B9266D7AE8BF6F7EE11AA20094DC9C8CF929D557
-7C2294DC7AB644DEB88B729F02F8A021E2AA2CE324
+6D4B85C2FCEF694E50B8AD1C4823F6F35B0A023E6DE42AF57081A9AE898BE7E5
+72E1EC79F333588F392D5542AE53B1D788F12774F2AF8C777EB8E4BCA564FD4B
+34803202FCDEBD0A4D71A27B896C3B6ED29920B9ACFFCC55A6ABFB1513A9249F
+12FF16D433028F3101BE34585153347A3F5AEB3346374B8EB8B2A90CF0FBF352
+F76CD366E8DDB2E6F76A7483DD1B54BE07A8506271291B035980082C34166C5D
+D5F34CF02BFF705AA5DF5F71F2467394A27FE95A533D3889EC2BED67E081F6DD
+F635139A4F5DF48669F4167EE561C97DB7EFCEBEDFDA6E203B0D858EC8F7675F
+B8135C5DA29533C69927B34CA51E46DA12F47A8B32FCB10D870A58FE1E3C46E9
+2C77DE94C39A8C8AF49965BD22F8A591906B29C6A7ABDE3944AA8729C7DC9749
+774D5232C797AE4CD92390F46D6D054DECFBB4871DCBC85E2F5A4C7E65FD3524
+C840F790F2D4F60DAF424EF8756624D48D534747C1688495835CE17B0E468357
+D5F21E51051DD380D277D5283D346E06FCBD34DA0712C5B8E371759DE406C018
+F942A011071FB169D7DD39E88F05FA8F557A80E0DA79B7EBEFFD7532F95F4944
+7A641BDC7D776A3144596988DE34AFC77F426D1139A4BE89B33A575DF5900C4E
+24026DC3BD87A0EB6ACD2BBE35E69067AB29ECEB65FD55DA730462F8A20B4E76
+A1A10913FDAF52CF0A0B423506499BAE334DFFBA239DF490C529E8DC0C6D4850
+71ECEE1417FC90B583A5DA5228A2FFFC67998CA568456DFFFB92BB6B77006482
+911AF973C80126CD8CD1F540492F9D2EE9CDA17414E87673A260C60C96412C1C
+E73AE1073C66FB1A367E33CDA0C94E39C5B82A36CB52FB6B4A612F93F08E15C7
+8ACE1F7C8FEE2771EB97E0ACEF8DF57E8F6AE975D9E3863B544477FAFF599A61
+627730D86D033D06F8C52CDED856FAD5920DE3315D4119F3F1EDE51726993205
+C9893FE1278F590FA11BFA436F61961FB1E571F94DA81CCB378C08F04FA9EA5D
+FBC5C16AC2B88B28964AB805784A5713CD31E66E68765074784ADDF15DA6CFF1
+4BB06AE2FC16290767F8F29F20C823201D149AB4361859FDF6C78B3B8DB64136
+1F04E308A82E308B1E3D4FC20DDC49134E468FE634B76D23CB06899A2131A6CA
+84ED87EC20B618259CD79FEFEB3120860EBDEE6F5F7A0D388F026CCD90E08339
+01BC96E9033B2FBC1195061126BF5EFD8E334BE06BAFD7E5BDA7697D0B2CB3FD
+1DD8EFC7564C0D95CA7154F6B53950E98377EFC366893763CF83AA65D8A9A623
+755033333B2F05309C6C2CBF7D44574ED93C23165D43B4A041E3CF7B5FF8E05C
+7BEFF11F6C7C5807A12129F5F0BD487D92567F9DB7FE1D05F07084AF86D50744
+4A74D0C12B25C9EAE150615516AD6B57779018FFF3661368A65E4CF69692CF38
+EF5F9F5200FA2D593BE63BC15814A23A084F1A0F8A4803A77DCFCB0EC5ABAFE6
+043A8B0A3943A35F603015DCB64268D9B6120DB0F5DBC0D777051E267BCD69B3
+F2DBA1512B97EFF6C036C3B732776AE3F86D3DBD9C50336893B66DFD5E68497C
+8E8E4AE758D0E016DB01A9E104B683EF1541AE8DE38928C0E962A7F3199B5914
+8A0BD4A22C49737F83FD409951FC3FF52D75898D07727620F235528985F8BFE1
+08795B54F5E86020811E5891E34E6A266807AFFBD7FE7FB60BD32F6A127D76AA
+BF97CCD16B5311685C56EF7359EB9EED18DA1F3EFDCE1616871BD46D5FD07965
+64C70BD72235798F9A8D2779C75B5EB186F9D8B00FBBC7B92E275A20DE901EAB
+47F0CFD5B9CC65549853DC822B773F027430E148DAD080F9CE06D3E62E941FC4
+68321FC0B7E268889DC4ADBEB86BE17F6B3FE0A322B45B1AFB7294BC3FFA0385
+B9BB87E9A811F34E57374D93546A29395A5B40A6157AAD0539DDCA8F5231B367
+56B5934AEFE0AC389AE25FF660974CF76736AC7A9107E1DA18FF77B73C45F49C
+AA6620FADC282D0003D149F5A19C6E033590524BCA96E9CFE537F5B2680190FC
+C686DCB930214D8A859F6D4C6566D416A4FB5864A902A755960755C29FED62BF
+7175E86D9180A701E4EA3C46AC9E6A478538C48795A7C68C42DDD9CCBD6AEFDC
+4A9B7FD254C2954163A56EA9E0057DBE566BE9A809FFE1C5AEEB0E857E40F2DF
+E6FCD6EC4D15BE38B092BF070EFBEA1A8EBDFD46060EEFB2820982B07F93C285
+BBF9CB79F3B1F7128688412939570C68F433F2C2D0A9F422F5B16D4585818AFC
+F120BAD9A6AA106305132D445CBE1D391013043A222D260FABC03C6E9BDDE8E7
+B76E1EC81436DAE90F45FE3AF7BF4222BF9DE328203F2DC1FEF6EFC6E1C4D1CB
+3846A4C684EC012BD4B92C75281D43FFD95E3C4D73F0CC1FF0016EBD9A6E5847
+764CF5CD170F07DF5D89C0B72A5927026F39EB7928E4FEB7C2551FF32D9561A4
+442C9C460B1CDBF3C8990617FBF38A163C76FB5495BEC523BDC80B1E18ECD9DD
+487168CB6D42230045E7AAC4210D5A4106D5D870503ECFDC92E45DED10D40B57
+13FC7998D7E0AC70C57E5BDC292C988016F2C4A838027484D0962D468804580E
+BBC560897FDF9FD080F962B8318B728D60D067CF72389783153934D548605851
+F13904681BF18D0447A6803C5E7ED8F488A3F5E2744B845F0E4ECA6BDCDE6F70
+E913EC5B28D8121A2675BF7F2293EC9CBA3CD0A0FD5DF55153D9749455526003
+532C669D393C2B1C7246602905A6289F76964EBCBAA8B06895D13D9BB0662783
+89F106492DD8182AA6A891DA9D8B744AEA4883BF06E75B38A0CAA8CAA8C1D76D
+28946FCB4C52B2BDF62E668B8894D104925801642B9EDA852DFD56D80DAE65E4
+6E4AEA15D40DBD6D9CA90D528FCEC19CC0FD47B0F72AB576104DD55AE93D1B0C
+87BABE4B19BBC2B6A7B2289A498D406A49DAF82ED192B09C0D27DD4384E268DD
+04477CE472D2CA16D1BAACFA8E1F45AADA5DD1F88CC4C4D426D2E5428E4BB19C
+98F176811457A85ECBB97A140C81DB51866D0466B3766F52C9EA227A9C1CFD94
+4E89547B16E5683B013D3377AE7985AF9E3F4486F6CC1C83FBDD34E82E030D19
+9635D698013818F531A2CBC8E36A882CDFAEBEE7715981788A751DDEC167C13F
+8A6ED17FEEB5A627BD6D4955702B16AA619AB9BA90EE059ADC1CE47541CB68AD
+539BCE602C401FD2C70E91E5C321504EFAE63E61E5EB2B0601FB2CD67396C665
+39A89B4A53196E12C91A74382293E2702249400B4D9A8BEA50E44E084E1B84AB
+7A45B5A4317D670E13FB154CCB2FCDF3D29D2BF0DE454A864789F33C6CF48A1D
+A8FAA4A5CBADC48236C9993EFC3595B9892021A6CB87041C1AB11F65B7726DCA
+7AFC54659537AABFB8DF640A796F4BE9BEF9EE2D28F06A1A4DA7B61BA2AE1818
+AC20CAA61F9A0F92035FF163CFBE7F2F9E23C0BC4FE92A13229F3A54B8DD5D13
+84248419C1CF77AB1ACFD700CFF4D546F79F7F1CED8A78B705D213546879A685
+012BB877CB31745AA53203ADB91B7553587EC12F93C37C3CDF930EC2F0E8501A
+E079AD99232392A205DB92AF30902251F53ABA1E72E97F067753D694F99AB4E0
+867AAD1D77E0CC6E51B189248BA94598691F774407737E3877269968D0E5286E
+D71CD0E6D43C1AC526AA94F49DDD6DDB51815C228246175AE2F6FAADE5EC0385
+C3A30EFCCBD9FB11FCDBCB75BC76BFFB839CCD424E43B91703548C1C07D86822
+024A217B993C2CF05AD7FA568D6035522B499802167BA3ABE2EBFE5E9CCEA0E8
+9B643487E2FC3B103CED4845E55BACF00BCE930F6409A6CA78860E3E110B2290
+0CA64217B256857166373346D10DDF42E0828DB66B0FF29A776AC930047AD6F4
+09662A381F7CBEAD853C3B24A97B911316EF6996CB6D3E13F2F687FD64BB71C0
+90C5814FABC2C524F96C74EEA6A516AC6928D4D0DDE5DEBB32C3C7C2D540249E
+AEBE5BF29A2ECC1522A7BD227E73C4DA5A3D1FB2E74134BC0C7FC19954312846
+7A5E079D3F6F311C1B235558B773F9EBFD1EB307E9B0BD155D30F063BA308631
+61C557058D550C7885436BB08FBEF6433D7198E22F4A12D4F03417ACC3975D7C
+3840AE55F61CF01C127670CEB7085EAD6B13E2748B16A360CB71BF40FFF9FE77
+89425A79C80AFED4A70484C6A0A125618CF6317954680D64FA636E91C472DEE6
+4AD25D94E1B8D4D7DA1C713ACE29AF816DDE756C1803B3AF04F575941951A126
+2046E762F292FB89AD49AD794F1B014217FDC1B85964255F7346DC2F067A6AB1
+14DA3C5A9F0FD9C03BE8E784427F7261F55FDDC9C54DEE20020ED083B668D032
+4B951148CDE25680E18D5635C4B2B97334BECB605C61BF23764743BB93613886
+33A7282364D07A4F4C0EB64A3ECC23BAC0674044309F160A97A3B54265E53020
+8E4F6641D78AA9E9A2D6634FDB0B5337427EEB4591DBACA4332F71DD12E8E65C
+6677F0D32EE4A32797DC716603D89315F34693335CF11411592294D4761B734B
+1273C516E6D5F9FC7982AE5C01D8C03409DCFB08FA0440DEF343024761C45AAD
+49FC3B3C84DC3BA605709C1B40B98B86019767362B6274321B9D14FB4B62E69F
+48B6E6DE7BD1ADA9712FE9BCFD95A730518A6DE2BAAFAFFAA0231F4F844AFC32
+29AF6E67BC66AC51B856D9D093D5FB7C8CD69782ED989EC2C81E1BBC43F00532
+1910C422087D1E1932247B774B1D7E9A50309AE01685596B6845CD8B7A2FF840
+5E36A3B14E5D0540DD7FD3F7731FF89076AF93435CE1153A25EBEAC76FECDD8C
+8547E63A5932ABD15DA48E95F717F446817DF29D132104BEE7429A0EC1500653
+1B7BAE844262EDC32203DB1708D6F87488F7400D6C3356B9C1B26B097CCC5D5C
+BD42D7B939639C3182C99FCCAC74794B30468FBA244A4493BF954428B7BBB43B
+04B293E944406E72CD079A3884EB251CC4435FE02DD013C09216EC3F4E3670BF
+48EA71AB3BE555C6ED85C376FAD186F485A15C5B4C9E03DE07B5E269D39E7609
+919CBC7849C3683FE698C406AC9CF3E1126385255104964A8CAAD131FFEFA756
+16C7387C3AE3140404052F686EB49D47F8AFAEC8919065F5A9F939F9790DB9C9
+F66863A4E36CA84E02CBCDA871BCBD8305186DD0FF40EE2FE11D6212BE2760BB
+ACB92E8D17FDF0131BFAEA9757A0839D5F7F1B5775B332605899A1E6D346244B
+1A981EFE9DEEB861427BFC850C1E41F572A17C7B7A0E6DDD29BCB9AA05B844C7
+A6D4F1405747511390C582AD529B73C29286077C62AFF00EC22AABC3FA104237
+C470FF78E10A8F090C94CABED32159753654938CFA781F6D8E7FE6F854249B41
+66365A354C52164F4D9ECC62A42EA91812BE9BF96E34F2EFA95A0ECB8ECB2C5C
+5584F0E1C090994E83F6D149D81DF292CD2B4FA78799CC9DD905BAA72578964B
+EEAE15CF690386FF773A4279BFEAC7F9676204F14A810445A8C6E6B355E9FF6E
+BA426AACAC5033E677601D890B101CFAFBBEE3EDEC71CED99D5784855393DA24
+F7818FA01346F25E2DD343521A71BDED5BD8C4EA251A29C3E542307BEF39BFB4
+E3B00A969A370684715135E182660FEB2F9D9214F761C3176EE306A77B21F99C
+8FB409309CCBFBEA979162AA6D4D2FFF1BD4E657635D4F7864871E36B2026F00
+9CA1173F0E3FB7437BD0B7036E12CC16254F52A26F0C90B126D416280E51E1CC
+25A95B213F1834467353FAA9CFC880BD9F7E3346A66A9EB1DDF5703AE2858AE5
+B7AFF8A9944C09B4037189A2585895624B3F0D165DF8572ECB2FC269F288ADA3
+6DED9BFC45B3D55D4A5963D4DE0EF3691F5D2212F505C77E67A3EB3B531B79B8
+46AC6366DD3A655E4C16DC3AA69FB421908C1FF825A64B7DA63C28B62BE23D7F
+D6D407165501638607D6AC24C39B32395344B263F5D873DFFC1A824974C8F8EB
+B50652767E76DE8F17DA3326DE65115B4FF88BE50FD23BFFC0FA4DFFEA5FA137
+F39D3A1C5601C34BB4A9B1891155E159C020A37AA4C7801537CEC1248FD45557
+542BE2B1EB0FC753EF7E4E09E1C83EEDB7645170A6A67960E252B2536A63D668
+89E59F5884DB56E1492A72BFCD47F8F4AD291114AA8621DEC969843B45A6C9DB
+401832CCEE244F17E7018EDD215BCA2FCBF871B3B814968333D09EC4C5E53352
+A789851A1993A8DD2359367E4DAADB9106E9274E01619BA7E01CFFF029E3B031
+40323E156D76B7811FE36EAC2473414A8BBDAB50A5F08C71AFEC1DB15030FDB6
+5AC93962A242A418F054598376919BE93B35B8AA952F2FC89EAAD17B306C87F8
+2EBC63353767D622130B91A2FE7B0E81AD8D787B2566561FA701CE4BDF0D8227
+8892B97334C52407FBB93D5D5A20C3C5B04062A93273378C19270638440A946A
+095007A4953067E5769C48898449B0C33F7F32C5AA38AD30355FE15F4F7060D2
+75CDB1B95797F6099F89D0A476B98E30D6E92628F6F38ED7BA6CBFC7523F954E
+A1EAC6DF70EEBC909B360B22BD0131FC5B6D068588D4E8FF5D45D1296C683CB9
+5B1EFCD37494CE98E37A3A825B7D209A24D21B21320898732BD26CAF62A058D3
+4939AA02583F764B0E0A2EADA1E7F2F39DC67025F953F756E9A923FEF6BA7458
+2650F8A2CEA5F5ED7C946486D43F8F701D923DBF50A0B3C3F02346BBC78F11D1
+8B152C7AD70E1EACD448FBDD19525C3B823CF2795F4248A62AE6DDBFCBECEDAD
+E165065F3A9E75421648AC0E4D6DAC7629734301DEF9DE755C300BA2FB19A603
+235188B4DE8028DBE1B9D0BF9ACEFEEADC49A5034D87CA77CDB44BBF92FDA3E6
+EE425A0AB660791072AEC22C87547C932D34E98CF7FA2830B11F388D64638DC9
+9E702A83F4F8DAC96348ADC70EF9215E3AEAEBB3BFE804CC945459F5E0AB8390
+962E68AC009BFBCFA50CACCC30A9125B3E9D1D2D6ABDA5DEEB9BEA9A6358AC62
+C951F4D65AC98FAFF9CFEFC15D5D7BA5444E01F524CA31854452BAB74A74411C
+724299E43CEF4478D29CCE78694C7EB3F8A6D763592CBD4DF7E8A4740064B217
+E80F4F9278473737B8A870494FFFF5CFA12045907EEA632140E10E2A9D5DA556
+A29FC4CFAC4BBEF9A25E3DA75AD6A10DF110CB918006626C1471ADC1190034B3
+8DEC3B8189400338CFE1206139C66178BD1AE4BE971B4B48BFDDDB21F59B3280
+5A6888680A59A2533B12CD4E35E3972D6AF3042C3758A6734258097F31E4D8A3
+7271409CEBB4AFFFF35F26F17E9BE1FE765707D41902AE8DD048902F76F6837D
+6F56D4AA7DAE62372FAF5BA55F0D5A31C5ABA0D4D1CF17C1B82F473EF5776B25
+31B8263D27D97FA2EC5F059F05981903D269DAF4705CE3212547A609D12E7F1A
+E979279BC1E60D3ED0CC1CF3B7D334BBB3CF8486D19D590B9261F031B08F779F
+DA0E11D1CB034633699A13EC12489F1F2AF241C5191BEBE46CBEEF80A22D04F9
+1AD45697F44666BD5D04A763755CAA0D9B160B741E0CD1E19538A6B0AE934EE7
+33F6107E2D20A5F32B466C165E89BB02291951D0584983FFE817C4D9C745F004
+955451E2EFB30A83A2A942C9BDE80ECE749DC7E5B4BF0996CFC4C3E0D4EEBE2B
+6D68506F1CE0E3DBCE8A14188B2A4F22356148CCD0D952742D93BB1AFF4E056E
+73D11AD06726D12F4CACFA1B2BB92459857269B2867B4D976A53448E0FE149A4
+212A0DD6E7607C666E9394F4394E9C2C87F3C15DFEB9134D11EF19ECB56FD164
+9D9879B0CF6236D7D067BF7D2204E57C6A9D21BA2156D7253B781C8F77555AC5
+D47E18BEA666885C6573458D99F472ABDA29FA7220C3627FE29D0E7FD94BD3F4
+407C8BC8C69EBAACD2A66B4F83ACFC3E0AC6AAAC7A039D35A17C5FCCC4E3E449
+385C51565A6FA296B4A28D649B11A65960F60CC029801866A80BBBBE7E222434
+27699086BB41DC8B28FF0A5C0E8D6AC62EE8C43F7C65297B690730AC5AE7C216
+062096149FC6C379584CDA11CACF16F0FF922A48090DF2CC07F4334AB3E76F68
+120164FAEDCCB11A54641F7ADE180B9C6664BAA8078143A0EDD3EF8F0DF2FD41
+BF4D5ED10EF573BA8D26894B36150B658F1DB33CA5FE1B0DFE197063859DA826
+9FF8A551DEAF82C598A1619F76B70FDE8B718292E006F3F4292015ED9159E449
+B983D1BE73B99EC9423BAFE4C676E4992E2EB334DCC26A06735B07210EC70373
+F2A84615ECAB21E4DEB56962A63B572772CC11207C17CCA770BC83E556692E15
+551E9FCB85A2E514AAE2B9C2135873552448DD6429B0ABAA0149D22647488F1B
+99B2EC03590B8F6A3B74E9B0D30E1E32E8691B58112600A2F993DD0C6175AA62
+E3AB47D77DA0070F68A8EAF0C56532E72669E28C39E75E1B8D9B07B398D3B571
+CEC6E7711731FA763E1218B7F08D70B8113D9908C04E347E03133750B8CCC983
+1FFFA90F291B5B28AF1915EBAF1373FCADBC9671CDF6A5B0FA0E836BD44637B1
+CDD39D3E5AF7298118883D5C28011EDD89F2DDA6BAEF352E656CC3F6BF684EBD
+0BBB05C2E0F73C1752C55008F62BEA2D0EABFAD64D0B5F44CD41E82AF7613900
+26387194AFB193AEE0B484A1876115CEDE9CED9E245F5C53D5EC14F37DB7A85A
+4311EE822873FEAAF44747FE4C0A01C2312EDCDAB204A23D12FF9F304DFDCA02
+2DF4FB676A0026B6568E300FE9E728906053AE4AC57EC6CB95517DB0F6702787
+0BE8741F71E45D21FC0FC893A5A24397412CFCF8185922010FCFEEE1C0375A88
+77833AC6FE8F77478A13F6DA176C341E02F18F7FD412D1AB6F070A95BE324272
+E76659E02A5CEA4CA5BD1C25DBFA75F7D793029EC06624D4424195119D8EC4B5
+61AA45AD82A8998C0204D4F9EEFC8680078F69CFBCBB1AC105863D41F2822685
+6D8B4AE356F73BE39AA23851B82C0E09409A20E80352BC26756E04C1D274A5F0
+11F5916E263C7CEA29A51960381A114432B365B40CE05CB484A859E8925159EF
+2A2005D45752B7DD666AF5772AD930AE0A93B34566265253339C11E4E08B2558
+C7E66CB061AF48C44308FADA4679563E40926B93412D47091A105982C8185B0C
+AE96F5CA0EF584C80DF9346D3B7989EBF658C4C18BAC59074105B364E1D12789
+5ABB85E0FF30F74FC4F086F44BAD97B54F2CA231E5AA1C894A70D5DEEF845FE4
+9D48C0F98AD2C69441DD7BE8ADCF1024FC5B9A425657DFB6B830577F6F6FA4E9
+EDC320E9F1DD33AB9E01F5759AB883EAEBB1979CB5CD226B695DBF61CA0C7DE0
+F86351541EBFDD1ABBE95868DE23DFF880A5F954E7060EC7DBF12F6A89FD9EA6
+45F8AC48B406DA63BA7F4F17065B1C34F194BEEFBE8D9E487B4C5612E944A459
+3102E2672DEB25E9941D3C2ECE63023496BBA3172C8221F0D0662C4EBB8DB604
+2B3F1F0E5ABD8DAE313B8FD06503CEC9146C6CE4AA2B62709B9FDD43D36DE3B8
+57FC7EC80E9C5BD94180DBC45542FCF7E85723CD05B2E7C824B66BF7F8715858
+38D8321635178A4A4D0C22EB4522637FB747F13C5EF4D4762229196C45BF0393
+2E92CD084353E8D19D7A00CAD6101E5F18B0554C357B5F8B25D73ECBFBD8D165
+4F91E8B16E26C853692FDC20E45B0A2A951D6581D4A3B8BAFF9A5C51F58AE749
+44B10F695CE633E85851ADAB6FF1EF30B79204D806C80089FED479D81DDC1C63
+2C63A0F0F51669DC953CC98A7404D0E1293DA2AACE718147CAC0526C1877ABA9
+57BD7BA87CEC03C5A26452250C457763BB23323335AED1E79523FDD9380780CA
+90FBE7DD304B40946CE6846EF34C28D14ABB747718EF015A1B8505F1D81D971E
+93C7BDC22322B805DE800E7AA026F10DE739DA17722BC00D7B87F140DAB36A79
+9C07A1EDA47BE307140BC00099C3B11D19779F90FDDDC8CCD31BC02C8D30F25A
+483B0032E5AAB8B4E023919568961C895D66B0A5F6AAD6B3C1EB200969F49663
+A5D61CB44E3165602CAC906E16AA1AC0E4838E8ABC30B84581CEACFE084EC0E8
+9C87A98ABEE7D566EAAA6732B1787072AC8979A6ECDA468C4EA3F26359F1D64A
+B55D58E83CF1305490A08D1D82D3458953356C3C3893435013E3098F42C5D297
+1836085929109D70DFFB9D42953B4F671E8C6DC4996490C4B100417A0D071176
+4CCDA8D2BB318752A15E5A78411A357162C631097925CEB647FDC4E65A3236D8
+606995605EF6283222A4FE8AB8803600D5D345E8AC5111E84E22781BFA34AC8B
+8F9C8FF48FC9E4530C662FAE131A165F752B4BEEAEDA3BAE2835D4A7A83EB6D6
+43A15115B281587EB5CD36796ABACB5DE8FF9F84EEAD17B3666E8D633DB8BDB5
+EADF0E7BA3536D2B71025BEF5E736E691BB97EABFD53F319C27CE94810038208
+5571D7862E1DA5CA6C2539C7B69E9188603CF93A1D809CAE6EA5EFCE8BB33B94
+D6805FE525CCCF45194CD6A3578BF95C2463F681F0100407550917AE8220A502
+7589845B6360BE82FFC24A9268E68111351B5588A8AB55C6B80B2A9549D93B10
+0CB8863E42D671BE815495A57CAE4151855150689FFE64E8366FE6622ECEB154
+CEF7AAD575C0E0220E0F91C5476C8DBEE833AAF65702CA4CC827A5933D413836
+B862DC430B6A3D880994814A1516C8362ABBBCA376FFED9037E03037876D481D
+5B768BF12A06A7F7BD39ECBFD010331D002B3BBD9BE897D9A5380469959ADEC0
+39019A42A88A9D7BB4563E98AFD92CB63254E495280ACBA8DE72D006FBF42049
+CED99B6227C99C79D78A7101333E51D836A9FBB2EB04D5130EF4E2FD19D48D7F
+4E1A3C8FA5687A0444C6FB4357E7E4DF5A65B4D34B0610A6E7578869C3812508
+DEB7F57740B5DA1352140438CEC515DA0550685BC5FAB5960A2E3E91840744EA
+E29DC09653DFF3E95C025E6FD256A483AF44B8EAAB1A1883BC20497CE5B1A3D4
+8738D944D7456F05871106FB931D750C269AE2521A2B87614681F3A8D3D8CEAC
+99C77C248BB3B5A78A5FE8974B4AFDE7175F77AD7AC97D3BB1C261AA224F3220
+2E1BD747B5FF2B98B1314939C075AFAFDED24EF8659963182B966112CABC994A
+C946D415FAC69E11B39115CDA7ACCD06833407C9849C914A9E1D3D3C830EF95F
+4B5E8D718FFFAD52D39E0F4F411A530EABB3C6E32741752D32599A23ADFCAFBC
+C8B0A390575B2B533A31C483D2E5CAE976F53D30B1E74D14379B062FE70B972E
+6438D5819F1804A05B350671BA42EFD1AF3405E1BFB060219353BF083CD6F53E
+ABA7DADEA907A2FB60123E0BA4F94D00A342D06EA481CF65D16EC7147CDC9FDB
+D00CF7BAC627DED5DEF867A955729650806A57BD27A04A6AA5A74FB2F2C81E2E
+16598B7A010C40D7E2858BD6C5CFABBAA20640FF35E05C4CC0AC7CD1EAD5AA87
+EECB9DB9327DD55C096A92252A8653318E52A68AA20733F028F90095535E8129
+B1176FFF31DCA1F2D3DD1AA2B564F75D9B92CB5ABED5E001F9B88D303C161B93
+D2D02A4B392E15DD2580EABCAE5F4C4D23ABA09E2BB7CB82C76CE6E96E73CD01
+019E641BDFFB332626E63B9A17673753A8ACF3999E8C310F60175F6C15C63998
+CDE83C936812B481A07E8FFCDC1A0D7DDE1C39BA422D73CFD0E104CDBAB9AB49
+6E3C0D394C5130B1FCFB6450B5D2787475FFA4CD4051A63746E6FC3464768751
+AFB8367D67B922D214E9032760D3F55C29A1484D2126A8AD522C590C5A83D569
+FC6883646BB1C9060E986AD08A680B74D864550DC9A6444A62A6C8EEBE14573F
+2161EDD655016A95267ADFDC64095D442198639373970BD6C2035EC72B37D543
+581ECC347A8B8C89448C14BC1C7F38B45806DAD3028927DC1ECF643DD6CCD46E
+12789D3B6B1C2A2869B117C5165575E8B9530E52A43C1795E1975D13FFC04FF5
+51F833698FA59BFC7824485B32C7BE3CC2F2745714E76D7173A7B6FCFAE46406
+8FF1044D2C94DBF25352E4CA352A41CA7D4B80ED05200192D334DA74F07984DE
+96CDB8EAE16EA4824AE0918648E00BF5AB8F606B4D30B9FF827B8E044D4E1C76
+95FD12C3514A3A810D6D860CB308902C0693A3C8FF82B7CE2B2A34534DE86920
+8B6EB169A719BF1439F49DF599FEEE27B2C49EBFBCA42B5DE0FF08A8BC1B76C0
+6D4FF94F8D0C0475DDC9E01F0C29036DA393CD4BABAEA79A365AFF0BEE794A0D
+856A4E0048E35013B19F198CD680BFC1380AAAD12DA86CB06BF2094D9249EEE9
+F0EDACCB5D2669AC4B702799C1ACC97FFE3F9B9077BB829ADFC8A89F9D84E2FC
+3FF777A1C4A08EE10AC6C56855DF480A967E2FAE7F8190F44F58C6D9C5B89E0C
+F6E175FEFF684486D44418A737C00FE9252D17C45D4D080C84F64DDC2DD1CC0F
+0BDFE5F57243AB56CB672A193365997607198A00F8E5C3DDCC9A929DE3AE4F91
+B6A8BBAFC5A45BB634BB638A39C44A319CF337B4CE823E18EA378C22C2D66782
+11B6152E94644C94BF7E88D7DF1160CE509838D4D5C9D394703BD501DE853083
+6418284343F19636B00657C4320356575C4BAF0771C36C9691213CBCF83BF29F
+E11BC4673AC5A2164975DE560FBD4AC986AD84E664ED182F1FD2B4658043CE78
+3FAFC3E4E29C6CD8F1A806C5B6B9016E9C9675DA03808B809D02F9AAFD58EA23
+A755EF220F3580ED0F03AA135FE6421C132CAF9D0EA99BAAB0BB9D87594909B5
+FF548F688DDC53523A8090665005C85C72E184A77600F951963B897A34395A2A
+89B8B18D5C81C36C3B02B92302184F1FBD6E53931A18EED679D54614C77F6B2C
+6F1CCBDAC355362E28E7EE7B23E7E3F520ADFC0F666D131266133669134DE941
+57689553B44350D7EDDF7261B000A4B0220B07F45C53601CEE2E71CA587F1EA9
+303E51E3F927F2458C6FCDE70440FEB055C3098FF00E8F56F4E7D1E884E4E164
+AF215B47B6CA0BDE196F086DEF9E74C0D3571B752BDBE303BC6E8A98E010BC37
+70D9397DECAFE5FD8B5F7A11A2F72AD9A45DC1D1ECE77AB2EFEF385B9760459F
+C1E2C3B396EFD473E8B3DFCF0A0084B3FBC1FEF38114FACB1C6FF7D02CB37179
+EE1D90D60D8D707F7FDBE676441898DB4C4F4A0C7C9F0B2DE43015EEF62A67AA
+5BA8F596901C2EE362F8B9101A72AFE28F37AC9912B8BD5013C633CC590BDBD0
+B9F33FBBEDED46CEF45401427BBB0530F7CC79CF2DDFBAE9554641406A15CC17
+6A4FDBD56D710B5736E393A20FF39A887C5EFFC4DC5B016B60B74BD7952C6924
+DE8AB4CCBA8AA9DAAFF01E88F56C7C22AEACE6B88E7A62E1B16FFF721B6AD24C
+D0236BEBF8E23C5CE7B73065AED5A92C2615DB71553242417808A8F258BF38FE
+FA360287B2E2990ECE96EF6D71B8C0913124C9AD38F94DBE42DFD54465A41494
+DF3C275D0779EADAB6527384E7659AAD6718ACB54621C1EF8A32BCFC43D711F8
+EF2A936FDEAD5128A9B678ACDFDC7491C7683AAF369AB6F5B1FD100A342A9C93
+D43EEF44D97B4B4465E0DEA421D04C8437E2C3C8A993B7E4357FCCA244F07279
+0A5C27855DB9E0CD08E157C2BA8660C27CF01DDCCE53CDBBFF73A23489091E66
+2DDC56378A3DA9D08D6F75BA06CBEB42DC26979F0928CC50FA17F69EC16C74C3
+C795C5B1F24F05FBAF03E4BC2F58FD962D178AFF2F915101E91742157E833F5A
+47D982E948536875045B90FF4A16A2FCF6A40DE7D13B6B83A835FEC6939D251D
+52F76E4CEC7BE179B7E7ED91CB43236F73D83446FDDB288B40F02E0AB7B54FE1
+C606D1F3DAE3C6696DB37177F992F57AC34A6CA67B01A3E7D123EB1651684D3E
+D47A97776D53D1068F50CD2305525BFF8EE130EF06148C6F103AF1E84325179A
+55B2A730874945C4CA49205662423FDBFEEA9DE7B9F081C4B9A60D3302D5C0F0
+C1C190719A5DAC9CD0B0EE81548322432276025D836C80F4F8856AB807E2383A
+96A4FB4E6C5DB46B2B3ADEFD7FD36F9582A42330C937A2507D198C63E4AE515A
+A7A79605AC7C3BA45983041115DB80124D27346D181F0D8A30F7545078401B8B
+48E33903376D0194DFAD34DF58F4EE21C49BDC7C4A1E95ABD158B3254CB7E235
+C20A6C0A3474DA68CD751A7205877A986CB111B3C3FFB5B9DCB47191EEE53711
+B6E0A922CA6C966B51A51AAEF87BB803E015E14D709EE182D1168A633A32CCFA
+E57201FC4FCC3089FBA6492892AA2CD92EDB9406E30C1E61DDB37912AB58A1DF
+9DF01D61FF1AD31CF2F93EF8A6B7C4BE1E185A26488ED6AE237A4A1601B1F819
+9F7F5EC7FD7CBB361A28CD8A0250BF55D906FBE34594489778B14AF86630E30C
+3E8AF56CDA374B79FB3766140B8B8B77851E2DF325043B3A48C25A4A1D1521D0
+2721F4AF3AB20FCE006A67706A70DE6B7C636345930547225D70E72FAED537FF
+7BA58EBBD4D82327A23A6060AD3507F868CE32B33637119FC2A36F85D58A06F2
+802DEADE77E33058EB2BE4C5F73FA8FF4533101B72EAC3CC98A97348F751B107
+D15E4618475BFC5BBC8AF98DCF931E28ABE698BC6D5D534E5ABB925183F12266
+D2281A2B4DAFEE9483E8EB1F3B06EBF40CB8C7348B54CF7C5C502DAB8D0EFDED
+3ACFC032B9BF26FAFEED0EEEFE04C6C648A1DFD184CCBD6DE306D5C81D88A733
+EC1B9178E56A35DE9D1F68ED68AF548C7B4C04B1BDFB606982B29139A7693149
+FF6CF8BA8FBF15308893DABBDFF3AFD74E1303F98E1F8D1AB8F764A448220250
+B0AD1F3175BF06FFFF8A893DA5D93569EBB663865F1BDD65D2B82E977ED5F9E6
+D71959FEFD7E4D3E7EB65DCF1762A3BFA3366E60133E323FDAC671FDD6287957
+C92916E52CADE379AD4F15A8BE6BD0922759FB4CEF4D8E524B74460183553E1A
+DFAAC4CF1D411322A0A35FBBDA26EF7DD4D9FB4A0426AC50BB66D57B7A58438A
+E920C40843950A5F0104B2E22A7B03D255DBAEB9E680A1900E85266347302F83
+74791F179D18E916DC31962C1BC286244E520216C10EBF5ACF8F234784F8B61A
+E727CE1D65D3D1E077AC99634B9A32940E1917C3148761167BB1909CCF73CD2E
+08068D516F180961FF7E94477D38A021437727F6B44A99DDADB1116E4FB81DEA
+087417CC1B37A796EEB52DDEEC956B844C925D0DA0CD82D94D5158A693ADEDE0
+AB2B32CBA38FA2C5674F1D4959F8F2CAB84DC510078FE6C14B4626D3019E81C9
+D578A84DACCDDA84C5A154BE83C420EC546A5B0BDEC2373B4EA597E57C28553F
+8880F0ED03386BB675517E8A00F526A5EB30A38B9DBBB717DE9B2AA1237A2A3B
+90C01A9CF2F897825B213694E43AE376E289F164D3448C0FB9872F971513A172
+3F83A1DC496B61B86AFA9B060F3CC7E067A13A41FA6C68A608DBB7F8091C0C57
+237F58992BB28203F91397D57A82FEEB42A8FBA760FE7D7F5D672F56298811C1
+60B20389C048CD856A01A0CA9CE5D217326BEAC284B7CA949882FDC36C6A4561
+EEA8C2C08E583A78B839BD930B4DAC2558A1A2809D3F591ADDD4A0A6ACD77FE5
+D1D6D2AD73CC43AFC2BE532E73FC73FC8E7B9388DB8B081A02AEAE9F148CE532
+96D04D7B71AEEF74CFA5338D0E3DA3BEA5BFE12DE934101437FB15A69671ADEC
+8589D9FEB6F71F965BD7B868A4E3EB879E721F54971A9BEE05D80B5698F05312
+2ECC457113DBF6D83FB5DB0878187B2CF879D03B4CD3F47E4BC9296901757AD3
+40FC0E9EACD7446501358FC05525C2CFD12EDBFE5C08B964B8810842E00E48A7
+BC808E2BBA77A00D3E46A1743670B94CBC2B50C23060CC91BFD3AC219471DA5E
+CE7DF0AC843E90A47A113E332A9B3658862D18C8F28DF6F756C74E1A54E54AA4
+49419469FD5437FD0F2F34B96F2E371BD2657EF32AD4829388F0520634A9D08A
+1A0B0DC332666E5F5A99C90941D9B7F8BCF32C4F2F890644D99E4EEA1C27FB96
+049BC2F720AAADBA87420A07B2253B9ABE77A0D4E5B1CC33DEDE293BC8C33AFB
+B3B37AC85DFCF76A5CAB9C099A337434BBBE8523E9DDCF4163F94BB09618DF46
+3B1FF63A2CEC4014E35EA52D6EF6A85B7EA39D80B78EC3F1975E65D2A0861250
+E8875BD607469CDCD0A3D0FD185C0900F5C91EE5DCF446D2C88A1FE68BBDB1BF
+F9AE22AFE6C43BD002940152C4877CE7B1D4581A8764EE06EFD07FD4A21F4403
+B3537A00BAABAF67DFBED303EEB1BF90F0EFF5F83991DF2AAE34EC34F4ECD77B
+02F4AB2DA5543DEF781F0EFA0BE07BAFF990FD61BCA176C0976565228FB3471F
+F4004753329436C1D1B9D070109D04D4ED97A77AEB986C657C93BDFC3204E6E8
+87BC0E2359000AE2AE32F4B6664575BE80371B83FF49117A98383E2BD7E0938E
+6D6616FF9C138FDE8C071292BC0BC61E58EC2406BC22FDBD8899207F85000B7B
+0B1EA2B3921E1193A47BEA9FCDC4D81886E1BD1C0C35FAACA3CACA68F004216E
+0AEFAA894DB983A21857F77D2BEF5033CD0688FD14993DF5575FF9537ADC0063
+CD89723E9D791BFB7841583FF867646E89E1B0A27D4C73DB8A0F3762735E97BC
+E539B8BF06738821C6E247B096E4BF32343891BFAD84443AAA405C0DBF9F6B71
+168DA780997AA2BDBE7B0F6EA114E2E4670E416DD01576618DAB2FB11A589578
+5E1D1BB7DEE7BA093742DAB351984F1350F6E00827067E830F1860EDC8B9BA59
+97928F74B367EA1C676120DA49AC78F541E4B375A93546D33F9A7437B1E9393C
+8D7E944E66B5EFA0F1C90935EA30F2372352FBE717BDFDDA6AD0333FE4AD63FE
+8E8F09DC799F66B9240B6A23238752A3A52D138D7C8CC16AA46F22EA70BC2A92
+2D53CB54452D73548D67DE2A3A72DEAA228B62A8EE5ADEB3302A7F21C5AF9095
+88046A91579DEB14B2D6D9C29D9B312484EFCEF698AB79E61D1390E0AA32E535
+6FEA30D1B678BCF3140625073E848B2EC0BCAFDE702C6FAEF03DF0DDAA84B190
+B2A72986B44A1E971A510B1E8D90B3F23D83951DD303B08EFA47DABD249A08DE
+26876AEC0C2892408A4CF8C9C52845FF11BBEE045410175C55C3B9DBC8F02B90
+82CDF4EDD7C2143126B917DFC46F0A9A90AF964755BF1ECF5CBEAEDCE7792F6B
+9CE9534ABC452417B81F819A739AD6D9440787E071C49B4BC89BCC67B4BE1A21
+F4B28E0E327D044414C0ED47870DBFA264A37B595A4D21E0849FF00C4C8ECDF8
+C608806B6545A058F11229A7422A80847BD9B9DFD240564DE04CB9D9146900B8
+E4BD4106222FB144B69B3B12CCBC9A17048FFA4A2DE44C32727EB121781B2119
+4307D0C2C2F72090329348E5CDC79D8EA0421E640D731D99C7E548FFC332D7AC
+9A008D223AE7634A71F16D376142EA0EC1306CEF6614BD7D953BFA2A4EC6FE72
+E6B2E9B22BE8FD79A242D2D20CCF0B1441B2862DF3F1CA2BA4316684D912CBE1
+F4BD9B941E8409F6DD9A6C6AC712482632E7678A39B255C882B364AF445E9D7E
+70830410DD8815E52619F603124A690848112BDFC4584D45FCB4CAAE638112F4
+9D830E9D756090F8D5F3B09A8950B549D3C54D7C0D3419EF38D5C68785FDAE56
+2B40BBB17BB0232B2E216E88684BC5EE8AA0941F700809E6B99C9103EF39BA7E
+D8C3589F83053995FE3883CFE99481188A1A7B2E0C5E8BFB4D167966D47E3C67
+D6A5BF715698CCCA7E0A15EB656F0305D0811C5668064E57CA626884659093E6
+3575FF81CA76FBE35CA967D97217FF03CF016B892CD581F4D54AA178A28C466D
+00B7E7CE80C7A9A813ADA3D3C7234ACDB59989D605AC6A7710F1DDF9489E17CC
+50D20F165D9FB006FB9C0BECE29B581D2832161081416DB353A4EC3E24192F0B
+9DC9A48B2A39AB76ABC718DFC5B62D8020CA423E7F868AE6F7D98142CCF22913
+88D6A594BEF49532A56DB2DEE6DA4F5AA9D3E51BEE45FA935BE5CD2AE7D3FCF6
+679B19E60F90D7063D67782B789AEB5501C6BC133FC9B5CFF46B527C87D5BF5A
+E95B0A4336C3515683FB11D132F824B34C12643E645B064066D2BE053128E0AA
+63BF083A63E3CE199A799CC8524825EEAEAD9BEAC3DE193B88903EDA77B4CF00
+CA9592309C76CE54FD28F18EC0A4B7E8DE5E6FB7D941C5A7E461F4F436DF8629
+B8F94648B252C327C452E2F1EF896735FDC634BBDC85460E67C02E65169AD105
+24D81DB206E45959520405BDDEE71CA291B0581A161582651A3A78DD8935C761
+9AE42BB7727A3493A43F7EFB0D9051FED394C5662A3C9DA7A09A458F3DA93039
+DEB7862007EBC1E8418BBACFC660D888CF53BE9861134DDC6255F079A9C6E204
+9AE888F1CB7E956AF16B49FF93F4A012DCA412A866BD5406417DED5B9E1FB58F
+07A4B255167DCBAD96BFB0D65685B712E39C7E0CF8003028F4C3E0E009B91277
+AD80E0EAB6A97C1D24378502AA45AC3085BB576C53304AB26439F57D82A278ED
+ED1A1A7332C101F145970FF2D9E1E1340C393640C700123BFDCB4BA78D4ECB15
+334A1629C2B75EDD2D1B1BDEF8AACAF7A72B51221FC6F0914715BD2402581F6F
+84BE8A087C479B474F201CD8F4B614ADD248D36D9DAC4B353E54C65E3938EBCA
+5DBED80118654B84D07C6399EA33009863662CF42B1A7D78CF7547F47A214208
+745646FB375FA76C493276D05AEBA209F67596B37F8A975D3359F6D99D2C50D2
+313E9F154EC0828CD038654F583CD5391F20689FBF45A7269F1726AE5418FCC6
+FE68D64C2E396D8DEA05BE2F922AB393C61EF3E3ED205BACCB90C16DDFAAC062
+C390F77761AAB0C4D5D23F6390E7BB627028CA49BDEF8930528CB5265238694E
+A96A6EF668B41F1A0DF51C96F116072B71E2101A0971B9815E31EC8B09F10F89
+626188434A681232B111CB6E75910E0E325FD9D260F4FAD5BC9B0C9D94C87B65
+BAFA73BC0847E38078189C03654E3280A25FC3E2665B26015DCFE33D45E0CB86
+57FE4B81CBD300C976165F02464DBA0A1A604FB9FC92ED81BD0937D63CC92123
+8318F75CD037402DDD7D67C4B3FF5B5E7BBABA4995C87F15D2EB0A8E49D37780
+21BA1476C89AE25578B7D37001A2DBB81447656350287FE34B713397400B1EA4
+9FE5324AF05E66030D50CEEFEA8FC77B3046EB95A49084C148F7344408380356
+A9C4D9D6217D0FBE4E61453E55B0BFC0FF2AEF4F7BDC8857AA976D648E94132C
+3E8FA0D66BD0E55F48B46ACF92DAFE6B4DB694572C1BC620C23F4937970EB7F9
+A372C095FD9D579C94BC34E613BD92D4C4F38253C3271262BE2AB9AF4C4A33E6
+BBFC27BB165B5320AC7EB8E42E6F5438CDB76CD01287B295F65315F701B078C9
+510FD16A0974E19DE3876E15CC86E7A2C3D58187A9EE0A97B51478A99010EE65
+3541B6A5BAD6460802593C48A10C1AE5C9AF7E772D15A28B189D559FB2FF296E
+0F3450B1B4142A86F0A2EC8E40E85641E1763B03D3235049C0A6B14FA363E287
+A6603E1CE9FBC9108F17B41622FEC4065985AF95A194EEE72E9A682B9937EFB0
+F492D89B33D7DACA553A8ACFA0FCB32AF04F413EF3B80C7A8990342220C787EB
+43704F50707562C94B9D7CC1213A6F4184DB867DD64B4D09591F8045A73BDB7F
+0541AE26301B75C2053B359294CE09A919D1984CB91428A412EB03C72F90CBE8
+A17EEF5191B9AC2F2B012886653650D38D077C9056FC5365C399E5A77728BFD6
+5034DED64CDD6619776FFE0E60D363D16A08B329EC745B6EACB881E747EEB3C2
+C78573747975C85228F54912D758AF729E144821090D75793FDFBA2644C9AEBC
+837367803722A152325E6A614FBC710E327432916AA74ABED5B9542C3D62DCAD
+DB1FA9F2C969208D953B0448793F5F79641715833D9865AEF0C3621ED2D626AB
+48F157248D9A94EDBBBE6C7C433034764FE3BC4C75DB33ABC283D6F203A11D5A
+CDC7D5AF5CF4A93480411D0138145DCDD0F8E771816FE9E8A5BC071F3262CB3F
+FD9D7F10C9F0080A9131200A1DE3409E19A8615C9515290B04068C36996E4174
+32D19D5DD447F332D7A32EBE2F704FE205EE181289BFF9FA26C93D6100BB57E0
+2E71C504D0483F51A95C621B55245E56BC0A2C0B88DB523635102E209A164873
+27DC3C3EAA539C105E01D272CC2F10A930CBB707926FF8C67DF6A4125C2A9E5C
+8607C690010A0491466C513FB840C0114A3D64E05A641B0C31F9D179C3004B9A
+F2A17150017268B07A4FC153C58630C1C7B8E7DA9B6B54C5B42BB9FAEC42862C
+434BFB51CE9A225F758B2C85EDF74F538E722A5B9F581AD93B71BB9F0296CEB7
+3E87EA554394AA683B0E89D970A9E2F756794079A6BD1C63BC72BDC985A4B30A
+4E7856A11E59CE4F0AECD7FF61B8FD96E9E74E84682FF872598477B07AAAFB03
+E43C1E0453EE5A441623C44454CA21605DC945506E796201596DE085D2D659EA
+E949C6F856C9BB37C64793189151155BAE1E920C43F7A7D4D9E28B7670701125
+B3566417B75E7999EE753E034676EC4DDB8955BAB28408D3B1EDC6C0E942D5B4
+418B07903882E7C18A61295C513248A5445167ECFA27D27D87467CDB26CDA245
+2437503C46D66E63B572464D5FA82DE9AF85F8A1A5C6F36784F09506ACE88E17
+B5DE1B8D5A4132130B787192F9BDE9F947B209C74E90D72C361ADC813F222DC4
+E140B8C06663F2DC7DEAE73DFCAAB0C4A8EFB1D7B779809808547D3407BDF4AA
+11A05CEB85B6806D605DC9A24915D555453F71DD046E80FE204C523B77656BB9
+42577F4030748ADDECFAD75AB2A3673F4BF68870C6BC1B75882C045C6A714AC9
+ECCFE11301171EA27A7FE602E984D5230BC26ABABC8C570AE49FE7C0CA1A801A
+76DDED173B8637C8691B9B19EA46E9AF5E59316803400F0227237FD4CF6389A6
+810D8703E0B2DAE7477658D913CBE87D1DD07E31F9A0DA4F0D41E1EE16641524
+268D69B1C8901C71CA3F2627A9AEAE6B9E1AFF44AE11ED90BCD3F6765E7068FF
+970CA703310D65717531CFAC7DED7DBA29F36E84D641E77F7E30A3B69ED4A45F
+56221F1CF145C79A29BE70825A0C78D655119F8D1030CDC15DC9525E9C41401E
+EA82AFA9D5389F8FC11877240F109DA352DDF0CEEBE818C2E34D54592EEBA375
+35BE9D6DEA740D744963AED37FF253C5EB333A5A2D1FC1E23EDC86A9F221D7F2
+3EE230941E686D73EF5852639131D53815A12E476B322B43D601DA5ACC4324E2
+FDE7D32FB7D8859E7463569D47FA288BE6BD994B88049690697A7B35ACE4EED3
+6F1D2912B3617187C50EE0D0D76ADA47C76C6541D0D28C7AC449C23995DB0C6A
+65D808E8CD449273325994DCFD2B1518FE70284C36951A03B9FE7C554F2ABFF0
+9E1252DAF3038B3052B7503CF2EE7DB10B026F4B38A8853BBB099519134FEA8C
+E03724A0DE1B891D5E67A6609A0A0B5D4AE1C0349DBAB88DC32A6B73A3C90FD9
+69866BFD03
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -6796,6 +7669,13 @@ dup 55 /seven put
 dup 56 /eight put
 dup 57 /nine put
 dup 61 /equal put
+dup 97 /a put
+dup 98 /b put
+dup 105 /i put
+dup 109 /m put
+dup 110 /n put
+dup 115 /s put
+dup 120 /x put
 readonly def
 currentdict end
 currentfile eexec
@@ -6977,69 +7857,117 @@ C8CFA41082B1A37405AABCEE5BA3DC2B9EA76F486117B84728EC6D8AE6379CCB
 B17C34E09145B37CE1EB1D10D42CC8D6E6B127A3809F7202381FDB88D42084CD
 0AEAEB8A8288CB56870EA2BE9D0B9DC8291021CA561E2BA388DA3494E433E0EE
 5E69DA51D0AC505C9F71562D3E9750F23CF14D2C8ECF0692FBBCB4A92B48B4B0
-AA2163A7E18E8FCD41E167D93B600EA8F397B710EEEB490F61CF81FE31C93254
-2912B987A9BFB87F71AB914E836DEFBF5CAE7F91D91D44C4A9D70992C1F31DC6
-AFFBB6B4746899019E44605C4B1825CA5F3FBF96A21E24C2B7B08D084D52D8AF
-08626BD51584CC05DDFA42B196E9024DB542D76A79A2A2A29FC6DC756A71F808
-728A2EFEE04014E47EAF15F9B9D348BEB927CB2CDA74809941539B92718AC156
-0490608F78ADE49A8ACA8D973C77FA015D982C53211F5913E9E705599C3EA349
-ADAFA279CE3D68916281A04E31B43C9775495C36C1F01F2D89844797CD4C7989
-DB35C7A8FF93C8C339B45C23BC0A53FCAE77E912288D82D1D5D4854F6C3B355E
-2185F626DC2E80C0CA4307024FE7E29F31D38CBBCB47A1E525FF27F953A149C3
-80122237308031A5C59C9706132D098BA52ADA347A996878BA0579844075A33D
-2E193FBC2FE8D4AE9E682D072F1A06A93D4A97D3E3DEC9B40BEBD83F89853DD4
-E223F1DFFD615CEA95C026C680F0E2C77A4BECA64400043C2B084497F16488EB
-014030997C75B6EE5FDEC558CED18AAFDF715E2E3A24C842C7298C5975D68F29
-D09553834657C4185C1A86A224B899F96614ED813BE271C3EFFC51C71E0C4F25
-54BD6F1F8D8D07C87A637DBAD3426FC1C81FBB16FE2AE5FEEFCBF6E51C6A5A67
-605A98171E144DB39DC0E2454E9B143D22FA6E0D4B9F2ACFD07466D39864601B
-8C726A06B255674E9303C10C28F569187BF62F8A87B3A0241B93C0F017D6AF28
-B8EDD89014B23401860AA2EA40BC12626C125FF4DD8979FBAB439117E0BE64BD
-91A726065DA1FC87700A40C304E47E2507EDD79BF25BD273C47F8BF54E089AA2
-815DE7DC219C1AAEF052D9B4EB1B807B688975AE9453072F300D0AF84C1DB795
-BF643E3E3C624D27ABA35D5E834668170499FCEBDE54225733D1B7134EADD8AA
-E3B09BED2BBDA71DDC79A498C80268ABE1A06E87DFF0018D1EA3344D3090FF7A
-482A5242D3DAF5F9BB1A5A52FA28150F8A79C1C6792591A3CBF4CBA99156737A
-BD585D71FE5FE50938C6C6FF794FC5AC5CC7BB52B34F86E95965E375C7C53FD7
-0A5BF985984FD8BAF260F398EDD9B6749EC08D9B25CA7FBBB8DF90FBF2DBC907
-8E181D3CE52A5C19E20320090DCF30B4C8A91B8EF88659E272B72127369BA7BA
-9D0A3AC52910DC04E89F69901C86923ED5726F8CEFF57F15312F90CF2A6A4667
-93EDE68CC67B5CC1BEFAF4BFC0C09220B5092B78E11FE65FC227C075D4C5F8EA
-D0319197827EFE2736182F847B4304DFDA37CAA3F48E34347C2244960D1A5BC0
-5105AE2C0F952F1F09AE34EF4E7CF2795FB6D079889A2FFCCF2369AEFDD1411A
-6F78E81DADE6CB1E36FB971DBC621DC645CB0B78C8EEFFC2E235FA425047CB4F
-0362EAB37E1A67205F6AE1FD6FC77FCCC29D3B8F48E7CFCD2CBBA2C70FFA483A
-1CF95B56C70106BD03388E25AEC34F8ABC43BBD2DADD3FB976ACD01E1883A9EF
-6267D07A15C964F0FA7C2B9C82E519155FB0915E7CB8A970467E4A7224B509B4
-928BC5AEEABE9D010589DB07D965418ED5281A0C1CA60F7D15ABABD6E5A6A677
-7020E373E210D256EAFACA0FE571C0F92BC4B53E2A05B1C1244304606C6C1F15
-1614FD0080949232EF990490384989F2ABC312A3D87925689BDD3D2529D02DE8
-3B88B5B67C97320D0E1A8A6205F493D9A09D2A2EBAD79B980F46B36334A715AB
-CC9F6E06B607C69B4780E652496373C59B020F9988396C19DD9D39C46F856387
-2660747C753748FD829E0DD82A44CD718F28A9B6FC802F43CF9D1E4FBE8AE961
-CDC0B62F5296493C3B57BAFBFD5E5C3D22187280A26369BFCA6CCA94533770AC
-6A4A028F95FBD8ADD2408BE2E16A517163FFABF332DD702AC4D9965F1851E291
-67F8DDF8E1531BCF9434A033A41F78ED3E7ADADAAE485247477B67EC2784BF8C
-8F0FE44458A5BADB442D68C1171C1B1E247402746DC8655E4A53AF05F6DED9D5
-6407CC611DD20AF6AB3083F7E238EE4328B359643C955C0B877C014DB49DE4C1
-EA2F12F4DC500B95E24C53CE505A0DECE01119DE1886E5040F6515229FCDB2EC
-32F92AB88207EE73167B29F2C6C3E80481A1B974CA7CED078380EAEDCF2B00F9
-03730F3AB6C677ACC4BD71FD5EB039D7542D703B919E68F7EA5FB6F1D574B65A
-69E4199137D114FBC21EEDD53FB4C3F6BEBDA2E679B672EC5201192B285E14A2
-060776586983E9D6E3DBFE961C4B362444C35B649FC9FD8985474CA7C4BAA7BE
-0849856C7C8F3D03D6E6673196630FF0CCE79BB3A3CAC78C9FF03C91FD4C4990
-C79A889C4028B06BD43D38ECF2FAD9DBFD939BC79F072A5C15F807F2F677A7CD
-7EAC7BB9641000160CCBD3886AB6F9A90D738551CD2240415F2F60A56F1A5936
-823328A501971F7CFE36C1CCFE048866FCFC5EA6207FE132B65C192E0127C75A
-880A49C4250E9AD074FA2DE488A2E0EC6A9F7AE5DB635F43252294F8644576BB
-7D34415FA2D4768F782FC2FD2DE8735001393A632462B86ECBF90E66019B272B
-8EBD68D5A965263A305A1731608F64EE104FA40F14EE6A0CCD24651A425A6BA6
-6269C04337573F51746691838E60DB02ADF4D0E935540447C07C92097F0698EE
-DFC9FE2E1CB570B743AA1B8540F6AE121D8B50DFC324EC351376DC0EF811B296
-8DC2E1A9643BC5E81C59D4AC3E81D0269B041D5F509AE6F1F8279BE653F97661
-70AB5743393D11BEF0C8E5D4995545D9988B811654EBD6ADE59AD55DB8757B68
-42334BD43E9B2EB43CFB40A5BEB78B6FEBF3E0E903EAD3520F2716D8068C309D
-26BA32750A6DAD91402F20EE822CE4BF4A68394E2EC7
+AA2163A457B8B29557CC8A4CF93C12205A1F6AA049E67CC8BD76C5E6B2297925
+002205BDF49DE441968C9C19DD6CF250F9BE0C530DC0130CCF16EF9825F6B200
+4A7F22527757EB44842C201983F55BD96A554D2C8007FEF237A131C48C030B65
+DE492F603449BE02B8469FFC362DE6BCBE2D16338915EF05D12C85612657F03F
+5CB7107CC99EBC87FBD0F5D2E95BE4FC620FDAC5D69DEA1A9EEC62BEADE6135F
+F08A11C702EC532870FD72E532D31F6467FD6875951C18D79F732232363A365A
+916C464A1250EB94EA8410510B999644941140E667715B422C45CDFBBDEA4317
+F0EA5DB457DEBC41BD47EAD85926058F1561614C9CEE9F6161734A27407AD744
+39A8C1DCE81FC20A832B5F85DFCAA2486B9FDB0053E5BDFA58EEA94E2A4F4065
+7DA87DB572A412B33882947ACE779ECCF25ECC67684C3BB8CF1078643F25AB96
+08F4829ACB030AD700749558750EF6DF3904F0992399D02EA6284B1A8C2C2EFF
+DBC6C4FD407154860A5E3ABDF60A4DAD9FAAFB1D095194417D9A26DDA77CAEEC
+0E7BBADC309262E8767F7D13A1A35F31908088DD38BB94A27C2915C8D86CD673
+12209C88E985E52347EC32D8E12221B39CF73C85EF2E6F9A1E8096329D2C861D
+96D9F2E7AC8649C4F2A1627BB060E2011C026A4FC01E53446973FF38CCB9A763
+803C8E066BDF37C1A19CAD7C621825CB903F5B54577AD2567043F5E9F6C3FC7C
+C2ADE691B5B1A8676A77ED90486E526B7BC5EFDE0584E22FCCB2C602526582D1
+42A2AC0F5E8BC8F900D1071D63B14AD89450EDE08D2BC3A8C0EE2CFA500BCD87
+197E20321B67685BD36C622588E3C31201F240B5ABA03EF23E02696DBA2F835F
+72CCFD31DE8EDFE0EC55CEFDB6964C8006F87AEADCB87ABAA757A3E993B9F8FF
+90F487DFC1AF12DF1081CE2D1AE60953160B9EB979DCB38720186C5E48F3CDF4
+CACCB078F043F5EB1CACED3DF30FFF4C15E5672E0CAF5A32EAB46887F52C7390
+6842964D60D4613BD2305D7BE2EA7978118E144CD6D23507BD79021C5C1703F1
+6E7920CC1F8D4E369E5B4F3E673BE0C4E5034E1F56FB8F9D22743B68C5B54FB8
+2BE256D926EF5C70B12D36256DD7934DF2891D0C954BBE89DB3DC2EDE4997112
+1CC39F2377EDF513659AD8CB3E51DF71BE865BEBF2D13E7C1FDF76EFEFB0D90F
+8C1B03DB40B4E90219DFFFD20F4EED0DFE9CB45886DF154C78CFCC0F2AAF47A9
+57B39009C8E779A407EC96086C6F25E97405CA9D088BA8B541FA62C79D7D6BAA
+96196A32111D7CE817873CCB1DC8E8D51BA92A8EED48E1EBBE90E99CB5BE569E
+EBBFBA5ADD9C72B25406E7BC10B8386BE4B1EC76825B7BD5B8AB8CE7DCE4C30C
+AC2FCA0797783BCAC7FD761630283D6242246B35C718B84139D141A6D62357EC
+346B709C9DE9DA5DC050B5DA261D813C72D5B208696491A0ED98FD83D46C08F5
+FBF97694CF0578874693DA559CEDB7D01101AC4DB82FA58CEA7682A7E2133CD8
+F2477F120A3646B9B8877E86DA1176A1E5BA21AC4A760B20E44EE8D4369CC9C6
+1B0813456F92E804F4D2F7172CF7B3705968A3E4890814B3E8B30F8C7609789B
+17DA555C014FE35E6B98B4D0EB02CE018ACB41C69C72C29C0B7A875CE966F936
+DE724DDD522AFA6EB9E7D84FABAA014DEEA83F20D03208C0387A3ACB92B1B40A
+84C88247561F7F13DDC6A3A4D2F9A4FE4B55D046B2DABB39176610589CA6535E
+65BE8F8D54FCC730B44ABFED012C26B7AD9909EEDF63DAC948FD87BE9A22A420
+418A8EEA0BBEDAABC765BB61BE54AD93227F684990665A8ACFF6D39FB050249D
+888134AF1ABEA9B9B80799758151327083FCE690F96B1994903490A804A8A7F7
+EECC411187E8E3E8939F206FB998A77CF163964555FB435CAC0E4252FA274CB2
+47DF040631796728A0263C13608F3AFDA9662B4A37980C0993C9A02059BFD888
+8CB07A229BDD083A92DA0513EEE06414B3FD65130C878A98F110DD63A90B5D79
+7193A938828139AA1DB96E64629128C87630C9990E22BE1DF29BFF60DC2FC43D
+84B93938886661CB364991DBFBE7690CD60A18AC91FB06828B2E085A16B4BBCA
+1BEF96AFC7B73D7B6701757D8A70DEA48CE9DA0A99F0B978EE7349E7065E3224
+D14EE444251C30E976A2C477FCA3972695F7E07E1942F85EEBBD96442581169E
+0A3A67EA4FD036458594C4D11F3A269AFEA588C1D74C9BE78B7AFC8625BC5E75
+EF76900777442FD7D9EFF03F4640ACB12BB9BFC7081151289D9A8F032E1802CB
+0A612A378F6EF63EAC21B75294489D1DC03237C148A9BA67194BE6D6B39FC799
+72BBA54108C4122882F90FA127E851A7FCF927DFB809F6BD18AE71814A56880A
+BF8975E834A7367A84B8876620BB055C00F43670C32A359597EEC9FFFA2467A8
+8056072D31583B6683E63B80B5BC39D7E5694883A9BA4F0BD1A08BB20AC68183
+06A6AFE6F4ADEDA77F9E0DA83FF3F2DDC9F2A6988DEDBDFA81920432414320E8
+E88ACDB734D8BF607A3D7537DED5E4D112426C4513317D75A33C348F2B1E372D
+B231E6C65B2637559E07D0C006F495F6CD370BF775B98DC300D229B7C525C15D
+B2A1EDB50AEAE96D15597F673722F3CDA1B11F5E79BE0FAA171302CBFFEA570C
+DB799FF0BC97A60814A4356FEBDE2377248F2DA347CE72EC559CD146EAEA6B26
+045DF6A4A3E6EAAA75DD014E18E8A038302E40C5F6571E5CE3CD4E89666F77E7
+14039BCEF50C236C60474958E991FDE0F562781E5A93BFDA497AD1108DED261B
+4650E7BBDC9AD955071C105DEF66F2AB3F9FFBAFEE7A6D0BF8F07D1C67D2866B
+138C63CF1FDCD04A961EF992051A6A6D000A262C83A6B80B328C7A2E3D2EC205
+117BF64BE69B95ABA8DE39EBFE0B97CB0A449CDB0C9CA5090E7C2240304EF085
+D598DBD20818EA8B45B07BB1699CC62DB2D01D61B4FC3FEC8124797308BC1C30
+D15C26302BE06693280369AB580081E82DBA1E17DEE6641DE9E7FDBFE860AF59
+B94F9A73A046EEB537F15B4E4F84DAD34C07DA10E10A531132829D8D7A2BB66C
+2D4340422321D975CC9B650F7DBA9F43201532E772FCB8D4F06BC0079DE92249
+706F4C2C751C166D431B244B01E0734FBB357E77CB9EF952AE0F2A11E324AE3E
+1EA09A48BD2D8E2369A7DD54D8CF0BDD8A12CA16D4355C05B0AE0128B82544F0
+5AF08FF10667A82EB1697DCE7791214F761A3591BCDEC8FC8AB503936E5E1FD3
+4145FD923A5FBC6CF18D78D3BFCC0B1F1783A779CE1DCDC6DFAC617987C606E4
+6E5BA7C8A1AF98C1B2823BEE4C829CCC3294497E9B84C33CB251F7DBB273E7EA
+B758DC19D54127D5AEC20A4489DFC7AF22F969FD7DC2FF3C12616C5B500F68B9
+5D0E47D81C66B23E7C53DA58A30BCCFDEBA852C16E049D2E664523583A532DAE
+FC86E5CF4973E08B369E6E72793BB8D7EBFFDA97A9E6357FEB05B0CBCA978479
+285C50796EC812395F1081D3AA547A82B7F9E9D5B87538AC9B6B51E6AF57324E
+FABF7F93B3053C991250845123CE62842FD215D7975081E16949C0BDB60F3C3F
+D810855CB7A602B99BC06D087493F27F8918CEC3AFB865C840D7461069B80DEB
+3D574D21E94A9E5DF8E73F105856D586A81C0B7E3563907652090D4A1B964A6C
+0F3ECCA7BC61B1D6FBBB1128A546661304629A29CD896F024A41F47E7093A66A
+F6191110A5B08B7DD5813369D51B32FC18DEC03296FF9D266E018A65010F4866
+FE837D2722BBF167566EBDEADE674D5969D7DA474BED52FAF27D0C642EB4A9CC
+F84C44BF76E60D96A9BA58994A9950AAE6938F723FCFCD1BCD1D040D4DD475BF
+88D7E1F8FF37F4F5AC5FDF3F7914702B2A98ADAEB638F6E4D5F442B0A85DC577
+1F471761C9672794851043C08CD3CD23766ABC3555D37127C352CD0ED6AA51D8
+DC14ED05142F0D30605B96709D9BD4C6F90100CC6094E278B5DC81650FF0AD24
+173C46F235A4C45F8CE6F9D34227096E9941B02CB4906F35D8EB8A327A275F51
+F6FBB57563CD96D52ACA3A7B13B1CAC44424D83E3A58475D747A5EE44135E040
+EC2B4F2A8BD0BE757DAA5DA65F362A402830AB602693F43EB59250D9026BBBAD
+03A24252E7F937AF0080214DE3C313EAB94A45DE8206C8465A3F886B79AEAA54
+70D2C3764CC1D52C21338FA5AD0A275F3E00274A90DEFAFD5175D900F3D4954A
+53BFA783AB4CFF703B1AEA1DC485A10246CA948FE0E8E77D3611114902420F24
+E814A91C3E2952A6EA2816A88BAC593653C5632B056074BD02E5DDA95B649664
+4C912E6066C8C2257EF96D28BD42D62B8A1EBE2E04527E10C4953469337DE9F3
+BE61064A7EBA20CDE04C6090EA52C6BA4F3622724806D0611CDF202D800C1FCE
+A86283CB256CC655ADC104D8763C14276398707B066DA28088FB9A4DB6378E1D
+AE3E13E89B8895D17033DD73C2A57162680D21713BF6EF22E5783D6518EF3CB4
+07C477E40E5FA45F6320B112521C9883C4B8F49105E263EF5D05DE9F49427779
+359BD2DB93CE27DA6196DDB97BDEF2C1A0CE1705F22704E7EC71114A556B76AD
+D25AD032CA6D153DF334A20207FD0094B36CA45627D6FAA2A0F0B37ABF9F1925
+3EC21F2F5170E14B3E7AB7B049DE904E217116A0D29A9CA91D9709E032D25BC6
+4C0559DEDB435B51889186EB15ECEAF659B798344378E6B488A9E14E6CA5477C
+00FC1DF5B97A21D2088B4600646ED9E86C662EFB1F4A4F97785378EA5EB73C6C
+72CD41643C2A66184288630C166489090A214B78BD742696E819AF13CA998AC3
+00D0F2EE2BA9EC896ABDA788C11B6FC601B74A16E8016D18FDB48FAB656631A2
+C470156183584E5FE400FD228B53A76292EA7DF91C86F9F6E8CFA780ED24511C
+4E1460476F42BBB75B7AB332A8E869BD84B45436B036248E1C16C9FE4F3A31DC
+F5B8E0D0CBF4F1D21AD485152FA6BB8E87E97250AFDEB08C07FB2FB5D5CE2E71
+3B9DFF083CE129165C995CBA98962E15C66279652D2F9A1F1AF90AE927676E30
+DDC9
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -7861,15 +8789,21 @@ dup 83 /S put
 dup 84 /T put
 dup 86 /V put
 dup 97 /a put
+dup 99 /c put
 dup 100 /d put
 dup 101 /e put
+dup 102 /f put
 dup 103 /g put
 dup 105 /i put
 dup 106 /j put
 dup 108 /l put
 dup 109 /m put
 dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
 dup 114 /r put
+dup 115 /s put
 dup 116 /t put
 dup 117 /u put
 dup 118 /v put
@@ -8066,227 +9000,261 @@ FB5654C417A12EEEF2DB5F0CC54A379DA75BB9DEAB9FD9F256C1B832D55382E1
 823C2FA1940BD8BD802C34BD648B41E268B825129BB13543961334C69DDD8407
 97E868B79C83752682CB506FC1C801F63AE7B3B8D7EFD23C54232AA97FA8B2ED
 EF2AE0382B4ECC8B24CFC62F698F8BBC90215BEAA8446BE6D261E30DCBEE8CE7
-6BF8D0E51BE2597E8086F27D4C58573A2080DA5C2AFADC88F26A639CA0C767B4
-4E3E6CFDA486F508CC9D67B7930A88335101F127472BAFB7E9D32F1B784F6D8F
-D02294302A7A5D4AAEBBD8A29A4913F440E35AFDCA44903C40D271656F5E5EC5
-35538CA4B90A5576736DE83486BA99C21A9D395929EB5BB76F8E578A6468B2AC
-7BCE0A26AF73AE250D2ADAB421A04CEC8A8A9A0C1F9698CE5DE46D930FAFA849
-684D3972E03E43E23BDFE4BD603B61946913C2ECB6886DC8444F4EA58FF64C98
-ED01358F74C66A260BD130F9FE2F3B9316FCE3FF7265BF6E14A221035D3FFFE9
-A755EFF21B8E63B4ABCDD91FDCAC1E1B02A1F476C040C5821B3F53BBE34FAC09
-CF589465E219D3945086B00219CD05533EC4E9276BF65F23ACD91CC2353AE438
-AC1B05D60A82AB7737EE2B510B778620ED09FB79365BE35B3EDF101ED2C2725A
-E1290E991D5A786C1AC61D7B46CDE3482D13BE2392AADAF85DEDBA199D2DB40C
-051AFF0460E92F6E7FF20D007DDC155A3C4C150757D27C9DFB9156DCD415231B
-7D22D31632DA7A3ED3879F496E8F742797F271B1344217C56CD9435B7FAF42DE
-0F41383BC75E79EF118D69306AB040474E72F0FA6933DBA1C4D194419322FB37
-DCD3A29389E052C791342874C7E095C0CBBE7C8CBC740A94DCEBAC1D9906A842
-43ECA4E6CA170447128F6B7A1B192A449C0F23E837A60DE6DFB4EF7194CEA536
-E36BAD2EA6C022B8DF94CAA323562D16FF54EAE1B34FC97C15DC28C7C4E40D63
-4FF5D2CE03267ED07001A1CEADD34EE2AB35A016B7BF4969F25D7B2241428599
-FC94A5E7D85C3C7212BD16A129321498154BCC0CF58BC1F01D0CCC126D530C54
-3C92BC6E4F0A54B86E4F222817806F70B6E6A4ACE82440EB72915BF81388B35B
-F17431A25A19C8D6ED0C59D4049B83BD6E0B12E95FC462DCC5A6F1C41053EF9F
-DE38A0792D9F51B949A877B38CFDAC7490A1AE0583FBA180A7FDFCC3C0F7D4B3
-23A62EB8722992F79D7C9ABEE05921FFA2B969438246AC713F4C84CCDAA9F097
-49967CFD84BB1A660889F70D21C077B62BE2804C0D7F1783EAAB8031E2D6AA3D
-FB588783CDB6FDFE32BED57703E7E82B073A17AAE23CA894A8D0B26655B772C0
-DDAC6B0A4E015A2EE458417043B4F3275FFACD0183C681AAAAF9F0C80C3EE000
-33B8CC399B23FC367DDBCF5F77044F76515071FA54607343157B45FDD09FBE4E
-4D2490DC1D987F2D6301441FD7F1891BC7CBB1509E12B330487BD24BC8CF6A7F
-B8648EC2107BEAE97C8DD44F1EDE47546A3FE6AB800129D8F5F07C455C09E529
-401BB72E06986308614DEAD49CF14F2C68D815A62F2A81AED775CB9763824E0F
-F1718B8AF1246233D692B4F10E587BF8F357B54D64BD2F0941BB6D8D39D77938
-934567CC61B4311D12B9BAAD3C583110D0DAC8734CAF5C35EB64D7E27714EB1D
-6F203159A5498AF7C945939EF551A4E4CBA2F5E3FE135A4649633C8FB76CA066
-66658B2067E1648A99D75B0C6E56D319B6C5C8FF0A073C59CC45022FFB3C5C4C
-36E3946A5CF857ED9F727B607F8EC6F5517093671D2299DF15E16F74585487F0
-3F3622FBC828BC8D0AA1E5264A4FF4F194A3DE629606F3542AB1D496CE65197C
-862479B8C8EA696E34C7C88FD19AB5FA0EFB0F6BDC008C3A1BFDD28761E2EEB7
-33B93DDFF2E6032EEAA2E03FA86C7C703E08A34E2B8BC4B85D1C02D44BFE138C
-40F13400C98A56B1E66CC05A4D40CE23799373B747CA8469793DAD900D738228
-55BD106CEE1C6C1684D38D8940AAE2635B924923E063997732DF270D9C7CE449
-B99302A2DE3A27957E255082BE58B622098555DC56A3C3FE71565F42BBB54FC9
-F5ADD44AD76EA2B774AEE5A89FF12F205E05D889059DF51F092A72DDC602A36A
-C62553D037AEC600385A00766C50F3ECF0268101E2F7D0F4951704563CAA4464
-81497CA43AA0F6AE670F5FF085C7CAB2B935CA2AC6F5010344E6E5627D613B18
-71810A21A552E0D5C9141E8A3EA53D7F66072959928E97CBDF7492DBD63767A7
-20258C7CB0C86BDFC3198D6E953E711F6B7D9C0DAE59326C87D66463E430DD96
-3224FC732CFE01C2F6A74B764E26579369382823EB0004469A73B7C0BD6CE6DB
-0F093D15A4A6189874CC2457EA262E11EF9FA7D4C4F0D6C8C7E75F8FD39C6729
-F1B653A8F14246804FE77E9A50563473C68804596A2B77324F928F8423D45105
-C3B0FDF001DD577340244AC33A1864069CC3D6AFF466E8915AB33BD596D7E5D8
-2898387E7FADDDA1538D2CBA5A14825FFF4FE2C8937527ACC21DA2F53D321C91
-64FB3F56DDB61B4E6616BD5B79D4F89F8AE6EC7BCD539827DA3D33681DF39C2D
-384B71E3E3CA80C337F1F11039CF7DE0E0B7A8F92F853A5B6F221FFF850E9A17
-5C83CF701BCEFFF3C2103FD82895B817885F2637BC8B918A03F042145D97D850
-48C4428B6F6F1858E6FFF8F4B0FECD183C37F4F4DBE70BF9AA47A81E943CEF7A
-8AEA469A5D7FAD34E926D8182C9F31BC50D85143FD5A95D8F08528EDCCAE55AA
-5E5DAAA5F411C9ED1BD34754564B32EC2C2439F30CA9518ECD94E44AA8FA5F8A
-53236E044B96E027C8036A709FD58B920EB036289365AC09C7F1B2B9B73088F5
-A52F11341FE0AFC5CEFBE062041D370CFE5D1AA1B7E359F0156655F45569C760
-CE6FD9B0D4533BAD5D52B8E43FAB464BD7D40FAD195B6C282CD2B7284B5A1451
-A88C967124D307FF608CEA7D6AAF09CD27CF1FD28338013EBA21D7693EDE6A4C
-8DADAE9F2F7C5656587BD22A6E71A35E51B8696513F6DE26A075646E424F6A8E
-C7BF848169839EC53D22E2DA9F5C878E759DB5766EF081B5FE51F9599216A8D4
-FFBDAAA0873F3FB13A63F7313ECAE98C4CD9EAF063088825F223CB39677A357C
-BA1C50B438E5A96DBAA440CF542A9C44799B991449D2B75ED67594B092AFAF91
-0A0A1E19D59D11541E85EE97A5EB14A4FCD597F3D5F4DA9A0824C992B2631A20
-7860162F6049CB03669AA11D1E41D1DDA64705B1277846A60549A635AF81DAA4
-576635F91F32C6DB77DABE0C7F050DF78913C7910BF929C04F8B5E4D45FA6377
-B95BE62ED8F7D4E84577595B1065FB51DFFC47FD7A43FB8A9BE70F86151DCEFF
-2A23274E4B38CA4D0CBC3563E0BF4D4C87EDAED447DF1F0AB182931238F09850
-E7A7A1EDE1BA43B5F4E5BE603E8F9B62E82F9247C43A7DA453CCC447C79FD488
-52CC56300BE335F9DBE2E4A30B0840DDCD03D17B89D1B7B955A7C8DBC198B6F3
-45D2EE100D33FC47CD17AEC61F567CC18264C4D2A892E71FF76909A7C1FF0A76
-102FC534D8519C5FCC57BFB6B77D119DCCFC44FA0344855A1DABDF76646D2CDB
-DD9C97CF2C3B16E9553FE9F2F0CA3DA79910F540069A6D12402FD8ED91123D7B
-064B1C0626F98603B39BC4E82B02AAF4FFBED0541A01D1487F4031379D0C6241
-72C8DC691680A1EA9D7EB261BDDA2DFD24E77A13E3C3AD11D19A6E645E1621BC
-4834ABF5229F92F10AB1FB42B6AD6751260A650D9E9D6C2CFEA20066E1700878
-8C74FBFF33025839308E85157B623D3897291BC109CC0A987721437DA6CED46B
-D3F1E31D3C9BA094E52CF5237BFC72287F528333CFCFABCB96D583E080CF3C50
-4777902D47E9BC33F7F5184D7B251378F52A4ADBD8CFDAD19F9F2F766C23102A
-3F0A8B5C547513B552689B66FE3B2CA4129115B9F13D986C05ADE5063CD89596
-76AEE0FD3B837F369CEE095F958ADEC33000C688702D4780E8DF88EDA0BEE930
-B876957D28A18FE986A702113E90E08D0A375475D143DE90AEB1AB8DBBACEE23
-A335853E86060FC34BC099FB010E66C0E30EF9F6616282EBCF0FFEE621F19AB9
-F937F6B4E2767DF61AF6CDE35FBEAA7ECEC7BA386B8D50357E78AAC23E48DC0A
-C8DCC103DBB497D92C20D1E659C0209B027849CBE137BEB509928DC43A9CD193
-4F3CC23646E18621ABDDF6149ECB7B9E8CDB69653F372A87C12977A33094DE77
-DF0A9A030C2AF0E3D461DAFC7739232714C890AFF8393ADE7AC587A9594DB98E
-16094E3D2A32726BE425A1A0FF1A215C63F8A75937883F024AD23103EF6FE8EA
-02641BC32EE0B95826262F3E5F7B2D214AEC2382CD39C0BE51FF34B02F503BE9
-8DD482E9B01569CB0BB8B7673CAC707A9C473752329D3DA54A901AA75F9371F7
-0F666F00741B2D9E42990A6340E770AFF54F732B07CB2896C8F462DD94C92E4E
-25F5E0FF230B9A26C7173C17ADA2CF91C6557E5D67C4B4CFCBAEB867118FC302
-2E85A7C3AFBF9D07FE75848EDE525B72D8EA7B81DEB40B3047DBCC07352A1DD7
-4A76B031AE132DED9D36D0B48D30F5E2AACC93F676DD9CED2C79B58F3F898873
-D1142A0BED92885845C0ECD3348C21874CCB0A4CDBB5AFC0114B86B780F2B0DD
-390B8562C7A3D260A95963FF64D5C6FF5B65E7F5452CA9E69D593C3AFABDC356
-869F52BA58E9875615AAC7FC52C73C20868DA02265FEB674F8F7642C9920590B
-62695A2AD32067678054360E491196D08E03F1D043FBF1CC24EA0674F2397C1D
-881600F850C397F340F59BBDBA7621AA502192B1B7B91338BD124F09681B9F7D
-587891CB6D6C2517DA853F744966EF1165E9679FEB22C39FE1650B2A1607C0BD
-094A704B9CC34D4990268B2C2BC3CF8016B1C6C963090E37091CD6E1C3A769FC
-9252883C283C02A4655C572FF174DE34C1819A3C5795A82082FA4B4CA61939D9
-0EB3F45A576EFC446B7872CCC62840ED9BE1DF36151EEFD9D7C0C0AC1F747DDD
-48DF2E3B2B57D98D8BF52C9B6FEB7D84FC001FCC36D24504B0A54B882E7C154A
-1337B7E45B8277F20D2A4A79284F9B6C27CD7793964BE59DEA989BF933852EDF
-3615316C8B286B0EF27D1EA73990FF78AA4A9BFA90202B9FFC7ACE8B990E3A4C
-2B3F42C2363261A04539DD185F10AE354BF7432DA99597AD6F84FE00DB4E22F8
-51D0624062A79C6703047D84A49D67CDB8F7F314175BC9CA6C29D2A8EE3DA2BD
-544B7B92BF5F337003BE0392AF83F14277F1C21D35F9EA9E39022965F22E39E3
-2248760FFD088A27540944676F3012D72903B71120E65F969857C14EE854C070
-8BDB008FF4FFAA4A2F5EF1D42C3065DB803D106DBC810DAF0DF3F41DDAED1A23
-2071CC67AA68FF2E077B64962ECF2DA17D58F6D83984E8EED1318DAB77780899
-8697C829AB15D04B96514E439859738CC1B651CA1302075EEE69A55ABA404BE4
-63684C4DE96129CA7FA868F88BDB2C9F29E8F7845D874B78CBA1165E47B1AC4C
-3A5C56C14641F42AC7B933C8DB391FD16542066F877F2BD01F008B6229BA6D42
-3B3A23C8463F77CC9A8F2D86E37A85B933491169102932C49027E47E2079D979
-456A117D1BCCE89E346A31E59A2B34C9800758D651A8F81800951AB0C4C85F3E
-DBFCCE59BF00AB78691E9EE2F5A90F2B82FF4882A0861FFAD2C98C97A190A897
-6D65C2D403C5F1EEE0B0681B2B88461D112FF7F4DD44A5F6E0F9326989FE61D7
-9FD90C78EE9B43A64EFD141799E5119B44739AE0ABCEBAD7D37C994DD17534F0
-6D587137666210DBBD979FEA082C9E9A73C29836878408848293FCEE04B71882
-6E382AE29E3175AE0BD3D5065DC86F60E375B45B2810962447C082B84AC5BFD9
-F3644B26B77D3CAE50261E3DC7149666A5E45CFD79A05C0F3511F823E75AD49B
-1F1472E62741EF623E833F2CD4A301EA3B0D4A46135955110C961563D2691B48
-1951AE7E147B95D25943F9D89B9C311AEDC36B42496F4ABD09AF56581284165D
-E6CB850967400E239D30E3BB6D14C2A2945E1F50BCDC7BE3E425B54D53A37C85
-2F65C8250103FF85049DBD28BA3942BE22757C6326FCE7C2A44A9D8A35068E94
-C8DE1785096DA9C5CB857F0A0284D0FB9F78A690E1B7B966A35A2B7428C6678D
-7ED671CE16A52E2D62DADC71329AEF7C5A69F1EC45E4814341040F8AB8C9DF8E
-D65B2E79DF3D24A797148B0FD0DAFFB1EAA47FAD65B4D0167CE1C41367590120
-817CD89DA677CE901EB8293C6A902B5BFA58738C39198DF90B5CEDB2E18C0F07
-588198FC4AF67A075A927006154E4A2688F10B35DE8496F355B61ED9818BF3DB
-E3B2C475D44DAD4AFAB5B8D3C83DAEC03D53A04A5557D8BD673F79CC1DC21B95
-DD7918589960D47DFF65C4C4635ADB885C690522125E2E4C817AD5163C5E925B
-EF1D11A24DCFAFB10F9CE220263F1DA8EE88A9607C321D65B4B0623BF2087F20
-498ED295D5204A0F7E55581F5E07DF9248082D8ED860F765056CB1E76CE99962
-463711846AC17CA0545116646287E77A03761BD13FEC4A6CC7F4A82720BEE004
-7633522C947BCA7B586F191D624D61A180F5E933CE485655829ABA91AACC90F0
-2ACE144BFD5B53679D39DF4F466D21E4C1544E89FE182C53CE61688D6E82A548
-E8EB844C25C68A9B68DF7C7E29400F50C3F9EE8A6C3D7A4B9159D1053A4147EE
-827D372C2E8896475FEABCB208AFB8C0741515D6582F546685D4E735300E51C6
-E8924528A4598F3FE9AAA5F1E08ECE56329EB5D3FF12432A787CB48F49D2A232
-AD3A8A741411FA1DE5F85D1AD2D9A80FE4774F1883A79954166A3CE47A47882A
-F5ABC4952064E668F8F9861632EB43F94C949240E8CEAB741322711993B6DBE4
-FFD77BB80D6978319CAA5DE8A4C95FC0E4B020341903A85DB0D2AFAD2A6EE860
-392DD706003ADA8A1D37BD166C72770772C648A2EEF756679298DF05D9497C88
-FAF9B6A2A7DD4E3E1778F67BEE99F4B79647D4093A171E9506C8AC861674E76E
-1D329899F4517E8CE6AD3BE7DAB964BC03B9A37B303FDAAA9E2EE311E3D97F92
-6727FEFDA7BCEF153F3B5D188671251A5E89DCBF30A807A79D4DB463157FA74F
-33A11FCA0EBF852946976B6F00C7B77E5B6AD8DF0F00F2E9086FFA6B70385C93
-9621977BBB6EE25FA6641C258C06C82D28163D04AB541F6C6699B1C3C61F2DE7
-B414C741759F68C275F8E38E6CBA2E7306D49055138E86D4D0068F36A395BB54
-D54426F761F4D19E4A277C0F1AD0179380D306C7725391C6B5356B59D5443D94
-A4B547A076F2773873A3434597979FD9804EF1640E00A67C39B141F6B5F13D60
-F301D943F87D045BFFCBAD15ACDBC76BF4EC81B4B7419AB5672E7706579E3DDC
-FEDC64E55F0647FA07B7B6A0D0CCD133EE61E068C4D5DA5CDE92E99FB53EE670
-1BCFC0CF2C59B5399A0C4CBB3DE71B86E3A319FD51710B7643FE97F8BA233959
-901A0406140B8D9D3D5A439DA4DE5237D68D06DDAF25053652105ECEB5B73308
-0BA1F8A7D9171D7E8BBBF50CBD2D48BA362437DB664B930D6F469B26ADCE154F
-00EAF28545247B0A148F0BBF928595885E89C162F1B26B1AD2938753C13FD5CE
-5BC0B770AB9DEA99F0471E1818DFF91A5FB93C5871C6A232FB7BAAD3EC230B5D
-6241695F1E28CE881941BE91A7C28FC71740ED170383CD398C8AE80D17E68FCF
-7C29450B91C9309010235911004A4036EC90C2278E65DEAE2905BF6D6ADE7C6A
-730D01EF1FF4E3D68352F4A19B43C6AF1BE74B5DF96C8930EF71A3D9B05EDFBF
-2FF35E8E5130316296472CFA3480D25A6A4602F5B7695B2F35521414E0919498
-5E4208A1C8BBEEB5DFCC34161FF311C6F6D037CAEFC1E34084AE022B70D4EC3B
-3B8D4119FAE711BAE396F18C4EEE126BD7EA3CA0D04ACC08554BC96AB1EB0492
-73D5728863A8F617CDB8A0A955228773049484342DBC8D4F03316E51FD359BAD
-296187133AA32160C9340F464017B138CBC4072F4E3CAB84A7652896F7F7D832
-F6B2CB585591897413F68FC65EE8E28D80AC54CC65F658E7591C992C197BA004
-9A9905210E84AA78738716A5CCF43A1CDD75979EEA02A37AAC6737BE06CBA00A
-A6C39854B268422E2AD0CA2B2F2D9E73861B23BA424ACE821D263606A3D7A3FD
-1CAF438A3EFD767F772ACAAC70BB7330727DAFC6D7D3F094BCB1D9541D2752AB
-FD95966439A17606C75AB8A8B9D691C62AC39D514CF0F398FDBBE890B9A7EF63
-B0FCB66A96AEECE8C57F66714E63B2A139C72423C1E2126202E50B4D156A0902
-4E0CB480D77E73250F3EF23F5F4F60A6B615D9FD1789F486977B450EA48322E7
-8A99FEED0BCA692506849CAC24060278F53C3D78E7439E073C35221472ED0C0F
-894F61063352C4166803871ADEE2CBBECAC1BBD2DE66C8D8308D293B283042EA
-88F572D01FE26EB24982FCAE7B3EFFDF27C0D83B751703EB8BA44DA80D56D418
-962AED0965F0D640C2B958CEA135526A8D069B1E5583074CA0A1DFC93CC39B2B
-3EED9E94F01232BD1B1536FDA8653969E3C24E8C87A31465D3F3D25AC6E7AB7E
-CBD4AB6F6633EF0973B1863C0028659B19630D9F9A1571A239212F05BA154584
-000AC9D984E78C87D8E111A6F09CC0BCEF4751703E10C86AE5065E98AC3C397F
-1D39784AC5358ADF9A160C6E7086D1CD28451692D06F952C91DD3B0C882537D5
-7063A0664B764F82246BFEBAAF569D115BF935255D4C3CE99BE406207E9EC1CA
-BFB70D0EAE2E2CB481C51A0D6063EF82DC00E6AE60E6B3171EF54AB46D1BBE23
-532166F45D6763147585BC12AE274CD66BE5C958E726008301D7E11991A8BB65
-9AA4B1C678A80A0C01F6C58DA48B1F4FD478CD9F3740B4D0F5548C7805BCFF26
-00D38E82E21233AA2F7B41CF130C98B617E842B8611E8E62063B7AB61E0C4442
-5440F204D019FEBBAB576DB048FC6AF796EF700549D10E89913C28916016628F
-555F8D80AC3EA649420F2A7724424C0770ECEA7EC350B130B82B7660F146A892
-7853A59DC97DCAA4103B3FD28071D574302603A607D988E47341842EEC4383C0
-F465A1FD525FC33E5A6CC5DE3174464C386EAFCBE3D73FC509110AD2F706728B
-B163B3777689BE67BC1A1D9324E7BEC763DBAAB5C553A23C7C82C1D33138A75E
-1ED9167FD21CF17C20179F7F4EE5C3FE14D00CFABF0EBD6B2482326492D94B01
-7A1BEB4FEF2CBD4F231D2836E3080C1D6A5944E859FAE931DC4D6E870D7BF1AD
-433BBD2BC72DD009C7504902A0E43BF9D2316E909540A13996E1FDF656258C72
-F94AB9ECFFF3EFB161335919427893A09F978CD62C1C7030A4A19911A627EA94
-121FD3824FA5B6DF6267C2B4CF5CCEDB9495A0E1C810962A2016B2DC4A62AA7F
-4874A89253DB00BB109D6EAF9F57BAC3E587F8FB439ACE999394F45C635DDE64
-73FB42E147EC5AEFB5788D8B467ED8C600A04CE5BDEB0F3FBFDC7A5FA2779F1D
-FFC8ABE747729BB80E09ABC8A1C04C608E977D3EC92D101B6457543E5ECF06C8
-38948F8A2CD8964A94115BF148DECBE8A2139295DED8DB75F0C2D3A67A980ADB
-AF7E106421524FBA2225C09EE092CF4F5756C3910A3D43E0320595F2716B21E9
-895ACC5675D60803214DA66800E5376AD2507D978ABFC729D9F096C359D50508
-A80131301FF357549C555470B659376CA8B6276D0A44C5FC34D797C48232A44E
-B2AF054908CC7D3C6647DCFD77326F886B8C961632C6D66F4EA40A17E7651086
-5FCAE854E708EAA6AF44DA41BB3D7F7B6E4D4B3ADC16BB20CE86BF993B2AC854
-877251B9E3BAB5C3243332A135AD85EE5C0084FD75CB36F23CA8AB4575B1E9EA
-9F3CED9ADB63B6FAA062E668E5E4510A830D37482F7DF6E416F9642C707415F9
-85F3065B74D8EA67A6156574EF9EE9888FD22BB69340F0F582429828C7A51A57
-36C80C8D010B237FFDBDF26C799E433571C91B52FF4BAE75A22D8FE6E16EAEAE
-A82CF7DADDCA064786FD7827FD3AC5743CB3452E0002FE96DBDB3A8A186F5BB6
-EFACDD3ADDBA87BD94C3E655862945D6E9C83C9F2FACE3752D91D91E38FAEBB5
-6526A3EF855128C9F304B03E2DE504F269FD1257ED612398DEFC16283FA11FBB
-7FF6B3A4FC012DB78BBB00C5AFA400F6467C862F9BD5048776FB872FC693A7E3
-3ECCE7DC441D95500E048B9E8F05C39243195CFA099704432E0AAC087B8A8E5E
-F7DDBA473C5076F37B4FAF834CDF46F47ED12993B46E98C980083702292A50A6
-1A870179431035A287F31752B4
+6BF8D0E51BE2597E8086F27D4C58573A27698770308333C71D48699349D028C3
+2034CBFF350AA906F1287ADD7BB033432F3E62931EA442657DD8248BCADE791A
+551359A5B778565F8E13CA35B7EFF8A256219F89B400147E3DB4CDBB315AA77C
+4DB23E67AC27D9175B60AB49D9FB0EB3068A8280BFD3F6B72018C86EE540E221
+AACCCE4446F00CE96C0A039CBEBC8979A4761D8A4BE8077B76673226A54BC005
+5BE99A54C39F7268D634D6AC1071B525183EA655398C80A125069FC5753BF74A
+A7BE08B0975CF504CFAD633326189C155E3DCD24226A4FF6BB4D5A4AEB9B2862
+9C46DDF4705767A888FADFD9AB167D7CD7AF245D3CC975BE37CC0BB157A66358
+E11E4D739F1E5F7D6DB3BAFF39CCD684740A52830BD6AC6AB247910B7EA92968
+9590C217D8904E335163ED145BA7973A47B02305BB7718DB8B65C82CF3AA8D71
+814561DDECB3A2E6F22B214F3708BBA3FDD6587AF728D617CDD9E6774DDF811D
+63BE30AA8F4FB59F4771F5DD5DDFBA58FBC000BCBDEDD8297D4CD71AD3E4F440
+4006E44178419870D9E0005EE5D0E9B4CA167476422F276D6BE7BAEE8D10985A
+5D439F52A093582A6625A0A43D5580341C90B15EF08F706A61FA30EB7C346D20
+E5EB04AD836E22C0C4A6E716944EE5C04A80F2CE3915F0D6CAF39859435A85EA
+848DA6286AC8653E27393470180D126CF06A54228312468D04962CB1364019AD
+23FCDC95AC24B9390FF0C31CB7A669713090978BFCE97E0250A4EBFFE9FEF9FE
+A1448F984886E35536D568D23DB832AAD1F8A50993787D1C23D34B8A88E4E488
+8C86A6502D43AF21FDBC95585E057DAE12ABE18EF5A30767FD491BE959F1418F
+549A863408F276F84BC6E9FA1FE5E2B12E7BC8F1F04D1A93A259F17B4F47DFB1
+45DCED188F592615E88D2BF638C795DE04889907B23F00D4F64AA7D2B20B2A2F
+A2C3B38EF6E180A56142214B46C862914877DEEC88C0727E2914855A9AD63340
+F578DA1425CC644EAAFB743E1136C4E99031BC670929541B96A59A23A8400583
+54F648F93B94A6B5F489AAAD15BB0209E276ABD07166D19A73AE894C5F3178C6
+0D2D01D7FEBD9ED05DE758EAD2B712265EC573AFD26E76BBA4645F89AEA55438
+CE353B339B36871891AC83E706C6BD3B98CF062CB6545E79B30D55AB438D3835
+D361689928414833AF06FFB70C3B7FFB9AA31A99981580C21FB0200D07C8DE3B
+56B443CE5C2E92F4A9C745408731C7D24A0E4986BA455AB405E4E0C408BD4DC4
+4252E0238E2A2081E7AB5210E684FB8032DF7E09A27D1E595C750944F23558B7
+AE854C03E1066AB6742C3109CB421D248F6BEC08CEC0970F0171ACFBF6CC8A06
+C726F28296D6BE4FD429F60B62144288B75136031DE652E172982678AA14F176
+7342DA102DFDCBB8D47A603A97CCC73952400386F0A1D666D5BEE82C4425DD14
+235042067F804FF921434D2F3CD3E21567E09BD25DF7D8BBB6047678FFE45A32
+E47C470A131C985E6F3CE8B6695B8A4D172D07274F7E8D46D869F3018AD38301
+F919FFD677D7FF183F5938399C1A74DC954027700E66A78630C296B4DF1257AC
+1C3B536FFC216F31C8D03A856D2E3EFD8049BE5F391A23988BF6E114FF0F8DAD
+D7CE9D9CF693F8D5AB78326E01E7BF3F594FF8975F9C474A19CB02B87E8C1841
+62F4C77696F7C5D52AE6819D9E26E7AA4DD3D25685CB84C3DA9FECDA5CE2CFAC
+B47759FC64D4FD0A725BDD2076D884436E862A02B2DE557927B3FBCF2CBDC667
+8AF560A35003B68ECA4B4CA2CEB649E542280C0B9F9D84CB895BCF16BA7D0031
+701D4E895F890EB2351D9D95318942C4C91ECED03CE42EE84E0E66267473203D
+2F04EF3CBCBDBB0324B0FECDA99F3AB8D6AEAC2768798793320C48C6920F73EC
+2741F0FEEB9B02CF3F954108453EDB7994FB654314F6361DFBD85A99C680EACB
+28A3F28EE40E0AA07371590F7E77446E0BE03CA1D701C92DE79214EEEDB4246D
+92B34AB51B185365A2844BEA90564DB90586154CE93ADADE199A2C5849B32989
+3EF31DE9FAAE4206DD523E673D18888CBA70F4F11EC41DE2F9EC9528DFF58BEF
+141BF9839F38B021ADE799D853849C1ED2FAC4424FEF06684744E6DDABD9AD2A
+94AB944F8A8ADA0444E92163BA51BD9D7E659C50C9F0DB3B799815D0DA41BC3A
+636D4317EFE2C8BDB5213DB002916FBFB03569CF434F8B48887A40C3197A10B8
+34E35D8F7B76346409DD89E9F533BDC950ACE5570F5804B94F647BB48F3DAC58
+234E6CDA1BA4D30D0AB46391AD0D51035BEABBDB24CD119F8B62805125B6036F
+C493B810BE7AEB8970391A421347951F195E2EA776C925845C9788DDE3094B2F
+799ABC29E37A1EC98D57AD6C44C0FD5AF39A435A75B6914E045CBD92C85BD9F0
+9D4B8946DFEADDC3F9FC75B1A75C58031F79427CBA9AF4AC73C3257B058F8750
+0D551B7D3817C1FA910AA6C7EAA7F423D4C5445E9D217AAA4A67D38DDD68CCDA
+32E61624C0866B8B37928AC9B113F800D9699A520C450F2AFFC9BD9A4D1B9F60
+892318A206A8A9F2A71E86EEF42C61566EAA096FCF2E42AFFFBEEEC188E51959
+020ABB60BD4182FD94E445600A99BCF9FF22A578BBA55ABFFA515BE828BBD59B
+4AC6E3E8B13BFED5E6B03E67784D1DA1F2975031AD3C45F909F83A337642C9F2
+F90DF8C68FE1059B17206EE6204374C59B475ED56EA17D2763E1E1301690360E
+F5FD0A97AD32DB048900198BDE6F1D87C546FAC77CC89FC07198DEEDFC2AC65D
+466AC84CB582DDB2B7D5F17B5ED6083C66DE9EF5A65629242B4603A38E4823D1
+8A814BB640A26FE3C5ADDF35B5406C54A678A4C0AC5265793536C6B5340D85BA
+B6007DA948F06175095759790BC78C5DCF94044C65F93B250A6FCB43F5F2DD1B
+EB3B058B0FC0BA7169B37EF9B5A0C8F4F156A767168ECB46885189F022E216FC
+B03D7C127FC930FB77E2DEAD89DFACF3A406D9A688023BF4933D7BFF913A3730
+C0A16B3161ED202B58C6757BDC168077730A6D76D86EBEF3A66D61A8F267E6DA
+D36F0B7C8325F678056565B0DDF899D2C7DCC2E00402F47F137EFC25E1339D8C
+80EE13246DCF00B4B51458CE52403B1B993641D4A7B0EDFEB4755EEC704DBED3
+6B66F931CAA33D845DEF315969E9608DFCE31A7BC3A7E661FE2F685FF75E145B
+9A06CF01F6B4F0727709DABDF8A959193AD9583638D9A3709F1A00E43053081B
+338DEEA1630BF1005638086B0EDB92F78B94445664E24A906E1CAED2E6577150
+8AE0C0ADA7CB675D78E71C1F161992119FEA94911223BD26B544BACC1476408A
+2B5BAFE8C2A828A6D7898DFD805BF9D8233F4DF4476C1CABC5094E7AE301D014
+A81AE5021C98E5F6D3B7320E4CEBDFB1953D49EBFA0CFB16061582B482C86E23
+C7C937286F40BEDA065842853C5E3B891EAB4CB60577695CCC2E54A250F8DA72
+003B11933258529ABCCB3254902075551B7F6B5D4DC0894F73657D32775C2825
+7AFE6ECEFB8AF781AD55F587D240B68121BA3116ACFBC43FD25EECA198A337B0
+95C7D31A67E1CC235DD4A7FA2F3763A45E8F436C5D3855778240554876222B60
+81B7EA6CD277735FC5F71D7941480D4CCADEC984BAC50DD47CF2DFC7036A227B
+8F9A493AE086FC813AA0AFBE59B999260E837DAC8BA2F21762158DCED708D60A
+B933B417D12879B3D59F00462DA1657D001B6A6B044F38C2321983931046AA9B
+2C5F1008A5DEE12F83B463DE9060DF5821866CE54CBD25B7AE85B4A14EF1DA31
+9EDAB0651DC26DDB8E8C183231FB1DAF992203EF7F4482C7F209A4169CFC4F6F
+FD2005F87AAA6351C8CEAA65BDBE9E0F1E5AA60BBF7E08C90ECAC01FF7042BE3
+CBB477020F53A19B6E1B20D8DBFD2871F6E81475F0074E024D08B37304EA91DA
+C431A9D63EF3B021C72E7BF550358CAC5A9500C91998B598691626CE60E8032D
+308036A38EB073C4D458D0ED266DFCD53ADA265BD8142DB1997A94957F82D45C
+D9A082F9618CCCB7A8BD31A19CC0049D1CCD05E1DC9A944D52754230107C56A0
+46AB947F6B9005843B4ACF387399564E2F71C74E4EE08ACF01E132C208DB1AD4
+AD0A512DD2CE911520066E9B67776E064DDBD0F7E494F845367D7F0EBA6D8937
+6EACCE9C07C19CAD6C521BC9FD0DBE0DB79306361276C5453E8A069524F7D4AC
+0B6794ACC3EAA1D63685CD054E894DF0F323B16C52E95A519190B10DCE0B0E2D
+906B74BB24035ACBF563BB9F7F9713F521697FCAB708D31AE32E84A4E20A3A44
+A5E65336F76A77A992DD10748FD21379EFBC5E41B6F64BB30827086B1BD95E03
+9FCF7CA602F0A14069E6C7A49516A789EA5AC932C818747256E80177E781E356
+C99E151ED0148BC990AFA6CC391CBAD64E2033A31E93963D238EFE8115B163C6
+70F302AF6AC265F07B8E6B9A195B1956338B1BDE983B2E625BA80A83D74D02DE
+182EC33681ECC6120DEF1838F0D9A336521A15410589A2DA6016DCEE329DBEC8
+0D64A090ADD87662B6BC9A7A9BA2A8C67528853571AD706735D06E1A56E01888
+DF44645778FDB8233C1E21CE61E8979FE89A3D129FE932D1DCE16FAC9D0CD883
+BD67F06DF16FDCC8FF6E4A5A7DF9F6289CFC17F94B8BE96C2D4C1FC7D370EF9F
+475796F7B7224531AB02F38543BC46E5E7985559E0971B5E84D25E2F0EA1D814
+01E0161127A16E83FDD2A8A195EF904532FA54F57143582F72323A7B4B55AD9B
+E249D58F86ABF9691C2D656A90E5BF7204B68B2281FA6E27E9DF01D5FD333B75
+7F971DF0B134F65255FB14E2128896C1A1B522141F0784C1BAE964265F2424F1
+9EA87FAE1E2557D5248114EA99E5882E1198D82405926944ECFDFC66637C9029
+3FF55C7FD29147E0BEAC2F0136DA1973AFB4D87DFC970C8F160DF406264AC828
+BF6039A0790717C88021EC64BD992166523D57F2DF304E5EE7EA62307B917219
+0678202F4D843E6790F77909EAEA5AC8407808A546F0142ACFBA1F27A2EC2D0A
+FB444F663B3E242A353515B5B347DF5BF2311BE710681E6BB2B7496FE8614ECE
+A863CA7F48BD22FF8B53DB0227DF063D3723B42282958C3EBB315F18DABD39AA
+7882A38E4F1F13A26A9EA60649F561D14476941D95B3F4E1A21FA553AC30CDF1
+4C06F475CDFACE44E293BBAE7542203428FEE134A01422B77C32EFF89FDFBD18
+2FFCE1425D91CFE855CF4797D465E1D68BA66E6AEB0CE26D3984CDE34B4E2D64
+133307B70FE62728A913A4791898FE794B0AE0157634034E0BD3718EF3BF0F6D
+9A0AC800AA0B2E4C403D8F5103232C4BF98491EDAD0DFC1E818D33E6B7161359
+C486A288E095CEEB8D9D9EACB53D9DD69B085213A430668424F72186AEEBBF5E
+B53E00932FB72A18D05C2DCCCB052CA4B6D9562B4D81FFC30835C78F083607F2
+C95A588EC59902D9B3F8858131C2DBEBE8CB9B70C59775C15C413F96AD188630
+5F6EC67D0BD6CF786CD9402CA1A7ABA0A77E72CF554276C1B573C13C14B35EE6
+FA401F1F6505C6A1B74CC085562A6AD33D06257C73AFBA2EF2374BA449AEA6EE
+A0CDAFF11454866DD027BC5E0077038FC4A952B320EEDE2D5F40042E7B03CD4A
+571B0818DDEF3D6EDBFB8A74E3EDDC3CB0A43CDB227178DD9D6E59F63C99ABE5
+59DD53118089734D16868AAB2C676234CE7505B030ACB6E5575CF97D126E1669
+1D30C2B0E3CAD591221DBC3F3A03D2BB17B0355567B26DE367A2C185822A5DA9
+728E281653D6DE176FAB6BF78CA7E58E8D68ACDE4F2D4A2EF0DB19990143E385
+48345389BE49FF5AC3DCBF177EF2139758E315817848EDB981B3EE853E57DCCF
+AAC31D88F9FCE8F44244CB087A7108713755B68EDC83360544A96367EED7BCB3
+901F4FA67C9C6E8B79980D19E2CCB899813043A33B01A22F873D19E92294010F
+3AF8D815D096CF8CEE77063ECBD322CB482C662EF48E8794CA6B9932596F8FD1
+DE337EF2857DADFC8B50BE25E2664AA86B80ED8ADF979E3969E1AB7E7B808C13
+7D3433BE2A988A84AB9B1C90DC71F77C946D7F5BFFB17182E93077D7DD75982D
+CD67BFA9BF90CBD9137372F13ADD569F1BC4734EBA8CEC8FBBF95FE117620042
+A277FFD62509810B877D93B9AB5ECEDDE0129EAAAD5FCAB825CCDF7DCCD249D8
+B191CFD404EDB878B3618FFE7A8C4B24B09184AF65C808F14D6EBE8E78EB5FC6
+FAEBDA1A49152F21B0BA872DB4C83B662D5911276122CBD1A655FD0EBE8932DB
+6A83BB8FC56A5114EC3508DFB68698DFE27FEDE9B500E8887FCD92E13602271F
+C6E1DF6947F2CA7784C98723067D97297E4FD855DE5C684F4D5015629F20CD6A
+35D5A1FB6E594FEA136F2ED0C8E1AFFDFA32FBDBE6A0BE80358578BF3A33EEEC
+A48BA51B6A41F0550C5532ADA7C33BA006696713E53549B1A1BD09C148E91562
+DD9CEDDD1307128492D5FA8C65D69F6F014BF0028661E3FBCDD83A8C030D7352
+7F079C4D96A1930D4AD7A16FCA9B943ECEE4F54BB6511084302212C319E9E271
+46D787D6021A4302AE70D0A14E038A75BECAD72BE7F89D1FA836944FB72B2635
+B6765853B123F412B48758D72D07B87613115F0108A7A0166083ED8DF229F372
+4DBF0674252ACEF908E3612AECCEC81B63519AFC1C4DF5CC03397DD7C6AAA4D1
+1F1DABDA0F8D0629F6C266B48D0B83D081AA8425994B1C56ED6377CF4236033D
+0FB5F58B11EE8A0063771F6D9596A461D341C61F87EFC49C89A7C5D2F622F07F
+88C6B623B0E76F9286C78137E5D122FC8892FFB48EF9492897C7D66F534850B6
+E1A834174CA5D1CECB5BDD3BD1C1616D4259DC1FD643B121F4F70456C6FA9236
+7F5387ADFAD647F8F9F360B5AA0EA5097FC9E33D6EFC1ABF1872A9F1232D24E3
+413EFD80DBF116724E4B7EAA64027FC30C5B714B7E6B4560B36378AE977FCD01
+3D0B94E86A3F24F0851B845A12DD0C7F63F6A343729B348AB7E96EEE184B5393
+2291A5944EE078D73567F938F9EF88D43D6D716659C8C7999827A0142C7C847F
+7298D2F1579EFEAB7334667218D381C43577A4F113A1C1AD6642A5688966F3B8
+8201241D9FBBFA256146711BDEBFADCAA1FCC88A72FEEF7B73856209E9C01CDC
+E9CBD331ECA61B00AF65EC0D79B2ABC5647B16E9767DA3863901C96ED0175F75
+6A57DD4C7C3FC6083BAFAB9A68C9A3D2FABBC286BEC37233625A06878014F79A
+CBF51DD003676D62F96C071F5F1ED3EFBE82ADAB34509D669A5D1F0F7F5DB8ED
+65EB6A75CAF0D2604CBE392817BBDE12FF9822DDBB4025E796E04D7F7BD784E3
+7B3123A7514B2F81E1DA10FBBAACD1F596A9834533CCB28A0FF8D91707D0AC5F
+5FF33F0016070A445C3340381801A3D077BF5371530FB16F75F760663E52AC32
+DA4EA9E5F1D55B5C704DFAED6D0C0D78790F288621006902191DA0086E2C86D4
+5E60A8222DF22C6E124D0B1C35E2879BD8A985B56A54B15840EF7B3457F3818A
+7372AFE85060518597700AFB26FEF5ED350F563949C9A200F4B1C320E180E2CF
+95CFB0AE43F50A892DB1998376F57EA85A0A23AEB7759A22C94D46E05087F985
+B78DFE1241934494FE5626690B5736EFBACC94DE2BE3F3D5E4607D22382B304B
+01C6E5C84E01A9DDF5F7C1C7F789DE397FBF3EEA025077512A48D3806723C403
+6D41DA43B56AAB9CDB68D1D108E22CA707016503AFF0934009B36061CCA6373E
+4BF27929ECB99329605E595A67211A706179834A93D96831C105B9C4720A06B4
+8184775D75AF64238955912175C96F8CAED419C78580D9E789AA7C7987A2736A
+FFB9AEA4A2AA902A4BA782743D8BBB380916932BF9518AB12E4871DAEA638772
+9DBE1E4725C85C60952E5199B43539FE9EED74FB87BB235591AF0FF08BE0F77F
+D0515B6557BB5F332AD1CC57C66DA647E2E8A02AFD2E0B934BC2F9DAA224CB20
+0D3587B1B57A5C81C650294D7B6C897AD6E663EFF9645078A16EAABB56332671
+9A01DB74A5C838BEC5EF502FEA973658B3A68F7C617BB01C2F475C9870C0DE8B
+8CB2C7A19F28F06D403E3B0479B4026ED049E3F3066671DF9E55B87908B29930
+E5EFE051B73384F02A65914663BAB0C9AF2957797B2B9C4BF0F197960FF89A67
+5EA9F02ED2CA8946626ECB6D72706E1608C41F4E00DCDC1CF1790E032F9B2B75
+AF043C1E084A195A5477B35345C4BF04A1B3A1A7E0E84C6FDD690B37C71786D3
+7200AC611BD7068C0F0DB8A1E9669FCF6EF1E38FF32A3F73B86FCCB77D1DA394
+CA24B0652C6C965F6D85336183343F981598D554574730DBD8079F5B16545180
+76E9812E34C63DBE502CDE81F1D9F2D7A13C4AFA26D40516663F3B13EBAD2AFE
+28AC4FB7253E9C229BFAC9C2BD2D7407221AEF57E3278EEBD297A8059E8867D9
+38AE216B5E1389286A770EA08FC8FB38AB35BA249B55C4332949B331BCA2220F
+37C89ABE8E4B1CD4E8C5E9361AA3C2E063DB0FA3B1B241DB216E7B91C388215F
+AB347AADD1C5D9E90851ED5F1D67E264289D5201C5954116B0FA62DEFA4FA8FF
+16032A950130BDFC40476B34E5420F69BFF9FB82CE67D90C24F77436C2914DBB
+B3E6CBCDC3FF63DA1295398EA82827C578B318CA9E2735E43144085FE03FEE29
+C9B343886848967AFCB26087BC16DAF28ABE7B3A63FAB6A90E98248999C021DC
+D8D3EF8C220169F1240C6522546EC1B3693E98BA0724144617AAA951B7F6ECCD
+4496239ADC48820395E1996CA1F09B8DC8275C30330A92276F41959B91652986
+ABB37CD0B78DA130732537B2B9AA7D2A68FA8E8F5C3BF91C13679773E30B348F
+A6E1C313341E82C90F2614B3C81C5268E7AD36119B74743D78296C27B12C6497
+331B40166C6A8E8526C0D8334FC510430CC849F87D305A3EBE499E3AE1E8C75D
+BD86EC2AB5F29039ED06EFD188CBB36A9102E582569ACD318A0086B71C00E3B4
+D7925126349DE06E10A002CB090A79133733C50F41A828B1600257B5BFE010C7
+C09C74FC87A7BFF277DDB1C0E9A8657DFCFC549095E1C66D54107193B66A9646
+DED8F672721DF93F2AF38737282D6F29D84232782F54F5CBFB77BCAF9DB30226
+3CE285D86630BB3528AFCD955FF077DF95FBE5507ED63257698980BF20CDC1AA
+D66ECDF148015B8327B0802589FDAA294CED033ED8E76B880DF11A5E15604D8F
+AB099BFE2B8B83E551E22D2E2F7521317D9264A50E6CE701C1BC6D76ACB13AB6
+352F3DCD4FFC347215FEEADEBEB5D2ED267E3F5780B5637CA38B7D621525C9DA
+4B0B2A389CBB261FC8883B0A03D48DDAF39F1B9F5AC9503324B72169AB08E9E5
+79999CD47BD73C6E14084284A48F0740188DE51BAADD4BEE530C25F4AB15F283
+913A30A94298F68F8033FEC5ACFC8BC83F0E085EF5EF69C3DFE370A89779F55B
+3A0A81FCBED91C85E63295766755DDD8AD2EA9D1E68999CDA45BA462E591AE39
+68239E7A5AFC37B67439E32C0DF224246EB65B25B30F397C515677BAA676FF06
+73D4FA6E4F7266495FB910F62100DA79FA28FB845E4ACF792BE6D6D591BFFD5D
+233E651ECF9E6EC27CB0212C10B44A03B599FD9750D8000C0CE40BE6DA8A3177
+147CAD2F1DA21F45784C1C3BB6EDC15314A1370B4F3DAC0808D66447120D06FC
+77BDE8F0C2300B63DDAEC0C3956422912C6D5380F67ED24ABF98D22C469E8F03
+C577621940D06E4BE03592A3FF7A7D324928CA0117484958B2E58BB5665660A0
+D62F044A54E9912D49B25205E794E89A259DE72323BEB8682DC2477EFB73725E
+D4B326A6002F7F6E8DDD9CBCC3204FCD4E0136A3C4AC90C87E49C55000A3B63B
+D20CDF998DA7A22B36AAEF529CD3A827526B800870A456451924F3561205C42C
+EECB01F5A6480392E26CF206BE974D795BD0E06FCC71175B183F6315FCD1DFA6
+6D427A2D02D48FE17F173E840D0C52EA0F407DFDF8687A44C6FCF92992B09342
+EB84772BE502EA832CFF38AE62A7C48C975C60574CFA8CAD56D85CDE8EA19CE5
+0B90C60AC25C85C69DEEFF0AF36A02E1A21DBA04AE19412F967C5FD5CDF95254
+94E7885F2E871A131EC66DBF33C55FAB6D5C259A97F5E2D2D6D45577C20204C8
+4F862831F8B96517F0AEBD8E973555A70AFB796997BC67002BAF52F86F8F5CB8
+D342723A4A6AB3004AE19F79CFA1F55214937BE06C6B67801CF83606EBC75ACD
+EE64E3146F1F5363C273F8D33AC995A7DA5735536A2D777DFE4E59093094CEF4
+88CA465CF3089540E3AB667FA913D6057D3106F9411EEF6284C05DC7905BEB09
+C2B536288DBB885C46C5D212D034398E8F8148951FAED66FB592CF5C729064AB
+28BDF2B5DEE02AD575B9680DF1CC27524EF616A7F753AA810B77376386A26CDE
+DAAECA0D45435AB4BD6519722A600B8CB2112C97B8506BE2D5E2D6BEFF76EA8F
+ADA30E71B155AA0A9F3F9CFCA85101591210FB069FE3690B4163D15A27BE4051
+019C826B573758E55E86881066E4AFA3414376484C766D88682609A7DEB5BF6A
+EE622C3ABA05CC5EA489BCFFA6C2FF0161D7467B32DFF568E2F47A1839C2D96A
+43AED7832FEBA224C4894B2DA2870627CAA257B98F3E3D4CFEDBBDAA6ED378ED
+956578F390445E68A0695276CD3431D3AE8EE7ABFAA7276D527F3960B558CEA0
+4411BADCBA8B94664EDE92E3A1760E5C4FF1189392B205F73B0C34899CDF5EEB
+271281B7FE66BD93F1B7CD3C5526FE59D1CEE430D4C807CD0E2498C935B3FBA1
+3184F444BC3605080D770F7229807B9AE6549D4D04EAE797CAF0723D3D78FCEA
+59D014EB63417A74A1D4B08ADBF8A9DCBC8A7033661767F664C0EEE693736D90
+F30AF5E55ADCD8E6B4BF86F76CEEC63C5F286CA6EDB32F787DFF38FD58874BB1
+86AF0593011D442D680C631CCCB23BC35651336E2D339CB683F0608EB7B473D4
+51EFA54804495B65B7FE6D0265C8F8C2AD71DB513DB688AF16BBDD14EC30D193
+75A9698ED5E8B5136858A744E2FE6982FF8F557D43D7CBA23AE25D8D7224CCD0
+3FEE074FD2841D969F6726CBFEF3FEAE8D74DDDCE82C5A21ECE9178347B3E541
+E1EE196C3DA74AE261C9B306E9AE239BDB6BDAF7867CFBAC906B9137590EA225
+2B5B4F4D0F912C8BA76C93BE618CBC5410BDF59C5D42BDF4DF825FB6B7379EB7
+8EA17D864BB43233F9080FBFDC7C783C813F8F3B6AD1DE53FADF7254983C6AE7
+200BBBC5CA508A4DD7F36F8E812507A102B899AE5075BD26030E593BA3923168
+008A950D21930383055ADC4FC9EDA61DB78CC9D076F1906691A9654127ABCD30
+5F5840B1E7B538693133B16521631620348DF325325E59B7AEFCEFF84B444575
+9A7335DE6B7BF2C2394CBF7C9581E26EE9619FBEA13FB0F803026BFA861DC2CE
+6E0386E965E2118CC6FA59314164E981C40C2B78280EE95A8D51FBBDC713DCED
+30EFEB717BF9392F71D624252C4D40A85F5281051F3260E488AB938810221805
+A01F8D9BED5FD02C48D112F13F1E09FB867204F2F80969AB807EA8AC5E2FB55D
+8D6B4005C5F71D162E3FFE8DC817A52ED0C6FFB14182F342A8CBA675204BB348
+D5065FB0D0DEDE555EBA7B97FF19F3C2F68F9C9600FF12A973ABB3E10B8F38DE
+497F08DA2360FB5F1ED1822613CB69B43486F87F17080FDE52902955
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -9338,57 +10306,400 @@ ADB33711E855A0E25582F10469F1B6C19089AF013C38F2624826A5730646
 cleartomark
 {restore}if
 %%EndFont 
-%%BeginFont: CMSL10
-%!PS-AdobeFont-1.0: CMSL10 003.002
-%%Title: CMSL10
+%%BeginFont: CMSY10
+%!PS-AdobeFont-1.0: CMSY10 003.002
+%%Title: CMSY10
 %Version: 003.002
 %%CreationDate: Mon Jul 13 16:17:00 2009
 %%Creator: David M. Jones
 %Copyright: Copyright (c) 1997, 2009 American Mathematical Society
-%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSL10.
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY10.
 % This Font Software is licensed under the SIL Open Font License, Version 1.1.
 % This license is in the accompanying file OFL.txt, and is also
 % available with a FAQ at: http://scripts.sil.org/OFL.
 %%EndComments
-FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
-/UniqueID get 5000798 eq exch/FontType get 1 eq and}{pop false}ifelse
+FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
+/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse
 {save true}{false}ifelse}{false}ifelse
 11 dict begin
 /FontType 1 def
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
-/FontName /CMSL10 def
-/FontBBox {-62 -250 1123 750 }readonly def
+/FontName /CMSY10 def
+/FontBBox {-29 -960 1116 775 }readonly def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
-/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSL10.) readonly def
-/FullName (CMSL10) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY10.) readonly def
+/FullName (CMSY10) readonly def
 /FamilyName (Computer Modern) readonly def
 /Weight (Medium) readonly def
-/ItalicAngle -9.46 def
+/ItalicAngle -14.04 def
 /isFixedPitch false def
 /UnderlinePosition -100 def
 /UnderlineThickness 50 def
 end readonly def
 /Encoding 256 array
 0 1 255 {1 index exch /.notdef put} for
+dup 0 /minus put
+dup 2 /multiply put
+dup 3 /asteriskmath put
+dup 13 /circlecopyrt put
+dup 15 /bullet put
+dup 17 /equivalence put
+dup 20 /lessequal put
+dup 21 /greaterequal put
+dup 25 /approxequal put
+dup 33 /arrowright put
+dup 50 /element put
+dup 54 /negationslash put
+dup 55 /mapsto put
+dup 77 /M put
+dup 92 /intersection put
+dup 106 /bar put
+dup 112 /radical put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A581BE543D73F1FED4
+3D08C53693138003C01E1D216B185179E1856E2A05AA6C66AABB68B7E4409021
+91AA9D8E4C5FBBDA55F1BB6BC679EABA06BE9795DB920A6343CE934B04D75DF2
+E0C30B8FD2E475FE0D66D4AA65821864C7DD6AC9939A04094EEA832EAD33DB7A
+11EE8D595FB0E543D0E80D31D584B97879B3C7B4A85CC6358A41342D70AD0B97
+C14123421FE8A7D131FB0D03900B392FDA0ABAFC25E946D2251F150EC595E857
+D17AE424DB76B431366086F377B2A0EEFD3909E3FA35E51886FC318989C1EF20
+B6F5990F1D39C22127F0A47BC8461F3AFDF87D9BDA4B6C1D1CFD7513F1E3C3D3
+93BEF764AA832316343F9FE869A720E4AA87AE76FA87A833BBC5892DE05B867F
+10FA225E233BCFA9BB51F46A6DF22ADCEACC01C3CD1F54C9AEFA25E92EFAC00D
+7E2BA427C25483BA42A199F4D2E43DFCE79A7156F7417ACF78E41FCA91E6C9EF
+B933450D851B73A6AB6AEA7EE4C710CB5C14270D1674FA334686653793FCB31B
+491E870D3C2BC654D2C1DE463EC9BA29D7371AA1078800EF93D3F66263A2EBBB
+F5723697BF7448BD0D2E301544BECF497FD475B85DFEF52AF4F8F8BE445CABE6
+019318806D10C5952157FF8F8286C1EE701545C8F60EFA854EAE66835A2046A6
+915D395F1E0366EFE0C0391583FE001FF16D82A2E2DA5F57754A2C6F69306E36
+356ECF8EFC3F1188AD6FCD2427E0580C97A5B69B4E0E09B85EEDE142F5ADD2F0
+5DE51D6DB72B127412A0D57106C19CA493048A4F815129ABE767D51715B1515D
+9C21067CB5BC88741B7298C83EAE36A866DFA87D8981F179B1C31292F56BBB64
+3C430779468AAF07C8A8B4934E1E775FE3F35186BD1FA6EE3689C1C750678AF1
+FBF9B23195A124C5C991FE670AC0C86FD39D2B07B9A319E74EFD498B45820252
+720ECDF7294F7B0B137CEB86D33BFCEB8606985A3260FD669E461C8BE94216C5
+D434FD8854F44EE66E5A289A9F9E32BC36AF645D53F96652602BAED418C8D726
+BD04A1B4617551FE4DEF54083D414F7DCE004E6BB2DC9C2EF7CE232B254BA2C5
+7DCBD36C2072ED46FF711F121A701E2284BF1B718B3164382B8F453D68FA0377
+DFE106503B8401D4DB87F5402A3AC9A442FA060B0610A9524D530C7157C26B56
+AC970FCC1D5655FFFFA39246E6420CF97D08ADFB7B05822679BD40C638DDF0E7
+A97BFE8918B611A145AC965C203F1428812F9D340AF499B3A915B22BE798594E
+0F520109FC81E452180AE45B170FF999C5FC2761C6CECD8742A5A6FC97F16743
+AD4EFCC6572A6D3F3E4E330C5CB2FF6FEA48A5B64DD3DBE943BD9918D4A18E18
+CBCF598AEFBB6AB3CD2CBC9BFD6099272F6543F3E532E0E21E614BD2880B1023
+0AC234CB705827BF016DB84E00E8C255FDEFA0101A842929540B7B4AA8A089BD
+5EFF05B72356B6BC3727817823B5CDBB1B963103000D7F2A4E2A1472FC3E614B
+5CBCB6D6D784023173DEFEBFA8F9ED87EC1A0A9EE98CA59CFC964CF943DC683F
+E9E00DA718C4425A705A69D99988EC6F152525C790912C2E46A2381A569424AB
+54DF4798BC2D7E7A361E7991641D4B756CE2A7FF4A2848927092C59C2C4B8809
+E13AB84FB6B111E680D7FB9F2FFC2C5C66B0B501E4447C2E46C10E2F6124476F
+A140C404CFE2DC9E0199BF61E035CEB481D438139A9630934E541D261FFD2906
+4CAD99E20655FA746AFB81EDBB5601F5FD6B1D6832A01D585E2C55053F6A7378
+4DAACCAC7608DBDADAAE732D66B3E7F87E79756337C1A961E53A4651BE7C77F4
+038B89C87F650C54A2A90EB7F1D525BB353F33318551EE8D84A6A83C718EA5A4
+B2AC0F7306B1E095819B87015A90CA3ED739B09061782C28CDB36BA4BD5E5308
+5CBB70414E4112193DAC4A1FA30996327230D1E021F3CD8115E12D239D93FFDC
+B645910EB29E40D830E7BAF2DB255FD7C4E776557BB38157917D993EAC245837
+A3B515147043574157B8342D829C7228CCEA843ABC89D1785A9672A5923FC4CD
+2F3FF27E6FCACF84E2D3136CA2C0FD3EF1EE7354CD04C38B5FB874553646ED2D
+CEDF7E362EADD04B18051F20A8FB0DE18E152385B9D05F98A3A7EF177824E246
+455ABE69E2F700EB78185CCFC07E3B4C6FA301112528D977367D30D0D5D59EDE
+FAEB706DDC970A9E296236C725B2B55B09B9C336B8E23CBA5FB8692D56F33B03
+16294E5FC7FAA42E96395A57CE51CA8DDD77442F142E2E576B778373FB31C81C
+16840BB422CA827E30A81829648BDF1CA36700EA32AD888D097C1FE0A05B2D9F
+483AEE40269DF09AF0D1AD3DF80C45DDC59C2A03FBB661C79B87853737C6D352
+67626B657321B16198DBD6DB98A092F17878AE4698121E1006E53D6F9B0A3BE2
+3FB68828EF854A0CDBAA68B37ABCA6AD4A3D809AAF0BAB1697A81FE59C98C472
+1E33CD70A75A22C249DD11D76C2575ED3370A25892A16D2FD569CDA70C130770
+93F493C7D47D6F9A5424A7A542BAD726BFC3AB225DCEBBE6AC4BE006F8C7C0EA
+051424B08305BF2D951AB2986AAFEA04E078CA79B399585BFF0F1ADCED02E15B
+8765EB6BF6A8E4D0901EFF2C3AA104924EAD9637A35D877E0C51A3C37DA78CD4
+8643C8CE6DCDDE3F116A6C2390F948E5371BEB5AD2E87B41C5F01FB5C196C436
+6E256A88D082E3F46E4EFFBF605B2EFF1E9D9AD5EE4DDC323A137CD9451EDEE0
+06F7D82898D71FAF2362C0FCF1F726F97F820305B7CE20728CA08C63575083A7
+84BA28B7DE2B916432475510E274C12FFD1660A717F51DACFDF0A102D85224E0
+D6DB607BB72569ABB8A7BC6A10354CBBC01732EFE35B72062DF269CB25EA3DE6
+DC603B04C90C5912D2C38D7A5ACDCDD3F6F116D884F0D8C528F69D5D47BA20DB
+0A9E585C7D8CC3C324FE8A1DF150279F7E8FB43BDB720E624E5E9918032C02CD
+8020636AE5C38DA2484B7F4B34163E0D0A561B43B80E97746DC05C871AB620EC
+C5D47101ECED4A7E25F291184BEF8B80024AA7BB456C1B83A907652B331DEA34
+754226C39C6889EBEEFDAD081E01EF8FE47751987667836FDE4C8BB8A3FD4406
+1E643B4EA37BD370734D1A2DB17C2F4B74B4ED75098B433601F75A88C9A37A05
+CCB157EF6E32023BFA33973F3E655A4D58289136996FCFA61EEABD70791B6523
+1FF5DE71AB8A17038923118A5EED8D59C4C58D246FFA9BB26472346B40C8741F
+153D19CAFF20DD2A86C6DB89154A630FB1761929FC3F0448EE2F089C1C953E02
+905BA8DE75D101A982A611056C4B237596C10951DD98BAB838B742D3CF7DE718
+617DB72E5268583223E37E029D1C8FD3F1D21690151F76B76C52C725CA135CA2
+8666553E863CE188BFC9B99AF56AC2DB5BFEBEB12FB563D00244EB89E478657A
+98AF2E1223C1ABC25A4500E8119B86EB3C26B8A2F3505A3E5610F89B7C34E278
+53FA0A54A7F46D84A35EFEC36AE660A9E3C37EE3864106702DE5AF6C45ABF64B
+888A4A51323138CE77DB935576FE6B4824B6942DF80625098CE1B5B32B234F1D
+052A9D6039697118A9D793793775D8729D8574A2E74D7109C7B7E23BC5E2E87A
+CA8E019203952A4892544E1AD3D4EDD22971611358AB230E9A2ABDF00A288501
+A01B67C42B33F6B78C39562DB50F4663B922D9BE0D8A150311AE44B83C1F129F
+07337323E9A23211EE58E16043E127C6F9574019179F5635648A011266677B56
+B5D0201A4E1470B952A1579B57AB2329CD4C615395023C653F784D36B5EE3672
+10D191F29EA508CE84763CA4CE7C2C5229E38E241255A5CABCD6C7CBAED901A2
+CA53B5E24111921CDDF83578D33D463D70EDACA0E470D8F592303FB6BFD68B4D
+3F3BE2D7C5EC8BBF10C90111A33E205F2649B56E8443F6FAA6C721C66575AE12
+D4C40F1F46CF9E9DA675AB5D5840D938780CD9E4AD6736ECBEB6A4397613586F
+849B51048AC5F9405E03E14540A5E5582F61CDCDB57EDDF95A8C6705F433EE16
+648F098C03DED8A2AD94AE3DE202D629B9422ABB031318D48F2C85F9DBFA17BE
+84708AA3B6C9F81F4508F7A5CB7B6646AB8722ECF817877B77D473F577556DAA
+2BA0ABACFCF5DEA7498C47328E873019A956FBB250FD9D8885D21D368FA70CBD
+2709D2DA44EE7A9869963EAB48789541906DE49FAE785ECE1F18A22C7E7ED204
+9768896B78E9EB7A2BD6EEC1B26083940656ECD689D92942CC8AF05CBF82AED0
+B45A7DF4DD7AA6526FB597322560B9ED3087A65B5EEF1371C328A021411BFE3B
+D9B5088B2F1AAE381FFED52D2D1E02CD0DA78683E3B06171CBE94BE9760005D7
+135893D7CC2DB097F6AC664D9594CF1C650F84DA80D2EDE04802DBA33CE3DAFE
+EB7A37E8AEFA4FDA6252FF21E8673DD98E67124D5DBC7BACF361E57077B71939
+C1D1FB923E4E35C075CD1BCBE0E80DAEA1320D55B43EAB45D9B26C366B278782
+7519FDC482D98839BF0DF2E7C3A56A1C1A3FC0E57A75CA414F6536C1FE8EB7A0
+4ADFEE3BEDA0F53BE8CF5F64230784A797133E8CD46BCCB3BF38BCE38A73CCE2
+9E073ADE792F7128231DDD1F63E6156ADB2609C200837C2E8A2D93D2A7BC9171
+050C709A71E44E32B1B03C92EB5CF1D3BAB1C38E027DC4ED9AED633D98CD7486
+3F773ACF8AE332631CF2ABE6D606607593FE862ADE31803964E3F4DC3CE3A271
+C76BDD95C87CDB3B87BC26FC7A16D567EEC62E6FF0D471B4853DB8A94D4CACF8
+843824F818083F10E88D52FC4253E8203292CB40F1414AE7E51DD7347007C342
+CD70E8E9F2D2A13D71213B841DDEAAB208AD9EA644591C15DEB084165F9DF24B
+B91D3BBEEC2E34E38EF16A0C3F00700A7BDCBBFED2EC0D09601AD6538288DB50
+3478B051B5E16B604A0341FE621A58718D960D699D3FAD284310DCF54EB13175
+19A75A539EE98E804AEA24689D3540F0F12951A3C01FACCE9A7BAF4D0DAFA946
+FF65A4D2A4C39969607272C6886F44E90ABE27CA3A1F12A29D9B32E60E8E34F0
+17C5FE43D0E69A99A922D98909B2BBCD145E59A5E7F5426B3988F73B09A525F6
+8BD4915663C1301323180E760BE81CB874B020FDA3AE63340E4261E4F3E4949B
+CC0966BDC4426190BE9F5D77F76A72AD925662E5FE1CEF9CCAB68F0BD33DA003
+F11EB91AC4502FBD6AE48DA0F9D07C35B96B103E379B8A83A05FE728F1716194
+1F650F75BEBADB2E3810388F3E2DC7B19F1BA9E32925F2FD9F19F4E8701F3E4E
+4069125D7C401144740691E7A460021A47B1E27997FC1DDABEC5BD0EE0B20194
+2D579C7D6727AA124083242BDA46D8E116E2751C5F298851A62B60AEBE82A929
+9B9F2492BA35690D1EFD16215B8EF14E7A3803B93C28FA41D971B05B6AF3B593
+E74AD1E68A5FCE12A86E63B78BFEA87D3949FD164F12277A4688BE96356791CB
+8671C49365608F3EDECC109321AF92B4C29CAF073DA3A7D73E913D0D83FAC5EB
+BD884D4C686056404DAAAD6F82F94F803FA1FB0DD8908D1DF08FB87A8BB83027
+04DE0CBB1C6FEB6B517FBD7CF065120079E608CE41893C2BC96A347826CCDFD5
+C69E161217F2127A59F1A6F22037641613F191F22D5B4CDCBCC2EE5615623404
+ABA7BE6C5FE475481615B2AC1A2412E54688DD21E44CC9AF5F16E634AFCA389C
+4D740B7B51BB141BFAD1080E7C726C1606A28ED492E6BDE9F800EFACD1513909
+84E98CEB6A0B7A2A6F3E1D1DCC3B2552795E0932673E59ECC56DDD37A1D52BA6
+C3F0E905978AB568941A163F4CE3AAB5C5B16F86016EC47BA6F3F7AAAA77C3B6
+09C8C3ABDB6D514A76ECD37C37AA88B5860630B3406B494F7725975596F84777
+D9CF48686EC9C5DBCC1D78513F591C7C10AB9D153B3D41426B7BF668B0D04503
+56BCB686258462C1DC61095724B9F3312316262FD7C1AEC6E54DE7E5A7BD8EFF
+035299B8FD8A4A7B0F51404F4A760F4D8B4C0FB7A32FA4B2383AB6E9C78FDEDB
+FE6A5788D38A6701B123630C2A6D820A684166FBBC83DB17069494FBD411B333
+CB37E2491C5BD035A33867A6D3A3D420CC31ACF43AA07182CAAE67E40EC63663
+B678F71D4C6E0EC3A0AAF904CD3AA66E0DE5E3CDE049E94249B39A1C06E3CE9A
+F974B2484BB2CDA14282B9511E505B3C89F9C802218AE40D1A7541335C5736DD
+CD565D4B9F4CC78F3A393737EDB4FBD0DA299E21CCFEBA5478EEF013F0552A8B
+0BB11FF46CCDB784E8BDCF730A16363E66572049E42C695886EAB42A9AD9094C
+B635DF4B5B9BD9B9AE8455DFA3EEFC77653190F9A8B1E93B7281C2A21EA7DDA9
+33484745BDF7E3DD63C7AC66C286C9A5A698A5E4D7A91710B7FF943FB23609B6
+4B442F83CB795788FAB5E9CF3F75D5487DA26170E4561C7941C910B088C3B86D
+F844B0F340CF82786A3FCF347048463EBD2006281A816627065DDA6CD4D3AC5E
+2024BC96C7D896381BBB567951E7A1F29D4E95351298B000D29E5F3D0448CB5A
+CFDAE1BADE9403B90371C3A07D208948AFA022A69C519434B6813086ADF518D5
+88E0B92072A44BA1B3EBB630A13B7AB90992E85B6D67361C8D96F3E0D826FF37
+17B67E4B1EB7BADFD98D7F4FD17BECE740ADF13C141EBF0A91CB105DABB32FE0
+55086D56A0D358841D15FD349E6B95512E4EDF4C430216FF85C2ABE995E4B40A
+A6044CC8820AD885C07E052B3F91C2E9A1D163BFFD210F7BE95B923E2500DB50
+2075106DB541C267BD450B25B670CE80BCD068D4DBFF2D82634175B61FBD3BC3
+406131F44C7D6F18D375D1F2270829DDF29DC14DBB58A30AC193245D18DE91F8
+AB88AB548D8138605BB5A50073295534E314366E26665AE70482B890E4101D6B
+60E4F3B37ABCA1346DAAE8FDB8DD9C832EFF3E73BA470E2BACE7B8515CB43388
+C27AF99FF9322175CF8D4947E6B3846AFF5163E972156847F58A66660EC8A3A6
+5FB47C9F637B4CBB4C73B6A080B0CF6FD1E9665E92032540570FFCC747C67C50
+822811AADC404BC7ECD1673E8AA6C3A2F1D82F39430B58C29145E2F1B679C46E
+94EDC711883F1E4EA84117A54757E8895A40401A26E1437B39A2F65CAADD6E02
+D71FA8AF7453668DC613F326A3344F74AD7AC67569AF399385500ABDA5EDD3BA
+343CC5EDD4B558467626850E752B9959FEF1454E53E7A3DCBC2255AD8F6AB4FE
+894455118A61C58840CB68A925ACCAD75CEACE863D806916228F0614191A1CD5
+DC9BAE256018615AA3725834519449B0A88B4F396654E74099C007930ADB1327
+DD119BF799FE3B0B223E1EDA04FE2DA7A1C879143E1C33B6C6344F4BA033AD6F
+8E88C33DEF1977796B454BAB2494C930F492A518E8198C708A75FFEF8C49C324
+A718AB59B889DED521229E741FFE53F98EBE88B0405AD523254FD3FA4BBE96DA
+DA1C27C1C979A0DD4E61C3B1F4C4DE01E42F1C4435EECFC02D97994BC8AF5270
+E7CB1458D76ED0229C5FFB4A23B8716018F9050970895D51722CDE8F2EA3D947
+DFF374D84915D5C5D16463A6FFCD079D1ED416C4347BF831FF0C4ADFB61295DC
+4D5785BB0852BF472CFC97EC174491CAF961AB90629F055E75DAA6D9898E8653
+5BCF379816CAE46FEA62E7BE8E9B953466E51828172C4DBD0E1BBAD1CE28B5B1
+02B3E36403BE80B49A47446A6677FCED438F01D60EB10F478C89528FA337D0D8
+88D3FC123C076507ACDAF783A9A6E24ED73BF24B6E0F11C13E532DE5F70B1491
+307A6D9A2F2BA5099C8A07762E70BDAA74BA5E2BAB260C1352107EB8A96523D9
+4BA3082B99772D585329AB8645C3BBD11D72BA01F95CCF11C6DEBFDAAF7F5C4D
+795F99DAE6A8D59462D759001BBEBB59AB0C322EFE02904D82B424649C2FA593
+0E23281DECC5AA908E54244566055D418602EEDBE78843300158908F77C0AC75
+9562065826D34C38C598D8626BFED7CB672F132E065E2C27932F709935988376
+94901EBAEAEC410E2B36575A71EBB8954C3A90EEC264E6115950FC91D0D54999
+323D8B4FF8129A8EEC3900A00CCB026E6943BE105BF5F504AB332FC17E568681
+F423D1125A596766BE58ADC658888DB39BA74F67CE0E26C392220832FB036E93
+7587E96684BFB78BD035F54AF71B2408241AAF548F996AD440155624B3EDDC79
+2102EE58E1E27EAA0675F1F13297A4CAF514CB319E58D424A820B8F48984987C
+4424C28F44FC1608E4E7A45F6643546C6A2D6949DD91466C76EFD7BDD088087D
+333F158BC042459F777F734BB4736D30D47D9BC340BD58222BBB01ECADEB4158
+A5FBAA142A16B0E03E8E36F32966249B7FE8213FA28310A79B0754079E048CB3
+74CA849AA6CF97AB43E499E9F04B5BE61B02FF8AB9472960615F5E30A79F2EF4
+96D42E3DB0EEFD8F2C7AD951C8D3DBF9A4BBBD2CAFEA8E79314C9B7135AB9C2D
+CC6EADA8B839E27DA7393EAA6CBC7B3395F03E632BBFE84A6B00F6C04186EC6A
+008398ABAB4A9492FBC3C1B08517568D9F93B48515F023D5F17135B50BCB88D4
+CB28522311A844902FB522381CDE923D73EC4553EF14AEC42EA5155C733E67F9
+FDC5307117FFB1B712F0B845A573982B3BF52E7BC19BB4772263DB9C7C6BFAC2
+97DD905BF6D2A29F0A1583852AA00D386FD31D8556D0ED43FB0F9C8A65B3F9BA
+D2E284EEB3C6764368D59D4A64A6FCF0A8FEA3E31075E9FAA95A4D9D030C0AE6
+59419122D9F2D5B7A26CE85E314978814FA21BAEFD950836E82917075CFBAB77
+02495A5D8D91C4A22FBDAE3E263AB7B455EF5D58F1EF5C64AB57CF8CD4CA4FEC
+830F05567089A36FC889D1EFE87C8CB6EADD87AF9B42DE8F3DE942737B7E7F76
+8C918DAF9B8DD62D5C2E5EA9A16D41D2FC9CD7FD725EB85FDBF045FAC2084104
+3E7AA80AFBE57FE5AC53852CE6F82442A0323EC2D622FC090123891102FEDAE2
+4BA6B332E584234DB01E21386DDB9D2AF93104596C42FC36B65F58111BACFC02
+DE880CC8D1D2996E66F27155DADFD26DAA1C801E4A98A996E1A9EFE9BEC5BD02
+0D92351A31BEEF1677AFA3C7A621BC84001A482702E74FF82BAED3A50FFA2101
+14B296F2287B3FBFE4E9E657BCB1BA6EF9ACBAAA9DCF855800D2ABA00F40ABFF
+B6EA7C4DD38A6160B3384ED400CD4584AA5A0412BA786D488B1600F4BA2E63AF
+B8F4EE72F16F4A4A4DDB35BB3B2A4B51322F51FDECD5DF7962F77C9C2A5DCBAD
+BB5271DA9AE0410D133DE218AC21B50E88E215887BD40D954674127E79B389CD
+0F197E3B940F020E4C03C79971E63A5711F8392E148B522B1965B393BB20290F
+901ADA29FE4CDEC74CFF1F9F9990A2A6951A74B6582D8793A0C6195980C3BA3B
+542CFB677F1EDFFB70E37AF3D4701114D4DE5B93C4BCCA01C6CB2E58C1D9D05F
+C98E9EB9EAA0649374C55CF3176ED808E8E699816EDB8B132F2373335350BA50
+4FA49F53FBA7FCAEA7A3412C474B43096729B259058E27E45AA8F76E1C49CA27
+60BCA82E7B53CE53E35D8232904CEC76EE4F654D6047AF881FDD1E4384A874F3
+79BE810EFE76B2B0F087D6455AAFC6C286D3ABF8EF4560562E40D64CB65D95DD
+AB1EAC1DC893CA8252C3FA340DAE33F430637BF747379353359DFBAD43D1D24E
+B6902F13E29F01C3986C664D26BE5324239020AEAB48E91C4AC35A1A9834D487
+C30ABCE539253E1A2ACAB4D17AF82FCDD374CDFD059C494C3ED423B2ABE6FBB4
+119B6EECF7F7B0C53F8780D8F5A228F2C4EEF545CFB6B3AE63221565EF72FF34
+E0E9E384F98D97F0FA52522A7E5AFC89D91E899A1FF67EE3C85BF0ED84A8B806
+B216DE6ECA607131C21D2593B5776EE7E860573B6416D5C22CFA3D32C667E9A9
+D12DA2397066706F372668EDA36CA18E2030628A16F87562CDB3B8F47BFA3426
+A265041C5FB9572589570CDE4AA56C3D6C93AE99FDC15915A1DB9CE1C25DF2BE
+84DB52F975A8A0B63247D52CD00364C0F76A781EE0568C7A02BEF7560B1024C5
+510D732725C02F78627B73EB1284F0EEBB5A83FDE66A7AC505A43498613A1865
+DBA518AB906DD8E092FA1347EB4FD04587A5479435E33CD9AB0D7EE9C9298893
+77EFE73D2E8D21003757E76141533D0BAE9191ACF79CCBC8B30FFA65A8E2525E
+41064F08830F67907EA3DC989616DE2679642755C93E0B4C2A002D7965B3A14B
+60214F565EA005E588A119FD8A46A74DE8DBB80B4085820B11FF66119CB8D10F
+6155E5208D976A95B4246754751C2BF50E3056322CB4E04A47E57797E663CF87
+BE84CA2E7B2FFF75A1ECAF07D30FEFFB59568D17A8AA1B832C3A7A7E14D41B5C
+8BC6A84F6DE24BFC4895628691E7C54BF45614448D4C0B16220E5704CBEEF969
+AC7863A66C156297660FB1E628412103ADABB7EDCCE05DEC0BAC2497F65BB10E
+6D1D2752E3B4B76C640C43F5923329E4BC3937D9FE8AD43AFD7ECE9EA975294D
+4EA1E7A247A269D51E9E125CE723A64DEB0408334ABD42F9449B067740481640
+7276B2F209D4359C6602088F5739753146C086EC592B99FAE85E0563DBA8CBA6
+5E527E64B9FA87B6025DFC34AF7AAB6B37B6DF511B949C286DF3E0C8937B3539
+17B596CCA12B7A9C47669A0B45530E5E204E73D59A5051851736A0D99EE0F69C
+5DE5A5322D0290C6F31F4FE1B0345BDF40CD7761524DF74EAE0F2CD1A7BA462D
+7B6036A054A557DA2639EC90DF8C39FEA70AE5C9AD651EDD66F06CE700344FC3
+2EF2700743080263B55822D5E1C9C03D2475AA4F38A061639E5D5E890E2F81D7
+804D6D7B4A146B2AF334AD5EE6A7A1A25607C511F8D490F93C25EE3E4F62C9D6
+1E4B5E339A31D6795031B69DCC746EF5D379FDB8929F3664558D89040426864F
+77EF00134D040E0529E63B66EBECDD7BC6AD9B9A7AA90842B366534E2C8F58DE
+401128132BC3A2D53B5CCE49B4ABE2BA92D7ABCAE34959C2FFD3BEAF88ED7157
+A56675922B551CBDE22EABEFAA31A9335EC1CFF97BF69601C8A5D0A8E25C9375
+BF9A96F8351DCCBD433FC2DBB0225EA0A39AC49F17879C3362F5497A07A0BC24
+8DFA969E570397F728313D2B1C9BCAB456A64D66596E7FEDBA7549C544830DEE
+241BD229669BEC39008D4561A3061881EA7F245C7807CBE97A367AA1A0D554E0
+EA8947A8033F0B3E9E750C97661B8C0E4693F7A50E0CB8DAAA8FC2ACF8B1C1E2
+8B4B14FFFF29ADC8BBC22B7FBA8536C90825E9449DD1BA7DE9ABEAD43ACFC350
+22ADB5048AD2E1746EA5E75F0E7018B53F50AB1C572E81D4DE0685A3F46AC585
+D53CB097E47DECAB3295A5DC6E1654DCF960A415358248ECF9893042350E8125
+7929925703744DAEFCC7CC08CF368E8EDFB448AA91569EEB532E01EB3872177A
+88DB9979F63E7E5B3DC07FFAB341F23E9F08594FB724BE504A8BDE50B31257F5
+30983FCBF0F9683DDB87BFFBE5C2BC275AE96DCCE8FB0370B64E04821637232E
+3D4EF1F3A5545F54CC98B09C107C7310C2D09486BAC058CE05726B05D612C2C7
+1F39650E63B0E5388719DF8003026AFD8C06680B25DDB5C0A13063F2D7FAA82E
+E6322320BE990DE7A0ADF2548BA6C42E6E159F178FB9479CA99DB2EDDB94B67C
+40C630AEAD2FBDE76CEA14669FB3
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont 
+%%BeginFont: CMR10
+%!PS-AdobeFont-1.0: CMR10 003.002
+%%Title: CMR10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
+/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR10 def
+/FontBBox {-40 -250 1009 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR10.) readonly def
+/FullName (CMR10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /Gamma put
 dup 11 /ff put
 dup 12 /fi put
 dup 13 /fl put
 dup 14 /ffi put
+dup 22 /macron put
+dup 24 /cedilla put
+dup 33 /exclam put
+dup 34 /quotedblright put
+dup 36 /dollar put
+dup 37 /percent put
+dup 38 /ampersand put
+dup 39 /quoteright put
 dup 40 /parenleft put
 dup 41 /parenright put
+dup 42 /asterisk put
+dup 43 /plus put
+dup 44 /comma put
 dup 45 /hyphen put
+dup 46 /period put
 dup 47 /slash put
 dup 48 /zero put
 dup 49 /one put
 dup 50 /two put
 dup 51 /three put
 dup 52 /four put
+dup 53 /five put
 dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
 dup 57 /nine put
 dup 58 /colon put
+dup 59 /semicolon put
 dup 61 /equal put
+dup 63 /question put
 dup 64 /at put
 dup 65 /A put
 dup 66 /B put
@@ -9399,6 +10710,8 @@ dup 70 /F put
 dup 71 /G put
 dup 72 /H put
 dup 73 /I put
+dup 74 /J put
+dup 75 /K put
 dup 76 /L put
 dup 77 /M put
 dup 78 /N put
@@ -9413,1111 +10726,11 @@ dup 86 /V put
 dup 87 /W put
 dup 88 /X put
 dup 89 /Y put
+dup 90 /Z put
 dup 91 /bracketleft put
+dup 92 /quotedblleft put
 dup 93 /bracketright put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 106 /j put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
-5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
-8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
-EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
-02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
-46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
-4B60D020D325E4C2450F3BCF59223103D20DB6943DE1BA6FC8D4362C3CE32E0D
-DCE118A7394CB72B56624142B74A3863C1D054C7CB14F89CBAFF08A4162FC384
-7FEDA760DD8E09028C461D7C8C765390E13667DD233EA2E20063634941F668C0
-C14657504A30C0C298F341B0EC9D1247E084CC760B7D4F27874744CDC5D76814
-25E2367955EA15B0B5CD2C4A0B21F3653FCC70D32D6AC6E28FB470EB246D6ED5
-7872201EF784EE43930DC4801FC99043C93D789F5ED9A09946EC104C430B5581
-299CB76590919D5538B16837F966CF6B213D6E40238F55B4E0F715DBD2A8B8B8
-80A4B633D128EB01BB783569E827F83AF61665C0510C7EA8E6FC89A30B0BC0EB
-5A53E5E67EF62D8855F6606E421BD351916549C569C7368AAFB714E22A023584
-8B1D6B52FC6F635E44058690002C6BA02CEC21C54CC8875B408A8BB84F445894
-5D6B3E4841CA20AF852A660FE9C832F773691DC6F7197FF3DEAEE97418A5ED2F
-F2AE65300416227CD3BB03C29003C770CD7D2A7A2E4C1DCA193651C2CDDBF93B
-966938788694BFB562AB0010268955FC3555E5984CCAB0A9B7590C77C9BC713E
-A29E5BD7193A4E971D1752DDD0F0AA4648E7E87BBCE66A1E836C715C408B07A5
-9EB56BEFD4596706CF839BA4CFA90CAD4038C1E006B51913279A2C31FBEE5BD4
-A7D74F9103CE6124F5B439CB860987DF44FE17EF88EF1BF62C67060D25696BCD
-94ADF08F04E349CEBDF9D3389D870D94CC05E393B3F4362A13A6A672EE5E8F5A
-DFE7046AFE3EBAEA58FFEBA4A47BF61F92E2003756DA643CCF2C9DFCCAB62669
-E3C2A18D690B64D907F50BCA155A85E47C3A6954C6FF7ACA36D8DFCE777B7929
-5F5D5F787B9C247ABF13D6D7B4A8F06BA25CCB342F8A5071325CDA86AD71BA23
-8A9695C7D1D50D0AAC267AB7CDBA7AAF46A264B7B081B7E79AD937FEE4969FD5
-155A99E652461EFFB4BD010E5885631E2B2497D6B8C43CE77D7D47FE201DD46E
-4482FFDCE150A1183C22C004A0AF0E1F42AA6804E038E1DFC8B0A3CE26B52038
-44D2E7F759DA5C252489E5525963D68BC27C82247BEB18818C7D4CF0BC5CC97D
-8C701034B8DF798DD4CE36C3F8B1FD40B2DA14EA75583852875031AF8C909EE0
-04495FDCD04B05A5EFEBA56A8CAC1F57F1B8AB91FB25C81CD51EE69D6E0F52CC
-A0E12CF7E3187D67DF71A599FFD895FAA7BF80E2E6B96592BE77AE96905BAF0F
-F547355A36C443797DDA7C414AA606CF9153E03450B77D1BA4088D739DF55F07
-111B9E11AF37F45B6EDE6D7AC126E05886A57C83886DA87761BE600DEECD1344
-8A82BD652BE7ABFE6A0F50ED7C6F4EE12CDFD80CA7A5518692F267C51C3FE76C
-567BB8DDBE09A2AF901F79AD02B435287CB8057B3D5EE6655071F67B00438728
-C4C3EBD648BAF650993AFE5E2B29074A99ED0FB725D9B8CE8B0292B08A280214
-C3AF252BEEAD30C88F72E322FAC3E9D78A1038F5DFC41F7BF1AE3744A0677094
-51B77C2D630B67853FE5E975A395C06A4D4DA744040B272C2B88D8B7ED3A2C01
-66F503C9DFD3C7DDAC865900D2A4F2CDF517F449851DB1963468D0266D7A3E58
-9F6B2A1843E6444274F16A9930302DACD8D2BC4588765099A86BCCD8A31DF0E6
-2853114DFF2D19F812F19AE6C2E419D7AC1BC024D1195074FD0C6717BFB389A4
-4D5428E7BB2E4F9E9FDEDED7BDCBDD3460805AEA0B5F6460C2FDF19273CE5BA7
-5D3AAE0DB94C6AFA8339646191C23B0149E7CBF136FC4C844E025A38935DF256
-0A0A6466A45EE8B9B23B6A055856FB084F87C73BA28F1883E3B184CD813C72F9
-233B78CA4E125ABD26F29B92CD9DF39D6FDC2A217E2B6B45D9B0A4D536790A5D
-BC0903069565A442FA7466414D948AC432C6B75D8D0E1DBB217CA3DC38A52DEF
-62E9D5AE9E753956C13819D93148C7683BE4F71B80BC066D8C19FC807FB1C086
-B49215DCF56A91A42089F0D063B9981925691F7DDE3237403AC714F5CC3ACA88
-DB2F1DD205578C00472FD70C8BA4F752E3923ACF3164D442A6B639902ED060D0
-C5777BC20F9A3BDA60FA3BC986C38136FBD2E8F910E32EF36377C9CC187F4AFA
-CCEC423DB925B378522B748BDF12D523804CABA83CB5A7ED69FAB9AAB75EE8FC
-38D9866E3754C4E2F2B9AEFA804044D878DED0E114EA0E9682FCF38F6628E63D
-FE1C1B5615E54FAE8684566EDC4B616F76EEFD6207E0386F06D3BFFA26425F24
-303CC7C8A8D7021E7D09B202616988287838C3DBCE3179B4FB5C726E603A47F2
-8248CB508F327D1291CF3F08F7C88298DC2D0F778D24304EFCF6E074182BF5B1
-8E6551811FD6991971692108E289B61053D6DCBA2925B3903E8916EBD09D97A2
-C6D08E89DE4C0CDF7185E1E00DF456B249F0BFC686E04FDAAD2772DC2C39DD53
-9C23A41471267F53A87E5C2B8CBCDB66CE0B9844BC506428E6150B48D2FA6363
-4FDB2CEDFBAE0B7DBCE4D83E29B2955F8966272CB865EDB360C8A8C19EC62A29
-03066483E4083524A1E8D80FE3867BC1AA91753C26ACBE8489AB0E3330206212
-93E07ED473DBF457EB8489E66FB4B8ED8A9EA8911CF9308CFE3E6D6F36810EE8
-91CCB11BD548617B2C683C354452B9229E7C9E68828BBEC324420DF7C188CCE0
-FBB514547553A7E9B38AC265783891F42DA472388569C8E7594F7E8810895A27
-06E456902A8D9F65CA808F1FD475D011C4572F8A654BA01D67942226A663D179
-95149FFF41A9F55AE84EEB9A6A39C017D7E4FD6EFEEE7FF3CE847CDB064A4954
-9DCD273B810E0F259501BA4003A3EC1ABA6E13D24C0B57FF82D6DF077833B6A2
-7EA54801BA81DB961C261689C0887FAD83771E55D3D137AFBB21779397E11972
-6C6CA922F45AFA5C0526863A5AD8B9C0775CCBA17FFD37A44CED4710884DBC31
-5C9D3F5441595B86CF7CA2EEE42AE87896E9E60EBF5F35C2B7FDBF9A9CDAE262
-3F48396F0F741E9DDF1D4FEF75E68AFB020D06CC29B3A7B2ED819D1AABC12B91
-CA2A65F1AFDDA2F3FB322E0268DBBA024663E49EFF076455338FE31A16B04EC1
-797EAB0B49AFFB906A0690A1E8E2F5314773E1CCFFF43E6FB3875AC907F0C5D0
-DCB9BCC127014D472463560CA0CB1C2CE614D94177C7A52A5B089316689C8112
-CA57E35D716D956DBF9013B1E5B9626456B1433C8C15FA906458F957133B9E19
-8D46DC3AC015F7602538C2AE3927C6DDBACF38E59220C2F5AF36B68DE9117C51
-04CF7DF32B1AF55B87D1D8A5F4BCFEC66F63B32B6548DEDA3AAB06C5310E4757
-78AFF947DA22809B360FE535506A554DDDE5A6F2411246653710ECE5CD3185BE
-730520A766C47E1ED01890059882BE1432586864E1A86A7F586438C8DD35C00F
-021A741ED47E0F16DB6070ED0C50038632CA4AC2975578A8372A080CC0447C79
-CEABDF2BCD5E78564247B0F0025F556DA8FB62125227849EACFB724A4AE3EF57
-90C07A5B27D2E59425F56BF8AD84C5F5310FEB1BC73D536339FC2E6A5BE2DAFD
-97FC835E0D52F680F80ACA37DB498AACF152B9B44626CD89E3302C3EE1623EE0
-F998FA78305960AAB9F483F731F5F67A8C963C23DB8E48FB804EF8B86FAFE7F9
-4C09641915FA7E3930AC922682313408BC1607C76751CEEAFD660206A39CF394
-40ABE2A313AB7D5FD6444E219DC5C26734D322BA268D330AC17959A390D6C8E7
-3A155095BDD66516DAD5D65519A7FB871ECDA77061EFB21F359158B4470EF79B
-362C35C06B85C9A9505C8361939C6AC013F2CFE8EEF46FD8CB4452AAB3EF1FA7
-DC066557BADC2ADDDF7DDC2A0E1DD4A357E27A2073427EACF9B9035DA5272136
-7DF37E26D96ED4B2ACD60596E039BCB15E259C72FEB3344E3EEE3D4F17DF4233
-04C1416BCADE80BD483DD8C9AF979E1C7D50C4CF015870703F88B92C4FE46AB8
-DE6717B55C460C805B391B84333097E116F4A51F631FAFAB34CFC925BEE8B72B
-C9FD5F5A79D8F2295FBFAE649DC6AB47794AC7D73431FFE5BE992F2B5AC67049
-B5208251C0E442385A9FACF25E3A98D7F5D4C2A1ABDC600AABE84769CA83350F
-9B87F71CEAD3600E02FF9AC03C1B5C21C84F911511A0CF0111BAC7605EE31229
-3C526A79D943D92E1CC3C38ABE82D560CFD4172F318030852A5FCC0534B8B3FE
-D7365987C8B48A072907B26CDC2108130A33233E8E0BB5FDF14FB55098A10EA2
-B51AD9EFB119F82B08D256D396D3263FBD9DBF172D43A90ACD1A31F3E89E8571
-74BE98B9560E2CD661A2F93C69FEA3FF26B00772AE2C2C24B98D3D122EA2AA8A
-44652CCDF4EF4F01CA7D62A976E23E8A86291F43BFAF38FD9C325E70F9C36CB5
-A181DAD30156E98339E6A0498D3420B7BB3B4E651A9090D4A17604AE386273A8
-3D4AE8CC18345E6E19DF06BA848F203F74B161D6A8882991CBA7385F308696A1
-BEEB0130D938A764B98A2001A38489B1334025EA848CA44A116D64926D460D64
-01159E77EA7ED9ECE7BA77635BE564A4ED89315BDFF54ACE6AA1A26591D13CD4
-6D6425CA7933769B842192858D10998509396829263290A3A7CFEBBDA3EE6CDD
-DF1E492AECDFF7941B53573F01F623CA0A5ECC9D05A3D0954F7AE8CE94AC3B2A
-CD4E27519B2E16F033EB732AA024BBAF74626DB55DC74B1FDDB07FAE98B4AC5C
-683CFD8744F361838D343B657EBF52DEEE7AEA7565C5BEEFE455DDDBC4DCCA7D
-87D6D769C5ECCF14118A14A85A86865777C8E28F953160D5E82844AE54D541DF
-550D5F1519E183E0C42BE88F0458CE8087F2CD4B1B49A8E9E3D127C4A4CB74A6
-2E73BF4CC317781D03FF04BC36AC0E4AF99E2ACAD20F6F8029DE8A035DAB40DB
-17D237850BCDD05931FF4B0FE2D0B79EC5A88FE0236271CCB075BD194AA25AFB
-3FB93A5206F61A14602E4EB6F1C31C654527CE0C02D04314DF9AFD710D0EBB9E
-F8721B97F5FB18E27507E1F800B5509A58A1A8296C72B7B73F99B6CFE42E9C2F
-B63B3555475E562672645CD374BCDE937A9B05A157FB3E74C8297507253E957B
-1A9DC421946734CEFA3D5EE357DAC7E9DE17A5BDDEF6B2D2A740BC58128FC514
-61154664412BA1C05209EC992A77B7CA45AB7C0EEBF590A5B5652866008CDEF7
-124A3003AE6A7CF9DF3C72750CBD281358CD2FF25B162B78CBB971DB3477F8D2
-ECA3EE9CBC90323B2C236E375337EA0848CD7CB5781A2B0A42DE7E4D99DB2746
-0B26796CEE129D23C76794B7CE21C13C7D4A998B752C8CF43A4821B736EBE246
-D2A2BD7BA3351FBCD1B0A501EC1EAABE60D06DA2FE39BE1F0AD629769FDDC933
-F9D02F9686EC8C2D7455C26AF4DD3F6860B2289E3A30E1C254AD17D731CB73B2
-BF4DFE90CAEECE3ED0CD3FB4C8F4C7BE1C056AB4E9B95781A8968E3CC1010003
-75DFBC4AB9F6B27C5A9AD88D94441A8ADF09EB275E5F0E5E6F3BFEA0FA8C308A
-8593ABA0645ECA8FDC3F0E264B35D4B0DDB86B93CD8A047FC409E18196B501C3
-B003622999C47BAC04FD1ABD8AD359C977766E9643EF3BD6385306B08EE3E13E
-7DA5A06AE33D17A3D574C6390DB6E9429754B210F0C349C359559C7EAA2350BD
-F61D4D8A92B1AF697BC620FA0351E67E0D9F41A95A47EE0BF210C2C48691901F
-F905F65693DCB85BE412F097480F6A7266AE0A928729DA0F691CBFFF3B276EA7
-322BCD2206D96E3DAFDFB992CA8F2955F0E8B882729DFF840569D12E4DA1775E
-523AA734552AAB6F2F16B89B39F1A3FF0E07EA08D13E612F201716C67F327017
-6C041760DA30374434808273062C1FFA2C47B3FB578807BC26537F542040FF77
-66C995EF3E8B08B09FCD3EE89C30F157158A739606D2CEAA26694A4F1CEA6633
-B54933141CB85C60AB262E2D4E824A3B85C2BEF810DD774F296AB37D0BAE7182
-5648CD18556ACB124246A75474B232D712C2358908B5D9A76F82C626BFDE01A1
-093B8FA6AA0B32F2CDEF737B28BC0448FF816DDB5812131DA0DD5979D77C3838
-B978CC3F6778A4BFCE9A7087EFB19749285AE4C92B99A6649DA349A2E0889D72
-6D4FC664522F06C8C4D86D30BA43ED4E42211217D01636A4E17E2A132D26F394
-EC34EA12D84594AED9C6CDBBC0908860F39B240FA7D7B3003DB10322498691CF
-A294C0FC7ACC0BAD1EED3E9D60AAE3F7429695892D1A21CEBF062C6129B33966
-8B2EF6E932F9891DE6028B81C5E9B23278D35B7F0D83989BCBA25E20E9D503DE
-144DC485F09A4EFA1268AC5E4B551C5B2F1D51E9B9B9C0FEE585204F869D0BE0
-7287D7570A12940A47C1F51AC6134F03B415C30E147C49F89228855D093EE55F
-172711F37776E97A99CC4B36E2F10713E36FB279FD3FA5A0EB9F3938F42E2BB9
-254EB8F0C0F30391735019E02BFDA21D9813C6A22279B898EAF01AA892B14DC6
-5912B9275167AB46EBC420836CC1A5F38A4EB47C039A7BCA62BC3FCE4199FC71
-011DD6E5FFA0F3D7F04AC02AF91B9249B9F993AE346572329DA852115BEF8460
-B94690E790003586F473F37EAB5AC2922F5F663EE2C3C0C336A8DB71650631AC
-0A923A389AC911CB215EC2EC7D50CF8AEFD59EBFFA53A9F1FFB7E6215F17093E
-3975F186FE23BB5FA5474C11408FABD223E1E6F62035B5A5C1AEFD8899F00FFB
-E729C2D5FD551E80716CEA4E8281660286A802AAE8D5834F37F2EAC46297E57E
-993B09251DD7789D3467417E393B7DEABD06676B96241B0E43ED1A1A9FC3B12E
-0D34B2B0792B79AA648FE9450C3B209FB6D7D91F50C52A5DAB0BC81A8B698BD9
-18946EFF691912D7348D48FE68CD876FC6F71F81165D0C3272DA1A992308D9E0
-ED6D0A4DAD679AF495F62B78D462B463BD4A40931172290C615B3B3B6B47E45F
-CEBB85E0A6AB6832067CA6D403C239530D07F199788AA4DD52553836851C5228
-1072406F6D7323A334E7A7FCA588897C4FBA6D4F7DEB65525EFB74E539C988C3
-A685A98752F7198E77E456A545F0D23A1BEF81EF58B02D289CF980A3F17BEC8A
-6F83DD90C4A917EB0E5E2B444A608E2E9D2FF80620E16AC1D7775C0A10C1299B
-BEE0E1AB24C50647E5CA1DA65CFF3B2C295F0644CA7826E1DC6FADEA93D66A20
-DE852F20AD224D28DB900519EB1569837139C833F24B799F7EBE3FDC14235323
-1D0BCD4991C861F38DF413A5A5588B73AEC3BBFDB885CE17BB3E97B4E6A79761
-93EC8418C2BC4725CD61B5E30C07352F647C3FD50083878C13CFAC241DDCB082
-E53703D182068727F9EB6FACEC25F6D901D7309ED7370867E34E267519E22D62
-4FC7093448BD0D6B1C43D318A3E14C92032325C132AE0FF7ED707E1FA4A955FB
-F5224BE0045CB14ECC321D0F333FE24EEFCC504F7C756451D7693C3E6CA87526
-4912E1B6DB935BDE76FBFAFCA4ED473F1D2618812CFF25A6859C626A216603C1
-361BE3E071FCFEC2D4BF2FEBDE07DBD56A1BFF8303901168FA06488BA6B76F36
-95B0A90D7724E9ADB567C2ADC65CF3482CF47FD1D16F70AA19A97D0F9EFC611C
-AEA5E1ACCDA7FB2DF05E9480936281484BC329F0B771775E73F7FD72FE3F45F0
-50ADBD03932B38F37A8F0A66B2F739EA3AC8811C8F514E68C5643E4AFF485C81
-88475A523D7FCCA5C8809BD49846C77795A38DC6406082000236A4D2628B5932
-AB7916D44EC2210CB941B143FB218EDE899E4C47E0081BD91A7BAA1D80F1562B
-A19D442C49D1295FE662395CA9143CB136751300AB9F9341255A9BA1323DDE0B
-DB92E2D787DB0F57D7600215E8FC23ED8E1F0D3764780499D425D7824DE64B3F
-988AB0C9ED06E600942526F12590D8A239B8AC70E319262AF6A41B2D45B2C200
-5DDD22E105A1F4AE4D2529C9B9A1CFBA75207C66D0B692FE7C9CEED9A54EE660
-7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E611ADF045E0AF3C
-46E2F650CC36E969855BFA34B66B0C13481151129AA93F8003F666C963A5086C
-8F7DA89ED6D2616BEC5F71C3D5C65C821419AE7F10EEA2F1D2F4353A40F2A99C
-5C2A47A16E9F55A77D248163C0B7CC9E2FBAE80D7344BF0365A8CFE2D96E4E1C
-342B8478B7485BE9C86297677D66B683C75C0023B71D456F5039788CDFF6049C
-4D63AE6E85DDBE826FD8145968FC237F12812FEF2505E3ED7565083022A07F2D
-ABDD90859F3DE0E6A95121238DBF05300C35CAA9065DC45D17FF350A4022FC78
-2C32EFBD53D8605DFB775CABF857C2F54BA01FAA6288A52E1F78969FBBF99013
-99D0DC4D53DFC2166A2DE5CB0DAC8F839CF46EBAFAD2162A214B85D77EA7DDC6
-A3A60AC085A5229AD801503BCC725E7243736559F03FA898F0D03B7B07DE7434
-70275491D0D5E8F1A2188FFE9DE4D3E3B5AE169FD837BCD4BAAFD127A55B234F
-BE16FAD495A9DC3562AAF88BB031CDFC0DFB5D8C1477BEA23D2B20B203E1DD9A
-24985524067ADA9F3D899B52E12B0EBC66B77ADCCFC2D82DB75D120E1435B229
-97575ACE066DCE7AAB5447BF3E3BE8165E4C36BEC37044BAA976A3D43FB565F4
-4335CA96CECEAD3A21956F5111852334983BF982B884C04CC25C8841B9786E54
-F850D08514057671F845BA9CE10FFFF8448E6C313A67B1479863404697086C35
-3C1CA6AC83275F0EC3EBACE5489017DAAED24A80454894B4D7956AE4ED379599
-9276CC944DB18B9E78F875ADD92B09CB60E6CDFC11D2F47C542270DEB4AF2DBD
-C5F92A8EAA7C911D4CE5F5B331587FC1BD8884BB68D56C3D7737AFFA430B825C
-0B0859998A1F2B4859DEDE19F3FDCF6210F1172B2B5338294BB52AD5B73D82D2
-CE3800552C22E98DA1213425BB2FA844C9C214959653E0C464596BE8034F4C23
-98F890602E1CF40F4E9697CBC4DFCA89B1611FB59CE5241AE1A6D770539789C7
-ADAA9A943D81FF3A2A9E49D621325B393CD59ECD20BBB281A2D228477D502EEA
-777713360109C4C4CA250C5B8092F866869EC87CFEF1D127F7FFDA77C4DFB822
-DDFDE6A7C95CF435ED90E5E85CF71CEE08379305265A6A2350A7239FB2808079
-90CE45AA391B9453D17801B6793FAAF982857531F01C1EB1B6C7E678E3DD2E19
-28E792F27AED7089C62AEE63903A534E5EDE55A2AAD18F4DA62F3D47870FE7BE
-C1D71B337DE48D98DC2158DE79004A00F121EA9EC21BCED87050389CFFDD6B11
-EE0D82E64EAF3608D4916E272E038E33EB3AF49893472239FE6C75E062DB87B4
-C2EE858921CAE82E3219A2BF1B2F7F6C5B3B7DF8A08EA2FFC5A06692998AE814
-9733503639827DB1823B166BAD533948658E8A05358BE69767AC0DF266DAD6EF
-8B94353A5D1448D04BEB94E739174618F7F3AA02390BA8F5B78C79B1059981E3
-53D3DBC636F575404C0A897882971D1E41805D361C4B90F30BBE88EFE223D9B2
-EE75CDABD101202199483FD59F409EED07895E86088479B150E15616F9242131
-9459F393EA8E72931D88E046A006E33906403E3CD0AAF83C2A157990F2E4BE45
-FB619AFF13E34AE062880557D807AC396EE4E1208DA4DF237A1C03EDFCEC5A97
-81D4F76C21DEAE59A06B3F776B943A3D30126A39BA1002F7892A34AC8D773F43
-700C4195848203424E0CB43CA1586D24804ADE279523EB5402CEE210FF8CF1B3
-C11CC0ADEADB0F94DAEF5B0F120E7B00B848AB3FB2CB8946166381F1E364629B
-B4E6154505599722D79936E49E4B0BFD08D8B12AE3003C04E821683011B74291
-426AEF2D5B015C513A6F91A615EF6404874F768B40E9E2506FD8BD7F600A4DD9
-7E4550481C4E158A8D09724B515E40C5FC9085B0C955E008C448A197338270A9
-F1D69B2E5215E35A57466C78B2F5AAB8A1F6BEABFC4DE9BCE3151C7391BE364C
-7FF3AC3704E4648677A0E8AB667D6B638FC8A4A81C84BDE42CE1650D70F7C1AD
-099E9A8DFDDAAE59C2F2EBE068F61358D8674CDB2323D0100E575136B029CCF4
-88826D3D468D013A0093BF45BBC45E973C4C7EF0617BA1BF3A83051251B86E6A
-0913290FB6DFFF8290C47CC86C52EA082135F59FD514B01268F22E050053170F
-93ACD4163CD1F3A6D1933E2C2459602FD243F3E117ED875F37F84AF53F0139E0
-D60D77F484D31E7BAB41C8A026D64BC9A0BB372EFC3BF463712602D201B47C8C
-C427DC224E8DA488E643668760345A38565CD16EB51C28F489C095BE207C8302
-893E4392BC3A286C9D159675A761ED9E6D70922C1505EBDC7C5F7B842263D15A
-B51B46C702308FD6AFD95A5DE1FDA3121B52BB3F84D9A835C851B2C6E01C1368
-555E2EF5BD186FF2F82B5AAC055E0100A05B6D6D23A87F2015354B20ED9AEE3F
-F12BCC2ED68950B378AD1EEC22072A78DE911AC357786D106AB3F4FD6493CA2A
-308778ADF10B33AB71813A4194C4668528AD4328F861577E2DAB24B4FC8857DB
-1428A2C616AD9ACD54E72CFCFEFFABA7AC6C85B2CE000F7252EBB794F368C1C8
-79B8E09EC0A71E8AC8D3DB48B8C06C8ED71C88AB996924C5F7CBC935D79DCC5E
-D97F815992C93E52234E77072BAE84BDB081A3DC0B4586C3992FC5A840425FCE
-159910E8F2836200E54F575B90A8E05F9A825919073E0AFC54C962B7CA054911
-BC1B9D795A4DC8B195BD3817F2ED68680865B98791F138FB0F545AD22325CE87
-B559DAE94B364B3A8336D7DFAB1C5261E00C331CDA309B310EF1CFA9483AD0CC
-1C35839B2E83ED42153F529920A92F8C86B98A3615E9F90515A5AFC55C85A2C7
-5D63CD559D60A853DBBAFD077E600DCD2064C2D32E5A9A38A1F390E7980D3C38
-F0A269C25BF98CE7919EC952AF71D7B8D585B00BAA7C8F8CE7B53DC68BBACEED
-0EB52AA4479E1A633C6AFE42BA010BA9CB3884A5B5B25A231E8F6C54D4B9F728
-9E7A24B53DEBD33E890DCF5057DDF12BD03B7330CE3B1E9F041AF5AE199C85B9
-882B10A7C3F03E124E4E146A8883703085543D1A276B0AAECAF3C9C3DC6E290D
-E6CE6C77A9C94395A04D9DE2B3B088695968DEBD325C81CDADBA4C87710640FA
-D92257C62DCF3AE11DECB9293A95D6FBD8AA7DFE656B8F4DA7035DE67098F2E2
-B9C35974354670BD1AD837FE43DA9F41E858B613259ACC0740887E4C92240A17
-C421157C2A508CD2268C4B9E617DC4ADD2B359AF762DA8924817B903D7422AF9
-4DFD563328C46FC805D1F1321F0AA4D071E5F0A8BD2D9DD553FEEF9407822BBF
-8ED58F6FA309B59AF37F8B43AC32108B88B104941063A79B120E7369466B6DDE
-67E103D9097ECE0FA9DEAB1183FA37E36685C8FBA8BABE5E53A9BB6FEDAD6E4C
-2BDCE1477C8B73ADFC1CDF038A7B129A99929642018AA142A8B94D4521C755D3
-4B4965FA7F3DA2F719A9A16F128B02498418EB7EEF3B4B04766ACAB6C18BD929
-506B6BD1150477DBCFA68B2CDCFC6C821DC62A98644E9DAAE1FF64D952A26044
-E2759FFB26A0903E0D3B5D2316232E6015F832302DE2580D5DD87B08123B263D
-4142FC91D227263A122F57E5075633900743AB1473B24A8DB85A6D98286FC4E7
-D0FFECF0BEBFB5AB1F524FAE53B502A19CE2D43CD2D4C69031B4603971D50528
-1829F30C715422CBDB480E8934B8B78EF074AABC092325BBE82FB9B796B99A9A
-E8CF5F5AC26F2ACC7FAB1A9548A1C607AC31C3048EF322544644A576C9D36B86
-13283EFA3B8B4FBD31F313FE51BFD332DEBDF7BF8901EE19FF890534FF083937
-62A2BE05643EBC99919C85DB4FCD317775A00F5B0945032A3DC22C349A02E273
-EAB6AD42DD10B194AE29A214D4271E8A5D98AF476A841C599443B3917C41E070
-7BFFE54372E76A52772173DDC8E6180F6EBE9771A2CA5FD2CD1BCB7ED14C1727
-1692303E954099C242AC6847F2B3291DF8E0883F1DE6BD2B082FA9AACB3640DA
-D6830BE82ACE102C95A4047DEE9995FD75BC710BEECCA1730CC38747B4A8D408
-57B58F860F85AC8D21720684B60FB14D99EAFC394B106BC00F3E6E37B830675C
-E16EB5C60490E14A049AB9934A809FA865E4361E55A4C3F20069036DC21AA373
-FBC48D06EAB7E5E339BDD07235467EDDCE655C3F3CEA69F44E09E6D53399026C
-D87F45684610B6E353F1C1961CC89E36175EAD13A3C7E62BBA022B12C1DE1878
-A8800AE691524EC810DA7B22ADE0832031EE8FF801BBECC0080FA075881DF90C
-E48747C3905D0951FF41C5F37FA47597EBA70A94FF890CC95F894E8EF5C6A832
-C2A29A985D98B880E2246A859680584C34C49A17F2050FDF56B344027DD7C5B4
-D605C3AEC085C2747E121468C88FF31CA63C426A8B8F09C4454CC32DA5D01A7B
-D52F6CE227B1728821EB94AFBAA119506A8E8D747CF5AF715E691497AD3172D0
-1CA166F6475ABD0C72DC860766B6B257B0A754AE8C182AAD87D6C70DF547D352
-9C109C1E1B9F2A1C9883BF4BA71ED2A194EC841D6F1613011E3DBA013F4D22C8
-D40A7DFC484EA903584A732BB122C8C516AA1F03D892A4B222CCDD669CE3AB61
-6930D84019A34E24ED9D7ABABFEDDCC6E6A6FC033E6A5CC093AB80F5BDD06F6F
-7CAF9271A58893528B1D4ECEF546B530DA20090FEAB0EB967B14A59FC9DECD50
-F544323C9A6329323A4719B1D5A635B09024983C7F16AD79F8BA0BB65E0F8459
-5BB1BDCB0FAB7FCE662D9162DC36677990D9FDB9CAC2FE929D603A4886213EC7
-82E2F9D02B18B6421F739C09092E0ECFFF4CECEAB4B8B2341CD21323AFA97241
-E313E84C2B6AA6B233F15731FF7E0F4C5C5FF64BE678F0E15E46C5AE971725E3
-34A216ADEB02FC55FCEFDDC6634DEE0242496797559CC7C44460E39A01496D53
-8F4FE734DCAEABAC5A4C3F7AD67A81BF24A8E7424EF0ECEE6C9DCC65BCE0E97F
-E16863BE6010C7C7E05FB023A6E44AEC9ABAE6CD69FF7117E940AE5F723BA943
-6457AE2577277C87087E4659E8735435938680B3727BD34E3D1CF4B56A8DB2C5
-BA9D5BBC669E5791DE0DE552E5CB480FC0A19F6C0A0D0C31A497F4DDD5A17481
-9250482FA8E633D55E33CD9C68305235402BF66EF817991D0F50092E08F4D5CD
-0E403B31E33920E88C32DAB553FFC3FA7BBA3505F6158C5185BA9D913B8D022E
-A2D1E96503CAFFB87F4DCFE889F7F5DC485FE61314A3CB4DEAA87062C21049C3
-3F0F04D3CDA38989493EF3E99C43DBF8165B5D41E0061881C224769C0DD95C8D
-F30D9F9A6D0E9332121897FA7B25B34603A5B03FF43DCC0D8CF223335A03E15E
-88247111F6BEE3FCBA71AB1C283E89A3B9D5897DBC02097358F62CB64109E985
-CCDE5912ED17D9E5AE0E1BC72E625989521B5C3D3DEE31D8489B1815D023D3ED
-86660237F3FF2E62C1B3A125EE3718356EC8B8C7C194E4EDA46D7F138EB1ACB4
-5AF421AD860FA48155DFA251408D1D4B256198F392250908BE34AC4EA814ED94
-72F3BE9BD169660845247D1E21861F6F083F59304051DF2DB0A215DB59B9BB91
-F1F6F40D19E5B22CD86984DFAA54C0DFE40DC490F43877590E17EFC663984CEF
-816A241F087308C1B5E1246C882CAF00063E1E178F3B25C28F7EDA99809EF0F4
-3931BA329A8BE5AB38BBF34D22AAA5D21D552EB96FB7E2BD3117E684C7C5967B
-348094658B82EE8C3B90E0C9709DF0F438F4D4D143FFDCDA11E77CCED4EA6C32
-93C44897E185E7B48B9A6EE1FA679F00B3F6E192F11A47D6DF6B433709C2F183
-3A736D2698B9BFF67744DFA9FC309533DD8DB9D53868A47AC1C4D1B27073F4A1
-060429BE976885353E49771D3FC407864F8C765EFB45A6E217DF467DDD2E1600
-9595D819F53B70997A1A507E520CD7F854BB3937BD31C1CBE4E0AB0AACAE9923
-64869235B3A20BAD3D68B32C07C6F8B6B864BA626E7C7AAC3E88D804B5985E68
-B6D328CA99EB8815ABFD76B2AE8EFB1CAD2D816A7DBF61F6D2CF76455ADB0681
-1CBF8EC4F25EC64384A4CD17770B109EEADF68A3CA41FD96E02AF82EBD37BDA4
-C172304F6C104E8471082DB7B80118C413F52337B9EA7F8ACE39801ADB2844EE
-4E14138AB284AB5ED98B61031C749B9CAED6739E3BF77B800599B4928937F4EF
-CC6A01B3C702AB6ACC0D41E829EBACD601A608AF2C09AB4C644B54F36F6C4A04
-8E2E062AAB79CA022A058F4952ED28E35F53563173C7FFE8B85FB350537F126E
-94CCE6C95FC1B832D55382E1229E0189247ADB99E3EBAABD9AE19E755A46C95E
-ABC34A48EACBA47AA6F8C19CABAE4EF4CAF67A5859AAB847A4780A8E8E789141
-B6E13A4A8439FB2FD0585AF1EAB54A83420A62FE191F229E19BFDEFFB89B846B
-96D1065C2D6A93646523A130A287EF0E9E6A211B09B3622FC71E6804BD29AF32
-AA85D1F419DC44A3637EB4D1E5E2D2BBB42D0D07783EBF05CA93FF183037DF4A
-4BD23C04CFE4EC9B8BCA2203DE9921AE8C06925EB018D2ACB6CDADCB5A26A869
-3EC4F6669DEEEBAFDDBE1687E19A526A07EAF7F2AE3B60A0ED751F57DAF48C1E
-2645F9B2BA0FFAD79A2CD0FD4AE778997324E8EE78B39DD3C94DDEFF940CF695
-FEA43D07B426FF66D2FCFFBCF7C35A0C1BE0A26164AF6DE54A1F136C09306B57
-866F978813D067B0A5ED5E9375E7CE31DB1D854ABE14D1521A17D3621B10EC5A
-78A0CBE37E0A74241CA5DB4404FB9482A463FA63B2B60B749DF353AFF7531AC1
-28A9AA52B17581C6D3EA306CDB27C60181864CA69B0987DF82583D8746B2FB76
-666D80C7A8E9CC73A4B9E2A424E91A5D9C9E4B4516CCF0C0DB8D7D6B990B0617
-B2D4BB80F5F44B8FFCE757257DBCB603CD39B910BEAD4875AFCA1A2CC3C1A227
-F0D7ECFFAE66C5B0DCC906E5EC3968D06AB9E012D44DBD374D253E3B7E63F2D5
-A493DF7E62FCB8C36A4FDA9F17E5E00EA7694A4ED428772C9123E543C902D0DC
-CA60BC04B97F01017D3F2B49E073828B55F3068551E8505110E3D90ED5927AA7
-5B218243FFB4B750C6C90BF9C4F08E94B9EE95A9835279AF1D630FD1A5AA3811
-32710CA0F92DB56FA7FB8826CF0D25878D3D1B6D9324F68ACED610819E084F82
-BB74206C03B2226B45194E2129D71D44B93DB0B0F9A199D49DCE080D2E76B5B0
-4035831FA95543FA6DD0B3297DB0954B3E62E835C6EAB14B6890606D582F56EF
-FD1FFA40C44DBED19A88E98611B2A524C5690D13AF990182C6820DA79712F418
-EECDB01EAEB74F698E89CCE2D6E4FF89239E63D78940E66972B1A441B8C7194F
-1D0207BE9E753269952711C130FEA0D7FF0A47EE2C713A3BB84143676E9F07AE
-036715EC18FD6FACDAA2F25BD068E19C42551ECACA21AF051171760DAE572159
-E2F262F330D96B0673B3B3221A233365D51F243F9D03065EADF1443A71B2B148
-5297B36B9A93F9E58B2EC58B8186F209CDEFCCB8F85B9064E35FF1AA085DBF72
-639D82A07FC3D881235F818DB280BEAF5CB2025080675FE7EADC7E8AE4C115B3
-605EEA0A7B055AB5B16D19AC8AFABE9B882E662AE6BF3EDE9CE308104154CD04
-C6728A4F2A6FD3C9FDB5D97AB95A0C95EA614AF28F73CFA5A7397D727F55D8F1
-6D12D44E059C678807D33AF0AD405997A40D5D8B3A88080F9C8110D6EFD49EC3
-DCD651A67946D91A9CF2955ECAD27EB3073894E6237AA3A9B7168FFE3DAA81D8
-0041B203045BDEA8FD43FCF894E5A11FB192E07E6BD9D187DF7F55FD7068060F
-2994EC7C2E3A554D0D3C01EB56CF8AB44E926D053512FB591A72783F65CC3A5E
-9CABC9D8997F8BF7AED93F01B58D3DABEAC39932EA310F6533A25518872E7005
-D2145AE7DE39330CE5270A9B0808A6E735F31CDF39BEE7385C56989BD2244DE7
-C849F8BFB906FB794315F383CB99BF0EFF63A3B1AC735CEC9A50FF56B3D141B0
-A3B300179B1FA5FF1846DD7389AE24337CF1B340FA311884F324B3EAA0BC37F8
-3E757864956286A37254CC50032E00D6DB9C7E9C62ADEBAFAFDBE63A3B7F2A34
-69F67DC5EC11488FFBE72B331A38C911D02A1616679C6206AA14A4393540752F
-B46C804C42A3575CFD8988841B962C20B288B57F35EBF36D3C26873A65008B88
-76DBB940DD66FE458E27D962485BF068804BE922AEDFC62A3137FFE0D86EF4E8
-CEB20992BDA16F7CBF01F51DE0923D0D96A3E7FEB00D63118B3D4EAF3E692D4C
-9FEC460194825CA2766CF4D14693C62129E5EDEA288373C9D82E9D4EC7D79DE5
-DB952C6602D48C8345DC7C4D4138C2AFF84A262A12DDA6485005160C2382AE01
-8E3B510C5A942A38301ED8A5C7BC5F5738BEA7AB1C8A80A62B72D814E5B113B3
-D07FD53BC8DCD79413DF41D56FB985C64718C4872FE461CAD45BB8DF23BEA38B
-81779181855771FBEF3019F1D578E2CF5F5A2FD77E34D5594796765CBD65313F
-56561F21C0E84A86057E35A1532C760E661805E1D3AD893667B2B670E3A57369
-726FDEF0774052B75626D05AA15ED5EE79AD0540754CE77B61A0B4C920ADD86E
-2AFDEC70819274E55385E5FC62BBA6FD4A06F4D3C73A7636DFC37EE0E9EFBE6A
-80C16C7F161A1C5D33ECADE5785C2615DACCC633B6F543E4740CAE50A1A542D1
-59BD8073835E1DB768BFCDAAD152DA2B403C8987DAB55170AA14E498DD6D1BC3
-D555035250F975A96ED945DB953A5AA73175F841216D9FEE530DBFC7ED8A9B05
-AF36650E74D82F29C81ABD918547CFE78ED4F5FC574A182855B3DD00A9DCCC5A
-57098E04C0C296A58038C7F86A80D8300BF8A354D62D6F56AD45C02A1E56283B
-238EBE2F629AD8420E6D14F68903D3277EFCE0BFEB1B8755654CAA25E0D8E5BE
-26784C1F0FD5A233821958BCB346891135FFFB1AAA3A5152BCE9D5C82B468260
-0ADE466E2C867A667B50E030F53AE63687861F74DACA26309D2FB22F67794F5A
-4FF18F6A2D97E42C24E9B0F7FB073C3F32DFC9D5B8D6182217213393AE0A1276
-05569BF056B04DCC84A624C910AF58B4052F32079135B69EBD0663CC24FD12A1
-E9202406E8DDCAE6CE4D772218A998C84B40DAE4E955853AE9AFA7B3C643EC09
-D0ABA5FFB200E7C931754FC5245E92F23DB92511133B4E7EA1D4A36E4B79E992
-6696CBE8812C41CB8E7493D8CDFA35E406EE3E4347EDF7DD7C255A25D2861EE7
-517C266E81D56135E140BF2A32526A757A8F1FCA465AED57BC4ADF067C2C4B24
-6FBB19DC6AFB67949033EA303AE450A47165BC82809C4A1C98492B26A1C44327
-DBA5D6A3843E94E76B78FC26D83EDA9966EE16E1FF6EA56C0F054D39BA2D0C14
-40FE303FFDA15F552DC7107780F468A34BF4B53D2B14FD50B46B375B5D31A913
-D335906568D13DFB928622B55343FEC3EE9D4C7CBD9B5908D5F2D1F0B7B9A4CF
-300EFB57F4BE807D8EEBDCF3BA40D3ED14B586CC52C1466B841B086457CB1458
-A4F59B7E2DBD80B6C64EDE5948AADF52DDBDDA037C73AE9AB5D280E5CC1CBA3C
-E1ECABF80CF6820E22FF7AFFAF3240C66D094A7F48E33EA42189EEE885245B09
-A39B636932D472ADCF531CCD8767C803151C94096C97408B0365C892032CA18C
-292224F0978DA852AC90754EC12695171E1C99F825997628B97EF9304BBF92D3
-F1CABDC473CDC15FE87926C15505ED8BB9C6C1D72DD128C9264705246CC8F721
-AD93FDDE653283E6347AFC4FFDF3A6B598F7EAD74B14EAE911A5E5B5577FE96D
-FEB38CF357D94B3D1ACDF79A52E42AD9551CBC33BF07E43E35D12FD8ACDC80EA
-FFC58F37549A20A32DDC37798C98A244C0BE03BAB8E24E4CECCD61913791B72D
-B8B86BC3A196B97C4B7954B37C668C3D8332099CB22B1469ADAC9C4D72DA07C4
-308EDCC5D81581E589C208D9615A0014CF085678357446CC1D8FD09FBEA45E8C
-2A0EFE1A696A6410D71633692796F571A790B70F3CFA953FD7B8F207AEFCC10A
-2AD2D80D229BA32FFF63FA080F8375645484DDFA67D7E18306AE0EBA4BE80D21
-50BD528B435D8C7D5C4223C5B9820C578B84447F95597E0D677A92E980F3D22E
-C0DB14D520BDF4F7BA4EFD2E96DE6C95D919DB81E0525C649CE68E548F47FAC3
-D49D32CD1EBD0081D6C4A463D964BD1DA937BF879CA668D75808171F1DDA3101
-1C11863DA33F73AE5DC706ABEF799225FE8BF59F4B8FA2BE77D1A7EC12359442
-BA3187AF51B30A4FB522F39818839549468EB325F3839832A93D1F9D6E36EF71
-2BE9B7F0AACF4DC29339F65FA6011CD31F80EAA33CE51CF3AE15CE3208D3242C
-4B25715554C188602000B670FE25723DD816335C7AED15E21550BFA55D4873B4
-B0BB480DEB9B313067C8BB64EC3C2C8C3FF9DF4F06C65DA6EBF0E3F16FDEAE6A
-34EC17B75895CE31DD95691282817AA1C553C61A3FDC48F9AB3FDC2D87DBFE13
-4F0A2CDDED7CC0760D427D46B54C31CCD6552F2243433435F2BFFCF2F6B2DC27
-D7415852C3541A5873FDD022D7CFF120DD280F8160224805A661A79065F2295E
-1FE93EA78081B80464EA6131DA784CA339D048FE1DEFFCA15C316C2A2F073E26
-D77FE5DE60261F97C903BBA11FE28A5478F28C1120F31FC3403AD0B76343B095
-C34170B0C2B2FAB990FE1B3C44D6F658E3605E93CBFBEEB0F9C869138FC2AAEC
-925CC1186D8A934ABAD65F0D540C4FC4985B451AC00C134E8B0B884D8DAB9740
-53DAB9937E5F27872D4D28E48C2B17553037039C0A1A409014234A191CF140FF
-872162E676E682DF16094624FF190AEFA6946AFB31A7DDC9D37BF2F0E1491F73
-043757B23286941389B7F8A1BB170CC239AFB0D386E08AAF532AB8E6E488100D
-FFD6BFFFD3D2B41C23DD99E835EBC7714C8105B64B5C6F65BA3164A92E2857A4
-4EAA689F340B161700F2265B619DF683B5E844F04174F9D34537742912918B30
-F5678220E8486A05976936F63358584BC9D2B914DCB1FCE987924BDEA89E25EE
-9080C7D2508448E95591CEC7F50CDE1DBCC6B5BF7E58544F06D6AA9C073C769A
-5D7B3CC8D92D7D8A92D9C7EA32FC65E1B094040BAA1EE33127BD5631B8FAB0FE
-D22E3450AF3EE0280F8B0E4443B8B6766FCC0632FD60AD7F2CE0B26D50A9BB5E
-D1F57673F019C8FA743047EA261A866C096ED4A1EBBCF0D2C36A03F0615DDAEA
-307AE8A7114FD2E2553366E8111B405B45337087F3936EB9633F7C732595FC6D
-343DE36A8A37E28F66AA425BAD0D0023D2C1399B40BE54C6DF4AB1AD822ECFE8
-AE877EB8124D0873EBC9A23F0615518C7FB8EA1F512D8F46663D97F370141456
-A5269ECB9302635BD560CF72F69D156E2B0B83C3C3DC8F5415A2FEC54059A5B7
-A1375B7F074A72D13E7766B3A4EBC3D899845C1C1706F6AE986DDD9402E24CD9
-0D717774773724AA88C043562D50525B69BFEA957BD893CE45CABB029C656111
-815B0AEA64274D80A8B0E1992728ECB0788E7B6467C9BA27EE71B8347CCF3048
-59C8333CF920038345F1D961EAB2DD689D6626EE5F0081F486A9324A717B6A91
-09DC67826C4237EFE68CF5992E6D7A19ACE28ED393BEA215D5101CB885837B6F
-0EF89F77DB7AACD620C5F574036E13FC1CA5619A074D7B416AA9A90CED155586
-1927922B72C4AAAD7C504BF5C4916F45197872E873C82766CEBCF72551111768
-675AC1FC672C619E28D5C67D3A83F378D66111B53E903FBA03B6324CED29A895
-98F6437AD9446A2AAFD7E8A290973000A90D4CF675CAF2C22001C766ACDB71BC
-929465EEFD28326B164D17990FF214624F35A76004169F39E2A774CE5D7521D7
-8A3A9E2E772A50195A81E764DFB10F0A39389C36A8976248346347E59875136B
-779E45181B9CA5A13FA4A8A1D8E8403C8C487E17854B3A652EFE481C6D131030
-C5E2C76F785ED9EEF33E4F34438A860D8BA87A4EB82F770AA031C5233D0A399E
-F6041D27C498BE213301D03D91581A470DC93AB3FE2BD1201DE62C647DA2935A
-47A713EA537BD35EF8AAB42DDAD67E3FB80923AFCD4772E164160013270E4AC2
-1795963DF0B7272B14CA254700F686876C92F6B9D344EACC8E102A22631A78FC
-F553226C615F5E30A79F2EF4C2D97524C04F7590701B32448B39ED144BB1A619
-3DAAF628E52B7B353BA4470D1BC4E19277C7091AEB971310BC2981C50FF81720
-5482F7B39DDE8FD669F24C99CA1DEC2B65040BD95B5FA5FCF417373158C7032A
-5A3D3377E1FDA40CC3C85B20113D23F4809EB260CF28A9805DB01075751E47C1
-204AC5FF27EFEE21F9B593FE72DA1AB7907174B89BA75F2F9AAEE07543B69CA7
-8C3AAB6D9C08995793CAF1F20E9F4083751CD300E60B3A5605E12117B48B6CCB
-53CF4A2A96B3AFE2612B47DDE999AC9AF62510E806CEDF17104E01FA19E5B982
-1183FDF79BD321DCBD3C31A551ECD019AAEC3FF59D5EE692560EE34E7D67A4FB
-5B009EC1A33207B4455294CA2B54ED8798EAC203D8ED4AAE1F38CA56B25698FA
-28BF32C4106ACDD2CEEE8323E2DAC6EDB21D2F45E4A4A488B01C11E5B246454F
-4B60C3190C5590740A4238EF7A49144B89BDD3EBFDB380536606D3E10D91CB23
-439EE311B892E5134D9FE5CC74B870DFFF7DC83DA94C8DDB8E7A0B7E177BF1F1
-E9D18EAFD7D1A2ADC30619CA95CD8F97EA79214A4342A1B0868CB8D934BC65CF
-9F82FB86089F4DAD3B5089058CFE6D4BD774E798DEEF7D8ABAFED407A06F03A4
-A4AAE43254CA92F0DBF64976CF4B326A865465077D6644CF8FBE1D71F4C030C6
-8189492695FE346032BB2FDFECAF7DDE2591CD9794D04BDC242D3EDACEBE69FD
-445212A0AE0EE29595CEC478BE8ED461EEC61837B7EDA829173B922E9EC6F038
-AF6E261669BCF46EC41E89C17B2D83EC074CB26AC8616A42C8BA6C454B1CE038
-40A831123D8A61E3FE904D03F5C2C991D71E7D42C525CA93EB158BCD8A894CF8
-D72637FF9E4EBEF4B13913F0BCB61E2D85D9C12049860F4579CB34D9BBDB7238
-EB94A9DF92EBC35528244CA4576371C97BCEC979DD0BE756D4CB8E154B5A0773
-0568448A8BC3AE9B0F64A72E7C61C932A9275C81AC3B04F079E4557A3698221B
-F77B4FA4A7FD3971B589C7CCEC6F0A7AE9FB4365B3F114F22C3DF8B2A2F73801
-B7CE2323F7F004D4660FD16F2436481E8D40545E0D4228B0940488C440266CB9
-94EB97716EE5FFD31916405E7DEB4C4C4BD085BC8B9CBEA511F4850B9872CE7E
-585BB97F98A9C46AF792D800122577575C61961CB6DE2421AC4DDA9AE6DB8755
-B8303785784603A0EDEC90678F549EC810B082EAE519E8C70BADA409FC975CD9
-A0E0CB3732B41D3AD414A3A20F32CA6C0DB28BCDC02E846ED52DC264A52361E5
-DD576D853DB8899101956732949DF7B675DA644014A31760F6741811AD0FEB5A
-14E52A1DBD8570A1E16E24A9D5A314D0EFCE12B3BCE3721001C2F4E0319F13F7
-541F68F4DA6BA8663F6AC3D7141C78B325EAFF053429B74C7177417C81198CA2
-2D96ADBF09151C81A8228D868020EA9A695F49DCA897A1540F558B906DCCAF4C
-C456CBEA53A973C50776718A1CD9960D54B693AC4A1D6001065750D500BCD41D
-F6A4DECF6E6A279620BF48AEB46D13ABF35A4AD326C204B1066E3E38904ADA68
-C61DC9DFEEB1E45EA94EE0D499B5BD86CCA0853092825CE4FA3FE7F6998BF76E
-3ABC5D705B2D98523625A40882F60D1B1E66391071A60CBD22BFAE2BE7C25993
-C778139B50F7CE949F30290767F776AF68AFE90F9301D53F1F82C838D75A3C07
-5D7AB510B3AF880651E2A2D8F68230D2DFF494FEA6A4E3B9D38C9AAD9DB39606
-F2D5F23624836A6576345677BD4EA57A66398B7A875ADED0A384B2F3B46DE31D
-EA2CE7D476033BADC4FE5B06D48DCD2C3FB369E7C5CEFDF176AA61499910C5B9
-21290036BB746A0A29F2D825AAA69871872DF0393E6A9DA72EE62A4408B32AA5
-024ED2CEA2E4D2467111EC2CAC6380FBF1451CBC48B35AF8B365EDCEF8A49302
-C6293EB59E3D82172B05041A721983070EB0FF316DB1B0CC771B6237A123D6FE
-5B7B8030A6B09E3FB300F8291392ED2CD17687C0CC25E978DE0B97BBFC2F091D
-857F1FA652EA9A8DDEF20CD7A7150FABC5FA50FAC384357A0A533011D6556A4C
-01770C0AFE53751A928019ABBD3C366A814B1A8D6D798B88D41F76F2B020970A
-5FA357E9D30D864C62F9469D741C345DD4E6D60628B0D7F6E4F7D718320333F3
-ABA1E1F700D57F1BCD203A9D84E98B8880470FE1C4198E61EF3537BD48FD587F
-348364A5C98CDBD28E5F8EAEF7D5330BF751697DC2473F043543BDD6DDFC0FE5
-920814F59827A5A8B462330EBED883B1540BE494D8B15F896D7D57DA0CB58333
-BAF2C40CCD28300CD1FAA74E5FF7CCA41C224BE7005594DC0A27DFFD9788C601
-022AA48CB97FCBF330838D12728ABBAD2502EC9C186257B4B96211FDE9F0B8DD
-95C1F833FFB246B66F0E152F8863ABB2FE6C471DF3246670E5FEB2AD4BDC57F2
-DFDE55D2CA970699FE737EF167FE912433656CDF481CB2A21F7F5318EF49E6D9
-D1F2F6FA7470FC4A915765919988CD6B05CE266E23DE4F53EE0AFDFF3BAE149C
-B4746F4FC7246F2109F56F86379FE075B2F479BF4CEE8E317A2DB45BEE15F9EE
-56D62D31C3DF3ECE7B94AAA44A33285B8D2784550F92D43C4688CA5730002EC3
-7F1B89AF7AB10E358EE586D7299FD59FACFD8DCE83037295738FB134EB82291A
-EF5CA235D77D56F45C901C1E1F301F25C8B259B082B9BFF0DC27A90813C3E6E0
-150F3F950FB999C79E1C5224CD5119DDB3D4E30582971150A2B8D01BFC039082
-B6EFB1CBD50517BDC1D2BC07252CDCA327FCA494DF9834ABEBFC5BB3D922B151
-6351C15C8D0F281EAEEE5C693A083B15287D09FB52FA53ED1786BCD39B6B5F64
-374D25C7681BD312676257FA18B993DC7AED3769A7A699D1F4240D9AD951D04B
-0D959060AA72C4835A0B523C324CD82994F9837C7678656D38B5AE9708EA639B
-CC017C65FAF1EF79F48AD5C6798E1A2345BB2D1E9CB080260C3C54CC60A1F58D
-834D91CCFD0643AF41157E09F4FE748281C96FDF8A9230F4D1B997168546170E
-4995FB284BC7E690D830CB3AFB754326DD29E6D5578438A21D3A4110B17E7A2D
-7EEDC502B8D5082649B6F074DABFCDF47176096E66A193D422E70A65AA9D83F6
-338964E0DCB95A0A4C84EA21D1DAAE0BAB1B103383D4F14BA32D20FEA7A2470B
-574513D8DF046EB1CB547E728BCE6CF0D6FB72D32BBF839800235CF64C16C265
-3C3DED2F2D99D6421F9A3A06AFC31C05601D0408D9310150222C9DD83B30008B
-68A6276400460F5172175EB818FB356A6BD6789B836F4C89A075B3695B72A08A
-123F446FAB5D025097428BCC8BE91297BA81B2738F935AED58D85E96951E413D
-888F1F77D0D50BCDF8696E9A5E69896009F26627AE408896609BE88C7A116CE5
-A35FDBD549478B80435207D7E782EBB20BA6F3F907609439063F25BECBC8DD4F
-2A2D5B34E52075B62E5018559DD0E65E302B4A0FE6344878D0FFDB438DA8F532
-31D1081802D22892CB98EF444F0AC988E971D1A140E31137DBB9E9DCD0E3DFA5
-104F70C8281DF90F2216D30915EC270D771C39DB30E7CFD04730ECE03EF333D5
-471E4D4F71DD8B6245DD440FC86C462D860FD487FEB97A626C5DDF5BE9C6F7C1
-95CBAAAEBE97452271186CAB2B22BB2E89144E11569E8E229842E2A49F094F3C
-2301B55A473609F63F806C1CC7CB9194F59C60FF71EE6324352D56570C60DDAE
-5362E7B2BD1AB594E30D3FC5B51FFD7F2FD08E46FBBC69CA3A14ADC116F276C6
-03B9BF31907EFACD6C8EAB9048D7AD15778E5B64A0A957791B00D01DF717C7F5
-AE610398231D7C5549433B2526C1B21C632494A1A8128A932BBD6D3FFFD93477
-537EFB672B7CC4442594D1B7D0C4EB8B95CC61BC2C226704375B2E25C3DD46A9
-8062E4AA9946FDBB0E2878CDA07625F55113852581A0A796D91C9FA2FE4F84BD
-8757849CAE0C8DD36908FB744D9D998E9495FB21C667190C8C7643AE48611A6F
-91FF4A86105682323E8CA3C2DD9F19F1F9E15C4935DB3BC7CC3CD5B3447237E3
-12F4992436D2232158699A83B4D9F28AFF4A5CB7C921A37BD6698E3856A482D4
-58B21670F835DCE5F4473DF4EDA510EAB2D56F573FBD192A868DEE896BFDFCB2
-82B02C327B22AB5661C88CA3F4AD18B883754CD52C2C10C76D288E4343E9F4B2
-6BEA30D03043E00B78FD43C411B219FD33DD6561AD4244425E51A6AC8A6742DD
-7DDA7DC304C81B7A1F6A09F8B5A7665E42360F430130D56BFF107BC432DF1F3E
-2864DB14AEAC6F6F3327B3D6D7AA794608E1BF069B8A89677B4187A2715E42D6
-39A53740FF2B5F9B4774D7144595F8E2A3E1DCA47B5AD3E6F0CB194BD7C9315D
-6F48BDF80FB9E000969F4B83EB0E15966B5F6476F97845897CB8E40CD6C4FA69
-68916899FAE0663FAF1E3666969715081723104F40B42C45E0D48B0D2082CEC9
-3150FD4EE265B3941534773473855DAD248630B8D810669F33CA307BFB215E5E
-A59D9B509125D464B60683CB02D1F8C25E6B08616FCB04FF9076F0AE4A4F5F73
-296FB829B653F7A00225C05CA4A4685D99A568C4DE3770F05E7BDBBF7C5876AD
-60541D5F5B2718C0122FA950228EFD70BF12BEE525C7443B7169C28116322D47
-6B8AA10B008960195A69CAD5D13375A101F4DF5BD0A45418DE71A0EBF2026E06
-C5ACBA696E92AF6BA96C8E7FA4E899B73EBE364E2881161A1AB5565D38154A51
-E681A677C476C818EC99CA89B8257E8CB95735A73DBAC6430DBB955444A874C4
-3C0B8F0E7EA3DE8C9FB18205C1763E38D4ECFBB6691E1EA08BA505A8C159EF87
-A0C78F8C517C6DF7F871342DAEAECE80FBB02F03CEBF93AB6062979FA5BCC2BD
-FB265689CBE6E7F6E4CA0E39CCCA58359537982AC4B3CF9EBCF42C3F0CFB9DA4
-FA2BEDBCCA7B8411C3DA85B41982BB4866EC8640F7F1594C735DC9597927DE0B
-4AF7653554598713D45CE4795C7A5780AF89521A1981473E6379212F068D04F8
-C913E30040655E666844E44C2AE644FD9D723D2CDB5C2A57C089A8C302981E07
-10C5630A492D5FFDE6C3E568EEF1F0FCE0221DDA19E569DED96EDADC0B8C4264
-EE13C4FD6959EB4C6BA43715558B2C1995A4463EB8EBFD77EE810AB3576CA9F6
-52321CAD216C7628DBD6F9A20516A14847E789FA0B0345618627568E1C088F27
-9A5E8559854C2EC31BED7DB38F0A2AD10BE6C9065174FF681732A14D5BCD1EF7
-12E9CE8C43BEF76E95C4193E857EA871E2CCA6A6D03C56F985371F36A459E62C
-DCE476EF7BFDFD1F6D35358631AF71F56A537FFEEA593EE1503B5CEBEEA17770
-92216353AF0F168303BADB7A0DA9AC999D863BA011E1A743BADD7C613E966600
-A0F4A8AE79B91707A4BB0C3583A6F086C6FD3CDBE13F307D54C30154D1E6C73A
-0169D9A3FBE40F5E041C3F6AE229E3F232509DD34BFF3566F7A7B4D6F78DA67C
-929789E809EA216313F61F29D16A00538278E7227007C3DB4794E92D312DB275
-E90E0A9F043A28D8B71A88D2F563F3C0E17FE37C874DEC0E985AC3EA92D31409
-D352B09E27FB8671DC9F1B6E07A078093CCE14F02C0A969F591B38541FCCFE9F
-080DA87257088562FF63BFC324E89777AF6F7F7119C7B5D36126CBFFC60C39CD
-32E26471840F5759D9C0FC5C7B9534FA607FFE31D1D0CAD74A59DBE4407CF39A
-E60CD9474F6F21FBDE6D73598FF39E08EC15E93A2BCF398B0ACCF0A0D9CDF2D7
-22149078423166D2A0FB739A3804A5BF7855C578AEE73E239A34004022F76883
-7E94112D0C2505B8D6024177F34E0FC098B054746102CC32C51744DE089E835A
-FB677055AFE416CA986EDE59E07549627A488431FAAEECFC5AC3344A4A0726C5
-B6323B8F5B6CF32854ACD1D9BB8B0FAC721435AA9EB4AD6F60476076028E4664
-024CB8FEC02630D8AA3E601C016FCBC943F29096B8B580454D0609378CA66C47
-CCED9008C10304A7F01A0B97E80B9C98108766E8FEA6743AE95B9D08A840DA9B
-3F1E42F644716E2AC29402828A947D4E4BA2284A6D5438AA3A2CE843D0331EC3
-377C7C99E245D2D7D3EFD4763584A935A50938256F0103D2EC694B70B168C8A5
-6E655B893C2604332DA659CC76CC0E39E9F2B7356D9BE8C4CB089D6B85B9D017
-9E3C51E340502BE415A9D5A53B2250693A0B66E7BC381CF5EB8044788098F0BB
-B6074DE342BDE46C3314AB76CC8EFC16CD6F5820B7AD151802F8EB95A7C4BCAF
-92D3E148A5D5285EF951E70CA5EC44BF3164D8B60F032A24B5928F9CA8BF89B0
-4CC8071E70EAA1C7F327FC221CFF0913B0CB0AC44C8522A82AB770F3F5EFDA7C
-A04762EA4EF797CDD8A8CBD4109B4956265A7D0C14FECA51685B30CCA3FB4904
-2463E92BB697C74E569E3559156578D02688C11D9B6D5FF0CD458D5FFD8E2950
-FE7F3DCAA6B79E497BBC72F052F04D74DD8F6FCBC4714CB6CC2E399BA30EC5D5
-E2F1438C1E6C11DAAA29B93728DB23692E9AF21519F62FE23DAC087D7C14CA3D
-F8A75805CB7F3426E5F31195F0AB53D6F623EA69E55FCC746DD3206B89BC1D5E
-9B8D065D3F4DDF77FE6490B46D4D492B8B441F78C55D6A63EA76C28AB75D63C8
-632FEC815ACC754126EC915386FDDDB3ABFF56EC80BC75939BBF899B851E9CB8
-E8F9CDDC23DC403F792CFD133AE56A1EC47206E1125A80C829CCA60982B2F235
-FE52F2C07F449BF81E2CD3F55823D77CA9B659FD6DB17BA0DE65C27649A6029B
-1ADD725B21443BB63BA1BC48991A6751EBE0CCF542C65E01D67477277E03661C
-D30A3D47433FBB28BBAAA5EDBDBEAA984BAF310F99EACAB060CC1D88F3C5D885
-C96786A9EA3A2D8A196EA2ABF2FC574313EF12A9D779E66E7B946F04ED24C8B0
-751C127F795AF4C3F271372845309E96395ABFF0CEDC62E026AD8A06B22FD2E7
-357992FEC62C966FAF011576EA538B9C9C7CA695A43F793BC0A4AAA59D6A4915
-A1D123006BF39A2E6CFE5B0203EBAF14E0743D28D4FEC39ABB46AC2917E029FE
-AB6F2CB263C42C6003A9D7B24DA48BC3E240977319CE8B957E7C335AC0B9D70B
-D88EAC6B105FA4EE1244D88F2628F993EDF9F4B8C4B51E7573800FA231AB8B5A
-F7C649CDD908D24598FCE7395BF7A423487C26AA15FD6BA2586E3037506229DB
-6E436E7B21759454BBD2652CBCCFE18FF91545A19F6579E342823BDA81D5F22B
-A99767E73CA56C53E2C18381C390D85B68223FF5004D001C88E264905E5FFC6E
-406C84D227FA590D866CF31D7A89D1DC579134BE39D6A8AF4E8E75F609E1D93B
-A8C1B2F2131E250A170FD7F81706E2536CE8E9637A758C6D961016081602A94E
-B21DFE2A927707178623D6DFE5812C7BA07D9FDF1061EFD1C198B1A15EE28E57
-72676DF8180411693127B8F270CDF87A92DF5FF2F3E523981C8028CC2273E1D4
-B53547C34BB4DCCD64B4C6A59A1254D45FC142DD606E74EC06E376A616CF9BED
-1A20ECF09E64497449C0F18DF695724FB272E439822F7502B3DB9FD3AD4F6840
-A4EFB08659E73D45759918970D1BCE03681B422ED53E798331CF77A5C4B36443
-DB08F40A53DACE01AAEEB6CAEB045065441F8D1601E145CC8AFC3FD4E3F27528
-ECB2A5970D3F6FAA596D6C8C87565A3A6B1920C5B29FC4BB62B3DB14DA024181
-169DE1FE15B0136EB88645EF4C7EE1686F079F72EE0590982998F7AC25E923B0
-D17BC8483F7B861D7A797AD9AB4D1EFAB1CE593179AFF9468CC54F53ABA67F65
-D7155713C84CF694B60B1876F8E674F4D774D5F76F62DDA115494FA6646B296E
-5F12BEDC6EC652590177B90231796742CFC92B37F285AC64DA9C8D6926132601
-02A3C1DAF50B430E02C201980274922CCF116ACE13F0214E295D9E3406CD277E
-CAE552F4C7FA7FC6A8F4753CB79F6AF0F0BFE4EE86EBAE5EEEE3E03670B3A93A
-28E71F9852B127652C43075C6877D5D920AF0720C33748CD7E91FC78B86B33BF
-2565E84DA4D1BF18A7E5EB8B13F5E0E50C7673DFD4B6E9265AC097CF13E832B1
-F474E80EF6BCAC84D13B088BD645DE069BB8E1C53027FD6A2A2553DBFB8306DD
-3C85042392F68E8B18F1E5D8920649ECBC77A01AF629A467D29CA3F39C4DC2C9
-0E6E5739BE913009057BEB8F927FAB4F3D19AB2057D63CA74611C744A8BDEB34
-E10322B0FFDB7DBBC3267474DBF908059D49009716739CA45147F06203F39E90
-B55FC5B81565EDC8BE84B99A5ACA18FDA9F8A66C737CB3A1C41DF6752317594C
-AFDF6BE12CA5191875AB535DB36D2BFDD337600AC5C3082F145D224A052BCD7A
-5EBF460549A81C19AAC571AD94880732C12BFE3EED0D0FB42B351BC6A9ECBF7F
-F3E20B97B8A2510A9F249F047F63F084E094DC92B2BF98F4036009356A604D67
-8D54E74CE897F1AB0019E64ABE8C212D04C12E50FA0B3B93B9BA1FCBBCBF1B66
-32AD337DE52F4384E0A3B4AB9CCBC86301B13B8AC860B64469266892051AB868
-9475D4AD10C0E6EA277E0EAB6E5D9E97398EDF28B68E37BC2562431D77C37488
-0472DC8A5923AC28C5957C04314940307254F7B1E8E5DB79AC5299AA4D97FD51
-C0E3C24A77BD0A97623FE92FBB1EB258CB619F0639E9BD83D3D75E1C6651534A
-1C7FB7C61AADA26B49FB82CD1E6DA455B9B357F32EAAE6373116AB02A478269D
-23B39452CDF87C2E3655E6B4C38B939602D8F7A3748C090814CABFC733A96DC9
-C0F9FC360F6365463C012A2905B12CD9D08E7702589A2F35C8AB75AB3A7E3365
-CF252EEDA99E50F3B5A5C3421B2D5DE7CDDAB624F92D8D62D85BF069A555D0B1
-F803C877858DBEE64D2BF623EB3B182B79736A61A0072B9C4E6A41525D295649
-71F07878127B39AA25C502723CE1BF85D59C7C6599F8712F25E952914FF7D4C4
-F4508E516E34626DB226B771C8E3F5696DC481B2B4AC09692D257CAB362A385E
-80252630CF991377DC00D1199FBA2DCB262D3FA698C9B72A249704DB311464C0
-7329E86C09A10A88C4E6CBB64AFFB824DFFABE3B66A1EF08C42530C3F59D6D48
-72CEE38E0CB51E502A040CB4DACDAEBD4CFFD12AC7DF8E08EECA526E68FD1526
-5678769AD49AB33A3929605D02CE1965313EA352E2D165650667FAEEDDBFA6B6
-6947974765F4A72799EA546390B13227D4B57CE6632F8988EF1D7453F793B952
-020E4177483FC506CCFA0C345E640B46334DFEACD452D43B939653D952279BC0
-8D7DB082C5E08D2A8251BE59E94958F7F5D7AEEF145358E297A4A7B2FD33E58D
-D9AC5A06C200BC53687CFE6D3E2906F39CB2741A37CE462EE75D418ED5013BA3
-AF0AE35C083AB69C
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-{restore}if
-%%EndFont 
-%%BeginFont: CMSY10
-%!PS-AdobeFont-1.0: CMSY10 003.002
-%%Title: CMSY10
-%Version: 003.002
-%%CreationDate: Mon Jul 13 16:17:00 2009
-%%Creator: David M. Jones
-%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
-%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY10.
-% This Font Software is licensed under the SIL Open Font License, Version 1.1.
-% This license is in the accompanying file OFL.txt, and is also
-% available with a FAQ at: http://scripts.sil.org/OFL.
-%%EndComments
-FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
-/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse
-{save true}{false}ifelse}{false}ifelse
-11 dict begin
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
-/FontName /CMSY10 def
-/FontBBox {-29 -960 1116 775 }readonly def
-/PaintType 0 def
-/FontInfo 9 dict dup begin
-/version (003.002) readonly def
-/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY10.) readonly def
-/FullName (CMSY10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-/UnderlinePosition -100 def
-/UnderlineThickness 50 def
-end readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 0 /minus put
-dup 2 /multiply put
-dup 13 /circlecopyrt put
-dup 15 /bullet put
-dup 17 /equivalence put
-dup 20 /lessequal put
-dup 21 /greaterequal put
-dup 25 /approxequal put
-dup 33 /arrowright put
-dup 50 /element put
-dup 54 /negationslash put
-dup 55 /mapsto put
-dup 77 /M put
-dup 92 /intersection put
-dup 106 /bar put
-dup 112 /radical put
-readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
-7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
-DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
-511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
-1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
-028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
-1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A581BE543D73F1FED4
-3D08C53693138003C01E1D216B185179E1856E2A05AA6C66AABB68B7E4409021
-91AA9D8E4C5FBBDA55F1BB6BC679EABA06BE9795DB920A6343CE934B04D75DF2
-E0C30B8FD2E475FE0D66D4AA65821864C7DD6AC9939A04094EEA832EAD33DB7A
-11EE8D595FB0E543D0E80D31D584B97879B3C7B4A85CC6358A41342D70AD0B97
-C14123421FE8A7D131FB0D03900B392FDA0ABAFC25E946D2251F150EC595E857
-D17AE424DB76B431366086F377B2A0EEFD3909E3FA35E51886FC318989C1EF20
-B6F5990F1D39C22127F0A47BC8461F3AFDF87D9BDA4B6C1D1CFD7513F1E3C3D3
-93BEF764AA832316343F9FE869A720E4AA87AE76FA87A833BBC5892DE05B867F
-10FA225E233BCFA9BB51F46A6DF22ADCEACC01C3CD1F54C9AEFA25E92EFAC00D
-7E2BA427C25483BA42A199F4D2E43DFCE79A7156F7417ACF78E41FCA91E6C9EF
-B933450D851B73A6AB6AEA7EE4C710CB5C14270D1674FA334686653793FCB31B
-491E870D3C2BC654D2C1DE463EC9BA29D7371AA1078800EF93D3F66263A2EBBB
-F5723697BF7448BD0D2E301544BECF497FD475B85DFEF52AF4F8F8BE445CABE6
-019318806D10C5952157FF8F8286C1EE701545C8F60EFA854EAE66835A2046A6
-915D395F1E0366EFE0C0391583FE001FF16D82A2E2DA5F57754A2C6F69306E36
-356ECF8EFC3F1188AD6FCD2427E0580C97A5B69B4E0E09B85EEDE142F5ADD2F0
-5DE51D6DB72B127412A0D57106C19CA493048A4F815129ABE767D51715B1515D
-9C21067CB5BC88741B7298C83EAE36A866DFA87D8981F179B1C31292F56BBB64
-3C430779468AAF07C8A8B4934E1E775FE3F35186BD1FA6EE3689C1C750678AF1
-FBF9B23195A124C5C991FE670AC0C86FD39D2B07B9A319E74EFD498B45820252
-720ECDF7294F7B0B137CEB86D33BFCEB8606985A3260FD669E461C8BE94216C5
-D434FD8854F44EE66E5A289A9F9E32BC36AF645D53F96652602BAED418C8D726
-BD04A1B4617551FE4DEF54083D414F7DCE004E6BB2DC9C2EF7CE232B254BA2C5
-7DCBD36C2072ED46FF711F121A701E2284BF1B718B3164382B8F453D68FA0377
-DFE106503B8401D4DB87F5402A3AC9A442FA060B0610A9524D530C7157C26B56
-AC970FCC1D5655FFFFA39246E6420CF97D08ADFB7B05822679BD40C638DDF0E7
-A97BFE8918B611A145AC965C203F1428812F9D340AF499B3A915B22BE798594E
-0F520109FC81E452180AE45B170FF999C5FC2761C6CECD8742A5A6FC97F16743
-AD4EFCC6572A6D3F3E4E330C5CB2FF6FEA48A5B64DD3DBE943BD9918D4A18E18
-CBCF598AEFBB6AB3CD2CBC9BFD6099272F6543F3E532E0E21E614BD2880B1023
-0AC234CB705827BF016DB84E00E8C255FDEFA0101A842929540B7B4AA8A089BD
-5EFF05B72356B6BC3727817823B5CDBB1B963103000D7F2A4E2A1472FC3E614B
-5CBCB6D6D784023173DEFEBFA8F9ED87EC1A0A9EE98CA59CFC964CF943DC683F
-E9E00DA718C4425A705A69D99988EC6F152525C790912C2E46A2381A569424AB
-54DF4798BC2D7E7A361E7991641D4B756CE2A7FF4A2848927092C59C2C4B8809
-E13AB84FB6B111E680D7FB9F2FFC2C5C66B0B501E4447C2E46C10E2F6124476F
-A140C404CFE2DC9E0199BF61E035CEB481D438139A9630934E541D261FFD2906
-4CAD99E20655FA746AFB81EDBB5601F5FD6B1D6832A01D585E2C55053F6A7378
-4DAACCAC7608DBDADAAE732D66B3E7F87E79756337C1A961E53A4651BE7C77F4
-038B89C87F650C54A2A90EB7F1D525BB353F33318551EE8D84A6A83C718EA5A4
-B2AC0F7306B1E095819B87015A90CA3ED739B09061782C28CDB36BA4BD5E5308
-5CBB70414E4112193DAC4A1FA30996327230D1E021F3CD8115E12D239D93FFDC
-B645910EB29E40D830E7BAF2DB255FD7C4E776557BB38157917D993EAC245837
-A3B515147043574157B8342D829C7228CCEA843ABC89D1785A9672A5923FC4CD
-2F3FF27E6FCACF84E2D3136CA2C0FD3EF1EE7354CD04C38B5FB874553646ED2D
-CEDF7E362EADD04B18051F20A8FB0DE18E152385B9D05F98A3A7EF177824E246
-455ABE69E2F700EB78185CCFC07E3B4C6FA301112528D977367D30D0D5D59EDE
-FAEB706DDC970A9E296236C725B2B55B09B9C336B8E23CBA5FB8692D56F33B03
-16294E5FC7FAA42E96395A57CE51CA8DDD77442F142E2E576B778373FB31C81C
-16840BB422CA827E30A81829648BDF1CA36700EA32AD888D097C1FE0A05B2D9F
-483AEE40269DF09AF0D1AD3DF80C45DDC59C2A03FBB661C79B87853737C6D352
-67626B657321B16198DBD6DB98A092F17878AE4698121E1006E53D6F9B0A3BE2
-3FB68828EF854A0CDBAA68B37ABCA6AD4A3D809AAF0BAB1697A81FE59C98C472
-1E33CD70A75A22C249DD11D76C2575ED3370A25892A16D2FD569CDA70C130770
-93F493C7D47D6F9A5424A7A542BAD726BFC3AB225DCEBBE6AC4BE006F8C7C0EA
-051424B08305BF2D951AB2986AAFEA04E078CA79B399585BFF0F1ADCED02E15B
-8765EB6BF6A8E4D0901EFF2C3AA104924EAD9637A35D877E0C51A3C37DA78CD4
-8643C8CE6DCDDE3F116A6C2390F948E5371BEB5AD2E87B41C5F01FB5C196C436
-6E256A88D082E3F46E4EFFBF605B2EFF1E9D9AD5EE4DDC323A137CD9451EDEE0
-06F7D82898D71FAF2362C0FCF1F726F97F820305B7CE20728CA08C63575083A7
-84BA28B7DE2B916432475510E274C12FFD1660A717F51DACFDF0A102D85224E0
-D6DB607BB72569ABB8A7BC6A10354CBBC01732EFE35B72062DF269CB25EA3DE6
-DC603B04C90C5912D2C38D7A5ACDCDD3F6F116D884F0D8C528F69D5D47BA20DB
-0A9E585C7D8CC3C324FE8A1DF150279F7E8FB43BDB720E624E5E9918032C02CD
-8020636AE5C38DA2484B7F4B34163E0D0A561B43B80E97746DC05C871AB620EC
-C5D47101ECED4A7E25F291184BEF8B80024AA7BB456C1B83A907652B331DEA34
-754226C39C6889EBEEFDAD081E01EF8FE47751987667836FDE4C8BB8A3FD4406
-1E643B4EA37BD370734D1A2DB17C2F4B74B4ED75098B433601F75A88C9A37A05
-CCB157EF6E32023BFA33973F3E655A4D58289136996FCFA61EEABD70791B6523
-1FF5DE71AB8A17038923118A5EED8D59C4C58D246FFA9BB26472346B40C8741F
-153D19CAFF20DD2A86C6DB89154A630FB1761929FC3F0448EE2F089C1C953E02
-905BA8DE75D101A982A611056C4B237596C10951DD98BAB838B742D3CF7DE718
-617DB72E5268583223E37E029D1C8FD3F1D21690151F76B76C52C725CA135CA2
-8666553E863CE188BFC9B99AF56AC2DB5BFEBEB12FB563D00244EB89E478657A
-98AF2E1223C1ABC25A4500E8119B86EB3C26B8A2F3505A3E5610F89B7C34E278
-53FA0A54A7F46D84A35EFEC36AE660A9E3C37EE3864106702DE5AF6C45ABF64B
-888A4A51323138CE77DB935576FE6B4824B6942DF80625098CE1B5B32B234F1D
-052A9D6039697118A9D793793775D8729D8574A2E74D7109C7B7E23BC5E2E87A
-CA8E019203952A4892544E1AD3D4EDD22971611358AB230E9A2ABDF00A288501
-A01B67C42B33F6B78C39562DB50F4663B922D9BE0D8A150311AE44B83C1F129F
-07337323E9A23211EE58E16043E127C6F9574019179F5635648A011266677B56
-B5D0201A4E1470B952A1579B57AB2329CD4C615395023C653F784D36B5EE3672
-10D191F29EA508CE84763CA4CE7C2C5229E38E241255A5CABCD6C7CBAED901A2
-CA53B5E24111921CDDF83578D33D463D70EDACA0E470D8F592303FB6BFD68B4D
-3F3BE2D7C5EC8BBF10C90111A33E205F2649B56E8443F6FAA6C721C66575AE12
-D4C40F1F46CF9E9DA675AB5D5840D938780CD9E4AD6736ECBEB6A4397613586F
-849B51048AC5F9405E03E14540A5E5582F61CDCDB57EDDF95A8C6705F433EE16
-648F098C03DED8A2AD94AE3DE202D629B9422ABB031318D48F2C85F9DBFA17BE
-84708AA3B6C9F81F4508F7A5CB7B6646AB8722ECF817877B77D473F577556DAA
-2BA0ABACFCF5DEA7498C47328E873019A956FBB250FD9D8885D21D368FA70CBD
-2709D2DA44EE7A9869963EAB48789541906DE49FAE785ECE1F18A22C7E7ED204
-9768896B78E9EB7A2BD6EEC1B26083940656ECD689D92942CC8AF05CBF82AED0
-B45A7DF4DD7AA6526FB597322560B9ED3087A65B5EEF1371C328A021411BFE3B
-D9B5088B2F1AAE381FFED52D2D1E02CD0DA78683E3B06171CBE94BE9760005D7
-135893D7CC2DB097F6AC664D9594CF1C650F84DA80D2EDE04802DBA33CE3DAFE
-EB7A37E8AEFA4FDA6252FF21E8673DD98E67124D5DBC7BACF361E57077B71939
-C1D1FB923E4E35C075CD1BCBE0E80DAEA1320D55B43EAB45D9B26C366B278782
-7519FDC482D98839BF0DF2E7C3A56A1C1A3FC0E57A75CA414F6536C1FE8EB7A0
-4ADFEE3BEDA0F53BE8CF5F64230784A797133E8CD46BCCB3BF38BCE38A73CCE2
-9E073ADE792F7128231DDD1F63E6156ADB2609C200837C2E8A2D93D2A7BC9171
-050C709A71E44E32B1B03C92EB5CF1D3BAB1C38E027DC4ED9AED633D98CD7486
-3F773ACF8AE332631CF2ABE6D606607593FE862ADE31803964E3F4DC3CE3A271
-C76BDD95C87CDB3B87BC26FC7A16D567EEC62E6FF0D471B4853DB8A94D4CACF8
-843824F818083F10E88D52FC4253E8203292CB40F1414AE7E51DD7347007C342
-CD70E8E9F2D2A13D71213B841DDEAAB208AD9EA644591C15DEB084165F9DF24B
-B91D3BBEEC2E34E38EF16A0C3F00700A7BDCBBFED2EC0D09601AD6538288DB50
-3478B051B5E16B604A0341FE621A58718D960D699D3FAD284310DCF54EB13175
-19A75A539EE98E804AEA24689D3540F0F12951A3C01FACCE9A7BAF4D0DAFA946
-FF65A4D2A4C39969607272C6886F44E90ABE27CA3A1F12A29D9B32E60E8E34F0
-17C5FE43D0E69A99A922D98909B2BBCD145E59A5E7F5426B3988F73B09A525F6
-8BD4915663C1301323180E760BE81CB874B020FDA3AE63340E4261E4F3E4949B
-CC0966BDC4426190BE9F5D77F76A72AD925662E5FE1CEF9CCAB68F0BD33DA003
-F11EB91AC4502FBD6AE48DA0F9D07C35B96B103E379B8A83A05FE728F1716194
-1F650F75BEBADB2E3810388F3E2DC7B19F1BA9E32925F2FD9F19F4E8701F3E4E
-4069125D7C401144740691E7A460021A47B1E27997FC1DDABEC5BD0EE0B20194
-2D579C7D6727AA124083242BDA46D8E116E2751C5F298851A62B60AEBE82A929
-9B9F2492BA35690D1EFD16215B8EF14E7A3803B93C28FA41D971B05B6AF3B593
-E74AD1E68A5FCE12A86E63B78BFEA87D3949FD164F12277A4688BE96356791CB
-8671C49365608F3EDECC109321AF92B4C29CAF073DA3A7D73E913D0D83FAC5EB
-BD884D4C686056404DAAAD6F82F94F803FA1FB0DD8908D1DF08FB87A8BB83027
-04DE0CBB1C6FEB6B517FBD7CF065120079E608CE41893C2BC96A347826CCDFD5
-C69E161217F2127A59F1A6F22037641613F191F22D5B4CDCBCC2EE5615623404
-ABA7BE6C5FE475481615B2AC1A2412E54688DD21E44CC9AF5F16E634AFCA389C
-4D740B7B51BB141BFAD1080E7C726C1606A28ED492E6BDE9F800EFACD1513909
-84E98CEB6A0B7A2A6F3E1D1DCC3B2552795E0932673E59ECC56DDD37A1D52BA6
-C3F0E905978AB568941A163F4CE3AAB5C5B16F86016EC47BA6F3F7AAAA77C3B6
-09C8C3ABDB6D514A76ECD37C37AA88B5860630B3406B494F7725975596F84777
-D9CF48686EC9C5DBCC1D78513F591C7C10AB9D153B3D41426B7BF668B0D04503
-56BCB686258462C1DC61095724B9F3312316262FD7C1AEC6E54DE7E5A7BD8EFF
-035299B8FD8A4A7B0F51404F4A760F4D8B4C0FB7A32FA4B2383AB6E9C78FDEDB
-FE6A5788D38A6701B123630C2A6D820A684166FBBC83DB17069494FBD411B333
-CB37E2491C5BD035A33867A6D3A3D420CC31ACF43AA07182CAAE67E40EC63663
-B678F71D4C6E0EC3A0AAF904CD3AA66E0DE5E3CDE049E94249B39A1C06E3CE9A
-F974B2484BB2CDA14282B9511E505B3C89F9C802218AE40D1A7541335C5736DD
-CD565D4B9F4CC78F3A393737EDB4FBD0DA299E21CCFEBA5478EEF013F0552A8B
-0BB11FF46CCDB784E8BDCF730A16363E66572049E42C695886EAB42A9AD9094C
-B635DF4B5B9BD9B9AE8455DFA3EEFC77653190F9A8B1E93B7281C2A21EA7DDA9
-33484745BDF7E3DD63C7AC66C286C9A5A698A5E4D7A91710B7FF943FB23609B6
-4B442F83CB795788FAB5E9CF3F75D5487DA26170E4561C7941C910B088C3B86D
-F844B0F340CF82786A3FCF347048463EBD2006281A816627065DDA6CD4D3AC5E
-2024BC96C7D896381BBB567951E7A1F29D4E95351298B000D29E5F3D0448CB5A
-CFDAE1BADE9403B90371C3A07D208948AFA022A69C519434B6813086ADF518D5
-88E0B92072A44BA1B3EBB630A13B7AB90992E85B6D67361C8D96F3E0D826FF37
-17B67E4B1EB7BADFD98D7F4FD17BECE740ADF13C141EBF0A91CB105DABB32FE0
-55086D56A0D358841D15FD349E6B95512E4EDF4C430216FF85C2ABE995E4B40A
-A6044CC8820AD885C07E052B3F91C2E9A1D163BFFD210F7BE95B923E2500DB50
-2075106DB541C267BD450B25B670CE80BCD068D4DBFF2D82634175B61FBD3BC3
-406131F44C7D6F18D375D1F2270829DDF29DC14DBB58A30AC193245D18DE91F8
-AB88AB548D8138605BB5A50073295534E314366E26665AE70482B890E4101D6B
-60E4F3B37ABCA1346DAAE8FDB8DD9C832EFF3E73BA470E2BACE7B8515CB43388
-C27AF99FF9322175CF8D4947E6B3846AFF5163E972156847F58A66660EC8A3A6
-5FB47C9F637B4CBB4C73B6A080B0CF6FD1E9665E92032540570FFCC747C67C50
-822811AADC404BC7ECD1673E8AA6C3A2F1D82F39430B58C29145E2F1B679C46E
-94EDC711883F1E4EA84117A54757E8895A40401A26E1437B39A2F65CAADD6E02
-D71FA8AF7453668DC613F326A3344F74AD7AC67569AF399385500ABDA5EDD3BA
-343CC5EDD4B558467626850E752B9959FEF1454E53E7A3DCBC2255AD8F6AB4FE
-894455118A61C58840CB68A925ACCAD75CEACE863D806916228F0614191A1CD5
-DC9BAE256018615AA3725834519449B0A88B4F396654E74099C007930ADB1327
-DD119BF799FE3B0B223E1EDA04FE2DA7A1C879143E1C33B6C6344F4BA033AD6F
-8E88C33DEF1977796B454BAB2494C930F492A518E8198C708A75FFEF8C49C324
-A718AB59B889DED521229E741FFE53F98EBE88B0405AD523254FD3FA4BBE96DA
-DA1C27C1C979A0DD4E61C3B1F4C4DE01E42F1C4435EECFC02D97994BC8AF5270
-E7CB1458D76ED0229C5FFB4A23B8716018F9050970895D51722CDE8F2EA3D947
-DFF374D84915D5C5D16463A6FFCD079D1ED416C4347BF831FF0C4ADFB61295DC
-4D5785BB0852BF472CFC97EC174491CAF961AB90629F055E75DAA6D9898E8653
-5BCF379816CAE46FEA62E7BE8E9B953466E51828172C4DBD0E1BBAD1CE28B5B1
-02B3E36403BE80B49A47446A6677FCED438F01D60EB10F478C89528FA337D0D8
-88D3FC123C076507ACDAF783A9A6E24ED73BF24B6E0F11C13E532DE5F70B1491
-307A6D9A2F2BA5099C8A07762E70BDAA74BA5E2BAB260C1352107EB8A96523D9
-4BA3082B99772D585329AB8645C3BBD11D72BA01F95CCF11C6DEBFDAAF7F5C4D
-795F99DAE6A8D59462D759001BBEBB59AB0C322EFE02904D82B424649C2FA593
-0E23281DECC5AA908E54244566055D418602EEDBE78843300158908F77C0AC75
-9562065826D34C38C598D8626BFED7CB672F132E065E2C27932F709935988376
-94901EBAEAEC410E2B36575A71EBB8954C3A90EEC264E6115950FC91D0D54999
-323D8B4FF8129A8EEC3900A00CCB026E6943BE105BF5F504AB332FC17E568681
-F423D1125A596766BE58ADC658888DB39BA74F67CE0E26C392220832FB036E93
-7587E96684BFB78BD035F54AF71B2408241AAF548F996AD440155624B3EDDC79
-2102EE58E1E27EAA0675F1F13297A4CAF514CB319E58D424A820B8F48984987C
-4B8934934BF21E81B529E3B6985C41413566EBBB6B2FFAA82FCF9BC6834B365C
-39F4F5434F5ACF57D96F605DC501BDB14E54C693A33F3A4EB501F760EFA3B5CB
-2A5E5C93E4039D48B1DCA293C3937A276C520D6262C755F5EBC702465871B5F0
-6D51B9CAC1F5595D9F90BC977E173B994E890B0851CAB033F61C5C663B538878
-A5975C4DB8E318ADCEA6242FC9527D1AAD986E5FD862BC4646BFE6FE6CB20C53
-EC8B0CFEC72C3A3AF805507FD44C948622210DCE229A06D0EE96637935E46139
-C3AD3582F785CA7146CEE8F7B883918A65C5E5202D0606DA9630E14F5BF9D50D
-D521344F686ABF6B8355E62FDA17CA6CD1092B2100B2DA58D91B2DEC7500C084
-32F18B37AE2E5EDCD0E961F0444D4909E8AFD188243250122CF718C5D08DC3AB
-AEE8A7E851FBFD13BBFCF23842A4541A6D4918F9C66D48A7E76583B0D10FFD97
-4F21218FE5B92E6E88E359A6A4F00A78FCF74983C9403E6589A8BB294D6CFC1C
-0662F43F754B3E32A068F37D7D371F552619445AC5F260639122D3683B3BF464
-E20201C5313237F230B22E67DEA9183A5242F928F9488B1C7DA854779CC8770C
-FBAAFD55CBBC9A49408580D76C020BA95A39BEB2FC85272E3B7212D7DB333D0D
-04E3EB8D136A1A2A2CFE4A338D2A8D2D33BF411B4009B2E92A2386B678179E2E
-70EF2577A0486E298B2C7BB7DDF8D57B78EC3D057E7A94E0D131B3B2DA035E43
-4035B9DF18C29E0F1C27784BB343E29C3B0A72008C6BF092518E461D38AA6E2E
-242C160C8E4400D441A16F05D8E03E8D5D6F1815E164E6F20E8EF30B5B96B77A
-BAEAABFD348E9EE06CFA3A62A80DC4471AF484B3D2CF9FAFF686E4C83A0D92C3
-6E2531C3752C2897C7879945AA14E8B41A2C639B1BCF8F918D63786C2ABB4D9D
-2E79066668A721797D887C66C4E95B96466B9176A594DE74F22E8CF9F94ADB13
-C03D60E6F66870F19C168FBFD4C4EBD04CF929083E917539678A91DB49A9A354
-2344410DD40D75C6FA323FFAFB59F7AB557E4461CBC4C300BEF7A30F622021E0
-CFDE12AF4BE584DE2156F49A5F4FEF52A2E9F0408A75889CF7BB127C6510230A
-3FB752438613C7F2986776E4059E047E4417C8BCB72F11C55690F9A77DCD9D26
-9A9D788966E684ADEF378730EC34A502FC016500C8C6C6DA74F7154724616619
-5F244C7BFA8275B75DAAABC217EE8E7E8EF4E5985FB49382E8ECB1C647743FDD
-7A68BA6E6401D97A14F85E366F14211301A7AB63479D78EA5A34F2B44A29D505
-2DC692B90FBB90CE7EC41636D2BF18543014CE2E61005CE67F4B94428214F67D
-A4B7A369BB7165AFDD0C55FC982AF2705D4FBD38F7536A22B7272DCDB9BD898A
-8104EDB0C5B64E447FD0470FFA6B6B2561CD26E807FDE2F1F919B0962B8948F1
-191CD320F1E43FDC64179819A95A0815BF691CEDC2FFE095A2EAEF8B93856645
-D245E608488F30A6C3B4C7A00F617EAD71AB2AE8DC6927D21398AFEFA16B4A15
-51CADCEF35759213057F135062104B9D3B06490D12549E21E387C4B15AE0E30C
-F561106C139ABFB97A1AA30EF2EAFABF6F5F52ED8CABF16DC5A7967B67D7A771
-97F1E6684850684DE037CF6CAFA94D26D42E3C084FF075DD8773B83B703664FE
-25FC046A4C986694C7E2243E1B24FE3139114E3B1B3C32FE81E7A01CBD78308E
-D52B981E6C835F8D5A281B2B4172723A6BADCECDC0D64349D04F6367E04C3CBB
-E14056F53F20287A57916C58B67B32115861D6D9ADC0110AD780C2A504D62292
-1003B07F8413827AC3B4A5C2EE101E6B94BBF660389274A06F547EB6FF79992F
-E96369EE878B23E19D785042CB6CE5CA3D3321DB9F5130AD8B86107486DDD54B
-97A3C56E10A051AAE48164EDACFD0AC7C5027FE6F60F8BF488C338479EEC7170
-12C5B22D739B92C24C2F4902A81C15EAB66EB263E124381260093D6E14BA5B7B
-CC978501621ACE9BE296A82922E88FB0AE92736CB1FB7140C30BD2A94552E62E
-464963813620B9787F5F95E12ACBC4D73759E3B708D80F23E21D6D22B965F0AC
-9408A30029445347DEA0976A5A904136EF30F48AD94B913332619EDC2E3C2F52
-05F34E9BF03A5F49A249F957905494517309E9D496CCDE11E5F74E41CB0BD0E2
-0298066B78B7D46BB3B49C21F244D9C730815E6D81C0C40FF9DF4CD72175A4D1
-032C10622954388BED78ECA0C9ABEA54181B7AFC8C0248B0544D51F3A38C0411
-B58603D5BE2AC669710F8D7BE0AFCBB50AC6916150A4D153E711E1A99D147B06
-19C24466C90E3049399B8C11D132820E76789CE71EDA9A98E0175426458F5288
-16D83D737AE6F7055281726731EE28BB6523D93C61CAFC4061A9F86409862001
-DBE1356F75162CF28D40F4C02B25A6A4F7B7E6BB436445A0C9BDB170C8BE8DDA
-F83FF3F583B1B6C142F16E25BA2F7090995C7EBC8194BA14CDC1C5679B05DFD7
-73F058D9B2A5EA7E60770BABF0FCD715C04B5BBA768C3C48BED49B97479AC241
-97D38DABA01B116F21C9886E9D2872A1C0CDE4517A1D6D30B2965CA014737AA5
-CEA6BD181012EF43CCF85868CE17E7BB6C571C61A811E343D8159A7F58D2CAAF
-D64BF588FB8E5E1012A5B4925C1634D46697F9DB01B4ACFE6AC1CEFF25E365C4
-586E160B391C92D5BC37D00FBD9278AFED9F296F1716F386B9D6B59FA47155B5
-85113AE2B63CE15E0FDF74EBBC6C56A8E44815C4351D0E375888FCEC90321051
-A44E2C6303D3D01BF8EA735DE9149D353A04AFEDAA62565D83223FBFCA2FF712
-D5C0A4FB1BD8566E3BCA3621DA5BEB5569B7ED30FCFA1023D51D5475E07F23CC
-BE21F056FF39137EB1E991801648D2DF51BECC7887EFA08C0485A8A3C03FF0E4
-4E8867BFA9EEB49C3DF1B658911124E4BE56C475293D0C83114B975765C06907
-E87B0900FE255BCFEBD3B1B438BD3DC7142BB5DCBC5531273D293BFF1457DEB8
-7D44E3745DDEDBBADBB912FE4D4E538558B1B394D1FF3DE7D967F4C26387877C
-E13517F231E7D6401050B47032296B5E942BC597918AD5AF04F254147AEE1275
-3B523FC27A6C0158DC141F86E00E51041E3F2991A055B1005F8E3C5DBB73AF32
-9D24D27E76BA
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-{restore}if
-%%EndFont 
-%%BeginFont: CMR10
-%!PS-AdobeFont-1.0: CMR10 003.002
-%%Title: CMR10
-%Version: 003.002
-%%CreationDate: Mon Jul 13 16:17:00 2009
-%%Creator: David M. Jones
-%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
-%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR10.
-% This Font Software is licensed under the SIL Open Font License, Version 1.1.
-% This license is in the accompanying file OFL.txt, and is also
-% available with a FAQ at: http://scripts.sil.org/OFL.
-%%EndComments
-FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
-/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse
-{save true}{false}ifelse}{false}ifelse
-11 dict begin
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
-/FontName /CMR10 def
-/FontBBox {-40 -250 1009 750 }readonly def
-/PaintType 0 def
-/FontInfo 9 dict dup begin
-/version (003.002) readonly def
-/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR10.) readonly def
-/FullName (CMR10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-/UnderlinePosition -100 def
-/UnderlineThickness 50 def
-end readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 0 /Gamma put
-dup 11 /ff put
-dup 12 /fi put
-dup 13 /fl put
-dup 14 /ffi put
-dup 22 /macron put
-dup 24 /cedilla put
-dup 33 /exclam put
-dup 34 /quotedblright put
-dup 36 /dollar put
-dup 37 /percent put
-dup 38 /ampersand put
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 42 /asterisk put
-dup 43 /plus put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 56 /eight put
-dup 57 /nine put
-dup 58 /colon put
-dup 59 /semicolon put
-dup 61 /equal put
-dup 63 /question put
-dup 64 /at put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 74 /J put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 81 /Q put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 87 /W put
-dup 88 /X put
-dup 89 /Y put
-dup 90 /Z put
-dup 91 /bracketleft put
-dup 92 /quotedblleft put
-dup 93 /bracketright put
-dup 96 /quoteleft put
+dup 96 /quoteleft put
 dup 97 /a put
 dup 98 /b put
 dup 99 /c put
@@ -11354,95 +11567,98 @@ cleartomark
 {restore}if
 %%EndFont 
 TeXDict begin 39158280 55380996 1000 600 600 (nco.dvi)
- at start /Fa 195[60 1[21 58[{}2 74.7198 /CMMI9 rf /Fb 172[46
-6[50 4[65 71[{}3 83.022 /CMB10 rf /Fc 131[62 4[62 2[62
-62 62 62 62 62 62 62 62 62 1[62 2[62 62 62 62 62 62 2[62
-1[62 31[62 9[62 6[62 8[62 34[{}25 119.552 /CMTT12 rf
-/Fd 207[19 33[34 13[52{}3 58.1154 /CMSY7 rf /Fe 255[60{}1
-74.7198 /CMSY9 rf /Ff 137[88 88 88 3[83 23[120 5[39 1[88
-46[66 66 32[{}9 83.022 /CMEX10 rf /Fg 135[38 3[25 31
-31 3[41 3[27 23 21[41 50 3[53 49[31 28[{}11 58.1154 /CMMI7
-rf /Fh 134[39 39 39 39 39 39 39 39 1[39 39 39 39 39 39
-1[39 39 39 39 39 39 39 39 39 1[39 8[39 39 1[39 2[39 39
-39 1[39 2[39 1[39 39 39 1[39 1[39 3[39 10[39 39 2[39
-39 5[39 39[{}43 74.7198 /CMSLTT10 rf /Fi 176[55 53 10[51
-67[{}3 66.4176 /CMTI8 rf /Fj 137[35 41 25 31 32 2[39
-43 63 20 2[24 2[24 35 39 1[35 39 97[{}15 74.7198 /CMTI9
-rf /Fk 244[100 100 100 100 8[{}4 83.022 /LCIRCLE10 rf
-/Fl 136[56 2[56 56 56 1[56 56 56 1[56 56 1[56 2[56 56
-1[56 1[56 46[56 50[{}15 109.091 /CMTT12 rf /Fm 134[41
-41 55 41 43 30 30 30 41 43 38 43 64 21 41 1[21 43 38
-23 34 43 34 43 38 10[58 58 55 1[57 2[60 58 3[39 2[60
-50 2[55 1[58 14[38 38 38 2[26 31[43 43 45 11[{}42 74.7198
-/CMSL9 rf /Fn 133[48 48 48 48 48 48 48 48 48 48 48 48
-48 48 48 48 1[48 48 48 48 48 48 48 48 48 1[48 8[48 8[48
-3[48 48 1[48 1[48 48 5[48 9[48 48 48 1[48 48 48 2[48
-2[48 1[48 37[{}43 90.9091 /CMSLTT10 rf /Fo 133[37 44
+ at start /Fa 172[46 6[50 4[65 71[{}3 83.022 /CMB10 rf /Fb
+131[62 4[62 2[62 62 62 62 62 62 62 62 62 62 1[62 2[62
+62 62 62 62 62 2[62 1[62 31[62 9[62 6[62 8[62 34[{}25
+119.552 /CMTT12 rf /Fc 207[19 33[34 13[52{}3 58.1154
+/CMSY7 rf /Fd 137[88 88 88 3[83 23[120 5[39 1[88 46[66
+66 32[{}9 83.022 /CMEX10 rf /Fe 252[38 2[60{}2 74.7198
+/CMSY9 rf /Ff 139[28 1[35 3[46 4[26 26[61 16[38 60 1[21
+58[{}8 74.7198 /CMMI9 rf /Fg 135[38 3[25 31 31 2[33 41
+3[27 23 2[32 18[41 50 3[53 49[31 28[{}13 58.1154 /CMMI7
+rf /Fh 176[65 62 10[60 67[{}3 83.022 /CMSL10 rf /Fi 134[39
+39 39 39 39 39 39 39 1[39 39 39 39 39 39 1[39 39 39 39
+39 39 39 39 39 1[39 8[39 39 1[39 2[39 39 39 1[39 2[39
+1[39 39 39 1[39 1[39 3[39 10[39 39 2[39 39 5[39 39[{}43
+74.7198 /CMSLTT10 rf /Fj 176[55 53 10[51 67[{}3 66.4176
+/CMTI8 rf /Fk 137[35 41 25 31 32 2[39 43 63 20 2[24 2[24
+35 39 1[35 39 97[{}15 74.7198 /CMTI9 rf /Fl 244[100 100
+100 100 8[{}4 83.022 /LCIRCLE10 rf /Fm 136[56 2[56 56
+56 1[56 56 56 1[56 56 1[56 2[56 56 1[56 1[56 46[56 50[{}15
+109.091 /CMTT12 rf /Fn 134[41 41 55 41 43 30 30 30 41
+43 38 43 64 21 41 1[21 43 38 23 34 43 34 43 38 10[58
+58 55 1[57 2[60 58 3[39 2[60 50 2[55 1[58 14[38 38 38
+2[26 31[43 43 45 11[{}42 74.7198 /CMSL9 rf /Fo 133[48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 48
+48 48 48 48 48 48 48 1[48 5[48 2[48 7[48 48 3[48 48 1[48
+1[48 48 48 4[48 5[48 1[48 48 48 48 48 1[48 48 48 2[48
+2[48 1[48 37[{}49 90.9091 /CMSLTT10 rf /Fp 133[37 44
 42 60 42 49 30 37 38 1[46 46 51 74 23 42 1[28 46 42 28
 42 46 42 42 46 8[68 91 1[68 65 51 66 1[62 70 68 82 57
 70 3[70 59 62 69 65 2[70 46 1[70 2[28 5[46 46 46 46 3[33
-3[37 37 28 25[53 51 12[{}55 90.9091 /CMTI10 rf /Fp 140[28
-28 1[39 2[59 7[31 1[31 10[53 72 53 53 51 39 52 1[48 55
-53 65 44 2[25 53 55 46 48 54 51 50 53 11[35 35 35 51[{}30
-66.4176 /CMR8 rf /Fq 134[48 48 66 48 51 35 36 39 1[51
-45 51 76 25 48 1[25 51 45 28 42 51 40 51 44 9[94 1[70
-63 51 69 68 62 68 71 86 55 1[47 36 71 71 57 60 70 66
-65 69 1[43 1[71 2[25 5[45 45 3[45 25 30 25 1[45 35 35
-27[51 12[{}57 90.9091 /CMB10 rf /Fr 130[39 39 39 39 39
-39 39 39 39 39 39 39 39 39 39 39 39 39 39 1[39 39 39
+3[37 37 28 25[53 51 56 11[{}56 90.9091 /CMTI10 rf /Fq
+140[28 28 1[39 2[59 7[31 1[31 10[53 72 53 53 51 39 52
+1[48 55 53 65 44 2[25 53 55 46 48 54 51 50 53 11[35 35
+35 51[{}30 66.4176 /CMR8 rf /Fr 134[48 48 66 48 51 35
+36 39 1[51 45 51 76 25 48 1[25 51 45 28 42 51 40 51 44
+9[94 1[70 63 51 69 68 62 68 71 86 55 1[47 36 71 71 57
+60 70 66 65 69 1[43 1[71 2[25 5[45 45 3[45 25 30 25 1[45
+35 35 27[51 12[{}57 90.9091 /CMB10 rf /Fs 130[39 39 39
+39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 1[39
 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39
-39 39 39 39 39 39 39 39 39 39 1[39 39 39 39 39 39 39
+39 39 39 39 39 39 39 39 39 39 39 39 1[39 39 39 39 39
 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39
-39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 34[{}90
-74.7198 /CMTT9 rf /Fs 128[38 2[77 1[34 41 41 55 41 43
+39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 34[{}90
+74.7198 /CMTT9 rf /Ft 128[38 2[77 38 34 41 41 55 41 43
 30 30 30 41 43 38 43 64 21 41 23 21 43 38 23 34 43 34
 43 38 21 2[21 38 21 47 58 58 79 58 58 55 43 57 60 52
 60 58 70 48 60 39 28 58 60 50 52 59 55 54 58 1[36 1[60
 1[21 21 38 38 38 38 38 38 38 38 38 38 38 21 26 21 60
-1[30 30 21 60 3[38 21 18[64 43 43 45 11[{}87 74.7198
-/CMR9 rf /Ft 194[51 3[33 33 33 33 33 33 33 33 33 33 4[51
-43[{}12 58.1154 /CMR7 rf /Fu 133[55 65 65 89 65 68 48
-48 50 65 68 61 68 102 34 65 1[34 68 61 37 56 68 55 68
-60 9[127 1[94 85 68 92 92 84 92 96 116 74 2[46 96 96
-77 81 94 89 87 93 7[61 61 61 61 61 61 61 61 61 61 1[34
-41 34 31[68 12[{}59 109.091 /CMBX12 rf /Fv 134[45 52
-65 44 52 33 1[41 3[55 80 27 1[37 31 1[43 1[42 47 2[48
-10[53 1[53 56 69 1[58 69 73 88 2[50 40 2[58 1[75 65 4[71
-45 71 25 25 32[52 2[55 6[37 15[{}37 90.9091 /CMMI10 rf
-/Fw 197[33 58[{}1 119.552 /CMMI12 rf /Fx 134[85 85 117
-1[90 63 64 66 1[90 81 90 134 45 85 1[45 1[81 49 74 90
-72 90 78 12[112 90 120 121 110 121 126 153 3[60 1[127
-101 106 1[117 9[81 81 81 81 81 81 81 81 81 81 48[{}44
-143.462 /CMBX12 rf /Fy 129[48 48 48 48 48 48 48 48 48
+1[30 30 21 60 3[38 21 18[64 43 43 45 11[{}88 74.7198
+/CMR9 rf /Fu 135[35 4[26 4[37 55 3[19 6[37 33 35[51 3[33
+33 33 33 33 33 33 33 33 33 4[51 43[{}19 58.1154 /CMR7
+rf /Fv 133[55 65 65 89 65 68 48 48 50 65 68 61 68 102
+34 65 1[34 68 61 37 56 68 55 68 60 9[127 1[94 85 68 92
+92 84 92 96 116 74 2[46 96 96 77 81 94 89 87 93 7[61
+61 61 61 61 61 61 61 61 61 1[34 41 34 31[68 12[{}59 109.091
+/CMBX12 rf /Fw 134[45 52 65 44 52 33 43 41 41 46 44 55
+80 27 1[37 31 1[43 45 42 47 39 1[48 10[53 1[53 56 69
+1[58 69 73 88 2[50 40 2[58 1[75 65 4[71 45 71 25 25 32[52
+2[55 6[37 15[{}43 90.9091 /CMMI10 rf /Fx 197[33 58[{}1
+119.552 /CMMI12 rf /Fy 134[85 85 117 1[90 63 64 66 1[90
+81 90 134 45 85 1[45 90 81 49 74 90 72 90 78 12[112 90
+120 121 110 121 1[153 3[60 1[127 101 106 1[117 9[81 81
+81 81 81 81 81 81 81 81 48[{}44 143.462 /CMBX12 rf /Fz
+129[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-48 48 48 48 48 48 48 48 48 48 48 48 48 33[{}94 90.9091
-/CMTT10 rf /Fz 133[40 48 48 66 48 51 35 36 36 48 51 45
-51 76 25 48 28 25 51 45 28 40 51 40 51 45 3[25 1[25 1[68
-68 93 68 68 66 51 67 71 62 71 68 83 57 2[33 68 71 59
-62 69 66 64 68 71 2[71 2[25 45 2[45 1[45 45 45 45 45
-45 1[30 3[35 35 25[76 51 51 53 11[{}69 90.9091 /CMSL10
-rf /FA 143[76 5[25 13[61 14[109 21[0 0 3[61 16[91 7[71
-3[71 71 2[71 1[45 1[91 10[71 1[71{}16 90.9091 /CMSY10
-rf /FB 133[60 71 71 97 71 75 52 53 55 71 75 67 75 112
-37 71 1[37 75 67 41 61 75 60 75 65 5[37 82 102 102 139
-102 103 94 75 100 101 92 101 105 128 81 105 69 50 105
-106 85 88 103 97 96 102 105 64 3[37 37 67 67 67 67 67
-67 67 67 67 67 67 37 45 37 1[67 2[37 1[112 67 112 21[75
-75 78 11[{}78 119.552 /CMBX12 rf /FC 134[44 44 3[32 33
-33 1[46 1[46 1[23 44 1[23 3[37 46 37 1[42 6[51 62 62
-85 62 62 60 46 61 65 57 65 62 76 52 65 43 30 62 65 54
-57 63 60 59 62 3[65 7[42 42 42 42 4[28 3[32 32 40[{}48
-83.022 /CMR10 rf /FD 131[91 45 40 48 48 66 48 51 35 36
-36 48 51 45 51 76 25 48 28 25 51 45 28 40 51 40 51 45
-25 2[25 45 25 56 68 68 93 68 68 66 51 67 71 62 71 68
-83 57 71 47 33 68 71 59 62 69 66 64 68 71 43 1[71 1[25
-25 45 45 45 45 45 45 45 45 45 45 45 25 30 25 71 45 35
-35 25 71 76 45 1[45 25 8[40 1[45 7[76 51 51 53 10[57{}94
-90.9091 /CMR10 rf /FE 138[108 1[76 79 8[54 3[88 108 14[149
-5[145 151 6[152 3[140 67[{}11 172.154 /CMBX12 rf end
+48 48 48 48 48 33[{}94 90.9091 /CMTT10 rf /FA 133[40
+48 48 66 48 51 35 36 36 48 51 45 51 76 25 48 28 25 51
+45 28 40 51 40 51 45 3[25 1[25 1[68 68 93 68 68 66 51
+67 71 62 71 68 83 57 2[33 68 71 59 62 69 66 64 68 71
+2[71 2[25 45 2[45 45 45 45 45 45 45 45 1[30 3[35 35 25[76
+51 51 53 11[{}70 90.9091 /CMSL10 rf /FB 143[76 5[25 13[61
+14[109 21[0 0 3[61 16[91 7[71 3[71 71 2[71 1[45 1[91
+9[45 71 1[71{}17 90.9091 /CMSY10 rf /FC 133[60 71 71
+97 71 75 52 53 55 71 75 67 75 112 37 71 1[37 75 67 41
+61 75 60 75 65 5[37 82 102 102 139 102 103 94 75 100
+101 92 101 105 128 81 105 69 50 105 106 85 88 103 97
+96 102 105 64 3[37 37 67 67 67 67 67 67 67 67 67 67 67
+37 45 37 1[67 2[37 1[112 67 112 21[75 75 78 11[{}78 119.552
+/CMBX12 rf /FD 134[44 44 3[32 33 33 1[46 1[46 1[23 44
+1[23 3[37 46 37 1[42 6[51 62 62 85 62 62 60 46 61 65
+57 65 62 76 52 65 43 30 62 65 54 57 63 60 59 62 3[65
+7[42 42 42 42 4[28 3[32 32 40[{}48 83.022 /CMR10 rf /FE
+131[91 45 40 48 48 66 48 51 35 36 36 48 51 45 51 76 25
+48 28 25 51 45 28 40 51 40 51 45 25 2[25 45 25 56 68
+68 93 68 68 66 51 67 71 62 71 68 83 57 71 47 33 68 71
+59 62 69 66 64 68 71 43 1[71 1[25 25 45 45 45 45 45 45
+45 45 45 45 45 25 30 25 71 45 35 35 25 71 76 45 1[45
+25 8[40 1[45 7[76 51 51 53 10[57{}94 90.9091 /CMR10 rf
+/FF 138[108 1[76 79 8[54 3[88 108 14[149 5[145 151 6[152
+3[140 67[{}11 172.154 /CMBX12 rf end
 %%EndProlog
 %%BeginSetup
 %%Feature: *Resolution 600dpi
@@ -11456,668 +11672,672 @@ ifelse
  end
 %%EndSetup
 %%Page: 1 1
-TeXDict begin 1 0 bop 150 1318 a FE(NCO)65 b(User)h(Guide)p
-150 1385 3600 34 v 2607 1481 a FD(A)31 b(suite)f(of)h(netCDF)g(op)s
-(erators)2316 1589 y(Edition)f(4.4.7,)j(for)d FC(NCO)g
-FD(V)-8 b(ersion)31 b(4.4.7)3139 1697 y(No)m(v)m(em)m(b)s(er)g(2014)150
-4802 y FB(b)l(y)45 b(Charlie)h(Zender)150 4935 y(Departmen)l(t)g(of)g
-(Earth)f(System)g(Science)150 5068 y(Univ)l(ersit)l(y)i(of)e
-(California,)i(Irvine)p 150 5141 3600 17 v eop end
+TeXDict begin 1 0 bop 150 1318 a FF(NCO)65 b(User)h(Guide)p
+150 1385 3600 34 v 2607 1481 a FE(A)31 b(suite)f(of)h(netCDF)g(op)s
+(erators)2316 1589 y(Edition)f(4.4.8,)j(for)d FD(NCO)g
+FE(V)-8 b(ersion)31 b(4.4.8)3180 1697 y(F)-8 b(ebruary)30
+b(2015)150 4802 y FC(b)l(y)45 b(Charlie)h(Zender)150
+4935 y(Departmen)l(t)g(of)g(Earth)f(System)g(Science)150
+5068 y(Univ)l(ersit)l(y)i(of)e(California,)i(Irvine)p
+150 5141 3600 17 v eop end
 %%Page: 2 2
-TeXDict begin 2 1 bop 150 2072 a FD(Cop)m(yrigh)m(t)602
-2069 y(c)577 2072 y FA(\015)30 b FD(1995{2014)35 b(Charlie)30
+TeXDict begin 2 1 bop 150 2072 a FE(Cop)m(yrigh)m(t)602
+2069 y(c)577 2072 y FB(\015)30 b FE(1995{2015)35 b(Charlie)30
 b(Zender.)150 2451 y(This)g(is)g(the)h(\014rst)e(edition)i(of)g(the)f
-Fz(NCO)g(User)h(Guide)p FD(,)150 2560 y(and)f(is)g(consisten)m(t)i
-(with)e(v)m(ersion)h(2)g(of)f Fy(texinfo.tex)p FD(.)150
+FA(NCO)g(User)h(Guide)p FE(,)150 2560 y(and)f(is)g(consisten)m(t)i
+(with)e(v)m(ersion)h(2)g(of)f Fz(texinfo.tex)p FE(.)150
 2939 y(Published)f(b)m(y)h(Charlie)h(Zender)150 3049
 y(Departmen)m(t)h(of)e(Earth)g(System)g(Science)150 3158
 y(3200)i(Croul)e(Hall)150 3268 y(Univ)m(ersit)m(y)i(of)e(California,)h
 (Irvine)150 3377 y(Irvine,)f(CA)g(92697-3100)35 b(USA)150
 3646 y(P)m(ermission)d(is)f(gran)m(ted)i(to)f(cop)m(y)-8
 b(,)33 b(distribute)e(and/or)h(mo)s(dify)f(this)g(do)s(cumen)m(t)g
-(under)g(the)g(terms)h(of)150 3756 y(the)23 b FC(GNU)h
-FD(F)-8 b(ree)24 b(Do)s(cumen)m(tation)g(License,)h(V)-8
+(under)g(the)g(terms)h(of)150 3756 y(the)23 b FD(GNU)h
+FE(F)-8 b(ree)24 b(Do)s(cumen)m(tation)g(License,)h(V)-8
 b(ersion)31 b(1.3)24 b(or)f(an)m(y)h(later)f(v)m(ersion)h(published)d
 (b)m(y)i(the)g(F)-8 b(ree)150 3866 y(Soft)m(w)m(are)27
 b(F)-8 b(oundation;)28 b(with)e(no)g(In)m(v)-5 b(arian)m(t)27
 b(Sections,)h(no)d(F)-8 b(ron)m(t-Co)m(v)m(er)29 b(T)-8
 b(exts,)28 b(and)d(no)h(Bac)m(k-Co)m(v)m(er)150 3975
 y(T)-8 b(exts.)41 b(The)30 b(license)i(is)e(a)m(v)-5
-b(ailable)33 b(online)d(at)i Fy(http://www.gnu.org/copy)o(lef)o(t/fd)o
-(l.ht)o(ml)150 4354 y FD(The)h(original)h(author)f(of)g(this)g(soft)m
+b(ailable)33 b(online)d(at)i Fz(http://www.gnu.org/copy)o(lef)o(t/fd)o
+(l.ht)o(ml)150 4354 y FE(The)h(original)h(author)f(of)g(this)g(soft)m
 (w)m(are,)i(Charlie)e(Zender,)g(w)m(an)m(ts)h(to)g(impro)m(v)m(e)g(it)f
 (with)g(the)g(help)g(of)150 4463 y(y)m(our)d(suggestions,)i(impro)m(v)m
 (emen)m(ts,)g(bug-rep)s(orts,)d(and)h(patc)m(hes.)150
-4573 y(Charlie)g(Zender)g Fy(<)p FD(surname)f(at)i(uci)f(dot)h(edu)p
-Fy(>)e FD(\(y)m(es,)j(m)m(y)f(surname)e(is)h(zender\))150
+4573 y(Charlie)g(Zender)g Fz(<)p FE(surname)f(at)i(uci)f(dot)h(edu)p
+Fz(>)e FE(\(y)m(es,)j(m)m(y)f(surname)e(is)h(zender\))150
 4682 y(Departmen)m(t)i(of)e(Earth)g(System)g(Science)150
 4792 y(3200)i(Croul)e(Hall)150 4902 y(Univ)m(ersit)m(y)i(of)e
 (California,)h(Irvine)150 5011 y(Irvine,)f(CA)g(92697-3100)p
 eop end
 %%Page: -1 3
-TeXDict begin -1 2 bop 3725 -116 a FD(i)150 299 y Fx(T)-13
-b(able)53 b(of)h(Con)l(ten)l(ts)150 632 y FB(F)-11 b(orew)l(ord)27
-b Fw(:)19 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h
+TeXDict begin -1 2 bop 3725 -116 a FE(i)150 299 y Fy(T)-13
+b(able)53 b(of)h(Con)l(ten)l(ts)150 632 y FC(F)-11 b(orew)l(ord)27
+b Fx(:)19 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)71 b FB(1)150
-898 y(Summary)18 b Fw(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f
+h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)71 b FC(1)150
+898 y(Summary)18 b Fx(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)62
-b FB(3)150 1164 y(1)135 b(In)l(tro)t(duction)13 b Fw(:)19
+b FC(3)150 1164 y(1)135 b(In)l(tro)t(duction)13 b Fx(:)19
 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)57 b FB(5)275 1301 y FD(1.1)92 b(Av)-5 b(ailabilit)m(y)26
-b Fv(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+h(:)57 b FC(5)275 1301 y FE(1.1)92 b(Av)-5 b(ailabilit)m(y)26
+b Fw(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)54 b FD(5)275 1411 y(1.2)92 b(Ho)m(w)31 b(to)g(Use)g(This)e(Guide)e
-Fv(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)54 b FE(5)275 1411 y(1.2)92 b(Ho)m(w)31 b(to)g(Use)g(This)e(Guide)e
+Fw(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)57 b FD(5)275 1520 y(1.3)92 b(Op)s(erating)30
-b(systems)g(compatible)i(with)e FC(NCO)25 b Fv(:)16 b(:)f(:)g(:)h(:)f
+h(:)f(:)h(:)f(:)g(:)h(:)57 b FE(5)275 1520 y(1.3)92 b(Op)s(erating)30
+b(systems)g(compatible)i(with)e FD(NCO)25 b Fw(:)16 b(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-56 b FD(6)399 1630 y(1.3.1)93 b(Compiling)30 b FC(NCO)g
-FD(for)g(Microsoft)i(Windo)m(ws)f FC(OS)10 b Fv(:)15
+56 b FE(6)399 1630 y(1.3.1)93 b(Compiling)30 b FD(NCO)g
+FE(for)g(Microsoft)i(Windo)m(ws)f FD(OS)10 b Fw(:)15
 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41
-b FD(7)275 1740 y(1.4)92 b(Sym)m(b)s(olic)30 b(Links)11
-b Fv(:)j(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+b FE(7)275 1740 y(1.4)92 b(Sym)m(b)s(olic)30 b(Links)11
+b Fw(:)j(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)41
-b FD(8)275 1849 y(1.5)92 b(Libraries)18 b Fv(:)d(:)g(:)g(:)h(:)f(:)h(:)
+b FE(8)275 1849 y(1.5)92 b(Libraries)18 b Fw(:)d(:)g(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)48
-b FD(9)275 1959 y(1.6)92 b(netCDF2/3/4)33 b(and)d(HDF4/5)i(Supp)s(ort)
-19 b Fv(:)14 b(:)h(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b FE(9)275 1959 y(1.6)92 b(netCDF2/3/4)33 b(and)d(HDF4/5)i(Supp)s(ort)
+19 b Fw(:)14 b(:)h(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)49
-b FD(9)275 2068 y(1.7)92 b(Help)30 b(Requests)h(and)f(Bug)g(Rep)s(orts)
-16 b Fv(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+b FE(9)275 2068 y(1.7)92 b(Help)30 b(Requests)h(and)f(Bug)g(Rep)s(orts)
+16 b Fw(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)46
-b FD(13)150 2307 y FB(2)135 b(Op)t(erator)45 b(Strategies)33
-b Fw(:)20 b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)76 b FB(15)275
-2444 y FD(2.1)92 b(Philosoph)m(y)13 b Fv(:)i(:)h(:)f(:)g(:)h(:)f(:)h(:)
+b FE(13)150 2307 y FC(2)135 b(Op)t(erator)45 b(Strategies)33
+b Fx(:)20 b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)76 b FC(15)275
+2444 y FE(2.1)92 b(Philosoph)m(y)13 b Fw(:)i(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)43 b FD(15)275 2553
-y(2.2)92 b(Climate)31 b(Mo)s(del)g(P)m(aradigm)12 b Fv(:)k(:)f(:)h(:)f
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)43 b FE(15)275 2553
+y(2.2)92 b(Climate)31 b(Mo)s(del)g(P)m(aradigm)12 b Fw(:)k(:)f(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)42
-b FD(15)275 2663 y(2.3)92 b(T)-8 b(emp)s(orary)29 b(Output)h(Files)c
-Fv(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+b FE(15)275 2663 y(2.3)92 b(T)-8 b(emp)s(orary)29 b(Output)h(Files)c
+Fw(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)55 b FD(15)275 2773 y(2.4)92 b(App)s(ending)28
-b(V)-8 b(ariables)19 b Fv(:)e(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+h(:)f(:)h(:)f(:)55 b FE(15)275 2773 y(2.4)92 b(App)s(ending)28
+b(V)-8 b(ariables)19 b Fw(:)e(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)48
-b FD(17)275 2882 y(2.5)92 b(Simple)30 b(Arithmetic)h(and)f(In)m(terp)s
-(olation)9 b Fv(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+b FE(17)275 2882 y(2.5)92 b(Simple)30 b(Arithmetic)h(and)f(In)m(terp)s
+(olation)9 b Fw(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
-b FD(17)275 2992 y(2.6)92 b(Statistics)32 b(vs.)e(Concatenation)19
-b Fv(:)f(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+b FE(17)275 2992 y(2.6)92 b(Statistics)32 b(vs.)e(Concatenation)19
+b Fw(:)f(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
-(:)49 b FD(18)399 3101 y(2.6.1)93 b(Concatenators)32
-b Fy(ncrcat)c FD(and)i Fy(ncecat)8 b Fv(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h
+(:)49 b FE(18)399 3101 y(2.6.1)93 b(Concatenators)32
+b Fz(ncrcat)c FE(and)i Fz(ncecat)8 b Fw(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38
-b FD(18)399 3211 y(2.6.2)93 b(Av)m(eragers)32 b Fy(nces)p
-FD(,)d Fy(ncra)p FD(,)g(and)h Fy(ncwa)17 b Fv(:)e(:)g(:)g(:)h(:)f(:)h
+b FE(18)399 3211 y(2.6.2)93 b(Av)m(eragers)32 b Fz(nces)p
+FE(,)d Fz(ncra)p FE(,)g(and)h Fz(ncwa)17 b Fw(:)e(:)g(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
-f(:)g(:)47 b FD(19)399 3321 y(2.6.3)93 b(In)m(terp)s(olator)31
-b Fy(ncflint)15 b Fv(:)f(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+f(:)g(:)47 b FE(19)399 3321 y(2.6.3)93 b(In)m(terp)s(olator)31
+b Fz(ncflint)15 b Fw(:)f(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)45 b FD(19)275 3430 y(2.7)92
-b(Large)31 b(Num)m(b)s(ers)e(of)h(Files)8 b Fv(:)17 b(:)e(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)45 b FE(19)275 3430 y(2.7)92
+b(Large)31 b(Num)m(b)s(ers)e(of)h(Files)8 b Fw(:)17 b(:)e(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)38
-b FD(19)275 3540 y(2.8)92 b(Large)31 b(Datasets)13 b
-Fv(:)18 b(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+b FE(19)275 3540 y(2.8)92 b(Large)31 b(Datasets)13 b
+Fw(:)18 b(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)43
-b FD(21)275 3649 y(2.9)92 b(Memory)30 b(Requiremen)m(ts)23
-b Fv(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b FE(21)275 3649 y(2.9)92 b(Memory)30 b(Requiremen)m(ts)23
+b Fw(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)53 b FD(22)399 3759 y(2.9.1)93
+g(:)h(:)f(:)h(:)f(:)g(:)53 b FE(22)399 3759 y(2.9.1)93
 b(Single)31 b(and)e(Multi-\014le)j(Op)s(erators)19 b
-Fv(:)c(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)49 b FD(22)399
-3869 y(2.9.2)93 b(Memory)31 b(for)f Fy(ncap2)c Fv(:)16
+Fw(:)c(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)49 b FE(22)399
+3869 y(2.9.2)93 b(Memory)31 b(for)f Fz(ncap2)c Fw(:)16
 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)57 b FD(23)275 3978 y(2.10)92 b(P)m(erformance)21
-b Fv(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+h(:)f(:)h(:)57 b FE(23)275 3978 y(2.10)92 b(P)m(erformance)21
+b Fw(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)50
-b FD(24)150 4217 y FB(3)135 b(NCO)45 b(F)-11 b(eatures)32
-b Fw(:)20 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)77
-b FB(25)275 4354 y FD(3.1)92 b(In)m(ternationalization)21
-b Fv(:)d(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
+b FE(24)150 4217 y FC(3)135 b(Shared)44 b(F)-11 b(eatures)34
+b Fx(:)19 b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)78
+b FC(25)275 4354 y FE(3.1)92 b(In)m(ternationalization)21
+b Fw(:)d(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)51 b FD(25)275 4463
-y(3.2)92 b(Metadata)32 b(Optimization)27 b Fv(:)15 b(:)h(:)f(:)g(:)h(:)
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)51 b FE(25)275 4463
+y(3.2)92 b(Metadata)32 b(Optimization)27 b Fw(:)15 b(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)55
-b FD(25)275 4573 y(3.3)92 b(Op)s(enMP)29 b(Threading)13
-b Fv(:)i(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
+b FE(25)275 4573 y(3.3)92 b(Op)s(enMP)29 b(Threading)13
+b Fw(:)i(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)43 b FD(25)275 4682
-y(3.4)92 b(Command)29 b(Line)h(Options)16 b Fv(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)43 b FE(25)275 4682
+y(3.4)92 b(Command)29 b(Line)h(Options)16 b Fw(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)45
-b FD(27)275 4792 y(3.5)92 b(Sp)s(ecifying)29 b(Input)g(Files)17
-b Fv(:)g(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+b FE(27)275 4792 y(3.5)92 b(Sp)s(ecifying)29 b(Input)g(Files)17
+b Fw(:)g(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)46 b FD(28)275 4902 y(3.6)92
-b(Sp)s(ecifying)29 b(Output)h(Files)21 b Fv(:)16 b(:)f(:)h(:)f(:)g(:)h
+(:)h(:)f(:)g(:)h(:)f(:)h(:)46 b FE(28)275 4902 y(3.6)92
+b(Sp)s(ecifying)29 b(Output)h(Files)21 b Fw(:)16 b(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)50
-b FD(30)275 5011 y(3.7)92 b(Accessing)31 b(Remote)h(Files)c
-Fv(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+b FE(30)275 5011 y(3.7)92 b(Accessing)31 b(Remote)h(Files)c
+Fw(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)57 b FD(30)399 5121 y(3.7.1)93 b
-FC(OP)n(eND)n(AP)15 b Fv(:)f(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)57 b FE(30)399 5121 y(3.7.1)93 b
+FD(OP)n(eND)n(AP)15 b Fw(:)f(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)45 b FD(32)275 5230 y(3.8)92 b(Retaining)31 b(Retriev)m(ed)h(Files)
-d Fv(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+f(:)45 b FE(32)275 5230 y(3.8)92 b(Retaining)31 b(Retriev)m(ed)h(Files)
+d Fw(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)g(:)58 b FD(35)275 5340 y(3.9)92 b(File)31 b(F)-8
-b(ormats)32 b(and)d(Con)m(v)m(ersion)19 b Fv(:)e(:)e(:)h(:)f(:)h(:)f(:)
+h(:)f(:)g(:)58 b FE(35)275 5340 y(3.9)92 b(File)31 b(F)-8
+b(ormats)32 b(and)d(Con)m(v)m(ersion)19 b Fw(:)e(:)e(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)49 b FD(35)p eop
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)49 b FE(35)p eop
 end
 %%Page: -2 4
-TeXDict begin -2 3 bop 150 -116 a FD(ii)2667 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)399 83 y(3.9.1)93 b(File)31
-b(F)-8 b(ormats)22 b Fv(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+TeXDict begin -2 3 bop 150 -116 a FE(ii)2667 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)399 83 y(3.9.1)93 b(File)31
+b(F)-8 b(ormats)22 b Fw(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)52
-b FD(36)399 193 y(3.9.2)93 b(Determining)31 b(File)h(F)-8
-b(ormat)20 b Fv(:)d(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
+b FE(36)399 193 y(3.9.2)93 b(Determining)31 b(File)h(F)-8
+b(ormat)20 b Fw(:)d(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)50 b FD(37)399 302 y(3.9.3)93 b(File)31 b(Con)m(v)m(ersion)c
-Fv(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+f(:)50 b FE(37)399 302 y(3.9.3)93 b(File)31 b(Con)m(v)m(ersion)c
+Fw(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)56 b FD(38)399 412 y(3.9.4)93
-b(Auto)s(con)m(v)m(ersion)8 b Fv(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)56 b FE(38)399 412 y(3.9.4)93
+b(Auto)s(con)m(v)m(ersion)8 b Fw(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)38
-b FD(39)275 521 y(3.10)92 b(Large)31 b(File)h(Supp)s(ort)12
-b Fv(:)h(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+b FE(39)275 521 y(3.10)92 b(Large)31 b(File)h(Supp)s(ort)12
+b Fw(:)h(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)42 b FD(40)275 631
-y(3.11)92 b(Subsetting)30 b(Files)12 b Fv(:)k(:)g(:)f(:)g(:)h(:)f(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)42 b FE(40)275 631
+y(3.11)92 b(Subsetting)30 b(Files)12 b Fw(:)k(:)g(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)41 b FD(40)275 741 y(3.12)92 b(Subsetting)30
-b(Co)s(ordinate)h(V)-8 b(ariables)9 b Fv(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f
+(:)f(:)g(:)h(:)41 b FE(40)275 741 y(3.12)92 b(Subsetting)30
+b(Co)s(ordinate)h(V)-8 b(ariables)9 b Fw(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)39 b FD(45)275 850 y(3.13)92 b(Group)30
-b(P)m(ath)h(Editing)11 b Fv(:)k(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+g(:)h(:)f(:)h(:)f(:)39 b FE(45)275 850 y(3.13)92 b(Group)30
+b(P)m(ath)h(Editing)11 b Fw(:)k(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41
-b FD(46)399 960 y(3.13.1)93 b(Deletion,)33 b(T)-8 b(runcation,)31
-b(and)e(Flattening)k(of)d(Groups)13 b Fv(:)h(:)i(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)42 b FD(46)399 1069 y(3.13.2)93 b(Mo)m(ving)32
-b(Groups)25 b Fv(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b FE(46)399 960 y(3.13.1)93 b(Deletion,)33 b(T)-8 b(runcation,)31
+b(and)e(Flattening)k(of)d(Groups)13 b Fw(:)h(:)i(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)42 b FE(46)399 1069 y(3.13.2)93 b(Mo)m(ving)32
+b(Groups)25 b Fw(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)55 b FD(48)399
+f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)55 b FE(48)399
 1179 y(3.13.3)93 b(Dismem)m(b)s(ering)31 b(Files)20 b
-Fv(:)d(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+Fw(:)d(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)50 b FD(49)399 1289 y(3.13.4)93 b(Chec)m(king)31
-b(CF-compliance)20 b Fv(:)e(:)d(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+h(:)f(:)50 b FE(49)399 1289 y(3.13.4)93 b(Chec)m(king)31
+b(CF-compliance)20 b Fw(:)e(:)d(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)50 b FD(51)275 1398 y(3.14)92 b(C)30 b(and)g(F)-8
-b(ortran)31 b(Index)e(con)m(v)m(en)m(tions)15 b Fv(:)j(:)e(:)f(:)g(:)h
+h(:)f(:)50 b FE(51)275 1398 y(3.14)92 b(C)30 b(and)g(F)-8
+b(ortran)31 b(Index)e(con)m(v)m(en)m(tions)15 b Fw(:)j(:)e(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)45 b FD(54)275 1508 y(3.15)92
-b(Hyp)s(erslabs)10 b Fv(:)k(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+f(:)g(:)h(:)f(:)h(:)f(:)45 b FE(54)275 1508 y(3.15)92
+b(Hyp)s(erslabs)10 b Fw(:)k(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)39 b FD(55)275 1617 y(3.16)92 b(Stride)9
-b Fv(:)15 b(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)g(:)h(:)39 b FE(55)275 1617 y(3.16)92 b(Stride)9
+b Fw(:)15 b(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)38 b FD(57)275 1727 y(3.17)92 b(Record)31
-b(App)s(ending)18 b Fv(:)c(:)h(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)38 b FE(57)275 1727 y(3.17)92 b(Record)31
+b(App)s(ending)18 b Fw(:)c(:)h(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)48
-b FD(58)275 1836 y(3.18)92 b(Sub)s(cycle)14 b Fv(:)h(:)g(:)h(:)f(:)g(:)
+b FE(58)275 1836 y(3.18)92 b(Sub)s(cycle)14 b Fw(:)h(:)g(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)44 b
-FD(59)275 1946 y(3.19)92 b(Multislabs)22 b Fv(:)16 b(:)g(:)f(:)h(:)f(:)
+FE(59)275 1946 y(3.19)92 b(Multislabs)22 b Fw(:)16 b(:)g(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)52 b FD(60)275
+g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)52 b FE(60)275
 2056 y(3.20)92 b(W)-8 b(rapp)s(ed)30 b(Co)s(ordinates)16
-b Fv(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+b Fw(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)46 b FD(63)275 2165 y(3.21)92
-b(Auxiliary)31 b(Co)s(ordinates)11 b Fv(:)k(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)h(:)f(:)h(:)f(:)g(:)46 b FE(63)275 2165 y(3.21)92
+b(Auxiliary)31 b(Co)s(ordinates)11 b Fw(:)k(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41
-b FD(64)275 2275 y(3.22)92 b(UDUnits)31 b(Supp)s(ort)18
-b Fv(:)13 b(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+b FE(64)275 2275 y(3.22)92 b(UDUnits)31 b(Supp)s(ort)18
+b Fw(:)13 b(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)48 b FD(66)275
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)48 b FE(66)275
 2384 y(3.23)92 b(Rebasing)31 b(Time)f(Co)s(ordinate)17
-b Fv(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+b Fw(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)46 b FD(69)275 2494 y(3.24)92 b(Multiple)31 b(Record)g(Dimensions)c
-Fv(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)46 b FE(69)275 2494 y(3.24)92 b(Multiple)31 b(Record)g(Dimensions)c
+Fw(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)57
-b FD(70)275 2604 y(3.25)92 b(Missing)31 b(v)-5 b(alues)24
-b Fv(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b FE(70)275 2604 y(3.25)92 b(Missing)31 b(v)-5 b(alues)24
+b Fw(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)53
-b FD(71)275 2713 y(3.26)92 b(Ch)m(unking)16 b Fv(:)f(:)g(:)h(:)f(:)g(:)
+b FE(71)275 2713 y(3.26)92 b(Ch)m(unking)16 b Fw(:)f(:)g(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)46 b FD(72)275
-2823 y(3.27)92 b(De\015ation)29 b Fv(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)57 b FD(78)275 2932
-y(3.28)92 b(MD5)32 b(digests)20 b Fv(:)c(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)50 b FD(79)275 3042 y(3.29)92 b(Bu\013er)30
-b(sizes)23 b Fv(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)46 b FE(72)275
+2823 y(3.27)92 b(Compression)16 b Fw(:)f(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)45 b FE(78)275 2932 y(3.28)92 b(De\015ation)29
+b Fw(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)52 b FD(80)275 3152 y(3.30)92 b(RAM)31 b(disks)26
-b Fv(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)57 b FE(88)275 3042 y(3.29)92 b(MD5)32 b(digests)20
+b Fw(:)c(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)50
+b FE(89)275 3152 y(3.30)92 b(Bu\013er)30 b(sizes)23 b
+Fw(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)56
-b FD(81)275 3261 y(3.31)92 b(P)m(ac)m(k)m(ed)32 b(data)27
-b Fv(:)15 b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)52
+b FE(90)275 3261 y(3.31)92 b(RAM)31 b(disks)26 b Fw(:)15
+b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)56
+b FE(91)275 3371 y(3.32)92 b(P)m(ac)m(k)m(ed)32 b(data)27
+b Fw(:)15 b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)56
-b FD(82)399 3371 y(P)m(ac)m(king)32 b(Algorithm)19 b
-Fv(:)e(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b FE(92)399 3480 y(P)m(ac)m(king)32 b(Algorithm)19 b
+Fw(:)e(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)49 b FD(82)399
-3480 y(Unpac)m(king)31 b(Algorithm)26 b Fv(:)15 b(:)g(:)h(:)f(:)h(:)f
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)49 b FE(92)399
+3590 y(Unpac)m(king)31 b(Algorithm)26 b Fw(:)15 b(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)54 b FD(83)399 3590 y(Default)32 b(Handling)e(of)h(P)m(ac)m(k)m
-(ed)h(Data)14 b Fv(:)j(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)h(:)54 b FE(93)399 3699 y(Default)32 b(Handling)e(of)h(P)m(ac)m(k)m
+(ed)h(Data)14 b Fw(:)j(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)44 b FD(83)399 3699 y(Default)32 b(Handling)e(of)h(P)m(ac)m(k)m(ed)
-h(Data)14 b Fv(:)j(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+f(:)44 b FE(93)399 3809 y(Default)32 b(Handling)e(of)h(P)m(ac)m(k)m(ed)
+h(Data)14 b Fw(:)j(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-44 b FD(84)275 3809 y(3.32)92 b(Op)s(eration)30 b(T)m(yp)s(es)14
-b Fv(:)g(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+44 b FE(94)275 3919 y(3.33)92 b(Op)s(eration)30 b(T)m(yp)s(es)14
+b Fw(:)g(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)43 b FD(84)275
-3919 y(3.33)92 b(T)m(yp)s(e)30 b(Con)m(v)m(ersion)14
-b Fv(:)h(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)43 b FD(89)399
-4028 y(3.33.1)93 b(Automatic)32 b(t)m(yp)s(e)f(con)m(v)m(ersion)21
-b Fv(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50
-b FD(90)399 4138 y(3.33.2)93 b(Promoting)31 b(Single-precision)h(to)f
-(Double)12 b Fv(:)j(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)41 b FD(92)399 4247 y(3.33.3)93
-b(Man)m(ual)32 b(t)m(yp)s(e)e(con)m(v)m(ersion)22 b Fv(:)17
-b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)52
-b FD(98)275 4357 y(3.34)92 b(Batc)m(h)32 b(Mo)s(de)26
-b Fv(:)15 b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)43 b FE(94)275
+4028 y(3.34)92 b(T)m(yp)s(e)30 b(Con)m(v)m(ersion)11
+b Fw(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)41 b FE(100)399
+4138 y(3.34.1)93 b(Automatic)32 b(t)m(yp)s(e)f(con)m(v)m(ersion)18
+b Fw(:)f(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)48 b
+FE(100)399 4247 y(3.34.2)93 b(Promoting)31 b(Single-precision)h(to)f
+(Double)9 b Fw(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)39 b FE(102)399 4357 y(3.34.3)93
+b(Man)m(ual)32 b(t)m(yp)s(e)e(con)m(v)m(ersion)19 b Fw(:)e(:)f(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)56
-b FD(98)275 4467 y(3.35)92 b(History)31 b(A)m(ttribute)21
-b Fv(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)51 b FD(98)275
-4576 y(3.36)92 b(File)32 b(List)e(A)m(ttributes)24 b
-Fv(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)53 b FD(99)275 4686 y(3.37)92
-b FC(CF)31 b FD(Con)m(v)m(en)m(tions)15 b Fv(:)h(:)f(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)50 b FE(108)275
+4467 y(3.35)92 b(Batc)m(h)32 b(Mo)s(de)24 b Fw(:)15 b(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)53 b FE(108)275 4576 y(3.36)92
+b(History)31 b(A)m(ttribute)18 b Fw(:)f(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)44 b FD(99)275 4795 y(3.38)92 b FC(ARM)31
-b FD(Con)m(v)m(en)m(tions)10 b Fv(:)16 b(:)g(:)f(:)h(:)f(:)h(:)f(:)g(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)49
+b FE(108)275 4686 y(3.37)92 b(File)32 b(List)e(A)m(ttributes)21
+b Fw(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)51 b FE(109)275 4795 y(3.38)92
+b FD(CF)31 b FE(Con)m(v)m(en)m(tions)12 b Fw(:)k(:)g(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)42 b FE(110)275 4905 y(3.39)92 b FD(ARM)31
+b FE(Con)m(v)m(en)m(tions)10 b Fw(:)16 b(:)g(:)f(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)40
-b FD(102)275 4905 y(3.39)92 b(Op)s(erator)30 b(V)-8 b(ersion)25
-b Fv(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+b FE(112)275 5015 y(3.40)92 b(Op)s(erator)30 b(V)-8 b(ersion)25
+b Fw(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)55 b FD(102)p eop
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)55 b FE(112)p eop
 end
 %%Page: -3 5
-TeXDict begin -3 4 bop 3674 -116 a FD(iii)150 83 y FB(4)135
-b(Op)t(erator)45 b(Reference)h(Man)l(ual)19 b Fw(:)h(:)f(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)63 b FB(103)275
-220 y FD(4.1)92 b Fy(ncap2)29 b FD(netCDF)i(Arithmetic)g(Pro)s(cessor)
-23 b Fv(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)53 b FD(104)399
-330 y(4.1.1)93 b(Syn)m(tax)30 b(of)h Fy(ncap2)e FD(statemen)m(ts)22
-b Fv(:)c(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)53 b
-FD(105)399 439 y(4.1.2)93 b(Expressions)20 b Fv(:)14
+TeXDict begin -3 4 bop 3674 -116 a FE(iii)150 83 y FC(4)135
+b(Reference)46 b(Man)l(ual)20 b Fx(:)g(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+h(:)64 b FC(115)275 220 y FE(4.1)92 b Fz(ncap2)29 b FE(netCDF)i
+(Arithmetic)g(Pro)s(cessor)23 b Fw(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)53
+b FE(116)399 330 y(4.1.1)93 b(Syn)m(tax)30 b(of)h Fz(ncap2)e
+FE(statemen)m(ts)22 b Fw(:)c(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)53
+b FE(117)399 439 y(4.1.2)93 b(Expressions)20 b Fw(:)14
 b(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)50 b FD(105)399 549
-y(4.1.3)93 b(Dimensions)25 b Fv(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)50 b FE(117)399 549
+y(4.1.3)93 b(Dimensions)25 b Fw(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
-(:)55 b FD(109)399 658 y(4.1.4)93 b(Left)31 b(hand)e(casting)d
-Fv(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)55 b FE(121)399 658 y(4.1.4)93 b(Left)31 b(hand)e(casting)d
+Fw(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)55 b FD(110)399 768 y(4.1.5)93 b(Arra)m(ys)30
-b(and)g(h)m(yp)s(erslabs)9 b Fv(:)14 b(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+f(:)g(:)h(:)f(:)h(:)55 b FE(122)399 768 y(4.1.5)93 b(Arra)m(ys)30
+b(and)g(h)m(yp)s(erslabs)9 b Fw(:)14 b(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)39 b FD(110)399 878 y(4.1.6)93
-b(A)m(ttributes)28 b Fv(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)39 b FE(122)399 878 y(4.1.6)93
+b(A)m(ttributes)28 b Fw(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)57
-b FD(113)399 987 y(4.1.7)93 b(Num)m(b)s(er)29 b(literals)23
-b Fv(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b FE(125)399 987 y(4.1.7)93 b(Num)m(b)s(er)29 b(literals)23
+b Fw(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)53 b FD(114)399 1097 y(4.1.8)93
-b(if)30 b(statemen)m(t)15 b Fv(:)i(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)53 b FE(126)399 1097 y(4.1.8)93
+b(if)30 b(statemen)m(t)15 b Fw(:)i(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)45
-b FD(115)399 1206 y(4.1.9)93 b(prin)m(t)30 b(statemen)m(t)c
-Fv(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+b FE(127)399 1206 y(4.1.9)93 b(prin)m(t)30 b(statemen)m(t)c
+Fw(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)55 b FD(117)399 1316 y(4.1.10)93
-b(Missing)31 b(v)-5 b(alues)31 b(ncap2)14 b Fv(:)i(:)f(:)g(:)h(:)f(:)h
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)55 b FE(129)399 1316 y(4.1.10)93
+b(Missing)31 b(v)-5 b(alues)31 b(ncap2)14 b Fw(:)i(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b FD(117)399
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b FE(129)399
 1425 y(4.1.11)93 b(Metho)s(ds)31 b(and)e(functions)16
-b Fv(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+b Fw(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)46
-b FD(119)399 1535 y(4.1.12)93 b FC(RAM)31 b FD(v)-5 b(ariables)22
-b Fv(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b FE(131)399 1535 y(4.1.12)93 b FD(RAM)31 b FE(v)-5 b(ariables)22
+b Fw(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)52 b FD(121)399 1645 y(4.1.13)93
-b(Where)31 b(statemen)m(t)9 b Fv(:)18 b(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)52 b FE(134)399 1645 y(4.1.13)93
+b(Where)31 b(statemen)m(t)9 b Fw(:)18 b(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)39 b
-FD(122)399 1754 y(4.1.14)93 b(Lo)s(ops)10 b Fv(:)15 b(:)h(:)f(:)h(:)f
+FE(134)399 1754 y(4.1.14)93 b(Lo)s(ops)10 b Fw(:)15 b(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)40 b FD(124)399
-1864 y(4.1.15)93 b(Include)30 b(\014les)13 b Fv(:)j(:)f(:)h(:)f(:)g(:)h
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)40 b FE(136)399
+1864 y(4.1.15)93 b(Include)30 b(\014les)13 b Fw(:)j(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)43 b FD(125)399 1973 y(4.1.16)93 b Fy(sort)30
-b FD(metho)s(ds)11 b Fv(:)k(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)f(:)h(:)43 b FE(137)399 1973 y(4.1.16)93 b Fz(sort)30
+b FE(metho)s(ds)11 b Fw(:)k(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)41 b
-FD(125)399 2083 y(4.1.17)93 b(Irregular)30 b(Grids)12
-b Fv(:)k(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+FE(137)399 2083 y(4.1.17)93 b(Irregular)30 b(Grids)12
+b Fw(:)k(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)g(:)43 b FD(130)399 2193 y(4.1.18)93
-b(Bilinear)32 b(in)m(terp)s(olation)26 b Fv(:)16 b(:)f(:)h(:)f(:)g(:)h
+(:)g(:)h(:)f(:)h(:)f(:)g(:)43 b FE(142)399 2193 y(4.1.18)93
+b(Bilinear)32 b(in)m(terp)s(olation)26 b Fw(:)16 b(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55 b FD(132)399
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55 b FE(144)399
 2302 y(4.1.19)93 b(GSL)30 b(sp)s(ecial)h(functions)18
-b Fv(:)e(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+b Fw(:)e(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)48
-b FD(134)399 2412 y(4.1.20)93 b(GSL)30 b(in)m(terp)s(olation)11
-b Fv(:)17 b(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b FE(146)399 2412 y(4.1.20)93 b(GSL)30 b(in)m(terp)s(olation)11
+b Fw(:)17 b(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)41 b FD(142)399 2521 y(4.1.21)93 b(GSL)30
-b(least-squares)i(\014tting)19 b Fv(:)d(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+h(:)f(:)g(:)h(:)41 b FE(154)399 2521 y(4.1.21)93 b(GSL)30
+b(least-squares)i(\014tting)19 b Fw(:)d(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)49 b FD(143)399 2631 y(4.1.22)93 b(GSL)30
-b(statistics)11 b Fv(:)17 b(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+g(:)h(:)f(:)h(:)49 b FE(155)399 2631 y(4.1.22)93 b(GSL)30
+b(statistics)11 b Fw(:)17 b(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41 b
-FD(145)399 2741 y(4.1.23)93 b(GSL)30 b(random)g(n)m(um)m(b)s(er)f
-(generation)10 b Fv(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)40 b FD(146)399
-2850 y(4.1.24)93 b(Examples)31 b(ncap2)d Fv(:)15 b(:)h(:)f(:)g(:)h(:)f
+FE(157)399 2741 y(4.1.23)93 b(GSL)30 b(random)g(n)m(um)m(b)s(er)f
+(generation)10 b Fw(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)40 b FE(159)399
+2850 y(4.1.24)93 b(Examples)31 b(ncap2)d Fw(:)15 b(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58
-b FD(149)399 2960 y(4.1.25)93 b(In)m(trinsic)31 b(mathematical)h(metho)
-s(ds)20 b Fv(:)c(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)51 b FD(151)399 3069
+b FE(161)399 2960 y(4.1.25)93 b(In)m(trinsic)31 b(mathematical)h(metho)
+s(ds)20 b Fw(:)c(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)51 b FE(163)399 3069
 y(4.1.26)93 b(Op)s(erator)30 b(precedence)h(and)f(asso)s(ciativit)m(y)
-15 b Fv(:)j(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)45 b FD(153)399 3179 y(4.1.27)93 b(ID)31 b(Quoting)22
-b Fv(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+15 b Fw(:)j(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)45 b FE(165)399 3179 y(4.1.27)93 b(ID)31 b(Quoting)22
+b Fw(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)52 b FD(153)275
-3289 y(4.2)92 b Fy(ncatted)28 b FD(netCDF)j(A)m(ttribute)g(Editor)c
-Fv(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)57 b FD(156)275
-3398 y(4.3)92 b Fy(ncbo)29 b FD(netCDF)i(Binary)f(Op)s(erator)16
-b Fv(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)52 b FE(166)275
+3289 y(4.2)92 b Fz(ncatted)28 b FE(netCDF)j(A)m(ttribute)g(Editor)c
+Fw(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)57 b FE(168)275
+3398 y(4.3)92 b Fz(ncbo)29 b FE(netCDF)i(Binary)f(Op)s(erator)16
+b Fw(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)46
-b FD(162)275 3508 y(4.4)92 b Fy(nces)29 b FD(netCDF)i(Ensem)m(ble)f
-(Statistics)21 b Fv(:)c(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+b FE(174)275 3508 y(4.4)92 b Fz(nces)29 b FE(netCDF)i(Ensem)m(ble)f
+(Statistics)21 b Fw(:)c(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)51
-b FD(167)275 3617 y(4.5)92 b Fy(ncecat)28 b FD(netCDF)j(Ensem)m(ble)g
-(Concatenator)9 b Fv(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)39 b FD(170)275
-3727 y(4.6)92 b Fy(ncflint)28 b FD(netCDF)j(File)h(In)m(terp)s(olator)
-27 b Fv(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)57 b FD(173)275
-3836 y(4.7)92 b Fy(ncks)29 b FD(netCDF)i(Kitc)m(hen)g(Sink)8
-b Fv(:)14 b(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+b FE(179)275 3617 y(4.5)92 b Fz(ncecat)28 b FE(netCDF)j(Ensem)m(ble)g
+(Concatenator)9 b Fw(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)39 b FE(182)275
+3727 y(4.6)92 b Fz(ncflint)28 b FE(netCDF)j(File)h(In)m(terp)s(olator)
+27 b Fw(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)57 b FE(185)275
+3836 y(4.7)92 b Fz(ncks)29 b FE(netCDF)i(Kitc)m(hen)g(Sink)8
+b Fw(:)14 b(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)38 b FD(176)399 3946 y(Options)30 b(sp)s(eci\014c)g(to)h
-Fy(ncks)11 b Fv(:)k(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+h(:)38 b FE(188)399 3946 y(Options)30 b(sp)s(eci\014c)g(to)h
+Fz(ncks)11 b Fw(:)k(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b FD(177)399 4056
-y(4.7.2)93 b(Filters)31 b(for)f Fy(ncks)24 b Fv(:)15
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b FE(189)399 4056
+y(4.7.2)93 b(Filters)31 b(for)f Fz(ncks)24 b Fw(:)15
 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)54 b FD(184)275 4165 y(4.8)92 b Fy(ncpdq)29
-b FD(netCDF)i(P)m(erm)m(ute)g(Dimensions)f(Quic)m(kly)f
-Fv(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)58 b FD(190)399 4275 y(P)m(ac)m(king)32 b(and)e(Unpac)m(king)h(F)-8
-b(unctions)16 b Fv(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+f(:)g(:)h(:)f(:)h(:)54 b FE(196)275 4165 y(4.8)92 b Fz(ncpdq)29
+b FE(netCDF)i(P)m(erm)m(ute)g(Dimensions)f(Quic)m(kly)f
+Fw(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)58 b FE(202)399 4275 y(P)m(ac)m(king)32 b(and)e(Unpac)m(king)h(F)-8
+b(unctions)16 b Fw(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)46
-b FD(190)399 4384 y(Dimension)31 b(P)m(erm)m(utation)19
-b Fv(:)e(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+b FE(202)399 4384 y(Dimension)31 b(P)m(erm)m(utation)19
+b Fw(:)e(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)50 b FD(193)275 4494 y(4.9)92
-b Fy(ncra)29 b FD(netCDF)i(Record)f(Av)m(erager)13 b
-Fv(:)18 b(:)d(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)h(:)f(:)h(:)f(:)g(:)50 b FE(205)275 4494 y(4.9)92
+b Fz(ncra)29 b FE(netCDF)i(Record)f(Av)m(erager)13 b
+Fw(:)18 b(:)d(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)43
-b FD(198)275 4604 y(4.10)92 b Fy(ncrcat)29 b FD(netCDF)i(Record)f
-(Concatenator)15 b Fv(:)i(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)45 b FD(200)275
-4713 y(4.11)92 b Fy(ncrename)28 b FD(netCDF)j(Renamer)10
-b Fv(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b FE(210)275 4604 y(4.10)92 b Fz(ncrcat)29 b FE(netCDF)i(Record)f
+(Concatenator)15 b Fw(:)i(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)45 b FE(212)275
+4713 y(4.11)92 b Fz(ncrename)28 b FE(netCDF)j(Renamer)10
+b Fw(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)40
-b FD(202)275 4823 y(4.12)92 b Fy(ncwa)29 b FD(netCDF)i(W)-8
-b(eigh)m(ted)33 b(Av)m(erager)27 b Fv(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)
+b FE(214)275 4823 y(4.12)92 b Fz(ncwa)29 b FE(netCDF)i(W)-8
+b(eigh)m(ted)33 b(Av)m(erager)27 b Fw(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)56 b FD(206)399 4932 y(4.12.1)93 b(Mask)31 b(condition)26
-b Fv(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)56 b FE(218)399 4932 y(4.12.1)93 b(Mask)31 b(condition)26
+b Fw(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)55 b FD(207)399 5042 y(4.12.2)93
-b(Normalization)33 b(and)d(In)m(tegration)8 b Fv(:)17
+f(:)h(:)f(:)g(:)h(:)f(:)55 b FE(219)399 5042 y(4.12.2)93
+b(Normalization)33 b(and)d(In)m(tegration)8 b Fw(:)17
 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b FD(208)p eop end
+(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b FE(220)p eop end
 %%Page: -4 6
-TeXDict begin -4 5 bop 150 -116 a FD(iv)2644 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 83 y FB(5)135 b(Con)l(tributing)14
-b Fw(:)20 b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
+TeXDict begin -4 5 bop 150 -116 a FE(iv)2644 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 83 y FC(5)135 b(Con)l(tributing)14
+b Fx(:)20 b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-58 b FB(211)275 220 y FD(5.1)92 b(Con)m(tributors)15
-b Fv(:)f(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+58 b FC(223)275 220 y FE(5.1)92 b(Con)m(tributors)15
+b Fw(:)f(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)45
-b FD(211)275 330 y(5.2)92 b(Citation)25 b Fv(:)15 b(:)h(:)f(:)h(:)f(:)g
+b FE(223)275 330 y(5.2)92 b(Citation)25 b Fw(:)15 b(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)54 b FD(213)275
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)54 b FE(225)275
 439 y(5.3)92 b(Prop)s(osals)30 b(for)g(Institutional)h(F)-8
-b(unding)13 b Fv(:)i(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+b(unding)13 b Fw(:)i(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)43
-b FD(213)150 682 y FB(6)135 b(Quic)l(k)45 b(Start)26
-b Fw(:)20 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b FE(225)150 682 y FC(6)135 b(Quic)l(k)45 b(Start)26
+b Fx(:)20 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)70 b FB(215)275 819 y FD(6.1)92 b(Daily)31 b(data)g(in)f(one)h
-(\014le)11 b Fv(:)k(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+f(:)70 b FC(227)275 819 y FE(6.1)92 b(Daily)31 b(data)g(in)f(one)h
+(\014le)11 b Fw(:)k(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)41 b FD(215)275 928
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)41 b FE(227)275 928
 y(6.2)92 b(Mon)m(thly)31 b(data)g(in)f(one)h(\014le)10
-b Fv(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+b Fw(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)40 b FD(215)275 1038 y(6.3)92 b(One)30
-b(time)h(p)s(oin)m(t)f(one)h(\014le)11 b Fv(:)16 b(:)f(:)g(:)h(:)f(:)h
+h(:)f(:)g(:)h(:)40 b FE(227)275 1038 y(6.3)92 b(One)30
+b(time)h(p)s(oin)m(t)f(one)h(\014le)11 b Fw(:)16 b(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)41
-b FD(216)275 1147 y(6.4)92 b(Multiple)31 b(\014les)f(with)g(m)m
-(ultiple)h(time)g(p)s(oin)m(ts)13 b Fv(:)j(:)f(:)h(:)f(:)h(:)f(:)g(:)h
+b FE(228)275 1147 y(6.4)92 b(Multiple)31 b(\014les)f(with)g(m)m
+(ultiple)h(time)g(p)s(oin)m(ts)13 b Fw(:)j(:)f(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)43
-b FD(216)150 1390 y FB(7)135 b Fu(CMIP5)45 b FB(Example)24
-b Fw(:)c(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)
+b FE(228)150 1390 y FC(7)135 b Fv(CMIP5)45 b FC(Example)24
+b Fx(:)c(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)68
-b FB(217)275 1527 y FD(7.1)92 b(Com)m(bine)30 b(Files)d
-Fv(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b FC(229)275 1527 y FE(7.1)92 b(Com)m(bine)30 b(Files)d
+Fw(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)56
-b FD(217)275 1636 y(7.2)92 b(Global)31 b(Distribution)g(of)f(Long-term)
-h(Av)m(erage)15 b Fv(:)j(:)e(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)46 b FD(223)275 1746 y(7.3)92
+b FE(229)275 1636 y(7.2)92 b(Global)31 b(Distribution)g(of)f(Long-term)
+h(Av)m(erage)15 b Fw(:)j(:)e(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)46 b FE(235)275 1746 y(7.3)92
 b(Ann)m(ual)30 b(Av)m(erage)i(o)m(v)m(er)g(Regions)26
-b Fv(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+b Fw(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55
-b FD(226)275 1856 y(7.4)92 b(Mon)m(thly)31 b(Cycle)16
-b Fv(:)g(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+b FE(238)275 1856 y(7.4)92 b(Mon)m(thly)31 b(Cycle)16
+b Fw(:)g(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)47
-b FD(233)275 1965 y(7.5)92 b(Regrid)30 b FC(MODIS)h FD(Data)10
-b Fv(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+b FE(245)275 1965 y(7.5)92 b(Regrid)30 b FD(MODIS)h FE(Data)10
+b Fw(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)40 b FD(236)275 2075
-y(7.6)92 b(Add)29 b(Co)s(ordinates)h(to)i FC(MODIS)e
-FD(Data)10 b Fv(:)18 b(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)40 b FE(248)275 2075
+y(7.6)92 b(Add)29 b(Co)s(ordinates)h(to)i FD(MODIS)e
+FE(Data)10 b Fw(:)18 b(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41
-b FD(239)275 2184 y(7.7)92 b(P)m(erm)m(ute)31 b FC(MODIS)f
-FD(Co)s(ordinates)15 b Fv(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b FE(251)275 2184 y(7.7)92 b(P)m(erm)m(ute)31 b FD(MODIS)f
+FE(Co)s(ordinates)15 b Fw(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)45 b FD(240)150 2427 y FB(8)135 b(P)l(arallel)13
-b Fw(:)22 b(:)d(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+g(:)h(:)f(:)h(:)45 b FE(252)150 2427 y FC(8)135 b(P)l(arallel)13
+b Fx(:)22 b(:)d(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)h(:)57 b FB(243)150 2697 y(9)135
-b(CCSM)44 b(Example)23 b Fw(:)e(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
+g(:)h(:)f(:)h(:)f(:)h(:)57 b FC(255)150 2697 y(9)135
+b(CCSM)44 b(Example)23 b Fx(:)e(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
-h(:)67 b FB(245)150 2966 y(10)135 b(References)20 b Fw(:)h(:)e(:)g(:)h
+h(:)67 b FC(257)150 2966 y(10)135 b(References)20 b Fx(:)h(:)e(:)g(:)h
 (:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)64
-b FB(253)150 3236 y(General)46 b(Index)24 b Fw(:)19 b(:)g(:)h(:)f(:)h
+b FC(265)150 3236 y(General)46 b(Index)24 b Fx(:)19 b(:)g(:)h(:)f(:)h
 (:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)68
-b FB(255)p eop end
+b FC(267)p eop end
 %%Page: 1 7
-TeXDict begin 1 6 bop 150 -116 a FD(F)-8 b(orew)m(ord)3188
-b(1)150 299 y Fx(F)-13 b(orew)l(ord)150 548 y FC(NCO)28
-b FD(is)g(the)g(result)g(of)g(soft)m(w)m(are)h(needs)f(that)g(arose)h
+TeXDict begin 1 6 bop 150 -116 a FE(F)-8 b(orew)m(ord)3188
+b(1)150 299 y Fy(F)-13 b(orew)l(ord)150 548 y FD(NCO)28
+b FE(is)g(the)g(result)g(of)g(soft)m(w)m(are)h(needs)f(that)g(arose)h
 (while)f(I)g(w)m(ork)m(ed)g(on)g(pro)5 b(jects)28 b(funded)e(b)m(y)i
-FC(NCAR)p FD(,)150 658 y FC(NASA)p FD(,)45 b(and)c FC(ARM)p
-FD(.)73 b(Thinking)41 b(they)g(migh)m(t)h(pro)m(v)m(e)g(useful)f(as)g
+FD(NCAR)p FE(,)150 658 y FD(NASA)p FE(,)45 b(and)c FD(ARM)p
+FE(.)73 b(Thinking)41 b(they)g(migh)m(t)h(pro)m(v)m(e)g(useful)f(as)g
 (to)s(ols)h(or)g(templates)g(to)g(others,)i(it)150 767
 y(is)39 b(m)m(y)g(pleasure)f(to)i(pro)m(vide)f(them)f(freely)h(to)h
 (the)f(scien)m(ti\014c)h(comm)m(unit)m(y)-8 b(.)67 b(Man)m(y)39
 b(users)f(\(most)i(of)150 877 y(whom)24 b(I)h(ha)m(v)m(e)h(nev)m(er)f
 (met\))g(ha)m(v)m(e)h(encouraged)g(the)f(dev)m(elopmen)m(t)h(of)f
-FC(NCO)p FD(.)39 b(Thanks)23 b(esp)s(cially)j(to)f(Jan)150
+FD(NCO)p FE(.)39 b(Thanks)23 b(esp)s(cially)j(to)f(Jan)150
 986 y(P)m(olc)m(her,)i(Keith)d(Lindsa)m(y)-8 b(,)26 b(Arlindo)e(da)30
 b(Silv)-5 b(a,)26 b(John)d(Sheldon,)i(and)e(William)j(W)-8
 b(eib)s(el)25 b(for)f(stim)m(ulating)150 1096 y(suggestions)35
 b(and)e(corresp)s(ondence.)50 b(Y)-8 b(our)34 b(encouragmen)m(t)h
-(motiv)-5 b(ated)36 b(me)e(to)g(complete)h(the)f Fz(NCO)150
-1205 y(User)22 b(Guide)p FD(.)37 b(So)22 b(if)f(y)m(ou)h(lik)m(e)h
-FC(NCO)p FD(,)h(send)d(me)g(a)h(note!)39 b(I)30 b(should)21
-b(men)m(tion)h(that)g FC(NCO)f FD(is)h(not)g(connected)150
+(motiv)-5 b(ated)36 b(me)e(to)g(complete)h(the)f FA(NCO)150
+1205 y(User)22 b(Guide)p FE(.)37 b(So)22 b(if)f(y)m(ou)h(lik)m(e)h
+FD(NCO)p FE(,)h(send)d(me)g(a)h(note!)39 b(I)30 b(should)21
+b(men)m(tion)h(that)g FD(NCO)f FE(is)h(not)g(connected)150
 1315 y(to)31 b(or)f(o\016cially)j(endorsed)c(b)m(y)h(Unidata,)i
-FC(A)n(CD)p FD(,)f FC(ASP)p FD(,)f FC(CGD)p FD(,)h(or)f(Nik)m(e.)150
+FD(A)n(CD)p FE(,)f FD(ASP)p FE(,)f FD(CGD)p FE(,)h(or)f(Nik)m(e.)150
 1694 y(Charlie)g(Zender)150 1803 y(Ma)m(y)i(1997)150
 1913 y(Boulder,)f(Colorado)275 2401 y(Ma)5 b(jor)28 b(feature)g(impro)m
 (v)m(emen)m(ts)h(en)m(title)g(me)f(to)g(write)g(another)g(F)-8
 b(orew)m(ord.)40 b(In)27 b(the)h(last)g(\014v)m(e)g(y)m(ears)150
 2511 y(a)f(lot)h(of)f(w)m(ork)g(has)g(b)s(een)f(done)h(to)h(re\014ne)e
-FC(NCO)p FD(.)39 b FC(NCO)27 b FD(is)g(no)m(w)g(an)g(op)s(en)f(source)h
+FD(NCO)p FE(.)39 b FD(NCO)27 b FE(is)g(no)m(w)g(an)g(op)s(en)f(source)h
 (pro)5 b(ject)27 b(and)g(app)s(ears)150 2620 y(to)39
 b(b)s(e)f(m)m(uc)m(h)g(healthier)h(for)f(it.)65 b(The)37
 b(list)i(of)g(illustrious)f(institutions)h(that)g(do)f(not)g(endorse)g
-FC(NCO)150 2730 y FD(con)m(tin)m(ues)31 b(to)h(gro)m(w,)f(and)f(no)m(w)
-g(includes)g FC(UCI)p FD(.)150 3108 y(Charlie)g(Zender)150
+FD(NCO)150 2730 y FE(con)m(tin)m(ues)31 b(to)h(gro)m(w,)f(and)f(no)m(w)
+g(includes)g FD(UCI)p FE(.)150 3108 y(Charlie)g(Zender)150
 3218 y(Octob)s(er)g(2000)150 3328 y(Irvine,)g(California)275
 3816 y(The)e(most)i(remark)-5 b(able)30 b(adv)-5 b(ances)30
-b(in)f FC(NCO)g FD(capabilities)i(in)e(the)g(last)i(few)e(y)m(ears)h
+b(in)f FD(NCO)g FE(capabilities)i(in)e(the)g(last)i(few)e(y)m(ears)h
 (are)g(due)e(to)i(con-)150 3925 y(tributions)i(from)h(the)g(Op)s(en)e
 (Source)i(comm)m(unit)m(y)-8 b(.)50 b(Esp)s(ecially)33
 b(notew)m(orth)m(y)h(are)f(the)h(con)m(tributions)150
 4035 y(of)d(Henry)f(Buto)m(wsky)g(and)g(Rorik)h(P)m(eterson.)150
 4413 y(Charlie)f(Zender)150 4523 y(Jan)m(uary)g(2003)150
-4633 y(Irvine,)g(California)275 5121 y FC(NCO)56 b FD(w)m(as)h
+4633 y(Irvine,)g(California)275 5121 y FD(NCO)56 b FE(w)m(as)h
 (generously)h(supp)s(orted)d(from)h(2004{2008)61 b(b)m(y)c(US)f
 (National)j(Science)f(F)-8 b(ounda-)150 5230 y(tion)50
-b(\()p FC(NSF)p FD(\))h(gran)m(t)g(I)s(IS-0431203)g(\()p
-Fy(http:)15 b(/)h(/)c(www)i(.)e(nsf)j(.)d(gov)j(/)d(awardsearch)h(/)f
+b(\()p FD(NSF)p FE(\))h(gran)m(t)g(I)s(IS-0431203)g(\()p
+Fz(http:)15 b(/)h(/)c(www)i(.)e(nsf)j(.)d(gov)j(/)d(awardsearch)h(/)f
 (showAward)h(.)f(do)j(?)150 5340 y(AwardNumber=0431203)p
-FD(\).)36 b(This)29 b(supp)s(ort)g(allo)m(w)m(ed)j(me)f(to)g(main)m
-(tain)g(and)f(extend)g(core)h FC(NCO)f FD(co)s(de,)p
+FE(\).)36 b(This)29 b(supp)s(ort)g(allo)m(w)m(ed)j(me)f(to)g(main)m
+(tain)g(and)f(extend)g(core)h FD(NCO)f FE(co)s(de,)p
 eop end
 %%Page: 2 8
-TeXDict begin 2 7 bop 150 -116 a FD(2)2672 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(and)i(others)h(to)g(adv)-5
-b(ance)33 b FC(NCO)g FD(in)f(new)g(directions:)46 b(Ga)m(y)m(athri)34
+TeXDict begin 2 7 bop 150 -116 a FE(2)2672 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(and)i(others)h(to)g(adv)-5
+b(ance)33 b FD(NCO)g FE(in)f(new)g(directions:)46 b(Ga)m(y)m(athri)34
 b(V)-8 b(enkitac)m(halam)36 b(help)s(ed)31 b(implemen)m(t)150
-408 y FC(MPI)p FD(;)44 b(Harry)39 b(Mangalam)i(impro)m(v)m(ed)f
+408 y FD(MPI)p FE(;)44 b(Harry)39 b(Mangalam)i(impro)m(v)m(ed)f
 (regression)g(testing)g(and)f(b)s(enc)m(hmarking;)k(Daniel)e(W)-8
 b(ang)41 b(de-)150 518 y(v)m(elop)s(ed)32 b(the)g(serv)m(er-side)h
-(capabilit)m(y)-8 b(,)34 b FC(SW)-9 b(AMP)p FD(;)33 b(and)f(Henry)f
+(capabilit)m(y)-8 b(,)34 b FD(SW)-9 b(AMP)p FE(;)33 b(and)f(Henry)f
 (Buto)m(wsky)-8 b(,)34 b(a)e(long-time)h(con)m(tributor,)150
-628 y(dev)m(elop)s(ed)24 b Fy(ncap2)p FD(.)37 b(This)23
-b(supp)s(ort)f(also)j(led)e FC(NCO)h FD(to)g(debut)f(in)h(professional)
+628 y(dev)m(elop)s(ed)24 b Fz(ncap2)p FE(.)37 b(This)23
+b(supp)s(ort)f(also)j(led)e FD(NCO)h FE(to)g(debut)f(in)h(professional)
 g(journals)f(and)g(meetings.)150 737 y(The)37 b(p)s(ersonal)g(and)h
 (professional)g(con)m(tacts)i(made)d(during)g(this)h(ev)m(olution)h(ha)
 m(v)m(e)g(b)s(een)e(immensely)150 847 y(rew)m(arding.)150
 1225 y(Charlie)30 b(Zender)150 1335 y(Marc)m(h)h(2008)150
 1445 y(Grenoble,)g(F)-8 b(rance)275 1933 y(The)28 b(end)g(of)g(the)h
-FC(NSF)g(SEI)f FD(gran)m(t)i(in)e(August,)h(2008)h(curtailed)g
-FC(NCO)e FD(dev)m(elopmen)m(t.)41 b(F)-8 b(ortunately)150
+FD(NSF)g(SEI)f FE(gran)m(t)i(in)e(August,)h(2008)h(curtailed)g
+FD(NCO)e FE(dev)m(elopmen)m(t.)41 b(F)-8 b(ortunately)150
 2042 y(w)m(e)26 b(could)g(justify)g(supp)s(orting)e(Henry)i(Buto)m
 (wsky)g(on)g(other)g(researc)m(h)h(gran)m(ts)f(un)m(til)h(Ma)m(y)-8
 b(,)28 b(2010)g(while)150 2152 y(he)j(dev)m(elop)s(ed)g(the)h(k)m(ey)g
-Fy(ncap2)d FD(features)j(used)e(in)h(our)g(climate)h(researc)m(h.)44
-b(And)30 b(recen)m(tly)j(the)e FC(NASA)150 2262 y(A)n(CCESS)36
-b FD(program)h(commenced)g(funding)e(us)h(to)i(supp)s(ort)d(netCDF4)j
+Fz(ncap2)d FE(features)j(used)e(in)h(our)g(climate)h(researc)m(h.)44
+b(And)30 b(recen)m(tly)j(the)e FD(NASA)150 2262 y(A)n(CCESS)36
+b FE(program)h(commenced)g(funding)e(us)h(to)i(supp)s(ort)d(netCDF4)j
 (group)e(functionalit)m(y)-8 b(.)62 b(Th)m(us)150 2371
-y FC(NCO)30 b FD(will)h(gro)m(w)g(and)f(ev)-5 b(ade)31
+y FD(NCO)30 b FE(will)h(gro)m(w)g(and)f(ev)-5 b(ade)31
 b(bit-rot)g(for)f(the)g(foreseeable)i(future.)275 2531
 y(I)j(con)m(tin)m(ue)h(to)g(receiv)m(e)h(with)e(gratitude)h(the)g
-(thanks)e(of)i FC(NCO)f FD(users)f(at)i(nearly)g(ev)m(ery)g(scien)m
+(thanks)e(of)i FD(NCO)f FE(users)f(at)i(nearly)g(ev)m(ery)g(scien)m
 (ti\014c)150 2640 y(meeting)d(I)e(attend.)45 b(P)m(eople)33
 b(in)m(tro)s(duce)e(themselv)m(es,)j(shak)m(e)e(m)m(y)f(hand)g(and)g
-(extol)i FC(NCO)p FD(,)f(often)g(e\013u-)150 2750 y(siv)m(ely)-8
+(extol)i FD(NCO)p FE(,)f(often)g(e\013u-)150 2750 y(siv)m(ely)-8
 b(,)37 b(while)d(I)f(grin)h(in)g(stupid)e(em)m(barassmen)m(t.)53
 b(These)33 b(exc)m(hanges)j(ligh)m(ten)f(me)f(lik)m(e)h(an)m(ti-gra)m
 (vit)m(y)-8 b(.)150 2859 y(Sometimes)38 b(I)f(da)m(ydream)g(ho)m(w)g
-(man)m(y)h(hours)e FC(NCO)h FD(has)g(turned)f(from)h(grun)m(t)g(w)m
+(man)m(y)h(hours)e FD(NCO)h FE(has)g(turned)f(from)h(grun)m(t)g(w)m
 (ork)g(to)h(pro)s(ductiv)m(e)150 2969 y(researc)m(h)h(for)g(researc)m
 (hers)g(w)m(orld-wide,)i(or)e(from)f(researc)m(h)h(in)m(to)h(early)g
 (happ)m(y-hours.)64 b(It's)39 b(a)g(co)s(ol)150 3078
 y(feeling.)150 3347 y(Charlie)30 b(Zender)150 3457 y(April,)g(2012)150
 3567 y(Irvine,)g(California)p eop end
 %%Page: 3 9
-TeXDict begin 3 8 bop 150 -116 a FD(Summary)3172 b(3)150
-299 y Fx(Summary)150 558 y FD(This)20 b(man)m(ual)g(describ)s(es)g
-FC(NCO)p FD(,)i(whic)m(h)f(stands)f(for)g(netCDF)h(Op)s(erators.)37
-b FC(NCO)20 b FD(is)g(a)h(suite)g(of)f(programs)150 667
-y(kno)m(wn)38 b(as)h Fz(op)s(erators)p FD(.)65 b(Eac)m(h)39
+TeXDict begin 3 8 bop 150 -116 a FE(Summary)3172 b(3)150
+299 y Fy(Summary)150 558 y FE(This)20 b(man)m(ual)g(describ)s(es)g
+FD(NCO)p FE(,)i(whic)m(h)f(stands)f(for)g(netCDF)h(Op)s(erators.)37
+b FD(NCO)20 b FE(is)g(a)h(suite)g(of)f(programs)150 667
+y(kno)m(wn)38 b(as)h FA(op)s(erators)p FE(.)65 b(Eac)m(h)39
 b(op)s(erator)g(is)f(a)h(standalone,)j(command)c(line)h(program)f
 (executed)h(at)150 777 y(the)g(shell-lev)m(el)i(lik)m(e,)i(e.g.,)g
-Fy(ls)38 b FD(or)h Fy(mkdir)p FD(.)65 b(The)39 b(op)s(erators)g(tak)m
-(e)h(netCDF)g(\014les)f(\(including)g FC(HDF5)150 887
-y FD(\014les)30 b(constructed)g(using)g(the)g(netCDF)h
-FC(API)p FD(\))f(as)g(input,)f(p)s(erform)g(an)h(op)s(eration)g
+Fz(ls)38 b FE(or)h Fz(mkdir)p FE(.)65 b(The)39 b(op)s(erators)g(tak)m
+(e)h(netCDF)g(\014les)f(\(including)g FD(HDF5)150 887
+y FE(\014les)30 b(constructed)g(using)g(the)g(netCDF)h
+FD(API)p FE(\))f(as)g(input,)f(p)s(erform)g(an)h(op)s(eration)g
 (\(e.g.,)i(a)m(v)m(eraging)h(or)150 996 y(h)m(yp)s(erslabbing\),)25
 b(and)f(pro)s(duce)g(a)h(netCDF)g(\014le)g(as)g(output.)39
 b(The)24 b(op)s(erators)h(are)g(primarily)f(designed)150
@@ -12131,218 +12351,220 @@ eop end
 %%Page: 4 10
 TeXDict begin 4 9 bop eop end
 %%Page: 5 11
-TeXDict begin 5 10 bop 150 -116 a FD(Chapter)30 b(1:)41
-b(In)m(tro)s(duction)2592 b(5)150 299 y Fx(1)80 b(In)l(tro)t(duction)
-150 649 y FB(1.1)68 b(Av)-7 b(ailabilit)l(y)150 809 y
-FD(The)27 b(complete)j FC(NCO)d FD(source)i(distribution)e(is)h(curren)
-m(tly)g(distributed)f(as)h(a)g Fz(compressed)g(tar\014le)33
-b FD(from)150 918 y Fy(http:)8 b(/)g(/)e(sf)i(.)e(net)i(/)e(projects)i
-(/)e(nco)37 b FD(and)j(from)g Fy(http:)8 b(/)g(/)e(dust)i(.)e(ess)i(.)e
+TeXDict begin 5 10 bop 150 -116 a FE(Chapter)30 b(1:)41
+b(In)m(tro)s(duction)2592 b(5)150 299 y Fy(1)80 b(In)l(tro)t(duction)
+150 649 y FC(1.1)68 b(Av)-7 b(ailabilit)l(y)150 809 y
+FE(The)27 b(complete)j FD(NCO)d FE(source)i(distribution)e(is)h(curren)
+m(tly)g(distributed)f(as)h(a)g FA(compressed)g(tar\014le)33
+b FE(from)150 918 y Fz(http:)8 b(/)g(/)e(sf)i(.)e(net)i(/)e(projects)i
+(/)e(nco)37 b FE(and)j(from)g Fz(http:)8 b(/)g(/)e(dust)i(.)e(ess)i(.)e
 (uci)i(.)e(edu)i(/)e(nco)i(/)e(nco)i(.)e(tar)i(.)150
-1028 y(gz)p FD(.)84 b(The)44 b(compressed)h(tar\014le)h(m)m(ust)e(b)s
+1028 y(gz)p FE(.)84 b(The)44 b(compressed)h(tar\014le)h(m)m(ust)e(b)s
 (e)h(uncompressed)e(and)i(un)m(tarred)f(b)s(efore)h(building)f
-FC(NCO)p FD(.)150 1138 y(Uncompress)30 b(the)h(\014le)g(with)g(`)p
-Fy(gunzip)e(nco.tar.gz)p FD('.)39 b(Extract)32 b(the)f(source)g
+FD(NCO)p FE(.)150 1138 y(Uncompress)30 b(the)h(\014le)g(with)g(`)p
+Fz(gunzip)e(nco.tar.gz)p FE('.)39 b(Extract)32 b(the)f(source)g
 (\014les)f(from)h(the)g(resulting)150 1247 y(tar\014le)39
-b(with)g(`)p Fy(tar)29 b(-xvf)h(nco.tar)p FD('.)64 b
-FC(GNU)39 b Fy(tar)f FD(lets)h(y)m(ou)g(p)s(erform)f(b)s(oth)f(op)s
+b(with)g(`)p Fz(tar)29 b(-xvf)h(nco.tar)p FE('.)64 b
+FD(GNU)39 b Fz(tar)f FE(lets)h(y)m(ou)g(p)s(erform)f(b)s(oth)f(op)s
 (erations)i(in)g(one)g(step)150 1357 y(with)30 b(`)p
-Fy(tar)g(-xvzf)f(nco.tar.gz)p FD('.)275 1519 y(The)d(do)s(cumen)m
-(tation)h(for)g FC(NCO)f FD(is)h(called)h(the)f Fz(NCO)f(User)h(Guide)p
-FD(.)39 b(The)26 b Fz(User)h(Guide)32 b FD(is)27 b(a)m(v)-5
-b(ailable)150 1628 y(in)37 b FC(PDF)p FD(,)j(P)m(ostscript,)h
-FC(HTML)p FD(,)f FC(D)n(VI)p FD(,)g(T)1550 1648 y(E)1600
+Fz(tar)g(-xvzf)f(nco.tar.gz)p FE('.)275 1519 y(The)d(do)s(cumen)m
+(tation)h(for)g FD(NCO)f FE(is)h(called)h(the)f FA(NCO)f(User)h(Guide)p
+FE(.)39 b(The)26 b FA(User)h(Guide)32 b FE(is)27 b(a)m(v)-5
+b(ailable)150 1628 y(in)37 b FD(PDF)p FE(,)j(P)m(ostscript,)h
+FD(HTML)p FE(,)f FD(D)n(VI)p FE(,)g(T)1550 1648 y(E)1600
 1628 y(Xinfo,)f(and)e(Info)h(formats.)62 b(These)38 b(formats)g(are)g
 (included)150 1738 y(in)43 b(the)g(source)g(distribution)g(in)f(the)i
-(\014les)f Fy(nco.pdf)p FD(,)h Fy(nco.ps)p FD(,)h Fy(nco.html)p
-FD(,)f Fy(nco.dvi)p FD(,)h Fy(nco.texi)p FD(,)150 1848
-y(and)c Fy(nco.info*)p FD(,)h(resp)s(ectiv)m(ely)-8 b(.)77
+(\014les)f Fz(nco.pdf)p FE(,)h Fz(nco.ps)p FE(,)h Fz(nco.html)p
+FE(,)f Fz(nco.dvi)p FE(,)h Fz(nco.texi)p FE(,)150 1848
+y(and)c Fz(nco.info*)p FE(,)h(resp)s(ectiv)m(ely)-8 b(.)77
 b(All)42 b(the)g(do)s(cumen)m(tation)g(descends)f(from)g(a)h(single)h
-(source)f(\014le,)150 1957 y Fy(nco.texi)534 1924 y Ft(1)569
-1957 y FD(.)d(Hence)27 b(the)f(do)s(cumen)m(tation)h(in)f(ev)m(ery)h
+(source)f(\014le,)150 1957 y Fz(nco.texi)534 1924 y Fu(1)569
+1957 y FE(.)d(Hence)27 b(the)f(do)s(cumen)m(tation)h(in)f(ev)m(ery)h
 (format)f(is)h(v)m(ery)f(similar.)40 b(Ho)m(w)m(ev)m(er,)29
 b(some)d(of)h(the)150 2067 y(complex)34 b(mathematical)j(expressions)c
-(needed)g(to)i(describ)s(e)e Fy(ncwa)g FD(can)h(only)f(b)s(e)h(displa)m
-(y)m(ed)g(in)f FC(D)n(VI)p FD(,)150 2176 y(P)m(ostscript,)f(and)d
-FC(PDF)i FD(formats.)275 2338 y(A)25 b(complete)i(list)f(of)g(pap)s
-(ers)f(and)g(publications)g(on/ab)s(out)h FC(NCO)f FD(is)h(a)m(v)-5
-b(ailable)28 b(on)d(the)h FC(NCO)g FD(home-)150 2448
+(needed)g(to)i(describ)s(e)e Fz(ncwa)g FE(can)h(only)f(b)s(e)h(displa)m
+(y)m(ed)g(in)f FD(D)n(VI)p FE(,)150 2176 y(P)m(ostscript,)f(and)d
+FD(PDF)i FE(formats.)275 2338 y(A)25 b(complete)i(list)f(of)g(pap)s
+(ers)f(and)g(publications)g(on/ab)s(out)h FD(NCO)f FE(is)h(a)m(v)-5
+b(ailable)28 b(on)d(the)h FD(NCO)g FE(home-)150 2448
 y(page.)41 b(Most)31 b(of)f(these)g(are)g(freely)h(a)m(v)-5
 b(ailable.)42 b(The)30 b(primary)f(refereed)g(publications)h(are)h
 (ZeM06)g(and)150 2557 y(Zen08.)54 b(These)34 b(con)m(tain)i(cop)m
 (yrigh)m(t)g(restrictions)f(whic)m(h)g(limit)g(their)g(redistribution,)
 g(but)f(they)h(are)150 2667 y(freely)c(a)m(v)-5 b(ailable)32
-b(in)f(preprin)m(t)e(form)h(from)g(the)g FC(NCO)p FD(.)275
+b(in)f(preprin)m(t)e(form)h(from)g(the)g FD(NCO)p FE(.)275
 2829 y(If)19 b(y)m(ou)i(w)m(an)m(t)g(to)g(quic)m(kly)h(see)f(what)f
-(the)g(latest)i(impro)m(v)m(emen)m(ts)g(in)e FC(NCO)g
-FD(are)h(\(without)g(do)m(wnloading)150 2939 y(the)j(en)m(tire)g
-(source)g(distribution\),)h(visit)f(the)f FC(NCO)h FD(homepage)g(at)g
-Fy(http://nco.sf.net)p FD(.)34 b(The)23 b FC(HTML)150
-3048 y FD(v)m(ersion)39 b(of)g(the)g Fz(User)g(Guide)44
-b FD(is)38 b(also)i(a)m(v)-5 b(ailable)41 b(online)e(through)f(the)h(W)
--8 b(orld)40 b(Wide)f(W)-8 b(eb)39 b(at)h FC(URL)150
-3158 y Fy(http:)q(/)q(/)q(nco)q(.)q(sf)q(.)q(net)q(/)q(nco)q(.)q(html)p
-FD(.)h(T)-8 b(o)33 b(build)e(and)g(use)h FC(NCO)p FD(,)h(y)m(ou)f(m)m
+(the)g(latest)i(impro)m(v)m(emen)m(ts)g(in)e FD(NCO)g
+FE(are)h(\(without)g(do)m(wnloading)150 2939 y(the)j(en)m(tire)g
+(source)g(distribution\),)h(visit)f(the)f FD(NCO)h FE(homepage)g(at)g
+Fz(http://nco.sf.net)p FE(.)34 b(The)23 b FD(HTML)150
+3048 y FE(v)m(ersion)39 b(of)g(the)g FA(User)g(Guide)44
+b FE(is)38 b(also)i(a)m(v)-5 b(ailable)41 b(online)e(through)f(the)h(W)
+-8 b(orld)40 b(Wide)f(W)-8 b(eb)39 b(at)h FD(URL)150
+3158 y Fz(http:)q(/)q(/)q(nco)q(.)q(sf)q(.)q(net)q(/)q(nco)q(.)q(html)p
+FE(.)h(T)-8 b(o)33 b(build)e(and)g(use)h FD(NCO)p FE(,)h(y)m(ou)f(m)m
 (ust)g(ha)m(v)m(e)h(netCDF)g(installed.)150 3267 y(The)d(netCDF)h
-(homepage)g(is)g Fy(http://www.unidata.ucar)o(.ed)o(u/pa)o(ckag)o(es/)o
-(netc)o(df)p FD(.)275 3429 y(New)d FC(NCO)h FD(releases)g(are)g
+(homepage)g(is)g Fz(http://www.unidata.ucar)o(.ed)o(u/pa)o(ckag)o(es/)o
+(netc)o(df)p FE(.)275 3429 y(New)d FD(NCO)h FE(releases)g(are)g
 (announced)f(on)g(the)h(netCDF)g(list)h(and)e(on)g(the)h
-Fy(nco-announce)c FD(mailing)150 3539 y(list)31 b Fy
+Fz(nco-announce)c FE(mailing)150 3539 y(list)31 b Fz
 (http://lists.sf.net/mail)o(man/)o(list)o(inf)o(o/nc)o(o-an)o(nou)o
-(nce)p FD(.)150 3779 y FB(1.2)68 b(Ho)l(w)46 b(to)f(Use)h(This)e(Guide)
-150 3939 y FD(Detailed)37 b(instructions)d(ab)s(out)h(ho)m(w)f(to)i(do)
-m(wnload)f(the)f(new)m(est)i(v)m(ersion)f(\()p Fy(http:)t(/)t(/)s(nco)t
-(.)s(sf)t(.)s(n)o(et)s(/)6 b(#)150 4048 y(Source)p FD(\),)35
+(nce)p FE(.)150 3779 y FC(1.2)68 b(Ho)l(w)46 b(to)f(Use)h(This)e(Guide)
+150 3939 y FE(Detailed)37 b(instructions)d(ab)s(out)h(ho)m(w)f(to)i(do)
+m(wnload)f(the)f(new)m(est)i(v)m(ersion)f(\()p Fz(http:)t(/)t(/)s(nco)t
+(.)s(sf)t(.)s(n)o(et)s(/)6 b(#)150 4048 y(Source)p FE(\),)35
 b(and)f(ho)m(w)h(to)h(complie)g(source)f(co)s(de)g(\()p
-Fy(http:)t(/)t(/)s(nco)t(.)s(sf)t(.)s(net)t(/)7 b(#)s(bl)o(d)p
-FD(\),)31 b(as)k(w)m(ell)h(as)f(a)g FC(F)-9 b(A)n(Q)150
-4158 y FD(\()p Fy(http:)q(/)q(/nco)q(.sf)q(.net)q(/)q(#FAQ)o
-FD(\))26 b(and)k(descriptions)h(of)g(Kno)m(wn)f(Problems)h(\()p
-Fy(http:)q(/)q(/nco)q(.sf)q(.net)q(/)q(#)150 4268 y(bug)p
-FD(\))f(etc.)42 b(are)30 b(on)h(our)f(homepage)h(\()p
-Fy(http://nco.sf.net/)p FD(\).)275 4430 y(There)36 b(are)i(t)m(w)m(elv)
-m(e)h(op)s(erators)f(in)e(the)i(curren)m(t)f(v)m(ersion)g(\(4.4.7\).)64
+Fz(http:)t(/)t(/)s(nco)t(.)s(sf)t(.)s(net)t(/)7 b(#)s(bl)o(d)p
+FE(\),)31 b(as)k(w)m(ell)h(as)f(a)g FD(F)-9 b(A)n(Q)150
+4158 y FE(\()p Fz(http:)q(/)q(/nco)q(.sf)q(.net)q(/)q(#FAQ)o
+FE(\))26 b(and)k(descriptions)h(of)g(Kno)m(wn)f(Problems)h(\()p
+Fz(http:)q(/)q(/nco)q(.sf)q(.net)q(/)q(#)150 4268 y(bug)p
+FE(\))f(etc.)42 b(are)30 b(on)h(our)f(homepage)h(\()p
+Fz(http://nco.sf.net/)p FE(\).)275 4430 y(There)36 b(are)i(t)m(w)m(elv)
+m(e)h(op)s(erators)f(in)e(the)i(curren)m(t)f(v)m(ersion)g(\(4.4.8\).)64
 b(The)37 b(function)f(of)i(eac)m(h)g(is)f(ex-)150 4539
-y(plained)30 b(in)f(Chapter)g(4)i([Op)s(erator)e(Reference)i(Man)m
-(ual],)g(page)g(103.)42 b(Man)m(y)30 b(of)g(the)g(tasks)h(that)f
-FC(NCO)150 4649 y FD(can)h(accomplish)g(are)g(describ)s(ed)f(during)f
-(the)i(explanation)g(of)g(common)g FC(NCO)f FD(F)-8 b(eatures)32
-b(\(see)g(Chap-)150 4758 y(ter)24 b(3)g([Common)f(features],)j(page)e
-(25\).)40 b(More)24 b(sp)s(eci\014c)g(use)f(examples)h(for)f(eac)m(h)i
-(op)s(erator)f(can)g(b)s(e)f(seen)150 4868 y(b)m(y)35
-b(visiting)h(the)f(op)s(erator-sp)s(eci\014c)g(examples)h(in)e(the)h
-(Chapter)g(4)g([Op)s(erator)g(Reference)h(Man)m(ual],)p
-150 4979 1200 4 v 199 5047 a Ft(1)304 5078 y Fs(T)-6
-b(o)29 b(pro)r(duce)h(these)f(formats,)j Fr(nco.texi)f
-Fs(w)n(as)f(simply)g(run)e(through)h(the)g(freely)h(a)n(v)l(ailable)g
-(programs)h Fr(texi2dvi)p Fs(,)275 5166 y Fr(dvips)p
-Fs(,)f Fr(texi2html)p Fs(,)i(and)c Fr(makeinfo)p Fs(.)45
-b(Due)28 b(to)g(a)h(bug)f(in)h(T)2069 5182 y(E)2112 5166
-y(X,)g(the)f(resulting)h(P)n(ostscript)h(\014le,)g Fr(nco.ps)p
-Fs(,)g(con)n(tains)275 5253 y(the)h(T)-6 b(able)33 b(of)g(Con)n(ten)n
-(ts)f(as)g(the)g(\014nal)g(pages.)54 b(Th)n(us)32 b(if)h(y)n(ou)f(prin)
-n(t)f Fr(nco.ps)p Fs(,)k(remem)n(b)r(er)d(to)h(insert)f(the)g(T)-6
-b(able)32 b(of)275 5340 y(Con)n(ten)n(ts)25 b(after)i(the)e(co)n(v)n
-(er)h(sheet)f(b)r(efore)i(y)n(ou)e(staple)h(the)g(man)n(ual.)p
-eop end
+y(plained)24 b(in)g(Chapter)f(4)h([Reference)h(Man)m(ual],)i(page)e
+(115.)40 b(Man)m(y)25 b(of)f(the)g(tasks)g(that)h FD(NCO)f
+FE(can)g(accom-)150 4649 y(plish)g(are)i(describ)s(ed)e(during)g(the)h
+(explanation)h(of)f(common)h FD(NCO)e FE(F)-8 b(eatures)27
+b(\(see)f(Chapter)e(3)i([Shared)150 4758 y(features],)h(page)g(25\).)40
+b(More)26 b(sp)s(eci\014c)f(use)h(examples)g(for)f(eac)m(h)i(op)s
+(erator)f(can)f(b)s(e)g(seen)h(b)m(y)f(visiting)i(the)150
+4868 y(op)s(erator-sp)s(eci\014c)36 b(examples)h(in)e(the)h(Chapter)g
+(4)g([Reference)h(Man)m(ual],)i(page)d(115.)59 b(These)35
+b(can)i(b)s(e)p 150 4979 1200 4 v 199 5047 a Fu(1)304
+5078 y Ft(T)-6 b(o)29 b(pro)r(duce)h(these)f(formats,)j
+Fs(nco.texi)f Ft(w)n(as)f(simply)g(run)e(through)h(the)g(freely)h(a)n
+(v)l(ailable)g(programs)h Fs(texi2dvi)p Ft(,)275 5166
+y Fs(dvips)p Ft(,)f Fs(texi2html)p Ft(,)i(and)c Fs(makeinfo)p
+Ft(.)45 b(Due)28 b(to)g(a)h(bug)f(in)h(T)2069 5182 y(E)2112
+5166 y(X,)g(the)f(resulting)h(P)n(ostscript)h(\014le,)g
+Fs(nco.ps)p Ft(,)g(con)n(tains)275 5253 y(the)h(T)-6
+b(able)33 b(of)g(Con)n(ten)n(ts)f(as)g(the)g(\014nal)g(pages.)54
+b(Th)n(us)32 b(if)h(y)n(ou)f(prin)n(t)f Fs(nco.ps)p Ft(,)k(remem)n(b)r
+(er)d(to)h(insert)f(the)g(T)-6 b(able)32 b(of)275 5340
+y(Con)n(ten)n(ts)25 b(after)i(the)e(co)n(v)n(er)h(sheet)f(b)r(efore)i
+(y)n(ou)e(staple)h(the)g(man)n(ual.)p eop end
 %%Page: 6 12
-TeXDict begin 6 11 bop 150 -116 a FD(6)2672 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(page)d(103.)41 b(These)26
-b(can)h(b)s(e)f(found)f(directly)j(b)m(y)e(prep)s(ending)f(the)i(op)s
-(erator)f(name)h(with)f(the)h Fy(xmp_)e FD(tag,)150 408
-y(e.g.,)39 b Fy(http:)t(/)t(/)s(nco)t(.)s(sf)t(.)s(net)t(/)s(nco)t(.)s
-(html)t(#)s(xmp_ncks)p FD(.)51 b(Also,)38 b(users)d(can)h(t)m(yp)s(e)g
-(the)g(op)s(erator)g(name)150 518 y(on)29 b(the)h(shell)f(command)g
-(line)h(to)g(see)g(all)g(the)g(a)m(v)-5 b(ailable)32
-b(options,)e(or)f(t)m(yp)s(e,)h(e.g.,)h(`)p Fy(man)f(ncks)p
-FD(')e(to)j(see)f(a)150 628 y(help)g(man-page.)275 788
-y FC(NCO)25 b FD(is)h(a)g(command-line)g(language.)41
-b(Y)-8 b(ou)26 b(can)g(either)g(use)f(an)h(op)s(erator)g(after)g(the)g
-(prompt)f(\(e.g.,)150 897 y(`)p Fy($)p FD(')31 b(here\),)f(lik)m(e,)390
-1057 y Fy($)47 b(operator)f([options])f(input)i([output])275
-1217 y FD(or)28 b(write)h(all)h(commands)e(lines)h(in)m(to)h(a)f(shell)
-g(script,)g(as)g(in)f(the)h FC(CMIP5)f FD(Example)h(\(see)g(Chapter)g
-(7)150 1327 y([CMIP5)i(Example],)g(page)g(217\).)275
-1487 y(If)h(y)m(ou)h(are)g(new)g(to)g FC(NCO)p FD(,)h(the)f(Quic)m(k)g
-(Start)g(\(see)h(Chapter)e(6)h([Quic)m(k)h(Start],)g(page)g(215\))g
-(sho)m(ws)150 1597 y(simple)26 b(examples)g(ab)s(out)g(ho)m(w)g(to)g
-(use)g FC(NCO)f FD(on)h(di\013eren)m(t)g(kinds)f(of)h(data)h(\014les.)
-39 b(More)27 b(detailed)g(\\real-)150 1706 y(w)m(orld")34
+TeXDict begin 6 11 bop 150 -116 a FE(6)2672 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(found)g(directly)j(b)m(y)e(prep)s
+(ending)f(the)i(op)s(erator)g(name)g(with)f(the)h Fz(xmp_)f
+FE(tag,)i(e.g.,)h Fz(http:)q(/)q(/)q(nco)q(.)q(sf)q(.)150
+408 y(net)s(/)r(nco)s(.)r(html)s(#)r(xmp_ncks)p FE(.)46
+b(Also,)36 b(users)d(can)h(t)m(yp)s(e)g(the)g(op)s(erator)g(name)g(on)g
+(the)g(shell)g(command)150 518 y(line)d(to)g(see)g(all)g(the)g(a)m(v)-5
+b(ailable)32 b(options,)f(or)g(t)m(yp)s(e,)f(e.g.,)i(`)p
+Fz(man)e(ncks)p FE(')g(to)h(see)g(a)f(help)g(man-page.)275
+678 y FD(NCO)39 b FE(is)g(a)h(command-line)g(language.)69
+b(Y)-8 b(ou)40 b(ma)m(y)g(either)f(use)g(an)h(op)s(erator)f(after)h
+(the)g(prompt)150 788 y(\(e.g.,)32 b(`)p Fz($)p FE(')f(here\),)g(lik)m
+(e,)390 948 y Fz($)47 b(operator)f([options])f(input)i([output])275
+1108 y FE(or)28 b(write)h(all)h(commands)e(lines)h(in)m(to)h(a)f(shell)
+g(script,)g(as)g(in)f(the)h FD(CMIP5)f FE(Example)h(\(see)g(Chapter)g
+(7)150 1217 y([CMIP5)i(Example],)g(page)g(229\).)275
+1377 y(If)h(y)m(ou)h(are)g(new)g(to)g FD(NCO)p FE(,)h(the)f(Quic)m(k)g
+(Start)g(\(see)h(Chapter)e(6)h([Quic)m(k)h(Start],)g(page)g(227\))g
+(sho)m(ws)150 1487 y(simple)26 b(examples)g(ab)s(out)g(ho)m(w)g(to)g
+(use)g FD(NCO)f FE(on)h(di\013eren)m(t)g(kinds)f(of)h(data)h(\014les.)
+39 b(More)27 b(detailed)g(\\real-)150 1597 y(w)m(orld")34
 b(examples)h(are)g(in)f(the)g(Chapter)f(7)i([CMIP5)f(Example],)i(page)f
-(217.)53 b(The)34 b([General)h(Index],)150 1816 y(page)i(255)g(is)e
+(229.)53 b(The)34 b([General)h(Index],)150 1706 y(page)i(267)g(is)e
 (presen)m(ts)h(m)m(ultiple)h(k)m(eyw)m(ord)f(en)m(tries)g(for)g(the)g
 (same)g(sub)5 b(ject.)57 b(If)35 b(these)h(resources)g(do)150
-1925 y(not)31 b(help)f(enough,)g(please)h(see)g(Section)g(1.7)h([Help)f
+1816 y(not)31 b(help)f(enough,)g(please)h(see)g(Section)g(1.7)h([Help)f
 (Requests)f(and)g(Bug)h(Rep)s(orts],)f(page)h(13.)150
-2160 y FB(1.3)68 b(Op)t(erating)46 b(systems)f(compatible)i(with)e
-Fu(NCO)150 2319 y FC(NCO)26 b FD(has)f(b)s(een)h(successfully)g(p)s
-(orted)f(and)g(tested)i(and)f(is)g(kno)m(wn)f(to)i(w)m(ork)f(on)g(the)g
-(follo)m(wing)h(32-)h(and)150 2429 y(64-bit)h(platforms:)40
-b FC(IBM)25 b(AIX)j FD(4.x,)i(5.x,)f(F)-8 b(reeBSD)29
-b(4.x,)g FC(GNU)p FD(/Lin)m(ux)g(2.x,)g(Lin)m(uxPPC,)e(Lin)m(uxAlpha,)
-150 2538 y(Lin)m(uxARM,)e(Lin)m(uxSparc64,)i FC(SGI)c(IRIX)i
-FD(5.x)h(and)f(6.x,)i(MacOS)k(X)25 b(10.x,)j FC(NEC)d
-FD(Sup)s(er-UX)f(10.x,)j FC(DEC)150 2648 y(OSF)p FD(,)f(Sun)d(SunOS)g
-(4.1.x,)k(Solaris)f(2.x,)h FC(Cra)n(y)21 b(UNICOS)k FD(8.x{10.x,)j(and)
-c(MS)h(Windo)m(ws95)h(and)e(all)i(later)150 2758 y(v)m(ersions.)51
-b(If)34 b(y)m(ou)g(p)s(ort)f(the)h(co)s(de)g(to)h(a)f(new)f(op)s
-(erating)h(system,)h(please)g(send)e(me)h(a)g(note)g(and)g(an)m(y)150
-2867 y(patc)m(hes)d(y)m(ou)g(required.)275 3027 y(The)40
-b(ma)5 b(jor)41 b(prerequisite)h(for)f(installing)h FC(NCO)f
-FD(on)g(a)h(particular)f(platform)g(is)h(the)f(successful,)150
+2050 y FC(1.3)68 b(Op)t(erating)46 b(systems)f(compatible)i(with)e
+Fv(NCO)150 2210 y FE(In)23 b(its)g(time)h(on)f(Earth,)i
+FD(NCO)e FE(has)g(b)s(een)f(successfully)i(p)s(orted)e(and)h(tested)h
+(on)f(so)g(man)m(y)h(32-)g(and)f(64-bit)150 2319 y(platforms)32
+b(that)g(if)f(w)m(e)h(did)f(not)h(write)g(them)f(do)m(wn)h(here)f(w)m
+(e)h(w)m(ould)f(forget)i(their)f(names:)43 b FD(IBM)28
+b(AIX)150 2429 y FE(4.x,)f(5.x,)g(F)-8 b(reeBSD)27 b(4.x,)g
+FD(GNU)p FE(/Lin)m(ux)f(2.x,)h(Lin)m(uxPPC,)e(Lin)m(uxAlpha,)g(Lin)m
+(uxARM,)h(Lin)m(uxSparc64,)150 2538 y(Lin)m(uxAMD64,)36
+b FD(SGI)31 b(IRIX)j FE(5.x)h(and)e(6.x,)i(MacOS)c(X)j(10.x,)i
+FD(DEC)30 b(OSF)p FE(,)35 b FD(NEC)e FE(Sup)s(er-UX)g(10.x,)i(Sun)150
+2648 y(SunOS)24 b(4.1.x,)29 b(Solaris)d(2.x,)i FD(Cra)n(y)23
+b(UNICOS)j FE(8.x{10.x,)k(and)25 b(Microsoft)j(Windo)m(ws)f(\(95,)h
+(98,)g FD(NT)p FE(,)g(2000,)150 2758 y FD(XP)p FE(,)h(Vista,)g(7,)h(8,)
+f(10\).)41 b(If)28 b(y)m(ou)g(p)s(ort)f(the)i(co)s(de)f(to)h(a)f(new)g
+(op)s(erating)g(system,)h(please)g(send)f(me)g(a)g(note)150
+2867 y(and)i(an)m(y)g(patc)m(hes)i(y)m(ou)e(required.)275
+3027 y(The)40 b(ma)5 b(jor)41 b(prerequisite)h(for)f(installing)h
+FD(NCO)f FE(on)g(a)h(particular)f(platform)g(is)h(the)f(successful,)150
 3137 y(prior)35 b(installation)i(of)f(the)f(netCDF)h(library)f(\(and,)i
 (as)f(of)f(2003,)k(the)c(UDUnits)i(library\).)55 b(Unidata)150
 3246 y(has)31 b(sho)m(wn)g(a)g(commitmen)m(t)i(to)f(main)m(taining)g
-(netCDF)g(and)f(UDUnits)h(on)f(all)h(p)s(opular)e FC(UNIX)i
-FD(plat-)150 3356 y(forms,)23 b(and)f(is)g(mo)m(ving)h(to)m(w)m(ards)f
+(netCDF)g(and)f(UDUnits)h(on)f(all)h(p)s(opular)e FD(UNIX)i
+FE(plat-)150 3356 y(forms,)23 b(and)f(is)g(mo)m(ving)h(to)m(w)m(ards)f
 (full)g(supp)s(ort)e(for)i(the)g(Microsoft)i(Windo)m(ws)e(op)s(erating)
-g(system)g(\()p FC(OS)p FD(\).)150 3466 y(Giv)m(en)35
+g(system)g(\()p FD(OS)p FE(\).)150 3466 y(Giv)m(en)35
 b(this,)f(the)g(only)g(di\016cult)m(y)g(in)f(implemen)m(ting)i
-FC(NCO)e FD(on)h(a)g(particular)g(platform)g(is)f(standard-)150
+FD(NCO)e FE(on)h(a)g(particular)g(platform)g(is)f(standard-)150
 3575 y(ization)38 b(of)e(v)-5 b(arious)36 b(C)o(-language)i(API)e
-(system)g(calls.)59 b FC(NCO)35 b FD(co)s(de)i(is)f(tested)g(for)g
-FC(ANSI)h FD(compliance)150 3685 y(b)m(y)45 b(compiling)h(with)f(C99)31
-b(compilers)45 b(including)g(those)h(from)e FC(GNU)i
-FD(\(`)p Fy(gcc)30 b(-std=c99)e(-pedantic)150 3794 y(-D_BSD_SOURCE)f
-(-D_POSIX_SOURCE)p FD(')59 b(-W)-8 b(all\))1850 3761
-y Ft(2)1890 3794 y FD(,)71 b(Comeau)64 b(Computing)e(\(`)p
-Fy(como)30 b(--c99)p FD('\),)71 b(Cra)m(y)150 3904 y(\(`)p
-Fy(cc)p FD('\),)25 b FC(HP)p FD(/Compaq/)p FC(DEC)d FD(\(`)p
-Fy(cc)p FD('\),)j FC(IBM)d FD(\(`)p Fy(xlc)30 b(-c)g(-qlanglvl=extc99)p
-FD('\),)20 b(In)m(tel)j(\(`)p Fy(icc)30 b(-std=c99)p
-FD('\),)150 4013 y FC(LL)-9 b(VM)32 b FD(\(`)p Fy(clang)p
-FD('\),)h FC(NEC)f FD(\(`)p Fy(cc)p FD('\),)h(P)m(athScale)h
-(\(QLogic\))g(\(`)p Fy(pathcc)29 b(-std=c99)p FD('\),)j
-FC(PGI)f FD(\(`)p Fy(pgcc)f(-c9x)p FD('\),)150 4123 y
-FC(SGI)54 b FD(\(`)p Fy(cc)31 b(-c99)p FD('\),)59 b(and)54
-b(Sun)e(\(`)p Fy(cc)p FD('\).)113 b FC(NCO)53 b FD(\(all)j(commands)d
-(and)h(the)g Fy(libnco)f FD(library\))h(and)150 4233
-y(the)59 b(C)p Fy(++)g FD(in)m(terface)h(to)g(netCDF)g(\(called)h
-Fy(libnco_c++)p FD(\))c(comply)i(with)g(the)g FC(ISO)g
-FD(C)p Fy(++)g FD(stan-)150 4342 y(dards)39 b(as)i(implemen)m(ted)g(b)m
-(y)g(Comeau)f(Computing)g(\(`)p Fy(como)p FD('\),)k(Cra)m(y)c(\(`)p
-Fy(CC)p FD('\),)k FC(GNU)d FD(\(`)p Fy(g++)31 b(-Wall)p
-FD('\),)150 4452 y FC(HP)p FD(/Compaq/)p FC(DEC)g FD(\(`)p
-Fy(cxx)p FD('\),)h FC(IBM)f FD(\(`)p Fy(xlC)p FD('\),)h(In)m(tel)g(\(`)
-p Fy(icc)p FD('\),)f(Microsoft)i(\(`)p Fy(MVS)p FD('\),)f
-FC(NEC)e FD(\(`)p Fy(c++)p FD('\),)i(P)m(ath-)150 4561
-y(Scale)j(\(Qlogic\))i(\(`)p Fy(pathCC)p FD('\),)d FC(PGI)g
-FD(\(`)p Fy(pgCC)p FD('\),)i FC(SGI)e FD(\(`)p Fy(CC)c(-LANG:std)p
-FD('\),)k(and)g(Sun)e(\(`)p Fy(CC)f(-LANG:std)p FD('\).)150
-4671 y(See)38 b Fy(nco/bld/Makefile)33 b FD(and)38 b
-Fy(nco/src/nco_c++/Makefil)o(e.ol)o(d)32 b FD(for)37
+(system)g(calls.)59 b FD(NCO)35 b FE(co)s(de)i(is)f(tested)g(for)g
+FD(ANSI)h FE(compliance)150 3685 y(b)m(y)45 b(compiling)h(with)f(C99)31
+b(compilers)45 b(including)g(those)h(from)e FD(GNU)i
+FE(\(`)p Fz(gcc)30 b(-std=c99)e(-pedantic)150 3794 y(-D_BSD_SOURCE)f
+(-D_POSIX_SOURCE)p FE(')59 b(-W)-8 b(all\))1850 3761
+y Fu(2)1890 3794 y FE(,)71 b(Comeau)64 b(Computing)e(\(`)p
+Fz(como)30 b(--c99)p FE('\),)71 b(Cra)m(y)150 3904 y(\(`)p
+Fz(cc)p FE('\),)25 b FD(HP)p FE(/Compaq/)p FD(DEC)d FE(\(`)p
+Fz(cc)p FE('\),)j FD(IBM)d FE(\(`)p Fz(xlc)30 b(-c)g(-qlanglvl=extc99)p
+FE('\),)20 b(In)m(tel)j(\(`)p Fz(icc)30 b(-std=c99)p
+FE('\),)150 4013 y FD(LL)-9 b(VM)32 b FE(\(`)p Fz(clang)p
+FE('\),)h FD(NEC)f FE(\(`)p Fz(cc)p FE('\),)h(P)m(athScale)h
+(\(QLogic\))g(\(`)p Fz(pathcc)29 b(-std=c99)p FE('\),)j
+FD(PGI)f FE(\(`)p Fz(pgcc)f(-c9x)p FE('\),)150 4123 y
+FD(SGI)54 b FE(\(`)p Fz(cc)31 b(-c99)p FE('\),)59 b(and)54
+b(Sun)e(\(`)p Fz(cc)p FE('\).)113 b FD(NCO)53 b FE(\(all)j(commands)d
+(and)h(the)g Fz(libnco)f FE(library\))h(and)150 4233
+y(the)59 b(C)p Fz(++)g FE(in)m(terface)h(to)g(netCDF)g(\(called)h
+Fz(libnco_c++)p FE(\))c(comply)i(with)g(the)g FD(ISO)g
+FE(C)p Fz(++)g FE(stan-)150 4342 y(dards)39 b(as)i(implemen)m(ted)g(b)m
+(y)g(Comeau)f(Computing)g(\(`)p Fz(como)p FE('\),)k(Cra)m(y)c(\(`)p
+Fz(CC)p FE('\),)k FD(GNU)d FE(\(`)p Fz(g++)31 b(-Wall)p
+FE('\),)150 4452 y FD(HP)p FE(/Compaq/)p FD(DEC)g FE(\(`)p
+Fz(cxx)p FE('\),)h FD(IBM)f FE(\(`)p Fz(xlC)p FE('\),)h(In)m(tel)g(\(`)
+p Fz(icc)p FE('\),)f(Microsoft)i(\(`)p Fz(MVS)p FE('\),)f
+FD(NEC)e FE(\(`)p Fz(c++)p FE('\),)i(P)m(ath-)150 4561
+y(Scale)j(\(Qlogic\))i(\(`)p Fz(pathCC)p FE('\),)d FD(PGI)g
+FE(\(`)p Fz(pgCC)p FE('\),)i FD(SGI)e FE(\(`)p Fz(CC)c(-LANG:std)p
+FE('\),)k(and)g(Sun)e(\(`)p Fz(CC)f(-LANG:std)p FE('\).)150
+4671 y(See)38 b Fz(nco/bld/Makefile)33 b FE(and)38 b
+Fz(nco/src/nco_c++/Makefil)o(e.ol)o(d)32 b FE(for)37
 b(more)h(details)h(and)e(exact)150 4781 y(settings.)275
 4941 y(Un)m(til)31 b(recen)m(tly)h(\(and)e(not)h(ev)m(en)g(y)m(et\),)h
-FC(ANSI)p FD(-complian)m(t)h(has)d(mean)m(t)i(compliance)f(with)g(the)f
-(1989)150 5050 y FC(ISO)22 b FD(C-standard,)h(usually)g(called)g(C89)g
+FD(ANSI)p FE(-complian)m(t)h(has)d(mean)m(t)i(compliance)f(with)g(the)f
+(1989)150 5050 y FD(ISO)22 b FE(C-standard,)h(usually)g(called)g(C89)g
 (\(with)g(minor)e(revisions)i(made)f(in)h(1994)h(and)d(1995\).)41
-b(C89)23 b(lac)m(ks)p 150 5154 1200 4 v 199 5221 a Ft(2)304
-5253 y Fs(The)31 b(`)p Fr(_BSD_SOURCE)p Fs(')i(tok)n(en)c(is)i
+b(C89)23 b(lac)m(ks)p 150 5154 1200 4 v 199 5221 a Fu(2)304
+5253 y Ft(The)31 b(`)p Fs(_BSD_SOURCE)p Ft(')i(tok)n(en)c(is)i
 (required)e(on)h(some)h(Lin)n(ux)e(platforms)j(where)e
-Fr(gcc)h Fs(dislik)n(es)f(the)g(net)n(w)n(ork)g(header)275
-5340 y(\014les)c(lik)n(e)f Fr(netinet/in.h)p Fs(\).)p
+Fs(gcc)h Ft(dislik)n(es)f(the)g(net)n(w)n(ork)g(header)275
+5340 y(\014les)c(lik)n(e)f Fs(netinet/in.h)p Ft(\).)p
 eop end
 %%Page: 7 13
-TeXDict begin 7 12 bop 150 -116 a FD(Chapter)30 b(1:)41
+TeXDict begin 7 12 bop 150 -116 a FE(Chapter)30 b(1:)41
 b(In)m(tro)s(duction)2592 b(7)150 299 y(v)-5 b(ariable-size)31
 b(arra)m(ys,)f(restricted)g(p)s(oin)m(ters,)f(some)h(useful)e
-Fy(printf)f FD(formats,)j(and)e(man)m(y)i(mathemat-)150
+Fz(printf)f FE(formats,)j(and)e(man)m(y)i(mathemat-)150
 408 y(ical)k(sp)s(ecial)g(functions.)48 b(These)33 b(are)g(v)-5
-b(aluable)33 b(features)h(of)f(C99,)h(the)f(1999)i FC(ISO)e
-FD(C-standard.)47 b FC(NCO)150 518 y FD(is)33 b(C99-complian)m(t)j
+b(aluable)33 b(features)h(of)f(C99,)h(the)f(1999)i FD(ISO)e
+FE(C-standard.)47 b FD(NCO)150 518 y FE(is)33 b(C99-complian)m(t)j
 (where)d(p)s(ossible)f(and)h(C89-complian)m(t)j(where)d(necessary)-8
 b(.)50 b(Certain)33 b(branc)m(hes)g(in)150 628 y(the)g(co)s(de)g(are)f
-(required)g(to)h(satisfy)g(the)g(nativ)m(e)h FC(SGI)f
-FD(and)f(SunOS)e(C)g(compilers,)k(whic)m(h)e(are)h(strictly)150
-737 y FC(ANSI)25 b FD(C89)g(complian)m(t,)j(and)c(cannot)h(b)s
+(required)g(to)h(satisfy)g(the)g(nativ)m(e)h FD(SGI)f
+FE(and)f(SunOS)e(C)g(compilers,)k(whic)m(h)e(are)h(strictly)150
+737 y FD(ANSI)25 b FE(C89)g(complian)m(t,)j(and)c(cannot)h(b)s
 (ene\014t)f(from)g(C99)i(features.)39 b(Ho)m(w)m(ev)m(er,)28
 b(C99)d(features)g(are)g(fully)150 847 y(supp)s(orted)g(b)m(y)j(mo)s
-(dern)e FC(AIX)p FD(,)i FC(GNU)p FD(,)h(In)m(tel,)g FC(NEC)p
-FD(,)f(Solaris,)g(and)f FC(UNICOS)g FD(compilers.)40
-b FC(NCO)27 b FD(requires)150 956 y(a)k(C99-complian)m(t)h(compiler)f
-(as)g(of)f FC(NCO)h FD(v)m(ersion)f(2.9.8)r(,)h(released)g(in)f
+(dern)e FD(AIX)p FE(,)i FD(GNU)p FE(,)h(In)m(tel,)g FD(NEC)p
+FE(,)f(Solaris,)g(and)f FD(UNICOS)g FE(compilers.)40
+b FD(NCO)27 b FE(requires)150 956 y(a)k(C99-complian)m(t)h(compiler)f
+(as)g(of)f FD(NCO)h FE(v)m(ersion)f(2.9.8)r(,)h(released)g(in)f
 (August,)g(2004.)275 1121 y(The)40 b(most)h(time-in)m(tensiv)m(e)j(p)s
-(ortion)c(of)h FC(NCO)g FD(execution)h(is)f(sp)s(en)m(t)g(in)f
+(ortion)c(of)h FD(NCO)g FE(execution)h(is)f(sp)s(en)m(t)g(in)f
 (arithmetic)i(op)s(erations,)150 1230 y(e.g.,)g(m)m(ultiplication,)h(a)
 m(v)m(eraging,)g(subtraction.)65 b(These)38 b(op)s(erations)h(w)m(ere)g
 (p)s(erformed)e(in)h(F)-8 b(ortran)150 1340 y(b)m(y)36
@@ -12355,41 +12577,41 @@ y(pabilities)j(ha)m(v)m(e)g(dramatically)g(impro)m(v)m(ed)f(since)g
 (1994.)42 b(W)-8 b(e)29 b(ha)m(v)m(e)g(accordingly)f(replaced)h(all)f
 (F)-8 b(ortran)150 1669 y(subroutines)23 b(with)h(C)30
 b(functions.)38 b(This)24 b(greatly)i(simpli\014es)e(the)g(task)h(of)g
-(building)e FC(NCO)h FD(on)h(nominally)150 1778 y(unsupp)s(orted)33
-b(platforms.)58 b(As)36 b(of)g(August)g(1999,)j FC(NCO)d
-FD(built)f(en)m(tirely)j(in)30 b(C)35 b(b)m(y)h(default.)58
-b(This)35 b(al-)150 1888 y(lo)m(w)m(ed)c FC(NCO)e FD(to)h(compile)g(on)
-f(an)m(y)h(mac)m(hine)g(with)f(an)h FC(ANSI)g FD(C)g(compiler.)41
+(building)e FD(NCO)h FE(on)h(nominally)150 1778 y(unsupp)s(orted)33
+b(platforms.)58 b(As)36 b(of)g(August)g(1999,)j FD(NCO)d
+FE(built)f(en)m(tirely)j(in)30 b(C)35 b(b)m(y)h(default.)58
+b(This)35 b(al-)150 1888 y(lo)m(w)m(ed)c FD(NCO)e FE(to)h(compile)g(on)
+f(an)m(y)h(mac)m(hine)g(with)f(an)h FD(ANSI)g FE(C)g(compiler.)41
 b(In)28 b(August)h(2004,)j(the)e(\014rst)150 1997 y(C99)37
-b(feature,)i(the)e Fy(restrict)d FD(t)m(yp)s(e)j(quali\014er,)h(en)m
-(tered)f FC(NCO)f FD(in)h(v)m(ersion)g(2.9.8.)61 b(C)30
+b(feature,)i(the)e Fz(restrict)d FE(t)m(yp)s(e)j(quali\014er,)h(en)m
+(tered)f FD(NCO)f FE(in)h(v)m(ersion)g(2.9.8.)61 b(C)30
 b(compilers)37 b(can)150 2107 y(obtain)25 b(b)s(etter)f(p)s(erformance)
 g(with)g(C99)h(restricted)g(p)s(oin)m(ters)f(since)g(they)h(inform)f
 (the)g(compiler)h(when)150 2217 y(it)30 b(ma)m(y)g(mak)m(e)h(F)-8
 b(ortran-lik)m(e)32 b(assumptions)d(regarding)h(p)s(oin)m(ter)f(con)m
 (ten)m(ts)j(alteration.)42 b(Subsequen)m(tly)-8 b(,)150
-2326 y FC(NCO)30 b FD(requires)g(a)h(C99)g(compiler)g(to)g(build)e
-(correctly)2029 2293 y Ft(3)2068 2326 y FD(.)275 2491
-y(In)j(Jan)m(uary)i(2009,)i FC(NCO)e FD(v)m(ersion)g(3.9.6)h(w)m(as)g
-(the)e(\014rst)g(to)i(link)e(to)i(the)f FC(GNU)g FD(Scien)m(ti\014c)h
-(Library)150 2600 y(\()p FC(GSL)p FD(\).)71 b FC(GSL)40
-b FD(m)m(ust)g(b)s(e)f(v)m(ersion)31 b(1.4)41 b(or)f(later.)71
-b FC(NCO)p FD(,)42 b(in)e(particular)g Fy(ncap2)p FD(,)h(uses)f(the)g
-FC(GSL)g FD(sp)s(e-)150 2710 y(cial)34 b(function)e(library)h(to)g(ev)
+2326 y FD(NCO)30 b FE(requires)g(a)h(C99)g(compiler)g(to)g(build)e
+(correctly)2029 2293 y Fu(3)2068 2326 y FE(.)275 2491
+y(In)j(Jan)m(uary)i(2009,)i FD(NCO)e FE(v)m(ersion)g(3.9.6)h(w)m(as)g
+(the)e(\014rst)g(to)i(link)e(to)i(the)f FD(GNU)g FE(Scien)m(ti\014c)h
+(Library)150 2600 y(\()p FD(GSL)p FE(\).)71 b FD(GSL)40
+b FE(m)m(ust)g(b)s(e)f(v)m(ersion)31 b(1.4)41 b(or)f(later.)71
+b FD(NCO)p FE(,)42 b(in)e(particular)g Fz(ncap2)p FE(,)h(uses)f(the)g
+FD(GSL)g FE(sp)s(e-)150 2710 y(cial)34 b(function)e(library)h(to)g(ev)
 -5 b(aluate)35 b(geoscience-relev)-5 b(an)m(t)37 b(mathematics)d(suc)m
 (h)e(as)h(Bessel)h(functions,)150 2819 y(Legendre)j(p)s(olynomials,)i
 (and)e(incomplete)h(gamma)g(functions)f(\(see)h(Section)g(4.1.19)h
-([GSL)e(sp)s(ecial)150 2929 y(functions],)30 b(page)i(134\).)275
-3093 y(In)40 b(June)g(2005,)45 b FC(NCO)c FD(v)m(ersion)g(3.0.1)i(b)s
+([GSL)e(sp)s(ecial)150 2929 y(functions],)30 b(page)i(146\).)275
+3093 y(In)40 b(June)g(2005,)45 b FD(NCO)c FE(v)m(ersion)g(3.0.1)i(b)s
 (egan)e(to)g(tak)m(e)i(adv)-5 b(an)m(tage)43 b(of)e(C99)g(mathematical)
 i(sp)s(e-)150 3203 y(cial)36 b(functions.)55 b(These)35
 b(include)g(the)g(standarized)g(gamma)h(function)f(\(called)i
-Fy(tgamma\(\))c FD(for)i(\\true)150 3312 y(gamma"\).)60
-b FC(NCO)37 b FD(automagically)i(tak)m(es)f(adv)-5 b(an)m(tage)38
-b(of)f(some)g FC(GNU)g FD(Compiler)f(Collection)i(\()p
-FC(GCC)p FD(\))150 3422 y(extensions)31 b(to)g FC(ANSI)g
-FD(C.)275 3586 y(As)38 b(of)h(July)f(2000)j(and)d FC(NCO)g
-FD(v)m(ersion)31 b(1.2)q(,)41 b FC(NCO)e FD(no)f(longer)i(p)s(erforms)d
+Fz(tgamma\(\))c FE(for)i(\\true)150 3312 y(gamma"\).)60
+b FD(NCO)37 b FE(automagically)i(tak)m(es)f(adv)-5 b(an)m(tage)38
+b(of)f(some)g FD(GNU)g FE(Compiler)f(Collection)i(\()p
+FD(GCC)p FE(\))150 3422 y(extensions)31 b(to)g FD(ANSI)g
+FE(C.)275 3586 y(As)38 b(of)h(July)f(2000)j(and)d FD(NCO)g
+FE(v)m(ersion)31 b(1.2)q(,)41 b FD(NCO)e FE(no)f(longer)i(p)s(erforms)d
 (arithmetic)j(op)s(erations)150 3696 y(in)f(F)-8 b(ortran.)69
 b(W)-8 b(e)41 b(decided)f(to)g(sacri\014ce)g(executable)h(sp)s(eed)e
 (for)g(co)s(de)h(main)m(tainabilit)m(y)-8 b(.)71 b(Since)40
@@ -12400,104 +12622,104 @@ b(no)150 3805 y(ob)5 b(jectiv)m(e)43 b(statistics)g(w)m(ere)f(ev)m(er)g
 (this)g(decision)h(is)f(unkno)m(wn.)51 b(Sup-)150 4025
 y(p)s(orting)37 b(F)-8 b(ortran)39 b(in)m(v)m(olv)m(es)h(main)m
 (taining)f(t)m(w)m(o)g(sets)f(of)g(routines)g(for)g(ev)m(ery)g
-(arithmetic)h(op)s(eration.)150 4134 y(The)d Fy(USE_FORTRAN_ARITHMETIC)
-31 b FD(\015ag)37 b(is)g(still)h(retained)f(in)f(the)h
-Fy(Makefile)p FD(.)58 b(The)36 b(\014le)h(con)m(taining)150
-4244 y(the)25 b(F)-8 b(ortran)25 b(co)s(de,)i Fy(nco_fortran.F)p
-FD(,)22 b(has)i(b)s(een)g(deprecated)i(but)e(a)h(v)m(olun)m(teer)h
+(arithmetic)h(op)s(eration.)150 4134 y(The)d Fz(USE_FORTRAN_ARITHMETIC)
+31 b FE(\015ag)37 b(is)g(still)h(retained)f(in)f(the)h
+Fz(Makefile)p FE(.)58 b(The)36 b(\014le)h(con)m(taining)150
+4244 y(the)25 b(F)-8 b(ortran)25 b(co)s(de,)i Fz(nco_fortran.F)p
+FE(,)22 b(has)i(b)s(een)g(deprecated)i(but)e(a)h(v)m(olun)m(teer)h
 (\(Dr.)31 b(F)-8 b(rank)m(enstein)q(?\))150 4353 y(could)26
 b(resurrect)g(it.)40 b(If)25 b(y)m(ou)i(w)m(ould)f(lik)m(e)h(to)g(v)m
-(olun)m(teer)g(to)g(main)m(tain)g Fy(nco_fortran.F)c
-FD(please)k(con)m(tact)150 4463 y(me.)150 4672 y Fu(1.3.1)63
-b(Compiling)42 b Fq(NCO)f Fu(for)h(Microsoft)g(Windo)m(ws)f
-Fq(OS)150 4819 y FC(NCO)24 b FD(has)f(b)s(een)g(successfully)h(p)s
+(olun)m(teer)g(to)g(main)m(tain)g Fz(nco_fortran.F)c
+FE(please)k(con)m(tact)150 4463 y(me.)150 4672 y Fv(1.3.1)63
+b(Compiling)42 b Fr(NCO)f Fv(for)h(Microsoft)g(Windo)m(ws)f
+Fr(OS)150 4819 y FD(NCO)24 b FE(has)f(b)s(een)g(successfully)h(p)s
 (orted)f(and)h(tested)g(on)g(most)g(Microsoft)i(Windo)m(ws)e(op)s
-(erating)g(systems)150 4929 y(including:)69 b FC(XP)45
-b FD(SP2/Vista/7.)86 b(Supp)s(ort)42 b(is)j(pro)m(vided)f(for)h
+(erating)g(systems)150 4929 y(including:)69 b FD(XP)45
+b FE(SP2/Vista/7.)86 b(Supp)s(ort)42 b(is)j(pro)m(vided)f(for)h
 (compiling)h(either)f(nativ)m(e)h(Windo)m(ws)150 5038
 y(executables,)33 b(using)e(the)h(Microsoft)h(Visual)f(Studio)f(2010)i
-(Compiler,)f(or)g(with)f(Cygwin,)g(the)h FC(UNIX)p FD(-)p
-150 5154 1200 4 v 199 5221 a Ft(3)275 5253 y Fp(NCO)i
-Fs(ma)n(y)h(still)h(build)f(with)h(an)f Fp(ANSI)g Fs(or)h
-Fp(ISO)f Fs(C89)i(or)e(C94/95-complian)n(t)j(compiler)e(if)g(the)f(C)26
-b(pre-pro)r(cessor)275 5340 y(unde\014nes)e(the)h Fr(restrict)j
-Fs(t)n(yp)r(e)d(quali\014er,)h(e.g.,)h(b)n(y)d(in)n(v)n(oking)i(the)f
-(compiler)i(with)e(`)p Fr(-Drestrict='')p Fs('.)p eop
+(Compiler,)f(or)g(with)f(Cygwin,)g(the)h FD(UNIX)p FE(-)p
+150 5154 1200 4 v 199 5221 a Fu(3)275 5253 y Fq(NCO)i
+Ft(ma)n(y)h(still)h(build)f(with)h(an)f Fq(ANSI)g Ft(or)h
+Fq(ISO)f Ft(C89)i(or)e(C94/95-complian)n(t)j(compiler)e(if)g(the)f(C)26
+b(pre-pro)r(cessor)275 5340 y(unde\014nes)e(the)h Fs(restrict)j
+Ft(t)n(yp)r(e)d(quali\014er,)h(e.g.,)h(b)n(y)d(in)n(v)n(oking)i(the)f
+(compiler)i(with)e(`)p Fs(-Drestrict='')p Ft('.)p eop
 end
 %%Page: 8 14
-TeXDict begin 8 13 bop 150 -116 a FD(8)2672 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(em)m(ulating)22 b(compatibilit)m(y)
-g(la)m(y)m(er)g(with)e(the)h FC(GNU)g FD(to)s(olc)m(hain.)39
+TeXDict begin 8 13 bop 150 -116 a FE(8)2672 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(em)m(ulating)22 b(compatibilit)m(y)
+g(la)m(y)m(er)g(with)e(the)h FD(GNU)g FE(to)s(olc)m(hain.)39
 b(The)20 b(switc)m(hes)h(necessary)g(to)g(accomplish)150
 408 y(b)s(oth)30 b(are)g(included)g(in)g(the)h(standard)e(distribution)
-h(of)g FC(NCO)p FD(.)275 568 y(Using)e(Microsoft)i(Visual)g(Studio)e
-(\()p FC(MVS)p FD(\),)i(one)f(m)m(ust)g(build)e FC(NCO)h
-FD(with)h(the)g(C)p Fy(++)e FD(compiler)j(since)150 677
-y FC(MVS)40 b FD(do)s(es)f(not)g(supp)s(ort)f(C99.)68
+h(of)g FD(NCO)p FE(.)275 568 y(Using)e(Microsoft)i(Visual)g(Studio)e
+(\()p FD(MVS)p FE(\),)i(one)f(m)m(ust)g(build)e FD(NCO)h
+FE(with)h(the)g(C)p Fz(++)e FE(compiler)j(since)150 677
+y FD(MVS)40 b FE(do)s(es)f(not)g(supp)s(ort)f(C99.)68
 b(Qt,)41 b(a)f(con)m(v)m(enien)m(t)i(in)m(tegrated)e(dev)m(elopmen)m(t)
 h(en)m(vironmen)m(t,)i(w)m(as)150 787 y(used)30 b(to)h(con)m(v)m(ert)h
-(the)e(pro)5 b(ject)31 b(\014les)f(to)h FC(MVS)g FD(format.)41
+(the)e(pro)5 b(ject)31 b(\014les)f(to)h FD(MVS)g FE(format.)41
 b(The)30 b(Qt)g(\014les)h(themselv)m(es)g(are)g(distributed)e(in)150
-897 y(the)i Fy(nco/qt)d FD(directory)-8 b(.)275 1056
+897 y(the)i Fz(nco/qt)d FE(directory)-8 b(.)275 1056
 y(Using)30 b(the)h(freely)f(a)m(v)-5 b(ailable)33 b(Cygwin)d
 (\(formerly)g(gn)m(u-win32\))i(dev)m(elopmen)m(t)f(en)m(vironmen)m(t)
-3530 1023 y Ft(4)3568 1056 y FD(,)g(the)150 1166 y(compilation)h(pro)s
-(cess)d(is)h(v)m(ery)g(similar)h(to)f(installing)i FC(NCO)d
-FD(on)h(a)g FC(UNIX)h FD(system.)41 b(Set)30 b(the)g
-Fy(PVM_ARCH)150 1275 y FD(prepro)s(cessor)42 b(tok)m(en)i(to)f
-Fy(WIN32)p FD(.)76 b(Note)44 b(that)g(de\014ning)e Fy(WIN32)f
-FD(has)h(the)h(side)g(e\013ect)h(of)f(disabling)150 1385
-y(In)m(ternet)31 b(features)f(of)h FC(NCO)f FD(\(see)h(b)s(elo)m(w\).)
-42 b FC(NCO)30 b FD(should)f(no)m(w)i(build)e(lik)m(e)j(it)e(do)s(es)g
-(on)h FC(UNIX)p FD(.)275 1544 y(The)24 b(least)i(p)s(ortable)f(section)
+3530 1023 y Fu(4)3568 1056 y FE(,)g(the)150 1166 y(compilation)h(pro)s
+(cess)d(is)h(v)m(ery)g(similar)h(to)f(installing)i FD(NCO)d
+FE(on)h(a)g FD(UNIX)h FE(system.)41 b(Set)30 b(the)g
+Fz(PVM_ARCH)150 1275 y FE(prepro)s(cessor)42 b(tok)m(en)i(to)f
+Fz(WIN32)p FE(.)76 b(Note)44 b(that)g(de\014ning)e Fz(WIN32)f
+FE(has)h(the)h(side)g(e\013ect)h(of)f(disabling)150 1385
+y(In)m(ternet)31 b(features)f(of)h FD(NCO)f FE(\(see)h(b)s(elo)m(w\).)
+42 b FD(NCO)30 b FE(should)f(no)m(w)i(build)e(lik)m(e)j(it)e(do)s(es)g
+(on)h FD(UNIX)p FE(.)275 1544 y(The)24 b(least)i(p)s(ortable)f(section)
 h(of)f(the)h(co)s(de)f(is)g(the)g(use)g(of)g(standard)f
-FC(UNIX)h FD(and)g(In)m(ternet)g(proto)s(cols)150 1654
-y(\(e.g.,)34 b Fy(ftp)p FD(,)d Fy(rcp)p FD(,)g Fy(scp)p
-FD(,)g Fy(sftp)p FD(,)g Fy(getuid)p FD(,)g Fy(gethostname)p
-FD(,)e(and)i(header)g(\014les)g Fy(<arpa/nameser.h>)d
-FD(and)150 1763 y Fy(<resolv.h>)p FD(\).)35 b(F)-8 b(ortunately)g(,)25
-b(these)c FC(UNIX)p FD(-y)h(calls)g(are)g(only)f(in)m(v)m(ok)m(ed)h(b)m
-(y)f(the)g(single)g FC(NCO)g FD(subroutine)150 1873 y(whic)m(h)32
+FD(UNIX)h FE(and)g(In)m(ternet)g(proto)s(cols)150 1654
+y(\(e.g.,)34 b Fz(ftp)p FE(,)d Fz(rcp)p FE(,)g Fz(scp)p
+FE(,)g Fz(sftp)p FE(,)g Fz(getuid)p FE(,)g Fz(gethostname)p
+FE(,)e(and)i(header)g(\014les)g Fz(<arpa/nameser.h>)d
+FE(and)150 1763 y Fz(<resolv.h>)p FE(\).)35 b(F)-8 b(ortunately)g(,)25
+b(these)c FD(UNIX)p FE(-y)h(calls)g(are)g(only)f(in)m(v)m(ok)m(ed)h(b)m
+(y)f(the)g(single)g FD(NCO)g FE(subroutine)150 1873 y(whic)m(h)32
 b(is)h(resp)s(onsible)f(for)g(retrieving)i(\014les)e(stored)h(on)f
 (remote)i(systems)f(\(see)g(Section)h(3.7)f([Remote)150
 1983 y(storage],)45 b(page)c(30\).)71 b(In)40 b(order)g(to)h(supp)s
-(ort)d FC(NCO)i FD(on)h(the)f(Microsoft)i(Windo)m(ws)e(platforms,)j
+(ort)d FD(NCO)i FE(on)h(the)f(Microsoft)i(Windo)m(ws)e(platforms,)j
 (this)150 2092 y(single)38 b(feature)f(w)m(as)h(disabled)f(\(on)g
-(Windo)m(ws)g FC(OS)g FD(only\).)61 b(This)36 b(w)m(as)i(required)e(b)m
+(Windo)m(ws)g FD(OS)g FE(only\).)61 b(This)36 b(w)m(as)i(required)e(b)m
 (y)h(Cygwin)30 b(18.x)q(|)150 2202 y(new)m(er)38 b(v)m(ersions)h(of)g
 (Cygwin)e(ma)m(y)i(supp)s(ort)e(these)i(proto)s(cols)g(\(let)h(me)e
 (kno)m(w)h(if)f(this)g(is)h(the)f(case\).)150 2311 y(The)28
-b FC(NCO)g FD(op)s(erators)g(should)f(b)s(eha)m(v)m(e)i(iden)m(tically)
-h(on)e(Windo)m(ws)g(and)g FC(UNIX)h FD(platforms)f(in)g(all)h(other)150
-2421 y(resp)s(ects.)150 2652 y FB(1.4)68 b(Sym)l(b)t(olic)45
-b(Links)150 2811 y FC(NCO)34 b FD(relies)g(on)g(a)g(common)g(set)g(of)g
+b FD(NCO)g FE(op)s(erators)g(should)f(b)s(eha)m(v)m(e)i(iden)m(tically)
+h(on)e(Windo)m(ws)g(and)g FD(UNIX)h FE(platforms)f(in)g(all)h(other)150
+2421 y(resp)s(ects.)150 2652 y FC(1.4)68 b(Sym)l(b)t(olic)45
+b(Links)150 2811 y FD(NCO)34 b FE(relies)g(on)g(a)g(common)g(set)g(of)g
 (underlying)f(algorithms.)52 b(T)-8 b(o)34 b(minimize)h(duplication)f
 (of)g(source)150 2921 y(co)s(de,)27 b(m)m(ultiple)g(op)s(erators)e
 (sometimes)i(share)f(the)g(same)g(underlying)e(source.)40
 b(This)24 b(is)i(accomplished)150 3031 y(b)m(y)42 b(sym)m(b)s(olic)h
 (links)g(from)f(a)g(single)i(underlying)d(executable)j(program)e(to)i
 (one)e(or)h(more)f(in)m(v)m(ok)m(ed)150 3140 y(executable)j(names.)79
-b(F)-8 b(or)43 b(example,)48 b Fy(nces)42 b FD(and)g
-Fy(ncrcat)g FD(are)h(sym)m(b)s(olically)i(link)m(ed)e(to)h(the)f
-Fy(ncra)150 3250 y FD(executable.)j(The)31 b Fy(ncra)f
-FD(executable)j(b)s(eha)m(v)m(es)g(sligh)m(tly)f(di\013eren)m(tly)h
+b(F)-8 b(or)43 b(example,)48 b Fz(nces)42 b FE(and)g
+Fz(ncrcat)g FE(are)h(sym)m(b)s(olically)i(link)m(ed)e(to)h(the)f
+Fz(ncra)150 3250 y FE(executable.)j(The)31 b Fz(ncra)f
+FE(executable)j(b)s(eha)m(v)m(es)g(sligh)m(tly)f(di\013eren)m(tly)h
 (based)e(on)g(its)h(in)m(v)m(o)s(cation)i(name)150 3359
-y(\(i.e.,)j(`)p Fy(argv[0])p FD('\),)d(whic)m(h)g(can)g(b)s(e)f
-Fy(nces)p FD(,)h Fy(ncra)p FD(,)g(or)g Fy(ncrcat)p FD(.)50
+y(\(i.e.,)j(`)p Fz(argv[0])p FE('\),)d(whic)m(h)g(can)g(b)s(e)f
+Fz(nces)p FE(,)h Fz(ncra)p FE(,)g(or)g Fz(ncrcat)p FE(.)50
 b(Logically)-8 b(,)38 b(these)d(are)f(three)g(di\013eren)m(t)150
 3469 y(op)s(erators)d(that)f(happ)s(en)f(to)i(share)f(the)h(same)g
 (executable.)275 3628 y(F)-8 b(or)27 b(historical)g(reasons,)h(and)e
 (to)h(b)s(e)e(more)i(user)e(friendly)-8 b(,)27 b(m)m(ultiple)h(synon)m
 (yms)d(\(or)i(pseudon)m(yms\))150 3738 y(ma)m(y)39 b(refer)f(to)h(the)f
 (same)h(op)s(erator)f(in)m(v)m(ok)m(ed)i(with)e(di\013eren)m(t)g(switc)
-m(hes.)65 b(F)-8 b(or)39 b(example,)i Fy(ncdiff)c FD(is)150
-3848 y(the)31 b(same)f(as)h Fy(ncbo)e FD(and)h Fy(ncpack)e
-FD(is)j(the)f(same)h(as)f Fy(ncpdq)p FD(.)40 b(W)-8 b(e)31
+m(hes.)65 b(F)-8 b(or)39 b(example,)i Fz(ncdiff)c FE(is)150
+3848 y(the)31 b(same)f(as)h Fz(ncbo)e FE(and)h Fz(ncpack)e
+FE(is)j(the)f(same)h(as)f Fz(ncpdq)p FE(.)40 b(W)-8 b(e)31
 b(implemen)m(t)g(the)g(sym)m(b)s(olic)f(links)h(and)150
 3957 y(synon)m(yms)f(b)m(y)g(the)g(executing)i(the)f(follo)m(wing)g
-FC(UNIX)g FD(commands)f(in)g(the)h(directory)g(where)f(the)g
-FC(NCO)150 4067 y FD(executables)i(are)f(installed.)390
-4226 y Fy(ln)47 b(-s)g(-f)h(ncbo)e(ncdiff)189 b(#)48
+FD(UNIX)g FE(commands)f(in)g(the)h(directory)g(where)f(the)g
+FD(NCO)150 4067 y FE(executables)i(are)f(installed.)390
+4226 y Fz(ln)47 b(-s)g(-f)h(ncbo)e(ncdiff)189 b(#)48
 b(ncbo)f(--op_typ='+')390 4336 y(ln)g(-s)g(-f)h(ncra)e(nces)285
 b(#)48 b(ncra)f(--pseudonym='nces')390 4445 y(ln)g(-s)g(-f)h(ncra)e
 (ncrcat)189 b(#)48 b(ncra)f(--pseudonym='ncrcat')390
@@ -12505,304 +12727,304 @@ b(#)48 b(ncra)f(--pseudonym='nces')390 4445 y(ln)g(-s)g(-f)h(ncra)e
 4664 y(ln)g(-s)g(-f)h(ncbo)e(ncsubtract)f(#)j(ncbo)e(--op_typ='-')390
 4774 y(ln)h(-s)g(-f)h(ncbo)e(ncmultiply)f(#)j(ncbo)e(--op_typ='*')390
 4884 y(ln)h(-s)g(-f)h(ncbo)e(ncdivide)141 b(#)48 b(ncbo)e(--op_typ='/')
-p 150 4979 1200 4 v 199 5047 a Ft(4)275 5078 y Fs(The)25
+p 150 4979 1200 4 v 199 5047 a Fu(4)275 5078 y Ft(The)25
 b(Cygwin)i(pac)n(k)l(age)f(is)g(a)n(v)l(ailable)h(from)275
-5166 y Fr(http://sourceware.redhat.com/cy)q(gwin)275
-5253 y Fs(Curren)n(tly)-6 b(,)24 b(Cygwin)i(20.x)g(comes)f(with)g(the)f
-Fp(GNU)h Fs(C/C)p Fr(++)h Fs(compilers)g(\()p Fr(gcc)p
-Fs(,)g Fr(g++)p Fs(.)35 b(These)25 b Fp(GNU)g Fs(compilers)h(ma)n(y)e
+5166 y Fs(http://sourceware.redhat.com/cy)q(gwin)275
+5253 y Ft(Curren)n(tly)-6 b(,)24 b(Cygwin)i(20.x)g(comes)f(with)g(the)f
+Fq(GNU)h Ft(C/C)p Fs(++)h Ft(compilers)g(\()p Fs(gcc)p
+Ft(,)g Fs(g++)p Ft(.)35 b(These)25 b Fq(GNU)g Ft(compilers)h(ma)n(y)e
 (b)r(e)275 5340 y(used)h(to)h(build)f(the)g(netCDF)h(distribution)g
 (itself.)p eop end
 %%Page: 9 15
-TeXDict begin 9 14 bop 150 -116 a FD(Chapter)30 b(1:)41
-b(In)m(tro)s(duction)2592 b(9)390 299 y Fy(ln)47 b(-s)g(-f)h(ncpdq)e
+TeXDict begin 9 14 bop 150 -116 a FE(Chapter)30 b(1:)41
+b(In)m(tro)s(duction)2592 b(9)390 299 y Fz(ln)47 b(-s)g(-f)h(ncpdq)e
 (ncpack)189 b(#)48 b(ncpdq)390 408 y(ln)f(-s)g(-f)h(ncpdq)e(ncunpack)93
 b(#)48 b(ncpdq)e(--unpack)390 518 y(#)h(NB:)g(Windows/Cygwin)d
 (executable/link)g(names)i(have)h('.exe')f(suffix,)g(e.g.,)390
 628 y(ln)h(-s)g(-f)h(ncbo.exe)d(ncdiff.exe)390 737 y(...)275
-898 y FD(The)32 b(imputed)h(command)g(called)i(b)m(y)e(the)h(link)f(is)
+898 y FE(The)32 b(imputed)h(command)g(called)i(b)m(y)e(the)h(link)f(is)
 h(giv)m(en)g(after)g(the)g(commen)m(t.)51 b(As)33 b(can)h(b)s(e)f
 (seen,)150 1007 y(some)39 b(these)h(links)e(impute)h(the)g(passing)g
 (of)g(a)g(command)g(line)g(argumen)m(t)g(to)h(further)e(mo)s(dify)g
 (the)150 1117 y(b)s(eha)m(vior)g(of)g(the)g(underlying)e(executable.)65
-b(F)-8 b(or)38 b(example,)j Fy(ncdivide)35 b FD(is)j(a)g(pseudon)m(ym)f
-(for)g Fy(ncbo)150 1226 y(--op_typ='/')p FD(.)150 1461
-y FB(1.5)68 b(Libraries)150 1621 y FD(Lik)m(e)34 b(all)g(executables,)i
-(the)d FC(NCO)g FD(op)s(erators)g(can)h(b)s(e)e(built)h(using)g
+b(F)-8 b(or)38 b(example,)j Fz(ncdivide)35 b FE(is)j(a)g(pseudon)m(ym)f
+(for)g Fz(ncbo)150 1226 y(--op_typ='/')p FE(.)150 1461
+y FC(1.5)68 b(Libraries)150 1621 y FE(Lik)m(e)34 b(all)g(executables,)i
+(the)d FD(NCO)g FE(op)s(erators)g(can)h(b)s(e)e(built)h(using)g
 (dynamic)g(linking.)49 b(This)32 b(reduces)150 1730 y(the)g(size)h(of)f
 (the)g(executable)h(and)e(can)h(result)g(in)g(signi\014can)m(t)h(p)s
 (erformance)e(enhancemen)m(ts)h(on)g(m)m(ul-)150 1840
 y(tiuser)k(systems.)59 b(Unfortunately)-8 b(,)39 b(if)d(y)m(our)h
-(library)f(searc)m(h)h(path)f(\(usually)g(the)h Fy(LD_LIBRARY_PATH)150
-1950 y FD(en)m(vironmen)m(t)f(v)-5 b(ariable\))36 b(is)f(not)g(set)h
+(library)f(searc)m(h)h(path)f(\(usually)g(the)h Fz(LD_LIBRARY_PATH)150
+1950 y FE(en)m(vironmen)m(t)f(v)-5 b(ariable\))36 b(is)f(not)g(set)h
 (correctly)-8 b(,)38 b(or)d(if)g(the)g(system)h(libraries)f(ha)m(v)m(e)
 h(b)s(een)e(mo)m(v)m(ed,)k(re-)150 2059 y(named,)j(or)e(deleted)g
-(since)g FC(NCO)g FD(w)m(as)g(installed,)j(it)e(is)e(p)s(ossible)h
-FC(NCO)f FD(op)s(erators)h(will)h(fail)f(with)g(a)150
+(since)g FD(NCO)g FE(w)m(as)g(installed,)j(it)e(is)e(p)s(ossible)h
+FD(NCO)f FE(op)s(erators)h(will)h(fail)f(with)g(a)150
 2169 y(message)e(that)g(they)g(cannot)f(\014nd)f(a)i(dynamically)g
-(loaded)f(\(ak)-5 b(a)38 b Fz(shared)d(ob)5 b(ject)39
-b FD(or)d(`)p Fy(.so)p FD('\))h(library)-8 b(.)150 2278
+(loaded)f(\(ak)-5 b(a)38 b FA(shared)d(ob)5 b(ject)39
+b FE(or)d(`)p Fz(.so)p FE('\))h(library)-8 b(.)150 2278
 y(This)35 b(will)i(pro)s(duce)e(a)h(distinctiv)m(e)i(error)d(message,)k
-(suc)m(h)d(as)g(`)p Fy(ld.so.1:)28 b(/usr/local/bin/nces:)150
+(suc)m(h)d(as)g(`)p Fz(ld.so.1:)28 b(/usr/local/bin/nces:)150
 2388 y(fatal:)h(libsunmath.so.1:)d(can't)j(open)g(file:)g(errno=2)p
-FD('.)48 b(If)33 b(y)m(ou)h(receiv)m(ed)h(an)f(error)f(message)150
+FE('.)48 b(If)33 b(y)m(ou)h(receiv)m(ed)h(an)f(error)f(message)150
 2498 y(lik)m(e)h(this,)g(ask)g(y)m(our)f(system)g(administrator)g(to)h
 (diagnose)g(whether)f(the)g(library)g(is)g(truly)g(missing)3688
-2465 y Ft(5)3725 2498 y FD(,)150 2607 y(or)f(whether)f(y)m(ou)h(simply)
+2465 y Fu(5)3725 2498 y FE(,)150 2607 y(or)f(whether)f(y)m(ou)h(simply)
 f(need)h(to)g(alter)h(y)m(our)f(library)f(searc)m(h)i(path.)44
 b(As)32 b(a)g(\014nal)g(remedy)-8 b(,)32 b(y)m(ou)g(ma)m(y)150
-2717 y(re-compile)g(and)d(install)j FC(NCO)e FD(with)g(all)h(op)s
-(erators)g(statically)i(link)m(ed.)150 2952 y FB(1.6)68
+2717 y(re-compile)g(and)d(install)j FD(NCO)e FE(with)g(all)h(op)s
+(erators)g(statically)i(link)m(ed.)150 2952 y FC(1.6)68
 b(netCDF2/3/4)46 b(and)f(HDF4/5)g(Supp)t(ort)150 3111
-y FD(netCDF)f(v)m(ersion)31 b(2)44 b(w)m(as)g(released)h(in)e(1993.)82
-b FC(NCO)44 b FD(\(sp)s(eci\014cally)g Fy(ncks)p FD(\))f(b)s(egan)h(so)
+y FE(netCDF)f(v)m(ersion)31 b(2)44 b(w)m(as)g(released)h(in)e(1993.)82
+b FD(NCO)44 b FE(\(sp)s(eci\014cally)g Fz(ncks)p FE(\))f(b)s(egan)h(so)
 s(on)f(after)h(this)150 3221 y(in)37 b(1994.)65 b(netCDF)31
 b(3.0)38 b(w)m(as)g(released)h(in)e(1996,)42 b(and)37
 b(w)m(e)h(w)m(ere)g(not)g(exactly)h(eager)g(to)g(con)m(v)m(ert)g(all)
 150 3330 y(co)s(de)c(to)h(the)f(new)m(er,)h(less)f(tested)h(netCDF)f
 (implemen)m(tation.)56 b(One)34 b(netCDF3)i(in)m(terface)g(call)g(\()p
-Fy(nc_)150 3440 y(inq_libvers)p FD(\))27 b(w)m(as)k(added)e(to)i
-FC(NCO)e FD(in)h(Jan)m(uary)-8 b(,)30 b(1998,)i(to)f(aid)f(in)g(main)m
+Fz(nc_)150 3440 y(inq_libvers)p FE(\))27 b(w)m(as)k(added)e(to)i
+FD(NCO)e FE(in)h(Jan)m(uary)-8 b(,)30 b(1998,)i(to)f(aid)f(in)g(main)m
 (tainance)h(and)f(debugging.)150 3550 y(In)38 b(Marc)m(h,)j(2001,)h
-(the)c(\014nal)g FC(NCO)g FD(con)m(v)m(ersion)i(to)f(netCDF3)g(w)m(as)g
+(the)c(\014nal)g FD(NCO)g FE(con)m(v)m(ersion)i(to)f(netCDF3)g(w)m(as)g
 (completed)g(\(coinciden)m(tally)i(on)150 3659 y(the)c(same)g(da)m(y)f
-(netCDF)31 b(3.5)38 b(w)m(as)f(released\).)60 b FC(NCO)36
-b FD(v)m(ersions)31 b(2.0)37 b(and)f(higher)g(are)h(built)g(with)f(the)
-150 3769 y Fy(-DNO_NETCDF_2)27 b FD(\015ag)j(to)i(ensure)d(no)h
+(netCDF)31 b(3.5)38 b(w)m(as)f(released\).)60 b FD(NCO)36
+b FE(v)m(ersions)31 b(2.0)37 b(and)f(higher)g(are)h(built)g(with)f(the)
+150 3769 y Fz(-DNO_NETCDF_2)27 b FE(\015ag)j(to)i(ensure)d(no)h
 (netCDF2)i(in)m(terface)g(calls)f(are)g(used.)275 3929
 y(Ho)m(w)m(ev)m(er,)48 b(the)43 b(abilit)m(y)h(to)g(compile)g
-FC(NCO)e FD(with)h(only)g(netCDF2)h(calls)g(is)f(w)m(orth)g(main)m
-(taining)150 4039 y(b)s(ecause)21 b FC(HDF)h FD(v)m(ersion)31
-b(4,)24 b(ak)-5 b(a)22 b FC(HDF4)f FD(or)g(simply)g FC(HDF)p
-FD(,)2066 4006 y Ft(6)2127 4039 y FD(\(a)m(v)-5 b(ailable)24
-b(from)d(HDF)h(\()p Fy(http://hdfgroup.)150 4148 y(org)p
-FD(\)\))32 b(supp)s(orts)e(only)i(the)g(netCDF2)h(library)f(calls)h
-(\(see)g Fy(http:)q(/)q(/)q(hdfgroup)q(.)q(org)q(/)q(UG41r3_ht)o(ml)q
+FD(NCO)e FE(with)h(only)g(netCDF2)h(calls)g(is)f(w)m(orth)g(main)m
+(taining)150 4039 y(b)s(ecause)21 b FD(HDF)h FE(v)m(ersion)31
+b(4,)24 b(ak)-5 b(a)22 b FD(HDF4)f FE(or)g(simply)g FD(HDF)p
+FE(,)2066 4006 y Fu(6)2127 4039 y FE(\(a)m(v)-5 b(ailable)24
+b(from)d(HDF)h(\()p Fz(http://hdfgroup.)150 4148 y(org)p
+FE(\)\))32 b(supp)s(orts)e(only)i(the)g(netCDF2)h(library)f(calls)h
+(\(see)g Fz(http:)q(/)q(/)q(hdfgroup)q(.)q(org)q(/)q(UG41r3_ht)o(ml)q
 (/)150 4258 y(SDS_SD)6 b(.)t(fm12)g(.)t(html)g(#)t(4778)o(4)p
-FD(\).)55 b(There)37 b(are)g(t)m(w)m(o)i(v)m(ersions)e(of)h
-FC(HDF)p FD(.)61 b(Curren)m(tly)37 b FC(HDF)g FD(v)m(ersion)31
+FE(\).)55 b(There)37 b(are)g(t)m(w)m(o)i(v)m(ersions)e(of)h
+FD(HDF)p FE(.)61 b(Curren)m(tly)37 b FD(HDF)g FE(v)m(ersion)31
 b(4.x)150 4367 y(supp)s(orts)21 b(the)j(full)f(netCDF2)h
-FC(API)f FD(and)g(th)m(us)f FC(NCO)h FD(v)m(ersion)31
-b(1.2.x)r(.)38 b(If)23 b FC(NCO)g FD(v)m(ersion)31 b(1.2.x)24
+FD(API)f FE(and)g(th)m(us)f FD(NCO)h FE(v)m(ersion)31
+b(1.2.x)r(.)38 b(If)23 b FD(NCO)g FE(v)m(ersion)31 b(1.2.x)24
 b(\(or)g(earlier\))150 4477 y(is)37 b(built)g(with)g(only)g(netCDF2)h
-(calls)g(then)f(all)h FC(NCO)e FD(op)s(erators)i(should)e(w)m(ork)h
-(with)f FC(HDF4)i FD(\014les)f(as)150 4587 y(w)m(ell)f(as)g(netCDF)g
-(\014les)964 4554 y Ft(7)1001 4587 y FD(.)55 b(The)35
-b(prepro)s(cessor)g(tok)m(en)h Fy(NETCDF2_ONLY)c FD(exists)k(in)f
-FC(NCO)g FD(v)m(ersion)c(1.2.x)p 150 4686 1200 4 v 199
-4753 a Ft(5)275 4785 y Fs(The)22 b Fr(ldd)h Fs(command,)h(if)f(it)g(is)
+(calls)g(then)f(all)h FD(NCO)e FE(op)s(erators)i(should)e(w)m(ork)h
+(with)f FD(HDF4)i FE(\014les)f(as)150 4587 y(w)m(ell)f(as)g(netCDF)g
+(\014les)964 4554 y Fu(7)1001 4587 y FE(.)55 b(The)35
+b(prepro)s(cessor)g(tok)m(en)h Fz(NETCDF2_ONLY)c FE(exists)k(in)f
+FD(NCO)g FE(v)m(ersion)c(1.2.x)p 150 4686 1200 4 v 199
+4753 a Fu(5)275 4785 y Ft(The)22 b Fs(ldd)h Ft(command,)h(if)f(it)g(is)
 g(a)n(v)l(ailable)g(on)g(y)n(our)e(system,)j(will)g(tell)f(y)n(ou)f
 (where)g(the)h(executable)f(is)h(lo)r(oking)h(for)f(eac)n(h)275
 4872 y(dynamically)i(loaded)i(library)-6 b(.)34 b(Use,)26
-b(e.g.,)h Fr(ldd)f(`which)h(nces`)p Fs(.)199 4944 y Ft(6)275
-4975 y Fs(The)36 b(Hierarc)n(hical)i(Data)e(F)-6 b(ormat,)40
-b(or)d Fp(HDF)p Fs(,)i(is)e(another)f(self-describing)i(data)f(format)g
+b(e.g.,)h Fs(ldd)f(`which)h(nces`)p Ft(.)199 4944 y Fu(6)275
+4975 y Ft(The)36 b(Hierarc)n(hical)i(Data)e(F)-6 b(ormat,)40
+b(or)d Fq(HDF)p Ft(,)i(is)e(another)f(self-describing)i(data)f(format)g
 (similar)h(to,)i(but)35 b(more)275 5063 y(elab)r(orate)30
-b(than,)f(netCDF.)g Fp(HDF)f Fs(comes)i(in)f(t)n(w)n(o)g(\015a)n(v)n
-(ors,)h Fp(HDF4)e Fs(and)h Fp(HDF5)p Fs(.)44 b(Often)28
-b(p)r(eople)h(use)g(the)f(shorthand)275 5150 y Fp(HDF)d
-Fs(to)h(refer)g(to)g(the)f(older)i(format)f Fp(HDF4)p
-Fs(.)35 b(P)n(eople)26 b(almost)h(alw)n(a)n(ys)g(use)f
-Fp(HDF5)f Fs(to)h(refer)h(to)e Fp(HDF5)p Fs(.)199 5221
-y Ft(7)275 5253 y Fs(One)16 b(m)n(ust)i(link)f(the)g
-Fp(NCO)g Fs(co)r(de)h(to)f(the)h Fp(HDF4)f(MFHDF)g Fs(library)g
+b(than,)f(netCDF.)g Fq(HDF)f Ft(comes)i(in)f(t)n(w)n(o)g(\015a)n(v)n
+(ors,)h Fq(HDF4)e Ft(and)h Fq(HDF5)p Ft(.)44 b(Often)28
+b(p)r(eople)h(use)g(the)f(shorthand)275 5150 y Fq(HDF)d
+Ft(to)h(refer)g(to)g(the)f(older)i(format)f Fq(HDF4)p
+Ft(.)35 b(P)n(eople)26 b(almost)h(alw)n(a)n(ys)g(use)f
+Fq(HDF5)f Ft(to)h(refer)h(to)e Fq(HDF5)p Ft(.)199 5221
+y Fu(7)275 5253 y Ft(One)16 b(m)n(ust)i(link)f(the)g
+Fq(NCO)g Ft(co)r(de)h(to)f(the)h Fq(HDF4)f(MFHDF)g Ft(library)g
 (instead)h(of)g(the)g(usual)f(netCDF)h(library)-6 b(.)31
-b(Apparen)n(tly)275 5340 y(`)p Fr(MF)p Fs(')k(stands)g(for)h
+b(Apparen)n(tly)275 5340 y(`)p Fs(MF)p Ft(')k(stands)g(for)h
 (Multi-\014le)f(not)f(for)i(Mik)n(e)f(F)-6 b(olk.)61
 b(In)34 b(an)n(y)g(case,)k(un)n(til)d(ab)r(out)g(2007)h(the)e
-Fp(MFHDF)g Fs(library)h(only)p eop end
+Fq(MFHDF)g Ft(library)h(only)p eop end
 %%Page: 10 16
-TeXDict begin 10 15 bop 150 -116 a FD(10)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(to)g(eliminate)i(all)e(netCDF3)h
-(calls.)42 b(Only)29 b(v)m(ersions)h(of)g FC(NCO)f FD(n)m(um)m(b)s
+TeXDict begin 10 15 bop 150 -116 a FE(10)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(to)g(eliminate)i(all)e(netCDF3)h
+(calls.)42 b(Only)29 b(v)m(ersions)h(of)g FD(NCO)f FE(n)m(um)m(b)s
 (ered)f(1.2.x)j(and)f(earlier)g(ha)m(v)m(e)h(this)150
-408 y(capabilit)m(y)-8 b(.)275 584 y FC(HDF)21 b FD(v)m(ersion)31
+408 y(capabilit)m(y)-8 b(.)275 584 y FD(HDF)21 b FE(v)m(ersion)31
 b(5)20 b(b)s(ecame)h(a)m(v)-5 b(ailable)23 b(in)d(1999,)k(but)c(did)f
 (not)i(supp)s(ort)e(netCDF)i(\(or,)i(for)d(that)h(matter,)150
 693 y(F)-8 b(ortran\))32 b(as)f(of)g(Decem)m(b)s(er)h(1999.)44
-b(By)31 b(early)g(2001,)i FC(HDF5)f FD(did)e(supp)s(ort)f(F)-8
-b(ortran90.)44 b(Thanks)29 b(to)j(an)150 803 y FC(NSF)p
-FD(-funded)i(\\harmonization")j(partnership,)e FC(HDF)h
-FD(b)s(egan)f(to)h(fully)e(supp)s(ort)g(the)h(netCDF3)h(read)150
+b(By)31 b(early)g(2001,)i FD(HDF5)f FE(did)e(supp)s(ort)f(F)-8
+b(ortran90.)44 b(Thanks)29 b(to)j(an)150 803 y FD(NSF)p
+FE(-funded)i(\\harmonization")j(partnership,)e FD(HDF)h
+FE(b)s(egan)f(to)h(fully)e(supp)s(ort)g(the)h(netCDF3)h(read)150
 913 y(in)m(terface)h(\(whic)m(h)f(is)f(emplo)m(y)m(ed)i(b)m(y)e
-FC(NCO)30 b FD(2.x)36 b(and)f(later\).)58 b(In)35 b(2004,)j(Unidata)f
-(and)d FC(THG)i FD(b)s(egan)g(a)150 1022 y(pro)5 b(ject)24
-b(to)g(implemen)m(t)g(the)g FC(HDF5)f FD(features)h(necessary)g(to)g
-(supp)s(ort)d(the)j(netCDF)g(API.)f FC(NCO)g FD(v)m(ersion)150
+FD(NCO)30 b FE(2.x)36 b(and)f(later\).)58 b(In)35 b(2004,)j(Unidata)f
+(and)d FD(THG)i FE(b)s(egan)g(a)150 1022 y(pro)5 b(ject)24
+b(to)g(implemen)m(t)g(the)g FD(HDF5)f FE(features)h(necessary)g(to)g
+(supp)s(ort)d(the)j(netCDF)g(API.)f FD(NCO)g FE(v)m(ersion)150
 1132 y(3.0.3)37 b(added)d(supp)s(ort)f(for)h(reading/writing)i
-(netCDF4-formatted)h FC(HDF5)e FD(\014les)f(in)h(Octob)s(er,)h(2005.)
+(netCDF4-formatted)h FD(HDF5)e FE(\014les)f(in)h(Octob)s(er,)h(2005.)
 150 1241 y(See)31 b(Section)g(3.9)g([File)h(F)-8 b(ormats)32
 b(and)d(Con)m(v)m(ersion],)j(page)f(35)g(for)f(more)h(details.)275
 1417 y(HDF)k(supp)s(ort)e(for)h(netCDF)h(w)m(as)g(completed)h(with)e
 (HDF5)i(v)m(ersion)f(v)m(ersion)c(1.8)k(in)f(2007.)55
 b(The)150 1526 y(netCDF)42 b(fron)m(t-end)e(that)i(uses)f(this)f
-FC(HDF5)i FD(bac)m(k-end)f(w)m(as)h(completed)g(and)e(released)i(so)s
+FD(HDF5)i FE(bac)m(k-end)f(w)m(as)h(completed)g(and)e(released)i(so)s
 (on)e(after)150 1636 y(as)d(netCDF)g(v)m(ersion)31 b(4.)60
-b(Do)m(wnload)38 b(it)f(from)f(the)h(netCDF4)g(\()p Fy(http:)5
+b(Do)m(wnload)38 b(it)f(from)f(the)h(netCDF4)g(\()p Fz(http:)5
 b(/)g(/)t(my)g(.)t(unidata)g(.)t(ucar)g(.)t(edu)g(/)150
-1745 y(content/software/netcdf/)o(netc)o(df-4)o FD(\))25
-b(w)m(ebsite.)275 1921 y FC(NCO)34 b FD(v)m(ersion)h(3.9.0,)i(released)
+1745 y(content/software/netcdf/)o(netc)o(df-4)o FE(\))25
+b(w)m(ebsite.)275 1921 y FD(NCO)34 b FE(v)m(ersion)h(3.9.0,)i(released)
 f(in)e(Ma)m(y)-8 b(,)37 b(2007,)h(added)33 b(supp)s(ort)g(for)h(all)i
 (netCDF4)f(atomic)h(data)150 2030 y(t)m(yp)s(es)g(except)h
-Fy(NC_STRING)p FD(.)55 b(Supp)s(ort)34 b(for)h Fy(NC_STRING)p
-FD(,)g(including)h(ragged)h(arra)m(ys)f(of)g(strings,)i(w)m(as)150
+Fz(NC_STRING)p FE(.)55 b(Supp)s(ort)34 b(for)h Fz(NC_STRING)p
+FE(,)g(including)h(ragged)h(arra)m(ys)f(of)g(strings,)i(w)m(as)150
 2140 y(\014nally)k(added)g(in)g(v)m(ersion)g(3.9.9,)48
 b(released)43 b(in)f(June,)i(2009.)78 b(Supp)s(ort)41
 b(for)h(additional)h(netCDF4)150 2250 y(features)37 b(has)f(b)s(een)f
 (incremen)m(tal.)60 b(W)-8 b(e)38 b(add)e(one)g(netCDF4)i(feature)f(at)
 g(a)f(time.)60 b(Y)-8 b(ou)37 b(m)m(ust)f(build)150 2359
-y FC(NCO)30 b FD(with)g(netCDF4)i(to)f(obtain)g(this)f(supp)s(ort.)275
-2534 y FC(NCO)36 b FD(supp)s(orts)e(man)m(y)j(netCDF4)h(features)e
+y FD(NCO)30 b FE(with)g(netCDF4)i(to)f(obtain)g(this)f(supp)s(ort.)275
+2534 y FD(NCO)36 b FE(supp)s(orts)e(man)m(y)j(netCDF4)h(features)e
 (including)g(atomic)i(data)g(t)m(yp)s(es,)g(Lemp)s(el-Ziv)e(com-)150
 2644 y(pression)43 b(\(de\015ation\),)49 b(c)m(h)m(unking,)f(and)c
 (groups.)81 b(The)43 b(new)h(atomic)i(data)e(t)m(yp)s(es)g(are)h
-Fy(NC_UBYTE)p FD(,)150 2754 y Fy(NC_USHORT)p FD(,)39
-b Fy(NC_UINT)p FD(,)h Fy(NC_INT64)p FD(,)f(and)g Fy(NC_UINT64)p
-FD(.)65 b(Eigh)m(t-b)m(yte)41 b(in)m(teger)f(supp)s(ort)e(is)h(an)g
+Fz(NC_UBYTE)p FE(,)150 2754 y Fz(NC_USHORT)p FE(,)39
+b Fz(NC_UINT)p FE(,)h Fz(NC_INT64)p FE(,)f(and)g Fz(NC_UINT64)p
+FE(.)65 b(Eigh)m(t-b)m(yte)41 b(in)m(teger)f(supp)s(ort)e(is)h(an)g
 (esp)s(e-)150 2863 y(cially)k(useful)d(impro)m(v)m(emen)m(t)i(from)f
-(netCDF3.)74 b(All)41 b FC(NCO)g FD(op)s(erators)h(supp)s(ort)d(these)i
-(t)m(yp)s(es,)j(e.g.,)150 2973 y Fy(ncks)37 b FD(copies)h(and)f(prin)m
-(ts)h(them,)i Fy(ncra)c FD(a)m(v)m(erages)41 b(them,)e(and)f
-Fy(ncap2)e FD(pro)s(cesses)i(algebraic)h(scripts)150
-3082 y(with)30 b(them.)41 b Fy(ncks)29 b FD(prin)m(ts)h(compression)g
+(netCDF3.)74 b(All)41 b FD(NCO)g FE(op)s(erators)h(supp)s(ort)d(these)i
+(t)m(yp)s(es,)j(e.g.,)150 2973 y Fz(ncks)37 b FE(copies)h(and)f(prin)m
+(ts)h(them,)i Fz(ncra)c FE(a)m(v)m(erages)41 b(them,)e(and)f
+Fz(ncap2)e FE(pro)s(cesses)i(algebraic)h(scripts)150
+3082 y(with)30 b(them.)41 b Fz(ncks)29 b FE(prin)m(ts)h(compression)g
 (information,)h(if)f(an)m(y)-8 b(,)32 b(to)f(screen.)275
-3258 y FC(NCO)51 b FD(v)m(ersion)h(3.9.1)h(\(June,)j(2007\))e(added)d
+3258 y FD(NCO)51 b FE(v)m(ersion)h(3.9.1)h(\(June,)j(2007\))e(added)d
 (supp)s(ort)e(for)j(netCDF4)g(Lemp)s(el-Ziv)f(de\015ation.)150
 3367 y(Lemp)s(el-Ziv)c(de\015ation)h(is)f(a)g(lossless)h(compression)g
-(tec)m(hnique.)92 b(See)47 b(Section)h(3.27)h([De\015ation],)150
-3477 y(page)31 b(78)g(for)f(more)h(details.)275 3652
-y FC(NCO)46 b FD(v)m(ersion)i(3.9.9)h(\(June,)i(2009\))e(added)e(supp)s
-(ort)e(for)i(netCDF4)h(c)m(h)m(unking)g(in)f Fy(ncks)f
-FD(and)150 3762 y Fy(ncecat)p FD(.)38 b FC(NCO)28 b FD(v)m(ersion)h
+(tec)m(hnique.)92 b(See)47 b(Section)h(3.28)h([De\015ation],)150
+3477 y(page)31 b(88)g(for)f(more)h(details.)275 3652
+y FD(NCO)46 b FE(v)m(ersion)i(3.9.9)h(\(June,)i(2009\))e(added)e(supp)s
+(ort)e(for)i(netCDF4)h(c)m(h)m(unking)g(in)f Fz(ncks)f
+FE(and)150 3762 y Fz(ncecat)p FE(.)38 b FD(NCO)28 b FE(v)m(ersion)h
 (4.0.4)h(\(Septem)m(b)s(er,)f(2010\))h(completed)f(supp)s(ort)e(for)h
 (netCDF4)h(c)m(h)m(unking)f(in)150 3871 y(the)j(remaining)f(op)s
 (erators.)41 b(See)31 b(Section)g(3.26)h([Ch)m(unking],)e(page)h(72)g
-(for)f(more)h(details.)275 4047 y FC(NCO)43 b FD(v)m(ersion)i(4.2.2)g
+(for)f(more)h(details.)275 4047 y FD(NCO)43 b FE(v)m(ersion)i(4.2.2)g
 (\(Octob)s(er,)j(2012\))e(added)d(supp)s(ort)f(for)i(netCDF4)h(groups)e
-(in)h Fy(ncks)f FD(and)150 4156 y Fy(ncecat)p FD(.)38
+(in)h Fz(ncks)f FE(and)150 4156 y Fz(ncecat)p FE(.)38
 b(Group)25 b(supp)s(ort)g(for)h(these)h(op)s(erators)g(w)m(as)g
 (complete)g(\(e.g.,)j(regular)c(expressions)g(to)h(select)150
 4266 y(groups)32 b(and)g(Group)g(P)m(ath)i(Editing\))f(as)g(of)g
-FC(NCO)f FD(v)m(ersion)i(4.2.6)g(\(Marc)m(h,)h(2013\).)50
+FD(NCO)f FE(v)m(ersion)i(4.2.6)g(\(Marc)m(h,)h(2013\).)50
 b(See)33 b(Section)g(3.13)150 4375 y([Group)d(P)m(ath)h(Editing],)g
 (page)g(46)h(for)e(more)g(details.)42 b(Group)30 b(supp)s(ort)f(for)h
 (all)h(other)g(op)s(erators)g(w)m(as)150 4485 y(\014nished)e(in)h(the)g
-FC(NCO)h FD(v)m(ersion)f(4.3.x)i(series)f(completed)g(in)f(Decem)m(b)s
+FD(NCO)h FE(v)m(ersion)f(4.3.x)i(series)f(completed)g(in)f(Decem)m(b)s
 (er,)i(2013.)275 4660 y(Supp)s(ort)39 b(for)i(netCDF4)i(in)e(the)g
-(\014rst)g(arithmetic)i(op)s(erator,)h Fy(ncbo)p FD(,)f(w)m(as)f(in)m
-(tro)s(duced)f(in)g FC(NCO)150 4770 y FD(v)m(ersion)d(4.3.0)h(\(Marc)m
-(h,)i(2013\).)65 b FC(NCO)37 b FD(v)m(ersion)h(4.3.1)h(\(Ma)m(y)-8
+(\014rst)g(arithmetic)i(op)s(erator,)h Fz(ncbo)p FE(,)f(w)m(as)f(in)m
+(tro)s(duced)f(in)g FD(NCO)150 4770 y FE(v)m(ersion)d(4.3.0)h(\(Marc)m
+(h,)i(2013\).)65 b FD(NCO)37 b FE(v)m(ersion)h(4.3.1)h(\(Ma)m(y)-8
 b(,)42 b(2013\))e(completed)e(this)g(supp)s(ort)e(and)150
 4880 y(in)m(tro)s(duced)20 b(the)h(\014rst)f(example)i(of)e(automatic)j
 (group)d(broadcasting.)39 b(See)21 b(Section)g(4.3)h([ncb)s(o)e(netCDF)
-150 4989 y(Binary)30 b(Op)s(erator],)h(page)g(162)h(for)e(more)g
-(details.)p 150 5154 1200 4 v 275 5253 a Fs(supp)r(orted)25
+150 4989 y(Binary)30 b(Op)s(erator],)h(page)g(174)h(for)e(more)g
+(details.)p 150 5154 1200 4 v 275 5253 a Ft(supp)r(orted)25
 b(netCDF2)h(calls.)38 b(Most)27 b(p)r(eople)f(will)i(nev)n(er)d(again)i
-(install)h Fp(NCO)d Fs(1.2.x)i(and)f(so)h(will)g(nev)n(er)f(use)g
-Fp(NCO)g Fs(to)275 5340 y(write)g Fp(HDF4)g Fs(\014les.)35
+(install)h Fq(NCO)d Ft(1.2.x)i(and)f(so)h(will)g(nev)n(er)f(use)g
+Fq(NCO)g Ft(to)275 5340 y(write)g Fq(HDF4)g Ft(\014les.)35
 b(It)25 b(is)h(simply)g(to)r(o)g(m)n(uc)n(h)f(trouble.)p
 eop end
 %%Page: 11 17
-TeXDict begin 11 16 bop 150 -116 a FD(Chapter)30 b(1:)41
+TeXDict begin 11 16 bop 150 -116 a FE(Chapter)30 b(1:)41
 b(In)m(tro)s(duction)2546 b(11)275 299 y(netCDF4-enabled)30
-b FC(NCO)e FD(handles)g(netCDF3)i(\014les)f(without)f(c)m(hange.)42
+b FD(NCO)e FE(handles)g(netCDF3)i(\014les)f(without)f(c)m(hange.)42
 b(In)28 b(addition,)h(it)g(automag-)150 408 y(ically)h(handles)f
-(netCDF4)h(\()p FC(HDF5)p FD(\))g(\014les:)40 b(If)28
-b(y)m(ou)i(feed)f FC(NCO)f FD(netCDF3)i(\014les,)g(it)f(pro)s(duces)f
+(netCDF4)h(\()p FD(HDF5)p FE(\))g(\014les:)40 b(If)28
+b(y)m(ou)i(feed)f FD(NCO)f FE(netCDF3)i(\014les,)g(it)f(pro)s(duces)f
 (netCDF3)150 518 y(output.)39 b(If)24 b(y)m(ou)i(feed)f
-FC(NCO)f FD(netCDF4)j(\014les,)f(it)g(pro)s(duces)d(netCDF4)k(output.)
-38 b(Use)26 b(the)f(handy-dandy)150 628 y(`)p Fy(-4)p
-FD(')35 b(switc)m(h)g(to)h(request)f(netCDF4)h(output)e(from)g(netCDF3)
+FD(NCO)f FE(netCDF4)j(\014les,)f(it)g(pro)s(duces)d(netCDF4)k(output.)
+38 b(Use)26 b(the)f(handy-dandy)150 628 y(`)p Fz(-4)p
+FE(')35 b(switc)m(h)g(to)h(request)f(netCDF4)h(output)e(from)g(netCDF3)
 i(input,)g(i.e.,)h(to)f(con)m(v)m(ert)g(netCDF3)g(to)150
 737 y(netCDF4.)42 b(See)30 b(Section)i(3.9)f([File)h(F)-8
 b(ormats)31 b(and)f(Con)m(v)m(ersion],)i(page)f(35)g(for)f(more)h
 (details.)275 899 y(When)22 b(link)m(ed)h(to)h(a)f(netCDF)g(library)f
-(that)i(w)m(as)f(built)f(with)h FC(HDF4)g FD(supp)s(ort)2913
-866 y Ft(8)2948 899 y FD(,)i FC(NCO)d FD(automatically)150
-1009 y(supp)s(orts)27 b(reading)j FC(HDF4)g FD(\014les)f(and)g(writing)
-g(them)h(as)f(netCDF3/netCDF4/)p FC(HDF5)k FD(\014les.)41
-b FC(NCO)29 b FD(can)150 1118 y(only)i(write)f(through)g(the)h(netCDF)g
-FC(API)p FD(,)f(whic)m(h)h(can)f(only)h(write)g(netCDF3/netCDF4/)p
-FC(HDF5)j FD(\014les.)150 1228 y(So)39 b FC(NCO)h FD(can)g
-Fo(r)-5 b(e)g(ad)50 b FC(HDF4)40 b FD(\014les,)j(p)s(erform)38
+(that)i(w)m(as)f(built)f(with)h FD(HDF4)g FE(supp)s(ort)2913
+866 y Fu(8)2948 899 y FE(,)i FD(NCO)d FE(automatically)150
+1009 y(supp)s(orts)27 b(reading)j FD(HDF4)g FE(\014les)f(and)g(writing)
+g(them)h(as)f(netCDF3/netCDF4/)p FD(HDF5)k FE(\014les.)41
+b FD(NCO)29 b FE(can)150 1118 y(only)i(write)f(through)g(the)h(netCDF)g
+FD(API)p FE(,)f(whic)m(h)h(can)f(only)h(write)g(netCDF3/netCDF4/)p
+FD(HDF5)j FE(\014les.)150 1228 y(So)39 b FD(NCO)h FE(can)g
+Fp(r)-5 b(e)g(ad)50 b FD(HDF4)40 b FE(\014les,)j(p)s(erform)38
 b(manipulations)h(and)g(calculations,)45 b(and)39 b(then)g(it)h(m)m
-(ust)150 1337 y Fo(write)e FD(the)30 b(results)g(in)h(netCDF)g(format.)
-275 1499 y FC(NCO)c FD(supp)s(ort)e(for)i FC(HDF4)h FD(has)f(b)s(een)f
+(ust)150 1337 y Fp(write)e FE(the)30 b(results)g(in)h(netCDF)g(format.)
+275 1499 y FD(NCO)c FE(supp)s(ort)e(for)i FD(HDF4)h FE(has)f(b)s(een)f
 (quite)i(functional)f(since)h(Decem)m(b)s(er,)h(2013.)41
 b(F)-8 b(or)28 b(b)s(est)f(results)150 1609 y(install)i
-FC(NCO)f FD(v)m(ersions)h(4.4.0)h(or)e(later)i(on)e(top)g(of)h(netCDF)g
+FD(NCO)f FE(v)m(ersions)h(4.4.0)h(or)e(later)i(on)e(top)g(of)h(netCDF)g
 (v)m(ersions)g(4.3.1)h(or)e(later.)41 b(Getting)30 b(to)f(this)150
 1718 y(p)s(oin)m(t)35 b(has)f(b)s(een)g(an)h(iterativ)m(e)i(e\013ort)e
 (where)g(Unidata)g(impro)m(v)m(ed)g(netCDF)g(library)g(capabilities)h
 (in)150 1828 y(resp)s(onse)e(to)i(our)f(requests.)55
-b FC(NCO)35 b FD(v)m(ersions)h(4.3.6)h(and)d(earlier)i(do)g(not)f
-(explicitly)i(supp)s(ort)c FC(HDF4)p FD(,)150 1938 y(y)m(et)39
-b(should)f(w)m(ork)g(with)g FC(HDF4)h FD(if)f(compiled)h(with)f(a)g(v)m
+b FD(NCO)35 b FE(v)m(ersions)h(4.3.6)h(and)d(earlier)i(do)g(not)f
+(explicitly)i(supp)s(ort)c FD(HDF4)p FE(,)150 1938 y(y)m(et)39
+b(should)f(w)m(ork)g(with)g FD(HDF4)h FE(if)f(compiled)h(with)f(a)g(v)m
 (ersion)h(of)f(netCDF)h(\(4.3.2)i(or)d(later?\))65 b(that)150
 2047 y(do)s(es)42 b(not)g(unexp)s(ectedly)g(die)h(when)e(probing)h
-FC(HDF4)g FD(\014les)g(with)g(standard)g(netCDF)h(calls.)77
-b FC(NCO)150 2157 y FD(v)m(ersions)39 b(4.3.7{4.3.9)j(\(Octob)s
+FD(HDF4)g FE(\014les)g(with)g(standard)g(netCDF)h(calls.)77
+b FD(NCO)150 2157 y FE(v)m(ersions)39 b(4.3.7{4.3.9)j(\(Octob)s
 (er{Decem)m(b)s(er,)g(2013\))e(use)e(a)h(sp)s(ecial)g(\015ag)f(to)h(w)m
-(ork)-5 b(around)37 b(netCDF)150 2266 y FC(HDF4)28 b
-FD(issues.)39 b(The)27 b(user)g(m)m(ust)g(tell)i(these)f(v)m(ersions)g
-(of)f FC(NCO)g FD(that)i(an)e(input)f(\014le)i(is)f FC(HDF4)h
-FD(format)g(b)m(y)150 2376 y(using)i(the)g(`)p Fy(--hdf4)p
-FD(')g(switc)m(h.)275 2538 y(When)25 b(compiled)h(with)f(netCDF)h(v)m
-(ersion)g(4.3.1)h(\(20140116\))j(or)25 b(later,)j FC(NCO)d
-FD(v)m(ersions)g(4.4.0)j(\(Jan-)150 2647 y(uary)-8 b(,)25
+(ork)-5 b(around)37 b(netCDF)150 2266 y FD(HDF4)28 b
+FE(issues.)39 b(The)27 b(user)g(m)m(ust)g(tell)i(these)f(v)m(ersions)g
+(of)f FD(NCO)g FE(that)i(an)e(input)f(\014le)i(is)f FD(HDF4)h
+FE(format)g(b)m(y)150 2376 y(using)i(the)g(`)p Fz(--hdf4)p
+FE(')g(switc)m(h.)275 2538 y(When)25 b(compiled)h(with)f(netCDF)h(v)m
+(ersion)g(4.3.1)h(\(20140116\))j(or)25 b(later,)j FD(NCO)d
+FE(v)m(ersions)g(4.4.0)j(\(Jan-)150 2647 y(uary)-8 b(,)25
 b(2014\))g(and)e(later)h(more)f(gracefully)i(handle)d
-FC(HDF4)i FD(\014les.)38 b(In)23 b(particular,)i(the)e(`)p
-Fy(--hdf4)p FD(')f(switc)m(h)i(is)150 2757 y(obsolete.)41
-b(Curren)m(t)26 b(v)m(ersions)g(of)h FC(NCO)f FD(use)g(netCDF)h(to)g
+FD(HDF4)i FE(\014les.)38 b(In)23 b(particular,)i(the)e(`)p
+Fz(--hdf4)p FE(')f(switc)m(h)i(is)150 2757 y(obsolete.)41
+b(Curren)m(t)26 b(v)m(ersions)g(of)h FD(NCO)f FE(use)g(netCDF)h(to)g
 (determine)g(automatically)i(whether)d(the)h(un-)150
-2867 y(derlying)22 b(\014le)g(is)f FC(HDF4)p FD(,)j(and)e(then)f(tak)m
+2867 y(derlying)22 b(\014le)g(is)f FD(HDF4)p FE(,)j(and)e(then)f(tak)m
 (e)i(appropriate)f(precautions)g(to)h(a)m(v)m(oid)g(netCDF4)g
-FC(API)e FD(calls)i(that)150 2976 y(fail)36 b(when)f(applied)g(to)i
-FC(HDF4)f FD(\014les)g(\(e.g.,)i Fy(nc_inq_var_chunking\(\))p
-FD(,)32 b Fy(nc_inq_var_deflate\(\))p FD(\).)150 3086
+FD(API)e FE(calls)i(that)150 2976 y(fail)36 b(when)f(applied)g(to)i
+FD(HDF4)f FE(\014les)g(\(e.g.,)i Fz(nc_inq_var_chunking\(\))p
+FE(,)32 b Fz(nc_inq_var_deflate\(\))p FE(\).)150 3086
 y(When)43 b(compiled)g(with)g(netCDF)h(v)m(ersion)g(4.3.2)h
-(\(20140423\))i(or)c(earlier,)48 b FC(NCO)42 b FD(will)i(rep)s(ort)e
+(\(20140423\))i(or)c(earlier,)48 b FD(NCO)42 b FE(will)i(rep)s(ort)e
 (that)150 3195 y(c)m(h)m(unking)j(and)f(de\015ation)h(prop)s(erties)f
-(of)h FC(HDF4)g FD(\014les)f(as)h Fy(HDF4_UNKNOWN)p FD(,)g(b)s(ecause)g
+(of)h FD(HDF4)g FE(\014les)f(as)h Fz(HDF4_UNKNOWN)p FE(,)g(b)s(ecause)g
 (determining)150 3305 y(those)27 b(prop)s(erties)f(w)m(as)g(imp)s
 (ossible.)39 b(When)26 b(compiled)h(with)f(netCDF)h(v)m(ersion)g
-(4.3.3-rc2)i(\(20140925\))150 3415 y(or)f(later,)i FC(NCO)e
-FD(v)m(ersions)h(4.4.6)h(\(Octob)s(er,)f(2014\))h(and)e(later)h(fully)f
+(4.3.3-rc2)i(\(20140925\))150 3415 y(or)f(later,)i FD(NCO)e
+FE(v)m(ersions)h(4.4.6)h(\(Octob)s(er,)f(2014\))h(and)e(later)h(fully)f
 (supp)s(ort)f(c)m(h)m(unking)h(and)g(de\015ation)150
-3524 y(features)j(of)g FC(HDF4)f FD(\014les.)42 b(The)30
-b(`)p Fy(--hdf4)p FD(')f(switc)m(h)i(is)g(supp)s(orted)d(\(for)j(bac)m
+3524 y(features)j(of)g FD(HDF4)f FE(\014les.)42 b(The)30
+b(`)p Fz(--hdf4)p FE(')f(switc)m(h)i(is)g(supp)s(orted)d(\(for)j(bac)m
 (kw)m(ards)g(compatibilit)m(y\))i(y)m(et)150 3634 y(redundan)m(t)c
 (\(i.e.,)j(do)s(es)e(no)h(harm\))e(with)i(curren)m(t)f(v)m(ersions)g
-(of)h FC(NCO)f FD(and)g(netCDF.)275 3796 y(Con)m(v)m(erting)35
-b FC(HDF4)f FD(\014les)h(to)g(netCDF:)g(Since)f FC(NCO)g
-FD(reads)g FC(HDF4)g FD(\014les)h(nativ)m(ely)-8 b(,)37
+(of)h FD(NCO)f FE(and)g(netCDF.)275 3796 y(Con)m(v)m(erting)35
+b FD(HDF4)f FE(\014les)h(to)g(netCDF:)g(Since)f FD(NCO)g
+FE(reads)g FD(HDF4)g FE(\014les)h(nativ)m(ely)-8 b(,)37
 b(it)e(is)f(no)m(w)g(easy)150 3905 y(to)d(con)m(v)m(ert)h
-FC(HDF4)f FD(\014les)f(to)h(netCDF)g(\014les)g(directly)-8
-b(,)31 b(e.g.,)390 4067 y Fy(ncks)381 b(fl.hdf)46 b(fl.nc)g(#)i
+FD(HDF4)f FE(\014les)f(to)h(netCDF)g(\014les)g(directly)-8
+b(,)31 b(e.g.,)390 4067 y Fz(ncks)381 b(fl.hdf)46 b(fl.nc)g(#)i
 (Convert)d(HDF4->netCDF4)g(\(NCO)h(4.4.0+,)g(netCDF)g(4.3.1+\))390
 4177 y(ncks)h(--hdf4)f(fl.hdf)g(fl.nc)g(#)i(Convert)d(HDF4->netCDF4)g
-(\(NCO)h(4.3.7-4.3.9\))275 4338 y FD(The)d(most)g(e\016cien)m(t)i(and)e
-(accurate)i(w)m(a)m(y)g(to)f(con)m(v)m(ert)h FC(HDF4)f
-FD(data)g(to)h(netCDF)f(format)g(is)f(to)150 4448 y(con)m(v)m(ert)g(to)
-g(netCDF4)g(using)f FC(NCO)f FD(as)h(ab)s(o)m(v)m(e.)77
-b(Man)m(y)42 b FC(HDF4)h FD(pro)s(ducers)d(\()p FC(NASA)p
-FD(!\))77 b(lo)m(v)m(e)44 b(to)e(use)150 4558 y(netCDF4)34
+(\(NCO)h(4.3.7-4.3.9\))275 4338 y FE(The)d(most)g(e\016cien)m(t)i(and)e
+(accurate)i(w)m(a)m(y)g(to)f(con)m(v)m(ert)h FD(HDF4)f
+FE(data)g(to)h(netCDF)f(format)g(is)f(to)150 4448 y(con)m(v)m(ert)g(to)
+g(netCDF4)g(using)f FD(NCO)f FE(as)h(ab)s(o)m(v)m(e.)77
+b(Man)m(y)42 b FD(HDF4)h FE(pro)s(ducers)d(\()p FD(NASA)p
+FE(!\))77 b(lo)m(v)m(e)44 b(to)e(use)150 4558 y(netCDF4)34
 b(t)m(yp)s(es,)h(e.g.,)h(unsigned)c(b)m(ytes,)j(so)e(this)h(pro)s
 (cedure)e(is)h(the)h(most)g(t)m(ypical.)51 b(Con)m(v)m(ersion)34
-b(of)150 4667 y FC(HDF4)26 b FD(to)h(netCDF4)g(as)g(ab)s(o)m(v)m(e)g
+b(of)150 4667 y FD(HDF4)26 b FE(to)h(netCDF4)g(as)g(ab)s(o)m(v)m(e)g
 (su\016ces)f(when)f(the)h(data)h(will)f(only)g(b)s(e)g(pro)s(cessed)f
-(b)m(y)h FC(NCO)g FD(and)g(other)150 4777 y(netCDF4-a)m(w)m(are)33
+(b)m(y)h FD(NCO)g FE(and)g(other)150 4777 y(netCDF4-a)m(w)m(are)33
 b(to)s(ols.)275 4939 y(Ho)m(w)m(ev)m(er,)g(man)m(y)f(to)s(ols)g(are)f
 (not)h(fully)f(netCDF4-a)m(w)m(are,)j(and)d(so)g(con)m(v)m(ersion)i(to)
 f(netCDF3)g(ma)m(y)150 5048 y(b)s(e)e(desirable.)41 b(Obtaining)30
-b(a)h(netCDF3)g(\014le)g(from)f(an)g FC(HDF4)g FD(is)h(no)m(w)f(easy:)p
-150 5154 1200 4 v 199 5221 a Ft(8)275 5253 y Fs(The)20
+b(an)m(y)h(netCDF)g(\014le)f(from)g(an)g FD(HDF4)h FE(is)f(easy:)p
+150 5154 1200 4 v 199 5221 a Fu(8)275 5253 y Ft(The)20
 b(pro)r(cedure)h(for)h(doing)f(this)g(is)g(do)r(cumen)n(ted)f(at)h
-Fr(http://www.unidata.ucar.edu/so)q(ftwa)q(re/ne)q(tcdf)q(/doc)q(s/)275
-5340 y(build_hdf4.html)p Fs(.)p eop end
+Fs(http://www.unidata.ucar.edu/so)q(ftwa)q(re/ne)q(tcdf)q(/doc)q(s/)275
+5340 y(build_hdf4.html)p Ft(.)p eop end
 %%Page: 12 18
-TeXDict begin 12 17 bop 150 -116 a FD(12)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(ncks)47 b(-3)g(fl.hdf)f(fl.nc)
+TeXDict begin 12 17 bop 150 -116 a FE(12)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(ncks)47 b(-3)g(fl.hdf)f(fl.nc)
 285 b(#)47 b(HDF4->netCDF3)e(\(NCO)h(4.4.0+,)g(netCDF)g(4.3.1+\))390
 408 y(ncks)h(-4)g(fl.hdf)f(fl.nc)285 b(#)47 b(HDF4->netCDF4)e(\(NCO)h
 (4.4.0+,)g(netCDF)g(4.3.1+\))390 518 y(ncks)h(-6)g(fl.hdf)f(fl.nc)285
@@ -12814,238 +13036,242 @@ b(#)47 b(HDF4->netCDF3)e(64-bit)93 b(\(NCO)47 b(4.4.0+,)f(...\))390
 (\(netCDF)i(4.3.0-\))390 956 y(ncks)h(--hdf4)f(-6)h(fl.hdf)f(fl.nc)g(#)
 i(HDF4->netCDF3)c(64-bit)94 b(\(netCDF)46 b(4.3.0-\))390
 1066 y(ncks)h(--hdf4)f(-7)h(fl.hdf)f(fl.nc)g(#)i(HDF4->netCDF4)c
-(classic)i(\(netCDF)g(4.3.0-\))275 1235 y FD(As)37 b(of)g
-FC(NCO)g FD(v)m(ersion)g(4.4.0)i(\(Jan)m(uary)-8 b(,)40
+(classic)i(\(netCDF)g(4.3.0-\))275 1227 y FE(As)37 b(of)g
+FD(NCO)g FE(v)m(ersion)g(4.4.0)i(\(Jan)m(uary)-8 b(,)40
 b(2014\),)h(these)c(commands)g(w)m(ork)g(ev)m(en)h(when)e(the)i
-FC(HDF4)150 1344 y FD(\014le)28 b(con)m(tains)h(netCDF4)f(atomic)h(t)m
+FD(HDF4)150 1337 y FE(\014le)28 b(con)m(tains)h(netCDF4)f(atomic)h(t)m
 (yp)s(es)f(\(e.g.,)i(unsigned)d(b)m(ytes,)i(64-bit)f(in)m(tegers\))i(b)
-s(ecause)d FC(NCO)h FD(can)150 1454 y(auto)s(con)m(v)m(ert)k(ev)m
+s(ecause)d FD(NCO)h FE(can)150 1447 y(auto)s(con)m(v)m(ert)k(ev)m
 (erything)f(to)h(atomic)g(t)m(yp)s(es)e(supp)s(orted)e(b)m(y)j(netCDF3)
-2666 1421 y Ft(9)2704 1454 y FD(.)275 1623 y(As)43 b(of)g
-FC(NCO)f FD(v)m(ersion)i(4.4.4)h(\(Ma)m(y)-8 b(,)48 b(2014\))d(b)s(oth)
-d Fy(ncl_convert2nc)d FD(and)k FC(NCO)g FD(ha)m(v)m(e)h(built-in,)150
-1732 y(automatic)35 b(w)m(ork)-5 b(arounds)32 b(to)i(handle)f(elemen)m
+2666 1414 y Fu(9)2704 1447 y FE(.)275 1608 y(As)43 b(of)g
+FD(NCO)f FE(v)m(ersion)i(4.4.4)h(\(Ma)m(y)-8 b(,)48 b(2014\))d(b)s(oth)
+d Fz(ncl_convert2nc)d FE(and)k FD(NCO)g FE(ha)m(v)m(e)h(built-in,)150
+1718 y(automatic)35 b(w)m(ork)-5 b(arounds)32 b(to)i(handle)f(elemen)m
 (t)i(names)e(that)h(con)m(tain)g(c)m(haracters)h(that)f(are)f(legal)i
-(in)150 1842 y FC(HDF)43 b FD(though)f(are)h(illegal)h(in)f
-FC(netCDF)p FD(.)77 b(F)-8 b(or)43 b(example,)j(slashes)d(and)e
-(leading)j(sp)s(ecial)e(c)m(haracters)150 1951 y(are)c(are)g(legal)h
-(in)e FC(HDF)h FD(and)f(illegal)j(in)d FC(netCDF)h FD(elemen)m(t)h
+(in)150 1827 y FD(HDF)43 b FE(though)f(are)h(illegal)h(in)f
+FD(netCDF)p FE(.)77 b(F)-8 b(or)43 b(example,)j(slashes)d(and)e
+(leading)j(sp)s(ecial)e(c)m(haracters)150 1937 y(are)c(are)g(legal)h
+(in)e FD(HDF)h FE(and)f(illegal)j(in)d FD(netCDF)h FE(elemen)m(t)h
 (\(i.e.,)i(group,)d(v)-5 b(ariable,)41 b(dimension,)e(and)150
-2061 y(attribute\))31 b(names.)40 b FC(NCO)29 b FD(con)m(v)m(erts)i
+2046 y(attribute\))31 b(names.)40 b FD(NCO)29 b FE(con)m(v)m(erts)i
 (these)f(forbidden)e(c)m(haracters)j(to)f(underscores,)f(and)g(retains)
-h(the)150 2171 y(original)i(names)e(of)g(v)-5 b(ariables)31
+h(the)150 2156 y(original)i(names)e(of)g(v)-5 b(ariables)31
 b(in)f(automatically)k(pro)s(duced)28 b(attributes)j(named)f
-Fy(hdf_name)3410 2138 y Ft(10)3478 2171 y FD(.)275 2339
+Fz(hdf_name)3410 2123 y Fu(10)3478 2156 y FE(.)275 2318
 y(Finally)-8 b(,)42 b(in)c(F)-8 b(ebruary)38 b(2014,)43
-b(w)m(e)c(learned)g(that)g(the)g FC(HDF)g FD(group)f(has)g(a)h(pro)5
-b(ject)39 b(called)h FC(H4CF)150 2449 y FD(\(describ)s(ed)f(here)h(\()p
-Fy(http:)8 b(/)g(/)e(hdfeos)i(.)e(org)i(/)e(software)h(/)f(h4)o(cfli)o
-(b)i(.)e(ph)o(p)p FD(\)\))35 b(whose)40 b(goal)h(is)f(to)h(mak)m(e)150
-2558 y FC(HDF4)g FD(\014les)f(accessible)i(to)f FC(CF)f
-FD(to)s(ols)h(and)e(con)m(v)m(en)m(tions.)73 b(Their)39
+b(w)m(e)c(learned)g(that)g(the)g FD(HDF)g FE(group)f(has)g(a)h(pro)5
+b(ject)39 b(called)h FD(H4CF)150 2427 y FE(\(describ)s(ed)f(here)h(\()p
+Fz(http:)8 b(/)g(/)e(hdfeos)i(.)e(org)i(/)e(software)h(/)f(h4)o(cfli)o
+(b)i(.)e(ph)o(p)p FE(\)\))35 b(whose)40 b(goal)h(is)f(to)h(mak)m(e)150
+2537 y FD(HDF4)g FE(\014les)f(accessible)i(to)f FD(CF)f
+FE(to)s(ols)h(and)e(con)m(v)m(en)m(tions.)73 b(Their)39
 b(pro)5 b(ject)41 b(includes)f(a)g(to)s(ol)h(named)150
-2668 y Fy(h4tonccf)25 b FD(that)j(con)m(v)m(erts)h FC(HDF4)e
-FD(\014les)h(to)g(netCDF3)g(or)f(netCDF4)i(\014les.)39
+2646 y Fz(h4tonccf)25 b FE(that)j(con)m(v)m(erts)h FD(HDF4)e
+FE(\014les)h(to)g(netCDF3)g(or)f(netCDF4)i(\014les.)39
 b(W)-8 b(e)29 b(are)e(not)h(y)m(et)g(sure)f(what)150
-2778 y(adv)-5 b(an)m(tages)27 b(or)f(features)g Fy(h4tonccf)d
-FD(has)j(that)g(are)g(not)g(in)f FC(NCO)p FD(,)h(though)g(w)m(e)g(susp)
-s(ect)f(b)s(oth)g(metho)s(ds)150 2887 y(ha)m(v)m(e)32
+2756 y(adv)-5 b(an)m(tages)27 b(or)f(features)g Fz(h4tonccf)d
+FE(has)j(that)g(are)g(not)g(in)f FD(NCO)p FE(,)h(though)g(w)m(e)g(susp)
+s(ect)f(b)s(oth)g(metho)s(ds)150 2866 y(ha)m(v)m(e)32
 b(their)e(o)m(wn)g(adv)-5 b(an)m(tages.)43 b(Corrections)31
-b(w)m(elcome.)275 3056 y(As)37 b(of)g(2012,)k(netCDF4)e(is)e(relativ)m
+b(w)m(elcome.)275 3027 y(As)37 b(of)g(2012,)k(netCDF4)e(is)e(relativ)m
 (ely)j(stable)e(soft)m(w)m(are.)63 b(Problems)37 b(with)g(netCDF4)h
-(and)f FC(HDF)150 3166 y FD(libraries)d(ha)m(v)m(e)h(mainly)e(b)s(een)g
-(\014xed.)50 b(Binary)34 b FC(NCO)f FD(distributions)g(shipp)s(ed)f(as)
-i FC(RPM)p FD(s)f(and)g(as)h(debs)150 3275 y(ha)m(v)m(e)e(used)d(the)i
+(and)f FD(HDF)150 3137 y FE(libraries)d(ha)m(v)m(e)h(mainly)e(b)s(een)g
+(\014xed.)50 b(Binary)34 b FD(NCO)f FE(distributions)g(shipp)s(ed)f(as)
+i FD(RPM)p FE(s)f(and)g(as)h(debs)150 3246 y(ha)m(v)m(e)e(used)d(the)i
 (netCDF4)g(library)f(since)h(2010)h(and)e(2011,)i(resp)s(ectiv)m(ely)-8
-b(.)275 3444 y(One)41 b(m)m(ust)h(often)h(build)e FC(NCO)h
-FD(from)f(source)i(to)g(obtain)f(netCDF4)h(supp)s(ort.)75
-b(T)m(ypically)-8 b(,)47 b(one)150 3553 y(sp)s(eci\014es)37
+b(.)275 3408 y(One)41 b(m)m(ust)h(often)h(build)e FD(NCO)h
+FE(from)f(source)i(to)g(obtain)f(netCDF4)h(supp)s(ort.)75
+b(T)m(ypically)-8 b(,)47 b(one)150 3517 y(sp)s(eci\014es)37
 b(the)g(ro)s(ot)g(of)g(the)g(netCDF4)h(installation)h(directory)-8
-b(.)61 b(Do)38 b(this)f(with)f(the)h Fy(NETCDF4_ROOT)150
-3663 y FD(v)-5 b(ariable.)42 b(Then)29 b(use)h(y)m(our)g(preferred)f
-FC(NCO)i FD(build)e(mec)m(hanism,)i(e.g.,)390 3832 y
-Fy(export)46 b(NETCDF4_ROOT=/usr/local/n)o(etc)o(df4)41
-b(#)48 b(Set)f(netCDF4)f(location)390 3941 y(cd)h(~/nco;./configure)c
-(--enable-netcdf4)91 b(#)48 b(Configure)d(mechanism)g(-or-)390
-4051 y(cd)i(~/nco/bld;./make)d(NETCDF4=Y)h(allinone)g(#)j(Old)f
-(Makefile)e(mechanism)p 150 4179 1200 4 v 199 4246 a
-Ft(9)293 4278 y Fs(Prior)19 b(to)f Fp(NCO)g Fs(v)n(ersion)h(4.4.0)h
-(\(Jan)n(uary)-6 b(,)19 b(2014\),)j(w)n(e)d(recommended)f(the)g
-Fr(ncl_convert2nc)j Fs(to)r(ol)f(to)e(con)n(v)n(ert)g
-Fp(HDF)g Fs(to)275 4365 y(netCDF3)25 b(when)h(b)r(oth)f(these)h(are)g
-(true:)34 b(1.)h(Y)-6 b(ou)25 b(m)n(ust)g(ha)n(v)n(e)g(netCDF3)h(and)f
-(2.)35 b(the)25 b Fp(HDF)h Fs(\014le)g(con)n(tains)g(netCDF4)275
-4452 y(atomic)38 b(t)n(yp)r(es.)71 b(More)39 b(recen)n(t)e(v)n(ersions)
-h(of)h Fp(NCO)f Fs(handle)f(this)h(problem)g(\014ne,)j(so)d(w)n(e)g(no)
-g(longer)h(recommend)275 4540 y Fr(ncl_convert2nc)31
-b Fs(b)r(ecause)d Fr(ncks)h Fs(is)f(faster)h(and)f(more)g
-(space-e\016cien)n(t.)42 b(Both)28 b(automatically)h(con)n(v)n(ert)f
-(netCDF4)275 4627 y(t)n(yp)r(es)d(to)h(netCDF3)g(t)n(yp)r(es,)g(y)n(et)
-f Fr(ncl_convert2nc)k Fs(cannot)d(pro)r(duce)f(full)i(netCDF4)f
-(\014les.)35 b(In)25 b(con)n(trast,)i Fr(ncks)g Fs(will)275
-4714 y(happily)d(con)n(v)n(ert)h Fp(HDF)g Fs(straigh)n(t)g(to)h
-(netCDF4)f(\014les)h(with)f(netCDF4)h(t)n(yp)r(es.)33
-b(Hence)25 b Fr(ncks)h Fs(can)g(and)e(do)r(es)i(preserv)n(e)275
-4801 y(the)c(v)l(ariable)i(t)n(yp)r(es.)33 b(Unsigned)23
-b(b)n(ytes)f(sta)n(y)h(unsigned)g(b)n(ytes.)33 b(64-bit)23
-b(in)n(tegers)h(sta)n(y)f(64-bit)g(in)n(tegers.)35 b(Strings)23
-b(sta)n(y)275 4888 y(strings.)35 b(Hence,)26 b Fr(ncks)g
-Fs(con)n(v)n(ersions)g(often)g(result)g(in)g(smaller)h(\014les)f(than)f
-Fr(ncl_convert2nc)k Fs(con)n(v)n(ersions.)166 4960 y
-Ft(10)275 4991 y Fs(Tw)n(o)37 b(real-w)n(orld)h(examples:)58
-b Fp(NCO)36 b Fs(translates)i(the)f Fp(NASA)f(CERES)h
-Fs(dimension)g Fr(\(FOV\))27 b(Footprints)39 b Fs(to)e
-Fr(_FOV_)275 5078 y(Footprints)p Fs(,)25 b(and)d Fr(Cloud)27
-b(&)e(Aerosol,)j(Cloud)e(Only,)h(Clear)g(Sky)f(w/Aerosol,)i(and)e
-(Clear)h(Sky)c Fs(\(y)n(es,)g(the)f(dimen-)275 5166 y(sion)29
-b(name)g(includes)h(whitespace)g(and)f(sp)r(ecial)h(c)n(haracters\))g
-(to)f Fr(Cloud)e(&)f(Aerosol,)h(Cloud)g(Only,)g(Clear)f(Sky)h(w_)275
-5253 y(Aerosol,)g(and)f(Clear)h(Sky)k(ncl_convert2nc)k
-Fs(mak)n(es)c(the)f(elemen)n(t)h(name)g(netCDF-safe)h(in)f(a)g(sligh)n
+b(.)61 b(Do)38 b(this)f(with)f(the)h Fz(NETCDF4_ROOT)150
+3627 y FE(v)-5 b(ariable.)42 b(Then)29 b(use)h(y)m(our)g(preferred)f
+FD(NCO)i FE(build)e(mec)m(hanism,)i(e.g.,)390 3788 y
+Fz(export)46 b(NETCDF4_ROOT=/usr/local/n)o(etc)o(df4)41
+b(#)48 b(Set)f(netCDF4)f(location)390 3898 y(cd)h(~/nco;./configure)c
+(--enable-netcdf4)91 b(#)48 b(Configure)d(mechanism)g(-or-)p
+150 4004 1200 4 v 199 4072 a Fu(9)299 4104 y Ft(Prior)25
+b(to)f Fq(NCO)g Ft(v)n(ersion)h(4.4.0)h(\(Jan)n(uary)-6
+b(,)24 b(2014\),)i(w)n(e)f(recommended)f(the)g Fs(ncl_convert2nc)j
+Ft(to)r(ol)e(to)g(con)n(v)n(ert)e Fq(HDF)275 4191 y Ft(to)c(netCDF3)h
+(when)g(b)r(oth)f(these)g(are)i(true:)31 b(1.)k(Y)-6
+b(ou)18 b(m)n(ust)i(ha)n(v)n(e)f(netCDF3)g(and)h(2.)34
+b(the)20 b Fq(HDF)f Ft(\014le)h(con)n(tains)g(netCDF4)275
+4278 y(atomic)j(t)n(yp)r(es.)33 b(More)23 b(recen)n(t)f(v)n(ersions)h
+(of)g Fq(NCO)f Ft(handle)g(this)g(problem)h(\014ne,)g(and)e(include)i
+(other)f(adv)l(an)n(tages)h(so)g(w)n(e)275 4365 y(no)j(longer)i
+(recommend)f Fs(ncl_convert2nc)k Ft(b)r(ecause)c Fs(ncks)h
+Ft(is)f(faster)h(and)f(more)h(space-e\016cien)n(t.)38
+b(Both)27 b(automati-)275 4452 y(cally)c(con)n(v)n(ert)g(netCDF4)g(t)n
+(yp)r(es)f(to)h(netCDF3)h(t)n(yp)r(es,)f(y)n(et)f Fs(ncl_convert2nc)k
+Ft(cannot)d(pro)r(duce)g(full)h(netCDF4)f(\014les.)275
+4540 y(In)i(con)n(trast,)j Fs(ncks)f Ft(will)h(happily)e(con)n(v)n(ert)
+g Fq(HDF)g Ft(straigh)n(t)h(to)g(netCDF4)f(\014les)h(with)g(netCDF4)g
+(t)n(yp)r(es.)36 b(Hence)26 b Fs(ncks)275 4627 y Ft(can)21
+b(and)g(do)r(es)i(preserv)n(e)e(the)g(v)l(ariable)h(t)n(yp)r(es.)33
+b(Unsigned)21 b(b)n(ytes)g(sta)n(y)g(unsigned)h(b)n(ytes.)32
+b(64-bit)22 b(in)n(tegers)g(sta)n(y)g(64-bit)275 4714
+y(in)n(tegers.)34 b(Strings)24 b(sta)n(y)g(strings.)34
+b(Hence,)24 b Fs(ncks)h Ft(con)n(v)n(ersions)f(often)h(result)f(in)f
+(smaller)i(\014les)g(than)e Fs(ncl_convert2nc)275 4801
+y Ft(con)n(v)n(ersions.)45 b(A)28 b(to)r(ol)i(useful)g(for)g(con)n(v)n
+(erting)f(netCDF3)g(to)g(netCDF4)h(\014les)f(is)h(the)e(Python)h
+(script)g Fs(nc3tonc4)i Ft(b)n(y)275 4888 y(Je\013)26
+b(Whitak)n(er.)166 4960 y Fu(10)275 4991 y Ft(Tw)n(o)37
+b(real-w)n(orld)h(examples:)58 b Fq(NCO)36 b Ft(translates)i(the)f
+Fq(NASA)f(CERES)h Ft(dimension)g Fs(\(FOV\))27 b(Footprints)39
+b Ft(to)e Fs(_FOV_)275 5078 y(Footprints)p Ft(,)25 b(and)d
+Fs(Cloud)27 b(&)e(Aerosol,)j(Cloud)e(Only,)h(Clear)g(Sky)f(w/Aerosol,)i
+(and)e(Clear)h(Sky)c Ft(\(y)n(es,)g(the)f(dimen-)275
+5166 y(sion)29 b(name)g(includes)h(whitespace)g(and)f(sp)r(ecial)h(c)n
+(haracters\))g(to)f Fs(Cloud)e(&)f(Aerosol,)h(Cloud)g(Only,)g(Clear)f
+(Sky)h(w_)275 5253 y(Aerosol,)g(and)f(Clear)h(Sky)k(ncl_convert2nc)k
+Ft(mak)n(es)c(the)f(elemen)n(t)h(name)g(netCDF-safe)h(in)f(a)g(sligh)n
 (tly)g(di\013eren)n(t)275 5340 y(manner,)25 b(and)h(also)h(stores)f
-(the)g(original)h(name)f(in)g(the)f Fr(hdf_name)i Fs(attribute.)p
+(the)g(original)h(name)f(in)g(the)f Fs(hdf_name)i Ft(attribute.)p
 eop end
 %%Page: 13 19
-TeXDict begin 13 18 bop 150 -116 a FD(Chapter)30 b(1:)41
-b(In)m(tro)s(duction)2546 b(13)275 299 y(W)-8 b(e)36
-b(carefully)g(trac)m(k)h(the)f(netCDF4)h(releases,)h(and)d(k)m(eep)h
-(the)g(netCDF4)h(atomic)g(t)m(yp)s(e)f(supp)s(ort)150
-408 y(and)j(other)h(features)g(w)m(orking.)70 b(Our)38
-b(long)j(term)e(goal)j(is)e(to)g(utilize)h(more)f(of)g(the)g(extensiv)m
-(e)h(new)150 518 y(netCDF4)36 b(feature)f(set.)54 b(The)34
-b(next)g(ma)5 b(jor)35 b(netCDF4)h(feature)f(w)m(e)g(are)g(lik)m(ely)h
-(to)f(utilize)h(is)f(parallel)150 628 y(I/O.)c(W)-8 b(e)31
-b(will)g(enable)g(this)f(in)g(the)h FC(MPI)e FD(netCDF)i(op)s(erators.)
-150 868 y FB(1.7)68 b(Help)46 b(Requests)g(and)e(Bug)h(Rep)t(orts)150
-1027 y FD(W)-8 b(e)38 b(generally)f(receiv)m(e)h(three)f(categories)i
-(of)e(mail)g(from)e(users:)52 b(help)36 b(requests,)i(bug)e(rep)s
-(orts,)i(and)150 1137 y(feature)31 b(requests.)43 b(Notes)32
-b(sa)m(ying)g(the)f(equiv)-5 b(alen)m(t)33 b(of)e(\\Hey)-8
-b(,)33 b FC(NCO)e FD(con)m(tin)m(ues)h(to)g(w)m(ork)f(great)h(and)e(it)
-150 1247 y(sa)m(v)m(es)i(me)e(more)h(time)g(ev)m(eryda)m(y)g(than)g(it)
-f(to)s(ok)i(to)f(write)f(this)g(note")i(are)f(a)f(distan)m(t)i(fourth.)
-275 1409 y(There)38 b(is)h(a)g(di\013eren)m(t)h(proto)s(col)f(for)g
-(eac)m(h)h(t)m(yp)s(e)f(of)g(request.)67 b(The)38 b(preferred)g
-(etiquette)i(for)f(all)150 1518 y(comm)m(unications)31
-b(is)e(via)h FC(NCO)e FD(Pro)5 b(ject)30 b(F)-8 b(orums.)41
-b(Do)30 b(not)f(con)m(tact)j(pro)5 b(ject)29 b(mem)m(b)s(ers)g(via)g(p)
-s(ersonal)150 1628 y(e-mail)h(unless)e(y)m(our)h(request)f(comes)i
-(with)e(money)h(or)g(y)m(ou)g(ha)m(v)m(e)h(damaging)f(information)g(ab)
-s(out)f(our)150 1737 y(p)s(ersonal)f(liv)m(es.)41 b Fo(Ple)-5
-b(ase)31 b(use)e(the)i(F)-7 b(orums)p FD(|they)29 b(preserv)m(e)f(a)g
-(record)f(of)h(the)g(questions)f(and)g(answ)m(ers)150
-1847 y(so)37 b(that)g(others)g(can)g(learn)g(from)f(our)g(exc)m(hange.)
-62 b(Also,)39 b(since)e FC(NCO)f FD(is)h(go)m(v)m(ernmen)m(t-funded,)i
-(this)150 1957 y(record)25 b(helps)f(us)h(pro)m(vide)g(program)f
+TeXDict begin 13 18 bop 150 -116 a FE(Chapter)30 b(1:)41
+b(In)m(tro)s(duction)2546 b(13)390 299 y Fz(cd)47 b(~/nco/bld;./make)d
+(NETCDF4=Y)h(allinone)g(#)j(Old)f(Makefile)e(mechanism)275
+472 y FE(W)-8 b(e)36 b(carefully)g(trac)m(k)h(the)f(netCDF4)h
+(releases,)h(and)d(k)m(eep)h(the)g(netCDF4)h(atomic)g(t)m(yp)s(e)f
+(supp)s(ort)150 581 y(and)j(other)h(features)g(w)m(orking.)70
+b(Our)38 b(long)j(term)e(goal)j(is)e(to)g(utilize)h(more)f(of)g(the)g
+(extensiv)m(e)h(new)150 691 y(netCDF4)36 b(feature)f(set.)54
+b(The)34 b(next)g(ma)5 b(jor)35 b(netCDF4)h(feature)f(w)m(e)g(are)g
+(lik)m(ely)h(to)f(utilize)h(is)f(parallel)150 801 y(I/O.)c(W)-8
+b(e)31 b(will)g(enable)g(this)f(in)g(the)h FD(MPI)e FE(netCDF)i(op)s
+(erators.)150 1074 y FC(1.7)68 b(Help)46 b(Requests)g(and)e(Bug)h(Rep)t
+(orts)150 1233 y FE(W)-8 b(e)38 b(generally)f(receiv)m(e)h(three)f
+(categories)i(of)e(mail)g(from)e(users:)52 b(help)36
+b(requests,)i(bug)e(rep)s(orts,)i(and)150 1343 y(feature)31
+b(requests.)43 b(Notes)32 b(sa)m(ying)g(the)f(equiv)-5
+b(alen)m(t)33 b(of)e(\\Hey)-8 b(,)33 b FD(NCO)e FE(con)m(tin)m(ues)h
+(to)g(w)m(ork)f(great)h(and)e(it)150 1453 y(sa)m(v)m(es)i(me)e(more)h
+(time)g(ev)m(eryda)m(y)g(than)g(it)f(to)s(ok)i(to)f(write)f(this)g
+(note")i(are)f(a)f(distan)m(t)i(fourth.)275 1626 y(There)38
+b(is)h(a)g(di\013eren)m(t)h(proto)s(col)f(for)g(eac)m(h)h(t)m(yp)s(e)f
+(of)g(request.)67 b(The)38 b(preferred)g(etiquette)i(for)f(all)150
+1735 y(comm)m(unications)31 b(is)e(via)h FD(NCO)e FE(Pro)5
+b(ject)30 b(F)-8 b(orums.)41 b(Do)30 b(not)f(con)m(tact)j(pro)5
+b(ject)29 b(mem)m(b)s(ers)g(via)g(p)s(ersonal)150 1845
+y(e-mail)h(unless)e(y)m(our)h(request)f(comes)i(with)e(money)h(or)g(y)m
+(ou)g(ha)m(v)m(e)h(damaging)f(information)g(ab)s(out)f(our)150
+1954 y(p)s(ersonal)f(liv)m(es.)41 b Fp(Ple)-5 b(ase)31
+b(use)e(the)i(F)-7 b(orums)p FE(|they)29 b(preserv)m(e)f(a)g(record)f
+(of)h(the)g(questions)f(and)g(answ)m(ers)150 2064 y(so)37
+b(that)g(others)g(can)g(learn)g(from)f(our)g(exc)m(hange.)62
+b(Also,)39 b(since)e FD(NCO)f FE(is)h(go)m(v)m(ernmen)m(t-funded,)i
+(this)150 2174 y(record)25 b(helps)f(us)h(pro)m(vide)g(program)f
 (o\016cers)i(with)e(information)i(they)f(need)f(to)i(ev)-5
-b(aluate)27 b(our)d(pro)5 b(ject.)275 2119 y(Before)34
-b(p)s(osting)f(to)g(the)h FC(NCO)f FD(forums)f(describ)s(ed)g(b)s(elo)m
-(w,)i(y)m(ou)f(migh)m(t)h(\014rst)e(register)i(\()p Fy(https:)r(/)r(/)
-150 2228 y(sf)6 b(.)f(net)h(/)f(account)h(/)f(regis)o(ter)g(.)g(ph)o(p)
-p FD(\))32 b(y)m(our)38 b(name)f(and)g(email)i(address)e(with)g
-(SourceF)-8 b(orge.net)40 b(or)150 2338 y(else)c(all)f(of)g(y)m(our)g
-(p)s(ostings)f(will)h(b)s(e)f(attributed)h(to)h Fo(nob)-5
-b(o)g(dy)p FD(.)56 b(Once)35 b(registered)g(y)m(ou)g(ma)m(y)g(c)m(ho)s
-(ose)h(to)150 2447 y Fo(monitor)51 b FD(an)m(y)39 b(forum)f(and)h(to)g
+b(aluate)27 b(our)d(pro)5 b(ject.)275 2347 y(Before)34
+b(p)s(osting)f(to)g(the)h FD(NCO)f FE(forums)f(describ)s(ed)g(b)s(elo)m
+(w,)i(y)m(ou)f(migh)m(t)h(\014rst)e(register)i(\()p Fz(https:)r(/)r(/)
+150 2456 y(sf)6 b(.)f(net)h(/)f(account)h(/)f(regis)o(ter)g(.)g(ph)o(p)
+p FE(\))32 b(y)m(our)38 b(name)f(and)g(email)i(address)e(with)g
+(SourceF)-8 b(orge.net)40 b(or)150 2566 y(else)c(all)f(of)g(y)m(our)g
+(p)s(ostings)f(will)h(b)s(e)f(attributed)h(to)h Fp(nob)-5
+b(o)g(dy)p FE(.)56 b(Once)35 b(registered)g(y)m(ou)g(ma)m(y)g(c)m(ho)s
+(ose)h(to)150 2675 y Fp(monitor)51 b FE(an)m(y)39 b(forum)f(and)h(to)g
 (receiv)m(e)i(\(or)f(not\))f(email)h(when)e(there)i(are)f(an)m(y)h(p)s
-(ostings)e(including)150 2557 y(resp)s(onses)e(to)i(y)m(our)f
+(ostings)e(including)150 2785 y(resp)s(onses)e(to)i(y)m(our)f
 (questions.)62 b(W)-8 b(e)39 b(usually)e(reply)g(to)h(the)f(forum)f
-(message,)41 b(not)c(to)h(the)g(original)150 2667 y(p)s(oster.)275
-2829 y(If)i(y)m(ou)i(w)m(an)m(t)f(us)g(to)h(include)e(a)i(new)e
-(feature)i(in)f FC(NCO)p FD(,)i(c)m(hec)m(k)g(\014rst)d(to)i(see)g(if)f
-(that)g(feature)h(is)150 2938 y(already)29 b(on)e(the)h(TODO)g(\()p
-Fy(file:./TODO)p FD(\))d(list.)41 b(If)27 b(it)i(is,)g(wh)m(y)e(not)h
-(implemen)m(t)h(that)f(feature)h(y)m(ourself)150 3048
+(message,)41 b(not)c(to)h(the)g(original)150 2894 y(p)s(oster.)275
+3067 y(If)i(y)m(ou)i(w)m(an)m(t)f(us)g(to)h(include)e(a)i(new)e
+(feature)i(in)f FD(NCO)p FE(,)i(c)m(hec)m(k)g(\014rst)d(to)i(see)g(if)f
+(that)g(feature)h(is)150 3177 y(already)29 b(on)e(the)h(TODO)g(\()p
+Fz(file:./TODO)p FE(\))d(list.)41 b(If)27 b(it)i(is,)g(wh)m(y)e(not)h
+(implemen)m(t)h(that)f(feature)h(y)m(ourself)150 3287
 y(and)j(send)g(us)h(the)g(patc)m(h?)48 b(If)33 b(the)g(feature)g(is)g
 (not)h(y)m(et)g(on)e(the)i(list,)g(then)f(send)f(a)h(note)h(to)f(the)g
-(NCO)150 3157 y(Discussion)e(forum)e(\()p Fy
-(http://sf.net/p/nco/discus)o(sion)o(/98)o(29)p FD(\).)275
-3320 y(Read)35 b(the)h(man)m(ual)f(b)s(efore)g(rep)s(orting)g(a)h(bug)f
+(NCO)150 3396 y(Discussion)e(forum)e(\()p Fz
+(http://sf.net/p/nco/discus)o(sion)o(/98)o(29)p FE(\).)275
+3569 y(Read)35 b(the)h(man)m(ual)f(b)s(efore)g(rep)s(orting)g(a)h(bug)f
 (or)g(p)s(osting)g(a)h(help)f(request.)55 b(Sending)35
-b(questions)150 3429 y(whose)g(answ)m(ers)f(are)h(not)h(in)e(the)h(man)
+b(questions)150 3679 y(whose)g(answ)m(ers)f(are)h(not)h(in)e(the)h(man)
 m(ual)g(is)g(the)g(b)s(est)g(w)m(a)m(y)g(to)h(motiv)-5
-b(ate)37 b(us)d(to)h(write)g(more)g(do)s(cu-)150 3539
+b(ate)37 b(us)d(to)h(write)g(more)g(do)s(cu-)150 3788
 y(men)m(tation.)57 b(W)-8 b(e)37 b(w)m(ould)e(also)h(lik)m(e)h(to)f
 (accen)m(tuate)i(the)e(con)m(trap)s(ositiv)m(e)h(of)f(this)f(statemen)m
-(t.)58 b(If)35 b(y)m(ou)150 3648 y(think)26 b(y)m(ou)g(ha)m(v)m(e)i
-(found)d(a)i(real)g(bug)e Fo(the)30 b(most)g(helpful)f(thing)g(you)h(c)
+(t.)58 b(If)35 b(y)m(ou)150 3898 y(think)26 b(y)m(ou)g(ha)m(v)m(e)i
+(found)d(a)i(real)g(bug)e Fp(the)30 b(most)g(helpful)f(thing)g(you)h(c)
 -5 b(an)29 b(do)h(is)f(simplify)g(the)h(pr)-5 b(oblem)30
-b(to)150 3758 y(a)i(manage)-5 b(able)33 b(size)f(and)g(then)g(r)-5
-b(ep)g(ort)34 b(it)p FD(.)40 b(The)29 b(\014rst)f(thing)i(to)g(do)f(is)
-g(to)h(mak)m(e)g(sure)f(y)m(ou)g(are)h(running)150 3867
+b(to)150 4008 y(a)i(manage)-5 b(able)33 b(size)f(and)g(then)g(r)-5
+b(ep)g(ort)34 b(it)p FE(.)40 b(The)29 b(\014rst)f(thing)i(to)g(do)f(is)
+g(to)h(mak)m(e)g(sure)f(y)m(ou)g(are)h(running)150 4117
 y(the)h(latest)h(publicly)e(released)h(v)m(ersion)g(of)f
-FC(NCO)p FD(.)275 4030 y(Once)36 b(y)m(ou)g(ha)m(v)m(e)i(read)e(the)g
+FD(NCO)p FE(.)275 4290 y(Once)36 b(y)m(ou)g(ha)m(v)m(e)i(read)e(the)g
 (man)m(ual,)i(if)e(y)m(ou)h(are)g(still)g(unable)e(to)i(get)h
-FC(NCO)e FD(to)g(p)s(erform)f(a)i(do)s(c-)150 4139 y(umen)m(ted)f
+FD(NCO)e FE(to)g(p)s(erform)f(a)i(do)s(c-)150 4400 y(umen)m(ted)f
 (function,)i(submit)d(a)i(help)f(request.)59 b(F)-8 b(ollo)m(w)38
 b(the)f(same)g(pro)s(cedure)e(as)h(describ)s(ed)g(b)s(elo)m(w)150
-4249 y(for)d(rep)s(orting)g(bugs)f(\(after)i(all,)h(it)f(migh)m(t)g(b)s
+4509 y(for)d(rep)s(orting)g(bugs)f(\(after)i(all,)h(it)f(migh)m(t)g(b)s
 (e)e(a)i(bug\).)48 b(That)33 b(is,)h(describ)s(e)f(what)g(y)m(ou)g(are)
-h(trying)f(to)150 4358 y(do,)i(and)f(include)g(the)g(complete)h
-(commands)f(\(run)f(with)h(`)p Fy(-D)c(5)p FD('\),)36
-b(error)d(messages,)k(and)c(v)m(ersion)i(of)150 4468
-y FC(NCO)30 b FD(\(with)f(`)p Fy(-r)p FD('\).)41 b(P)m(ost)31
+h(trying)f(to)150 4619 y(do,)i(and)f(include)g(the)g(complete)h
+(commands)f(\(run)f(with)h(`)p Fz(-D)c(5)p FE('\),)36
+b(error)d(messages,)k(and)c(v)m(ersion)i(of)150 4729
+y FD(NCO)30 b FE(\(with)f(`)p Fz(-r)p FE('\).)41 b(P)m(ost)31
 b(y)m(our)f(help)f(request)h(to)h(the)f(NCO)f(Help)h(forum)f(\()p
-Fy(http://sf.net/p/nco/)150 4578 y(discussion/9830)p
-FD(\).)275 4740 y(If)i(y)m(ou)i(think)f(y)m(ou)h(used)f(the)g(righ)m(t)
-h(command)f(when)g FC(NCO)g FD(misb)s(eha)m(v)m(es,)i(then)e(y)m(ou)h
-(migh)m(t)g(ha)m(v)m(e)150 4849 y(found)k(a)i(bug.)63
+Fz(http://sf.net/p/nco/)150 4838 y(discussion/9830)p
+FE(\).)275 5011 y(If)i(y)m(ou)i(think)f(y)m(ou)h(used)f(the)g(righ)m(t)
+h(command)f(when)g FD(NCO)g FE(misb)s(eha)m(v)m(es,)i(then)e(y)m(ou)h
+(migh)m(t)g(ha)m(v)m(e)150 5121 y(found)k(a)i(bug.)63
 b(Incorrect)39 b(n)m(umerical)g(answ)m(ers)f(are)g(the)h(highest)f
 (priorit)m(y)-8 b(.)65 b(W)-8 b(e)40 b(usually)e(\014x)f(those)150
-4959 y(within)42 b(one)g(or)g(t)m(w)m(o)i(da)m(ys.)76
+5230 y(within)42 b(one)g(or)g(t)m(w)m(o)i(da)m(ys.)76
 b(Core)42 b(dumps)e(and)i(semen)m(tation)i(violations)f(receiv)m(e)h
-(lo)m(w)m(er)g(priorit)m(y)-8 b(.)150 5068 y(They)30
+(lo)m(w)m(er)g(priorit)m(y)-8 b(.)150 5340 y(They)30
 b(are)h(alw)m(a)m(ys)h(\014xed,)d(ev)m(en)m(tually)-8
-b(.)275 5230 y(Ho)m(w)38 b(do)g(y)m(ou)g(simplify)g(a)g(problem)f(that)
-i(rev)m(eal)g(a)f(bug?)63 b(Cut)37 b(out)h(extraneous)g(v)-5
-b(ariables,)41 b(di-)150 5340 y(mensions,)28 b(and)f(metadata)j(from)d
-(the)h(o\013ending)g(\014les)f(and)g(re-run)g(the)h(command)f(un)m(til)
-h(it)h(no)e(longer)p eop end
+b(.)p eop end
 %%Page: 14 20
-TeXDict begin 14 19 bop 150 -116 a FD(14)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(breaks.)62 b(Then)37
-b(bac)m(k)h(up)f(one)g(step)h(and)f(rep)s(ort)g(the)h(problem.)62
-b(Usually)38 b(the)f(\014le\(s\))i(will)f(b)s(e)f(v)m(ery)150
-408 y(small,)k(i.e.,)h(one)d(v)-5 b(ariable)39 b(with)f(one)h(or)f(t)m
-(w)m(o)i(small)f(dimensions)f(ough)m(t)h(to)g(su\016ce.)65
-b(Run)37 b(the)i(op-)150 518 y(erator)h(with)f(`)p Fy(-r)p
-FD(')g(and)f(then)h(run)f(the)h(command)g(with)g(`)p
-Fy(-D)30 b(5)p FD(')39 b(to)h(increase)g(the)f(v)m(erb)s(osit)m(y)h(of)
-g(the)150 628 y(debugging)33 b(output.)48 b(It)33 b(is)g(v)m(ery)g(imp)
+TeXDict begin 14 19 bop 150 -116 a FE(14)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(Ho)m(w)38 b(do)g(y)m(ou)g(simplify)
+g(a)g(problem)f(that)i(rev)m(eal)g(a)f(bug?)63 b(Cut)37
+b(out)h(extraneous)g(v)-5 b(ariables,)41 b(di-)150 408
+y(mensions,)28 b(and)f(metadata)j(from)d(the)h(o\013ending)g(\014les)f
+(and)g(re-run)g(the)h(command)f(un)m(til)h(it)h(no)e(longer)150
+518 y(breaks.)62 b(Then)37 b(bac)m(k)h(up)f(one)g(step)h(and)f(rep)s
+(ort)g(the)h(problem.)62 b(Usually)38 b(the)f(\014le\(s\))i(will)f(b)s
+(e)f(v)m(ery)150 628 y(small,)k(i.e.,)h(one)d(v)-5 b(ariable)39
+b(with)f(one)h(or)f(t)m(w)m(o)i(small)f(dimensions)f(ough)m(t)h(to)g
+(su\016ce.)65 b(Run)37 b(the)i(op-)150 737 y(erator)h(with)f(`)p
+Fz(-r)p FE(')g(and)f(then)h(run)f(the)h(command)g(with)g(`)p
+Fz(-D)30 b(5)p FE(')39 b(to)h(increase)g(the)f(v)m(erb)s(osit)m(y)h(of)
+g(the)150 847 y(debugging)33 b(output.)48 b(It)33 b(is)g(v)m(ery)g(imp)
 s(ortan)m(t)g(that)h(y)m(our)e(rep)s(ort)h(con)m(tain)h(the)f(exact)h
-(error)f(messages)150 737 y(and)i(compile-time)i(en)m(vironmen)m(t.)56
+(error)f(messages)150 956 y(and)i(compile-time)i(en)m(vironmen)m(t.)56
 b(Include)35 b(a)h(cop)m(y)g(of)g(y)m(our)f(sample)g(input)g(\014le,)i
-(or)e(place)h(one)g(on)150 847 y(a)31 b(publically)g(accessible)i(lo)s
+(or)e(place)h(one)g(on)150 1066 y(a)31 b(publically)g(accessible)i(lo)s
 (cation,)g(of)e(the)g(\014le\(s\).)43 b(P)m(ost)32 b(the)f(full)f(bug)h
-(rep)s(ort)f(to)i(the)f(NCO)f(Pro)5 b(ject)150 956 y(buglist)30
-b(\()p Fy(http://sf.net/bugs/?group_i)o(d=33)o(31)p FD(\).)275
-1116 y(Build)h(failures)g(coun)m(t)h(as)g(bugs.)43 b(Our)30
+(rep)s(ort)f(to)i(the)f(NCO)f(Pro)5 b(ject)150 1176 y(buglist)30
+b(\()p Fz(http://sf.net/bugs/?group_i)o(d=33)o(31)p FE(\).)275
+1335 y(Build)h(failures)g(coun)m(t)h(as)g(bugs.)43 b(Our)30
 b(limited)i(mac)m(hine)g(access)h(means)e(w)m(e)h(cannot)g(\014x)f(all)
-h(build)150 1225 y(failures.)39 b(The)23 b(information)i(w)m(e)g(need)f
+h(build)150 1445 y(failures.)39 b(The)23 b(information)i(w)m(e)g(need)f
 (to)h(diagnose,)h(and)e(often)h(\014x,)g(build)e(failures)h(are)h(the)g
-(three)f(\014les)150 1335 y(output)43 b(b)m(y)g FC(GNU)h
-FD(build)e(to)s(ols,)48 b Fy(nco.config.log.${GNU_TR)o(P}.f)o(oo)p
-FD(,)40 b Fy(nco.configure.${GNU_)150 1445 y(TRP}.foo)p
-FD(,)29 b(and)i Fy(nco.make.${GNU_TRP}.foo)p FD(.)37
-b(The)30 b(\014le)h Fy(configure.eg)d FD(sho)m(ws)j(ho)m(w)g(to)h(pro)s
-(duce)150 1554 y(these)h(\014les.)47 b(Here)33 b Fy(${GNU_TRP})d
-FD(is)i(the)h(\\)p FC(GNU)g FD(arc)m(hitecture)h(triplet",)h(the)d
-Fz(c)m(hip-v)m(endor-OS)38 b FD(string)150 1664 y(returned)27
-b(b)m(y)i Fy(config.guess)p FD(.)37 b(Please)29 b(send)f(us)g(y)m(our)g
+(three)f(\014les)150 1554 y(output)43 b(b)m(y)g FD(GNU)h
+FE(build)e(to)s(ols,)48 b Fz(nco.config.log.${GNU_TR)o(P}.f)o(oo)p
+FE(,)40 b Fz(nco.configure.${GNU_)150 1664 y(TRP}.foo)p
+FE(,)29 b(and)i Fz(nco.make.${GNU_TRP}.foo)p FE(.)37
+b(The)30 b(\014le)h Fz(configure.eg)d FE(sho)m(ws)j(ho)m(w)g(to)h(pro)s
+(duce)150 1773 y(these)h(\014les.)47 b(Here)33 b Fz(${GNU_TRP})d
+FE(is)i(the)h(\\)p FD(GNU)g FE(arc)m(hitecture)h(triplet",)h(the)d
+FA(c)m(hip-v)m(endor-OS)38 b FE(string)150 1883 y(returned)27
+b(b)m(y)i Fz(config.guess)p FE(.)37 b(Please)29 b(send)f(us)g(y)m(our)g
 (impro)m(v)m(emen)m(ts)i(to)f(the)g(examples)g(supplied)e(in)150
-1773 y Fy(configure.eg)p FD(.)48 b(The)33 b(regressions)h(arc)m(hiv)m
-(e)h(at)g Fy(http:)s(/)s(/)r(dust)s(.)r(ess)s(.)r(uci)s(.)r(edu)r(/)r
-(nc)o(o)s(/)r(rg)o(r)28 b FD(con)m(tains)150 1883 y(the)38
+1993 y Fz(configure.eg)p FE(.)48 b(The)33 b(regressions)h(arc)m(hiv)m
+(e)h(at)g Fz(http:)s(/)s(/)r(dust)s(.)r(ess)s(.)r(uci)s(.)r(edu)r(/)r
+(nc)o(o)s(/)r(rg)o(r)28 b FE(con)m(tains)150 2102 y(the)38
 b(build)e(output)h(from)g(our)g(standard)g(test)h(systems.)63
 b(Y)-8 b(ou)38 b(ma)m(y)g(\014nd)e(y)m(ou)i(can)f(solv)m(e)i(the)f
-(build)150 1993 y(problem)30 b(y)m(ourself)g(b)m(y)h(examining)g(the)f
+(build)150 2212 y(problem)30 b(y)m(ourself)g(b)m(y)h(examining)g(the)f
 (di\013erences)h(b)s(et)m(w)m(een)g(these)g(\014les)f(and)g(y)m(our)g
 (o)m(wn.)p eop end
 %%Page: 15 21
-TeXDict begin 15 20 bop 150 -116 a FD(Chapter)30 b(2:)41
-b(Op)s(erator)30 b(Strategies)2264 b(15)150 299 y Fx(2)80
-b(Op)t(erator)54 b(Strategies)150 643 y FB(2.1)68 b(Philosoph)l(y)150
-803 y FD(The)23 b(main)g(design)h(goal)h(is)e(command)h(line)f(op)s
+TeXDict begin 15 20 bop 150 -116 a FE(Chapter)30 b(2:)41
+b(Op)s(erator)30 b(Strategies)2264 b(15)150 299 y Fy(2)80
+b(Op)t(erator)54 b(Strategies)150 643 y FC(2.1)68 b(Philosoph)l(y)150
+803 y FE(The)23 b(main)g(design)h(goal)h(is)e(command)h(line)f(op)s
 (erators)h(whic)m(h)f(p)s(erform)f(useful,)j(scriptable)f(op)s
 (erations)150 912 y(on)37 b(netCDF)h(\014les.)61 b(Man)m(y)38
 b(scien)m(tists)h(w)m(ork)e(with)g(mo)s(dels)g(and)f(observ)-5
@@ -13059,15 +13285,15 @@ b(These)28 b(second)f(lev)m(el)i(data)g(ma)m(y)f(b)s(ecome)g(the)g
 (inputs)e(to)i(graphical)h(and)e(statistical)j(pac)m(k-)150
 1351 y(ages,)d(and)d(are)h(often)g(more)g(suitable)h(for)e(arc)m(hiv)-5
 b(al)26 b(and)e(dissemination)h(to)g(the)g(scien)m(ti\014c)h(comm)m
-(unit)m(y)-8 b(.)150 1460 y FC(NCO)36 b FD(p)s(erforms)e(a)j(suite)f
+(unit)m(y)-8 b(.)150 1460 y FD(NCO)36 b FE(p)s(erforms)e(a)j(suite)f
 (of)g(op)s(erations)g(useful)g(in)f(manipulating)h(data)h(from)f(the)g
 (primary)f(to)i(the)150 1570 y(second)25 b(lev)m(el)i(state.)40
 b(Higher)25 b(lev)m(el)i(in)m(terpretiv)m(e)f(languages)g(\(e.g.,)i
-FC(IDL)p FD(,)e(Y)-8 b(oric)m(k,)28 b(Matlab,)g FC(NCL)p
-FD(,)e(P)m(erl,)150 1679 y(Python\),)h(and)f(lo)m(w)m(er)h(lev)m(el)h
+FD(IDL)p FE(,)e(Y)-8 b(oric)m(k,)28 b(Matlab,)g FD(NCL)p
+FE(,)e(P)m(erl,)150 1679 y(Python\),)h(and)f(lo)m(w)m(er)h(lev)m(el)h
 (compiled)e(languages)i(\(e.g.,)g(C,)e(F)-8 b(ortran\))27
 b(can)g(alw)m(a)m(ys)g(p)s(erform)e(an)m(y)h(task)150
-1789 y(p)s(erformed)31 b(b)m(y)h FC(NCO)p FD(,)h(but)f(often)g(with)h
+1789 y(p)s(erformed)31 b(b)m(y)h FD(NCO)p FE(,)h(but)f(often)g(with)h
 (more)f(o)m(v)m(erhead.)48 b(NCO,)32 b(on)g(the)h(other)g(hand,)f(is)g
 (limited)h(to)150 1899 y(a)c(m)m(uc)m(h)g(smaller)h(set)f(of)g
 (arithmetic)h(and)e(metadata)j(op)s(erations)e(than)g(these)g(full)g
@@ -13075,45 +13301,45 @@ b(can)g(alw)m(a)m(ys)g(p)s(erform)e(an)m(y)h(task)150
 (implemen)m(t)f(enough)f(command)h(line)g(switc)m(hes)g(so)g(that)h
 (frequen)m(tly)150 2169 y(used)28 b(sequences)i(of)f(these)h(op)s
 (erators)f(can)h(b)s(e)e(executed)i(from)f(a)g(shell)h(script)f(or)g
-(batc)m(h)h(\014le.)40 b(Finally)-8 b(,)150 2279 y FC(NCO)27
-b FD(w)m(as)h(written)g(to)g(consume)f(the)h(absolute)g(minim)m(um)f
+(batc)m(h)h(\014le.)40 b(Finally)-8 b(,)150 2279 y FD(NCO)27
+b FE(w)m(as)h(written)g(to)g(consume)f(the)h(absolute)g(minim)m(um)f
 (amoun)m(t)h(of)f(system)h(memory)f(required)g(to)150
 2388 y(p)s(erform)j(a)i(giv)m(en)g(job.)43 b(The)31 b(arithmetic)i(op)s
 (erators)e(are)h(extremely)g(e\016cien)m(t;)i(their)d(exact)i(memory)
 150 2498 y(usage)e(is)f(detailed)i(in)e(Section)h(2.9)h([Memory)f
-(Requiremen)m(ts],)g(page)g(22.)150 2736 y FB(2.2)68
-b(Climate)47 b(Mo)t(del)e(P)l(aradigm)150 2895 y FC(NCO)39
-b FD(w)m(as)g(dev)m(elop)s(ed)g(at)h FC(NCAR)g FD(to)f(aid)g(analysis)h
+(Requiremen)m(ts],)g(page)g(22.)150 2736 y FC(2.2)68
+b(Climate)47 b(Mo)t(del)e(P)l(aradigm)150 2895 y FD(NCO)39
+b FE(w)m(as)g(dev)m(elop)s(ed)g(at)h FD(NCAR)g FE(to)f(aid)g(analysis)h
 (and)e(manipulation)h(of)h(datasets)g(pro)s(duced)d(b)m(y)150
-3005 y(General)26 b(Circulation)f(Mo)s(dels)g(\()p FC(GCM)p
-FD(s\).)40 b FC(GCM)25 b FD(datasets)h(share)e(man)m(y)h(features)g
+3005 y(General)26 b(Circulation)f(Mo)s(dels)g(\()p FD(GCM)p
+FE(s\).)40 b FD(GCM)25 b FE(datasets)h(share)e(man)m(y)h(features)g
 (with)g(other)g(gridded)150 3114 y(scien)m(ti\014c)j(datasets)g(and)e
 (so)h(pro)m(vide)g(a)g(useful)f(paradigm)h(for)g(the)g(explication)h
-(of)f(the)g FC(NCO)g FD(op)s(erator)150 3224 y(set.)85
-b(Examples)45 b(in)f(this)h(man)m(ual)g(use)g(a)g FC(GCM)g
-FD(paradigm)g(b)s(ecause)g(latitude,)50 b(longitude,)f(time,)150
+(of)f(the)g FD(NCO)g FE(op)s(erator)150 3224 y(set.)85
+b(Examples)45 b(in)f(this)h(man)m(ual)g(use)g(a)g FD(GCM)g
+FE(paradigm)g(b)s(ecause)g(latitude,)50 b(longitude,)f(time,)150
 3334 y(temp)s(erature)28 b(and)f(other)h(\014elds)g(related)h(to)g(our)
 e(natural)h(en)m(vironmen)m(t)h(are)f(as)g(easy)h(to)g(visualize)g(for)
 150 3443 y(the)i(la)m(yman)g(as)f(the)h(exp)s(ert.)150
-3681 y FB(2.3)68 b(T)-11 b(emp)t(orary)45 b(Output)f(Files)150
-3840 y FC(NCO)25 b FD(op)s(erators)g(are)g(designed)g(to)h(b)s(e)e
+3681 y FC(2.3)68 b(T)-11 b(emp)t(orary)45 b(Output)f(Files)150
+3840 y FD(NCO)25 b FE(op)s(erators)g(are)g(designed)g(to)h(b)s(e)e
 (reasonably)i(fault)f(toleran)m(t,)j(so)d(that)h(a)f(system)g(failure)g
 (or)g(user-)150 3950 y(ab)s(ort)c(of)h(the)f(op)s(eration)h(\(e.g.,)j
-(with)c Fn(C-c)p FD(\))g(do)s(es)g(not)g(cause)h(loss)g(of)f(data.)39
-b(The)21 b(user-sp)s(eci\014ed)f Fz(output-)150 4059
-y(\014le)38 b FD(is)33 b(only)h(created)g(up)s(on)d(successful)i
-(completion)i(of)e(the)g(op)s(eration)2679 4026 y Ft(1)2717
-4059 y FD(.)49 b(This)32 b(is)h(accomplished)h(b)m(y)150
+(with)c Fo(C-c)p FE(\))g(do)s(es)g(not)g(cause)h(loss)g(of)f(data.)39
+b(The)21 b(user-sp)s(eci\014ed)f FA(output-)150 4059
+y(\014le)38 b FE(is)33 b(only)h(created)g(up)s(on)d(successful)i
+(completion)i(of)e(the)g(op)s(eration)2679 4026 y Fu(1)2717
+4059 y FE(.)49 b(This)32 b(is)h(accomplished)h(b)m(y)150
 4169 y(p)s(erforming)e(all)i(op)s(erations)f(in)g(a)g(temp)s(orary)g
-(cop)m(y)g(of)h Fz(output-\014le)p FD(.)48 b(The)33 b(name)g(of)g(the)g
+(cop)m(y)g(of)h FA(output-\014le)p FE(.)48 b(The)33 b(name)g(of)g(the)g
 (temp)s(orary)150 4279 y(output)k(\014le)g(is)g(constructed)h(b)m(y)f
-(app)s(ending)e Fy(.pid<)p Fn(process)27 b(ID)p Fy(>.<)p
-Fn(operator)g(name)p Fy(>.tmp)35 b FD(to)j(the)150 4388
-y(user-sp)s(eci\014ed)28 b Fz(output-\014le)35 b FD(name.)40
+(app)s(ending)e Fz(.pid<)p Fo(process)27 b(ID)p Fz(>.<)p
+Fo(operator)g(name)p Fz(>.tmp)35 b FE(to)j(the)150 4388
+y(user-sp)s(eci\014ed)28 b FA(output-\014le)35 b FE(name.)40
 b(When)29 b(the)g(op)s(erator)h(completes)g(its)g(task)g(with)f(no)g
 (fatal)h(errors,)150 4498 y(the)j(temp)s(orary)g(output)f(\014le)h(is)g
-(mo)m(v)m(ed)h(to)g(the)f(user-sp)s(eci\014ed)f Fz(output-\014le)p
-FD(.)48 b(This)32 b(im)m(bues)h(the)g(pro-)150 4607 y(cess)27
+(mo)m(v)m(ed)h(to)g(the)f(user-sp)s(eci\014ed)f FA(output-\014le)p
+FE(.)48 b(This)32 b(im)m(bues)h(the)g(pro-)150 4607 y(cess)27
 b(with)e(fault-tolerance)k(since)d(fatal)i(error)e(\(e.g.,)i(disk)e
 (space)h(\014lls)f(up\))f(a\013ect)j(only)e(the)g(temp)s(orary)150
 4717 y(output)g(\014le,)h(lea)m(ving)h(the)e(\014nal)g(output)g(\014le)
@@ -13122,23 +13348,23 @@ b(Note)28 b(the)e(con-)150 4827 y(struction)g(of)g(a)g(temp)s(orary)f
 (output)h(\014le)g(uses)f(more)h(disk)f(space)h(than)g(just)f(o)m(v)m
 (erwriting)i(existing)g(\014les)150 4936 y(\\in)d(place")h(\(b)s
 (ecause)g(there)f(ma)m(y)g(b)s(e)g(t)m(w)m(o)h(copies)g(of)f(the)g
-(same)g(\014le)g(on)g(disk)f(un)m(til)i(the)f FC(NCO)f
-FD(op)s(eration)150 5046 y(successfully)38 b(concludes)g(and)f(the)i
+(same)g(\014le)g(on)g(disk)f(un)m(til)i(the)f FD(NCO)f
+FE(op)s(eration)150 5046 y(successfully)38 b(concludes)g(and)f(the)i
 (temp)s(orary)e(output)h(\014le)g(o)m(v)m(erwrites)h(the)f(existing)h
-Fz(output-\014le)5 b FD(\).)p 150 5154 1200 4 v 199 5221
-a Ft(1)275 5253 y Fs(The)29 b Fr(ncrename)i Fs(and)d
-Fr(ncatted)j Fs(op)r(erators)f(are)g(exceptions)f(to)g(this)g(rule.)45
+FA(output-\014le)5 b FE(\).)p 150 5154 1200 4 v 199 5221
+a Fu(1)275 5253 y Ft(The)29 b Fs(ncrename)i Ft(and)d
+Fs(ncatted)j Ft(op)r(erators)f(are)g(exceptions)f(to)g(this)g(rule.)45
 b(See)29 b(Section)g(4.11)i([ncrename)e(netCDF)275 5340
-y(Renamer],)d(page)g(202.)p eop end
+y(Renamer],)d(page)g(214.)p eop end
 %%Page: 16 22
-TeXDict begin 16 21 bop 150 -116 a FD(16)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(Also,)37 b(note)e(this)f(feature)h
+TeXDict begin 16 21 bop 150 -116 a FE(16)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(Also,)37 b(note)e(this)f(feature)h
 (increases)h(the)f(execution)g(time)h(of)f(the)f(op)s(erator)h(b)m(y)g
 (appro)m(ximately)h(the)150 408 y(time)i(it)f(tak)m(es)i(to)f(cop)m(y)g
-(the)f Fz(output-\014le)1620 375 y Ft(2)1657 408 y FD(.)61
+(the)f FA(output-\014le)1620 375 y Fu(2)1657 408 y FE(.)61
 b(Finally)-8 b(,)41 b(note)c(this)g(fault-toleran)m(t)j(feature)d(allo)
-m(ws)i(the)150 518 y Fz(output-\014le)d FD(to)31 b(b)s(e)e(the)i(same)g
-(as)f(the)h Fz(input-\014le)k FD(without)30 b(an)m(y)h(danger)f(of)h
+m(ws)i(the)150 518 y FA(output-\014le)d FE(to)31 b(b)s(e)e(the)i(same)g
+(as)f(the)h FA(input-\014le)k FE(without)30 b(an)m(y)h(danger)f(of)h
 (\\o)m(v)m(erlap".)275 677 y(Ov)m(er)23 b(time)g(man)m(y)g(\\p)s(o)m(w)
 m(er)h(users")e(ha)m(v)m(e)j(requested)d(a)i(w)m(a)m(y)g(to)f
 (turn-o\013)g(the)g(fault-tolerance)j(safet)m(y)150 787
@@ -13148,22 +13374,22 @@ y(feature)41 b(of)g(automatically)j(creating)e(a)f(temp)s(orary)f
 (eated)g(frequen)m(tly)g(on)f(large)i(datasets.)46 b(Ob)m(viating)150
 1006 y(an)28 b(extra)h(\014le)f(write)h(can)f(then)g(conserv)m(e)h
 (signi\014can)m(t)g(disk)f(space)h(and)e(time.)41 b(F)-8
-b(or)29 b(this)f(purp)s(ose)e FC(NCO)150 1116 y FD(has,)42
+b(or)29 b(this)f(purp)s(ose)e FD(NCO)150 1116 y FE(has,)42
 b(since)e(v)m(ersion)g(4.2.1)i(in)d(August,)j(2012,)i(made)c
 (con\014gurable)f(the)h(con)m(trols)h(o)m(v)m(er)g(temp)s(orary)150
-1225 y(\014le)34 b(creation.)55 b(The)33 b(`)p Fy(--wrt_tmp_fl)p
-FD(')f(and)i(equiv)-5 b(alen)m(t)36 b(`)p Fy(--write_tmp_fl)p
-FD(')31 b(switc)m(hes)k(ensure)e FC(NCO)150 1335 y FD(writes)i(output)f
+1225 y(\014le)34 b(creation.)55 b(The)33 b(`)p Fz(--wrt_tmp_fl)p
+FE(')f(and)i(equiv)-5 b(alen)m(t)36 b(`)p Fz(--write_tmp_fl)p
+FE(')31 b(switc)m(hes)k(ensure)e FD(NCO)150 1335 y FE(writes)i(output)f
 (to)h(an)f(in)m(termediate)i(temp)s(orary)f(\014le.)53
 b(This)34 b(is)g(and)g(has)g(alw)m(a)m(ys)i(b)s(een)e(the)h(default)150
 1445 y(b)s(eha)m(vior)44 b(so)g(there)g(is)g(curren)m(tly)f(no)h(need)g
 (to)g(sp)s(ecify)g(these)g(switc)m(hes.)81 b(Ho)m(w)m(ev)m(er,)50
 b(the)44 b(default)150 1554 y(ma)m(y)27 b(c)m(hange)g(some)g(da)m(y)-8
 b(,)28 b(esp)s(ecially)f(since)f(writing)h(to)f(RAM)h(disks)f(\(see)h
-(Section)g(3.30)g([RAM)g(disks],)150 1664 y(page)f(81\))g(ma)m(y)g
+(Section)g(3.31)g([RAM)g(disks],)150 1664 y(page)f(91\))g(ma)m(y)g
 (some)f(da)m(y)g(b)s(ecome)h(the)f(default.)39 b(The)25
-b(`)p Fy(--no_tmp_fl)p FD(')d(switc)m(h)k(causes)f FC(NCO)g
-FD(to)h(write)150 1773 y(directly)k(to)g(the)f(\014nal)g(output)g
+b(`)p Fz(--no_tmp_fl)p FE(')d(switc)m(h)k(causes)f FD(NCO)g
+FE(to)h(write)150 1773 y(directly)k(to)g(the)f(\014nal)g(output)g
 (\014le)g(instead)h(of)f(to)h(an)f(in)m(termediate)i(temp)s(orary)e
 (\014le.)40 b(\\P)m(o)m(w)m(er)31 b(users")150 1883 y(ma)m(y)j(wish)e
 (to)i(in)m(v)m(ok)m(e)h(this)e(switc)m(h)h(to)f(increase)h(p)s
@@ -13171,15 +13397,15 @@ FD(to)h(write)150 1773 y(directly)k(to)g(the)f(\014nal)g(output)g
 1993 y(manipulating)40 b(large)h(\014les.)68 b(When)40
 b(esc)m(hewing)g(temp)s(orary)g(\014les,)i(users)d(ma)m(y)h(forsak)m(e)
 h(the)e(abilit)m(y)150 2102 y(to)g(ha)m(v)m(e)g(the)f(same)g(name)g
-(for)f(b)s(oth)g Fz(output-\014le)43 b FD(and)37 b Fz(input-\014le)43
-b FD(since,)d(as)e(describ)s(ed)f(ab)s(o)m(v)m(e,)k(the)150
+(for)f(b)s(oth)g FA(output-\014le)43 b FE(and)37 b FA(input-\014le)43
+b FE(since,)d(as)e(describ)s(ed)f(ab)s(o)m(v)m(e,)k(the)150
 2212 y(temp)s(orary)26 b(\014le)h(prev)m(en)m(ted)g(o)m(v)m(erlap)i
 (issues.)39 b(Ho)m(w)m(ev)m(er,)29 b(if)e(the)g(user)f(creates)i(the)f
-(output)f(\014le)h(in)g FC(RAM)150 2321 y FD(\(see)33
-b(Section)f(3.30)i([RAM)e(disks],)g(page)g(81\))h(then)f(it)g(is)g
+(output)f(\014le)h(in)g FD(RAM)150 2321 y FE(\(see)33
+b(Section)f(3.31)i([RAM)e(disks],)g(page)g(91\))h(then)f(it)g(is)g
 (still)h(p)s(ossible)e(to)h(ha)m(v)m(e)h(the)f(same)g(name)g(for)150
-2431 y(b)s(oth)e Fz(output-\014le)35 b FD(and)30 b Fz(input-\014le)p
-FD(.)390 2590 y Fy(ncks)47 b(in.nc)f(out.nc)g(#)i(Default:)d(create)h
+2431 y(b)s(oth)e FA(output-\014le)35 b FE(and)30 b FA(input-\014le)p
+FE(.)390 2590 y Fz(ncks)47 b(in.nc)f(out.nc)g(#)i(Default:)d(create)h
 (out.pid.tmp.nc)e(then)j(move)f(to)i(out.nc)390 2700
 y(ncks)f(--wrt_tmp_fl)d(in.nc)i(out.nc)h(#)g(Same)g(as)g(default)390
 2809 y(ncks)g(--no_tmp_fl)d(in.nc)j(out.nc)f(#)h(Create)f(out.nc)g
@@ -13188,24 +13414,24 @@ y(ncks)f(--wrt_tmp_fl)d(in.nc)i(out.nc)h(#)g(Same)g(as)g(default)390
 3029 y(ncks)h(--create_ram)d(--no_tmp_fl)h(in.nc)h(in.nc)h(#)g(Create)f
 (in)h(RAM,)g(write)f(to)h(disk)390 3138 y(ncks)g(--open_ram)e
 (--no_tmp_fl)f(in.nc)j(in.nc)f(#)i(Read)e(into)h(RAM,)f(write)h(to)g
-(disk)150 3298 y FD(There)35 b(is)h(no)g(reason)g(to)h(exp)s(ect)g(the)
+(disk)150 3298 y FE(There)35 b(is)h(no)g(reason)g(to)h(exp)s(ect)g(the)
 f(fourth)f(example)h(to)h(w)m(ork.)58 b(The)35 b(b)s(eha)m(vior)h(of)g
 (o)m(v)m(erwriting)i(a)150 3407 y(\014le)c(while)f(reading)h(from)f
 (the)h(same)g(\014le)g(is)g(unde\014ned,)e(m)m(uc)m(h)i(as)g(is)g(the)g
-(shell)g(command)f(`)p Fy(cat)d(foo)150 3517 y(>)g(foo)p
-FD('.)62 b(Although)37 b(it)h(ma)m(y)g(\\w)m(ork")h(in)e(some)h(cases,)
+(shell)g(command)f(`)p Fz(cat)d(foo)150 3517 y(>)g(foo)p
+FE('.)62 b(Although)37 b(it)h(ma)m(y)g(\\w)m(ork")h(in)e(some)h(cases,)
 j(it)d(is)f(unreliable.)62 b(One)37 b(w)m(a)m(y)i(around)d(this)i(is)
-150 3626 y(to)e(use)e(`)p Fy(--create_ram)p FD(')e(so)j(that)g(the)g
+150 3626 y(to)e(use)e(`)p Fz(--create_ram)p FE(')e(so)j(that)g(the)g
 (output)g(\014le)g(is)f(not)h(written)g(to)h(disk)e(un)m(til)h(the)g
-(input)f(\014le)h(is)150 3736 y(closed,)j(See)e(Section)g(3.30)h([RAM)g
-(disks],)f(page)h(81.)57 b(Ho)m(w)m(ev)m(er,)39 b(as)d(of)g(20130328,)k
-(the)c(b)s(eha)m(vior)g(of)150 3846 y(the)31 b(`)p Fy(--create_ram)p
-FD(')c(and)j(`)p Fy(--open_ram)p FD(')e(examples)j(has)f(not)h(b)s(een)
-e(thoroughly)i(tested.)275 4005 y(The)26 b FC(NCO)g FD(authors)h(ha)m
+(input)f(\014le)h(is)150 3736 y(closed,)j(See)e(Section)g(3.31)h([RAM)g
+(disks],)f(page)h(91.)57 b(Ho)m(w)m(ev)m(er,)39 b(as)d(of)g(20130328,)k
+(the)c(b)s(eha)m(vior)g(of)150 3846 y(the)31 b(`)p Fz(--create_ram)p
+FE(')c(and)j(`)p Fz(--open_ram)p FE(')e(examples)j(has)f(not)h(b)s(een)
+e(thoroughly)i(tested.)275 4005 y(The)26 b FD(NCO)g FE(authors)h(ha)m
 (v)m(e)h(seen)f(comp)s(elling)g(use)g(cases)g(for)g(utilizing)h(the)f
-FC(RAM)g FD(switc)m(hes,)h(though)150 4115 y(not)k(\(y)m(et\))i(for)e
-(com)m(bining)g(them)g(with)g(`)p Fy(--no_tmp_fl)p FD('.)42
-b FC(NCO)32 b FD(implemen)m(ts)g(b)s(oth)g(options)g(b)s(ecause)150
+FD(RAM)g FE(switc)m(hes,)h(though)150 4115 y(not)k(\(y)m(et\))i(for)e
+(com)m(bining)g(them)g(with)g(`)p Fz(--no_tmp_fl)p FE('.)42
+b FD(NCO)32 b FE(implemen)m(ts)g(b)s(oth)g(options)g(b)s(ecause)150
 4224 y(they)d(are)h(largely)g(indep)s(enden)m(t)e(of)i(eac)m(hother.)41
 b(It)30 b(is)f(up)f(to)i(\\p)s(o)m(w)m(er)f(users")g(to)h(disco)m(v)m
 (er)g(whic)m(h)f(b)s(est)150 4334 y(\014t)h(their)h(needs.)40
@@ -13213,43 +13439,43 @@ b(W)-8 b(e)31 b(w)m(elcome)i(accoun)m(ts)e(of)g(y)m(our)f(exp)s
 (eriences)h(p)s(osted)f(to)h(the)f(forums.)275 4493 y(Other)35
 b(safeguards)g(exist)h(to)h(protect)f(the)g(user)f(from)g(inadv)m
 (erten)m(tly)i(o)m(v)m(erwriting)g(data.)57 b(If)35 b(the)150
-4603 y Fz(output-\014le)45 b FD(sp)s(eci\014ed)39 b(for)h(a)h(command)e
+4603 y FA(output-\014le)45 b FE(sp)s(eci\014ed)39 b(for)h(a)h(command)e
 (is)h(a)h(pre-existing)g(\014le,)h(then)e(the)g(op)s(erator)g(will)h
 (prompt)150 4712 y(the)34 b(user)e(whether)h(to)h(o)m(v)m(erwrite)h
-(\(erase\))g(the)f(existing)g Fz(output-\014le)p FD(,)g(attempt)h(to)f
+(\(erase\))g(the)f(existing)g FA(output-\014le)p FE(,)g(attempt)h(to)f
 (app)s(end)e(to)i(it,)h(or)150 4822 y(ab)s(ort)g(the)h(op)s(eration.)56
 b(Ho)m(w)m(ev)m(er,)39 b(in)c(pro)s(cessing)g(large)h(amoun)m(ts)g(of)f
 (data,)j(to)s(o)e(man)m(y)f(in)m(teractiv)m(e)150 4932
 y(questions)29 b(slo)m(ws)h(pro)s(ductivit)m(y)-8 b(.)41
-b(Therefore)29 b FC(NCO)g FD(also)i(implemen)m(ts)f(t)m(w)m(o)g(w)m(a)m
+b(Therefore)29 b FD(NCO)g FE(also)i(implemen)m(ts)f(t)m(w)m(o)g(w)m(a)m
 (ys)h(to)f(o)m(v)m(erride)g(its)g(o)m(wn)150 5041 y(safet)m(y)37
-b(features,)h(the)f(`)p Fy(-O)p FD(')f(and)f(`)p Fy(-A)p
-FD(')h(switc)m(hes.)59 b(Sp)s(ecifying)36 b(`)p Fy(-O)p
-FD(')g(tells)h(the)f(op)s(erator)g(to)h(o)m(v)m(erwrite)150
-5151 y(an)m(y)c(existing)h Fz(output-\014le)k FD(without)32
+b(features,)h(the)f(`)p Fz(-O)p FE(')f(and)f(`)p Fz(-A)p
+FE(')h(switc)m(hes.)59 b(Sp)s(ecifying)36 b(`)p Fz(-O)p
+FE(')g(tells)h(the)f(op)s(erator)g(to)h(o)m(v)m(erwrite)150
+5151 y(an)m(y)c(existing)h FA(output-\014le)k FE(without)32
 b(prompting)g(the)h(user)f(in)m(teractiv)m(ely)-8 b(.)51
-b(Sp)s(ecifying)32 b(`)p Fy(-A)p FD(')h(tells)h(the)p
-150 5241 1200 4 v 199 5308 a Ft(2)275 5340 y Fs(The)25
+b(Sp)s(ecifying)32 b(`)p Fz(-A)p FE(')h(tells)h(the)p
+150 5241 1200 4 v 199 5308 a Fu(2)275 5340 y Ft(The)25
 b(OS-sp)r(eci\014c)h(system)f(mo)n(v)n(e)h(command)g(is)g(used.)34
-b(This)26 b(is)h Fr(mv)f Fs(for)g Fp(UNIX)p Fs(,)g(and)f
-Fr(move)i Fs(for)f(Windo)n(ws.)p eop end
+b(This)26 b(is)h Fs(mv)f Ft(for)g Fq(UNIX)p Ft(,)g(and)f
+Fs(move)i Ft(for)f(Windo)n(ws.)p eop end
 %%Page: 17 23
-TeXDict begin 17 22 bop 150 -116 a FD(Chapter)30 b(2:)41
+TeXDict begin 17 22 bop 150 -116 a FE(Chapter)30 b(2:)41
 b(Op)s(erator)30 b(Strategies)2264 b(17)150 299 y(op)s(erator)25
 b(to)g(attempt)h(to)g(app)s(end)d(to)i(an)m(y)g(existing)h
-Fz(output-\014le)k FD(without)24 b(prompting)g(the)h(user)f(in)m(ter-)
+FA(output-\014le)k FE(without)24 b(prompting)g(the)h(user)f(in)m(ter-)
 150 408 y(activ)m(ely)-8 b(.)43 b(These)26 b(switc)m(hes)i(are)g
 (useful)e(in)h(batc)m(h)g(en)m(vironmen)m(ts)h(b)s(ecause)f(they)g
 (suppress)e(in)m(teractiv)m(e)150 518 y(k)m(eyb)s(oard)30
-b(input.)150 818 y FB(2.4)68 b(App)t(ending)44 b(V)-11
-b(ariables)150 978 y FD(Adding)23 b(v)-5 b(ariables)24
+b(input.)150 818 y FC(2.4)68 b(App)t(ending)44 b(V)-11
+b(ariables)150 978 y FE(Adding)23 b(v)-5 b(ariables)24
 b(from)e(one)i(\014le)f(to)h(another)g(is)f(often)h(desirable.)38
-b(This)23 b(is)g(referred)g(to)h(as)f Fz(app)s(ending)p
-FD(,)150 1087 y(although)37 b(some)h(prefer)e(the)i(terminology)g
-Fz(merging)2036 1054 y Ft(3)2110 1087 y FD(or)g Fz(pasting)p
-FD(.)61 b(App)s(ending)35 b(is)i(often)h(confused)150
-1197 y(with)h(what)f FC(NCO)h FD(calls)h Fz(concatenation)p
-FD(.)68 b(In)38 b FC(NCO)p FD(,)j(concatenation)h(refers)c(to)i
+b(This)23 b(is)g(referred)g(to)h(as)f FA(app)s(ending)p
+FE(,)150 1087 y(although)37 b(some)h(prefer)e(the)i(terminology)g
+FA(merging)2036 1054 y Fu(3)2110 1087 y FE(or)g FA(pasting)p
+FE(.)61 b(App)s(ending)35 b(is)i(often)h(confused)150
+1197 y(with)h(what)f FD(NCO)h FE(calls)h FA(concatenation)p
+FE(.)68 b(In)38 b FD(NCO)p FE(,)j(concatenation)h(refers)c(to)i
 (splicing)f(a)g(v)-5 b(ariable)150 1306 y(along)38 b(the)g(record)f
 (dimension.)61 b(The)36 b(length)i(along)g(the)g(record)f(dimension)g
 (of)g(the)h(output)e(is)i(the)150 1416 y(sum)e(of)g(the)h(lengths)g(of)
@@ -13257,34 +13483,34 @@ g(the)g(input)e(\014les.)59 b(App)s(ending,)37 b(on)g(the)f(other)h
 (hand,)h(refers)e(to)h(cop)m(ying)h(a)150 1526 y(v)-5
 b(ariable)34 b(from)f(one)g(\014le)g(to)h(another)f(\014le)h(whic)m(h)e
 (ma)m(y)i(or)f(ma)m(y)h(not)f(already)h(con)m(tain)g(the)g(v)-5
-b(ariable)3687 1493 y Ft(4)3725 1526 y FD(.)150 1635
-y FC(NCO)30 b FD(can)i(app)s(end)d(or)h(concatenate)k(just)c(one)h(v)-5
+b(ariable)3687 1493 y Fu(4)3725 1526 y FE(.)150 1635
+y FD(NCO)30 b FE(can)i(app)s(end)d(or)h(concatenate)k(just)c(one)h(v)-5
 b(ariable,)32 b(or)f(all)g(the)g(v)-5 b(ariables)32 b(in)e(a)h(\014le)g
 (at)h(the)f(same)150 1745 y(time.)275 1927 y(In)e(this)h(sense,)h
-Fy(ncks)e FD(can)h(app)s(end)f(v)-5 b(ariables)31 b(from)e(one)i
+Fz(ncks)e FE(can)h(app)s(end)f(v)-5 b(ariables)31 b(from)e(one)i
 (\014le)f(to)h(another)g(\014le.)40 b(This)30 b(capabilit)m(y)i(is)150
 2036 y(in)m(v)m(ok)m(ed)c(b)m(y)f(naming)g(t)m(w)m(o)h(\014les)f(on)g
-(the)g(command)g(line,)h Fz(input-\014le)j FD(and)c Fz(output-\014le)p
-FD(.)39 b(When)27 b Fz(output-)150 2146 y(\014le)33 b
-FD(already)28 b(exists,)h(the)f(user)f(is)h(prompted)f(whether)g(to)i
-Fz(o)m(v)m(erwrite)p FD(,)h Fz(app)s(end/replace)p FD(,)e(or)g
-Fz(exit)i FD(from)150 2255 y(the)35 b(command.)54 b(Selecting)37
-b Fz(o)m(v)m(erwrite)42 b FD(tells)36 b(the)f(op)s(erator)g(to)h(erase)
-f(the)g(existing)h Fz(output-\014le)41 b FD(and)150 2365
+(the)g(command)g(line,)h FA(input-\014le)j FE(and)c FA(output-\014le)p
+FE(.)39 b(When)27 b FA(output-)150 2146 y(\014le)33 b
+FE(already)28 b(exists,)h(the)f(user)f(is)h(prompted)f(whether)g(to)i
+FA(o)m(v)m(erwrite)p FE(,)h FA(app)s(end/replace)p FE(,)e(or)g
+FA(exit)i FE(from)150 2255 y(the)35 b(command.)54 b(Selecting)37
+b FA(o)m(v)m(erwrite)42 b FE(tells)36 b(the)f(op)s(erator)g(to)h(erase)
+f(the)g(existing)h FA(output-\014le)41 b FE(and)150 2365
 y(replace)31 b(it)g(with)g(the)f(results)g(of)h(the)g(op)s(eration.)41
-b(Selecting)32 b Fz(exit)h FD(causes)e(the)g(op)s(erator)g(to)g
-(exit|the)150 2475 y Fz(output-\014le)38 b FD(will)33
+b(Selecting)32 b FA(exit)h FE(causes)e(the)g(op)s(erator)g(to)g
+(exit|the)150 2475 y FA(output-\014le)38 b FE(will)33
 b(not)h(b)s(e)e(touc)m(hed)i(in)e(this)h(case.)50 b(Selecting)34
-b Fz(app)s(end/replace)k FD(causes)33 b(the)h(op)s(erator)150
+b FA(app)s(end/replace)k FE(causes)33 b(the)h(op)s(erator)150
 2584 y(to)e(attempt)h(to)g(place)f(the)g(results)f(of)h(the)g(op)s
-(eration)g(in)g(the)f(existing)i Fz(output-\014le)p FD(,)f(See)g
+(eration)g(in)g(the)f(existing)i FA(output-\014le)p FE(,)f(See)g
 (Section)h(4.7)150 2694 y([nc)m(ks)e(netCDF)g(Kitc)m(hen)g(Sink],)f
-(page)h(176.)275 2876 y(The)e(simplest)i(w)m(a)m(y)g(to)g(create)h(the)
-f(union)e(of)i(t)m(w)m(o)h(\014les)e(is)390 3058 y Fy(ncks)47
-b(-A)g(fl_1.nc)f(fl_2.nc)275 3240 y FD(This)41 b(puts)h(the)h(con)m
-(ten)m(ts)i(of)e Fy(fl_1.nc)d FD(in)m(to)k Fy(fl_2.nc)p
-FD(.)76 b(The)42 b(`)p Fy(-A)p FD(')h(is)f(optional.)79
-b(On)42 b(output,)150 3349 y Fy(fl_2.nc)35 b FD(is)i(the)h(union)e(of)i
+(page)h(188.)275 2876 y(The)e(simplest)i(w)m(a)m(y)g(to)g(create)h(the)
+f(union)e(of)i(t)m(w)m(o)h(\014les)e(is)390 3058 y Fz(ncks)47
+b(-A)g(fl_1.nc)f(fl_2.nc)275 3240 y FE(This)41 b(puts)h(the)h(con)m
+(ten)m(ts)i(of)e Fz(fl_1.nc)d FE(in)m(to)k Fz(fl_2.nc)p
+FE(.)76 b(The)42 b(`)p Fz(-A)p FE(')h(is)f(optional.)79
+b(On)42 b(output,)150 3349 y Fz(fl_2.nc)35 b FE(is)i(the)h(union)e(of)i
 (the)f(input)f(\014les,)j(regardless)f(of)f(whether)g(they)g(share)g
 (dimensions)g(and)150 3459 y(v)-5 b(ariables,)43 b(or)d(are)g
 (completely)i(disjoin)m(t.)69 b(The)40 b(app)s(end)e(fails)i(if)g(the)g
@@ -13292,38 +13518,38 @@ b(On)42 b(output,)150 3349 y Fy(fl_2.nc)35 b FD(is)i(the)h(union)e(of)i
 3568 y(named)g(record)h(dimensions)f(\(since)h(netCDF)g(supp)s(orts)e
 (only)i(one\),)j(or)d(ha)m(v)m(e)h(dimensions)e(of)h(the)150
 3678 y(same)31 b(name)f(but)g(di\013eren)m(t)h(sizes.)150
-3978 y FB(2.5)68 b(Simple)46 b(Arithmetic)f(and)g(In)l(terp)t(olation)
-150 4138 y FD(Users)34 b(comfortable)i(with)e FC(NCO)g
-FD(seman)m(tics)i(ma)m(y)f(\014nd)e(it)i(easier)g(to)g(p)s(erform)e
+3978 y FC(2.5)68 b(Simple)46 b(Arithmetic)f(and)g(In)l(terp)t(olation)
+150 4138 y FE(Users)34 b(comfortable)i(with)e FD(NCO)g
+FE(seman)m(tics)i(ma)m(y)f(\014nd)e(it)i(easier)g(to)g(p)s(erform)e
 (some)i(simple)f(mathe-)150 4247 y(matical)f(op)s(erations)e(in)f
-FC(NCO)h FD(rather)g(than)f(higher)h(lev)m(el)i(languages.)43
-b Fy(ncbo)30 b FD(\(see)i(Section)f(4.3)h([ncb)s(o)150
-4357 y(netCDF)37 b(Binary)f(Op)s(erator],)i(page)f(162\))h(do)s(es)d
+FD(NCO)h FE(rather)g(than)f(higher)h(lev)m(el)i(languages.)43
+b Fz(ncbo)30 b FE(\(see)i(Section)f(4.3)h([ncb)s(o)150
+4357 y(netCDF)37 b(Binary)f(Op)s(erator],)i(page)f(174\))h(do)s(es)d
 (\014le)i(addition,)h(subtraction,)g(m)m(ultiplication,)i(divi-)150
 4466 y(sion,)32 b(and)e(broadcasting.)44 b(It)31 b(ev)m(en)h(do)s(es)f
-(group)f(broadcasting.)44 b Fy(ncflint)29 b FD(\(see)k(Section)f(4.6)g
+(group)f(broadcasting.)44 b Fz(ncflint)29 b FE(\(see)k(Section)f(4.6)g
 ([nc\015in)m(t)150 4576 y(netCDF)e(File)g(In)m(terp)s(olator],)h(page)f
-(173\))h(do)s(es)e(\014le)g(addition,)h(subtraction,)g(m)m
+(185\))h(do)s(es)e(\014le)g(addition,)h(subtraction,)g(m)m
 (ultiplication)h(and)e(in-)150 4686 y(terp)s(olation.)51
 b(Sequences)33 b(of)g(these)h(commands)f(can)h(accomplish)g(simple)f(y)
 m(et)i(p)s(o)m(w)m(erful)e(op)s(erations)150 4795 y(from)d(the)g
-(command)h(line.)p 150 4963 1200 4 v 199 5031 a Ft(3)275
-5063 y Fs(The)23 b(terminology)h Fm(merging)31 b Fs(is)24
+(command)h(line.)p 150 4963 1200 4 v 199 5031 a Fu(3)275
+5063 y Ft(The)23 b(terminology)h Fn(merging)31 b Ft(is)24
 b(reserv)n(ed)f(for)h(an)f(\(un)n(written\))g(op)r(erator)h(whic)n(h)f
 (replaces)i(h)n(yp)r(erslabs)e(of)h(a)f(v)l(ariable)275
 5150 y(in)i(one)h(\014le)g(with)g(h)n(yp)r(erslabs)f(of)i(the)e(same)h
-(v)l(ariable)h(from)f(another)g(\014le)199 5221 y Ft(4)275
-5253 y Fs(Y)-6 b(es,)26 b(the)g(terminology)i(is)f(confusing.)37
+(v)l(ariable)h(from)f(another)g(\014le)199 5221 y Fu(4)275
+5253 y Ft(Y)-6 b(es,)26 b(the)g(terminology)i(is)f(confusing.)37
 b(By)27 b(all)g(means)g(mail)g(me)g(if)g(y)n(ou)f(think)f(of)i(a)g(b)r
-(etter)f(nomenclature.)38 b(Should)275 5340 y Fp(NCO)25
-b Fs(use)h Fm(paste)k Fs(instead)c(of)g Fm(app)r(end)s
-Fs(?)p eop end
+(etter)f(nomenclature.)38 b(Should)275 5340 y Fq(NCO)25
+b Ft(use)h Fn(paste)k Ft(instead)c(of)g Fn(app)r(end)s
+Ft(?)p eop end
 %%Page: 18 24
-TeXDict begin 18 23 bop 150 -116 a FD(18)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(2.6)68 b(Statistics)47
-b(vs.)e(Concatenation)150 458 y FD(The)24 b(most)g(frequen)m(tly)h
-(used)e(op)s(erators)h(of)h FC(NCO)f FD(are)g(probably)g(the)g
-Fz(statisticians)30 b FD(\(i.e.,)d(to)s(ols)e(that)g(do)150
+TeXDict begin 18 23 bop 150 -116 a FE(18)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(2.6)68 b(Statistics)47
+b(vs.)e(Concatenation)150 458 y FE(The)24 b(most)g(frequen)m(tly)h
+(used)e(op)s(erators)h(of)h FD(NCO)f FE(are)g(probably)g(the)g
+FA(statisticians)30 b FE(\(i.e.,)d(to)s(ols)e(that)g(do)150
 568 y(statistics\))35 b(and)e(concatenators.)51 b(Because)34
 b(there)f(are)h(so)f(man)m(y)g(t)m(yp)s(es)g(of)g(statistics)i(lik)m(e)
 f(a)m(v)m(eraging)150 677 y(\(e.g.,)k(across)e(\014les,)g(within)e(a)i
@@ -13333,299 +13559,299 @@ g(dimensions,)f(with)g(or)150 787 y(without)29 b(w)m(eigh)m(ts)h(and)e
 (the)f(record)f(dimension,)150 897 y(along)f(other)g(dimensions\),)g
 (there)g(are)g(curren)m(tly)f(no)g(few)m(er)h(than)f(\014v)m(e)h(op)s
 (erators)g(whic)m(h)f(tac)m(kle)i(these)150 1006 y(t)m(w)m(o)42
-b(purp)s(oses:)58 b Fy(ncra)p FD(,)42 b Fy(nces)p FD(,)g
-Fy(ncwa)p FD(,)g Fy(ncrcat)p FD(,)f(and)f Fy(ncecat)p
-FD(.)68 b(These)40 b(op)s(erators)h(do)f(share)g(man)m(y)150
-1116 y(capabilities)593 1083 y Ft(5)632 1116 y FD(,)i(though)d(eac)m(h)
+b(purp)s(oses:)58 b Fz(ncra)p FE(,)42 b Fz(nces)p FE(,)g
+Fz(ncwa)p FE(,)g Fz(ncrcat)p FE(,)f(and)f Fz(ncecat)p
+FE(.)68 b(These)40 b(op)s(erators)h(do)f(share)g(man)m(y)150
+1116 y(capabilities)593 1083 y Fu(5)632 1116 y FE(,)i(though)d(eac)m(h)
 h(has)f(its)h(unique)e(sp)s(ecialt)m(y)-8 b(.)70 b(Tw)m(o)39
-b(of)g(these)h(op)s(erators,)i Fy(ncrcat)c FD(and)150
-1225 y Fy(ncecat)p FD(,)46 b(concatenate)h(h)m(yp)s(erslabs)c(across)h
+b(of)g(these)h(op)s(erators,)i Fz(ncrcat)c FE(and)150
+1225 y Fz(ncecat)p FE(,)46 b(concatenate)h(h)m(yp)s(erslabs)c(across)h
 (\014les.)82 b(The)44 b(other)g(t)m(w)m(o)i(op)s(erators,)h
-Fy(ncra)c FD(and)h Fy(nces)p FD(,)150 1335 y(compute)f(statistics)i
-(across)e(\(and/or)g(within\))f(\014les)2038 1302 y Ft(6)2076
-1335 y FD(.)77 b(First,)47 b(let's)d(describ)s(e)e(the)h
+Fz(ncra)c FE(and)h Fz(nces)p FE(,)150 1335 y(compute)f(statistics)i
+(across)e(\(and/or)g(within\))f(\014les)2038 1302 y Fu(6)2076
+1335 y FE(.)77 b(First,)47 b(let's)d(describ)s(e)e(the)h
 (concatenators,)150 1445 y(then)30 b(the)h(statistics)h(to)s(ols.)150
-1634 y Fu(2.6.1)63 b(Concatenators)40 b Fl(ncrcat)i Fu(and)f
-Fl(ncecat)150 1781 y FD(Joining)36 b(together)h(indep)s(enden)m(t)e
+1634 y Fv(2.6.1)63 b(Concatenators)40 b Fm(ncrcat)i Fv(and)f
+Fm(ncecat)150 1781 y FE(Joining)36 b(together)h(indep)s(enden)m(t)e
 (\014les)h(along)h(a)f(common)g(record)g(dimension)g(is)g(called)h
-Fz(concatena-)150 1891 y(tion)p FD(.)57 b Fy(ncrcat)34
-b FD(is)i(designed)g(for)f(concatenating)j(record)e(v)-5
-b(ariables,)38 b(while)e Fy(ncecat)e FD(is)i(designed)f(for)150
+FA(concatena-)150 1891 y(tion)p FE(.)57 b Fz(ncrcat)34
+b FE(is)i(designed)g(for)f(concatenating)j(record)e(v)-5
+b(ariables,)38 b(while)e Fz(ncecat)e FE(is)i(designed)f(for)150
 2000 y(concatenating)29 b(\014xed)c(length)i(v)-5 b(ariables.)40
-b(Consider)26 b(\014v)m(e)g(\014les,)h Fy(85.nc)p FD(,)f
-Fy(86.nc)p FD(,)32 b(.)22 b(.)g(.)42 b Fy(89.nc)25 b
-FD(eac)m(h)i(con-)150 2110 y(taining)39 b(a)f(y)m(ear's)h(w)m(orth)f
+b(Consider)26 b(\014v)m(e)g(\014les,)h Fz(85.nc)p FE(,)f
+Fz(86.nc)p FE(,)32 b(.)22 b(.)g(.)42 b Fz(89.nc)25 b
+FE(eac)m(h)i(con-)150 2110 y(taining)39 b(a)f(y)m(ear's)h(w)m(orth)f
 (of)g(data.)65 b(Sa)m(y)38 b(y)m(ou)g(wish)g(to)g(create)i(from)e(them)
-g(a)g(single)h(\014le,)h Fy(8589.nc)150 2219 y FD(con)m(taining)h(all)g
+g(a)g(single)h(\014le,)h Fz(8589.nc)150 2219 y FE(con)m(taining)h(all)g
 (the)f(data,)k(i.e.,)f(spanning)c(all)i(\014v)m(e)f(y)m(ears.)70
 b(If)39 b(the)h(ann)m(ual)g(\014les)g(mak)m(e)h(use)f(of)g(the)150
 2329 y(same)28 b(record)f(v)-5 b(ariable,)29 b(then)e
-Fy(ncrcat)f FD(will)i(do)f(the)g(job)g(nicely)i(with,)f(e.g.,)h
-Fy(ncrcat)g(8?.nc)g(8589.nc)p FD(.)150 2439 y(The)39
+Fz(ncrcat)f FE(will)i(do)f(the)g(job)g(nicely)i(with,)f(e.g.,)h
+Fz(ncrcat)g(8?.nc)g(8589.nc)p FE(.)150 2439 y(The)39
 b(n)m(um)m(b)s(er)f(of)h(records)g(in)g(the)g(input)f(\014les)h(is)h
 (arbitrary)f(and)f(can)i(v)-5 b(ary)39 b(from)f(\014le)i(to)f(\014le.)
 68 b(See)150 2548 y(Section)28 b(4.10)i([ncrcat)e(netCDF)g(Record)g
-(Concatenator],)i(page)f(200,)h(for)d(a)h(complete)h(description)f(of)
-150 2658 y Fy(ncrcat)p FD(.)275 2817 y(Ho)m(w)m(ev)m(er,)39
+(Concatenator],)i(page)f(212,)h(for)d(a)h(complete)h(description)f(of)
+150 2658 y Fz(ncrcat)p FE(.)275 2817 y(Ho)m(w)m(ev)m(er,)39
 b(supp)s(ose)34 b(the)i(ann)m(ual)g(\014les)g(ha)m(v)m(e)h(no)e(record)
 h(v)-5 b(ariable,)38 b(and)d(th)m(us)h(their)f(data)i(are)f(all)150
 2927 y(\014xed)24 b(length.)39 b(F)-8 b(or)25 b(example,)i(the)d
 (\014les)h(ma)m(y)g(not)g(b)s(e)e(conceptually)j(sequen)m(tial,)i(but)
 23 b(rather)i(mem)m(b)s(ers)150 3036 y(of)35 b(the)f(same)h(group,)g
-(or)f Fz(ensem)m(ble)p FD(.)53 b(Mem)m(b)s(ers)35 b(of)f(an)g(ensem)m
+(or)f FA(ensem)m(ble)p FE(.)53 b(Mem)m(b)s(ers)35 b(of)f(an)g(ensem)m
 (ble)h(ma)m(y)g(ha)m(v)m(e)h(no)e(reason)h(to)g(con)m(tain)150
-3146 y(a)c(record)g(dimension.)41 b Fy(ncecat)30 b FD(will)h(create)h
-(a)f(new)g(record)f(dimension)h(\(named)f Fz(record)35
-b FD(b)m(y)30 b(default\))150 3256 y(with)k(whic)m(h)h(to)g(glue)h
+3146 y(a)c(record)g(dimension.)41 b Fz(ncecat)30 b FE(will)h(create)h
+(a)f(new)g(record)f(dimension)h(\(named)f FA(record)35
+b FE(b)m(y)30 b(default\))150 3256 y(with)k(whic)m(h)h(to)g(glue)h
 (together)g(the)f(individual)f(\014les)h(in)m(to)g(the)g(single)h
-(ensem)m(ble)f(\014le.)54 b(If)34 b Fy(ncecat)f FD(is)150
+(ensem)m(ble)f(\014le.)54 b(If)34 b Fz(ncecat)f FE(is)150
 3365 y(used)24 b(on)h(\014les)g(whic)m(h)f(con)m(tain)i(an)f(existing)h
 (record)f(dimension,)g(that)h(record)e(dimension)h(is)f(con)m(v)m
 (erted)150 3475 y(to)k(a)g(\014xed-length)f(dimension)g(of)h(the)f
 (same)h(name)f(and)g(a)h(new)f(record)g(dimension)g(\(named)g
-Fy(record)p FD(\))150 3584 y(is)g(created.)41 b(Consider)27
-b(\014v)m(e)g(realizations,)j Fy(85a.nc)p FD(,)d Fy(85b.nc)p
-FD(,)32 b(.)22 b(.)g(.)42 b Fy(85e.nc)26 b FD(of)h(1985)i(predictions)e
+Fz(record)p FE(\))150 3584 y(is)g(created.)41 b(Consider)27
+b(\014v)m(e)g(realizations,)j Fz(85a.nc)p FE(,)d Fz(85b.nc)p
+FE(,)32 b(.)22 b(.)g(.)42 b Fz(85e.nc)26 b FE(of)h(1985)i(predictions)e
 (from)150 3694 y(the)42 b(same)f(climate)j(mo)s(del.)73
-b(Then)41 b Fy(ncecat)29 b(85?.nc)f(85_ens.nc)39 b FD(glues)j(together)
+b(Then)41 b Fz(ncecat)29 b(85?.nc)f(85_ens.nc)39 b FE(glues)j(together)
 h(the)f(individual)150 3804 y(realizations)30 b(in)m(to)f(the)g(single)
-g(\014le,)f Fy(85_ens.nc)p FD(.)38 b(If)28 b(an)g(input)f(v)-5
-b(ariable)29 b(w)m(as)f(dimensioned)g([)p Fy(lat)p FD(,)p
-Fy(lon)p FD(],)150 3913 y(it)j(will)g(ha)m(v)m(e)h(dimensions)e([)p
-Fy(record)p FD(,)p Fy(lat)p FD(,)p Fy(lon)p FD(])e(in)i(the)h(output)f
-(\014le.)42 b(A)30 b(restriction)i(of)f Fy(ncecat)e FD(is)h(that)150
+g(\014le,)f Fz(85_ens.nc)p FE(.)38 b(If)28 b(an)g(input)f(v)-5
+b(ariable)29 b(w)m(as)f(dimensioned)g([)p Fz(lat)p FE(,)p
+Fz(lon)p FE(],)150 3913 y(it)j(will)g(ha)m(v)m(e)h(dimensions)e([)p
+Fz(record)p FE(,)p Fz(lat)p FE(,)p Fz(lon)p FE(])e(in)i(the)h(output)f
+(\014le.)42 b(A)30 b(restriction)i(of)f Fz(ncecat)e FE(is)h(that)150
 4023 y(the)i(h)m(yp)s(erslabs)e(of)h(the)h(pro)s(cessed)f(v)-5
 b(ariables)32 b(m)m(ust)f(b)s(e)f(the)i(same)g(from)f(\014le)g(to)h
 (\014le.)44 b(Normally)32 b(this)150 4132 y(means)d(all)h(the)f(input)g
 (\014les)g(are)g(the)h(same)f(size,)i(and)d(con)m(tain)j(data)e(on)g
 (di\013eren)m(t)h(realizations)h(of)f(the)150 4242 y(same)35
 b(v)-5 b(ariables.)54 b(See)35 b(Section)g(4.5)h([ncecat)g(netCDF)f
-(Ensem)m(ble)g(Concatenator],)j(page)d(170,)i(for)e(a)150
-4351 y(complete)d(description)e(of)h Fy(ncecat)p FD(.)275
-4511 y Fy(ncpdq)k FD(mak)m(es)k(it)e(p)s(ossible)g(to)h(concatenate)i
+(Ensem)m(ble)g(Concatenator],)j(page)d(182,)i(for)e(a)150
+4351 y(complete)d(description)e(of)h Fz(ncecat)p FE(.)275
+4511 y Fz(ncpdq)k FE(mak)m(es)k(it)e(p)s(ossible)g(to)h(concatenate)i
 (\014les)e(along)g(an)m(y)g(dimension,)g(not)g(just)f(the)g(record)150
-4620 y(dimension.)60 b(First,)39 b(use)e Fy(ncpdq)e FD(to)j(con)m(v)m
+4620 y(dimension.)60 b(First,)39 b(use)e Fz(ncpdq)e FE(to)j(con)m(v)m
 (ert)g(the)f(dimension)g(to)g(b)s(e)g(concatenated)i(\(i.e.,)h
-(extended)p 150 4702 1200 4 v 199 4769 a Ft(5)275 4801
-y Fs(Curren)n(tly)22 b Fr(nces)h Fs(and)f Fr(ncrcat)i
-Fs(are)f(sym)n(b)r(olically)h(link)n(ed)e(to)h(the)f
-Fr(ncra)h Fs(executable,)h(whic)n(h)e(b)r(eha)n(v)n(es)g(sligh)n(tly)h
+(extended)p 150 4702 1200 4 v 199 4769 a Fu(5)275 4801
+y Ft(Curren)n(tly)22 b Fs(nces)h Ft(and)f Fs(ncrcat)i
+Ft(are)f(sym)n(b)r(olically)h(link)n(ed)e(to)h(the)f
+Fs(ncra)h Ft(executable,)h(whic)n(h)e(b)r(eha)n(v)n(es)g(sligh)n(tly)h
 (di\013er-)275 4888 y(en)n(tly)i(based)h(on)h(its)f(in)n(v)n(o)r
-(cation)h(name)f(\(i.e.,)i(`)p Fr(argv[0])p Fs('\).)38
+(cation)h(name)f(\(i.e.,)i(`)p Fs(argv[0])p Ft('\).)38
 b(These)27 b(three)f(op)r(erators)i(share)e(the)g(same)h(source)g(co)r
 (de,)275 4975 y(and)e(merely)h(ha)n(v)n(e)f(di\013eren)n(t)g(inner)g
-(lo)r(ops.)199 5047 y Ft(6)275 5078 y Fs(The)32 b(third)h(a)n(v)n
-(eraging)g(op)r(erator,)j Fr(ncwa)p Fs(,)f(is)f(the)e(most)h
-(sophisticated)h(a)n(v)n(erager)f(in)g Fp(NCO)p Fs(.)55
-b(Ho)n(w)n(ev)n(er,)34 b Fr(ncwa)g Fs(is)f(in)275 5166
-y(a)c(di\013eren)n(t)g(class)i(than)d Fr(ncra)i Fs(and)f
-Fr(nces)h Fs(b)r(ecause)g(it)g(op)r(erates)g(on)f(a)h(single)g(\014le)f
+(lo)r(ops.)199 5047 y Fu(6)275 5078 y Ft(The)32 b(third)h(a)n(v)n
+(eraging)g(op)r(erator,)j Fs(ncwa)p Ft(,)f(is)f(the)e(most)h
+(sophisticated)h(a)n(v)n(erager)f(in)g Fq(NCO)p Ft(.)55
+b(Ho)n(w)n(ev)n(er,)34 b Fs(ncwa)g Ft(is)f(in)275 5166
+y(a)c(di\013eren)n(t)g(class)i(than)d Fs(ncra)i Ft(and)f
+Fs(nces)h Ft(b)r(ecause)g(it)g(op)r(erates)g(on)f(a)h(single)g(\014le)f
 (p)r(er)h(in)n(v)n(o)r(cation)f(\(as)h(opp)r(osed)g(to)275
 5253 y(m)n(ultiple)e(\014les\).)44 b(On)27 b(that)i(single)g(\014le,)h
-(ho)n(w)n(ev)n(er,)f Fr(ncwa)h Fs(pro)n(vides)e(a)h(ric)n(her)g(set)g
+(ho)n(w)n(ev)n(er,)f Fs(ncwa)h Ft(pro)n(vides)e(a)h(ric)n(her)g(set)g
 (of)g(a)n(v)n(eraging)g(options|including)275 5340 y(w)n(eigh)n(ting,)d
 (masking,)h(and)e(broadcasting.)p eop end
 %%Page: 19 25
-TeXDict begin 19 24 bop 150 -116 a FD(Chapter)30 b(2:)41
+TeXDict begin 19 24 bop 150 -116 a FE(Chapter)30 b(2:)41
 b(Op)s(erator)30 b(Strategies)2264 b(19)150 299 y(with)33
 b(data)h(from)f(other)g(\014les\))h(in)m(to)g(the)f(record)g
-(dimension.)49 b(Second,)34 b(use)f Fy(ncrcat)e FD(to)j(concatenate)150
+(dimension.)49 b(Second,)34 b(use)f Fz(ncrcat)e FE(to)j(concatenate)150
 408 y(these)42 b(\014les.)75 b(Finally)-8 b(,)46 b(if)c(desirable,)j
-(use)d Fy(ncpdq)e FD(to)i(rev)m(ert)h(to)g(the)e(original)i
+(use)d Fz(ncpdq)e FE(to)i(rev)m(ert)h(to)g(the)e(original)i
 (dimensionalit)m(y)-8 b(.)77 b(As)150 518 y(a)39 b(concrete)g(example,)
-i(sa)m(y)e(that)g(\014les)f Fy(x_01.nc)p FD(,)g Fy(x_02.nc)p
-FD(,)44 b(.)23 b(.)f(.)41 b Fy(x_10.nc)c FD(con)m(tain)i(time-ev)m
+i(sa)m(y)e(that)g(\014les)f Fz(x_01.nc)p FE(,)g Fz(x_02.nc)p
+FE(,)44 b(.)23 b(.)f(.)41 b Fz(x_10.nc)c FE(con)m(tain)i(time-ev)m
 (olving)150 628 y(datasets)30 b(from)f(spatially)i(adjacen)m(t)f
 (regions.)41 b(The)29 b(time)h(and)e(spatial)j(co)s(ordinates)f(are)f
-Fy(time)f FD(and)h Fy(x)p FD(,)150 737 y(resp)s(ectiv)m(ely)-8
+Fz(time)f FE(and)h Fz(x)p FE(,)150 737 y(resp)s(ectiv)m(ely)-8
 b(.)47 b(Initially)33 b(the)f(record)g(dimension)f(is)h
-Fy(time)p FD(.)44 b(Our)31 b(goal)i(is)f(to)h(create)g(a)g(single)f
+Fz(time)p FE(.)44 b(Our)31 b(goal)i(is)f(to)h(create)g(a)g(single)f
 (\014le)g(that)150 847 y(con)m(tains)g(joins)e(all)h(the)g(spatially)g
 (adjacen)m(t)h(regions)f(in)m(to)g(one)g(single)g(time-ev)m(olving)i
-(dataset.)390 1009 y Fy(for)47 b(idx)g(in)g(01)g(02)g(03)h(04)f(05)g
+(dataset.)390 1009 y Fz(for)47 b(idx)g(in)g(01)g(02)g(03)h(04)f(05)g
 (06)g(07)g(08)g(09)h(10;)f(do)g(#)g(Bourne)f(Shell)485
 1118 y(ncpdq)h(-a)g(x,time)f(x_${idx}.nc)f(foo_${idx}.nc)92
 b(#)47 b(Make)g(x)g(record)f(dimension)390 1228 y(done)390
 1337 y(ncrcat)g(foo_??.nc)f(out.nc)333 b(#)47 b(Concatenate)e(along)h
 (x)390 1447 y(ncpdq)g(-a)i(time,x)e(out.nc)g(out.nc)g(#)h(Revert)f(to)i
-(time)e(as)h(record)f(dimension)275 1609 y FD(Note)33
-b(that)g Fy(ncrcat)e FD(will)h(not)h(concatenate)i(\014xed-length)d(v)
--5 b(ariables,)34 b(whereas)e Fy(ncecat)f FD(concate-)150
+(time)e(as)h(record)f(dimension)275 1609 y FE(Note)33
+b(that)g Fz(ncrcat)e FE(will)h(not)h(concatenate)i(\014xed-length)d(v)
+-5 b(ariables,)34 b(whereas)e Fz(ncecat)f FE(concate-)150
 1718 y(nates)22 b(b)s(oth)e(\014xed-length)i(and)f(record)g(v)-5
 b(ariables)22 b(along)g(a)g(new)f(record)g(v)-5 b(ariable.)39
 b(T)-8 b(o)21 b(conserv)m(e)i(system)150 1828 y(memory)-8
-b(,)31 b(use)f Fy(ncrcat)f FD(where)h(p)s(ossible.)150
-2032 y Fu(2.6.2)63 b(Av)m(eragers)40 b Fl(nces)p Fu(,)i
-Fl(ncra)p Fu(,)f(and)g Fl(ncwa)150 2179 y FD(The)33 b(di\013erences)h
-(b)s(et)m(w)m(een)g(the)g(a)m(v)m(eragers)h Fy(ncra)e
-FD(and)f Fy(nces)h FD(are)h(analogous)h(to)f(the)f(di\013erences)h(b)s
+b(,)31 b(use)f Fz(ncrcat)f FE(where)h(p)s(ossible.)150
+2032 y Fv(2.6.2)63 b(Av)m(eragers)40 b Fm(nces)p Fv(,)i
+Fm(ncra)p Fv(,)f(and)g Fm(ncwa)150 2179 y FE(The)33 b(di\013erences)h
+(b)s(et)m(w)m(een)g(the)g(a)m(v)m(eragers)h Fz(ncra)e
+FE(and)f Fz(nces)h FE(are)h(analogous)h(to)f(the)f(di\013erences)h(b)s
 (e-)150 2289 y(t)m(w)m(een)f(the)e(concatenators.)46
-b Fy(ncra)31 b FD(is)g(designed)g(for)h(a)m(v)m(eraging)h(record)f(v)-5
+b Fz(ncra)31 b FE(is)g(designed)g(for)h(a)m(v)m(eraging)h(record)f(v)-5
 b(ariables)32 b(from)f(at)h(least)h(one)150 2398 y(\014le,)40
-b(while)d Fy(nces)g FD(is)g(designed)g(for)h(a)m(v)m(eraging)i(\014xed)
+b(while)d Fz(nces)g FE(is)g(designed)g(for)h(a)m(v)m(eraging)i(\014xed)
 d(length)h(v)-5 b(ariables)38 b(from)f(m)m(ultiple)h(\014les.)62
-b Fy(ncra)150 2508 y FD(p)s(erforms)30 b(a)j(simple)f(arithmetic)h(a)m
+b Fz(ncra)150 2508 y FE(p)s(erforms)30 b(a)j(simple)f(arithmetic)h(a)m
 (v)m(erage)i(o)m(v)m(er)e(the)f(record)g(dimension)f(of)i(all)f(the)h
 (input)e(\014les,)h(with)150 2617 y(eac)m(h)h(record)f(ha)m(ving)g(an)g
 (equal)h(w)m(eigh)m(t)g(in)f(the)g(a)m(v)m(erage.)48
-b Fy(nces)31 b FD(p)s(erforms)f(a)j(simple)f(arithmetic)h(a)m(v-)150
+b Fz(nces)31 b FE(p)s(erforms)f(a)j(simple)f(arithmetic)h(a)m(v-)150
 2727 y(erage)f(of)f(all)h(the)f(input)f(\014les,)h(with)g(eac)m(h)h
 (\014le)f(ha)m(ving)h(an)e(equal)i(w)m(eigh)m(t)g(in)f(the)g(a)m(v)m
-(erage.)45 b(Note)32 b(that)150 2836 y Fy(ncra)40 b FD(cannot)h(a)m(v)m
+(erage.)45 b(Note)32 b(that)150 2836 y Fz(ncra)40 b FE(cannot)h(a)m(v)m
 (erage)i(\014xed-length)e(v)-5 b(ariables,)44 b(but)c
-Fy(nces)g FD(can)g(a)m(v)m(erage)k(b)s(oth)c(\014xed-length)h(and)150
+Fz(nces)g FE(can)g(a)m(v)m(erage)k(b)s(oth)c(\014xed-length)h(and)150
 2946 y(record)36 b(v)-5 b(ariables.)58 b(T)-8 b(o)37
-b(conserv)m(e)g(system)f(memory)-8 b(,)38 b(use)e Fy(ncra)f
-FD(rather)h(than)g Fy(nces)f FD(where)g(p)s(ossible)150
-3056 y(\(e.g.,)j(if)d(eac)m(h)h Fz(input-\014le)k FD(is)35
+b(conserv)m(e)g(system)f(memory)-8 b(,)38 b(use)e Fz(ncra)f
+FE(rather)h(than)g Fz(nces)f FE(where)g(p)s(ossible)150
+3056 y(\(e.g.,)j(if)d(eac)m(h)h FA(input-\014le)k FE(is)35
 b(one)g(record)g(long\).)55 b(The)35 b(\014le)g(output)g(from)f
-Fy(nces)g FD(will)h(ha)m(v)m(e)h(the)g(same)150 3165
+Fz(nces)g FE(will)h(ha)m(v)m(e)h(the)g(same)150 3165
 y(dimensions)f(\(meaning)i(dimension)e(names)h(as)h(w)m(ell)g(as)f
 (sizes\))h(as)f(the)g(input)g(h)m(yp)s(erslabs)e(\(see)j(Sec-)150
 3275 y(tion)32 b(4.4)h([nces)f(netCDF)g(Ensem)m(ble)f(Statistics],)j
-(page)f(167,)g(for)e(a)h(complete)h(description)f(of)f
-Fy(nces)p FD(\).)150 3384 y(The)36 b(\014le)h(output)f(from)g
-Fy(ncra)g FD(will)h(ha)m(v)m(e)g(the)g(same)g(dimensions)f(as)h(the)g
+(page)f(179,)g(for)e(a)h(complete)h(description)f(of)f
+Fz(nces)p FE(\).)150 3384 y(The)36 b(\014le)h(output)f(from)g
+Fz(ncra)g FE(will)h(ha)m(v)m(e)g(the)g(same)g(dimensions)f(as)h(the)g
 (input)e(h)m(yp)s(erslabs)h(except)150 3494 y(for)30
 b(the)g(record)g(dimension,)g(whic)m(h)g(will)h(ha)m(v)m(e)g(a)g(size)g
 (of)f(1)h(\(see)g(Section)g(4.9)h([ncra)e(netCDF)h(Record)150
-3604 y(Av)m(erager],)h(page)f(198,)h(for)f(a)f(complete)i(description)f
-(of)f Fy(ncra)p FD(\).)150 3808 y Fu(2.6.3)63 b(In)m(terp)s(olator)41
-b Fl(ncflint)150 3955 y Fy(ncflint)20 b FD(can)i(in)m(terp)s(olate)i
+3604 y(Av)m(erager],)h(page)f(210,)h(for)f(a)f(complete)i(description)f
+(of)f Fz(ncra)p FE(\).)150 3808 y Fv(2.6.3)63 b(In)m(terp)s(olator)41
+b Fm(ncflint)150 3955 y Fz(ncflint)20 b FE(can)i(in)m(terp)s(olate)i
 (data)f(b)s(et)m(w)m(een)g(or)f(t)m(w)m(o)h(\014les.)38
 b(Since)22 b(no)g(other)g(op)s(erators)h(ha)m(v)m(e)g(this)f(abilit)m
 (y)-8 b(,)150 4064 y(the)26 b(description)g(of)h(in)m(terp)s(olation)g
-(is)f(giv)m(en)h(fully)f(on)g(the)g Fy(ncflint)e FD(reference)j(page)g
+(is)f(giv)m(en)h(fully)f(on)g(the)g Fz(ncflint)e FE(reference)j(page)g
 (\(see)g(Section)g(4.6)150 4174 y([nc\015in)m(t)f(netCDF)h(File)h(In)m
-(terp)s(olator],)g(page)f(173\).)41 b(Note)28 b(that)f(this)f
-(capabilit)m(y)i(also)f(allo)m(ws)h Fy(ncflint)150 4283
-y FD(to)j(linearly)g(rescale)h(an)m(y)f(data)g(in)f(a)g(netCDF)h
+(terp)s(olator],)g(page)f(185\).)41 b(Note)28 b(that)f(this)f
+(capabilit)m(y)i(also)f(allo)m(ws)h Fz(ncflint)150 4283
+y FE(to)j(linearly)g(rescale)h(an)m(y)f(data)g(in)f(a)g(netCDF)h
 (\014le,)g(e.g.,)h(to)f(con)m(v)m(ert)h(b)s(et)m(w)m(een)f(di\013ering)
-f(units.)150 4523 y FB(2.7)68 b(Large)46 b(Num)l(b)t(ers)f(of)g(Files)
-150 4682 y FD(Occasionally)36 b(one)f(desires)f(to)h(digest)h(\(i.e.,)h
+f(units.)150 4523 y FC(2.7)68 b(Large)46 b(Num)l(b)t(ers)f(of)g(Files)
+150 4682 y FE(Occasionally)36 b(one)f(desires)f(to)h(digest)h(\(i.e.,)h
 (concatenate)g(or)d(a)m(v)m(erage\))k(h)m(undreds)32
 b(or)i(thousands)g(of)150 4792 y(input)d(\014les.)43
 b(Unfortunately)-8 b(,)33 b(data)f(arc)m(hiv)m(es)h(\(e.g.,)h
-FC(NASA)29 b(EOSDIS)p FD(\))j(ma)m(y)g(not)f(name)h(netCDF)g(\014les)
+FD(NASA)29 b(EOSDIS)p FE(\))j(ma)m(y)g(not)f(name)h(netCDF)g(\014les)
 150 4902 y(in)37 b(a)h(format)f(understo)s(o)s(d)f(b)m(y)h(the)g(`)p
-Fy(-n)30 b Fn(loop)p FD(')37 b(switc)m(h)h(\(see)g(Section)g(3.5)g([Sp)
+Fz(-n)30 b Fo(loop)p FE(')37 b(switc)m(h)h(\(see)g(Section)g(3.5)g([Sp)
 s(ecifying)f(Input)f(Files],)150 5011 y(page)28 b(28\))g(that)g
 (automagically)i(generates)f(arbitrary)e(n)m(um)m(b)s(ers)f(of)h(input)
-f(\014lenames.)40 b(The)27 b(`)p Fy(-n)j Fn(loop)p FD(')150
+f(\014lenames.)40 b(The)27 b(`)p Fz(-n)j Fo(loop)p FE(')150
 5121 y(switc)m(h)22 b(has)f(the)g(virtue)h(of)f(b)s(eing)g(concise,)k
 (and)20 b(of)i(minimizing)f(the)h(command)f(line.)38
 b(This)21 b(helps)f(k)m(eeps)150 5230 y(output)k(\014le)g(small)h
 (since)g(the)f(command)g(line)h(is)f(stored)h(as)f(metadata)i(in)e(the)
-h Fy(history)d FD(attribute)j(\(see)150 5340 y(Section)35
-b(3.35)i([History)e(A)m(ttribute],)i(page)f(98\).)55
-b(Ho)m(w)m(ev)m(er,)38 b(the)d(`)p Fy(-n)30 b Fn(loop)p
-FD(')j(switc)m(h)i(is)g(useless)g(when)p eop end
+h Fz(history)d FE(attribute)j(\(see)150 5340 y(Section)32
+b(3.36)h([History)g(A)m(ttribute],)g(page)f(108\).)46
+b(Ho)m(w)m(ev)m(er,)34 b(the)e(`)p Fz(-n)e Fo(loop)p
+FE(')h(switc)m(h)h(is)f(useless)h(when)p eop end
 %%Page: 20 26
-TeXDict begin 20 25 bop 150 -116 a FD(20)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(there)h(is)g(no)g(simple,)g
+TeXDict begin 20 25 bop 150 -116 a FE(20)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(there)h(is)g(no)g(simple,)g
 (arithmetic)h(pattern)f(to)h(the)f(input)f(\014lenames)h(\(e.g.,)h
-Fy(h00001.nc)p FD(,)d Fy(h00002.nc)p FD(,)156 408 y(.)22
-b(.)g(.)42 b Fy(h90210.nc)m FD(\).)54 b(Moreo)m(v)m(er,)39
+Fz(h00001.nc)p FE(,)d Fz(h00002.nc)p FE(,)156 408 y(.)22
+b(.)g(.)42 b Fz(h90210.nc)m FE(\).)54 b(Moreo)m(v)m(er,)39
 b(\014lename)c(globbing)g(do)s(es)f(not)h(w)m(ork)g(when)f(the)h(input)
 e(\014les)i(are)g(to)s(o)150 518 y(n)m(umerous)26 b(or)g(their)h(names)
 g(are)g(to)s(o)g(length)m(y)g(\(when)f(strung)g(together)i(as)f(a)g
 (single)h(argumen)m(t\))f(to)h(b)s(e)150 628 y(passed)k(b)m(y)g(the)g
-(calling)h(shell)g(to)f(the)h FC(NCO)e FD(op)s(erator)2051
-595 y Ft(7)2089 628 y FD(.)46 b(When)32 b(this)g(o)s(ccurs,)g(the)g
-FC(ANSI)h FD(C-standard)150 737 y Fy(argc)p FD(-)p Fy(argv)39
-b FD(metho)s(d)i(of)g(passing)h(argumen)m(ts)f(from)g(the)g(calling)i
+(calling)h(shell)g(to)f(the)h FD(NCO)e FE(op)s(erator)2051
+595 y Fu(7)2089 628 y FE(.)46 b(When)32 b(this)g(o)s(ccurs,)g(the)g
+FD(ANSI)h FE(C-standard)150 737 y Fz(argc)p FE(-)p Fz(argv)39
+b FE(metho)s(d)i(of)g(passing)h(argumen)m(ts)f(from)g(the)g(calling)i
 (shell)f(to)g(a)f(C-program)g(\(i.e.,)46 b(an)150 847
-y FC(NCO)34 b FD(op)s(erator\))i(breaks)e(do)m(wn.)54
+y FD(NCO)34 b FE(op)s(erator\))i(breaks)e(do)m(wn.)54
 b(There)34 b(are)h(\(at)h(least\))g(three)f(alternativ)m(e)i(metho)s
 (ds)d(of)h(sp)s(ecifying)150 956 y(the)c(input)e(\014lenames)h(to)i
-FC(NCO)e FD(in)g(en)m(vironmen)m(t-limited)i(situations.)275
+FD(NCO)e FE(in)g(en)m(vironmen)m(t-limited)i(situations.)275
 1127 y(The)25 b(recommended)h(metho)s(d)g(for)g(sending)g(v)m(ery)h
 (large)g(n)m(um)m(b)s(ers)e(\(h)m(undreds)g(or)h(more,)i(t)m
 (ypically\))150 1237 y(of)23 b(input)f(\014lenames)i(to)g(the)f(m)m
 (ulti-\014le)h(op)s(erators)f(is)h(to)f(pass)g(the)h(\014lenames)f
-(with)g(the)g FC(UNIX)h Fz(standard)150 1347 y(input)31
-b FD(feature,)g(ak)-5 b(a)32 b Fy(stdin)p FD(:)390 1518
-y Fy(#)47 b(Pipe)g(large)f(numbers)g(of)h(filenames)f(to)h(stdin)390
+(with)g(the)g FD(UNIX)h FA(standard)150 1347 y(input)31
+b FE(feature,)g(ak)-5 b(a)32 b Fz(stdin)p FE(:)390 1518
+y Fz(#)47 b(Pipe)g(large)f(numbers)g(of)h(filenames)f(to)h(stdin)390
 1627 y(/bin/ls)f(|)h(grep)g(${CASEID}_'......'.nc)42
-b(|)47 b(ncecat)f(-o)i(foo.nc)275 1798 y FD(This)43 b(metho)s(d)h(a)m
+b(|)47 b(ncecat)f(-o)i(foo.nc)275 1798 y FE(This)43 b(metho)s(d)h(a)m
 (v)m(oids)j(all)e(constrain)m(ts)h(on)e(command)h(line)g(size)g(imp)s
 (osed)f(b)m(y)h(the)f(op)s(erating)150 1908 y(system.)39
 b(A)26 b(dra)m(wbac)m(k)g(to)g(this)f(metho)s(d)g(is)g(that)h(the)g
-Fy(history)d FD(attribute)k(\(see)f(Section)g(3.35)h([History)150
-2017 y(A)m(ttribute],)34 b(page)g(98\))f(do)s(es)f(not)h(record)f(the)h
-(name)g(of)f(an)m(y)h(input)f(\014les)g(since)h(the)f(names)h(w)m(ere)g
-(not)150 2127 y(passed)e(on)g(the)g(command)g(line.)44
+Fz(history)d FE(attribute)k(\(see)f(Section)g(3.36)h([History)150
+2017 y(A)m(ttribute],)k(page)g(108\))g(do)s(es)e(not)h(record)g(the)f
+(name)h(of)g(an)m(y)g(input)f(\014les)g(since)h(the)g(names)g(w)m(ere)g
+(not)150 2127 y(passed)h(on)g(the)g(command)g(line.)44
 b(This)30 b(mak)m(es)j(determining)e(the)g(data)h(pro)m(v)m(enance)g
 (at)g(a)g(later)g(date)150 2237 y(di\016cult.)39 b(T)-8
 b(o)26 b(remedy)f(this)g(situation,)j(m)m(ulti-\014le)e(op)s(erators)g
 (store)g(the)f(n)m(um)m(b)s(er)f(of)i(input)e(\014les)i(in)f(the)150
-2346 y Fy(nco_input_file_number)32 b FD(global)39 b(attribute)g(and)e
-(the)h(input)e(\014le)i(list)h(itself)f(in)g(the)g Fy(nco_input_)150
-2456 y(file_list)g FD(global)43 b(attribute)e(\(see)h(Section)g(3.36)h
-([File)f(List)f(A)m(ttributes],)k(page)d(99\).)74 b(Although)150
+2346 y Fz(nco_input_file_number)32 b FE(global)39 b(attribute)g(and)e
+(the)h(input)e(\014le)i(list)h(itself)f(in)g(the)g Fz(nco_input_)150
+2456 y(file_list)d FE(global)k(attribute)f(\(see)h(Section)f(3.37)h
+([File)g(List)f(A)m(ttributes],)j(page)d(109\).)64 b(Although)150
 2565 y(this)32 b(do)s(es)g(not)h(preserv)m(e)g(the)f(exact)i(command)e
 (used)g(to)h(generate)h(the)e(\014le,)i(it)f(do)s(es)f(retains)g(all)i
 (the)150 2675 y(information)d(required)e(to)i(reconstruct)g(the)g
 (command)f(and)g(determine)g(the)h(data)g(pro)m(v)m(enance.)275
 2846 y(A)37 b(second)g(option)g(is)g(to)h(use)f(the)g
-FC(UNIX)h Fy(xargs)e FD(command.)60 b(This)36 b(simple)h(example)h
-(selects)h(as)150 2956 y(input)33 b(to)h Fy(xargs)f FD(all)h(the)g
+FD(UNIX)h Fz(xargs)e FE(command.)60 b(This)36 b(simple)h(example)h
+(selects)h(as)150 2956 y(input)33 b(to)h Fz(xargs)f FE(all)h(the)g
 (\014lenames)g(in)g(the)f(curren)m(t)h(directory)g(that)h(matc)m(h)f(a)
 g(giv)m(en)h(pattern.)51 b(F)-8 b(or)150 3065 y(illustration,)26
 b(consider)e(a)f(user)g(trying)h(to)g(a)m(v)m(erage)i(millions)e(of)g
 (\014les)f(whic)m(h)h(eac)m(h)g(ha)m(v)m(e)h(a)f(six)f(c)m(haracter)150
 3175 y(\014lename.)40 b(If)28 b(the)g(shell)g(bu\013er)f(cannot)h(hold)
 g(the)g(results)g(of)g(the)g(corresp)s(onding)f(globbing)h(op)s
-(erator,)150 3284 y Fy(??????.nc)p FD(,)g(then)i(the)g(\014lename)g
+(erator,)150 3284 y Fz(??????.nc)p FE(,)g(then)i(the)g(\014lename)g
 (globbing)h(tec)m(hnique)g(will)f(fail.)41 b(Instead)30
 b(w)m(e)h(express)e(the)i(\014lename)150 3394 y(pattern)d(as)f(an)h
-(extended)f(regular)h(expression,)g Fy(......\\.nc)c
-FD(\(see)29 b(Section)f(3.11)h([Subsetting)e(Files],)150
-3504 y(page)i(40\).)42 b(W)-8 b(e)30 b(use)e Fy(grep)g
-FD(to)h(\014lter)g(the)g(directory)g(listing)h(for)e(this)h(pattern)g
-(and)f(to)h(pip)s(e)f(the)h(results)150 3613 y(to)h Fy(xargs)e
-FD(whic)m(h,)h(in)g(turn,)g(passes)g(the)g(matc)m(hing)i(\014lenames)e
-(to)h(an)f FC(NCO)g FD(m)m(ulti-\014le)h(op)s(erator,)g(e.g.,)150
-3723 y Fy(ncecat)p FD(.)390 3894 y Fy(#)47 b(Use)g(xargs)g(to)g
+(extended)f(regular)h(expression,)g Fz(......\\.nc)c
+FE(\(see)29 b(Section)f(3.11)h([Subsetting)e(Files],)150
+3504 y(page)i(40\).)42 b(W)-8 b(e)30 b(use)e Fz(grep)g
+FE(to)h(\014lter)g(the)g(directory)g(listing)h(for)e(this)h(pattern)g
+(and)f(to)h(pip)s(e)f(the)h(results)150 3613 y(to)h Fz(xargs)e
+FE(whic)m(h,)h(in)g(turn,)g(passes)g(the)g(matc)m(hing)i(\014lenames)e
+(to)h(an)f FD(NCO)g FE(m)m(ulti-\014le)h(op)s(erator,)g(e.g.,)150
+3723 y Fz(ncecat)p FE(.)390 3894 y Fz(#)47 b(Use)g(xargs)g(to)g
 (transfer)e(filenames)h(on)h(the)g(command)f(line)390
 4003 y(/bin/ls)g(|)h(grep)g(${CASEID}_'......'.nc)42
 b(|)47 b(xargs)g(-x)g(ncecat)f(-o)h(foo.nc)275 4174 y
-FD(The)39 b(single)i(quotes)g(protect)h(the)e(only)h(sensitiv)m(e)g
+FE(The)39 b(single)i(quotes)g(protect)h(the)e(only)h(sensitiv)m(e)g
 (parts)f(of)h(the)f(extended)h(regular)f(expression)150
-4284 y(\(the)c Fy(grep)f FD(argumen)m(t\),)j(and)d(allo)m(w)j(shell)e
-(in)m(terp)s(olation)h(\(the)f Fy(${CASEID})d FD(v)-5
+4284 y(\(the)c Fz(grep)f FE(argumen)m(t\),)j(and)d(allo)m(w)j(shell)e
+(in)m(terp)s(olation)h(\(the)f Fz(${CASEID})d FE(v)-5
 b(ariable)37 b(substitution\))150 4394 y(to)42 b(pro)s(ceed)e
 (unhindered)f(on)h(the)h(rest)g(of)g(the)g(command.)72
-b Fy(xargs)40 b FD(uses)g(the)h FC(UNIX)h FD(pip)s(e)d(feature)150
+b Fz(xargs)40 b FE(uses)g(the)h FD(UNIX)h FE(pip)s(e)d(feature)150
 4503 y(to)d(app)s(end)d(the)j(suitably)f(\014ltered)g(input)f(\014le)i
-(list)f(to)h(the)g(end)e(of)i(the)f Fy(ncecat)e FD(command)i(options.)
-150 4613 y(The)28 b Fy(-o)i(foo.nc)d FD(switc)m(h)i(ensures)f(that)h
-(the)g(input)f(\014les)g(supplied)f(b)m(y)i Fy(xargs)e
-FD(are)i(not)g(confused)f(with)150 4722 y(the)33 b(output)f(\014le)g
-(name.)47 b Fy(xargs)31 b FD(do)s(es,)i(unfortunately)-8
+(list)f(to)h(the)g(end)e(of)i(the)f Fz(ncecat)e FE(command)i(options.)
+150 4613 y(The)28 b Fz(-o)i(foo.nc)d FE(switc)m(h)i(ensures)f(that)h
+(the)g(input)f(\014les)g(supplied)f(b)m(y)i Fz(xargs)e
+FE(are)i(not)g(confused)f(with)150 4722 y(the)33 b(output)f(\014le)g
+(name.)47 b Fz(xargs)31 b FE(do)s(es,)i(unfortunately)-8
 b(,)33 b(ha)m(v)m(e)g(its)g(o)m(wn)g(limit)g(\(usually)f(ab)s(out)g
 (20,000)150 4832 y(c)m(haracters\))27 b(on)d(the)h(size)h(of)f(command)
-g(lines)g(it)g(can)g(pass.)39 b(Giv)m(e)26 b Fy(xargs)e
-FD(the)h(`)p Fy(-x)p FD(')f(switc)m(h)i(to)f(ensure)f(it)p
-150 4979 1200 4 v 199 5047 a Ft(7)275 5078 y Fs(The)34
+g(lines)g(it)g(can)g(pass.)39 b(Giv)m(e)26 b Fz(xargs)e
+FE(the)h(`)p Fz(-x)p FE(')f(switc)m(h)i(to)f(ensure)f(it)p
+150 4979 1200 4 v 199 5047 a Fu(7)275 5078 y Ft(The)34
 b(exact)g(length)g(whic)n(h)g(exceeds)h(the)e(op)r(erating)j(system)e
 (in)n(ternal)g(limit)h(for)g(command)f(line)h(lengths)g(v)l(aries)275
-5166 y(from)26 b Fp(OS)g Fs(to)g Fp(OS)g Fs(and)f(from)h(shell)h(to)f
-(shell.)35 b Fp(GNU)26 b Fr(bash)h Fs(ma)n(y)e(not)h(ha)n(v)n(e)f(an)n
+5166 y(from)26 b Fq(OS)g Ft(to)g Fq(OS)g Ft(and)f(from)h(shell)h(to)f
+(shell.)35 b Fq(GNU)26 b Fs(bash)h Ft(ma)n(y)e(not)h(ha)n(v)n(e)f(an)n
 (y)g(arbitrary)h(\014xed)e(limits)j(to)f(the)g(size)g(of)275
 5253 y(command)j(line)g(argumen)n(ts.)45 b(Man)n(y)29
-b Fp(OS)p Fs(s)g(cannot)g(handle)g(command)h(line)f(argumen)n(ts)g
+b Fq(OS)p Ft(s)g(cannot)g(handle)g(command)h(line)f(argumen)n(ts)g
 (\(including)g(results)h(of)g(\014le)275 5340 y(globbing\))c(exceeding)
 g(4096)h(c)n(haracters.)p eop end
 %%Page: 21 27
-TeXDict begin 21 26 bop 150 -116 a FD(Chapter)30 b(2:)41
+TeXDict begin 21 26 bop 150 -116 a FE(Chapter)30 b(2:)41
 b(Op)s(erator)30 b(Strategies)2264 b(21)150 299 y(dies)30
 b(if)f(it)h(reac)m(hes)h(this)e(in)m(ternal)i(limit.)41
 b(When)29 b(this)h(o)s(ccurs,)f(use)h(either)g(the)f
-Fy(stdin)f FD(metho)s(d)h(ab)s(o)m(v)m(e,)150 408 y(or)h(the)h(sym)m(b)
+Fz(stdin)f FE(metho)s(d)h(ab)s(o)m(v)m(e,)150 408 y(or)h(the)h(sym)m(b)
 s(olic)g(link)f(presen)m(ted)g(next.)275 597 y(Ev)m(en)44
 b(when)g(its)h(in)m(ternal)g(limits)h(ha)m(v)m(e)f(not)g(b)s(een)f
-(reac)m(hed,)49 b(the)c Fy(xargs)e FD(tec)m(hnique)i(ma)m(y)h(not)150
+(reac)m(hed,)49 b(the)c Fz(xargs)e FE(tec)m(hnique)i(ma)m(y)h(not)150
 707 y(b)s(e)38 b(sophisticated)j(enough)e(to)g(handle)g(all)h
 (situations.)68 b(A)39 b(full)g(scripting)g(language)i(lik)m(e)f(P)m
 (erl)g(can)150 817 y(handle)c(an)m(y)i(lev)m(el)g(of)f(complexit)m(y)i
@@ -13634,49 +13860,49 @@ b(when)g(its)h(in)m(ternal)g(limits)h(ha)m(v)m(e)f(not)g(b)s(een)f
 (resort)g(is)f(to)h(write)g(a)g(script)f(that)h(creates)h(sym)m(b)s
 (olic)e(links)h(b)s(et)m(w)m(een)g(the)150 1036 y(irregular)25
 b(input)e(\014lenames)i(and)f(a)h(set)g(of)g(regular,)h(arithmetic)g
-(\014lenames)f(that)g(the)g(`)p Fy(-n)30 b Fn(loop)p
-FD(')23 b(switc)m(h)150 1145 y(understands.)62 b(F)-8
+(\014lenames)f(that)g(the)g(`)p Fz(-n)30 b Fo(loop)p
+FE(')23 b(switc)m(h)150 1145 y(understands.)62 b(F)-8
 b(or)39 b(example,)h(the)f(follo)m(wing)g(P)m(erl)g(script)f(creates)h
 (a)g(monotonically)h(en)m(umerated)150 1255 y(sym)m(b)s(olic)28
-b(link)g(to)h(up)e(to)i(one)f(million)h Fy(.nc)e FD(\014les)h(in)g(a)g
+b(link)g(to)h(up)e(to)i(one)f(million)h Fz(.nc)e FE(\014les)h(in)g(a)g
 (directory)-8 b(.)41 b(If)28 b(there)g(are)g(999,999)j(netCDF)e
 (\014les)150 1364 y(presen)m(t,)i(the)f(links)g(are)h(named)f
-Fy(000001.nc)e FD(to)j Fy(999999.nc)p FD(:)390 1553 y
-Fy(#)47 b(Create)g(enumerated)e(symbolic)g(links)390
+Fz(000001.nc)e FE(to)j Fz(999999.nc)p FE(:)390 1553 y
+Fz(#)47 b(Create)g(enumerated)e(symbolic)g(links)390
 1663 y(/bin/ls)h(|)h(grep)g(\\.nc)g(|)g(perl)g(-e)g(\\)390
 1773 y('$idx=1;while\(<STDIN>\){c)o(hop;)o(syml)o(ink)41
 b($_,sprintf\("\04506d.nc",$idx)o(++\);)o(}')390 1882
 y(ncecat)46 b(-n)h(999999,6,1)e(000001.nc)h(foo.nc)390
 1992 y(#)h(Remove)g(symbolic)e(links)h(when)h(finished)390
-2101 y(/bin/rm)f(??????.nc)275 2290 y FD(The)33 b(`)p
-Fy(-n)d Fn(loop)p FD(')j(option)i(tells)g(the)f FC(NCO)g
-FD(op)s(erator)g(to)h(automatically)h(generate)g(the)e(\014lnames)g(of)
+2101 y(/bin/rm)f(??????.nc)275 2290 y FE(The)33 b(`)p
+Fz(-n)d Fo(loop)p FE(')j(option)i(tells)g(the)f FD(NCO)g
+FE(op)s(erator)g(to)h(automatically)h(generate)g(the)e(\014lnames)g(of)
 150 2400 y(the)h(sym)m(b)s(olic)g(links.)54 b(This)35
-b(circum)m(v)m(en)m(ts)h(an)m(y)f FC(OS)g FD(and)f(shell)h(limits)h(on)
+b(circum)m(v)m(en)m(ts)h(an)m(y)f FD(OS)g FE(and)f(shell)h(limits)h(on)
 e(command)h(line)g(size.)55 b(The)150 2509 y(sym)m(b)s(olic)23
-b(links)f(are)g(easily)i(remo)m(v)m(ed)f(once)g FC(NCO)f
-FD(is)g(\014nished.)37 b(One)21 b(dra)m(wbac)m(k)i(to)g(this)f(metho)s
-(d)g(is)g(that)150 2619 y(the)34 b Fy(history)f FD(attribute)h(\(see)h
-(Section)g(3.35)h([History)f(A)m(ttribute],)i(page)e(98\))g(retains)f
-(the)h(\014lename)150 2729 y(list)g(of)f(the)g(sym)m(b)s(olic)g(links,)
+b(links)f(are)g(easily)i(remo)m(v)m(ed)f(once)g FD(NCO)f
+FE(is)g(\014nished.)37 b(One)21 b(dra)m(wbac)m(k)i(to)g(this)f(metho)s
+(d)g(is)g(that)150 2619 y(the)31 b Fz(history)d FE(attribute)j(\(see)h
+(Section)f(3.36)h([History)f(A)m(ttribute],)h(page)f(108\))h(retains)f
+(the)g(\014lename)150 2729 y(list)k(of)f(the)g(sym)m(b)s(olic)g(links,)
 h(rather)f(than)g(the)g(data)h(\014les)f(themselv)m(es.)53
 b(This)33 b(mak)m(es)i(it)f(di\016cult)g(to)150 2838
 y(determine)c(the)h(data)g(pro)m(v)m(enance)h(at)f(a)f(later)i(date.)
-150 3159 y FB(2.8)68 b(Large)46 b(Datasets)150 3318 y
-Fz(Large)33 b(datasets)k FD(are)c(those)g(\014les)f(that)h(are)g
+150 3159 y FC(2.8)68 b(Large)46 b(Datasets)150 3318 y
+FA(Large)33 b(datasets)k FE(are)c(those)g(\014les)f(that)h(are)g
 (comparable)g(in)f(size)h(to)g(the)g(amoun)m(t)g(of)f(random)g(access)
-150 3428 y(memory)c(\()p FC(RAM)p FD(\))h(in)f(y)m(our)g(computer.)40
-b(Man)m(y)29 b(users)e(of)h FC(NCO)g FD(w)m(ork)g(with)g(\014les)g
+150 3428 y(memory)c(\()p FD(RAM)p FE(\))h(in)f(y)m(our)g(computer.)40
+b(Man)m(y)29 b(users)e(of)h FD(NCO)g FE(w)m(ork)g(with)g(\014les)g
 (larger)h(than)e(100)32 b(MB)q(.)150 3538 y(Files)j(this)f(large)g(not)
 h(only)e(push)g(the)h(curren)m(t)f(edge)i(of)f(storage)h(tec)m(hnology)
 -8 b(,)38 b(they)33 b(presen)m(t)h(sp)s(ecial)150 3647
 y(problems)i(for)g(programs)h(whic)m(h)f(attempt)i(to)g(access)g(the)e
-(en)m(tire)i(\014le)f(at)g(once,)j(suc)m(h)c(as)h Fy(nces)f
-FD(and)150 3757 y Fy(ncecat)p FD(.)h(If)23 b(y)m(ou)g(w)m(ork)h(with)f
+(en)m(tire)i(\014le)f(at)g(once,)j(suc)m(h)c(as)h Fz(nces)f
+FE(and)150 3757 y Fz(ncecat)p FE(.)h(If)23 b(y)m(ou)g(w)m(ork)h(with)f
 (a)h(300)31 b(MB)24 b(\014les)g(on)f(a)h(mac)m(hine)g(with)f(only)g(32)
 32 b(MB)24 b(of)f(memory)h(then)f(y)m(ou)150 3866 y(will)29
 b(need)f(large)i(amoun)m(ts)f(of)f(sw)m(ap)h(space)g(\(virtual)g
-(memory)g(on)f(disk\))h(and)f FC(NCO)g FD(will)h(w)m(ork)f(slo)m(wly)-8
+(memory)g(on)f(disk\))h(and)f FD(NCO)g FE(will)h(w)m(ork)f(slo)m(wly)-8
 b(,)150 3976 y(or)32 b(ev)m(en)g(fail.)46 b(There)31
 b(is)h(no)f(easy)h(solution)h(for)e(this.)45 b(The)31
 b(b)s(est)g(strategy)j(is)d(to)i(w)m(ork)f(on)f(a)h(mac)m(hine)150
@@ -13685,41 +13911,41 @@ b(b)s(est)g(strategy)j(is)d(to)i(w)m(ork)f(on)f(a)h(mac)m(hine)150
 (v)m(e)150 4195 y(b)s(egun)d(to)j(pro)s(duce)d(or)i(analyze)h(\014les)f
 (exceeding)g(2)31 b(GB)38 b(in)e(size.)60 b(These)37
 b(users)e(should)h(familiarize)150 4305 y(themselv)m(es)d(with)f
-FC(NCO)p FD('s)h(Large)g(File)g(Supp)s(ort)d(\()p FC(LFS)p
-FD(\))j(capabilities)h(\(see)g(Section)f(3.10)h([Large)f(File)150
+FD(NCO)p FE('s)h(Large)g(File)g(Supp)s(ort)d(\()p FD(LFS)p
+FE(\))j(capabilities)h(\(see)g(Section)f(3.10)h([Large)f(File)150
 4414 y(Supp)s(ort],)40 b(page)g(40\).)69 b(The)39 b(next)g(section)i
 (will)e(increase)h(y)m(our)g(familiarit)m(y)h(with)e
-FC(NCO)p FD('s)g(memory)150 4524 y(requiremen)m(ts.)70
+FD(NCO)p FE('s)g(memory)150 4524 y(requiremen)m(ts.)70
 b(With)41 b(this)f(kno)m(wledge)h(y)m(ou)g(ma)m(y)f(re-design)h(y)m
 (our)f(data)h(reduction)f(approac)m(h)g(to)150 4633 y(divide)30
 b(the)h(problem)f(in)m(to)h(pieces)g(solv)-5 b(able)31
 b(in)g(memory-limited)g(situations.)275 4822 y(If)37
 b(y)m(our)h(lo)s(cal)h(mac)m(hine)g(has)f(problems)f(w)m(orking)h(with)
-g(large)h(\014les,)h(try)e(running)e FC(NCO)i FD(from)g(a)150
+g(large)h(\014les,)h(try)e(running)e FD(NCO)i FE(from)g(a)150
 4932 y(more)32 b(p)s(o)m(w)m(erful)f(mac)m(hine,)i(suc)m(h)e(as)h(a)g
 (net)m(w)m(ork)h(serv)m(er.)44 b(If)32 b(y)m(ou)g(get)g(a)g
 (memory-related)h(core)g(dump)150 5042 y(\(e.g.,)h(`)p
-Fy(Error)29 b(exit)h(\(core)e(dumped\))p FD('\))j(on)h(a)g
-FC(GNU)p FD(/Lin)m(ux)g(system,)h(or)f(the)g(op)s(eration)g(ends)f(b)s
+Fz(Error)29 b(exit)h(\(core)e(dumped\))p FE('\))j(on)h(a)g
+FD(GNU)p FE(/Lin)m(ux)g(system,)h(or)f(the)g(op)s(eration)g(ends)f(b)s
 (efore)150 5151 y(the)g(en)m(tire)g(output)f(\014le)g(is)h(written,)f
 (try)h(increasing)g(the)f(pro)s(cess-a)m(v)-5 b(ailable)33
-b(memory)d(with)g Fy(ulimit)p FD(:)390 5340 y Fy(ulimit)46
+b(memory)d(with)g Fz(ulimit)p FE(:)390 5340 y Fz(ulimit)46
 b(-f)h(unlimited)p eop end
 %%Page: 22 28
-TeXDict begin 22 27 bop 150 -116 a FD(22)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(This)21 b(ma)m(y)h(solv)m(e)h
+TeXDict begin 22 27 bop 150 -116 a FE(22)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(This)21 b(ma)m(y)h(solv)m(e)h
 (constrain)m(ts)g(on)f(clusters)g(where)f(su\016cien)m(t)h(hardw)m(are)
 g(resources)g(exist)g(y)m(et)h(where)150 408 y(system)29
 b(administrators)g(felt)g(it)h(wise)f(to)g(prev)m(en)m(t)g(an)m(y)h
 (individual)e(user)g(from)g(consuming)g(to)s(o)i(m)m(uc)m(h)150
 518 y(of)41 b(resource.)74 b(Certain)41 b(mac)m(hine)h(arc)m
-(hitectures,)j(e.g.,)h(Cra)m(y)41 b FC(UNICOS)p FD(,)j(ha)m(v)m(e)f(sp)
+(hitectures,)j(e.g.,)h(Cra)m(y)41 b FD(UNICOS)p FE(,)j(ha)m(v)m(e)f(sp)
 s(ecial)e(commands)150 628 y(whic)m(h)36 b(allo)m(w)i(one)f(to)g
 (increase)g(the)g(amoun)m(t)g(of)g(in)m(teractiv)m(e)i(memory)-8
 b(.)59 b(On)36 b(Cra)m(y)h(systems,)h(try)e(to)150 737
 y(increase)31 b(the)g(a)m(v)-5 b(ailable)32 b(memory)f(with)f(the)g
-Fy(ilimit)f FD(command.)275 902 y(The)34 b(sp)s(eed)f(of)i(the)g
-FC(NCO)f FD(op)s(erators)h(also)g(dep)s(ends)e(on)h(\014le)h(size.)54
+Fz(ilimit)f FE(command.)275 902 y(The)34 b(sp)s(eed)f(of)i(the)g
+FD(NCO)f FE(op)s(erators)h(also)g(dep)s(ends)e(on)h(\014le)h(size.)54
 b(When)34 b(pro)s(cessing)g(large)i(\014les)150 1012
 y(the)29 b(op)s(erators)h(ma)m(y)g(app)s(ear)e(to)i(hang,)g(or)f(do)h
 (nothing,)f(for)g(large)i(p)s(erio)s(ds)c(of)j(time.)41
@@ -13727,130 +13953,130 @@ b(In)29 b(order)f(to)i(see)150 1121 y(what)35 b(the)h(op)s(erator)g(is)
 f(actually)i(doing,)g(it)f(is)f(useful)g(to)h(activ)-5
 b(ate)38 b(a)e(more)g(v)m(erb)s(ose)f(output)g(mo)s(de.)150
 1231 y(This)i(is)h(accomplished)g(b)m(y)g(supplying)e(a)i(n)m(um)m(b)s
-(er)e(greater)j(than)30 b(0)38 b(to)h(the)f(`)p Fy(-D)30
-b Fn(debug-level)p FD(')35 b(\(or)150 1341 y(`)p Fy(--debug-level)p
-FD(',)29 b(or)j(`)p Fy(--dbg_lvl)p FD('\))e(switc)m(h.)45
-b(When)31 b(the)h Fz(debug-lev)m(el)37 b FD(is)31 b(nonzero,)i(the)f
+(er)e(greater)j(than)30 b(0)38 b(to)h(the)f(`)p Fz(-D)30
+b Fo(debug-level)p FE(')35 b(\(or)150 1341 y(`)p Fz(--debug-level)p
+FE(',)29 b(or)j(`)p Fz(--dbg_lvl)p FE('\))e(switc)m(h.)45
+b(When)31 b(the)h FA(debug-lev)m(el)37 b FE(is)31 b(nonzero,)i(the)f
 (op)s(erators)150 1450 y(rep)s(ort)42 b(their)h(curren)m(t)f(status)h
-(to)h(the)f(terminal)g(through)f(the)h Fz(stderr)48 b
-FD(facilit)m(y)-8 b(.)81 b(Using)43 b(`)p Fy(-D)p FD(')f(do)s(es)150
+(to)h(the)f(terminal)g(through)f(the)h FA(stderr)48 b
+FE(facilit)m(y)-8 b(.)81 b(Using)43 b(`)p Fz(-D)p FE(')f(do)s(es)150
 1560 y(not)37 b(slo)m(w)f(the)h(op)s(erators)f(do)m(wn.)58
-b(Cho)s(ose)36 b(a)h Fz(debug-lev)m(el)k FD(b)s(et)m(w)m(een)31
+b(Cho)s(ose)36 b(a)h FA(debug-lev)m(el)k FE(b)s(et)m(w)m(een)31
 b(1)37 b(and)30 b(3)36 b(for)g(most)h(situations,)150
-1669 y(e.g.,)49 b Fy(nces)29 b(-D)h(2)g(85.nc)f(86.nc)g(8586.nc)p
-FD(.)80 b(A)31 b(full)44 b(description)g(of)g(ho)m(w)g(to)h(estimate)h
+1669 y(e.g.,)49 b Fz(nces)29 b(-D)h(2)g(85.nc)f(86.nc)g(8586.nc)p
+FE(.)80 b(A)31 b(full)44 b(description)g(of)g(ho)m(w)g(to)h(estimate)h
 (the)f(actual)150 1779 y(amoun)m(t)33 b(of)g(memory)f(the)h(m)m
-(ulti-\014le)h FC(NCO)e FD(op)s(erators)h(consume)f(is)h(giv)m(en)h(in)
+(ulti-\014le)h FD(NCO)e FE(op)s(erators)h(consume)f(is)h(giv)m(en)h(in)
 e(Section)h(2.9)h([Memory)150 1889 y(Requiremen)m(ts],)d(page)g(22.)150
-2138 y FB(2.9)68 b(Memory)45 b(Requiremen)l(ts)150 2297
-y FD(Man)m(y)38 b(p)s(eople)g(use)g FC(NCO)f FD(on)h(gargan)m(tuan)g
+2138 y FC(2.9)68 b(Memory)45 b(Requiremen)l(ts)150 2297
+y FE(Man)m(y)38 b(p)s(eople)g(use)g FD(NCO)f FE(on)h(gargan)m(tuan)g
 (\014les)g(whic)m(h)g(dw)m(arf)f(the)h(memory)f(a)m(v)-5
-b(ailable)40 b(\(free)f FC(RAM)150 2407 y FD(plus)c(sw)m(ap)g(space\))h
+b(ailable)40 b(\(free)f FD(RAM)150 2407 y FE(plus)c(sw)m(ap)g(space\))h
 (ev)m(en)h(on)e(to)s(da)m(y's)h(p)s(o)m(w)m(erful)f(mac)m(hines.)57
-b(These)36 b(users)e(w)m(an)m(t)j FC(NCO)e FD(to)h(consume)150
+b(These)36 b(users)e(w)m(an)m(t)j FD(NCO)e FE(to)h(consume)150
 2516 y(the)26 b(least)g(memory)f(p)s(ossible)g(so)h(that)g(their)f
 (scripts)h(do)f(not)h(ha)m(v)m(e)g(to)g(tediously)g(cut)g(\014les)f(in)
 m(to)h(smaller)150 2626 y(pieces)i(that)h(\014t)e(in)m(to)i(memory)-8
 b(.)40 b(W)-8 b(e)29 b(commend)e(these)i(greedy)f(users)e(for)i
-(pushing)e FC(NCO)h FD(to)i(its)f(limits!)275 2791 y(This)21
-b(section)i(describ)s(es)f(the)g(memory)g FC(NCO)g FD(requires)g
+(pushing)e FD(NCO)h FE(to)i(its)f(limits!)275 2791 y(This)21
+b(section)i(describ)s(es)f(the)g(memory)g FD(NCO)g FE(requires)g
 (during)f(op)s(eration.)38 b(The)22 b(required)f(memory)150
 2900 y(is)40 b(based)g(on)g(the)h(underlying)e(algorithms.)71
 b(The)40 b(description)h(b)s(elo)m(w)f(is)g(the)h(memory)f(usage)h(p)s
 (er)150 3010 y(thread.)68 b(Users)40 b(with)f(shared)g(memory)h(mac)m
-(hines)g(ma)m(y)g(use)g(the)f(threaded)h FC(NCO)f FD(op)s(erators)h
+(hines)g(ma)m(y)g(use)g(the)f(threaded)h FD(NCO)f FE(op)s(erators)h
 (\(see)150 3120 y(Section)f(3.3)f([Op)s(enMP)f(Threading],)i(page)g
 (25\).)64 b(The)37 b(p)s(eak)g(and)g(sustained)h(memory)f(usage)i(will)
 150 3229 y(scale)44 b(accordingly)-8 b(,)48 b(i.e.,)f(b)m(y)c(the)g(n)m
 (um)m(b)s(er)e(of)i(threads.)78 b(Memory)43 b(consumption)f(patterns)h
 (of)g(all)150 3339 y(op)s(erators)31 b(are)f(similar,)h(with)f(the)h
-(exception)g(of)g Fy(ncap2)p FD(.)150 3549 y Fu(2.9.1)63
+(exception)g(of)g Fz(ncap2)p FE(.)150 3549 y Fv(2.9.1)63
 b(Single)41 b(and)g(Multi-\014le)h(Op)s(erators)150 3696
-y FD(The)d(m)m(ulti-\014le)i(op)s(erators)e(curren)m(tly)h(comprise)g
-(the)g(record)f(op)s(erators,)k Fy(ncra)38 b FD(and)h
-Fy(ncrcat)p FD(,)i(and)150 3806 y(the)27 b(ensem)m(ble)h(op)s(erators,)
-g Fy(nces)e FD(and)g Fy(ncecat)p FD(.)38 b(The)27 b(record)f(op)s
-(erators)i(require)e Fo(much)k(less)35 b FD(memory)150
+y FE(The)d(m)m(ulti-\014le)i(op)s(erators)e(curren)m(tly)h(comprise)g
+(the)g(record)f(op)s(erators,)k Fz(ncra)38 b FE(and)h
+Fz(ncrcat)p FE(,)i(and)150 3806 y(the)27 b(ensem)m(ble)h(op)s(erators,)
+g Fz(nces)e FE(and)g Fz(ncecat)p FE(.)38 b(The)27 b(record)f(op)s
+(erators)i(require)e Fp(much)k(less)35 b FE(memory)150
 3915 y(than)h(the)h(ensem)m(ble)g(op)s(erators.)59 b(This)36
 b(is)h(b)s(ecause)f(the)h(record)f(op)s(erators)h(op)s(erate)g(on)f
 (one)h(single)150 4025 y(record)23 b(\(i.e.,)k(time-slice\))f(at)e(a)g
 (time,)i(whereas)e(the)f(ensem)m(ble)h(op)s(erators)g(retriev)m(e)h
 (the)f(en)m(tire)g(v)-5 b(ariable)150 4134 y(in)m(to)34
-b(memory)-8 b(.)51 b(Let)34 b Fv(M)10 b(S)38 b FD(b)s(e)33
+b(memory)-8 b(.)51 b(Let)34 b Fw(M)10 b(S)38 b FE(b)s(e)33
 b(the)h(p)s(eak)f(sustained)g(memory)g(demand)g(of)h(an)f(op)s(erator,)
-i Fv(F)13 b(T)46 b FD(b)s(e)33 b(the)150 4244 y(memory)42
+i Fw(F)13 b(T)46 b FE(b)s(e)33 b(the)150 4244 y(memory)42
 b(required)g(to)h(store)g(the)f(en)m(tire)h(con)m(ten)m(ts)h(of)f(all)g
 (the)g(v)-5 b(ariables)43 b(to)g(b)s(e)e(pro)s(cessed)h(in)g(an)150
-4354 y(input)c(\014le,)j Fv(F)13 b(R)40 b FD(b)s(e)e(the)h(memory)g
+4354 y(input)c(\014le,)j Fw(F)13 b(R)40 b FE(b)s(e)e(the)h(memory)g
 (required)f(to)h(store)h(the)f(en)m(tire)h(con)m(ten)m(ts)g(of)f(a)h
 (single)f(record)g(of)150 4463 y(eac)m(h)32 b(of)f(the)f(v)-5
 b(ariables)32 b(to)f(b)s(e)f(pro)s(cessed)g(in)g(an)h(input)e(\014le,)i
-Fv(V)21 b(R)31 b FD(b)s(e)f(the)h(memory)f(required)g(to)h(store)150
+Fw(V)21 b(R)31 b FE(b)s(e)f(the)h(memory)f(required)g(to)h(store)150
 4573 y(a)37 b(single)h(record)e(of)h(the)g(largest)i(record)d(v)-5
 b(ariable)38 b(to)f(b)s(e)g(pro)s(cessed)f(in)g(an)h(input)f(\014le,)j
-Fv(V)20 b(T)50 b FD(b)s(e)36 b(the)150 4682 y(memory)f(required)f(to)i
+Fw(V)20 b(T)50 b FE(b)s(e)36 b(the)150 4682 y(memory)f(required)f(to)i
 (store)g(the)f(largest)i(v)-5 b(ariable)35 b(to)h(b)s(e)f(pro)s(cessed)
-f(in)h(an)g(input)f(\014le,)j Fv(V)20 b(I)42 b FD(b)s(e)35
+f(in)h(an)g(input)f(\014le,)j Fw(V)20 b(I)42 b FE(b)s(e)35
 b(the)150 4792 y(memory)i(required)f(to)i(store)g(the)f(largest)h(v)-5
 b(ariable)38 b(whic)m(h)f(is)g(not)g(pro)s(cessed,)i(but)d(is)h(copied)
 g(from)150 4902 y(the)31 b(initial)g(\014le)g(to)g(the)g(output)f
-(\014le.)41 b(All)31 b(op)s(erators)g(require)f Fv(M)10
-b(I)33 b FD(=)25 b Fv(V)20 b(I)37 b FD(during)30 b(the)g(initial)i(cop)
+(\014le.)41 b(All)31 b(op)s(erators)g(require)f Fw(M)10
+b(I)33 b FE(=)25 b Fw(V)20 b(I)37 b FE(during)30 b(the)g(initial)i(cop)
 m(ying)150 5011 y(of)k(v)-5 b(ariables)36 b(from)f(the)h(\014rst)f
 (input)g(\014le)g(to)i(the)f(output)f(\014le.)57 b(This)34
-b(is)i(the)g Fo(initial)45 b FD(\(and)36 b(transien)m(t\))150
-5121 y(memory)25 b(demand.)37 b(The)25 b Fo(sustaine)-5
-b(d)35 b FD(memory)24 b(demand)g(is)h(that)g(memory)g(required)e(b)m(y)
+b(is)i(the)g Fp(initial)45 b FE(\(and)36 b(transien)m(t\))150
+5121 y(memory)25 b(demand.)37 b(The)25 b Fp(sustaine)-5
+b(d)35 b FE(memory)24 b(demand)g(is)h(that)g(memory)g(required)e(b)m(y)
 i(the)g(op)s(erators)150 5230 y(during)32 b(the)h(pro)s(cessing)f
 (\(i.e.,)j(a)m(v)m(eraging,)i(concatenation\))e(phase)e(whic)m(h)f
 (lasts)i(un)m(til)f(all)h(the)f(input)150 5340 y(\014les)d(ha)m(v)m(e)h
 (b)s(een)e(pro)s(cessed.)41 b(The)29 b(op)s(erators)h(ha)m(v)m(e)h(the)
-g(follo)m(wing)g(memory)f(requiremen)m(ts:)41 b Fy(ncrcat)p
+g(follo)m(wing)g(memory)f(requiremen)m(ts:)41 b Fz(ncrcat)p
 eop end
 %%Page: 23 29
-TeXDict begin 23 28 bop 150 -116 a FD(Chapter)30 b(2:)41
+TeXDict begin 23 28 bop 150 -116 a FE(Chapter)30 b(2:)41
 b(Op)s(erator)30 b(Strategies)2264 b(23)150 299 y(requires)38
-b Fv(M)10 b(S)43 b(<)p FD(=)38 b Fv(V)20 b(R)q FD(.)64
-b Fy(ncecat)37 b FD(requires)g Fv(M)10 b(S)44 b(<)p FD(=)38
-b Fv(V)20 b(T)13 b FD(.)64 b Fy(ncra)37 b FD(requires)g
-Fv(M)10 b(S)44 b FD(=)38 b(2)p Fv(F)13 b(R)27 b FD(+)e
-Fv(V)20 b(R)q FD(.)150 408 y Fy(nces)35 b FD(requires)h
-Fv(M)10 b(S)40 b FD(=)35 b(2)p Fv(F)13 b(T)38 b FD(+)24
-b Fv(V)c(T)13 b FD(.)58 b Fy(ncbo)36 b FD(requires)f
-Fv(M)10 b(S)41 b(<)p FD(=)34 b(3)p Fv(V)21 b(T)49 b FD(\(b)s(oth)36
+b Fw(M)10 b(S)43 b(<)p FE(=)38 b Fw(V)20 b(R)q FE(.)64
+b Fz(ncecat)37 b FE(requires)g Fw(M)10 b(S)44 b(<)p FE(=)38
+b Fw(V)20 b(T)13 b FE(.)64 b Fz(ncra)37 b FE(requires)g
+Fw(M)10 b(S)44 b FE(=)38 b(2)p Fw(F)13 b(R)27 b FE(+)e
+Fw(V)20 b(R)q FE(.)150 408 y Fz(nces)35 b FE(requires)h
+Fw(M)10 b(S)40 b FE(=)35 b(2)p Fw(F)13 b(T)38 b FE(+)24
+b Fw(V)c(T)13 b FE(.)58 b Fz(ncbo)36 b FE(requires)f
+Fw(M)10 b(S)41 b(<)p FE(=)34 b(3)p Fw(V)21 b(T)49 b FE(\(b)s(oth)36
 b(input)g(v)-5 b(ariables)37 b(and)150 518 y(the)30 b(output)f(v)-5
-b(ariable\).)41 b Fy(ncflint)28 b FD(requires)h Fv(M)10
-b(S)30 b(<)p FD(=)25 b(3)p Fv(V)c(T)42 b FD(\(b)s(oth)29
+b(ariable\).)41 b Fz(ncflint)28 b FE(requires)h Fw(M)10
+b(S)30 b(<)p FE(=)25 b(3)p Fw(V)c(T)42 b FE(\(b)s(oth)29
 b(input)g(v)-5 b(ariables)30 b(and)f(the)g(output)150
-628 y(v)-5 b(ariable\).)86 b Fy(ncpdq)43 b FD(requires)h
-Fv(M)10 b(S)55 b(<)p FD(=)49 b(2)p Fv(V)21 b(T)57 b FD(\(one)46
+628 y(v)-5 b(ariable\).)86 b Fz(ncpdq)43 b FE(requires)h
+Fw(M)10 b(S)55 b(<)p FE(=)49 b(2)p Fw(V)21 b(T)57 b FE(\(one)46
 b(input)e(v)-5 b(ariable)46 b(and)e(the)h(output)g(v)-5
-b(ariable\).)150 737 y Fy(ncwa)31 b FD(requires)g Fv(M)10
-b(S)32 b(<)p FD(=)27 b(8)p Fv(V)21 b(T)44 b FD(\(see)33
+b(ariable\).)150 737 y Fz(ncwa)31 b FE(requires)g Fw(M)10
+b(S)32 b(<)p FE(=)27 b(8)p Fw(V)21 b(T)44 b FE(\(see)33
 b(b)s(elo)m(w\).)46 b(Note)33 b(that)f(only)g(v)-5 b(ariables)32
 b(that)g(are)h(pro)s(cessed,)e(e.g.,)150 847 y(a)m(v)m(eraged,)d
 (concatenated,)g(or)c(di\013erenced,)i(con)m(tribute)f(to)h
-Fv(M)10 b(S)5 b FD(.)38 b(V)-8 b(ariables)26 b(whic)m(h)e(do)h(not)f
+Fw(M)10 b(S)5 b FE(.)38 b(V)-8 b(ariables)26 b(whic)m(h)e(do)h(not)f
 (app)s(ear)g(in)150 956 y(the)32 b(output)f(\014le)g(\(see)i(Section)f
 (3.11)h([Subsetting)e(Files],)j(page)e(40\))g(are)g(nev)m(er)g(read)f
 (and)g(con)m(tribute)150 1066 y(nothing)f(to)h(the)g(memory)f
 (requiremen)m(ts.)275 1244 y(F)-8 b(urther)39 b(note)h(that)g(some)g
 (op)s(erators)f(p)s(erform)f(in)m(ternal)j(t)m(yp)s(e-promotion)f(on)f
-(some)h(v)-5 b(ariables)150 1354 y(prior)32 b(to)i(arithmetic)g(\(see)g
-(Section)g(3.33)g([T)m(yp)s(e)f(Con)m(v)m(ersion],)h(page)g(89\).)50
-b(F)-8 b(or)33 b(example,)i Fy(ncra)d FD(and)150 1463
-y Fy(nces)43 b FD(b)s(oth)f(promote)j(in)m(teger)g(t)m(yp)s(es)e(to)i
-(double-precision)f(\015oating)g(p)s(oin)m(t)g(prior)f(to)h
-(arithmetic,)150 1573 y(then)25 b(p)s(erform)g(the)g(arithmetic,)j
+(some)h(v)-5 b(ariables)150 1354 y(prior)42 b(to)g(arithmetic)i(\(see)f
+(Section)g(3.34)h([T)m(yp)s(e)d(Con)m(v)m(ersion],)47
+b(page)42 b(100\).)78 b(F)-8 b(or)43 b(example,)j Fz(ncra)150
+1463 y FE(and)27 b Fz(nces)g FE(b)s(oth)g(promote)h(in)m(teger)i(t)m
+(yp)s(es)d(to)i(double-precision)f(\015oating)h(p)s(oin)m(t)f(prior)f
+(to)h(arithmetic,)150 1573 y(then)d(p)s(erform)g(the)g(arithmetic,)j
 (then)e(demote)g(bac)m(k)h(to)f(the)g(original)g(in)m(teger)h(t)m(yp)s
 (e)f(after)g(arithmetic.)150 1682 y(This)h(preserv)m(es)h(the)g
 (on-disk)g(storage)h(t)m(yp)s(e)f(while)g(obtaining)g(the)g(accuracy)h
 (adv)-5 b(an)m(tages)30 b(of)e(\015oating)150 1792 y(p)s(oin)m(t)37
 b(arithmetic.)60 b(Since)37 b(v)m(ersion)g(4.3.6)h(\(released)g(in)e
-(Septem)m(b)s(er,)i(2013\),)i FC(NCO)d FD(also)g(b)m(y)g(default)150
+(Septem)m(b)s(er,)i(2013\),)i FD(NCO)d FE(also)g(b)m(y)g(default)150
 1902 y(con)m(v)m(erts)k(single-precision)g(\015oating)g(p)s(oin)m(t)f
 (to)g(double-precision)g(prior)f(to)i(arithmetic,)i(whic)m(h)d(in-)150
-2011 y(curs)c(the)h(same)h FC(RAM)f FD(p)s(enalt)m(y)-8
+2011 y(curs)c(the)h(same)h FD(RAM)f FE(p)s(enalt)m(y)-8
 b(.)61 b(Hence,)40 b(the)d(sustained)f(memory)h(required)f(for)h(in)m
 (teger)h(v)-5 b(ariables)150 2121 y(and)43 b(single-precision)j
 (\015oats)e(are)g(t)m(w)m(o)i(or)e(four-times)g(their)g(on-disk,)j
@@ -13858,20 +14084,20 @@ b(.)61 b(Hence,)40 b(the)d(sustained)f(memory)h(required)f(for)h(in)m
 g(the)f(rules)g(for)g(automatic)j(in)m(ternal)e(promotion.)53
 b(Put)33 b(another)i(w)m(a)m(y)-8 b(,)37 b(disabling)150
 2340 y(auto-promotion)f(of)f(single-precision)h(v)-5
-b(ariables)35 b(\(with)g(`)p Fy(--flt)p FD('\))f(considerably)h
-(reduces)g(the)g FC(RAM)150 2450 y FD(fo)s(otprin)m(t)c(of)f
-(arithmetic)i(op)s(erators.)275 2628 y(The)78 b(`)p Fy(--open_ram)p
-FD(')f(switc)m(h)j(\(and)f(switc)m(hes)h(that)g(in)m(v)m(ok)m(e)h(it)f
-(lik)m(e)g(`)p Fy(--ram_all)p FD(')e(and)150 2737 y(`)p
-Fy(--diskless_all)p FD('\))23 b(incurs)i(a)h FC(RAM)g
-FD(p)s(enalt)m(y)-8 b(.)40 b(These)26 b(switc)m(hes)g(cause)h(eac)m(h)g
+b(ariables)35 b(\(with)g(`)p Fz(--flt)p FE('\))f(considerably)h
+(reduces)g(the)g FD(RAM)150 2450 y FE(fo)s(otprin)m(t)c(of)f
+(arithmetic)i(op)s(erators.)275 2628 y(The)78 b(`)p Fz(--open_ram)p
+FE(')f(switc)m(h)j(\(and)f(switc)m(hes)h(that)g(in)m(v)m(ok)m(e)h(it)f
+(lik)m(e)g(`)p Fz(--ram_all)p FE(')e(and)150 2737 y(`)p
+Fz(--diskless_all)p FE('\))23 b(incurs)i(a)h FD(RAM)g
+FE(p)s(enalt)m(y)-8 b(.)40 b(These)26 b(switc)m(hes)g(cause)h(eac)m(h)g
 (input)e(\014le)h(to)g(b)s(e)f(copied)150 2847 y(to)35
-b FC(RAM)g FD(up)s(on)e(op)s(ening.)52 b(Hence)36 b(an)m(y)e(op)s
+b FD(RAM)g FE(up)s(on)e(op)s(ening.)52 b(Hence)36 b(an)m(y)e(op)s
 (erator)h(in)m(v)m(oking)h(these)f(switc)m(hes)g(utilizes)h(an)e
-(additional)150 2956 y Fv(F)13 b(T)43 b FD(of)31 b FC(RAM)f
-FD(\(i.e.,)j Fv(M)10 b(S)5 b FD(+)25 b(=)g Fv(F)13 b(T)g
-FD(\).)40 b(See)31 b(Section)g(3.30)h([RAM)f(disks],)f(page)h(81)h(for)
-e(further)f(details.)275 3134 y Fy(ncwa)22 b FD(consumes)h(b)s(et)m(w)m
+(additional)150 2956 y Fw(F)13 b(T)43 b FE(of)31 b FD(RAM)f
+FE(\(i.e.,)j Fw(M)10 b(S)5 b FE(+)25 b(=)g Fw(F)13 b(T)g
+FE(\).)40 b(See)31 b(Section)g(3.31)h([RAM)f(disks],)f(page)h(91)h(for)
+e(further)f(details.)275 3134 y Fz(ncwa)22 b FE(consumes)h(b)s(et)m(w)m
 (een)h(t)m(w)m(o)g(and)f(sev)m(en)h(times)g(the)f(memory)g(of)h(a)f(v)
 -5 b(ariable)25 b(in)e(order)f(to)i(pro)s(cess)150 3244
 y(it.)58 b(P)m(eak)37 b(consumption)e(o)s(ccurs)h(when)f(storing)h(sim)
@@ -13884,39 +14110,39 @@ b(mask,)j(one)e(conformed/w)m(orking)h(mask,)h(and)d(one)h(output)g(v)
 3573 y(w)m(eigh)m(ting)34 b(and)e(masking)h(features)g(con)m(tribute)h
 (up)d(to)j(three-sev)m(en)m(ths)g(and)e(t)m(w)m(o-sev)m(en)m(ths)j(of)d
 (these)150 3682 y(requiremen)m(ts)j(apiece.)58 b(If)35
-b(w)m(eigh)m(ts)h(and)f(masks)g(are)h Fo(not)45 b FD(sp)s(eci\014ed)35
-b(\(i.e.,)j(no)d(`)p Fy(-w)p FD(')h(or)f(`)p Fy(-a)p
-FD(')g(options\))150 3792 y(then)30 b Fy(ncwa)f FD(requiremen)m(ts)h
-(drop)f(to)h Fv(M)10 b(S)31 b(<)p FD(=)24 b(3)p Fv(V)d(T)43
-b FD(\(one)30 b(input)f(v)-5 b(ariable,)32 b(one)e(tally)h(arra)m(y)-8
+b(w)m(eigh)m(ts)h(and)f(masks)g(are)h Fp(not)45 b FE(sp)s(eci\014ed)35
+b(\(i.e.,)j(no)d(`)p Fz(-w)p FE(')h(or)f(`)p Fz(-a)p
+FE(')g(options\))150 3792 y(then)30 b Fz(ncwa)f FE(requiremen)m(ts)h
+(drop)f(to)h Fw(M)10 b(S)31 b(<)p FE(=)24 b(3)p Fw(V)d(T)43
+b FE(\(one)30 b(input)f(v)-5 b(ariable,)32 b(one)e(tally)h(arra)m(y)-8
 b(,)31 b(and)f(the)150 3902 y(output)g(v)-5 b(ariable\).)275
 4080 y(The)31 b(ab)s(o)m(v)m(e)h(memory)g(requiremen)m(ts)f(m)m(ust)h
 (b)s(e)f(m)m(ultiplied)h(b)m(y)f(the)h(n)m(um)m(b)s(er)e(of)i(threads)f
-Fz(thr)p 3576 4080 28 4 v 39 w(n)m(br)150 4189 y FD(\(see)g(Section)g
+FA(thr)p 3576 4080 28 4 v 39 w(n)m(br)150 4189 y FE(\(see)g(Section)g
 (3.3)h([Op)s(enMP)d(Threading],)h(page)h(25\).)42 b(If)30
 b(this)g(causes)h(problems)f(then)g(reduce)g(\(with)150
-4299 y(`)p Fy(-t)g Fn(thr_nbr)p FD('\))f(the)i(n)m(um)m(b)s(er)e(of)h
-(threads.)150 4535 y Fu(2.9.2)63 b(Memory)41 b(for)h
-Fl(ncap2)150 4682 y Fy(ncap2)35 b FD(has)i(unique)f(memory)h
+4299 y(`)p Fz(-t)g Fo(thr_nbr)p FE('\))f(the)i(n)m(um)m(b)s(er)e(of)h
+(threads.)150 4535 y Fv(2.9.2)63 b(Memory)41 b(for)h
+Fm(ncap2)150 4682 y Fz(ncap2)35 b FE(has)i(unique)f(memory)h
 (requiremen)m(ts)g(due)f(its)h(abilit)m(y)i(to)e(pro)s(cess)g
 (arbitrarily)g(long)g(scripts)150 4792 y(of)c(an)m(y)h(complexit)m(y)-8
-b(.)51 b(All)34 b(scripts)f(acceptable)i(to)f Fy(ncap2)e
-FD(are)h(ultimately)i(pro)s(cessed)e(as)g(a)h(sequence)150
+b(.)51 b(All)34 b(scripts)f(acceptable)i(to)f Fz(ncap2)e
+FE(are)h(ultimately)i(pro)s(cessed)e(as)g(a)h(sequence)150
 4902 y(of)j(binary)f(or)g(unary)g(op)s(erations.)60 b
-Fy(ncap2)35 b FD(requires)h Fv(M)10 b(S)41 b(<)p FD(=)35
-b(2)p Fv(V)21 b(T)49 b FD(under)35 b(most)i(conditions.)60
+Fz(ncap2)35 b FE(requires)h Fw(M)10 b(S)41 b(<)p FE(=)35
+b(2)p Fw(V)21 b(T)49 b FE(under)35 b(most)i(conditions.)60
 b(An)150 5011 y(exception)30 b(to)g(this)e(is)h(when)f(left)i(hand)d
 (casting)k(\(see)e(Section)h(4.1.4)h([Left)e(hand)f(casting],)j(page)e
-(110\))150 5121 y(is)k(used)g(to)h(stretc)m(h)g(the)g(size)g(of)g
+(122\))150 5121 y(is)k(used)g(to)h(stretc)m(h)g(the)g(size)g(of)g
 (deriv)m(ed)f(v)-5 b(ariables)34 b(b)s(ey)m(ond)f(the)g(size)h(of)g(an)
-m(y)g(input)e(v)-5 b(ariables.)50 b(Let)150 5230 y Fv(V)20
-b(C)40 b FD(b)s(e)34 b(the)g(memory)f(required)g(to)i(store)f(the)g
+m(y)g(input)e(v)-5 b(ariables.)50 b(Let)150 5230 y Fw(V)20
+b(C)40 b FE(b)s(e)34 b(the)g(memory)f(required)g(to)i(store)f(the)g
 (largest)h(v)-5 b(ariable)35 b(de\014ned)e(b)m(y)g(left)i(hand)d
-(casting.)53 b(In)150 5340 y(this)30 b(case,)i Fv(M)10
-b(S)30 b(<)p FD(=)25 b(2)p Fv(V)c(C)7 b FD(.)p eop end
+(casting.)53 b(In)150 5340 y(this)30 b(case,)i Fw(M)10
+b(S)30 b(<)p FE(=)25 b(2)p Fw(V)c(C)7 b FE(.)p eop end
 %%Page: 24 30
-TeXDict begin 24 29 bop 150 -116 a FD(24)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y Fy(ncap2)42 b FD(scripts)h(are)h
+TeXDict begin 24 29 bop 150 -116 a FE(24)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y Fz(ncap2)42 b FE(scripts)h(are)h
 (complete)g(dynamic)g(and)f(ma)m(y)h(b)s(e)e(of)i(arbitrary)f(length.)
 80 b(A)44 b(script)f(that)150 408 y(con)m(tains)28 b(man)m(y)f
 (thousands)f(of)h(op)s(erations,)h(ma)m(y)g(unco)m(v)m(er)f(a)g(slo)m
@@ -13928,24 +14154,24 @@ b(Leaks)22 b(cause)f(p)s(eak)h(memory)f(usage)h(to)g(increase)g
 (monotonically)150 737 y(with)27 b(time)i(regardless)f(of)f(script)h
 (complexit)m(y)-8 b(.)42 b(Slo)m(w)28 b(leaks)g(are)g(v)m(ery)g
 (di\016cult)g(to)g(\014nd.)38 b(Sometimes)29 b(a)150
-847 y Fy(malloc\(\))d FD(\(or)j Fy(new[])p FD(\))e(failure)i(is)g(the)f
+847 y Fz(malloc\(\))d FE(\(or)j Fz(new[])p FE(\))e(failure)i(is)g(the)f
 (only)h(noticeable)h(clue)f(to)g(their)g(existance.)42
 b(If)28 b(y)m(ou)g(ha)m(v)m(e)i(go)s(o)s(d)150 956 y(reasons)36
 b(to)g(b)s(eliev)m(e)h(that)f(a)g(memory)f(allo)s(cation)j(failure)e
-(is)f(ultimately)i(due)e(to)h(an)g FC(NCO)f FD(memory)150
-1066 y(leak)i(\(rather)f(than)g(inadequate)h FC(RAM)f
-FD(on)g(y)m(our)g(system\),)i(then)d(w)m(e)i(w)m(ould)f(b)s(e)f(v)m
+(is)f(ultimately)i(due)e(to)h(an)g FD(NCO)f FE(memory)150
+1066 y(leak)i(\(rather)f(than)g(inadequate)h FD(RAM)f
+FE(on)g(y)m(our)g(system\),)i(then)d(w)m(e)i(w)m(ould)f(b)s(e)f(v)m
 (ery)h(in)m(terested)h(in)150 1176 y(receiving)32 b(a)e(detailed)i(bug)
-e(rep)s(ort.)150 1408 y FB(2.10)68 b(P)l(erformance)150
-1567 y FD(An)21 b(o)m(v)m(erview)h(of)f FC(NCO)g FD(capabilities)i(as)e
+e(rep)s(ort.)150 1408 y FC(2.10)68 b(P)l(erformance)150
+1567 y FE(An)21 b(o)m(v)m(erview)h(of)f FD(NCO)g FE(capabilities)i(as)e
 (of)g(ab)s(out)g(2006)i(is)e(in)g(Zender,)h(C.)f(S.)f(\(2008\),)26
 b(\\Analysis)c(of)f(Self-)150 1677 y(describing)38 b(Gridded)g
 (Geoscience)i(Data)g(with)e(netCDF)h(Op)s(erators)f(\(NCO\)",)i(En)m
 (viron.)64 b(Mo)s(dell.)150 1787 y(Soft)m(w.,)43 b(doi:10.1016/j.en)m
 (vsoft.2008)q(.0)q(3.0)q(04)q(.)75 b(This)39 b(pap)s(er)g(is)h(also)h
-(a)m(v)-5 b(ailable)43 b(at)e Fy(http:)8 b(/)g(/)e(dust)i(.)150
-1896 y(ess.uci.edu/ppr/ppr_Zen0)o(8.pd)o(f)p FD(.)275
-2056 y FC(NCO)49 b FD(p)s(erformance)h(and)f(scaling)i(for)f
+(a)m(v)-5 b(ailable)43 b(at)e Fz(http:)8 b(/)g(/)e(dust)i(.)150
+1896 y(ess.uci.edu/ppr/ppr_Zen0)o(8.pd)o(f)p FE(.)275
+2056 y FD(NCO)49 b FE(p)s(erformance)h(and)f(scaling)i(for)f
 (arithmetic)i(op)s(erations)e(is)g(describ)s(ed)f(in)h(Zender,)k(C.)150
 2165 y(S.,)65 b(and)57 b(H.)h(J.)g(Mangalam)h(\(2007\),)67
 b(\\Scaling)59 b(Prop)s(erties)f(of)g(Common)f(Statistical)j(Op)s(era-)
@@ -13953,12 +14179,12 @@ b(\\Scaling)59 b(Prop)s(erties)f(of)g(Common)f(Statistical)j(Op)s(era-)
 b(J.)31 b(High)50 b(P)m(erform.)101 b(Comput.)f(Appl.,)55
 b(21\(4\),)j(485-498,)150 2384 y(doi:10.1177/109434)q(20)q(070)q(83)q
 (80)q(2.)75 b(This)39 b(pap)s(er)g(is)h(also)g(a)m(v)-5
-b(ailable)43 b(at)d Fy(http:)8 b(/)g(/)e(dust)i(.)e(ess)i(.)e(uci)h(.)
-150 2494 y(edu/ppr/ppr_ZeM07.pdf)p FD(.)275 2653 y(It)30
+b(ailable)43 b(at)d Fz(http:)8 b(/)g(/)e(dust)i(.)e(ess)i(.)e(uci)h(.)
+150 2494 y(edu/ppr/ppr_ZeM07.pdf)p FE(.)275 2653 y(It)30
 b(is)g(helpful)g(to)h(b)s(e)f(a)m(w)m(are)i(of)e(the)h(asp)s(ects)f(of)
-h FC(NCO)f FD(design)g(that)h(can)g(limit)g(its)g(p)s(erformance:)199
+h FD(NCO)f FE(design)g(that)h(can)g(limit)g(its)g(p)s(erformance:)199
 2813 y(1.)61 b(No)36 b(data)f(bu\013ering)g(is)g(p)s(erformed)e(during)
-h Fy(nc_get_var)f FD(and)h Fy(nc_put_var)e FD(op)s(erations.)56
+h Fz(nc_get_var)f FE(and)h Fz(nc_put_var)e FE(op)s(erations.)56
 b(Hy-)330 2922 y(p)s(erslabs)23 b(to)s(o)h(large)i(to)s(o)e(hold)g(in)f
 (core)i(memory)f(will)g(su\013er)g(substan)m(tial)g(p)s(erformance)f(p)
 s(enalties)330 3032 y(b)s(ecause)30 b(of)h(this.)199
@@ -13968,48 +14194,48 @@ b(are)f(assumed)g(to)h(b)s(e)e(monotonic,)j(the)e(searc)m(h)h(for)f
 (should)e(emplo)m(y)i(a)f(quic)m(k)m(er)h(algorithm,)i(lik)m(e)e
 (bisection,)i(than)d(the)g(t)m(w)m(o-)330 3386 y(sided)30
 b(incremen)m(tal)i(searc)m(h)f(curren)m(tly)f(implemen)m(ted.)199
-3520 y(3.)61 b Fz(C)p 402 3520 28 4 v 40 w(format)p FD(,)37
-b Fz(F)m(OR)-8 b(TRAN)p 1224 3520 V 41 w(format)p FD(,)37
-b Fz(signedness)p FD(,)f Fz(scale)p 2250 3520 V 41 w(format)i
-FD(and)d Fz(add)p 2923 3520 V 39 w(o\013set)k FD(attributes)d(are)330
-3630 y(ignored)30 b(b)m(y)h Fy(ncks)e FD(when)g(prin)m(ting)i(v)-5
+3520 y(3.)61 b FA(C)p 402 3520 28 4 v 40 w(format)p FE(,)37
+b FA(F)m(OR)-8 b(TRAN)p 1224 3520 V 41 w(format)p FE(,)37
+b FA(signedness)p FE(,)f FA(scale)p 2250 3520 V 41 w(format)i
+FE(and)d FA(add)p 2923 3520 V 39 w(o\013set)k FE(attributes)d(are)330
+3630 y(ignored)30 b(b)m(y)h Fz(ncks)e FE(when)g(prin)m(ting)i(v)-5
 b(ariables)31 b(to)g(screen.)199 3764 y(4.)61 b(In)33
 b(the)i(late)g(1990s)h(it)e(w)m(as)h(disco)m(v)m(ered)g(that)g(some)f
 (random)f(access)j(op)s(erations)e(on)g(large)h(\014les)330
 3874 y(on)30 b(certain)h(arc)m(hitectures)g(\(e.g.,)h
-FC(UNICOS)p FD(\))f(w)m(ere)f(m)m(uc)m(h)g(slo)m(w)m(er)i(with)d
-FC(NCO)h FD(than)g(with)g(similar)330 3983 y(op)s(erations)f(p)s
+FD(UNICOS)p FE(\))f(w)m(ere)f(m)m(uc)m(h)g(slo)m(w)m(er)i(with)d
+FD(NCO)h FE(than)g(with)g(similar)330 3983 y(op)s(erations)f(p)s
 (erformed)e(using)h(languages)i(that)f(b)m(ypass)f(the)h(netCDF)g(in)m
 (terface)h(\(e.g.,)h(Y)-8 b(oric)m(k\).)330 4093 y(This)30
 b(ma)m(y)i(ha)m(v)m(e)g(b)s(een)e(a)h(p)s(enalt)m(y)g(of)g(unnecessary)
 g(b)m(yte-sw)m(apping)g(in)g(the)g(netCDF)g(in)m(terface.)330
 4203 y(It)d(is)g(unclear)g(whether)f(suc)m(h)g(problems)g(exist)i(in)f
-(presen)m(t)f(da)m(y)i(\(2007\))h(netCDF/)p FC(NCO)f
-FD(en)m(viron-)330 4312 y(men)m(ts,)i(where)f(unnecessary)g(b)m(yte-sw)
+(presen)m(t)f(da)m(y)i(\(2007\))h(netCDF/)p FD(NCO)f
+FE(en)m(viron-)330 4312 y(men)m(ts,)i(where)f(unnecessary)g(b)m(yte-sw)
 m(apping)h(has)f(b)s(een)f(reduced)h(or)g(eliminated.)p
 eop end
 %%Page: 25 31
-TeXDict begin 25 30 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(25)150 299 y Fx(3)80
-b(NCO)54 b(F)-13 b(eatures)150 683 y FD(Man)m(y)36 b(features)g(ha)m(v)
-m(e)g(b)s(een)f(implemen)m(ted)h(in)f(more)g(than)g(one)h(op)s(erator)f
-(and)g(are)h(describ)s(ed)e(here)150 793 y(for)g(brevit)m(y)-8
-b(.)54 b(The)34 b(description)g(of)h(eac)m(h)g(feature)g(is)f(preceded)
-h(b)m(y)f(a)h(b)s(o)m(x)f(listing)h(the)g(op)s(erators)f(for)150
-903 y(whic)m(h)25 b(the)h(feature)g(is)g(implemen)m(ted.)40
-b(Command)25 b(line)h(switc)m(hes)g(for)g(a)g(giv)m(en)g(feature)g(are)
-h(consisten)m(t)150 1012 y(across)37 b(all)g(op)s(erators)f(wherev)m
-(er)g(p)s(ossible.)58 b(If)35 b(no)i(\\k)m(ey)g(switc)m(hes")g(are)g
-(listed)f(for)g(a)h(feature,)h(then)150 1122 y(that)31
-b(particular)g(feature)f(is)h(automatic)h(and)e(cannot)h(b)s(e)f(con)m
-(trolled)i(b)m(y)e(the)g(user.)150 1429 y FB(3.1)68 b(In)l
-(ternationalization)150 1540 y Fk(\013)p 200 1540 3554
-4 v 3553 w(\010)p 150 1811 4 223 v 178 1676 a FD(Av)-5
-b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)p 3803 1811
-V 150 1862 a Fk(\012)p 200 1862 3554 4 v 3553 w(\011)275
-2062 y FC(NCO)36 b FD(supp)s(ort)e(for)i Fz(in)m(ternationalization)k
-FD(of)c(textual)i(input)d(and)h(output)g(\(e.g.,)k(W)-8
-b(arning)37 b(mes-)150 2172 y(sages\))f(is)g(nascen)m(t.)55
+TeXDict begin 25 30 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(25)150 299 y Fy(3)80
+b(Shared)53 b(F)-13 b(eatures)150 683 y FE(Man)m(y)36
+b(features)g(ha)m(v)m(e)g(b)s(een)f(implemen)m(ted)h(in)f(more)g(than)g
+(one)h(op)s(erator)f(and)g(are)h(describ)s(ed)e(here)150
+793 y(for)g(brevit)m(y)-8 b(.)54 b(The)34 b(description)g(of)h(eac)m(h)
+g(feature)g(is)f(preceded)h(b)m(y)f(a)h(b)s(o)m(x)f(listing)h(the)g(op)
+s(erators)f(for)150 903 y(whic)m(h)25 b(the)h(feature)g(is)g(implemen)m
+(ted.)40 b(Command)25 b(line)h(switc)m(hes)g(for)g(a)g(giv)m(en)g
+(feature)g(are)h(consisten)m(t)150 1012 y(across)37 b(all)g(op)s
+(erators)f(wherev)m(er)g(p)s(ossible.)58 b(If)35 b(no)i(\\k)m(ey)g
+(switc)m(hes")g(are)g(listed)f(for)g(a)h(feature,)h(then)150
+1122 y(that)31 b(particular)g(feature)f(is)h(automatic)h(and)e(cannot)h
+(b)s(e)f(con)m(trolled)i(b)m(y)e(the)g(user.)150 1429
+y FC(3.1)68 b(In)l(ternationalization)150 1540 y Fl(\013)p
+200 1540 3554 4 v 3553 w(\010)p 150 1811 4 223 v 178
+1676 a FE(Av)-5 b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)p
+3803 1811 V 150 1862 a Fl(\012)p 200 1862 3554 4 v 3553
+w(\011)275 2062 y FD(NCO)36 b FE(supp)s(ort)e(for)i FA(in)m
+(ternationalization)k FE(of)c(textual)i(input)d(and)h(output)g(\(e.g.,)
+k(W)-8 b(arning)37 b(mes-)150 2172 y(sages\))f(is)g(nascen)m(t.)55
 b(W)-8 b(e)37 b(in)m(tro)s(duced)d(the)h(\014rst)g(foreign)g(language)i
 (string)e(catalogues)i(\(F)-8 b(renc)m(h)37 b(and)150
 2282 y(Spanish\))f(in)h(2004,)j(y)m(et)f(did)d(not)h(activ)-5
@@ -14017,18 +14243,18 @@ b(ate)40 b(these)d(in)g(distributions)g(b)s(ecause)g(the)g(catalogues)i
 (w)m(ere)150 2391 y(nearly)i(empt)m(y)-8 b(.)71 b(W)-8
 b(e)42 b(seek)f(v)m(olun)m(teers)h(to)f(p)s(opulate)f(our)g(templates)i
 (with)e(translations)i(for)e(their)150 2501 y(fa)m(v)m(orite)33
-b(languages.)150 2808 y FB(3.2)68 b(Metadata)46 b(Optimization)150
-2942 y Fk(\013)p 200 2942 V 3553 w(\010)p 150 3432 4
-442 v 178 3078 a FD(Av)-5 b(ailabilit)m(y:)43 b(All)31
+b(languages.)150 2808 y FC(3.2)68 b(Metadata)46 b(Optimization)150
+2942 y Fl(\013)p 200 2942 V 3553 w(\010)p 150 3432 4
+442 v 178 3078 a FE(Av)-5 b(ailabilit)m(y:)43 b(All)31
 b(op)s(erators)178 3188 y(Short)f(options:)41 b(None)178
-3298 y(Long)31 b(options:)41 b(`)p Fy(--hdr_pad)p FD(',)28
-b(`)p Fy(--header_pad)p FD(')p 3803 3432 V 150 3483 a
-Fk(\012)p 200 3483 3554 4 v 3553 w(\011)275 3679 y FC(NCO)d
-FD(supp)s(orts)e(padding)i(headers)g(to)h(impro)m(v)m(e)g(the)g(sp)s
+3298 y(Long)31 b(options:)41 b(`)p Fz(--hdr_pad)p FE(',)28
+b(`)p Fz(--header_pad)p FE(')p 3803 3432 V 150 3483 a
+Fl(\012)p 200 3483 3554 4 v 3553 w(\011)275 3679 y FD(NCO)d
+FE(supp)s(orts)e(padding)i(headers)g(to)h(impro)m(v)m(e)g(the)g(sp)s
 (eed)e(of)i(future)e(metadata)j(op)s(erations.)40 b(Use)150
-3788 y(the)f(`)p Fy(--hdr_pad)p FD(')d(and)i(`)p Fy(--header_pad)p
-FD(')d(switc)m(hes)40 b(to)f(request)f(that)h Fz(hdr)p
-2837 3788 28 4 v 39 w(pad)i FD(b)m(ytes)e(b)s(e)f(inserted)150
+3788 y(the)f(`)p Fz(--hdr_pad)p FE(')d(and)i(`)p Fz(--header_pad)p
+FE(')d(switc)m(hes)40 b(to)f(request)f(that)h FA(hdr)p
+2837 3788 28 4 v 39 w(pad)i FE(b)m(ytes)e(b)s(e)f(inserted)150
 3898 y(in)m(to)h(the)g(metadata)h(section)f(of)g(the)f(output)g
 (\014le.)65 b(F)-8 b(uture)38 b(metadata)i(expansions)e(will)h(not)g
 (incur)150 4008 y(the)f(netCDF3)h(p)s(erformance)e(p)s(enalt)m(y)i(of)f
@@ -14039,55 +14265,55 @@ FD(')d(switc)m(hes)40 b(to)f(request)f(that)h Fz(hdr)p
 e(b)s(e)g(added)g(at)h(a)f(future)g(date.)40 b(The)27
 b(op)s(erators)g(whic)m(h)g(b)s(ene\014t)g(most)g(from)150
 4336 y(judicious)f(use)g(of)g(header)g(padding)g(are)g
-Fy(ncatted)f FD(and)g Fy(ncrename)p FD(,)g(since)i(they)f(only)h(alter)
+Fz(ncatted)f FE(and)g Fz(ncrename)p FE(,)g(since)i(they)f(only)h(alter)
 g(metadata.)275 4521 y(This)34 b(optimization)j(exploits)f(the)g
-(netCDF)f(library)g Fy(nc__enddef\(\))d FD(function,)k(whic)m(h)f(b)s
+(netCDF)f(library)g Fz(nc__enddef\(\))d FE(function,)k(whic)m(h)f(b)s
 (eha)m(v)m(es)150 4630 y(di\013eren)m(tly)45 b(with)e(di\013eren)m(t)i
 (v)m(ersions)f(of)g(netCDF.)h(It)f(will)g(impro)m(v)m(e)h(sp)s(eed)e
 (of)h(future)f(metadata)150 4740 y(expansion)f(with)h
-Fy(CLASSIC)d FD(and)i Fy(64bit)g FD(netCDF)h(\014les,)j(though)c(not)h
-(necessarily)h(with)e Fy(NETCDF4)150 4850 y FD(\014les,)32
+Fz(CLASSIC)d FE(and)i Fz(64bit)g FE(netCDF)h(\014les,)j(though)c(not)h
+(necessarily)h(with)e Fz(NETCDF4)150 4850 y FE(\014les,)32
 b(i.e.,)i(those)f(created)g(b)m(y)e(the)h(netCDF)h(in)m(terface)g(to)g
-(the)f FC(HDF5)g FD(library)g(\(see)h(Section)f(3.9)h([File)150
+(the)f FD(HDF5)g FE(library)g(\(see)h(Section)f(3.9)h([File)150
 4959 y(F)-8 b(ormats)32 b(and)d(Con)m(v)m(ersion],)j(page)f(35\).)150
-5267 y FB(3.3)68 b(Op)t(enMP)44 b(Threading)p eop end
+5267 y FC(3.3)68 b(Op)t(enMP)44 b(Threading)p eop end
 %%Page: 26 32
-TeXDict begin 26 31 bop 150 -116 a FD(26)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 51 y Fk(\013)p 200 51 3554
-4 v 3553 w(\010)p 150 541 4 442 v 178 188 a FD(Av)-5
-b(ailabilit)m(y:)43 b Fy(ncap2)p FD(,)30 b Fy(ncbo)p
-FD(,)f Fy(nces)p FD(,)h Fy(ncecat)p FD(,)f Fy(ncflint)p
-FD(,)f Fy(ncpdq)p FD(,)h Fy(ncra)p FD(,)h Fy(ncrcat)p
-FD(,)f Fy(ncwa)178 297 y FD(Short)h(options:)41 b(`)p
-Fy(-t)p FD(')178 407 y(Long)31 b(options:)41 b(`)p Fy(--thr_nbr)p
-FD(',)28 b(`)p Fy(--threads)p FD(',)h(`)p Fy(--omp_num_threads)p
-FD(')p 3803 541 V 150 593 a Fk(\012)p 200 593 3554 4
-v 3553 w(\011)275 789 y FC(NCO)46 b FD(supp)s(orts)e(shared)i(memory)g
-(parallelism)i(\()p FC(SMP)p FD(\))f(when)e(compiled)i(with)f(an)h(Op)s
+TeXDict begin 26 31 bop 150 -116 a FE(26)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 51 y Fl(\013)p 200 51 3554
+4 v 3553 w(\010)p 150 541 4 442 v 178 188 a FE(Av)-5
+b(ailabilit)m(y:)43 b Fz(ncap2)p FE(,)30 b Fz(ncbo)p
+FE(,)f Fz(nces)p FE(,)h Fz(ncecat)p FE(,)f Fz(ncflint)p
+FE(,)f Fz(ncpdq)p FE(,)h Fz(ncra)p FE(,)h Fz(ncrcat)p
+FE(,)f Fz(ncwa)178 297 y FE(Short)h(options:)41 b(`)p
+Fz(-t)p FE(')178 407 y(Long)31 b(options:)41 b(`)p Fz(--thr_nbr)p
+FE(',)28 b(`)p Fz(--threads)p FE(',)h(`)p Fz(--omp_num_threads)p
+FE(')p 3803 541 V 150 593 a Fl(\012)p 200 593 3554 4
+v 3553 w(\011)275 789 y FD(NCO)46 b FE(supp)s(orts)e(shared)i(memory)g
+(parallelism)i(\()p FD(SMP)p FE(\))f(when)e(compiled)i(with)f(an)h(Op)s
 (enMP-)150 898 y(enabled)34 b(compiler.)52 b(Threads)33
 b(requests)g(and)h(allo)s(cations)i(o)s(ccur)d(in)h(t)m(w)m(o)h
 (stages.)53 b(First,)35 b(users)e(ma)m(y)150 1008 y(request)27
 b(a)g(sp)s(eci\014c)f(n)m(um)m(b)s(er)f(of)i(threads)f
-Fz(thr)p 1722 1008 28 4 v 40 w(n)m(br)32 b FD(with)26
-b(the)h(`)p Fy(-t)p FD(')g(switc)m(h)g(\(or)g(its)g(long)g(option)g
-(equiv)-5 b(a-)150 1117 y(len)m(ts,)26 b(`)p Fy(--thr_nbr)p
-FD(',)c(`)p Fy(--threads)p FD(',)h(and)f(`)p Fy(--omp_num_threads)p
-FD('\).)35 b(If)22 b(not)h(user-sp)s(eci\014ed,)h(Op)s(enMP)150
-1227 y(obtains)36 b Fz(thr)p 602 1227 V 40 w(n)m(br)41
-b FD(from)36 b(the)g Fy(OMP_NUM_THREADS)c FD(en)m(vironmen)m(t)k(v)-5
+FA(thr)p 1722 1008 28 4 v 40 w(n)m(br)32 b FE(with)26
+b(the)h(`)p Fz(-t)p FE(')g(switc)m(h)g(\(or)g(its)g(long)g(option)g
+(equiv)-5 b(a-)150 1117 y(len)m(ts,)26 b(`)p Fz(--thr_nbr)p
+FE(',)c(`)p Fz(--threads)p FE(',)h(and)f(`)p Fz(--omp_num_threads)p
+FE('\).)35 b(If)22 b(not)h(user-sp)s(eci\014ed,)h(Op)s(enMP)150
+1227 y(obtains)36 b FA(thr)p 602 1227 V 40 w(n)m(br)41
+b FE(from)36 b(the)g Fz(OMP_NUM_THREADS)c FE(en)m(vironmen)m(t)k(v)-5
 b(ariable,)39 b(if)d(presen)m(t,)h(or)f(from)g(the)150
-1337 y FC(OS)p FD(,)30 b(if)h(not.)150 1415 y Fk(\013)p
+1337 y FD(OS)p FE(,)30 b(if)h(not.)150 1415 y Fl(\013)p
 200 1415 3554 4 v 3553 w(\010)p 150 2585 4 1122 v 303
-1556 a FD(Ca)m(v)m(eat:)70 b(Unfortunately)-8 b(,)48
-b(threading)c(do)s(es)g(not)g(impro)m(v)m(e)h FC(NCO)f
-FD(throughput)f(\(i.e.,)49 b(w)m(allclo)s(c)m(k)178 1666
-y(time\))42 b(b)s(ecause)f(nearly)g(all)h FC(NCO)e FD(op)s(erations)i
-(are)f(I/O-b)s(ound.)70 b(This)40 b(means)h(that)g FC(NCO)g
-FD(sp)s(ends)178 1775 y(negligible)36 b(time)e(doing)g(an)m(ything)g
+1556 a FE(Ca)m(v)m(eat:)70 b(Unfortunately)-8 b(,)48
+b(threading)c(do)s(es)g(not)g(impro)m(v)m(e)h FD(NCO)f
+FE(throughput)f(\(i.e.,)49 b(w)m(allclo)s(c)m(k)178 1666
+y(time\))42 b(b)s(ecause)f(nearly)g(all)h FD(NCO)e FE(op)s(erations)i
+(are)f(I/O-b)s(ound.)70 b(This)40 b(means)h(that)g FD(NCO)g
+FE(sp)s(ends)178 1775 y(negligible)36 b(time)e(doing)g(an)m(ything)g
 (compared)g(to)g(reading)g(and)f(writing.)51 b(W)-8 b(e)35
 b(ha)m(v)m(e)g(seen)f(some)g(and)178 1885 y(can)26 b(imagine)h(other)e
-(use)g(cases)i(where)e Fy(ncwa)p FD(,)g Fy(ncpdq)p FD(,)h(and)f
-Fy(ncap2)f FD(\(with)h(long)h(scripts\))g(will)g(complete)178
+(use)g(cases)i(where)e Fz(ncwa)p FE(,)g Fz(ncpdq)p FE(,)h(and)f
+Fz(ncap2)f FE(\(with)h(long)h(scripts\))g(will)g(complete)178
 1995 y(faster)g(due)f(to)h(threading.)39 b(The)25 b(main)g(b)s
 (ene\014ts)g(of)g(threading)h(so)g(far)f(ha)m(v)m(e)h(b)s(een)f(to)h
 (isolate)i(the)d(serial)178 2104 y(from)i(parallel)h(p)s(ortions)e(of)h
@@ -14097,14 +14323,14 @@ b(the)f(I/O)g(b)s(ottlenec)m(k)i(during)c(output.)57
 b(The)36 b(b)s(ottlenec)m(k)h(will)f(b)s(e)g(ameliorated)h(for)f(large)
 h(\014les)178 2323 y(b)m(y)c(the)g(use)f(of)h(MPI-enabled)g(calls)h(in)
 e(the)h(netCDF4)h(library)e(when)g(the)h(underlying)e(\014lesystem)i
-(is)178 2433 y(parallel)j(\(e.g.,)j FC(PVFS)c FD(or)g
-FC(JFS)p FD(\).)55 b(Implemen)m(tation)37 b(of)e(the)g(parallel)h
-(output)f(calls)i(in)d FC(NCO)h FD(is)g(not)h(a)178 2542
+(is)178 2433 y(parallel)j(\(e.g.,)j FD(PVFS)c FE(or)g
+FD(JFS)p FE(\).)55 b(Implemen)m(tation)37 b(of)e(the)g(parallel)h
+(output)f(calls)i(in)d FD(NCO)h FE(is)g(not)h(a)178 2542
 y(goal)c(of)f(our)f(curren)m(t)g(funding)f(and)g(w)m(ould)h(require)h
 (new)e(v)m(olun)m(teers)j(or)e(funding.)p 3803 2585 V
-150 2637 a Fk(\012)p 200 2637 3554 4 v 3553 w(\011)275
-2827 y FC(NCO)k FD(ma)m(y)i(mo)s(dify)e Fz(thr)p 1136
-2827 28 4 v 39 w(n)m(br)41 b FD(according)36 b(to)f(its)g(o)m(wn)g(in)m
+150 2637 a Fl(\012)p 200 2637 3554 4 v 3553 w(\011)275
+2827 y FD(NCO)k FE(ma)m(y)i(mo)s(dify)e FA(thr)p 1136
+2827 28 4 v 39 w(n)m(br)41 b FE(according)36 b(to)f(its)g(o)m(wn)g(in)m
 (ternal)h(settings)g(b)s(efore)e(it)i(requests)f(an)m(y)150
 2937 y(threads)42 b(from)g(the)h(system.)77 b(Certain)42
 b(op)s(erators)h(con)m(tain)h(hard-co)s(de)e(limits)h(to)g(the)g(n)m
@@ -14112,10 +14338,10 @@ b(op)s(erators)h(con)m(tain)h(hard-co)s(de)e(limits)h(to)g(the)g(n)m
 b(W)-8 b(e)36 b(base)g(these)g(limits)h(on)e(our)g(exp)s(erience)h(and)
 f(common)h(sense,)h(and)e(to)150 3156 y(reduce)g(p)s(oten)m(tially)i(w)
 m(asteful)g(system)e(usage)h(b)m(y)g(inexp)s(erienced)f(users.)55
-b(F)-8 b(or)36 b(example,)i Fy(ncrcat)c FD(is)150 3266
+b(F)-8 b(or)36 b(example,)i Fz(ncrcat)c FE(is)150 3266
 y(extremely)24 b(I/O-in)m(tensiv)m(e)h(so)e(w)m(e)h(restrict)g
-Fz(thr)p 1784 3266 V 46 w(n)m(br)31 b Fv(<)p FD(=)24
-b(2)g(for)e Fy(ncrcat)p FD(.)37 b(This)22 b(is)h(based)g(on)g(the)g
+FA(thr)p 1784 3266 V 46 w(n)m(br)31 b Fw(<)p FE(=)24
+b(2)g(for)e Fz(ncrcat)p FE(.)37 b(This)22 b(is)h(based)g(on)g(the)g
 (notion)150 3375 y(that)28 b(the)f(b)s(est)g(p)s(erformance)g(that)g
 (can)h(b)s(e)f(exp)s(ected)g(from)g(an)g(op)s(erator)h(whic)m(h)f(do)s
 (es)g(no)g(arithmetic)150 3485 y(is)e(to)h(ha)m(v)m(e)h(one)e(thread)h
@@ -14123,67 +14349,67 @@ b(2)g(for)e Fy(ncrcat)p FD(.)37 b(This)22 b(is)h(based)g(on)g(the)g
 b(.)40 b(In)24 b(the)i(future)e(\(p)s(erhaps)150 3594
 y(with)h(netCDF4\),)j(w)m(e)d(hop)s(e)f(to)i(demonstrate)g
 (signi\014can)m(t)g(threading)f(impro)m(v)m(emen)m(ts)h(with)f(op)s
-(erators)150 3704 y(lik)m(e)32 b Fy(ncrcat)c FD(b)m(y)j(p)s(erforming)e
+(erators)150 3704 y(lik)m(e)32 b Fz(ncrcat)c FE(b)m(y)j(p)s(erforming)e
 (m)m(ultiple)i(sim)m(ultaneous)g(writes.)275 3884 y(Compute-in)m
-(tensiv)m(e)24 b(op)s(erators)f(\()p Fy(ncap2)p FD(,)g
-Fy(ncwa)f FD(and)g Fy(ncpdq)p FD(\))g(b)s(ene\014t)g(most)h(from)f
+(tensiv)m(e)24 b(op)s(erators)f(\()p Fz(ncap2)p FE(,)g
+Fz(ncwa)f FE(and)g Fz(ncpdq)p FE(\))g(b)s(ene\014t)g(most)h(from)f
 (threading.)38 b(The)150 3994 y(greatest)26 b(increases)g(in)e
 (throughput)f(due)h(to)h(threading)f(o)s(ccur)h(on)f(large)i(datasets)f
 (where)f(eac)m(h)i(thread)150 4103 y(p)s(erforms)36 b(millions,)k(at)e
 (least,)i(of)e(\015oating)g(p)s(oin)m(t)f(op)s(erations.)62
 b(Otherwise,)39 b(the)e(system)h(o)m(v)m(erhead)150 4213
 y(of)31 b(setting)h(up)d(threads)h(probably)g(out)m(w)m(eighs)i(the)f
-(sp)s(eed)f(enhancemen)m(ts)h(due)f(to)h FC(SMP)g FD(parallelism.)150
+(sp)s(eed)f(enhancemen)m(ts)h(due)f(to)h FD(SMP)g FE(parallelism.)150
 4322 y(Ho)m(w)m(ev)m(er,)c(w)m(e)c(ha)m(v)m(e)h(not)f(y)m(et)i
-(demonstrated)e(that)g(the)g FC(SMP)g FD(parallelism)h(scales)g(b)s(ey)
+(demonstrated)e(that)g(the)g FD(SMP)g FE(parallelism)h(scales)g(b)s(ey)
 m(ond)e(four)g(threads)150 4432 y(for)31 b(these)g(op)s(erators.)43
-b(Hence)32 b(w)m(e)g(restrict)f Fz(thr)p 1818 4432 V
-46 w(n)m(br)h Fv(<)p FD(=)26 b(4)32 b(for)e(all)i(op)s(erators.)43
+b(Hence)32 b(w)m(e)g(restrict)f FA(thr)p 1818 4432 V
+46 w(n)m(br)h Fw(<)p FE(=)26 b(4)32 b(for)e(all)i(op)s(erators.)43
 b(W)-8 b(e)33 b(encourage)f(users)150 4542 y(to)f(pla)m(y)g(with)f
-(these)h(limits)g(\(edit)g(\014le)g Fy(nco_omp.c)p FD(\))d(and)i(send)f
+(these)h(limits)g(\(edit)g(\014le)g Fz(nco_omp.c)p FE(\))d(and)i(send)f
 (us)h(their)g(feedbac)m(k.)275 4722 y(Once)24 b(the)h(initial)h
-Fz(thr)p 1037 4722 V 39 w(n)m(br)31 b FD(has)24 b(b)s(een)g(mo)s
+FA(thr)p 1037 4722 V 39 w(n)m(br)31 b FE(has)24 b(b)s(een)g(mo)s
 (di\014ed)f(for)i(an)m(y)g(op)s(erator-sp)s(eci\014c)g(limits,)i
-FC(NCO)d FD(requests)150 4831 y(the)33 b(system)f(to)i(allo)s(cate)h(a)
-d(team)i(of)e Fz(thr)p 1604 4831 V 40 w(n)m(br)38 b FD(threads)32
+FD(NCO)d FE(requests)150 4831 y(the)33 b(system)f(to)i(allo)s(cate)h(a)
+d(team)i(of)e FA(thr)p 1604 4831 V 40 w(n)m(br)38 b FE(threads)32
 b(for)g(the)h(b)s(o)s(dy)e(of)i(the)f(co)s(de.)48 b(The)31
 b(op)s(erating)150 4941 y(system)i(then)g(decides)g(ho)m(w)g(man)m(y)g
 (threads)g(to)g(allo)s(cate)j(based)d(on)f(this)h(request.)49
 b(Users)33 b(ma)m(y)g(k)m(eep)150 5050 y(trac)m(k)f(of)e(this)g
 (information)h(b)m(y)f(running)f(the)i(op)s(erator)f(with)g
-Fz(dbg)p 2512 5050 V 48 w(lvl)f Fv(>)c FD(0.)275 5230
+FA(dbg)p 2512 5050 V 48 w(lvl)f Fw(>)c FE(0.)275 5230
 y(By)20 b(default,)j(threaded)e(op)s(erators)f(attac)m(h)j(one)e
-(global)h(attribute,)h Fy(nco_openmp_thread_number)p
-FD(,)150 5340 y(to)37 b(an)m(y)g(\014le)g(they)g(create)h(or)f(mo)s
+(global)h(attribute,)h Fz(nco_openmp_thread_number)p
+FE(,)150 5340 y(to)37 b(an)m(y)g(\014le)g(they)g(create)h(or)f(mo)s
 (dify)-8 b(.)59 b(This)36 b(attribute)i(con)m(tains)f(the)g(n)m(um)m(b)
 s(er)f(of)h(threads)f(the)h(op-)p eop end
 %%Page: 27 33
-TeXDict begin 27 32 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(27)150 299 y(erator)39
+TeXDict begin 27 32 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(27)150 299 y(erator)39
 b(used)e(to)i(pro)s(cess)e(the)i(input)e(\014les.)63
 b(This)37 b(information)i(helps)e(to)i(v)m(erify)f(that)h(the)f(answ)m
 (ers)150 408 y(with)j(threaded)g(and)g(non-threaded)g(op)s(erators)h
 (are)g(equal)g(to)g(within)f(mac)m(hine)h(precision.)75
 b(This)150 518 y(information)31 b(is)f(also)h(useful)f(for)g(b)s(enc)m
-(hmarking.)150 763 y FB(3.4)68 b(Command)45 b(Line)g(Options)150
-897 y Fk(\013)p 200 897 3554 4 v 3553 w(\010)p 150 1168
-4 223 v 178 1033 a FD(Av)-5 b(ailabilit)m(y:)43 b(All)31
-b(op)s(erators)p 3803 1168 V 150 1219 a Fk(\012)p 200
-1219 3554 4 v 3553 w(\011)275 1394 y FC(NCO)26 b FD(ac)m(hiev)m(es)i
-(\015exibilit)m(y)g(b)m(y)e(using)h Fz(command)f(line)h(options)p
-FD(.)39 b(These)27 b(options)g(are)f(implemen)m(ted)150
-1503 y(in)36 b(all)h(traditional)g FC(UNIX)g FD(commands)f(as)g(single)
-h(letter)g Fz(switc)m(hes)p FD(,)i(e.g.,)g(`)p Fy(ls)30
-b(-l)p FD('.)57 b(F)-8 b(or)37 b(man)m(y)f(y)m(ears)150
-1613 y FC(NCO)43 b FD(used)g(only)h(single)g(letter)h(option)g(names.)
+(hmarking.)150 763 y FC(3.4)68 b(Command)45 b(Line)g(Options)150
+897 y Fl(\013)p 200 897 3554 4 v 3553 w(\010)p 150 1168
+4 223 v 178 1033 a FE(Av)-5 b(ailabilit)m(y:)43 b(All)31
+b(op)s(erators)p 3803 1168 V 150 1219 a Fl(\012)p 200
+1219 3554 4 v 3553 w(\011)275 1394 y FD(NCO)26 b FE(ac)m(hiev)m(es)i
+(\015exibilit)m(y)g(b)m(y)e(using)h FA(command)f(line)h(options)p
+FE(.)39 b(These)27 b(options)g(are)f(implemen)m(ted)150
+1503 y(in)36 b(all)h(traditional)g FD(UNIX)g FE(commands)f(as)g(single)
+h(letter)g FA(switc)m(hes)p FE(,)i(e.g.,)g(`)p Fz(ls)30
+b(-l)p FE('.)57 b(F)-8 b(or)37 b(man)m(y)f(y)m(ears)150
+1613 y FD(NCO)43 b FE(used)g(only)h(single)g(letter)h(option)g(names.)
 80 b(In)43 b(late)i(2002,)k(w)m(e)44 b(implemen)m(ted)g
-FC(GNU)p FD(/)p FC(POSIX)150 1723 y FD(extended)37 b(or)g(long)g
+FD(GNU)p FE(/)p FD(POSIX)150 1723 y FE(extended)37 b(or)g(long)g
 (option)g(names)g(for)f(all)i(options.)60 b(This)36 b(w)m(as)h(done)g
 (in)f(a)h(bac)m(kw)m(ard)h(compatible)150 1832 y(w)m(a)m(y)k(suc)m(h)e
-(that)h(the)g(full)f(functionalit)m(y)i(of)f FC(NCO)f
-FD(is)h(still)g(a)m(v)-5 b(ailable)43 b(through)d(the)h(familiar)g
+(that)h(the)g(full)f(functionalit)m(y)i(of)f FD(NCO)f
+FE(is)h(still)g(a)m(v)-5 b(ailable)43 b(through)d(the)h(familiar)g
 (single)150 1942 y(letter)c(options.)55 b(In)35 b(the)h(future,)f(ho)m
-(w)m(ev)m(er,)k(some)c(features)h(of)f FC(NCO)g FD(ma)m(y)h(require)f
+(w)m(ev)m(er,)k(some)c(features)h(of)f FD(NCO)g FE(ma)m(y)h(require)f
 (the)h(use)f(of)g(long)150 2051 y(options,)c(simply)f(b)s(ecause)h(w)m
 (e)g(ha)m(v)m(e)h(nearly)e(run)f(out)i(of)g(single)g(letter)h(options.)
 42 b(More)31 b(imp)s(ortan)m(tly)-8 b(,)150 2161 y(mnemonics)35
@@ -14192,82 +14418,82 @@ b(for)g(single)h(letter)h(options)e(are)h(often)g(non-in)m(tuitiv)m(e)g
 y(more)31 b(natural)f(w)m(a)m(y)h(of)g(expressing)f(in)m(ten)m(t.)275
 2434 y(Extended)i(options,)i(also)g(called)h(long)e(options,)i(are)e
 (implemen)m(ted)h(using)e(the)i(system-supplied)150 2544
-y Fy(getopt.h)28 b FD(header)i(\014le,)h(if)f(p)s(ossible.)41
-b(This)29 b(pro)m(vides)i(the)f Fy(getopt_long)d FD(function)j(to)i
-FC(NCO)3421 2511 y Ft(1)3458 2544 y FD(.)275 2708 y(The)25
-b(syn)m(tax)h(of)f Fz(short)h(options)j FD(\(single)e(letter)g
-(options\))f(is)f Fn(-key)30 b(value)24 b FD(\(dash-k)m(ey-space-v)-5
-b(alue\).)150 2817 y(Here,)31 b Fz(k)m(ey)39 b FD(is)30
+y Fz(getopt.h)28 b FE(header)i(\014le,)h(if)f(p)s(ossible.)41
+b(This)29 b(pro)m(vides)i(the)f Fz(getopt_long)d FE(function)j(to)i
+FD(NCO)3421 2511 y Fu(1)3458 2544 y FE(.)275 2708 y(The)25
+b(syn)m(tax)h(of)f FA(short)h(options)j FE(\(single)e(letter)g
+(options\))f(is)f Fo(-key)30 b(value)24 b FE(\(dash-k)m(ey-space-v)-5
+b(alue\).)150 2817 y(Here,)31 b FA(k)m(ey)39 b FE(is)30
 b(the)h(single)g(letter)h(option)f(name,)f(e.g.,)i(`)p
-Fy(-D)e(2)p FD('.)275 2981 y(The)25 b(syn)m(tax)i(of)f
-Fz(long)h(options)j FD(\(m)m(ulti-letter)f(options\))e(is)f
-Fn(--long_name)h(value)e FD(\(dash-dash-k)m(ey-)150 3091
-y(space-v)-5 b(alue\),)34 b(e.g.,)f(`)p Fy(--dbg_lvl)28
-b(2)p FD(')j(or)g Fn(--long_name=value)c FD(\(dash-dash-k)m(ey-equal-v)
--5 b(alue\),)34 b(e.g.,)150 3200 y(`)p Fy(--dbg_lvl=2)p
-FD('.)41 b(Th)m(us)30 b(the)i(follo)m(wing)h(are)e(all)i(v)-5
-b(alid)31 b(for)g(the)h(`)p Fy(-D)p FD(')f(\(short)g(v)m(ersion\))i(or)
-e(`)p Fy(--dbg_lvl)p FD(')150 3310 y(\(long)g(v)m(ersion\))h(command)e
-(line)g(option.)390 3473 y Fy(ncks)47 b(-D)g(3)g(in.nc)381
+Fz(-D)e(2)p FE('.)275 2981 y(The)25 b(syn)m(tax)i(of)f
+FA(long)h(options)j FE(\(m)m(ulti-letter)f(options\))e(is)f
+Fo(--long_name)h(value)e FE(\(dash-dash-k)m(ey-)150 3091
+y(space-v)-5 b(alue\),)34 b(e.g.,)f(`)p Fz(--dbg_lvl)28
+b(2)p FE(')j(or)g Fo(--long_name=value)c FE(\(dash-dash-k)m(ey-equal-v)
+-5 b(alue\),)34 b(e.g.,)150 3200 y(`)p Fz(--dbg_lvl=2)p
+FE('.)41 b(Th)m(us)30 b(the)i(follo)m(wing)h(are)e(all)i(v)-5
+b(alid)31 b(for)g(the)h(`)p Fz(-D)p FE(')f(\(short)g(v)m(ersion\))i(or)
+e(`)p Fz(--dbg_lvl)p FE(')150 3310 y(\(long)g(v)m(ersion\))h(command)e
+(line)g(option.)390 3473 y Fz(ncks)47 b(-D)g(3)g(in.nc)381
 b(#)47 b(Short)g(option)390 3583 y(ncks)g(--dbg_lvl=3)d(in.nc)j(#)g
 (Long)g(option,)f(preferred)f(form)390 3693 y(ncks)i(--dbg_lvl)e(3)i
 (in.nc)g(#)g(Long)g(option,)f(alternate)f(form)150 3856
-y FD(The)32 b(last)h(example)g(is)g(preferred)e(for)h(t)m(w)m(o)i
-(reasons.)47 b(First,)34 b(`)p Fy(--dbg_lvl)p FD(')c(is)j(more)g(sp)s
+y FE(The)32 b(last)h(example)g(is)g(preferred)e(for)h(t)m(w)m(o)i
+(reasons.)47 b(First,)34 b(`)p Fz(--dbg_lvl)p FE(')c(is)j(more)g(sp)s
 (eci\014c)f(and)g(less)150 3966 y(am)m(biguous)h(than)g(`)p
-Fy(-D)p FD('.)48 b(The)32 b(long)i(option)f(form)g(mak)m(es)g(scripts)g
+Fz(-D)p FE('.)48 b(The)32 b(long)i(option)f(form)g(mak)m(es)g(scripts)g
 (more)g(self)g(do)s(cumen)m(ting)g(and)g(less)150 4075
 y(error)d(prone.)40 b(Often)29 b(long)i(options)f(are)h(named)e(after)i
 (the)f(source)g(co)s(de)h(v)-5 b(ariable)30 b(whose)g(v)-5
 b(alue)31 b(they)150 4185 y(carry)-8 b(.)62 b(Second,)40
-b(the)d(equals)h(sign)g Fn(=)f FD(joins)g(the)h(k)m(ey)g(\(i.e.,)j
-Fz(long)p 2448 4185 28 4 v 41 w(name)5 b FD(\))38 b(to)g(the)f(v)-5
+b(the)d(equals)h(sign)g Fo(=)f FE(joins)g(the)h(k)m(ey)g(\(i.e.,)j
+FA(long)p 2448 4185 28 4 v 41 w(name)5 b FE(\))38 b(to)g(the)f(v)-5
 b(alue)38 b(in)g(an)f(unin-)150 4295 y(terruptible)32
 b(text)i(blo)s(c)m(k.)48 b(Exp)s(erience)33 b(sho)m(ws)f(that)h(users)f
 (are)h(less)g(lik)m(ely)h(to)g(mis-parse)e(commands)150
 4404 y(when)d(restricted)i(to)h(this)e(form.)275 4568
-y FC(GNU)d FD(implemen)m(ts)f(a)h(sup)s(erset)e(of)i(the)f
-FC(POSIX)g FD(standard)g(whic)m(h)g(allo)m(ws)h(an)m(y)g(unam)m
+y FD(GNU)d FE(implemen)m(ts)f(a)h(sup)s(erset)e(of)i(the)f
+FD(POSIX)g FE(standard)g(whic)m(h)g(allo)m(ws)h(an)m(y)g(unam)m
 (biguous)f(trun-)150 4678 y(cation)32 b(of)e(a)h(v)-5
-b(alid)31 b(option)g(to)g(b)s(e)e(used.)390 4841 y Fy(ncks)47
+b(alid)31 b(option)g(to)g(b)s(e)e(used.)390 4841 y Fz(ncks)47
 b(-D)g(3)g(in.nc)381 b(#)47 b(Short)g(option)390 4951
 y(ncks)g(--dbg_lvl=3)d(in.nc)j(#)g(Long)g(option,)f(full)g(form)p
-150 5066 1200 4 v 199 5134 a Ft(1)307 5166 y Fs(If)33
-b(a)h Fr(getopt_long)h Fs(function)e(cannot)g(b)r(e)g(found)f(on)h(the)
-g(system,)i Fp(NCO)d Fs(will)j(use)e(the)f Fr(getopt_long)k
-Fs(from)d(the)275 5253 y Fr(my_getopt)f Fs(pac)n(k)l(age)e(b)n(y)g
-(Benjamin)h(Sittler)f Fr(bsittler at iname)t(.)s(com)p Fs(.)52
-b(This)31 b(is)g Fp(BSD)p Fs(-licensed)g(soft)n(w)n(are)h(a)n(v)l
-(ailable)275 5340 y(from)26 b Fr(http://www.geocities.com/Rese)q(arch)q
-(Trian)q(gle/)q(Node/)q(9405)q(/#my)q(_geto)q(pt)p Fs(.)p
+150 5066 1200 4 v 199 5134 a Fu(1)307 5166 y Ft(If)33
+b(a)h Fs(getopt_long)h Ft(function)e(cannot)g(b)r(e)g(found)f(on)h(the)
+g(system,)i Fq(NCO)d Ft(will)j(use)e(the)f Fs(getopt_long)k
+Ft(from)d(the)275 5253 y Fs(my_getopt)f Ft(pac)n(k)l(age)e(b)n(y)g
+(Benjamin)h(Sittler)f Fs(bsittler at iname)t(.)s(com)p Ft(.)52
+b(This)31 b(is)g Fq(BSD)p Ft(-licensed)g(soft)n(w)n(are)h(a)n(v)l
+(ailable)275 5340 y(from)26 b Fs(http://www.geocities.com/Rese)q(arch)q
+(Trian)q(gle/)q(Node/)q(9405)q(/#my)q(_geto)q(pt)p Ft(.)p
 eop end
 %%Page: 28 34
-TeXDict begin 28 33 bop 150 -116 a FD(28)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(ncks)47 b(--dbg=3)e(in.nc)238
+TeXDict begin 28 33 bop 150 -116 a FE(28)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(ncks)47 b(--dbg=3)e(in.nc)238
 b(#)47 b(Long)g(option,)f(unambiguous)e(truncation)390
 408 y(ncks)j(--db=3)f(in.nc)285 b(#)47 b(Long)g(option,)f(unambiguous)e
 (truncation)390 518 y(ncks)j(--d=3)f(in.nc)333 b(#)47
-b(Long)g(option,)f(ambiguous)f(truncation)150 682 y FD(The)35
+b(Long)g(option,)f(ambiguous)f(truncation)150 682 y FE(The)35
 b(\014rst)f(four)h(examples)g(are)h(equiv)-5 b(alen)m(t)37
 b(and)d(will)i(w)m(ork)f(as)h(exp)s(ected.)55 b(The)35
 b(\014nal)g(example)h(will)150 791 y(exit)26 b(with)g(an)f(error)g
-(since)h Fy(ncks)e FD(cannot)i(disam)m(biguate)h(whether)e(`)p
-Fy(--d)p FD(')g(is)h(in)m(tended)f(as)h(a)g(truncation)150
-901 y(of)31 b(`)p Fy(--dbg_lvl)p FD(',)d(of)j(`)p Fy(--dimension)p
-FD(',)d(or)i(of)h(some)f(other)h(long)g(option.)275 1065
-y FC(NCO)23 b FD(pro)m(vides)h(man)m(y)g(long)h(options)f(for)g(common)
+(since)h Fz(ncks)e FE(cannot)i(disam)m(biguate)h(whether)e(`)p
+Fz(--d)p FE(')g(is)h(in)m(tended)f(as)h(a)g(truncation)150
+901 y(of)31 b(`)p Fz(--dbg_lvl)p FE(',)d(of)j(`)p Fz(--dimension)p
+FE(',)d(or)i(of)h(some)f(other)h(long)g(option.)275 1065
+y FD(NCO)23 b FE(pro)m(vides)h(man)m(y)g(long)h(options)f(for)g(common)
 g(switc)m(hes.)39 b(F)-8 b(or)25 b(example,)h(the)e(debugging)g(lev)m
 (el)150 1174 y(ma)m(y)k(b)s(e)f(set)h(in)f(all)i(op)s(erators)f(with)f
-(an)m(y)h(of)g(the)f(switc)m(hes)i(`)p Fy(-D)p FD(',)f(`)p
-Fy(--debug-level)p FD(',)d(or)j(`)p Fy(--dbg_lvl)p FD('.)150
+(an)m(y)h(of)g(the)f(switc)m(hes)i(`)p Fz(-D)p FE(',)f(`)p
+Fz(--debug-level)p FE(',)d(or)j(`)p Fz(--dbg_lvl)p FE('.)150
 1284 y(This)21 b(\015exibilit)m(y)i(allo)m(ws)h(users)d(to)h(c)m(ho)s
 (ose)h(their)f(fa)m(v)m(orite)i(mnemonic.)38 b(F)-8 b(or)23
-b(some,)h(it)f(will)f(b)s(e)f(`)p Fy(--debug)p FD(')150
+b(some,)h(it)f(will)f(b)s(e)f(`)p Fz(--debug)p FE(')150
 1393 y(\(an)29 b(unam)m(biguous)f(truncation)h(of)f(`)p
-Fy(--debug-level)p FD(',)f(and)h(other)g(will)h(prefer)f(`)p
-Fy(--dbg)p FD('.)40 b(In)m(teractiv)m(e)150 1503 y(users)34
+Fz(--debug-level)p FE(',)f(and)h(other)g(will)h(prefer)f(`)p
+Fz(--dbg)p FE('.)40 b(In)m(teractiv)m(e)150 1503 y(users)34
 b(usually)g(prefer)g(the)h(minimal)g(amoun)m(t)g(of)g(t)m(yping,)h
-(i.e.,)h(`)p Fy(-D)p FD('.)54 b(W)-8 b(e)36 b(recommend)e(that)h
+(i.e.,)h(`)p Fz(-D)p FE('.)54 b(W)-8 b(e)36 b(recommend)e(that)h
 (scripts)150 1613 y(whic)m(h)30 b(are)h(re-usable)f(emplo)m(y)i(some)e
 (form)g(of)h(the)f(long)h(options)g(for)f(future)g(main)m(tainabilit)m
 (y)-8 b(.)275 1776 y(This)34 b(man)m(ual)h(generally)h(uses)f(the)g
@@ -14276,151 +14502,151 @@ b(is)h(for)g(historical)150 1886 y(reasons)21 b(and)f(to)h(conserv)m(e)
 h(space)f(in)f(prin)m(ted)h(output.)37 b(Users)20 b(are)h(exp)s(ected)g
 (to)h(pic)m(k)f(the)g(unam)m(biguous)150 1995 y(truncation)31
 b(of)f(eac)m(h)i(option)f(name)f(that)h(most)g(suits)f(their)g(taste.)
-150 2241 y FB(3.5)68 b(Sp)t(ecifying)45 b(Input)f(Files)150
-2375 y Fk(\013)p 200 2375 3554 4 v 3553 w(\010)p 150
-2979 4 557 v 178 2516 a FD(Av)-5 b(ailabilit)m(y)33 b(\()p
-Fy(-n)p FD(\):)41 b Fy(nces)p FD(,)29 b Fy(ncecat)p FD(,)g
-Fy(ncra)p FD(,)h Fy(ncrcat)178 2625 y FD(Av)-5 b(ailabilit)m(y)33
-b(\()p Fy(-p)p FD(\):)41 b(All)31 b(op)s(erators)178
-2735 y(Short)f(options:)41 b(`)p Fy(-n)p FD(',)31 b(`)p
-Fy(-p)p FD(')178 2845 y(Long)g(options:)41 b(`)p Fy(--nintap)p
-FD(',)29 b(`)p Fy(--pth)p FD(',)g(`)p Fy(--path)p FD(')p
-3803 2979 V 150 3030 a Fk(\012)p 200 3030 3554 4 v 3553
-w(\011)275 3205 y FD(It)37 b(is)f(imp)s(ortan)m(t)h(that)h(users)e(b)s
+150 2241 y FC(3.5)68 b(Sp)t(ecifying)45 b(Input)f(Files)150
+2375 y Fl(\013)p 200 2375 3554 4 v 3553 w(\010)p 150
+2979 4 557 v 178 2516 a FE(Av)-5 b(ailabilit)m(y)33 b(\()p
+Fz(-n)p FE(\):)41 b Fz(nces)p FE(,)29 b Fz(ncecat)p FE(,)g
+Fz(ncra)p FE(,)h Fz(ncrcat)178 2625 y FE(Av)-5 b(ailabilit)m(y)33
+b(\()p Fz(-p)p FE(\):)41 b(All)31 b(op)s(erators)178
+2735 y(Short)f(options:)41 b(`)p Fz(-n)p FE(',)31 b(`)p
+Fz(-p)p FE(')178 2845 y(Long)g(options:)41 b(`)p Fz(--nintap)p
+FE(',)29 b(`)p Fz(--pth)p FE(',)g(`)p Fz(--path)p FE(')p
+3803 2979 V 150 3030 a Fl(\012)p 200 3030 3554 4 v 3553
+w(\011)275 3205 y FE(It)37 b(is)f(imp)s(ortan)m(t)h(that)h(users)e(b)s
 (e)g(able)i(to)f(sp)s(ecify)g(m)m(ultiple)g(input)f(\014les)h(without)g
 (t)m(yping)g(ev)m(ery)150 3315 y(\014lename)e(in)g(full,)h(often)f(a)g
 (tedious)g(task)h(ev)m(en)g(b)m(y)e(graduate)i(studen)m(t)f(standards.)
 53 b(There)34 b(are)i(four)150 3424 y(di\013eren)m(t)24
 b(w)m(a)m(ys)h(of)e(sp)s(ecifying)h(input)f(\014les)g(to)i
-FC(NCO)p FD(:)37 b(explicitly)25 b(t)m(yping)f(eac)m(h,)j(using)c
-FC(UNIX)h FD(shell)g(wild-)150 3534 y(cards,)g(and)e(using)g(the)h
-FC(NCO)f FD(`)p Fy(-n)p FD(')g(and)g(`)p Fy(-p)p FD(')g(switc)m(hes)i
+FD(NCO)p FE(:)37 b(explicitly)25 b(t)m(yping)f(eac)m(h,)j(using)c
+FD(UNIX)h FE(shell)g(wild-)150 3534 y(cards,)g(and)e(using)g(the)h
+FD(NCO)f FE(`)p Fz(-n)p FE(')g(and)g(`)p Fz(-p)p FE(')g(switc)m(hes)i
 (\(or)e(their)h(long)g(option)g(equiv)-5 b(alen)m(ts,)26
-b(`)p Fy(--nintap)p FD(')150 3643 y(or)h(`)p Fy(--pth)p
-FD(')f(and)g(`)p Fy(--path)p FD(',)h(resp)s(ectiv)m(ely\).)41
+b(`)p Fz(--nintap)p FE(')150 3643 y(or)h(`)p Fz(--pth)p
+FE(')f(and)g(`)p Fz(--path)p FE(',)h(resp)s(ectiv)m(ely\).)41
 b(T)-8 b(ec)m(hniques)27 b(to)g(augmen)m(t)h(these)f(metho)s(ds)g(to)g
 (sp)s(ecify)g(ar-)150 3753 y(bitrary)36 b(n)m(um)m(b)s(ers)f(\(e.g.,)40
 b(thousands\))c(and)f(patterns)i(of)f(\014lenames)h(are)g(discussed)e
 (separately)j(\(see)150 3863 y(Section)31 b(2.7)h([Large)f(Num)m(b)s
 (ers)e(of)i(Files],)h(page)f(19\).)275 4026 y(T)-8 b(o)34
 b(illustrate)h(these)g(metho)s(ds,)f(consider)g(the)g(simple)g(problem)
-g(of)g(using)f Fy(ncra)g FD(to)i(a)m(v)m(erage)i(\014v)m(e)150
-4136 y(input)c(\014les,)j Fy(85.nc)p FD(,)e Fy(86.nc)p
-FD(,)40 b(.)22 b(.)g(.)42 b Fy(89.nc)n FD(,)36 b(and)e(store)g(the)h
-(results)f(in)g Fy(8589.nc)p FD(.)51 b(Here)34 b(are)h(the)g(four)150
+g(of)g(using)f Fz(ncra)g FE(to)i(a)m(v)m(erage)i(\014v)m(e)150
+4136 y(input)c(\014les,)j Fz(85.nc)p FE(,)e Fz(86.nc)p
+FE(,)40 b(.)22 b(.)g(.)42 b Fz(89.nc)n FE(,)36 b(and)e(store)g(the)h
+(results)f(in)g Fz(8589.nc)p FE(.)51 b(Here)34 b(are)h(the)g(four)150
 4245 y(metho)s(ds)30 b(in)g(order.)40 b(They)30 b(pro)s(duce)f(iden)m
-(tical)j(answ)m(ers.)390 4409 y Fy(ncra)47 b(85.nc)f(86.nc)g(87.nc)h
+(tical)j(answ)m(ers.)390 4409 y Fz(ncra)47 b(85.nc)f(86.nc)g(87.nc)h
 (88.nc)f(89.nc)g(8589.nc)390 4519 y(ncra)h(8[56789].nc)d(8589.nc)390
-4628 y(ncra)j(-p)g Fn(input-path)e Fy(85.nc)h(86.nc)h(87.nc)f(88.nc)g
+4628 y(ncra)j(-p)g Fo(input-path)e Fz(85.nc)h(86.nc)h(87.nc)f(88.nc)g
 (89.nc)h(8589.nc)390 4738 y(ncra)g(-n)g(5,2,1)f(85.nc)h(8589.nc)275
-4902 y FD(The)40 b(\014rst)g(metho)s(d)g(\(explicitly)j(sp)s(ecifying)e
+4902 y FE(The)40 b(\014rst)g(metho)s(d)g(\(explicitly)j(sp)s(ecifying)e
 (all)g(\014lenames\))g(w)m(orks)g(b)m(y)g(brute)f(force.)73
 b(The)40 b(sec-)150 5011 y(ond)d(metho)s(d)g(relies)h(on)f(the)h(op)s
-(erating)f(system)h(shell)g(to)g Fz(glob)i FD(\(expand\))d(the)h
-Fz(regular)f(expression)150 5121 y Fy(8[56789].nc)p FD(.)g(The)27
+(erating)f(system)h(shell)g(to)g FA(glob)i FE(\(expand\))d(the)h
+FA(regular)f(expression)150 5121 y Fz(8[56789].nc)p FE(.)g(The)27
 b(shell)i(then)e(passes)h(the)g(v)-5 b(alid)29 b(\014lenames)f(\(those)
 g(whic)m(h)g(matc)m(h)h(the)f(regular)g(ex-)150 5230
-y(pansion\))c(to)h Fy(ncra)p FD(.)37 b(In)23 b(this)h(case)h
-Fy(ncra)e FD(nev)m(er)h(kno)m(ws)g(that)h(a)f(regular)g(expression)g(w)
+y(pansion\))c(to)h Fz(ncra)p FE(.)37 b(In)23 b(this)h(case)h
+Fz(ncra)e FE(nev)m(er)h(kno)m(ws)g(that)h(a)f(regular)g(expression)g(w)
 m(as)g(used,)h(b)s(ecause)150 5340 y(the)i(shell)h(in)m(tercepts)g(and)
 e(expands)g(and)h(matc)m(hes)h(the)f(regular)h(expression)f(b)s(efore)f
-Fy(ncra)g FD(is)h(actually)p eop end
+Fz(ncra)g FE(is)h(actually)p eop end
 %%Page: 29 35
-TeXDict begin 29 34 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(29)150 299 y(in)m(v)m(ok)m(ed.)71
-b(The)39 b(third)g(metho)s(d)g(uses)h(the)g(`)p Fy(-p)30
-b Fn(input-path)p FD(')37 b(argumen)m(t)j(to)h(sp)s(ecify)e(the)h
+TeXDict begin 29 34 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(29)150 299 y(in)m(v)m(ok)m(ed.)71
+b(The)39 b(third)g(metho)s(d)g(uses)h(the)g(`)p Fz(-p)30
+b Fo(input-path)p FE(')37 b(argumen)m(t)j(to)h(sp)s(ecify)e(the)h
 (directory)150 408 y(where)35 b(all)h(the)f(input)g(\014les)g(reside.)
-55 b FC(NCO)35 b FD(prep)s(ends)e Fz(input-path)i FD(\(e.g.,)j
-Fy(/data/username/model)p FD(\))150 518 y(to)c(all)g
-Fz(input-\014les)i FD(\(though)d(not)g(to)h Fz(output-\014le)5
-b FD(\).)49 b(Th)m(us,)33 b(using)g(`)p Fy(-p)p FD(',)h(the)f(path)g
+55 b FD(NCO)35 b FE(prep)s(ends)e FA(input-path)i FE(\(e.g.,)j
+Fz(/data/username/model)p FE(\))150 518 y(to)c(all)g
+FA(input-\014les)i FE(\(though)d(not)g(to)h FA(output-\014le)5
+b FE(\).)49 b(Th)m(us,)33 b(using)g(`)p Fz(-p)p FE(',)h(the)f(path)g
 (to)h(an)m(y)f(n)m(um)m(b)s(er)f(of)150 628 y(input)j(\014les)h(need)g
 (only)g(b)s(e)f(sp)s(eci\014ed)h(once.)58 b(Note)37 b
-Fz(input-path)e FD(need)h(not)g(end)g(with)f(`)p Fy(/)p
-FD(';)40 b(the)c(`)p Fy(/)p FD(')g(is)150 737 y(automatically)d
+FA(input-path)e FE(need)h(not)g(end)g(with)f(`)p Fz(/)p
+FE(';)40 b(the)c(`)p Fz(/)p FE(')g(is)150 737 y(automatically)d
 (generated)f(if)e(necessary)-8 b(.)275 911 y(The)19 b(last)j(metho)s(d)
-e(passes)g(\(with)g(`)p Fy(-n)p FD('\))h(syn)m(tax)g(concisely)h
+e(passes)g(\(with)g(`)p Fz(-n)p FE('\))h(syn)m(tax)g(concisely)h
 (describing)e(the)g(en)m(tire)i(set)f(of)f(\014lenames)3687
-878 y Ft(2)3725 911 y FD(.)150 1021 y(This)k(option)h(is)f(only)h(a)m
-(v)-5 b(ailable)27 b(with)d(the)h Fz(m)m(ulti-\014le)g(op)s(erators)t
-FD(:)38 b Fy(ncra)p FD(,)25 b Fy(ncrcat)p FD(,)f Fy(nces)p
-FD(,)g(and)g Fy(ncecat)p FD(.)150 1130 y(By)39 b(de\014nition,)h(m)m
+878 y Fu(2)3725 911 y FE(.)150 1021 y(This)k(option)h(is)f(only)h(a)m
+(v)-5 b(ailable)27 b(with)d(the)h FA(m)m(ulti-\014le)g(op)s(erators)t
+FE(:)38 b Fz(ncra)p FE(,)25 b Fz(ncrcat)p FE(,)f Fz(nces)p
+FE(,)g(and)g Fz(ncecat)p FE(.)150 1130 y(By)39 b(de\014nition,)h(m)m
 (ulti-\014le)g(op)s(erators)e(are)h(able)g(to)h(pro)s(cess)e(an)g
-(arbitrary)g(n)m(um)m(b)s(er)g(of)g Fz(input-\014les)p
-FD(.)150 1240 y(This)46 b(option)h(is)f(v)m(ery)h(useful)f(for)g
+(arbitrary)g(n)m(um)m(b)s(er)g(of)g FA(input-\014les)p
+FE(.)150 1240 y(This)46 b(option)h(is)f(v)m(ery)h(useful)f(for)g
 (abbreviating)h(lists)g(of)g(\014lenames)f(represen)m(table)h(as)g
-Fz(alphan)m(u-)150 1350 y(meric)p 373 1350 28 4 v 40
-w(pre\014x)6 b Fy(+)p Fz(n)m(umeric)p 1009 1350 V 39
-w(su\016x)g Fy(+.+)p Fz(\014let)m(yp)s(e)40 b FD(where)c
-Fz(alphan)m(umeric)p 2541 1350 V 40 w(pre\014x)41 b FD(is)36
+FA(alphan)m(u-)150 1350 y(meric)p 373 1350 28 4 v 40
+w(pre\014x)6 b Fz(+)p FA(n)m(umeric)p 1009 1350 V 39
+w(su\016x)g Fz(+.+)p FA(\014let)m(yp)s(e)40 b FE(where)c
+FA(alphan)m(umeric)p 2541 1350 V 40 w(pre\014x)41 b FE(is)36
 b(a)g(string)g(of)g(arbitrary)150 1459 y(length)41 b(and)f(comp)s
-(osition,)45 b Fz(n)m(umeric)p 1494 1459 V 40 w(su\016x)h
-FD(is)41 b(a)g(\014xed)f(width)g(\014eld)h(of)g(digits,)j(and)c
-Fz(\014let)m(yp)s(e)47 b FD(is)41 b(a)150 1569 y(standard)g(\014let)m
+(osition,)45 b FA(n)m(umeric)p 1494 1459 V 40 w(su\016x)h
+FE(is)41 b(a)g(\014xed)f(width)g(\014eld)h(of)g(digits,)j(and)c
+FA(\014let)m(yp)s(e)47 b FE(is)41 b(a)150 1569 y(standard)g(\014let)m
 (yp)s(e)i(indicator.)77 b(F)-8 b(or)44 b(example,)i(in)c(the)g(\014le)h
-Fy(ccm3_h0001.nc)p FD(,)f(w)m(e)g(ha)m(v)m(e)i Fz(alphan)m(u-)150
-1678 y(meric)p 373 1678 V 40 w(pre\014x)36 b FD(=)30
-b Fy(ccm3_h)p FD(,)f Fz(n)m(umeric)p 1434 1678 V 40 w(su\016x)36
-b FD(=)30 b Fy(0001)p FD(,)f(and)h Fz(\014let)m(yp)s(e)36
-b FD(=)30 b Fy(nc)p FD(.)275 1852 y FC(NCO)41 b FD(deco)s(des)g(lists)h
+Fz(ccm3_h0001.nc)p FE(,)f(w)m(e)g(ha)m(v)m(e)i FA(alphan)m(u-)150
+1678 y(meric)p 373 1678 V 40 w(pre\014x)36 b FE(=)30
+b Fz(ccm3_h)p FE(,)f FA(n)m(umeric)p 1434 1678 V 40 w(su\016x)36
+b FE(=)30 b Fz(0001)p FE(,)f(and)h FA(\014let)m(yp)s(e)36
+b FE(=)30 b Fz(nc)p FE(.)275 1852 y FD(NCO)41 b FE(deco)s(des)g(lists)h
 (of)g(suc)m(h)f(\014lenames)g(enco)s(ded)g(using)g(the)h(`)p
-Fy(-n)p FD(')f(syn)m(tax.)75 b(The)41 b(simpler)g(\(3-)150
-1962 y(argumen)m(t\))31 b(`)p Fy(-n)p FD(')f(usage)h(tak)m(es)h(the)e
-(form)g Fy(-n)f Fn(file_number)p Fy(,)p Fn(digit_number)p
-Fy(,)p Fn(n)o(umer)o(ic_)o(incr)o(emen)o(t)150 2071 y
-FD(where)g Fz(\014le)p 534 2071 V 41 w(n)m(um)m(b)s(er)35
-b FD(is)30 b(the)g(n)m(um)m(b)s(er)e(of)j(\014les,)f
-Fz(digit)p 1981 2071 V 41 w(n)m(um)m(b)s(er)35 b FD(is)30
+Fz(-n)p FE(')f(syn)m(tax.)75 b(The)41 b(simpler)g(\(3-)150
+1962 y(argumen)m(t\))31 b(`)p Fz(-n)p FE(')f(usage)h(tak)m(es)h(the)e
+(form)g Fz(-n)f Fo(file_number)p Fz(,)p Fo(digit_number)p
+Fz(,)p Fo(n)o(umer)o(ic_)o(incr)o(emen)o(t)150 2071 y
+FE(where)g FA(\014le)p 534 2071 V 41 w(n)m(um)m(b)s(er)35
+b FE(is)30 b(the)g(n)m(um)m(b)s(er)e(of)j(\014les,)f
+FA(digit)p 1981 2071 V 41 w(n)m(um)m(b)s(er)35 b FE(is)30
 b(the)g(\014xed)f(n)m(um)m(b)s(er)g(of)h(n)m(umeric)f(dig-)150
-2181 y(its)39 b(comprising)g(the)h Fz(n)m(umeric)p 1242
-2181 V 40 w(su\016x)p FD(,)g(and)f Fz(n)m(umeric)p 2060
-2181 V 39 w(incremen)m(t)j FD(is)d(the)g(constan)m(t,)k(in)m(teger-v)-5
+2181 y(its)39 b(comprising)g(the)h FA(n)m(umeric)p 1242
+2181 V 40 w(su\016x)p FE(,)g(and)f FA(n)m(umeric)p 2060
+2181 V 39 w(incremen)m(t)j FE(is)d(the)g(constan)m(t,)k(in)m(teger-v)-5
 b(alued)150 2291 y(di\013erence)36 b(b)s(et)m(w)m(een)f(the)h
-Fz(n)m(umeric)p 1401 2291 V 40 w(su\016x)k FD(of)35 b(an)m(y)h(t)m(w)m
+FA(n)m(umeric)p 1401 2291 V 40 w(su\016x)k FE(of)35 b(an)m(y)h(t)m(w)m
 (o)g(consecutiv)m(e)h(\014les.)55 b(The)35 b(v)-5 b(alue)36
-b(of)f Fz(alphan)m(u-)150 2400 y(meric)p 373 2400 V 40
-w(pre\014x)k FD(is)33 b(tak)m(en)h(from)f(the)g(input)g(\014le,)h(whic)
+b(of)f FA(alphan)m(u-)150 2400 y(meric)p 373 2400 V 40
+w(pre\014x)k FE(is)33 b(tak)m(en)h(from)f(the)g(input)g(\014le,)h(whic)
 m(h)f(serv)m(es)g(as)h(a)f(template)i(for)e(deco)s(ding)g(the)h
 (\014le-)150 2510 y(names.)40 b(In)27 b(the)h(example)h(ab)s(o)m(v)m
-(e,)h(the)e(enco)s(ding)g Fy(-n)i(5,2,1)c FD(along)j(with)f(the)g
-(input)f(\014le)h(name)g Fy(85.nc)150 2619 y FD(tells)37
-b FC(NCO)f FD(to)h(construct)g(\014v)m(e)f(\(5\))i(\014lenames)e(iden)m
-(tical)i(to)f(the)f(template)i Fy(85.nc)d FD(except)i(that)g(the)150
+(e,)h(the)e(enco)s(ding)g Fz(-n)i(5,2,1)c FE(along)j(with)f(the)g
+(input)f(\014le)h(name)g Fz(85.nc)150 2619 y FE(tells)37
+b FD(NCO)f FE(to)h(construct)g(\014v)m(e)f(\(5\))i(\014lenames)e(iden)m
+(tical)i(to)f(the)f(template)i Fz(85.nc)d FE(except)i(that)g(the)150
 2729 y(\014nal)26 b(t)m(w)m(o)h(\(2\))g(digits)f(are)h(a)f(n)m(umeric)g
 (su\016x)f(to)i(b)s(e)e(incremen)m(ted)h(b)m(y)g(one)g(\(1\))h(for)f
 (eac)m(h)h(successiv)m(e)h(\014le.)150 2839 y(Curren)m(tly)j
-Fz(\014let)m(yp)s(e)38 b FD(ma)m(y)33 b(b)s(e)e(either)i(b)s(e)e(empt)m
-(y)-8 b(,)34 b Fy(nc)p FD(,)e Fy(cdf)p FD(,)g Fy(hdf)p
-FD(,)g(or)g Fy(hd5)p FD(.)45 b(If)32 b(presen)m(t,)h(these)g
-Fz(\014let)m(yp)s(e)150 2948 y FD(su\016xes)f(\(and)g(the)g(preceding)g
-Fy(.)p FD(\))h(are)g(ignored)f(b)m(y)g FC(NCO)g FD(as)h(it)g(uses)f
-(the)g(`)p Fy(-n)p FD(')g(argumen)m(ts)h(to)g(lo)s(cate,)150
-3058 y(ev)-5 b(aluate,)32 b(and)e(compute)h(the)f Fz(n)m(umeric)p
-1555 3058 V 40 w(su\016x)36 b FD(comp)s(onen)m(t)31 b(of)f
-(\014lenames.)275 3232 y(Recen)m(tly)45 b(the)e(`)p Fy(-n)p
-FD(')h(option)g(has)f(b)s(een)g(extended)h(to)g(allo)m(w)h(con)m(v)m
+FA(\014let)m(yp)s(e)38 b FE(ma)m(y)33 b(b)s(e)e(either)i(b)s(e)e(empt)m
+(y)-8 b(,)34 b Fz(nc)p FE(,)e Fz(cdf)p FE(,)g Fz(hdf)p
+FE(,)g(or)g Fz(hd5)p FE(.)45 b(If)32 b(presen)m(t,)h(these)g
+FA(\014let)m(yp)s(e)150 2948 y FE(su\016xes)f(\(and)g(the)g(preceding)g
+Fz(.)p FE(\))h(are)g(ignored)f(b)m(y)g FD(NCO)g FE(as)h(it)g(uses)f
+(the)g(`)p Fz(-n)p FE(')g(argumen)m(ts)h(to)g(lo)s(cate,)150
+3058 y(ev)-5 b(aluate,)32 b(and)e(compute)h(the)f FA(n)m(umeric)p
+1555 3058 V 40 w(su\016x)36 b FE(comp)s(onen)m(t)31 b(of)f
+(\014lenames.)275 3232 y(Recen)m(tly)45 b(the)e(`)p Fz(-n)p
+FE(')h(option)g(has)f(b)s(een)g(extended)h(to)g(allo)m(w)h(con)m(v)m
 (enien)m(t)g(sp)s(eci\014cation)g(of)f(\014le-)150 3341
 y(names)f(with)g(\\circular")h(c)m(haracteristics.)82
 b(This)42 b(means)h(it)h(is)f(no)m(w)g(p)s(ossible)f(for)h
-FC(NCO)g FD(to)h(auto-)150 3451 y(matically)39 b(generate)g
+FD(NCO)g FE(to)h(auto-)150 3451 y(matically)39 b(generate)g
 (\014lenames)f(whic)m(h)f(incremen)m(t)h(regularly)g(un)m(til)f(a)h(sp)
 s(eci\014ed)f(maxim)m(um)g(v)-5 b(alue,)150 3560 y(and)44
 b(then)f(wrap)h(bac)m(k)h(to)g(b)s(egin)e(again)i(at)g(a)g(sp)s
 (eci\014ed)e(minim)m(um)h(v)-5 b(alue.)82 b(The)44 b(corresp)s(onding)
-150 3670 y(`)p Fy(-n)p FD(')37 b(usage)h(b)s(ecomes)f(more)h(complex,)i
+150 3670 y(`)p Fz(-n)p FE(')37 b(usage)h(b)s(ecomes)f(more)h(complex,)i
 (taking)e(one)g(or)f(t)m(w)m(o)h(additional)h(argumen)m(ts)e(for)g(a)h
 (total)h(of)150 3780 y(four)20 b(or)h(\014v)m(e,)i(resp)s(ectiv)m(ely:)
-37 b Fy(-n)30 b Fn(file_number)p Fy(,)p Fn(digit_number)p
-Fy(,)o Fn(nume)o(ric)o(_inc)o(reme)o(nt)p Fy([)o(,)p
-Fn(num)o(eric)o(_)150 3889 y(max)p Fy([,)p Fn(numeric_min)p
-Fy(]])c FD(where)k Fz(n)m(umeric)p 1625 3889 V 40 w(max)p
-FD(,)h(if)f(presen)m(t,)h(is)g(the)f(maxim)m(um)h(in)m(teger-v)-5
-b(alue)32 b(of)f Fz(n)m(u-)150 3999 y(meric)p 373 3999
-V 40 w(su\016x)41 b FD(and)34 b Fz(n)m(umeric)p 1162
-3999 V 40 w(min)p FD(,)h(if)g(presen)m(t,)h(is)f(the)g(minim)m(um)f(in)
-m(teger-v)-5 b(alue)37 b(of)e Fz(n)m(umeric)p 3481 3999
-V 40 w(su\016x)p FD(.)150 4108 y(Consider,)48 b(for)d(example,)k(the)c
+37 b Fz(-n)30 b Fo(file_number)p Fz(,)p Fo(digit_number)p
+Fz(,)o Fo(nume)o(ric)o(_inc)o(reme)o(nt)p Fz([)o(,)p
+Fo(num)o(eric)o(_)150 3889 y(max)p Fz([,)p Fo(numeric_min)p
+Fz(]])c FE(where)k FA(n)m(umeric)p 1625 3889 V 40 w(max)p
+FE(,)h(if)f(presen)m(t,)h(is)g(the)f(maxim)m(um)h(in)m(teger-v)-5
+b(alue)32 b(of)f FA(n)m(u-)150 3999 y(meric)p 373 3999
+V 40 w(su\016x)41 b FE(and)34 b FA(n)m(umeric)p 1162
+3999 V 40 w(min)p FE(,)h(if)g(presen)m(t,)h(is)f(the)g(minim)m(um)f(in)
+m(teger-v)-5 b(alue)37 b(of)e FA(n)m(umeric)p 3481 3999
+V 40 w(su\016x)p FE(.)150 4108 y(Consider,)48 b(for)d(example,)k(the)c
 (problem)g(of)g(sp)s(ecifying)g(non-consecutiv)m(e)h(input)e(\014les)h
 (where)g(the)150 4218 y(\014lename)37 b(su\016xes)f(end)h(with)f(the)i
 (mon)m(th)f(index.)60 b(In)36 b(climate)j(mo)s(deling)e(it)g(is)g
@@ -14428,76 +14654,76 @@ V 40 w(su\016x)p FD(.)150 4108 y(Consider,)48 b(for)d(example,)k(the)c
 (a)m(v)m(erages)i(whic)m(h)d(con)m(tain)h(the)f(a)m(v)m(erages)j(of)d
 (the)h(mon)m(ths)f(June{July{)150 4437 y(August,)k(and)g(Decem)m(b)s
 (er{Jan)m(uary{F)-8 b(ebruary)g(,)33 b(resp)s(ectiv)m(ely:)390
-4611 y Fy(ncra)47 b(-n)g(3,2,1)f(85_06.nc)g(85_0608.nc)390
+4611 y Fz(ncra)47 b(-n)g(3,2,1)f(85_06.nc)g(85_0608.nc)390
 4721 y(ncra)h(-n)g(3,2,1,12)e(85_12.nc)h(85_1202.nc)390
 4830 y(ncra)h(-n)g(3,2,1,12,1)e(85_12.nc)g(85_1202.nc)p
-150 4979 1200 4 v 199 5047 a Ft(2)275 5078 y Fs(The)22
-b(`)p Fr(-n)p Fs(')i(option)e(is)h(a)g(bac)n(kw)n(ard-compatible)g(sup)
-r(erset)g(of)g(the)f Fr(NINTAP)i Fs(option)e(from)i(the)e
-Fp(NCAR)g(CCM)g Fs(Pro)r(cessor.)275 5166 y(The)27 b
-Fp(CCM)f Fs(Pro)r(cessor)k(w)n(as)e(custom-written)f(F)-6
+150 4979 1200 4 v 199 5047 a Fu(2)275 5078 y Ft(The)22
+b(`)p Fs(-n)p Ft(')i(option)e(is)h(a)g(bac)n(kw)n(ard-compatible)g(sup)
+r(erset)g(of)g(the)f Fs(NINTAP)i Ft(option)e(from)i(the)e
+Fq(NCAR)g(CCM)g Ft(Pro)r(cessor.)275 5166 y(The)27 b
+Fq(CCM)f Ft(Pro)r(cessor)k(w)n(as)e(custom-written)f(F)-6
 b(ortran)27 b(co)r(de)h(main)n(tained)f(for)h(man)n(y)e(y)n(ears)i(b)n
-(y)e(La)n(wrence)i(Buja)g(at)275 5253 y Fp(NCAR)p Fs(,)22
-b(and)g(phased-out)f(in)h(the)g(late)g(1990s.)35 b Fp(NCO)22
-b Fs(stole)h(some)g(ideas,)h(lik)n(e)e Fr(NINTAP)p Fs(-functionalit)n
-(y)-6 b(,)24 b(from)f(the)e Fp(CCM)275 5340 y Fs(Pro)r(cessor)27
+(y)e(La)n(wrence)i(Buja)g(at)275 5253 y Fq(NCAR)p Ft(,)22
+b(and)g(phased-out)f(in)h(the)g(late)g(1990s.)35 b Fq(NCO)22
+b Ft(stole)h(some)g(ideas,)h(lik)n(e)e Fs(NINTAP)p Ft(-functionalit)n
+(y)-6 b(,)24 b(from)f(the)e Fq(CCM)275 5340 y Ft(Pro)r(cessor)27
 b(capabilities.)p eop end
 %%Page: 30 36
-TeXDict begin 30 35 bop 150 -116 a FD(30)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(The)i(\014rst)g(example)h(sho)m(ws)
-g(that)g(three)g(argumen)m(ts)g(to)g(the)g(`)p Fy(-n)p
-FD(')g(option)g(su\016ce)g(to)g(sp)s(ecify)f(con-)150
-408 y(secutiv)m(e)g(mon)m(ths)e(\()p Fy(06,)g(07,)f(08)p
-FD(\))h(whic)m(h)g(do)h(not)f(\\wrap")h(bac)m(k)g(to)g(a)f(minim)m(um)g
+TeXDict begin 30 35 bop 150 -116 a FE(30)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(The)i(\014rst)g(example)h(sho)m(ws)
+g(that)g(three)g(argumen)m(ts)g(to)g(the)g(`)p Fz(-n)p
+FE(')g(option)g(su\016ce)g(to)g(sp)s(ecify)f(con-)150
+408 y(secutiv)m(e)g(mon)m(ths)e(\()p Fz(06,)g(07,)f(08)p
+FE(\))h(whic)m(h)g(do)h(not)f(\\wrap")h(bac)m(k)g(to)g(a)f(minim)m(um)g
 (v)-5 b(alue.)41 b(The)30 b(second)150 518 y(example)25
 b(sho)m(ws)e(ho)m(w)h(to)h(use)e(the)h(optional)h(fourth)e(and)g
-(\014fth)g(elemen)m(ts)j(of)e(the)g(`)p Fy(-n)p FD(')f(option)i(to)f
+(\014fth)g(elemen)m(ts)j(of)e(the)g(`)p Fz(-n)p FE(')f(option)i(to)f
 (sp)s(ecify)150 628 y(a)35 b(wrap)e(v)-5 b(alue.)54 b(The)33
-b(fourth)h(argumen)m(t)h(to)g(`)p Fy(-n)p FD(',)h(when)d(presen)m(t,)j
+b(fourth)h(argumen)m(t)h(to)g(`)p Fz(-n)p FE(',)h(when)d(presen)m(t,)j
 (sp)s(eci\014es)e(the)g(maxim)m(um)h(in)m(teger)150 737
-y(v)-5 b(alue)29 b(of)g Fz(n)m(umeric)p 807 737 28 4
-v 39 w(su\016x)p FD(.)40 b(In)27 b(the)i(example)g(the)g(maxim)m(um)f
+y(v)-5 b(alue)29 b(of)g FA(n)m(umeric)p 807 737 28 4
+v 39 w(su\016x)p FE(.)40 b(In)27 b(the)i(example)g(the)g(maxim)m(um)f
 (v)-5 b(alue)29 b(is)i(12,)e(and)f(will)h(b)s(e)f(formatted)h(as)150
-847 y Fy(12)g FD(in)h(the)g(\014lename)g(string.)41 b(The)29
-b(\014fth)g(argumen)m(t)i(to)f(`)p Fy(-n)p FD(',)h(when)e(presen)m(t,)h
+847 y Fz(12)g FE(in)h(the)g(\014lename)g(string.)41 b(The)29
+b(\014fth)g(argumen)m(t)i(to)f(`)p Fz(-n)p FE(',)h(when)e(presen)m(t,)h
 (sp)s(eci\014es)g(the)g(minim)m(um)150 956 y(in)m(teger)h(v)-5
-b(alue)30 b(of)g Fz(n)m(umeric)p 1109 956 V 40 w(su\016x)p
-FD(.)39 b(The)29 b(default)h(minim)m(um)f(\014lename)h(su\016x)f(is)h
+b(alue)30 b(of)g FA(n)m(umeric)p 1109 956 V 40 w(su\016x)p
+FE(.)39 b(The)29 b(default)h(minim)m(um)f(\014lename)h(su\016x)f(is)h
 (1,)g(whic)m(h)g(is)f(format-)150 1066 y(ted)35 b(as)f
-Fy(01)g FD(in)g(this)g(case.)54 b(Th)m(us)33 b(the)h(second)h(and)f
+Fz(01)g FE(in)g(this)g(case.)54 b(Th)m(us)33 b(the)h(second)h(and)f
 (third)f(examples)i(ha)m(v)m(e)g(the)g(same)g(e\013ect,)i(that)e(is,)
 150 1176 y(they)27 b(automatically)j(generate,)g(in)d(order,)h(the)f
-(\014lenames)g Fy(85_12.nc)p FD(,)f Fy(85_01.nc)p FD(,)g(and)h
-Fy(85_02.nc)e FD(as)150 1285 y(input)k(to)j FC(NCO)p
-FD(.)150 1548 y FB(3.6)68 b(Sp)t(ecifying)45 b(Output)g(Files)150
-1682 y Fk(\013)p 200 1682 3554 4 v 3553 w(\010)p 150
-2172 4 442 v 178 1818 a FD(Av)-5 b(ailabilit)m(y:)43
+(\014lenames)g Fz(85_12.nc)p FE(,)f Fz(85_01.nc)p FE(,)g(and)h
+Fz(85_02.nc)e FE(as)150 1285 y(input)k(to)j FD(NCO)p
+FE(.)150 1548 y FC(3.6)68 b(Sp)t(ecifying)45 b(Output)g(Files)150
+1682 y Fl(\013)p 200 1682 3554 4 v 3553 w(\010)p 150
+2172 4 442 v 178 1818 a FE(Av)-5 b(ailabilit)m(y:)43
 b(All)31 b(op)s(erators)178 1928 y(Short)f(options:)41
-b(`)p Fy(-o)p FD(')178 2037 y(Long)31 b(options:)41 b(`)p
-Fy(--fl_out)p FD(',)29 b(`)p Fy(--output)p FD(')p 3803
-2172 V 150 2223 a Fk(\012)p 200 2223 3554 4 v 3553 w(\011)275
-2404 y FC(NCO)f FD(commands)g(pro)s(duce)f(no)i(more)g(than)f(one)h
-(output)f(\014le,)h Fz(\015)p 2531 2404 28 4 v 40 w(out)p
-FD(.)40 b(T)-8 b(raditionally)g(,)31 b(users)d(sp)s(ec-)150
-2513 y(ify)33 b Fz(\015)p 341 2513 V 39 w(out)i FD(as)e(the)f(\014nal)h
+b(`)p Fz(-o)p FE(')178 2037 y(Long)31 b(options:)41 b(`)p
+Fz(--fl_out)p FE(',)29 b(`)p Fz(--output)p FE(')p 3803
+2172 V 150 2223 a Fl(\012)p 200 2223 3554 4 v 3553 w(\011)275
+2404 y FD(NCO)f FE(commands)g(pro)s(duce)f(no)i(more)g(than)f(one)h
+(output)f(\014le,)h FA(\015)p 2531 2404 28 4 v 40 w(out)p
+FE(.)40 b(T)-8 b(raditionally)g(,)31 b(users)d(sp)s(ec-)150
+2513 y(ify)33 b FA(\015)p 341 2513 V 39 w(out)i FE(as)e(the)f(\014nal)h
 (argumen)m(t)g(to)g(the)g(op)s(erator,)g(follo)m(wing)h(all)g(input)d
-(\014le)i(names.)47 b(This)32 b(is)h(the)150 2623 y Fz(p)s(ositional)i
-(argumen)m(t)j FD(metho)s(d)c(of)g(sp)s(ecifying)h(input)f(and)g(ouput)
+(\014le)i(names.)47 b(This)32 b(is)h(the)150 2623 y FA(p)s(ositional)i
+(argumen)m(t)j FE(metho)s(d)c(of)g(sp)s(ecifying)h(input)f(and)g(ouput)
 g(\014le)g(names.)54 b(The)34 b(p)s(ositional)i(ar-)150
 2733 y(gumen)m(t)29 b(metho)s(d)e(w)m(orks)h(w)m(ell)i(in)d(most)i
-(applications.)41 b FC(NCO)28 b FD(also)h(supp)s(orts)d(sp)s(ecifying)j
-Fz(\015)p 3348 2733 V 39 w(out)h FD(using)150 2842 y(the)h(command)f
-(line)g(switc)m(h)h(argumen)m(t)g(metho)s(d,)f(`)p Fy(-o)g
-Fn(fl_out)p FD('.)275 3012 y(Sp)s(ecifying)k Fz(\015)p
-773 3012 V 40 w(out)k FD(with)d(a)g(switc)m(h,)j(rather)d(than)g(as)h
-(a)g(p)s(ositional)g(argumen)m(t,)h(allo)m(ws)g Fz(\015)p
-3467 3012 V 40 w(out)g FD(to)150 3121 y(precede)28 b(input)f(\014les)h
+(applications.)41 b FD(NCO)28 b FE(also)h(supp)s(orts)d(sp)s(ecifying)j
+FA(\015)p 3348 2733 V 39 w(out)h FE(using)150 2842 y(the)h(command)f
+(line)g(switc)m(h)h(argumen)m(t)g(metho)s(d,)f(`)p Fz(-o)g
+Fo(fl_out)p FE('.)275 3012 y(Sp)s(ecifying)k FA(\015)p
+773 3012 V 40 w(out)k FE(with)d(a)g(switc)m(h,)j(rather)d(than)g(as)h
+(a)g(p)s(ositional)g(argumen)m(t,)h(allo)m(ws)g FA(\015)p
+3467 3012 V 40 w(out)g FE(to)150 3121 y(precede)28 b(input)f(\014les)h
 (in)g(the)g(argumen)m(t)h(list.)41 b(This)27 b(is)h(particularly)h
 (useful)e(with)h(m)m(ulti-\014le)h(op)s(erators)150 3231
 y(for)j(three)g(reasons.)46 b(Multi-\014le)34 b(op)s(erators)e(ma)m(y)h
 (b)s(e)e(in)m(v)m(ok)m(ed)j(with)e(h)m(undreds)d(\(or)k(more\))g
 (\014lenames.)150 3341 y(Visual)42 b(or)f(automatic)i(lo)s(cation)g(of)
-f Fz(\015)p 1533 3341 V 39 w(out)i FD(in)d(suc)m(h)g(a)g(list)h(is)g
+f FA(\015)p 1533 3341 V 39 w(out)i FE(in)d(suc)m(h)g(a)g(list)h(is)g
 (di\016cult)f(when)f(the)i(only)f(syn)m(tactic)150 3450
 y(distinction)32 b(b)s(et)m(w)m(een)g(input)e(and)g(output)h(\014les)g
 (is)g(their)g(p)s(osition.)43 b(Second,)32 b(sp)s(eci\014cation)g(of)f
@@ -14505,146 +14731,146 @@ y(distinction)32 b(b)s(et)m(w)m(een)g(input)e(and)g(output)h(\014les)g
 (di\016cult)i(\(see)g(Section)g(2.7)h([Large)f(Num)m(b)s(ers)e(of)i
 (Files],)j(page)d(19\).)39 b(Making)150 3669 y(the)28
 b(input)f(\014le)h(list)g(the)g(\014nal)g(argumen)m(t)g(to)g(an)g(op)s
-(erator)g(facilitates)j(using)c Fy(xargs)f FD(for)i(this)f(purp)s(ose.)
-150 3779 y(Some)36 b(alternativ)m(es)j(to)e Fy(xargs)e
-FD(are)i(v)m(ery)g(ugly)f(and)g(undesirable.)58 b(Finally)-8
-b(,)39 b(man)m(y)e(users)e(are)i(more)150 3888 y(comfortable)27
-b(sp)s(ecifying)e(output)g(\014les)g(with)h(`)p Fy(-o)k
-Fn(fl_out)p FD(')24 b(near)h(the)h(b)s(eginning)e(of)i(an)f(argumen)m
+(erator)g(facilitates)j(using)c Fz(xargs)f FE(for)i(this)f(purp)s(ose.)
+150 3779 y(Some)42 b(alternativ)m(es)i(to)e Fz(xargs)e
+FE(are)j(heinous)e(and)g(undesirable.)74 b(Finally)-8
+b(,)46 b(man)m(y)c(users)f(are)h(more)150 3888 y(comfortable)27
+b(sp)s(ecifying)e(output)g(\014les)g(with)h(`)p Fz(-o)k
+Fo(fl_out)p FE(')24 b(near)h(the)h(b)s(eginning)e(of)i(an)f(argumen)m
 (t)h(list.)150 3998 y(Compilers)k(and)g(link)m(ers)g(are)h(usually)f
 (in)m(v)m(ok)m(ed)i(this)e(w)m(a)m(y)-8 b(.)275 4168
-y(Users)34 b(should)g(sp)s(ecify)h Fz(\015)p 1181 4168
-V 40 w(out)i FD(using)d(either)i(\(not)f(b)s(oth\))g(metho)s(d.)54
-b(If)34 b Fz(\015)p 2876 4168 V 40 w(out)j FD(is)e(sp)s(eci\014ed)f(t)m
+y(Users)34 b(should)g(sp)s(ecify)h FA(\015)p 1181 4168
+V 40 w(out)i FE(using)d(either)i(\(not)f(b)s(oth\))g(metho)s(d.)54
+b(If)34 b FA(\015)p 2876 4168 V 40 w(out)j FE(is)e(sp)s(eci\014ed)f(t)m
 (wice)150 4277 y(\(once)f(with)e(the)g(switc)m(h)h(and)f(once)i(as)e
 (the)h(last)g(p)s(ositional)h(argumen)m(t\),)f(then)g(the)f(p)s
 (ositional)i(argu-)150 4387 y(men)m(t)e(tak)m(es)h(precedence.)150
-4650 y FB(3.7)68 b(Accessing)45 b(Remote)h(Files)150
-4784 y Fk(\013)p 200 4784 3554 4 v 3553 w(\010)p 150
-5274 4 442 v 178 4920 a FD(Av)-5 b(ailabilit)m(y:)43
+4650 y FC(3.7)68 b(Accessing)45 b(Remote)h(Files)150
+4784 y Fl(\013)p 200 4784 3554 4 v 3553 w(\010)p 150
+5274 4 442 v 178 4920 a FE(Av)-5 b(ailabilit)m(y:)43
 b(All)31 b(op)s(erators)178 5029 y(Short)f(options:)41
-b(`)p Fy(-p)p FD(',)31 b(`)p Fy(-l)p FD(')178 5139 y(Long)g(options:)41
-b(`)p Fy(--pth)p FD(',)29 b(`)p Fy(--path)p FD(',)h(`)p
-Fy(--lcl)p FD(',)g(`)p Fy(--local)p FD(')p 3803 5274
-V 150 5325 a Fk(\012)p 200 5325 3554 4 v 3553 w(\011)p
+b(`)p Fz(-p)p FE(',)31 b(`)p Fz(-l)p FE(')178 5139 y(Long)g(options:)41
+b(`)p Fz(--pth)p FE(',)29 b(`)p Fz(--path)p FE(',)h(`)p
+Fz(--lcl)p FE(',)g(`)p Fz(--local)p FE(')p 3803 5274
+V 150 5325 a Fl(\012)p 200 5325 3554 4 v 3553 w(\011)p
 eop end
 %%Page: 31 37
-TeXDict begin 31 36 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(31)275 299 y(All)22
-b FC(NCO)h FD(op)s(erators)f(can)h(retriev)m(e)g(\014les)g(from)e
+TeXDict begin 31 36 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(31)275 299 y(All)22
+b FD(NCO)h FE(op)s(erators)f(can)h(retriev)m(e)g(\014les)g(from)e
 (remote)j(sites)f(as)f(w)m(ell)i(as)e(from)g(the)h(lo)s(cal)g(\014le)g
 (system.)150 408 y(A)30 b(remote)f(site)f(can)f(b)s(e)g(an)g(anon)m
-(ymous)h FC(FTP)f FD(serv)m(er,)h(a)g(mac)m(hine)g(on)f(whic)m(h)g(the)
-h(user)e(has)h Fy(rcp)p FD(,)h Fy(scp)p FD(,)150 518
-y(or)h Fy(sftp)f FD(privileges,)i FC(NCAR)p FD('s)g(Mass)f(Storage)h
-(System)f(\()p FC(MSS)p FD(\),)i(or)e(an)g FC(OP)n(eND)n(AP)e
-FD(serv)m(er.)41 b(Examples)150 628 y(of)31 b(eac)m(h)g(are)g(giv)m(en)
+(ymous)h FD(FTP)f FE(serv)m(er,)h(a)g(mac)m(hine)g(on)f(whic)m(h)g(the)
+h(user)e(has)h Fz(rcp)p FE(,)h Fz(scp)p FE(,)150 518
+y(or)h Fz(sftp)f FE(privileges,)i FD(NCAR)p FE('s)g(Mass)f(Storage)h
+(System)f(\()p FD(MSS)p FE(\),)i(or)e(an)g FD(OP)n(eND)n(AP)e
+FE(serv)m(er.)41 b(Examples)150 628 y(of)31 b(eac)m(h)g(are)g(giv)m(en)
 g(b)s(elo)m(w,)g(follo)m(wing)h(a)f(brief)e(description)i(of)f(the)h
 (particular)g(access)g(proto)s(col.)275 794 y(T)-8 b(o)42
-b(access)h(a)f(\014le)f(via)i(an)e(anon)m(ymous)h FC(FTP)f
-FD(serv)m(er,)k(simply)c(supply)f(the)i(remote)h(\014le's)e
-FC(URL)p FD(.)150 903 y(Anon)m(ymous)36 b FC(FTP)g FD(usually)g
+b(access)h(a)f(\014le)f(via)i(an)e(anon)m(ymous)h FD(FTP)f
+FE(serv)m(er,)k(simply)c(supply)f(the)i(remote)h(\014le's)e
+FD(URL)p FE(.)150 903 y(Anon)m(ymous)36 b FD(FTP)g FE(usually)g
 (requires)g(no)g(further)f(creden)m(tials,)40 b(e.g.,)f(no)d
-Fy(.netrc)f FD(\014le)h(is)h(necessary)-8 b(.)150 1013
-y FC(FTP)25 b FD(is)h(an)f(in)m(trinsically)i(insecure)f(proto)s(col)g
+Fz(.netrc)f FE(\014le)h(is)h(necessary)-8 b(.)150 1013
+y FD(FTP)25 b FE(is)h(an)f(in)m(trinsically)i(insecure)f(proto)s(col)g
 (b)s(ecause)g(it)g(transfers)f(passw)m(ords)g(in)g(plain)h(text)g
 (format.)150 1122 y(Users)45 b(should)e(access)j(sites)g(using)e(anon)m
-(ymous)g FC(FTP)p FD(,)49 b(or)44 b(b)s(etter)h(y)m(et,)50
-b(secure)44 b FC(FTP)h FD(\()p FC(SFTP)p FD(,)j(see)150
+(ymous)g FD(FTP)p FE(,)49 b(or)44 b(b)s(etter)h(y)m(et,)50
+b(secure)44 b FD(FTP)h FE(\()p FD(SFTP)p FE(,)j(see)150
 1232 y(b)s(elo)m(w\))32 b(when)f(p)s(ossible.)43 b(Some)32
-b FC(FTP)f FD(serv)m(ers)g(require)h(a)f(login/passw)m(ord)i(com)m
+b FD(FTP)f FE(serv)m(ers)g(require)h(a)f(login/passw)m(ord)i(com)m
 (bination)f(for)g(a)g(v)-5 b(alid)150 1342 y(user)37
-b(accoun)m(t.)65 b FC(NCO)38 b FD(allo)m(ws)h(transactions)g(that)f
+b(accoun)m(t.)65 b FD(NCO)38 b FE(allo)m(ws)h(transactions)g(that)f
 (require)g(additional)h(creden)m(tials)g(so)f(long)h(as)f(the)150
 1451 y(required)f(information)g(is)h(stored)f(in)g(the)h
-Fy(.netrc)d FD(\014le.)62 b(Usually)38 b(this)f(information)h(is)f(the)
+Fz(.netrc)d FE(\014le.)62 b(Usually)38 b(this)f(information)h(is)f(the)
 h(remote)150 1561 y(mac)m(hine)31 b(name,)g(login,)g(and)f(passw)m
 (ord,)g(in)g(plain)g(text,)i(separated)f(b)m(y)f(those)h(v)m(ery)g(k)m
-(eyw)m(ords,)g(e.g.,)390 1727 y Fy(machine)46 b(dust.ess.uci.edu)d
-(login)k(zender)f(password)f(bushlied)275 1893 y FD(Esc)m(hew)30
-b(using)h(v)-5 b(aluable)31 b(passw)m(ords)f(for)h FC(FTP)f
-FD(transactions,)j(since)e Fy(.netrc)e FD(passw)m(ords)h(are)h(p)s(o-)
+(eyw)m(ords,)g(e.g.,)390 1727 y Fz(machine)46 b(dust.ess.uci.edu)d
+(login)k(zender)f(password)f(bushlied)275 1893 y FE(Esc)m(hew)30
+b(using)h(v)-5 b(aluable)31 b(passw)m(ords)f(for)h FD(FTP)f
+FE(transactions,)j(since)e Fz(.netrc)e FE(passw)m(ords)h(are)h(p)s(o-)
 150 2003 y(ten)m(tially)i(exp)s(osed)d(to)h(ea)m(v)m(esdropping)g(soft)
-m(w)m(are)1878 1970 y Ft(3)1917 2003 y FD(.)275 2169
-y FC(SFTP)p FD(,)i(i.e.,)i(secure)d FC(FTP)p FD(,)i(uses)e
-FC(SSH)p FD(-based)h(securit)m(y)h(proto)s(cols)f(that)h(solv)m(e)g
+m(w)m(are)1878 1970 y Fu(3)1917 2003 y FE(.)275 2169
+y FD(SFTP)p FE(,)i(i.e.,)i(secure)d FD(FTP)p FE(,)i(uses)e
+FD(SSH)p FE(-based)h(securit)m(y)h(proto)s(cols)f(that)h(solv)m(e)g
 (the)f(securit)m(y)g(issues)150 2278 y(asso)s(ciated)40
-b(with)e(plain)h FC(FTP)p FD(.)64 b FC(NCO)39 b FD(supp)s(orts)d
-FC(SFTP)i FD(proto)s(col)i(access)g(to)f(\014les)g(sp)s(eci\014ed)e
+b(with)e(plain)h FD(FTP)p FE(.)64 b FD(NCO)39 b FE(supp)s(orts)d
+FD(SFTP)i FE(proto)s(col)i(access)g(to)f(\014les)g(sp)s(eci\014ed)e
 (with)i(a)150 2388 y(homebrew)30 b(syn)m(tax)h(of)f(the)h(form)390
-2554 y Fy(sftp://machine.domain.tl)o(d:/p)o(ath/)o(to/)o(file)o(name)
-275 2720 y FD(Note)44 b(the)f(second)g(colon)h(follo)m(wing)g(the)f
-(top-lev)m(el-domain,)49 b Fy(tld)p FD(.)77 b(This)43
+2554 y Fz(sftp://machine.domain.tl)o(d:/p)o(ath/)o(to/)o(file)o(name)
+275 2720 y FE(Note)44 b(the)f(second)g(colon)h(follo)m(wing)g(the)f
+(top-lev)m(el-domain,)49 b Fz(tld)p FE(.)77 b(This)43
 b(syn)m(tax)g(is)g(a)g(h)m(ybrid)150 2829 y(b)s(et)m(w)m(een)31
-b(an)f FC(FTP)e(URL)i FD(and)g(standard)f(remote)j(\014le)e(syn)m(tax.)
+b(an)f FD(FTP)e(URL)i FE(and)g(standard)f(remote)j(\014le)e(syn)m(tax.)
 275 2996 y(T)-8 b(o)23 b(access)h(a)f(\014le)g(using)f
-Fy(rcp)g FD(or)g Fy(scp)p FD(,)i(sp)s(ecify)e(the)h(In)m(ternet)g
+Fz(rcp)g FE(or)g Fz(scp)p FE(,)i(sp)s(ecify)e(the)h(In)m(ternet)g
 (address)f(of)h(the)g(remote)g(\014le.)39 b(Of)22 b(course)150
 3105 y(in)i(this)h(case)g(y)m(ou)g(m)m(ust)f(ha)m(v)m(e)i
-Fy(rcp)e FD(or)g Fy(scp)g FD(privileges)h(whic)m(h)g(allo)m(w)h
+Fz(rcp)e FE(or)g Fz(scp)g FE(privileges)h(whic)m(h)g(allo)m(w)h
 (transparen)m(t)e(\(no)h(passw)m(ord)f(en)m(try)150 3215
 y(required\))d(access)j(to)e(the)g(remote)h(mac)m(hine.)38
-b(This)21 b(means)h(that)h Fy(~/.rhosts)c FD(or)j Fy(~/ssh/authorized_)
-150 3324 y(keys)29 b FD(m)m(ust)h(b)s(e)g(set)h(accordingly)h(on)e(b)s
+b(This)21 b(means)h(that)h Fz(~/.rhosts)c FE(or)j Fz(~/ssh/authorized_)
+150 3324 y(keys)29 b FE(m)m(ust)h(b)s(e)g(set)h(accordingly)h(on)e(b)s
 (oth)g(lo)s(cal)h(and)f(remote)h(mac)m(hines.)275 3490
 y(T)-8 b(o)31 b(access)i(a)f(\014le)f(on)g(a)h(High)g(P)m(erformance)g
-(Storage)g(System)f(\()p FC(HPSS)p FD(\))h(\(suc)m(h)g(as)f(that)h(at)g
-FC(NCAR)p FD(,)150 3600 y FC(ECMWF)p FD(,)c FC(LANL)p
-FD(,)h FC(DKRZ)p FD(,)f FC(LLNL)p FD(\))g(sp)s(ecify)f(the)h(full)f
-FC(HPSS)g FD(pathname)h(of)f(the)h(remote)g(\014le.)40
-b FC(NCO)28 b FD(will)150 3710 y(attempt)i(to)f(detect)h(whether)e(the)
+(Storage)g(System)f(\()p FD(HPSS)p FE(\))h(\(suc)m(h)g(as)f(that)h(at)g
+FD(NCAR)p FE(,)150 3600 y FD(ECMWF)p FE(,)c FD(LANL)p
+FE(,)h FD(DKRZ)p FE(,)f FD(LLNL)p FE(\))g(sp)s(ecify)f(the)h(full)f
+FD(HPSS)g FE(pathname)h(of)f(the)h(remote)g(\014le.)40
+b FD(NCO)28 b FE(will)150 3710 y(attempt)i(to)f(detect)h(whether)e(the)
 h(lo)s(cal)h(mac)m(hine)f(has)g(direct)g(\(sync)m(hronous\))f
-FC(HPSS)h FD(access.)41 b(In)28 b(this)150 3819 y(case,)k
-FC(NCO)e FD(attempts)h(to)g(use)f(the)h(Hierarc)m(hical)h(Storage)g(In)
-m(terface)f(\()p FC(HSI)p FD(\))h(command)e Fy(hsi)f(get)3575
-3786 y Ft(4)3612 3819 y FD(.)275 3985 y(The)g(follo)m(wing)j(examples)f
+FD(HPSS)h FE(access.)41 b(In)28 b(this)150 3819 y(case,)k
+FD(NCO)e FE(attempts)h(to)g(use)f(the)h(Hierarc)m(hical)h(Storage)g(In)
+m(terface)f(\()p FD(HSI)p FE(\))h(command)e Fz(hsi)f(get)3575
+3786 y Fu(4)3612 3819 y FE(.)275 3985 y(The)g(follo)m(wing)j(examples)f
 (sho)m(w)f(ho)m(w)h(one)f(migh)m(t)i(analyze)f(\014les)g(stored)f(on)g
-(remote)i(systems.)390 4151 y Fy(ncks)47 b(-l)g(.)g
+(remote)i(systems.)390 4151 y Fz(ncks)47 b(-l)g(.)g
 (ftp://dust.ess.uci.edu/pu)o(b/ze)o(nder)o(/nc)o(o/in)o(.nc)390
 4261 y(ncks)g(-l)g(.)g(sftp://dust.ess.uci.edu:/)o(home)o(/ftp)o(/pu)o
 (b/ze)o(nder)o(/nc)o(o/in)o(.nc)390 4370 y(ncks)g(-l)g(.)g
 (dust.ess.uci.edu:/home/ze)o(nder)o(/nco)o(/da)o(ta/i)o(n.nc)390
 4480 y(ncks)g(-l)g(.)g(/ZENDER/nco/in.nc)390 4590 y(ncks)g(-l)g(.)g
 (/home/zender/nco/in.nc)p 150 4702 1200 4 v 199 4769
-a Ft(3)275 4801 y Fp(NCO)29 b Fs(do)r(es)g(not)h(implemen)n(t)f
-(command)g(line)h(options)g(to)g(sp)r(ecify)g Fp(FTP)f
-Fs(logins)i(and)e(passw)n(ords)h(b)r(ecause)g(cop)n(ying)275
-4888 y(those)c(data)h(in)n(to)f(the)g Fr(history)i Fs(global)g
+a Fu(3)275 4801 y Fq(NCO)29 b Ft(do)r(es)g(not)h(implemen)n(t)f
+(command)g(line)h(options)g(to)g(sp)r(ecify)g Fq(FTP)f
+Ft(logins)i(and)e(passw)n(ords)h(b)r(ecause)g(cop)n(ying)275
+4888 y(those)c(data)h(in)n(to)f(the)g Fs(history)i Ft(global)g
 (attribute)e(in)g(the)g(output)f(\014le)h(\(done)g(b)n(y)g(default\))g
 (p)r(oses)h(an)g(unacceptable)275 4975 y(securit)n(y)e(risk.)199
-5047 y Ft(4)275 5078 y Fs(The)36 b Fr(hsi)h Fs(command)f(m)n(ust)g(b)r
+5047 y Fu(4)275 5078 y Ft(The)36 b Fs(hsi)h Ft(command)f(m)n(ust)g(b)r
 (e)g(in)g(the)f(user's)i(path)f(in)g(one)g(of)h(the)f(follo)n(wing)j
-(directories:)56 b Fr(/usr/local/bin)p Fs(,)275 5166
-y Fr(/opt/hpss/bin)p Fs(,)37 b(or)d Fr(/ncar/opt/hpss/hsi)p
-Fs(.)60 b(T)-6 b(ell)34 b(us)e(if)i(the)e Fp(HPSS)i Fs(installation)g
-(at)f(y)n(our)g(site)g(places)h(the)e Fr(hsi)275 5253
-y Fs(command)26 b(in)g(a)h(di\013eren)n(t)f(lo)r(cation,)i(and)e(w)n(e)
+(directories:)56 b Fs(/usr/local/bin)p Ft(,)275 5166
+y Fs(/opt/hpss/bin)p Ft(,)37 b(or)d Fs(/ncar/opt/hpss/hsi)p
+Ft(.)60 b(T)-6 b(ell)34 b(us)e(if)i(the)e Fq(HPSS)i Ft(installation)g
+(at)f(y)n(our)g(site)g(places)h(the)e Fs(hsi)275 5253
+y Ft(command)26 b(in)g(a)h(di\013eren)n(t)f(lo)r(cation,)i(and)e(w)n(e)
 h(will)g(add)f(that)g(lo)r(cation)i(to)f(the)f(list)h(of)g(acceptable)g
-(paths)f(to)g(searc)n(h)275 5340 y(for)g Fr(hsi)p Fs(.)p
+(paths)f(to)g(searc)n(h)275 5340 y(for)g Fs(hsi)p Ft(.)p
 eop end
 %%Page: 32 38
-TeXDict begin 32 37 bop 150 -116 a FD(32)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(ncks)47 b(-l)g(.)g
+TeXDict begin 32 37 bop 150 -116 a FE(32)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(ncks)47 b(-l)g(.)g
 (http://thredds-test.ucar.)o(edu/)o(thre)o(dds)o(/dod)o(sC/t)o(est)o
-(dods)o(/in.)o(nc)150 477 y FD(The)37 b(\014rst)f(example)i(w)m(orks)f
+(dods)o(/in.)o(nc)150 477 y FE(The)37 b(\014rst)f(example)i(w)m(orks)f
 (v)m(erbatim)h(if)g(y)m(our)f(system)g(is)h(connected)g(to)g(the)f(In)m
 (ternet)h(and)e(is)i(not)150 586 y(b)s(ehind)43 b(a)i(\014rew)m(all.)84
 b(The)45 b(second)f(example)i(w)m(orks)e(if)h(y)m(ou)g(ha)m(v)m(e)h
-Fy(sftp)e FD(access)i(to)f(the)g(mac)m(hine)150 696 y
-Fy(dust.ess.uci.edu)p FD(.)35 b(The)27 b(third)f(example)i(w)m(orks)f
-(if)g(y)m(ou)h(ha)m(v)m(e)g Fy(rcp)e FD(or)h Fy(scp)g
-FD(access)h(to)g(the)f(mac)m(hine)150 806 y Fy(dust.ess.uci.edu)p
-FD(.)57 b(The)37 b(fourth)f(and)h(\014fth)f(examples)i(w)m(ork)f(on)g
-FC(NCAR)h FD(computers)f(with)g(lo)s(cal)150 915 y(access)c(to)f(the)f
-FC(HPSS)h Fy(hsi)d(get)i FD(command)1664 882 y Ft(5)1701
-915 y FD(.)44 b(The)31 b(sixth)g(command)g(w)m(orks)g(if)h(y)m(our)f
-(lo)s(cal)i(v)m(ersion)f(of)150 1025 y FC(NCO)27 b FD(is)g
-FC(OP)n(eND)n(AP)p FD(-enabled)f(\(this)i(is)f(fully)g(describ)s(ed)f
+Fz(sftp)e FE(access)i(to)f(the)g(mac)m(hine)150 696 y
+Fz(dust.ess.uci.edu)p FE(.)35 b(The)27 b(third)f(example)i(w)m(orks)f
+(if)g(y)m(ou)h(ha)m(v)m(e)g Fz(rcp)e FE(or)h Fz(scp)g
+FE(access)h(to)g(the)f(mac)m(hine)150 806 y Fz(dust.ess.uci.edu)p
+FE(.)57 b(The)37 b(fourth)f(and)h(\014fth)f(examples)i(w)m(ork)f(on)g
+FD(NCAR)h FE(computers)f(with)g(lo)s(cal)150 915 y(access)c(to)f(the)f
+FD(HPSS)h Fz(hsi)d(get)i FE(command)1664 882 y Fu(5)1701
+915 y FE(.)44 b(The)31 b(sixth)g(command)g(w)m(orks)g(if)h(y)m(our)f
+(lo)s(cal)i(v)m(ersion)f(of)150 1025 y FD(NCO)27 b FE(is)g
+FD(OP)n(eND)n(AP)p FE(-enabled)f(\(this)i(is)f(fully)g(describ)s(ed)f
 (in)h(Section)g(3.7.1)i([OP)m(eND)m(AP],)h(page)e(32\),)h(or)150
 1134 y(if)34 b(the)g(remote)h(\014le)f(is)g(accessible)h(via)g
-Fy(wget)p FD(.)50 b(The)33 b(ab)s(o)m(v)m(e)i(commands)f(can)g(b)s(e)f
-(rewritten)h(using)g(the)150 1244 y(`)p Fy(-p)c Fn(input-path)p
-FD(')e(option)j(as)f(follo)m(ws:)390 1422 y Fy(ncks)47
+Fz(wget)p FE(.)50 b(The)33 b(ab)s(o)m(v)m(e)i(commands)f(can)g(b)s(e)f
+(rewritten)h(using)g(the)150 1244 y(`)p Fz(-p)c Fo(input-path)p
+FE(')e(option)j(as)f(follo)m(ws:)390 1422 y Fz(ncks)47
 b(-p)g(ftp://dust.ess.uci.edu/p)o(ub/)o(zend)o(er/n)o(co)41
 b(-l)48 b(.)f(in.nc)390 1531 y(ncks)g(-p)g(sftp://dust.ess.uci.edu:)o
 (/ho)o(me/f)o(tp/p)o(ub/)o(zend)o(er/n)o(co)41 b(-l)48
@@ -14653,228 +14879,228 @@ b(.)f(in.nc)390 1641 y(ncks)g(-p)g(dust.ess.uci.edu:/home/z)o(end)o
 (-l)i(.)g(in.nc)390 1860 y(ncks)g(-p)g(/home/zender/nco)c(-l)k(.)h
 (in.nc)e(#)i(HPSS)390 1970 y(ncks)f(-p)g(http://thredds-test.ucar)o
 (.ed)o(u/th)o(redd)o(s/d)o(odsC)o(/tes)o(tdo)o(ds)42
-b(\\)629 2079 y(-l)47 b(.)g(in.nc)150 2257 y FD(Using)37
-b(`)p Fy(-p)p FD(')g(is)f(recommended)h(b)s(ecause)g(it)g(clearly)h
-(separates)g(the)f Fz(input-path)e FD(from)i(the)g(\014lename)150
-2367 y(itself,)42 b(sometimes)e(called)g(the)f Fz(stub)p
-FD(.)65 b(When)38 b Fz(input-path)g FD(is)h(not)g(explicitly)h(sp)s
-(eci\014ed)f(using)f(`)p Fy(-p)p FD(',)150 2476 y FC(NCO)d
-FD(in)m(ternally)i(generates)g(an)e Fz(input-path)g FD(from)g(the)h
+b(\\)629 2079 y(-l)47 b(.)g(in.nc)150 2257 y FE(Using)37
+b(`)p Fz(-p)p FE(')g(is)f(recommended)h(b)s(ecause)g(it)g(clearly)h
+(separates)g(the)f FA(input-path)e FE(from)i(the)g(\014lename)150
+2367 y(itself,)42 b(sometimes)e(called)g(the)f FA(stub)p
+FE(.)65 b(When)38 b FA(input-path)g FE(is)h(not)g(explicitly)h(sp)s
+(eci\014ed)f(using)f(`)p Fz(-p)p FE(',)150 2476 y FD(NCO)d
+FE(in)m(ternally)i(generates)g(an)e FA(input-path)g FE(from)g(the)h
 (\014rst)f(input)f(\014lename.)57 b(The)35 b(automatically)150
-2586 y(generated)29 b Fz(input-path)f FD(is)g(constructed)g(b)m(y)g
+2586 y(generated)29 b FA(input-path)f FE(is)g(constructed)g(b)m(y)g
 (stripping)g(the)g(input)g(\014lename)g(of)g(ev)m(erything)h(follo)m
-(wing)150 2696 y(the)38 b(\014nal)f(`)p Fy(/)p FD(')h(c)m(haracter)h
+(wing)150 2696 y(the)38 b(\014nal)f(`)p Fz(/)p FE(')h(c)m(haracter)h
 (\(i.e.,)j(remo)m(ving)c(the)g(stub\).)62 b(The)37 b(`)p
-Fy(-l)30 b Fn(output-path)p FD(')35 b(option)j(tells)h
-FC(NCO)150 2805 y FD(where)34 b(to)i(store)f(the)g(remotely)g(retriev)m
+Fz(-l)30 b Fo(output-path)p FE(')35 b(option)j(tells)h
+FD(NCO)150 2805 y FE(where)34 b(to)i(store)f(the)g(remotely)g(retriev)m
 (ed)h(\014le.)54 b(It)34 b(has)h(no)f(e\013ect)i(on)f(lo)s
 (cally-retriev)m(ed)i(\014les,)f(or)f(on)150 2915 y(the)d(output)f
 (\014le.)44 b(Often)31 b(the)h(path)f(to)h(a)g(remotely)h(retriev)m(ed)
 f(\014le)g(is)f(quite)h(di\013eren)m(t)g(than)f(the)h(path)150
 3024 y(on)38 b(the)g(lo)s(cal)h(mac)m(hine)g(where)e(y)m(ou)i(w)m(ould)
 e(lik)m(e)j(to)e(store)h(the)f(\014le.)63 b(If)38 b(`)p
-Fy(-l)p FD(')g(is)g(not)g(sp)s(eci\014ed)f(then)150 3134
-y FC(NCO)24 b FD(in)m(ternally)i(generates)g(an)e Fz(output-path)h
-FD(b)m(y)f(simply)g(setting)i Fz(output-path)e FD(equal)h(to)h
-Fz(input-path)150 3243 y FD(stripp)s(ed)33 b(of)i(an)m(y)h(mac)m(hine)f
-(names.)54 b(If)35 b(`)p Fy(-l)p FD(')g(is)g(not)g(sp)s(eci\014ed)f
+Fz(-l)p FE(')g(is)g(not)g(sp)s(eci\014ed)f(then)150 3134
+y FD(NCO)24 b FE(in)m(ternally)i(generates)g(an)e FA(output-path)h
+FE(b)m(y)f(simply)g(setting)i FA(output-path)e FE(equal)h(to)h
+FA(input-path)150 3243 y FE(stripp)s(ed)33 b(of)i(an)m(y)h(mac)m(hine)f
+(names.)54 b(If)35 b(`)p Fz(-l)p FE(')g(is)g(not)g(sp)s(eci\014ed)f
 (and)g(the)h(remote)h(\014le)f(resides)g(on)g(the)150
-3353 y FC(NCAR)40 b(HPSS)g FD(system,)j(then)c(the)h(leading)h(c)m
-(haracter)g(of)f Fz(input-path)p FD(,)i(`)p Fy(/)p FD(',)g(is)e(also)h
-(stripp)s(ed)d(from)150 3463 y Fz(output-path)p FD(.)56
-b(Sp)s(ecifying)35 b Fz(output-path)h FD(as)g(`)p Fy(-l)30
-b(./)p FD(')35 b(tells)h FC(NCO)g FD(to)g(store)g(the)g(remotely)h
+3353 y FD(NCAR)40 b(HPSS)g FE(system,)j(then)c(the)h(leading)h(c)m
+(haracter)g(of)f FA(input-path)p FE(,)i(`)p Fz(/)p FE(',)g(is)e(also)h
+(stripp)s(ed)d(from)150 3463 y FA(output-path)p FE(.)56
+b(Sp)s(ecifying)35 b FA(output-path)h FE(as)g(`)p Fz(-l)30
+b(./)p FE(')35 b(tells)h FD(NCO)g FE(to)g(store)g(the)g(remotely)h
 (retriev)m(ed)150 3572 y(\014le)g(and)f(the)g(output)h(\014le)f(in)g
 (the)h(curren)m(t)g(directory)-8 b(.)60 b(Note)38 b(that)f(`)p
-Fy(-l)30 b(.)p FD(')36 b(is)h(equiv)-5 b(alen)m(t)38
-b(to)f(`)p Fy(-l)30 b(./)p FD(')150 3682 y(though)g(the)h(latter)g(is)g
-(syn)m(tactically)i(more)e(clear.)150 3918 y Fu(3.7.1)63
-b Fq(OP)m(eND)m(AP)150 4065 y FD(The)24 b(Distributed)g(Oceanographic)h
-(Data)g(System)f(\()p FC(DODS)p FD(\))i(pro)m(vides)e(useful)f
+Fz(-l)30 b(.)p FE(')36 b(is)h(equiv)-5 b(alen)m(t)38
+b(to)f(`)p Fz(-l)30 b(./)p FE(')150 3682 y(though)g(the)h(latter)g(is)g
+(syn)m(tactically)i(more)e(clear.)150 3918 y Fv(3.7.1)63
+b Fr(OP)m(eND)m(AP)150 4065 y FE(The)24 b(Distributed)g(Oceanographic)h
+(Data)g(System)f(\()p FD(DODS)p FE(\))i(pro)m(vides)e(useful)f
 (replacemen)m(ts)i(for)f(com-)150 4175 y(mon)32 b(data)i(in)m(terface)g
-(libraries)f(lik)m(e)h(netCDF.)f(The)f FC(DODS)i FD(v)m(ersions)f(of)f
+(libraries)f(lik)m(e)h(netCDF.)f(The)f FD(DODS)i FE(v)m(ersions)f(of)f
 (these)i(libraries)e(implemen)m(t)150 4284 y(net)m(w)m(ork)39
 b(transparen)m(t)f(access)h(to)f(data)h(via)f(a)g(clien)m(t-serv)m(er)i
 (data)f(access)g(proto)s(col)g(that)f(uses)g(the)150
-4394 y FC(HTTP)27 b FD(proto)s(col)i(for)e(comm)m(unication.)41
-b(Although)28 b FC(DODS)p FD(-tec)m(hnology)i(originated)f(with)e(o)s
+4394 y FD(HTTP)27 b FE(proto)s(col)i(for)e(comm)m(unication.)41
+b(Although)28 b FD(DODS)p FE(-tec)m(hnology)i(originated)f(with)e(o)s
 (ceanogra-)150 4503 y(ph)m(y)32 b(data,)i(it)f(applyies)f(to)i
 (virtually)f(all)g(scien)m(ti\014c)h(data.)47 b(In)32
 b(recognition)i(of)f(this,)g(the)f(data)i(access)150
-4613 y(proto)s(col)f(underlying)e FC(DODS)h FD(\(whic)m(h)h(is)f(what)g
-FC(NCO)f FD(cares)i(ab)s(out\))f(has)g(b)s(een)f(renamed)h(the)g(Op)s
+4613 y(proto)s(col)f(underlying)e FD(DODS)h FE(\(whic)m(h)h(is)f(what)g
+FD(NCO)f FE(cares)i(ab)s(out\))f(has)g(b)s(een)f(renamed)h(the)g(Op)s
 (en-)150 4722 y(source)k(Pro)5 b(ject)37 b(for)f(a)g(Net)m(w)m(ork)i
-(Data)f(Access)g(Proto)s(col,)i FC(OP)n(eND)n(AP)p FD(.)57
-b(W)-8 b(e)37 b(use)e(the)i(terms)e FC(DODS)p 150 4892
-1200 4 v 199 4960 a Ft(5)275 4991 y Fp(NCO)f Fs(supp)r(orted)h(the)g
-(old)g Fp(NCAR)g Fs(Mass)i(Storage)f(System)e(\()p Fp(MSS)p
-Fs(\))h(un)n(til)g(v)n(ersion)h(4.0.7)h(in)e(April,)j(2011.)64
-b Fp(NCO)275 5078 y Fs(supp)r(orted)20 b Fp(MSS)p Fs(-retriev)l(als)h
+(Data)f(Access)g(Proto)s(col,)i FD(OP)n(eND)n(AP)p FE(.)57
+b(W)-8 b(e)37 b(use)e(the)i(terms)e FD(DODS)p 150 4892
+1200 4 v 199 4960 a Fu(5)275 4991 y Fq(NCO)f Ft(supp)r(orted)h(the)g
+(old)g Fq(NCAR)g Ft(Mass)i(Storage)f(System)e(\()p Fq(MSS)p
+Ft(\))h(un)n(til)g(v)n(ersion)h(4.0.7)h(in)e(April,)j(2011.)64
+b Fq(NCO)275 5078 y Ft(supp)r(orted)20 b Fq(MSS)p Ft(-retriev)l(als)h
 (via)h(a)f(v)l(ariet)n(y)f(of)i(mec)n(hanisms)g(including)f(the)g
-Fr(msread)p Fs(,)i Fr(msrcp)p Fs(,)h(and)c Fr(nrnet)i
-Fs(commands)275 5166 y(in)n(v)n(ok)n(ed)g(either)i(automatically)h(or)f
-(with)g(sen)n(tinels)g(lik)n(e)g Fr(ncks)j(-p)f(mss:/ZENDER/nco)j(-l)d
-(.)f(in.nc)p Fs(.)35 b(Once)24 b(the)f Fp(MSS)275 5253
-y Fs(w)n(as)g(decommissioned)h(in)e(Marc)n(h,)i(2011,)g(supp)r(ort)e
+Fs(msread)p Ft(,)i Fs(msrcp)p Ft(,)h(and)c Fs(nrnet)i
+Ft(commands)275 5166 y(in)n(v)n(ok)n(ed)g(either)i(automatically)h(or)f
+(with)g(sen)n(tinels)g(lik)n(e)g Fs(ncks)j(-p)f(mss:/ZENDER/nco)j(-l)d
+(.)f(in.nc)p Ft(.)35 b(Once)24 b(the)f Fq(MSS)275 5253
+y Ft(w)n(as)g(decommissioned)h(in)e(Marc)n(h,)i(2011,)g(supp)r(ort)e
 (for)h(these)g(retriev)l(al)g(mec)n(hanisms)g(w)n(as)g(replaced)g(b)n
-(y)e(supp)r(ort)h(for)275 5340 y Fp(HPSS)j Fs(in)h Fp(NCO)p
-Fs(.)p eop end
+(y)e(supp)r(ort)h(for)275 5340 y Fq(HPSS)j Ft(in)h Fq(NCO)p
+Ft(.)p eop end
 %%Page: 33 39
-TeXDict begin 33 38 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(33)150 299 y(and)27
-b FC(OP)n(eND)n(AP)f FD(in)m(terc)m(hangeably)-8 b(,)30
-b(and)d(often)g(write)h FC(OP)n(eND)n(AP)p FD(/)p FC(DODS)f
-FD(for)g(no)m(w.)39 b(In)27 b(the)g(future)f(w)m(e)150
-408 y(will)31 b(deprecate)g FC(DODS)g FD(in)f(fa)m(v)m(or)h(of)g
-FC(D)n(AP)f FD(or)h FC(OP)n(eND)n(AP)p FD(,)e(as)i(appropriate)2783
-375 y Ft(6)2820 408 y FD(.)275 568 y FC(NCO)22 b FD(ma)m(y)g(b)s(e)g
-FC(D)n(AP)p FD(-enabled)h(b)m(y)f(linking)g FC(NCO)g
-FD(to)h(the)g FC(OP)n(eND)n(AP)e FD(libraries.)38 b(This)22
-b(is)g(describ)s(ed)f(in)150 677 y(the)31 b FC(OP)n(eND)n(AP)f
-FD(do)s(cumen)m(tation)i(and)e(automagically)k(implemen)m(ted)d(in)g
-FC(NCO)f FD(build)g(mec)m(hanisms)3687 644 y Ft(7)3725
-677 y FD(.)150 787 y(The)d Fy(./configure)e FD(mec)m(hanism)j
-(automatically)i(enables)e FC(NCO)g FD(as)g FC(OP)n(eND)n(AP)e
-FD(clien)m(ts)k(if)d(it)h(can)g(\014nd)150 897 y(the)40
-b(required)f FC(OP)n(eND)n(AP)g FD(libraries)1439 864
-y Ft(8)1476 897 y FD(.)69 b(in)39 b(the)h(usual)g(lo)s(cations.)70
-b(The)39 b Fy($DODS_ROOT)e FD(en)m(vironmen)m(t)150 1006
+TeXDict begin 33 38 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(33)150 299 y(and)27
+b FD(OP)n(eND)n(AP)f FE(in)m(terc)m(hangeably)-8 b(,)30
+b(and)d(often)g(write)h FD(OP)n(eND)n(AP)p FE(/)p FD(DODS)f
+FE(for)g(no)m(w.)39 b(In)27 b(the)g(future)f(w)m(e)150
+408 y(will)31 b(deprecate)g FD(DODS)g FE(in)f(fa)m(v)m(or)h(of)g
+FD(D)n(AP)f FE(or)h FD(OP)n(eND)n(AP)p FE(,)e(as)i(appropriate)2783
+375 y Fu(6)2820 408 y FE(.)275 568 y FD(NCO)22 b FE(ma)m(y)g(b)s(e)g
+FD(D)n(AP)p FE(-enabled)h(b)m(y)f(linking)g FD(NCO)g
+FE(to)h(the)g FD(OP)n(eND)n(AP)e FE(libraries.)38 b(This)22
+b(is)g(describ)s(ed)f(in)150 677 y(the)31 b FD(OP)n(eND)n(AP)f
+FE(do)s(cumen)m(tation)i(and)e(automagically)k(implemen)m(ted)d(in)g
+FD(NCO)f FE(build)g(mec)m(hanisms)3687 644 y Fu(7)3725
+677 y FE(.)150 787 y(The)d Fz(./configure)e FE(mec)m(hanism)j
+(automatically)i(enables)e FD(NCO)g FE(as)g FD(OP)n(eND)n(AP)e
+FE(clien)m(ts)k(if)d(it)h(can)g(\014nd)150 897 y(the)40
+b(required)f FD(OP)n(eND)n(AP)g FE(libraries)1439 864
+y Fu(8)1476 897 y FE(.)69 b(in)39 b(the)h(usual)g(lo)s(cations.)70
+b(The)39 b Fz($DODS_ROOT)e FE(en)m(vironmen)m(t)150 1006
 y(v)-5 b(ariable)22 b(ma)m(y)f(b)s(e)g(used)f(to)h(o)m(v)m(erride)h
-(the)f(default)h FC(OP)n(eND)n(AP)d FD(library)i(lo)s(cation)h(at)g
-FC(NCO)f FD(compile-time.)150 1116 y(Building)28 b FC(NCO)f
-FD(with)g Fy(bld/Makefile)e FD(and)i(the)g(command)h
-Fy(make)h(DODS=Y)d FD(adds)h(the)h(\(non-in)m(tuitiv)m(e\))150
-1225 y(commands)f(to)h(link)f(to)h(the)g FC(OP)n(eND)n(AP)e
-FD(libraries)h(installed)h(in)f(the)h Fy($DODS_ROOT)c
-FD(directory)-8 b(.)41 b(The)27 b(\014le)150 1335 y Fy(doc/opendap.sh)
-32 b FD(con)m(tains)k(a)g(generic)g(script)g(in)m(tended)f(to)h(help)f
-(users)g(install)h FC(OP)n(eND)n(AP)e FD(b)s(efore)150
-1445 y(building)g FC(NCO)p FD(.)55 b(The)34 b(do)s(cumen)m(tation)i(at)
-g(the)f(OP)m(eND)m(AP)i(Homepage)g(\()p Fy(http:)t(/)t(/)s(www)t(.)s
-(opendap)t(.)150 1554 y(org)p FD(\))26 b(is)g(v)m(oluminous.)39
+(the)f(default)h FD(OP)n(eND)n(AP)d FE(library)i(lo)s(cation)h(at)g
+FD(NCO)f FE(compile-time.)150 1116 y(Building)28 b FD(NCO)f
+FE(with)g Fz(bld/Makefile)e FE(and)i(the)g(command)h
+Fz(make)h(DODS=Y)d FE(adds)h(the)h(\(non-in)m(tuitiv)m(e\))150
+1225 y(commands)f(to)h(link)f(to)h(the)g FD(OP)n(eND)n(AP)e
+FE(libraries)h(installed)h(in)f(the)h Fz($DODS_ROOT)c
+FE(directory)-8 b(.)41 b(The)27 b(\014le)150 1335 y Fz(doc/opendap.sh)
+32 b FE(con)m(tains)k(a)g(generic)g(script)g(in)m(tended)f(to)h(help)f
+(users)g(install)h FD(OP)n(eND)n(AP)e FE(b)s(efore)150
+1445 y(building)g FD(NCO)p FE(.)55 b(The)34 b(do)s(cumen)m(tation)i(at)
+g(the)f(OP)m(eND)m(AP)i(Homepage)g(\()p Fz(http:)t(/)t(/)s(www)t(.)s
+(opendap)t(.)150 1554 y(org)p FE(\))26 b(is)g(v)m(oluminous.)39
 b(Chec)m(k)27 b(there)g(and)e(on)i(the)f(DODS)g(mail)h(lists)g(\()p
-Fy(http://www.unidata.ucar.)150 1664 y(edu/packages/dods/home/ma)o
-(ilLi)o(sts/)o FD(\).)35 b(to)d(learn)e(more)h(ab)s(out)f(the)h
-(extensiv)m(e)g(capabilities)i(of)150 1773 y FC(OP)n(eND)n(AP)549
-1740 y Ft(9)585 1773 y FD(.)275 1933 y(Once)21 b FC(NCO)g
-FD(is)h FC(D)n(AP)p FD(-enabled)f(the)h(op)s(erators)f(are)h
-FC(OP)n(eND)n(AP)e FD(clien)m(ts.)40 b(All)22 b FC(OP)n(eND)n(AP)e
-FD(clien)m(ts)j(ha)m(v)m(e)150 2042 y(net)m(w)m(ork)k(transparen)m(t)f
+Fz(http://www.unidata.ucar.)150 1664 y(edu/packages/dods/home/ma)o
+(ilLi)o(sts/)o FE(\).)35 b(to)d(learn)e(more)h(ab)s(out)f(the)h
+(extensiv)m(e)g(capabilities)i(of)150 1773 y FD(OP)n(eND)n(AP)549
+1740 y Fu(9)585 1773 y FE(.)275 1933 y(Once)21 b FD(NCO)g
+FE(is)h FD(D)n(AP)p FE(-enabled)f(the)h(op)s(erators)f(are)h
+FD(OP)n(eND)n(AP)e FE(clien)m(ts.)40 b(All)22 b FD(OP)n(eND)n(AP)e
+FE(clien)m(ts)j(ha)m(v)m(e)150 2042 y(net)m(w)m(ork)k(transparen)m(t)f
 (access)i(to)e(an)m(y)h(\014les)f(con)m(trolled)i(b)m(y)e(a)g
-FC(OP)n(eND)n(AP)f FD(serv)m(er.)40 b(Simply)25 b(sp)s(ecify)h(the)150
-2152 y(input)37 b(\014le)g(path\(s\))h(in)f FC(URL)h
-FD(notation)h(and)d(all)j FC(NCO)e FD(op)s(erations)h(ma)m(y)g(b)s(e)f
+FD(OP)n(eND)n(AP)f FE(serv)m(er.)40 b(Simply)25 b(sp)s(ecify)h(the)150
+2152 y(input)37 b(\014le)g(path\(s\))h(in)f FD(URL)h
+FE(notation)h(and)d(all)j FD(NCO)e FE(op)s(erations)h(ma)m(y)g(b)s(e)f
 (p)s(erformed)f(on)h(remote)150 2262 y(\014les)31 b(made)g(accessible)i
-(b)m(y)e(a)g FC(OP)n(eND)n(AP)f FD(serv)m(er.)43 b(This)31
+(b)m(y)e(a)g FD(OP)n(eND)n(AP)f FE(serv)m(er.)43 b(This)31
 b(command)g(tests)g(the)h(basic)f(functionalit)m(y)i(of)150
-2371 y FC(OP)n(eND)n(AP)p FD(-enabled)c FC(NCO)i FD(clien)m(ts:)390
-2531 y Fy(\045)47 b(ncks)g(-O)g(-o)g(~/foo.nc)f(-C)h(-H)g(-v)h(one)e
+2371 y FD(OP)n(eND)n(AP)p FE(-enabled)c FD(NCO)i FE(clien)m(ts:)390
+2531 y Fz(\045)47 b(ncks)g(-O)g(-o)g(~/foo.nc)f(-C)h(-H)g(-v)h(one)e
 (-l)i(/tmp)e(\\)485 2640 y(-p)i(http://thredds-test.uca)o(r.ed)o(u/t)o
 (hred)o(ds/d)o(ods)o(C/te)o(stdo)o(ds)41 b(in.nc)390
 2750 y(\045)47 b(ncks)g(-H)g(-v)g(one)g(~/foo.nc)390
-2859 y(one)g(=)g(1)275 3019 y FD(The)26 b Fy(one)j(=)h(1)c
-FD(outputs)g(con\014rm)g(\(\014rst\))g(that)h Fy(ncks)f
-FD(correctly)i(retriev)m(ed)f(data)g(via)g(the)g FC(OP)n(eND)n(AP)150
-3128 y FD(proto)s(col)41 b(and)e(\(second\))i(that)g
-Fy(ncks)d FD(created)j(a)g(v)-5 b(alid)40 b(lo)s(cal)h(cop)m(y)g(of)f
+2859 y(one)g(=)g(1)275 3019 y FE(The)26 b Fz(one)j(=)h(1)c
+FE(outputs)g(con\014rm)g(\(\014rst\))g(that)h Fz(ncks)f
+FE(correctly)i(retriev)m(ed)f(data)g(via)g(the)g FD(OP)n(eND)n(AP)150
+3128 y FE(proto)s(col)41 b(and)e(\(second\))i(that)g
+Fz(ncks)d FE(created)j(a)g(v)-5 b(alid)40 b(lo)s(cal)h(cop)m(y)g(of)f
 (the)g(subsetted)g(remote)h(\014le.)150 3238 y(With)33
 b(minor)f(c)m(hanges)i(to)f(the)g(ab)s(o)m(v)m(e)h(command,)f(netCDF4)h
 (can)f(b)s(e)f(used)g(as)h(b)s(oth)f(the)h(input)f(and)150
-3347 y(output)e(\014le)g(format:)390 3507 y Fy(\045)47
+3347 y(output)e(\014le)g(format:)390 3507 y Fz(\045)47
 b(ncks)g(-4)g(-O)g(-o)h(~/foo.nc)d(-C)i(-H)h(-v)f(one)g(-l)g(/tmp)f(\\)
 485 3616 y(-p)i(http://thredds-test.uca)o(r.ed)o(u/t)o(hred)o(ds/d)o
 (ods)o(C/te)o(stdo)o(ds)41 b(in_4.nc)p 150 3711 1200
-4 v 199 3779 a Ft(6)303 3810 y Fp(DODS)28 b Fs(is)h(b)r(eing)f
+4 v 199 3779 a Fu(6)303 3810 y Fq(DODS)28 b Ft(is)h(b)r(eing)f
 (deprecated)g(b)r(ecause)h(it)f(is)h(am)n(biguous,)h(referring)g(b)r
 (oth)e(to)g(a)h(proto)r(col)g(and)f(to)h(a)f(collection)i(of)275
 3898 y(\(o)r(ceanograph)n(y\))23 b(data.)34 b(It)22 b(is)h(sup)r
-(erceded)g(b)n(y)e(t)n(w)n(o)i(terms.)34 b Fp(D)n(AP)23
-b Fs(is)g(the)f(discipline-neutral)i(Data)f(Access)g(Proto)r(col)275
-3985 y(at)31 b(the)g(heart)g(of)h Fp(DODS)p Fs(.)51 b(The)31
-b(National)h(Virtual)f(Ocean)g(Data)h(System)e(\()p Fp(NV)n(ODS)p
-Fs(\))h(refers)h(to)g(the)e(collection)j(of)275 4072
+(erceded)g(b)n(y)e(t)n(w)n(o)i(terms.)34 b Fq(D)n(AP)23
+b Ft(is)g(the)f(discipline-neutral)i(Data)f(Access)g(Proto)r(col)275
+3985 y(at)31 b(the)g(heart)g(of)h Fq(DODS)p Ft(.)51 b(The)31
+b(National)h(Virtual)f(Ocean)g(Data)h(System)e(\()p Fq(NV)n(ODS)p
+Ft(\))h(refers)h(to)g(the)e(collection)j(of)275 4072
 y(o)r(ceanograph)n(y)26 b(data)f(and)g(o)r(ceanographic)j(extensions)d
-(to)h Fp(D)n(AP)p Fs(.)34 b(In)25 b(other)g(w)n(ords,)i
-Fp(NV)n(ODS)e Fs(is)h(implemen)n(ted)f(with)275 4159
-y Fp(OP)n(eND)n(AP)p Fs(.)44 b Fp(OP)n(eND)n(AP)29 b
-Fs(is)h Fj(also)k Fs(the)29 b(op)r(en)g(source)h(pro)t(ject)g(whic)n(h)
+(to)h Fq(D)n(AP)p Ft(.)34 b(In)25 b(other)g(w)n(ords,)i
+Fq(NV)n(ODS)e Ft(is)h(implemen)n(ted)f(with)275 4159
+y Fq(OP)n(eND)n(AP)p Ft(.)44 b Fq(OP)n(eND)n(AP)29 b
+Ft(is)h Fk(also)k Ft(the)29 b(op)r(en)g(source)h(pro)t(ject)g(whic)n(h)
 f(main)n(tains,)i(dev)n(elops,)f(and)f(prom)n(ulgates)h(the)275
-4246 y Fp(D)n(AP)25 b Fs(standard.)34 b Fp(OP)n(eND)n(AP)26
-b Fs(and)f Fp(D)n(AP)h Fs(really)g(are)g(in)n(terc)n(hangeable.)35
-b(Got)26 b(it)g(y)n(et?)199 4318 y Ft(7)300 4349 y Fs(Automagic)g(supp)
-r(ort)f(for)h Fp(DODS)f Fs(v)n(ersion)g(3.2.x)h(w)n(as)h(deprecated)e
-(in)g(Decem)n(b)r(er,)h(2003)g(after)g Fp(NCO)f Fs(v)n(ersion)h(2.8.4.)
-275 4436 y Fp(NCO)d Fs(supp)r(ort)g(for)i Fp(OP)n(eND)n(AP)e
-Fs(v)n(ersions)h(3.4.x)h(commenced)f(in)f(Decem)n(b)r(er,)i(2003,)h
-(with)d Fp(NCO)h Fs(v)n(ersion)g(2.8.5.)35 b Fp(NCO)275
-4524 y Fs(supp)r(ort)20 b(for)h Fp(OP)n(eND)n(AP)g Fs(v)n(ersions)g
-(3.5.x)g(commenced)g(in)g(June,)h(2005,)h(with)e Fp(NCO)f
-Fs(v)n(ersion)h(3.0.1.)35 b Fp(NCO)20 b Fs(supp)r(ort)g(for)275
-4611 y Fp(OP)n(eND)n(AP)j Fs(v)n(ersions)g(3.6.x)h(commenced)g(in)f
-(June,)h(2006,)h(with)f Fp(NCO)f Fs(v)n(ersion)g(3.1.3.)35
-b Fp(NCO)23 b Fs(supp)r(ort)g(for)h Fp(OP)n(eND)n(AP)275
-4698 y Fs(v)n(ersions)i(3.7.x)g(commenced)g(in)g(Jan)n(uary)-6
-b(,)25 b(2007,)j(with)e Fp(NCO)f Fs(v)n(ersion)h(3.1.9.)199
-4769 y Ft(8)304 4801 y Fs(The)j(minimal)h(set)g(of)g(libraries)h
-(required)d(to)i(build)f Fp(NCO)g Fs(as)h Fp(OP)n(eND)n(AP)f
-Fs(clien)n(ts,)i(where)e Fp(OP)n(eND)n(AP)g Fs(is)h(supplied)275
-4888 y(as)d(a)h(separate)g(library)f(apart)h(from)g Fr(libnetcdf.a)p
-Fs(,)i(are,)e(in)g(link)f(order,)h Fr(libnc-dap.a)p Fs(,)i
-Fr(libdap.a)p Fs(,)g(and)c Fr(libxml2)275 4975 y Fs(and)f
-Fr(libcurl.a)p Fs(.)199 5047 y Ft(9)300 5078 y Fs(W)-6
-b(e)25 b(are)i(most)f(familiar)i(with)e(the)f Fp(OP)n(eND)n(AP)g
-Fs(abilit)n(y)h(to)g(enable)g(net)n(w)n(ork-transparen)n(t)f(data)h
-(access.)36 b Fp(OP)n(eND)n(AP)275 5166 y Fs(has)23 b(man)n(y)g(other)g
+4246 y Fq(D)n(AP)25 b Ft(standard.)34 b Fq(OP)n(eND)n(AP)26
+b Ft(and)f Fq(D)n(AP)h Ft(really)g(are)g(in)n(terc)n(hangeable.)35
+b(Got)26 b(it)g(y)n(et?)199 4318 y Fu(7)300 4349 y Ft(Automagic)g(supp)
+r(ort)f(for)h Fq(DODS)f Ft(v)n(ersion)g(3.2.x)h(w)n(as)h(deprecated)e
+(in)g(Decem)n(b)r(er,)h(2003)g(after)g Fq(NCO)f Ft(v)n(ersion)h(2.8.4.)
+275 4436 y Fq(NCO)d Ft(supp)r(ort)g(for)i Fq(OP)n(eND)n(AP)e
+Ft(v)n(ersions)h(3.4.x)h(commenced)f(in)f(Decem)n(b)r(er,)i(2003,)h
+(with)d Fq(NCO)h Ft(v)n(ersion)g(2.8.5.)35 b Fq(NCO)275
+4524 y Ft(supp)r(ort)20 b(for)h Fq(OP)n(eND)n(AP)g Ft(v)n(ersions)g
+(3.5.x)g(commenced)g(in)g(June,)h(2005,)h(with)e Fq(NCO)f
+Ft(v)n(ersion)h(3.0.1.)35 b Fq(NCO)20 b Ft(supp)r(ort)g(for)275
+4611 y Fq(OP)n(eND)n(AP)j Ft(v)n(ersions)g(3.6.x)h(commenced)g(in)f
+(June,)h(2006,)h(with)f Fq(NCO)f Ft(v)n(ersion)g(3.1.3.)35
+b Fq(NCO)23 b Ft(supp)r(ort)g(for)h Fq(OP)n(eND)n(AP)275
+4698 y Ft(v)n(ersions)i(3.7.x)g(commenced)g(in)g(Jan)n(uary)-6
+b(,)25 b(2007,)j(with)e Fq(NCO)f Ft(v)n(ersion)h(3.1.9.)199
+4769 y Fu(8)304 4801 y Ft(The)j(minimal)h(set)g(of)g(libraries)h
+(required)d(to)i(build)f Fq(NCO)g Ft(as)h Fq(OP)n(eND)n(AP)f
+Ft(clien)n(ts,)i(where)e Fq(OP)n(eND)n(AP)g Ft(is)h(supplied)275
+4888 y(as)d(a)h(separate)g(library)f(apart)h(from)g Fs(libnetcdf.a)p
+Ft(,)i(are,)e(in)g(link)f(order,)h Fs(libnc-dap.a)p Ft(,)i
+Fs(libdap.a)p Ft(,)g(and)c Fs(libxml2)275 4975 y Ft(and)f
+Fs(libcurl.a)p Ft(.)199 5047 y Fu(9)300 5078 y Ft(W)-6
+b(e)25 b(are)i(most)f(familiar)i(with)e(the)f Fq(OP)n(eND)n(AP)g
+Ft(abilit)n(y)h(to)g(enable)g(net)n(w)n(ork-transparen)n(t)f(data)h
+(access.)36 b Fq(OP)n(eND)n(AP)275 5166 y Ft(has)23 b(man)n(y)g(other)g
 (features,)i(including)e(sophisticated)h(h)n(yp)r(erslabbing)f(and)g
-(serv)n(er-side)g(pro)r(cessing)i(via)e Fm(constrain)n(t)275
-5253 y(expressions)p Fs(.)39 b(If)27 b(y)n(ou)g(kno)n(w)g(more)g(ab)r
+(serv)n(er-side)g(pro)r(cessing)i(via)e Fn(constrain)n(t)275
+5253 y(expressions)p Ft(.)39 b(If)27 b(y)n(ou)g(kno)n(w)g(more)g(ab)r
 (out)g(this,)h(please)g(consider)g(writing)g(a)g(section)f(on)g(\\)p
-Fp(OP)n(eND)n(AP)h Fs(Capabilities)275 5340 y(of)e(In)n(terest)f(to)h
-Fp(NCO)f Fs(Users")i(for)f(incorp)r(oration)h(in)f(the)f
-Fm(NCO)h(User)f(Guide)p Fs(.)p eop end
+Fq(OP)n(eND)n(AP)h Ft(Capabilities)275 5340 y(of)e(In)n(terest)f(to)h
+Fq(NCO)f Ft(Users")i(for)f(incorp)r(oration)h(in)f(the)f
+Fn(NCO)h(User)f(Guide)p Ft(.)p eop end
 %%Page: 34 40
-TeXDict begin 34 39 bop 150 -116 a FD(34)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(\045)47 b(ncks)g(-H)g(-v)g(one)g
-(~/foo.nc)390 408 y(one)g(=)g(1)275 586 y FD(And,)30
-b(of)h(course,)h FC(OP)n(eND)n(AP)p FD(-enabled)e FC(NCO)h
-FD(clien)m(ts)h(con)m(tin)m(ue)g(to)g(supp)s(ort)d(orthogonal)k
+TeXDict begin 34 39 bop 150 -116 a FE(34)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(\045)47 b(ncks)g(-H)g(-v)g(one)g
+(~/foo.nc)390 408 y(one)g(=)g(1)275 586 y FE(And,)30
+b(of)h(course,)h FD(OP)n(eND)n(AP)p FE(-enabled)e FD(NCO)h
+FE(clien)m(ts)h(con)m(tin)m(ue)g(to)g(supp)s(ort)d(orthogonal)k
 (features)150 695 y(suc)m(h)d(as)h(UDUnits)g(\(see)g(Section)g(3.22)h
-([UDUnits)g(Supp)s(ort],)c(page)j(66\):)390 873 y Fy(\045)47
+([UDUnits)g(Supp)s(ort],)c(page)j(66\):)390 873 y Fz(\045)47
 b(ncks)g(-u)g(-C)g(-H)h(-v)f(wvl)g(-d)g(wvl,'0.4)e(micron','0.7)g
 (micron')h(\\)485 982 y(-p)i(http://thredds-test.uca)o(r.ed)o(u/t)o
 (hred)o(ds/d)o(ods)o(C/te)o(stdo)o(ds)41 b(in_4.nc)390
-1092 y(\045)47 b(wvl[0]=5e-07)e(meter)275 1269 y FD(The)c(next)h
+1092 y(\045)47 b(wvl[0]=5e-07)e(meter)275 1269 y FE(The)c(next)h
 (command)f(is)h(a)g(more)g(adv)-5 b(anced)42 b(example)h(whic)m(h)e
 (demonstrates)h(the)g(real)h(p)s(o)m(w)m(er)150 1379
-y(of)34 b FC(OP)n(eND)n(AP)p FD(-enabled)f FC(NCO)h FD(clien)m(ts.)53
-b(The)33 b Fy(ncwa)g FD(clien)m(t)i(requests)f(an)g(equatorial)h(h)m
-(yp)s(erslab)e(from)150 1489 y(remotely)d(stored)f FC(NCEP)c
-(reanalyses)f(data)k FD(of)h(the)g(y)m(ear)i(1969)r(.)40
-b(The)29 b FC(NO)n(AA)f(OP)n(eND)n(AP)g FD(serv)m(er)h(\(hop)s(e-)150
+y(of)34 b FD(OP)n(eND)n(AP)p FE(-enabled)f FD(NCO)h FE(clien)m(ts.)53
+b(The)33 b Fz(ncwa)g FE(clien)m(t)i(requests)f(an)g(equatorial)h(h)m
+(yp)s(erslab)e(from)150 1489 y(remotely)d(stored)f FD(NCEP)c
+(reanalyses)f(data)k FE(of)h(the)g(y)m(ear)i(1969)r(.)40
+b(The)29 b FD(NO)n(AA)f(OP)n(eND)n(AP)g FE(serv)m(er)h(\(hop)s(e-)150
 1598 y(fully!\))73 b(serv)m(es)42 b(these)f(data.)74
-b(The)41 b(lo)s(cal)h Fy(ncwa)e FD(clien)m(t)j(then)e(computes)g(and)g
+b(The)41 b(lo)s(cal)h Fz(ncwa)e FE(clien)m(t)j(then)e(computes)g(and)g
 (stores)g(\(lo)s(cally\))j(the)150 1708 y(regional)32
 b(mean)e(surface)g(pressure)f(\(in)i(P)m(a\))q(.)390
-1885 y Fy(ncwa)47 b(-C)g(-a)g(lat,lon,time)d(-d)k(lon,-10.,10.)c(-d)j
+1885 y Fz(ncwa)47 b(-C)g(-a)g(lat,lon,time)d(-d)k(lon,-10.,10.)c(-d)j
 (lat,-10.,10.)e(-l)i(/tmp)g(-p)g(\\)390 1995 y
 (http://www.esrl.noaa.gov)o(/psd)o(/thr)o(edd)o(s/do)o(dsC/)o(Dat)o
 (aset)o(s/nc)o(ep.)o(rean)o(alys)o(is.)o(dail)o(yavg)o(s/s)o(urfa)o(ce)
 41 b(\\)485 2104 y(pres.sfc.1969.nc)j(~/foo.nc)150 2282
-y FD(All)28 b(with)f(one)g(command!)40 b(The)26 b(data)i(in)f(this)g
+y FE(All)28 b(with)f(one)g(command!)40 b(The)26 b(data)i(in)f(this)g
 (particular)h(input)e(\014le)h(also)i(happ)s(en)c(to)j(b)s(e)f(pac)m(k)
 m(ed)h(\(see)150 2391 y(Section)c(4.1.11)h([Metho)s(ds)e(and)f
-(functions],)i(page)g(119\),)i(although)d(this)g(complication)i(is)e
+(functions],)i(page)g(131\),)i(although)d(this)g(complication)i(is)e
 (transparen)m(t)150 2501 y(to)31 b(the)g(user)e(since)i
-FC(NCO)f FD(automatically)j(unpac)m(ks)d(data)h(b)s(efore)f(attempting)
-i(arithmetic.)275 2678 y FC(NCO)39 b FD(obtains)g(remote)h(\014les)g
-(from)e(the)i FC(OP)n(eND)n(AP)e FD(serv)m(er)h(\(e.g.,)44
-b Fy(www.cdc.noaa.gov)p FD(\))35 b(rather)150 2788 y(than)h(the)h(lo)s
+FD(NCO)f FE(automatically)j(unpac)m(ks)d(data)h(b)s(efore)f(attempting)
+i(arithmetic.)275 2678 y FD(NCO)39 b FE(obtains)g(remote)h(\014les)g
+(from)e(the)i FD(OP)n(eND)n(AP)e FE(serv)m(er)h(\(e.g.,)44
+b Fz(www.cdc.noaa.gov)p FE(\))35 b(rather)150 2788 y(than)h(the)h(lo)s
 (cal)g(mac)m(hine.)60 b(Input)35 b(\014les)h(are)h(\014rst)e(copied)i
 (to)g(the)g(lo)s(cal)g(mac)m(hine,)i(then)d(pro)s(cessed.)150
-2898 y(The)20 b FC(OP)n(eND)n(AP)f FD(serv)m(er)i(p)s(erforms)e(data)i
+2898 y(The)20 b FD(OP)n(eND)n(AP)f FE(serv)m(er)i(p)s(erforms)e(data)i
 (access,)j(h)m(yp)s(erslabbing,)d(and)f(transfer)g(to)h(the)f(lo)s(cal)
 i(mac)m(hine.)150 3007 y(This)34 b(allo)m(ws)i(the)f(I/O)f(to)i(app)s
-(ear)e(to)h FC(NCO)g FD(as)g(if)g(the)f(input)g(\014les)h(w)m(ere)g(lo)
+(ear)e(to)h FD(NCO)g FE(as)g(if)g(the)f(input)g(\014les)h(w)m(ere)g(lo)
 s(cal.)55 b(The)34 b(lo)s(cal)i(mac)m(hine)150 3117 y(p)s(erforms)24
 b(all)j(arithmetic)g(op)s(erations.)40 b(Only)25 b(the)h(h)m(yp)s
 (erslabb)s(ed)e(output)i(data)g(are)h(transferred)e(o)m(v)m(er)150
@@ -14884,28 +15110,28 @@ b(The)32 b(adv)-5 b(an)m(tages)34 b(of)150 3336 y(this)c(are)h(ob)m
 (vious)g(if)f(y)m(ou)h(are)g(examining)g(small)f(parts)g(of)h(large)g
 (\014les)g(stored)f(at)h(remote)h(lo)s(cations.)275 3513
 y(Natually)j(there)g(are)g(man)m(y)f(v)m(ersions)h(of)g
-FC(OP)n(eND)n(AP)e FD(serv)m(ers)i(supplying)e(data)i(and)f(bugs)g(in)g
+FD(OP)n(eND)n(AP)e FE(serv)m(ers)i(supplying)e(data)i(and)f(bugs)g(in)g
 (the)150 3623 y(serv)m(er)21 b(can)g(app)s(ear)e(to)j(b)s(e)e(bugs)f
-(in)h FC(NCO)p FD(.)38 b(Ho)m(w)m(ev)m(er,)24 b(with)d(v)m(ery)f(few)h
-(exceptions)2951 3590 y Ft(10)3043 3623 y FD(an)f FC(NCO)g
-FD(command)150 3732 y(that)33 b(w)m(orks)e(on)h(a)g(lo)s(cal)i(\014le)e
-(m)m(ust)f(w)m(ork)h(across)h(an)f FC(OP)n(eND)n(AP)e
-FD(connection)k(or)d(else)i(there)f(is)g(a)h(bug)150
+(in)h FD(NCO)p FE(.)38 b(Ho)m(w)m(ev)m(er,)24 b(with)d(v)m(ery)f(few)h
+(exceptions)2951 3590 y Fu(10)3043 3623 y FE(an)f FD(NCO)g
+FE(command)150 3732 y(that)33 b(w)m(orks)e(on)h(a)g(lo)s(cal)i(\014le)e
+(m)m(ust)f(w)m(ork)h(across)h(an)f FD(OP)n(eND)n(AP)e
+FE(connection)k(or)d(else)i(there)f(is)g(a)h(bug)150
 3842 y(in)26 b(the)g(serv)m(er.)39 b(This)26 b(is)g(b)s(ecause)g
-FC(NCO)f FD(do)s(es)h(nothing)g(sp)s(ecial)h(to)f(handle)g(\014les)g
-(serv)m(ed)g(b)m(y)g FC(OP)n(eND)n(AP)p FD(,)150 3952
+FD(NCO)f FE(do)s(es)h(nothing)g(sp)s(ecial)h(to)f(handle)g(\014les)g
+(serv)m(ed)g(b)m(y)g FD(OP)n(eND)n(AP)p FE(,)150 3952
 y(the)35 b(whole)f(pro)s(cess)g(is)h(\(supp)s(osed)d(to)k(b)s(e\))e
 (completely)i(transparen)m(t)e(to)h(the)g(clien)m(t)h
-FC(NCO)e FD(soft)m(w)m(are.)150 4061 y(Therefore)k(it)h(is)f(often)g
-(useful)g(to)h(try)f FC(NCO)f FD(commands)h(on)g(v)-5
-b(arious)38 b FC(OP)n(eND)n(AP)f FD(serv)m(ers)i(in)e(order)150
+FD(NCO)e FE(soft)m(w)m(are.)150 4061 y(Therefore)k(it)h(is)f(often)g
+(useful)g(to)h(try)f FD(NCO)f FE(commands)h(on)g(v)-5
+b(arious)38 b FD(OP)n(eND)n(AP)f FE(serv)m(ers)i(in)e(order)150
 4171 y(to)c(isolate)g(whether)f(a)g(problem)f(ma)m(y)i(b)s(e)e(due)g
-(to)i(a)f(bug)f(in)h(the)g FC(OP)n(eND)n(AP)e FD(serv)m(er)j(on)e(a)i
+(to)i(a)f(bug)f(in)h(the)g FD(OP)n(eND)n(AP)e FE(serv)m(er)j(on)e(a)i
 (particular)150 4280 y(mac)m(hine.)41 b(F)-8 b(or)29
 b(this)g(purp)s(ose,)e(one)i(migh)m(t)g(try)g(v)-5 b(ariations)30
 b(of)e(the)h(follo)m(wing)h(commands)e(that)i(access)150
-4390 y(\014les)g(on)h(public)e FC(OP)n(eND)n(AP)g FD(serv)m(ers:)390
-4567 y Fy(#)47 b(Strided)f(access)g(to)i(HDF5)e(file)390
+4390 y(\014les)g(on)h(public)e FD(OP)n(eND)n(AP)g FE(serv)m(ers:)390
+4567 y Fz(#)47 b(Strided)f(access)g(to)i(HDF5)e(file)390
 4677 y(ncks)h(-v)g(Time)f(-d)i(Time,0,10,2)c
 (http://eosdap.hdfgroup.uiu)o(c.e)o(du:8)o(080/)o(ope)o(ndap)o(/dat)o
 (a/N)o(ASAF)o(ILE)o(S/hd)o(f5/B)o(UV-)o(Nimb)o(us04)o(_L3)o(zm_v)o
@@ -14915,36 +15141,36 @@ y(ncks)i(-O)g(-D)g(1)g(-d)h(time,1)e(-d)h(lev,0)f(-d)h(lat,0,100,10)e
 (-d)i(lon,0,100,10)e(-v)i(u_velocity)e(http://nomads.ncep.noaa)o(.gov)o
 (:90)o(90/d)o(ods/)o(rto)o(fs/r)o(tofs)o(_gl)o(obal)o(2014)o(030)o
 (3/rt)o(ofs_)o(glo)o(_2ds)o(_for)o(eca)o(st_d)o(aily)o(_pr)o(og)d
-(~/foo.nc)p 150 5066 1200 4 v 166 5134 a Ft(10)275 5166
-y Fs(F)-6 b(or)31 b(example,)h Fp(D)n(AP)f Fs(serv)n(ers)g(do)g(not)g
+(~/foo.nc)p 150 5066 1200 4 v 166 5134 a Fu(10)275 5166
+y Ft(F)-6 b(or)31 b(example,)h Fq(D)n(AP)f Ft(serv)n(ers)g(do)g(not)g
 (lik)n(e)g(v)l(ariables)g(with)g(p)r(erio)r(ds)h(\(\\."\))51
 b(in)31 b(their)f(names)i(ev)n(en)e(though)g(this)h(is)275
 5253 y(p)r(erfectly)25 b(legal)i(with)e(netCDF.)g(Suc)n(h)f(names)i(ma)
-n(y)e(cause)i(the)f Fp(D)n(AP)g Fs(service)g(to)g(fail)i(b)r(ecause)f
-Fp(D)n(AP)e Fs(in)n(terprets)h(the)275 5340 y(p)r(erio)r(d)h(as)g
-(structure)f(delimiter)i(in)e(an)h Fp(HTTP)f Fs(query)g(string.)p
+n(y)e(cause)i(the)f Fq(D)n(AP)g Ft(service)g(to)g(fail)i(b)r(ecause)f
+Fq(D)n(AP)e Ft(in)n(terprets)h(the)275 5340 y(p)r(erio)r(d)h(as)g
+(structure)f(delimiter)i(in)e(an)h Fq(HTTP)f Ft(query)g(string.)p
 eop end
 %%Page: 35 41
-TeXDict begin 35 40 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(35)150 299 y(These)31
+TeXDict begin 35 40 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(35)150 299 y(These)31
 b(serv)m(ers)h(w)m(ere)g(op)s(erational)h(at)f(the)g(time)h(of)e
 (writing,)i(Marc)m(h)f(2014.)46 b(Unfortunately)-8 b(,)33
 b(admin-)150 408 y(istrators)39 b(often)f(mo)m(v)m(e)i(or)e(rename)g
 (path)g(directories.)65 b(Recommendations)39 b(for)f(additional)h
-(public)150 518 y FC(OP)n(eND)n(AP)29 b FD(serv)m(ers)i(on)f(whic)m(h)g
-(to)h(test)g FC(NCO)f FD(are)h(w)m(elcome.)150 831 y
-FB(3.8)68 b(Retaining)47 b(Retriev)l(ed)g(Files)150 964
-y Fk(\013)p 200 964 3554 4 v 3553 w(\010)p 150 1454 4
-442 v 178 1100 a FD(Av)-5 b(ailabilit)m(y:)43 b(All)31
-b(op)s(erators)178 1210 y(Short)f(options:)41 b(`)p Fy(-R)p
-FD(')178 1320 y(Long)31 b(options:)41 b(`)p Fy(--rtn)p
-FD(',)29 b(`)p Fy(--retain)p FD(')p 3803 1454 V 150 1506
-a Fk(\012)p 200 1506 3554 4 v 3553 w(\011)275 1702 y
-FD(In)39 b(order)h(to)i(conserv)m(e)f(lo)s(cal)h(\014le)f(system)f
+(public)150 518 y FD(OP)n(eND)n(AP)29 b FE(serv)m(ers)i(on)f(whic)m(h)g
+(to)h(test)g FD(NCO)f FE(are)h(w)m(elcome.)150 831 y
+FC(3.8)68 b(Retaining)47 b(Retriev)l(ed)g(Files)150 964
+y Fl(\013)p 200 964 3554 4 v 3553 w(\010)p 150 1454 4
+442 v 178 1100 a FE(Av)-5 b(ailabilit)m(y:)43 b(All)31
+b(op)s(erators)178 1210 y(Short)f(options:)41 b(`)p Fz(-R)p
+FE(')178 1320 y(Long)31 b(options:)41 b(`)p Fz(--rtn)p
+FE(',)29 b(`)p Fz(--retain)p FE(')p 3803 1454 V 150 1506
+a Fl(\012)p 200 1506 3554 4 v 3553 w(\011)275 1702 y
+FE(In)39 b(order)h(to)i(conserv)m(e)f(lo)s(cal)h(\014le)f(system)f
 (space,)k(\014les)d(retriev)m(ed)g(from)f(remote)i(lo)s(cations)g(are)
 150 1812 y(automatically)30 b(deleted)e(from)e(the)h(lo)s(cal)i(\014le)
 e(system)g(once)h(they)f(ha)m(v)m(e)h(b)s(een)e(pro)s(cessed.)40
-b(Man)m(y)27 b FC(NCO)150 1922 y FD(op)s(erators)33 b(w)m(ere)g
+b(Man)m(y)27 b FD(NCO)150 1922 y FE(op)s(erators)33 b(w)m(ere)g
 (constructed)g(to)h(w)m(ork)f(with)g(n)m(umerous)e(large)j(\(e.g.,)i
 (200)31 b(MB)q(\))i(\014les.)48 b(Retriev)-5 b(al)35
 b(of)150 2031 y(m)m(ultiple)e(\014les)g(from)f(remote)i(lo)s(cations)g
@@ -14955,172 +15181,173 @@ b(of)150 2031 y(m)m(ultiple)e(\014les)g(from)f(remote)i(lo)s(cations)g
 y(\014les)24 b(on)h(the)g(lo)s(cal)g(\014le)g(system)g(after)g(pro)s
 (cessing,)g(the)g(automatic)i(remo)m(v)-5 b(al)25 b(feature)g(ma)m(y)g
 (b)s(e)f(disabled)150 2360 y(b)m(y)30 b(sp)s(ecifying)g(`)p
-Fy(-R)p FD(')h(on)f(the)h(command)f(line.)275 2546 y(In)m(v)m(oking)g
-Fy(-R)f FD(disables)g(the)h(default)g(prin)m(ting)f(b)s(eha)m(vior)h
-(of)g Fy(ncks)p FD(.)39 b(This)29 b(allo)m(ws)i Fy(ncks)d
-FD(to)j(retriev)m(e)150 2656 y(remote)42 b(\014les)g(without)f
+Fz(-R)p FE(')h(on)f(the)h(command)f(line.)275 2546 y(In)m(v)m(oking)g
+Fz(-R)f FE(disables)g(the)h(default)g(prin)m(ting)f(b)s(eha)m(vior)h
+(of)g Fz(ncks)p FE(.)39 b(This)29 b(allo)m(ws)i Fz(ncks)d
+FE(to)j(retriev)m(e)150 2656 y(remote)42 b(\014les)g(without)f
 (automatically)j(trying)e(to)g(prin)m(t)f(them.)73 b(See)42
 b(Section)g(4.7)h([nc)m(ks)e(netCDF)150 2765 y(Kitc)m(hen)31
-b(Sink],)f(page)h(176,)h(for)e(more)h(details.)275 2951
+b(Sink],)f(page)h(188,)h(for)e(more)h(details.)275 2951
 y(Note)i(that)g(the)g(remote)g(retriev)-5 b(al)34 b(features)e(of)h
-FC(NCO)f FD(can)g(alw)m(a)m(ys)i(b)s(e)e(used)g(to)h(retriev)m(e)h
-Fo(any)41 b FD(\014le,)150 3061 y(including)h(non-netCDF)h(\014les,)j
-(via)e Fy(SSH)p FD(,)h(anon)m(ymous)d FC(FTP)p FD(,)k(or)d
-Fy(msrcp)p FD(.)76 b(Often)42 b(this)h(metho)s(d)f(is)150
+FD(NCO)f FE(can)g(alw)m(a)m(ys)i(b)s(e)e(used)g(to)h(retriev)m(e)h
+Fp(any)41 b FE(\014le,)150 3061 y(including)h(non-netCDF)h(\014les,)j
+(via)e Fz(SSH)p FE(,)h(anon)m(ymous)d FD(FTP)p FE(,)k(or)d
+Fz(msrcp)p FE(.)76 b(Often)42 b(this)h(metho)s(d)f(is)150
 3171 y(quic)m(k)m(er)31 b(than)e(using)g(a)h(bro)m(wser,)f(or)h
-(running)e(an)h FC(FTP)g FD(session)h(from)f(a)h(shell)g(windo)m(w)e(y)
+(running)e(an)h FD(FTP)g FE(session)h(from)f(a)h(shell)g(windo)m(w)e(y)
 m(ourself.)41 b(F)-8 b(or)150 3280 y(example,)31 b(sa)m(y)g(y)m(ou)g(w)
-m(an)m(t)g(to)g(obtain)g(a)g FC(JPEG)e FD(\014le)i(from)f(a)g(w)m
-(eather)h(serv)m(er.)390 3466 y Fy(ncks)47 b(-R)g(-p)g
+m(an)m(t)g(to)g(obtain)g(a)g FD(JPEG)e FE(\014le)i(from)f(a)g(w)m
+(eather)h(serv)m(er.)390 3466 y Fz(ncks)47 b(-R)g(-p)g
 (ftp://weather.edu/pub/pi)o(x/jp)o(eg)42 b(-l)47 b(.)g(storm.jpg)150
-3652 y FD(In)e(this)h(example,)k Fy(ncks)45 b FD(automatically)j(p)s
-(erforms)c(an)i(anon)m(ymous)g FC(FTP)f FD(login)i(to)f(the)g(remote)
+3652 y FE(In)e(this)h(example,)k Fz(ncks)45 b FE(automatically)j(p)s
+(erforms)c(an)i(anon)m(ymous)g FD(FTP)f FE(login)i(to)f(the)g(remote)
 150 3762 y(mac)m(hine)41 b(and)e(retriev)m(es)j(the)e(sp)s(eci\014ed)g
-(\014le.)70 b(When)40 b Fy(ncks)f FD(attempts)i(to)g(read)f(the)g(lo)s
-(cal)i(cop)m(y)f(of)150 3871 y Fy(storm.jpg)28 b FD(as)i(a)h(netCDF)g
-(\014le,)g(it)g(fails)g(and)f(exits,)h(lea)m(ving)h Fy(storm.jpg)c
-FD(in)i(the)g(curren)m(t)h(directory)-8 b(.)275 4058
-y(If)27 b(y)m(our)h FC(NCO)g FD(is)g FC(D)n(AP)p FD(-enabled)h(\(see)g
+(\014le.)70 b(When)40 b Fz(ncks)f FE(attempts)i(to)g(read)f(the)g(lo)s
+(cal)i(cop)m(y)f(of)150 3871 y Fz(storm.jpg)28 b FE(as)i(a)h(netCDF)g
+(\014le,)g(it)g(fails)g(and)f(exits,)h(lea)m(ving)h Fz(storm.jpg)c
+FE(in)i(the)g(curren)m(t)h(directory)-8 b(.)275 4058
+y(If)27 b(y)m(our)h FD(NCO)g FE(is)g FD(D)n(AP)p FE(-enabled)h(\(see)g
 (Section)g(3.7.1)h([OP)m(eND)m(AP],)g(page)f(32\),)h(then)e(y)m(ou)g
-(ma)m(y)h(use)150 4167 y FC(NCO)j FD(to)h(retriev)m(e)g(an)m(y)f
-(\014les)g(\(including)g(netCDF,)h FC(HDF)p FD(,)h(etc.\))47
-b(serv)m(ed)32 b(b)m(y)g(an)g FC(OP)n(eND)n(AP)f FD(serv)m(er)h(to)150
+(ma)m(y)h(use)150 4167 y FD(NCO)j FE(to)h(retriev)m(e)g(an)m(y)f
+(\014les)g(\(including)g(netCDF,)h FD(HDF)p FE(,)h(etc.\))47
+b(serv)m(ed)32 b(b)m(y)g(an)g FD(OP)n(eND)n(AP)f FE(serv)m(er)h(to)150
 4277 y(y)m(our)e(lo)s(cal)i(mac)m(hine.)41 b(F)-8 b(or)32
-b(example,)390 4463 y Fy(ncks)47 b(-R)g(-l)g(.)g(-p)h(\\)390
+b(example,)390 4463 y Fz(ncks)47 b(-R)g(-l)g(.)g(-p)h(\\)390
 4572 y(http://www.esrl.noaa.gov)o(/psd)o(/thr)o(edd)o(s/do)o(dsC/)o
 (Dat)o(aset)o(s/nc)o(ep.)o(rean)o(alys)o(is.)o(dail)o(yavg)o(s/s)o
 (urfa)o(ce)41 b(\\)485 4682 y(pres.sfc.1969.nc)275 4868
-y FD(It)f(ma)m(y)g(o)s(ccasionally)j(b)s(e)c(useful)g(to)i(use)f
-FC(NCO)g FD(to)g(transfer)g(\014les)g(when)f(y)m(our)h(other)g
+y FE(It)f(ma)m(y)g(o)s(ccasionally)j(b)s(e)c(useful)g(to)i(use)f
+FD(NCO)g FE(to)g(transfer)g(\014les)g(when)f(y)m(our)h(other)g
 (preferred)150 4978 y(metho)s(ds)30 b(are)g(not)h(a)m(v)-5
-b(ailable)33 b(lo)s(cally)-8 b(.)150 5290 y FB(3.9)68
+b(ailable)33 b(lo)s(cally)-8 b(.)150 5290 y FC(3.9)68
 b(File)46 b(F)-11 b(ormats)45 b(and)f(Con)l(v)l(ersion)p
 eop end
 %%Page: 36 42
-TeXDict begin 36 41 bop 150 -116 a FD(36)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 51 y Fk(\013)p 200 51 3554
-4 v 3553 w(\010)p 150 541 4 442 v 178 188 a FD(Av)-5
-b(ailabilit)m(y:)43 b Fy(ncap2)p FD(,)30 b Fy(ncbo)p
-FD(,)f Fy(nces)p FD(,)h Fy(ncecat)p FD(,)f Fy(ncflint)p
-FD(,)f Fy(ncks)p FD(,)i Fy(ncpdq)p FD(,)f Fy(ncra)p FD(,)g
-Fy(ncrcat)p FD(,)g Fy(ncwa)178 297 y FD(Short)h(options:)41
-b(`)p Fy(-3)p FD(',)31 b(`)p Fy(-4)p FD(',)f(`)p Fy(-6)p
-FD(',)h(`)p Fy(-7)p FD(')178 407 y(Long)g(options:)41
-b(`)p Fy(--3)p FD(',)30 b(`)p Fy(--4)p FD(',)g(`)p Fy(--6)p
-FD(',)h(`)p Fy(--64bit)p FD(',)e(`)p Fy(--7)p FD(',)h(`)p
-Fy(--fl_fmt)p FD(',)f(`)p Fy(--netcdf4)p FD(')p 3803
-541 V 150 593 a Fk(\012)p 200 593 3554 4 v 3553 w(\011)275
-781 y FD(All)36 b FC(NCO)g FD(op)s(erators)g(supp)s(ort)e(\(read)i(and)
-f(write\))i(all)f(three)h(\(or)f(four,)h(dep)s(ending)d(on)i(ho)m(w)g
-(one)150 890 y(coun)m(ts\))27 b(\014le)f(formats)g(supp)s(orted)e(b)m
-(y)i(netCDF4.)40 b(The)25 b(default)i(output)e(\014le)h(format)g(for)g
-(all)h(op)s(erators)150 1000 y(is)33 b(the)g(input)f(\014le)h(format.)
-48 b(The)32 b(op)s(erators)h(listed)g(under)f(\\Av)-5
-b(ailabilit)m(y")36 b(ab)s(o)m(v)m(e)e(allo)m(w)g(the)f(user)f(to)150
-1109 y(sp)s(ecify)g(the)h(output)g(\014le)g(format)g(indep)s(enden)m(t)
-f(of)h(the)g(input)f(\014le)g(format.)49 b(These)32 b(op)s(erators)h
-(allo)m(w)150 1219 y(the)26 b(user)e(to)i(con)m(v)m(ert)h(b)s(et)m(w)m
-(een)f(the)g(v)-5 b(arious)25 b(\014le)h(formats.)39
-b(\(The)25 b(op)s(erators)h Fy(ncatted)d FD(and)i Fy(ncrename)150
-1329 y FD(do)39 b(not)h(supp)s(ort)d(these)j(switc)m(hes)g(so)g(they)f
+TeXDict begin 36 41 bop 150 -116 a FE(36)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 51 y Fl(\013)p 200 51 3554
+4 v 3553 w(\010)p 150 541 4 442 v 178 188 a FE(Av)-5
+b(ailabilit)m(y:)43 b Fz(ncap2)p FE(,)30 b Fz(nces)p
+FE(,)f Fz(ncecat)p FE(,)g Fz(ncflint)p FE(,)g Fz(ncks)p
+FE(,)g Fz(ncpdq)p FE(,)g Fz(ncra)p FE(,)h Fz(ncrcat)p
+FE(,)f Fz(ncwa)178 297 y FE(Short)h(options:)41 b(`)p
+Fz(-3)p FE(',)31 b(`)p Fz(-4)p FE(',)f(`)p Fz(-6)p FE(',)h(`)p
+Fz(-7)p FE(')178 407 y(Long)g(options:)41 b(`)p Fz(--3)p
+FE(',)30 b(`)p Fz(--4)p FE(',)g(`)p Fz(--6)p FE(',)h(`)p
+Fz(--64bit)p FE(',)e(`)p Fz(--7)p FE(',)h(`)p Fz(--fl_fmt)p
+FE(',)f(`)p Fz(--netcdf4)p FE(')p 3803 541 V 150 593
+a Fl(\012)p 200 593 3554 4 v 3553 w(\011)275 781 y FE(All)36
+b FD(NCO)g FE(op)s(erators)g(supp)s(ort)e(\(read)i(and)f(write\))i(all)
+f(three)h(\(or)f(four,)h(dep)s(ending)d(on)i(ho)m(w)g(one)150
+890 y(coun)m(ts\))27 b(\014le)f(formats)g(supp)s(orted)e(b)m(y)i
+(netCDF4.)40 b(The)25 b(default)i(output)e(\014le)h(format)g(for)g(all)
+h(op)s(erators)150 1000 y(is)33 b(the)g(input)f(\014le)h(format.)48
+b(The)32 b(op)s(erators)h(listed)g(under)f(\\Av)-5 b(ailabilit)m(y")36
+b(ab)s(o)m(v)m(e)e(allo)m(w)g(the)f(user)f(to)150 1109
+y(sp)s(ecify)g(the)h(output)g(\014le)g(format)g(indep)s(enden)m(t)f(of)
+h(the)g(input)f(\014le)g(format.)49 b(These)32 b(op)s(erators)h(allo)m
+(w)150 1219 y(the)26 b(user)e(to)i(con)m(v)m(ert)h(b)s(et)m(w)m(een)f
+(the)g(v)-5 b(arious)25 b(\014le)h(formats.)39 b(\(The)25
+b(op)s(erators)h Fz(ncatted)d FE(and)i Fz(ncrename)150
+1329 y FE(do)39 b(not)h(supp)s(ort)d(these)j(switc)m(hes)g(so)g(they)f
 (alw)m(a)m(ys)i(write)e(the)h(output)f(netCDF)h(\014le)f(in)g(the)h
 (same)150 1438 y(format)31 b(as)f(the)h(input)e(netCDF)i(\014le.\))150
-1663 y Fu(3.9.1)63 b(File)41 b(F)-10 b(ormats)150 1809
-y FD(netCDF)26 b(supp)s(orts)d(four)h(t)m(yp)s(es)h(of)g(\014les:)38
-b Fy(CLASSIC)p FD(,)24 b Fy(64BIT)p FD(,)h Fy(NETCDF4)p
-FD(,)f(and)g Fy(NETCDF4_CLASSIC)p FD(,)e(The)150 1919
-y Fy(CLASSIC)34 b FD(format)i(is)g(the)g(traditional)h(32-bit)g
+1663 y Fv(3.9.1)63 b(File)41 b(F)-10 b(ormats)150 1809
+y FE(netCDF)26 b(supp)s(orts)d(four)h(t)m(yp)s(es)h(of)g(\014les:)38
+b Fz(CLASSIC)p FE(,)24 b Fz(64BIT)p FE(,)h Fz(NETCDF4)p
+FE(,)f(and)g Fz(NETCDF4_CLASSIC)p FE(,)e(The)150 1919
+y Fz(CLASSIC)34 b FE(format)i(is)g(the)g(traditional)h(32-bit)g
 (o\013set)g(written)f(b)m(y)g(netCDF2)h(and)e(netCDF3.)58
 b(As)36 b(of)150 2029 y(2005,)j(nearly)d(all)g(netCDF)h(datasets)f(w)m
-(ere)g(in)g Fy(CLASSIC)d FD(format.)57 b(The)35 b Fy(64BIT)g
-FD(format)h(w)m(as)g(added)150 2138 y(in)30 b(F)-8 b(all,)33
-b(2004.)43 b(As)31 b(of)g(2010,)i(man)m(y)e(netCDF)g(datasets)h(w)m
-(ere)f(in)f Fy(64BIT)g FD(format.)42 b(As)30 b(of)h(2013,)i(man)m(y)150
-2248 y(netCDF)e(datasets)h(are)e(in)g Fy(NETCDF4_CLASSIC)d
-FD(format.)275 2420 y(The)h Fy(NETCDF4)f FD(format)j(uses)f
-FC(HDF5)g FD(as)g(the)h(\014le)f(storage)i(la)m(y)m(er.)42
-b(The)28 b(\014les)h(are)h(\(usually\))g(created,)150
-2529 y(accessed,)f(and)e(manipulated)g(using)g(the)h(traditional)h
-(netCDF3)f FC(API)f FD(\(with)g(n)m(umerous)g(extensions\).)150
-2639 y(The)i Fy(NETCDF4_CLASSIC)c FD(format)30 b(refers)f(to)h(netCDF4)
-g(\014les)f(created)i(with)e(the)g Fy(NC_CLASSIC_MODEL)150
-2749 y FD(mask.)44 b(Suc)m(h)30 b(\014les)h(use)g FC(HDF5)h
-FD(as)g(the)f(bac)m(k-end)h(storage)h(format)e(\(unlik)m(e)h
-(netCDF3\),)i(though)d(they)150 2858 y(incorp)s(orate)g(only)g(netCDF3)
-h(features.)42 b(Hence)32 b Fy(NETCDF4_CLASSIC)27 b FD(\014les)k(are)g
-(en)m(tirely)h(readable)f(b)m(y)150 2968 y(applications)h(that)g(use)f
-(only)g(the)g(netCDF3)i FC(API)d FD(\(though)i(the)f(applications)h(m)m
-(ust)f(b)s(e)g(link)m(ed)g(with)150 3077 y(the)e(netCDF4)i(library\).)
-40 b FC(NCO)29 b FD(m)m(ust)g(b)s(e)g(built)g(with)g(netCDF4)h(to)g
-(write)g(\014les)f(in)g(the)g(new)g Fy(NETCDF4)150 3187
-y FD(and)j Fy(NETCDF4_CLASSIC)c FD(formats,)33 b(and)f(to)h(read)f
-(\014les)h(in)f(these)h(formats.)47 b(Datasets)34 b(in)e(the)h(default)
-150 3296 y Fy(CLASSIC)i FD(or)j(the)f(new)m(er)h Fy(64BIT)e
-FD(formats)h(ha)m(v)m(e)i(maxim)m(um)e(bac)m(kw)m(ards-compatibilit)m
-(y)k(with)c(older)150 3406 y(applications.)69 b FC(NCO)39
-b FD(has)g(deep)g(supp)s(ort)f(for)h Fy(NETCDF4)f FD(formats.)67
+(ere)g(in)g Fz(CLASSIC)d FE(format.)57 b(The)35 b Fz(64BIT)g
+FE(format)h(w)m(as)g(added)150 2138 y(in)g(F)-8 b(all,)40
+b(2004.)61 b(As)37 b(of)f(2010,)k(man)m(y)d(netCDF)g(datasets)h(w)m
+(ere)f(in)f Fz(64BIT)f FE(format.)60 b(As)36 b(of)h(2013,)j(an)150
+2248 y(increasing)31 b(n)m(um)m(b)s(er)e(of)i(netCDF)g(datasets)g(w)m
+(ere)g(in)f Fz(NETCDF4_CLASSIC)c FE(format.)275 2420
+y(The)i Fz(NETCDF4)f FE(format)j(uses)f FD(HDF5)g FE(as)g(the)h(\014le)
+f(storage)i(la)m(y)m(er.)42 b(The)28 b(\014les)h(are)h(\(usually\))g
+(created,)150 2529 y(accessed,)f(and)e(manipulated)g(using)g(the)h
+(traditional)h(netCDF3)f FD(API)f FE(\(with)g(n)m(umerous)g
+(extensions\).)150 2639 y(The)i Fz(NETCDF4_CLASSIC)c
+FE(format)30 b(refers)f(to)h(netCDF4)g(\014les)f(created)i(with)e(the)g
+Fz(NC_CLASSIC_MODEL)150 2749 y FE(mask.)44 b(Suc)m(h)30
+b(\014les)h(use)g FD(HDF5)h FE(as)g(the)f(bac)m(k-end)h(storage)h
+(format)e(\(unlik)m(e)h(netCDF3\),)i(though)d(they)150
+2858 y(incorp)s(orate)g(only)g(netCDF3)h(features.)42
+b(Hence)32 b Fz(NETCDF4_CLASSIC)27 b FE(\014les)k(are)g(en)m(tirely)h
+(readable)f(b)m(y)150 2968 y(applications)h(that)g(use)f(only)g(the)g
+(netCDF3)i FD(API)d FE(\(though)i(the)f(applications)h(m)m(ust)f(b)s(e)
+g(link)m(ed)g(with)150 3077 y(the)e(netCDF4)i(library\).)40
+b FD(NCO)29 b FE(m)m(ust)g(b)s(e)g(built)g(with)g(netCDF4)h(to)g(write)
+g(\014les)f(in)g(the)g(new)g Fz(NETCDF4)150 3187 y FE(and)j
+Fz(NETCDF4_CLASSIC)c FE(formats,)33 b(and)f(to)h(read)f(\014les)h(in)f
+(these)h(formats.)47 b(Datasets)34 b(in)e(the)h(default)150
+3296 y Fz(CLASSIC)i FE(or)j(the)f(new)m(er)h Fz(64BIT)e
+FE(formats)h(ha)m(v)m(e)i(maxim)m(um)e(bac)m(kw)m(ards-compatibilit)m
+(y)k(with)c(older)150 3406 y(applications.)69 b FD(NCO)39
+b FE(has)g(deep)g(supp)s(ort)f(for)h Fz(NETCDF4)f FE(formats.)67
 b(If)39 b(p)s(erformance)g(or)g(disk-space)150 3516 y(as)e(imp)s(ortan)
 m(t)h(as)f(bac)m(kw)m(ards)h(compatibilit)m(y)-8 b(,)41
-b(then)c(use)g Fy(NETCDF4_CLASSIC)c FD(instead)38 b(of)f
-Fy(CLASSIC)150 3625 y FD(format)c(\014les.)50 b(As)33
-b(of)g(2014,)j FC(NCO)d FD(supp)s(ort)e(for)i(the)g Fy(NETCDF4)f
-FD(format)h(is)g(nearly)h(complete)g(and)f(the)150 3735
-y(most)e(p)s(o)m(w)m(erful)f(and)f(disk/)p FC(RAM)i FD(e\016cien)m(t)h
+b(then)c(use)g Fz(NETCDF4_CLASSIC)c FE(instead)38 b(of)f
+Fz(CLASSIC)150 3625 y FE(format)c(\014les.)50 b(As)33
+b(of)g(2014,)j FD(NCO)d FE(supp)s(ort)e(for)i(the)g Fz(NETCDF4)f
+FE(format)h(is)g(nearly)h(complete)g(and)f(the)150 3735
+y(most)e(p)s(o)m(w)m(erful)f(and)f(disk/)p FD(RAM)i FE(e\016cien)m(t)h
 (w)m(ork\015o)m(ws)f(will)f(utilize)i(this)e(format.)275
 3907 y(As)g(men)m(tioned)h(ab)s(o)m(v)m(e,)g(all)h(op)s(erators)e
 (write)h(use)f(the)g(input)f(\014le)i(format)f(for)g(output)g(\014les)h
 (unless)150 4016 y(told)40 b(otherwise.)67 b(T)-8 b(oggling)41
-b(the)e(short)g(option)g(`)p Fy(-6)p FD(')g(or)g(the)g(long)h(option)f
-(`)p Fy(--6)p FD(')g(or)g(`)p Fy(--64bit)p FD(')f(\(or)150
-4126 y(their)f Fz(k)m(ey)p FD(-)p Fz(v)-5 b(alue)44 b
-FD(equiv)-5 b(alen)m(t)38 b(`)p Fy(--fl_fmt=64bit)p FD('\))c(pro)s
+b(the)e(short)g(option)g(`)p Fz(-6)p FE(')g(or)g(the)g(long)h(option)f
+(`)p Fz(--6)p FE(')g(or)g(`)p Fz(--64bit)p FE(')f(\(or)150
+4126 y(their)f FA(k)m(ey)p FE(-)p FA(v)-5 b(alue)44 b
+FE(equiv)-5 b(alen)m(t)38 b(`)p Fz(--fl_fmt=64bit)p FE('\))c(pro)s
 (duces)h(the)i(netCDF3)h(64-bit)h(o\013set)f(format)150
-4236 y(named)j Fy(64BIT)p FD(.)74 b FC(NCO)41 b FD(m)m(ust)h(b)s(e)f
+4236 y(named)j Fz(64BIT)p FE(.)74 b FD(NCO)41 b FE(m)m(ust)h(b)s(e)f
 (built)h(with)f(netCDF)31 b(3.6)43 b(or)f(higher)f(to)i(pro)s(duce)d(a)
-i Fy(64BIT)f FD(\014le.)150 4345 y(Using)c(the)h(`)p
-Fy(-4)p FD(')f(switc)m(h)g(\(or)h(its)g(long)f(option)h(equiv)-5
-b(alen)m(ts)39 b(`)p Fy(--4)p FD(')d(or)i(`)p Fy(--netcdf4)p
-FD('\),)f(or)g(setting)i(its)150 4455 y Fz(k)m(ey)p FD(-)p
-Fz(v)-5 b(alue)38 b FD(equiv)-5 b(alen)m(t)34 b(`)p Fy
-(--fl_fmt=netcdf4)p FD(')27 b(pro)s(duces)k(a)h Fy(NETCDF4)d
-FD(\014le)j(\(i.e.,)i(with)d(all)i(supp)s(orted)150 4564
-y FC(HDF5)h FD(features\).)52 b(Using)34 b(the)g(`)p
-Fy(-7)p FD(')f(switc)m(h)i(\(or)f(its)g(long)g(option)h(equiv)-5
-b(alen)m(t)35 b(`)p Fy(--7)p FD(')3107 4531 y Ft(11)3177
-4564 y FD(,)g(or)f(setting)h(its)150 4674 y Fz(k)m(ey)p
-FD(-)p Fz(v)-5 b(alue)39 b FD(equiv)-5 b(alen)m(t)33
-b(`)p Fy(--fl_fmt=netcdf4_classic)p FD(')26 b(pro)s(duces)k(a)j
-Fy(NETCDF4_CLASSIC)27 b FD(\014le)32 b(\(i.e.,)150 4783
-y(with)25 b(all)i(supp)s(orted)d FC(HDF5)h FD(features)h(lik)m(e)h
+i Fz(64BIT)f FE(\014le.)150 4345 y(Using)c(the)h(`)p
+Fz(-4)p FE(')f(switc)m(h)g(\(or)h(its)g(long)f(option)h(equiv)-5
+b(alen)m(ts)39 b(`)p Fz(--4)p FE(')d(or)i(`)p Fz(--netcdf4)p
+FE('\),)f(or)g(setting)i(its)150 4455 y FA(k)m(ey)p FE(-)p
+FA(v)-5 b(alue)38 b FE(equiv)-5 b(alen)m(t)34 b(`)p Fz
+(--fl_fmt=netcdf4)p FE(')27 b(pro)s(duces)k(a)h Fz(NETCDF4)d
+FE(\014le)j(\(i.e.,)i(with)d(all)i(supp)s(orted)150 4564
+y FD(HDF5)h FE(features\).)52 b(Using)34 b(the)g(`)p
+Fz(-7)p FE(')f(switc)m(h)i(\(or)f(its)g(long)g(option)h(equiv)-5
+b(alen)m(t)35 b(`)p Fz(--7)p FE(')3107 4531 y Fu(11)3177
+4564 y FE(,)g(or)f(setting)h(its)150 4674 y FA(k)m(ey)p
+FE(-)p FA(v)-5 b(alue)39 b FE(equiv)-5 b(alen)m(t)33
+b(`)p Fz(--fl_fmt=netcdf4_classic)p FE(')26 b(pro)s(duces)k(a)j
+Fz(NETCDF4_CLASSIC)27 b FE(\014le)32 b(\(i.e.,)150 4783
+y(with)25 b(all)i(supp)s(orted)d FD(HDF5)h FE(features)h(lik)m(e)h
 (compression)f(and)f(c)m(h)m(unking)g(but)g(without)h(groups)f(or)g
 (new)150 4893 y(atomic)32 b(t)m(yp)s(es\).)41 b(Op)s(erators)30
-b(giv)m(en)h(the)g(`)p Fy(-3)p FD(')f(\(or)h(`)p Fy(--3)p
-FD('\))f(switc)m(h)h(without)f(argumen)m(ts)h(will)f(\(attempt)150
-5003 y(to\))h(pro)s(duce)f(netCDF3)h Fy(CLASSIC)e FD(output,)h(ev)m(en)
+b(giv)m(en)h(the)g(`)p Fz(-3)p FE(')f(\(or)h(`)p Fz(--3)p
+FE('\))f(switc)m(h)h(without)f(argumen)m(ts)h(will)f(\(attempt)150
+5003 y(to\))h(pro)s(duce)f(netCDF3)h Fz(CLASSIC)e FE(output,)h(ev)m(en)
 h(from)f(netCDF4)h(input)f(\014les.)p 150 5154 1200 4
-v 166 5221 a Ft(11)292 5253 y Fs(The)18 b(reason)h(\(and)e(mnemonic\))h
-(for)g(`)p Fr(-7)p Fs(')h(is)f(that)g Fr(NETCDF4_CLASSIC)j
-Fs(\014les)d(include)g(great)g(features)h(of)f(b)r(oth)g(netCDF3)275
+v 166 5221 a Fu(11)292 5253 y Ft(The)18 b(reason)h(\(and)e(mnemonic\))h
+(for)g(`)p Fs(-7)p Ft(')h(is)f(that)g Fs(NETCDF4_CLASSIC)j
+Ft(\014les)d(include)g(great)g(features)h(of)f(b)r(oth)g(netCDF3)275
 5340 y(\(compatibilit)n(y\))26 b(and)f(netCDF4)h(\(compression,)h(c)n
 (h)n(unking\))d(and,)i(w)n(ell,)h(3)17 b(+)g(4)22 b(=)f(7.)p
 eop end
 %%Page: 37 43
-TeXDict begin 37 42 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(37)275 299 y(Note)24
-b(that)h Fy(NETCDF4)c FD(and)i Fy(NETCDF4_CLASSIC)d FD(are)k(the)g
+TeXDict begin 37 42 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(37)275 299 y(Note)24
+b(that)h Fz(NETCDF4)c FE(and)i Fz(NETCDF4_CLASSIC)d FE(are)k(the)g
 (same)g(binary)e(format.)39 b(The)23 b(latter)i(simply)150
 408 y(causes)38 b(a)h(writing)e(application)j(to)e(fail)h(if)f(it)g
-(attempts)h(to)f(write)h(a)f Fy(NETCDF4)e FD(\014le)i(that)g(cannot)h
+(attempts)h(to)f(write)h(a)f Fz(NETCDF4)e FE(\014le)i(that)g(cannot)h
 (b)s(e)150 518 y(completely)47 b(read)d(b)m(y)h(the)g(netCDF3)h
-(library)-8 b(.)84 b(Con)m(v)m(ersely)-8 b(,)50 b Fy(NETCDF4_CLASSIC)41
-b FD(indicates)46 b(to)g(a)150 628 y(reading)25 b(application)i(that)f
+(library)-8 b(.)84 b(Con)m(v)m(ersely)-8 b(,)50 b Fz(NETCDF4_CLASSIC)41
+b FE(indicates)46 b(to)g(a)150 628 y(reading)25 b(application)i(that)f
 (all)g(of)f(the)h(\014le)f(con)m(ten)m(ts)i(are)f(readable)f(with)g
-(the)h(netCDF3)g(library)-8 b(.)39 b FC(NCO)150 737 y
-FD(has)h(supp)s(orted)f(reading/writing)i(basic)g Fy(NETCDF4)e
-FD(and)h Fy(NETCDF4_CLASSIC)c FD(\014les)41 b(since)g(Octob)s(er,)150
-847 y(2005.)150 1049 y Fu(3.9.2)63 b(Determining)42 b(File)f(F)-10
-b(ormat)150 1196 y FD(Input)41 b(\014les)i(often)g(end)g(with)f(the)h
-(generic)h Fy(.nc)e FD(su\016x)g(that)h(lea)m(v)m(es)i(\(p)s(erhaps)c
+(the)h(netCDF3)g(library)-8 b(.)39 b FD(NCO)150 737 y
+FE(has)h(supp)s(orted)f(reading/writing)i(basic)g Fz(NETCDF4)e
+FE(and)h Fz(NETCDF4_CLASSIC)c FE(\014les)41 b(since)g(Octob)s(er,)150
+847 y(2005.)150 1049 y Fv(3.9.2)63 b(Determining)42 b(File)f(F)-10
+b(ormat)150 1196 y FE(Input)41 b(\014les)i(often)g(end)g(with)f(the)h
+(generic)h Fz(.nc)e FE(su\016x)g(that)h(lea)m(v)m(es)i(\(p)s(erhaps)c
 (b)m(y)i(in)m(ten)m(tion\))i(the)150 1306 y(in)m(ternal)26
 b(\014le)f(format)g(am)m(biguous.)39 b(There)24 b(are)i(at)f(least)h
 (three)f(w)m(a)m(ys)h(to)g(disco)m(v)m(er)g(the)f(in)m(ternal)h(format)
@@ -15132,8 +15359,8 @@ b(Eac)m(h)42 b(metho)s(d)e(returns)150 1634 y(the)27
 b(information)f(using)g(sligh)m(tly)i(di\013eren)m(t)f(terminology)h
 (that)f(b)s(ecomes)g(easier)g(to)h(understand)c(with)150
 1744 y(practice.)275 1905 y(First,)31 b(examine)g(the)f(\014rst)g(line)
-g(of)h(global)h(metadata)g(output)e(b)m(y)g(`)p Fy(ncks)f(-M)p
-FD(':)390 2066 y Fy(\045)47 b(ncks)g(-M)g(foo_3c.nc)390
+g(of)h(global)h(metadata)g(output)e(b)m(y)g(`)p Fz(ncks)f(-M)p
+FE(':)390 2066 y Fz(\045)47 b(ncks)g(-M)g(foo_3c.nc)390
 2176 y(Summary)f(of)h(foo_3c.nc:)e(filetype)h(=)h(NC_FORMAT_CLASSIC,)c
 (0)k(groups)f(...)390 2285 y(\045)h(ncks)g(-M)g(foo_364.nc)390
 2395 y(Summary)f(of)h(foo_364.nc:)e(filetype)g(=)j(NC_FORMAT_64BIT,)43
@@ -15142,24 +15369,24 @@ b(0)48 b(groups)e(...)390 2504 y(\045)h(ncks)g(-M)g(foo_4c.nc)390
 (NC_FORMAT_NETCDF4_CLASSI)o(C,)42 b(0)47 b(groups)f(...)390
 2724 y(\045)h(ncks)g(-M)g(foo_4.nc)390 2833 y(Summary)f(of)h(foo_4.nc:)
 e(filetype)h(=)h(NC_FORMAT_NETCDF4,)c(0)48 b(groups)e(...)275
-2994 y FD(This)30 b(metho)s(d)h(requires)f(a)i(netCDF4-enabled)h
-FC(NCO)e FD(v)m(ersion)g(3.9.0)p Fy(+)i FD(\(i.e.,)g(from)e(2007)i(or)e
-(later\).)150 3104 y(As)k(of)g FC(NCO)g FD(v)m(ersion)g(4.4.0)i(\(Jan)m
-(uary)-8 b(,)37 b(2014\),)h Fy(ncks)c FD(will)h(also)h(prin)m(t)f(the)g
+2994 y FE(This)30 b(metho)s(d)h(requires)f(a)i(netCDF4-enabled)h
+FD(NCO)e FE(v)m(ersion)g(3.9.0)p Fz(+)i FE(\(i.e.,)g(from)e(2007)i(or)e
+(later\).)150 3104 y(As)k(of)g FD(NCO)g FE(v)m(ersion)g(4.4.0)i(\(Jan)m
+(uary)-8 b(,)37 b(2014\),)h Fz(ncks)c FE(will)h(also)h(prin)m(t)f(the)g
 (extended)g(or)g(underlying)150 3213 y(format)i(of)g(the)g(input)f
 (\014le.)61 b(The)36 b(extended)h(\014let)m(yp)s(e)g(will)g(b)s(e)g
 (one)g(of)g(the)g(six)g(underlying)f(formats)150 3323
 y(that)44 b(are)f(accessible)i(through)d(the)i(netCDF)g
-FC(API)p FD(.)78 b(These)43 b(formats)g(are)h Fy(NC_FORMAT_NC3)39
-b FD(\(clas-)150 3432 y(sic)i(and)f(64-bit)h(v)m(ersions)g(of)g
-(netCDF3)g(formats\),)j Fy(NC_FORMAT_NC_HDF5)36 b FD(\(classic)42
+FD(API)p FE(.)78 b(These)43 b(formats)g(are)h Fz(NC_FORMAT_NC3)39
+b FE(\(clas-)150 3432 y(sic)i(and)f(64-bit)h(v)m(ersions)g(of)g
+(netCDF3)g(formats\),)j Fz(NC_FORMAT_NC_HDF5)36 b FE(\(classic)42
 b(and)e(extended)150 3542 y(v)m(ersions)28 b(of)g(netCDF4,)i(and)d
-(\\pure")h(HDF5)h(format\),)h Fy(NC_FORMAT_NC_HDF4)23
-b FD(\(HDF4)29 b(format\),)h Fy(NC_)150 3652 y(FORMAT_PNETCDF)f
-FD(\(PnetCDF)k(format\),)h Fy(NC_FORMAT_DAP2)29 b FD(\(accessed)34
-b(via)f(D)m(AP2)h(proto)s(col\),)h(and)150 3761 y Fy(NC_FORMAT_DAP4)26
-b FD(\(accessed)32 b(via)f(D)m(AP2)h(proto)s(col\).)42
-b(F)-8 b(or)31 b(example,)390 3922 y Fy(\045)47 b(ncks)g(-D)g(2)h(-M)f
+(\\pure")h(HDF5)h(format\),)h Fz(NC_FORMAT_NC_HDF4)23
+b FE(\(HDF4)29 b(format\),)h Fz(NC_)150 3652 y(FORMAT_PNETCDF)f
+FE(\(PnetCDF)k(format\),)h Fz(NC_FORMAT_DAP2)29 b FE(\(accessed)34
+b(via)f(D)m(AP2)h(proto)s(col\),)h(and)150 3761 y Fz(NC_FORMAT_DAP4)26
+b FE(\(accessed)32 b(via)f(D)m(AP2)h(proto)s(col\).)42
+b(F)-8 b(or)31 b(example,)390 3922 y Fz(\045)47 b(ncks)g(-D)g(2)h(-M)f
 (hdf.hdf)390 4032 y(Summary)f(of)h(hdf.hdf:)f(filetype)f(=)j
 (NC_FORMAT_NETCDF4)43 b(\(representation)g(of)k(\\)485
 4141 y(extended/underlying)c(filetype)j(NC_FORMAT_HDF4\),)d(0)k(groups)
@@ -15172,46 +15399,46 @@ f(...)390 4251 y(\045)h(ncks)g(-D)g(2)h(-M)f(http://thredds-test.ucar)o
 48 b(groups)390 4689 y(\045)f(ncks)g(-D)g(2)h(-M)f(foo_4.nc)390
 4799 y(Summary)f(of)h(foo_4.nc:)e(filetype)h(=)h(NC_FORMAT_NETCDF4)c
 (\(representation)h(of)j(\\)485 4908 y(extended/underlying)c(filetype)j
-(NC_FORMAT_HDF5\),)d(0)k(groups)275 5069 y FD(The)29
+(NC_FORMAT_HDF5\),)d(0)k(groups)275 5069 y FE(The)29
 b(extended)h(\014let)m(yp)s(e)h(determines)f(some)h(of)f(the)h
 (capabilities)h(that)f(netCDF)g(has)f(to)h(alter)g(the)150
 5179 y(\014le.)275 5340 y(Second,)f(query)g(the)g(\014le)h(with)f(`)p
-Fy(ncdump)f(-k)p FD(':)p eop end
+Fz(ncdump)f(-k)p FE(':)p eop end
 %%Page: 38 44
-TeXDict begin 38 43 bop 150 -116 a FD(38)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(\045)47 b(ncdump)g(-k)g
+TeXDict begin 38 43 bop 150 -116 a FE(38)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(\045)47 b(ncdump)g(-k)g
 (foo_3c.nc)390 408 y(classic)390 518 y(\045)g(ncdump)g(-k)g(foo_364.nc)
 390 628 y(64-bit-offset)390 737 y(\045)g(ncdump)g(-k)g(foo_4c.nc)390
 847 y(netCDF-4)f(classic)f(model)390 956 y(\045)i(ncdump)g(-k)g
-(foo_4.nc)390 1066 y(netCDF-4)275 1238 y FD(This)29 b(metho)s(d)h
-(requires)g(a)h(netCDF4-enabled)g FC(netCDF)h FD(3.6.2)p
-Fy(+)f FD(\(i.e.,)i(from)c(2007)k(or)d(later\).)275 1410
+(foo_4.nc)390 1066 y(netCDF-4)275 1238 y FE(This)29 b(metho)s(d)h
+(requires)g(a)h(netCDF4-enabled)g FD(netCDF)h FE(3.6.2)p
+Fz(+)f FE(\(i.e.,)i(from)c(2007)k(or)d(later\).)275 1410
 y(The)f(third)h(option)h(uses)f(the)g(POSIX-standard)f
-Fy(od)h FD(\(o)s(ctal)i(dump\))d(command:)390 1582 y
-Fy(\045)47 b(od)h(-An)f(-c)g(-N4)g(foo_3c.nc)533 1692
+Fz(od)h FE(\(o)s(ctal)i(dump\))d(command:)390 1582 y
+Fz(\045)47 b(od)h(-An)f(-c)g(-N4)g(foo_3c.nc)533 1692
 y(C)143 b(D)g(F)47 b(001)390 1802 y(\045)g(od)h(-An)f(-c)g(-N4)g
 (foo_364.nc)533 1911 y(C)143 b(D)g(F)47 b(002)390 2021
 y(\045)g(od)h(-An)f(-c)g(-N4)g(foo_4c.nc)438 2130 y(211)142
 b(H)h(D)g(F)390 2240 y(\045)47 b(od)h(-An)f(-c)g(-N4)g(foo_4.nc)438
-2350 y(211)142 b(H)h(D)g(F)275 2522 y FD(This)44 b(option)h(w)m(orks)g
-(without)f FC(NCO)h FD(and)f Fy(ncdump)p FD(.)83 b(V)-8
-b(alues)45 b(of)g(`)p Fy(C)31 b(D)f(F)g(001)p FD(')44
-b(and)g(`)p Fy(C)31 b(D)f(F)g(002)p FD(')150 2631 y(indicate)i(32-bit)f
+2350 y(211)142 b(H)h(D)g(F)275 2522 y FE(This)44 b(option)h(w)m(orks)g
+(without)f FD(NCO)h FE(and)f Fz(ncdump)p FE(.)83 b(V)-8
+b(alues)45 b(of)g(`)p Fz(C)31 b(D)f(F)g(001)p FE(')44
+b(and)g(`)p Fz(C)31 b(D)f(F)g(002)p FE(')150 2631 y(indicate)i(32-bit)f
 (\(classic\))i(and)d(64-bit)i(netCDF3)g(formats,)f(resp)s(ectiv)m(ely)
--8 b(,)32 b(while)f(v)-5 b(alues)31 b(of)g(`)p Fy(211)e(H)h(D)150
-2741 y(F)p FD(')g(indicate)i(either)f(of)f(the)h(new)m(er)f(netCDF4)h
-(\014le)g(formats.)150 2966 y Fu(3.9.3)63 b(File)41 b(Con)m(v)m(ersion)
-150 3113 y FD(Let)f(us)e(demonstrate)i(con)m(v)m(erting)h(a)f(\014le)f
+-8 b(,)32 b(while)f(v)-5 b(alues)31 b(of)g(`)p Fz(211)e(H)h(D)150
+2741 y(F)p FE(')g(indicate)i(either)f(of)f(the)h(new)m(er)f(netCDF4)h
+(\014le)g(formats.)150 2966 y Fv(3.9.3)63 b(File)41 b(Con)m(v)m(ersion)
+150 3113 y FE(Let)f(us)e(demonstrate)i(con)m(v)m(erting)h(a)f(\014le)f
 (from)g(an)m(y)g(netCDF-supp)s(orted)g(input)f(format)h(in)m(to)i(an)m
 (y)150 3222 y(netCDF)32 b(output)f(format)h(\(sub)5 b(ject)31
 b(to)h(limits)g(of)g(the)g(output)f(format\).)44 b(Here)32
-b(the)f(input)g(\014le)g Fy(in.nc)150 3332 y FD(ma)m(y)38
+b(the)f(input)g(\014le)g Fz(in.nc)150 3332 y FE(ma)m(y)38
 b(b)s(e)f(in)h(an)m(y)g(of)g(these)g(formats:)55 b(netCDF3)39
 b(\(classic)h(and)d(64bit\),)k(netCDF4)e(\(classic)g(and)e(ex-)150
 3441 y(tended\),)f(HDF4,)h(HDF5,)h(HDF-EOS)d(\(v)m(ersion)g(2)h(or)e
 (5\),)j(and)d(D)m(AP)-8 b(.)37 b(The)d(switc)m(h)h(determines)g(the)150
 3551 y(output)30 b(format)h(written)f(in)g(the)h(commen)m(t:)1710
-3518 y Ft(12)390 3723 y Fy(ncks)47 b(--fl_fmt=classic)c(in.nc)j
+3518 y Fu(12)390 3723 y Fz(ncks)47 b(--fl_fmt=classic)c(in.nc)j
 (foo_3c.nc)g(#)h(netCDF3)f(classic)390 3833 y(ncks)h(--fl_fmt=64bit)d
 (in.nc)i(foo_364.nc)f(#)i(netCDF3)f(64bit)390 3942 y(ncks)h
 (--fl_fmt=netcdf4_classi)o(c)42 b(in.nc)k(foo_4c.nc)f(#)j(netCDF4)e
@@ -15224,66 +15451,66 @@ b(\(classic)h(and)d(64bit\),)k(netCDF4)e(\(classic)g(and)e(ex-)150
 4710 y(ncks)g(--4)g(in.nc)f(foo_4.nc)f(#)j(netCDF4)390
 4819 y(ncks)f(-7)g(in.nc)f(foo_4c.nc)f(#)j(netCDF4)e(classic)390
 4929 y(ncks)h(--7)g(in.nc)f(foo_4c.nc)f(#)j(netCDF4)d(classic)p
-150 5066 1200 4 v 166 5134 a Ft(12)275 5166 y Fs(The)29
-b(switc)n(hes)h(`)p Fr(-5)p Fs(',)h(`)p Fr(--5)p Fs(',)g(and)d(`)p
-Fr(pnetcdf)p Fs(')k(are)d(reserv)n(ed)g(for)g(PnetCDF)g(\014les,)i
-(i.e.,)g Fr(NC_FORMAT_PNETCDF)p Fs(.)48 b(Suc)n(h)275
+150 5066 1200 4 v 166 5134 a Fu(12)275 5166 y Ft(The)29
+b(switc)n(hes)h(`)p Fs(-5)p Ft(',)h(`)p Fs(--5)p Ft(',)g(and)d(`)p
+Fs(pnetcdf)p Ft(')k(are)d(reserv)n(ed)g(for)g(PnetCDF)g(\014les,)i
+(i.e.,)g Fs(NC_FORMAT_PNETCDF)p Ft(.)48 b(Suc)n(h)275
 5253 y(\014les)34 b(are)g(similar)i(to)e(netCDF3)g(classic)i(\014les,)h
 (y)n(et)c(also)i(supp)r(ort)f(64-bit)g(o\013sets)h(and)e(the)h
 (additional)h(netCDF4)275 5340 y(atomic)26 b(t)n(yp)r(es.)p
 eop end
 %%Page: 39 45
-TeXDict begin 39 44 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(39)275 299 y(Of)35 b(course)g(since)i
-(most)f(op)s(erators)f(supp)s(ort)f(these)i(switc)m(hes,)i(the)e(\\con)
-m(v)m(ersions")i(can)e(b)s(e)f(done)150 408 y(at)e(the)g(output)f
-(stage)i(of)f(arithmetic)g(or)g(metadata)h(pro)s(cessing)e(rather)h
-(than)f(requiring)g(a)h(separate)150 518 y(step.)40 b(Pro)s(ducing)26
-b(\(netCDF3\))i Fy(CLASSIC)d FD(or)i Fy(64BIT)e FD(\014les)i(from)g
-Fy(NETCDF4_CLASSIC)22 b FD(\014les)27 b(will)g(alw)m(a)m(ys)150
-628 y(w)m(ork.)150 835 y Fu(3.9.4)63 b(Auto)s(con)m(v)m(ersion)150
-982 y FD(Because)27 b(of)f(the)g(dearth)f(of)h(supp)s(ort)e(for)h
-(netCDF4)i(amongst)f(to)s(ols)g(and)f(user)g(comm)m(unities)i
-(\(includ-)150 1091 y(ing)e(the)g FC(CF)g FD(con)m(v)m(en)m(tions\),)j
-(it)e(is)f(often)g(useful)f(to)i(con)m(v)m(ert)g(netCDF4)g(to)f
-(netCDF3)h(for)f(certain)h(appli-)150 1201 y(cations.)46
-b(Un)m(til)33 b FC(NCO)e FD(v)m(ersion)h(4.4.0)i(\(Jan)m(uary)-8
-b(,)32 b(2014\),)j(pro)s(ducing)30 b(netCDF3)j(\014les)f(from)f
-(netCDF4)150 1310 y(\014les)22 b(only)g(w)m(ork)m(ed)g(if)g(the)g
-(input)e(\014les)i(con)m(tained)h(no)f(netCDF4-sp)s(eci\014c)h
-(features)f(\(e.g.,)j(atomic)f(t)m(yp)s(es,)150 1420
-y(m)m(ultiple)h(record)f(dimensions,)h(or)g(groups\).)38
-b(As)24 b(of)h FC(NCO)f FD(v)m(ersion)h(4.4.0,)i Fy(ncks)d
-FD(supp)s(orts)e Fz(auto)s(con)m(v)m(er-)150 1530 y(sion)27
-b FD(of)h(man)m(y)f(netCDF4)i(features)f(to)g(their)f(closest)i
-(netCDF3-compatible)h(represen)m(tations.)41 b(Since)150
-1639 y(con)m(v)m(erting)36 b(netCDF4)g(to)f(netCDF3)h(results)e(in)h
-(loss)f(of)h(features,)h(\\automatic)h(do)m(wn-con)m(v)m(ersion")150
-1749 y(ma)m(y)31 b(b)s(e)f(a)g(more)h(precise)g(description)f(of)h
-(what)f(w)m(e)h(term)f(auto)s(con)m(v)m(ersion.)275 1912
-y FC(NCO)g FD(emplo)m(ys)h(three)f(algorithms)h(to)h(do)m(wncon)m(v)m
-(ert)f(netCDF4)h(to)f(netCDF3:)199 2075 y(1.)61 b(Auto)s(con)m(v)m
+TeXDict begin 39 44 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(39)275 299 y(Of)35
+b(course)g(since)i(most)f(op)s(erators)f(supp)s(ort)f(these)i(switc)m
+(hes,)i(the)e(\\con)m(v)m(ersions")i(can)e(b)s(e)f(done)150
+408 y(at)e(the)g(output)f(stage)i(of)f(arithmetic)g(or)g(metadata)h
+(pro)s(cessing)e(rather)h(than)f(requiring)g(a)h(separate)150
+518 y(step.)40 b(Pro)s(ducing)26 b(\(netCDF3\))i Fz(CLASSIC)d
+FE(or)i Fz(64BIT)e FE(\014les)i(from)g Fz(NETCDF4_CLASSIC)22
+b FE(\014les)27 b(will)g(alw)m(a)m(ys)150 628 y(w)m(ork.)150
+835 y Fv(3.9.4)63 b(Auto)s(con)m(v)m(ersion)150 982 y
+FE(Because)27 b(of)f(the)g(dearth)f(of)h(supp)s(ort)e(for)h(netCDF4)i
+(amongst)f(to)s(ols)g(and)f(user)g(comm)m(unities)i(\(includ-)150
+1091 y(ing)e(the)g FD(CF)g FE(con)m(v)m(en)m(tions\),)j(it)e(is)f
+(often)g(useful)f(to)i(con)m(v)m(ert)g(netCDF4)g(to)f(netCDF3)h(for)f
+(certain)h(appli-)150 1201 y(cations.)46 b(Un)m(til)33
+b FD(NCO)e FE(v)m(ersion)h(4.4.0)i(\(Jan)m(uary)-8 b(,)32
+b(2014\),)j(pro)s(ducing)30 b(netCDF3)j(\014les)f(from)f(netCDF4)150
+1310 y(\014les)22 b(only)g(w)m(ork)m(ed)g(if)g(the)g(input)e(\014les)i
+(con)m(tained)h(no)f(netCDF4-sp)s(eci\014c)h(features)f(\(e.g.,)j
+(atomic)f(t)m(yp)s(es,)150 1420 y(m)m(ultiple)h(record)f(dimensions,)h
+(or)g(groups\).)38 b(As)24 b(of)h FD(NCO)f FE(v)m(ersion)h(4.4.0,)i
+Fz(ncks)d FE(supp)s(orts)e FA(auto)s(con)m(v)m(er-)150
+1530 y(sion)27 b FE(of)h(man)m(y)f(netCDF4)i(features)f(to)g(their)f
+(closest)i(netCDF3-compatible)h(represen)m(tations.)41
+b(Since)150 1639 y(con)m(v)m(erting)36 b(netCDF4)g(to)f(netCDF3)h
+(results)e(in)h(loss)f(of)h(features,)h(\\automatic)h(do)m(wn-con)m(v)m
+(ersion")150 1749 y(ma)m(y)31 b(b)s(e)f(a)g(more)h(precise)g
+(description)f(of)h(what)f(w)m(e)h(term)f(auto)s(con)m(v)m(ersion.)275
+1912 y FD(NCO)g FE(emplo)m(ys)h(three)f(algorithms)h(to)h(do)m(wncon)m
+(v)m(ert)f(netCDF4)h(to)f(netCDF3:)199 2075 y(1.)61 b(Auto)s(con)m(v)m
 (ersion)31 b(of)e(atomic)i(t)m(yp)s(es:)40 b(Auto)s(con)m(v)m(ersion)31
-b(automatically)h(promotes)e Fy(NC_UBYTE)d FD(to)330
-2185 y Fy(NC_SHORT)p FD(,)36 b(and)g Fy(NC_USHORT)f FD(to)i
-Fy(NC_INT)p FD(.)58 b(It)37 b(automatically)j(demotes)d(the)g(three)g
-(t)m(yp)s(es)g Fy(NC_)330 2295 y(UINT)p FD(,)e Fy(NC_UINT64)p
-FD(,)e(and)i Fy(NC_INT64)d FD(to)k Fy(NC_INT)p FD(.)52
-b(And)34 b(it)h(con)m(v)m(erts)h Fy(NC_STRING)c FD(to)k
-Fy(NC_CHAR)p FD(.)330 2404 y(All)g(n)m(umeric)f(con)m(v)m(ersions)i(w)m
+b(automatically)h(promotes)e Fz(NC_UBYTE)d FE(to)330
+2185 y Fz(NC_SHORT)p FE(,)36 b(and)g Fz(NC_USHORT)f FE(to)i
+Fz(NC_INT)p FE(.)58 b(It)37 b(automatically)j(demotes)d(the)g(three)g
+(t)m(yp)s(es)g Fz(NC_)330 2295 y(UINT)p FE(,)e Fz(NC_UINT64)p
+FE(,)e(and)i Fz(NC_INT64)d FE(to)k Fz(NC_INT)p FE(.)52
+b(And)34 b(it)h(con)m(v)m(erts)h Fz(NC_STRING)c FE(to)k
+Fz(NC_CHAR)p FE(.)330 2404 y(All)g(n)m(umeric)f(con)m(v)m(ersions)i(w)m
 (ork)e(for)g(attributes)h(and)f(v)-5 b(ariables)36 b(of)g(an)m(y)f
 (rank.)56 b(Tw)m(o)35 b(n)m(umeric)330 2514 y(t)m(yp)s(es)22
-b(\()p Fy(NC_UBYTE)f FD(and)g Fy(NC_USHORT)p FD(\))f(are)j
-Fo(pr)-5 b(omote)g(d)35 b FD(to)23 b(t)m(yp)s(es)f(with)g(greater)h
+b(\()p Fz(NC_UBYTE)f FE(and)g Fz(NC_USHORT)p FE(\))f(are)j
+Fp(pr)-5 b(omote)g(d)35 b FE(to)23 b(t)m(yp)s(es)f(with)g(greater)h
 (range)g(\(and)f(greater)330 2623 y(storage\).)48 b(This)32
 b(extra)h(range)f(is)h(often)f(not)h(used)e(so)i(promotion)g(p)s
 (erhaps)d(con)m(v)m(eys)k(the)e(wrong)330 2733 y(impression.)73
 b(Ho)m(w)m(ev)m(er,)46 b(promotion)c(nev)m(er)f(truncates)h(v)-5
 b(alues)42 b(or)f(loses)h(data)g(\(this)g(p)s(erhaps)330
 2843 y(justi\014es)28 b(the)h(extra)g(storage\).)42 b(Three)28
-b(n)m(umeric)h(t)m(yp)s(es)f(\()p Fy(NC_UINT)p FD(,)g
-Fy(NC_UINT64)e FD(and)i Fy(NC_INT64)p FD(\))330 2952
-y(are)d Fo(demote)-5 b(d)p FD(.)40 b(Since)24 b(the)g(input)g(range)g
+b(n)m(umeric)h(t)m(yp)s(es)f(\()p Fz(NC_UINT)p FE(,)g
+Fz(NC_UINT64)e FE(and)i Fz(NC_INT64)p FE(\))330 2952
+y(are)d Fp(demote)-5 b(d)p FE(.)40 b(Since)24 b(the)g(input)g(range)g
 (is)g(larger)h(than)f(the)g(output)g(range,)i(demotion)f(can)f(result)
 330 3062 y(in)j(n)m(umeric)g(truncation)h(and)e(th)m(us)h(loss)h(of)f
 (data.)40 b(In)27 b(suc)m(h)g(cases,)i(it)f(w)m(ould)f(p)s(ossible)f
@@ -15291,53 +15518,53 @@ y(are)d Fo(demote)-5 b(d)p FD(.)40 b(Since)24 b(the)g(input)g(range)g
 (oin)m(t)f(v)-5 b(alues)37 b(instead.)61 b(If)37 b(this)g(feature)g(in)
 m(terests)h(y)m(ou,)h(please)f(b)s(e)f(the)330 3281 y(squeaky)30
 b(wheel)h(and)f(let)h(us)f(kno)m(w.)330 3419 y(String)j(con)m(v)m
-(ersions)h(\(to)g Fy(NC_CHAR)p FD(\))d(w)m(ork)j(for)e(all)i
+(ersions)h(\(to)g Fz(NC_CHAR)p FE(\))d(w)m(ork)j(for)e(all)i
 (attributes,)h(but)d(not)h(for)g(v)-5 b(ariables.)50
 b(This)32 b(is)330 3529 y(b)s(ecause)21 b(attributes)g(are)g(at)h(most)
 f(one-dimensional)g(and)g(ma)m(y)g(b)s(e)f(of)h(an)m(y)g(size)h
 (whereas)e(v)-5 b(ariables)330 3638 y(require)22 b(gridded)f
 (dimensions)g(that)h(usually)g(do)g(not)g(\014t)g(the)g(ragged)h(sizes)
 f(of)g(text)h(strings.)38 b(Hence)330 3748 y(scalar)24
-b Fy(NC_STRING)c FD(attributes)j(are)g(correctly)h(con)m(v)m(erted)g
-(to)f(and)f(stored)h(as)g Fy(NC_CHAR)d FD(attributes)330
+b Fz(NC_STRING)c FE(attributes)j(are)g(correctly)h(con)m(v)m(erted)g
+(to)f(and)f(stored)h(as)g Fz(NC_CHAR)d FE(attributes)330
 3858 y(in)36 b(the)h(netCDF3)h(output)e(\014le,)j(but)d
-Fy(NC_STRING)e FD(v)-5 b(ariables)37 b(are)g(not)g(correctly)h(con)m(v)
+Fz(NC_STRING)e FE(v)-5 b(ariables)37 b(are)g(not)g(correctly)h(con)m(v)
 m(erted.)61 b(If)330 3967 y(this)30 b(limitation)i(anno)m(ys)f(or)f
 (enrages)h(y)m(ou,)g(please)h(let)f(us)e(kno)m(w)i(b)m(y)f(b)s(eing)g
 (the)h(squeaky)f(wheel.)199 4106 y(2.)61 b(Con)m(v)m(ert)23
 b(m)m(ultiple)f(record)g(dimensions)f(to)i(\014xed-size)f(dimensions.)
-37 b(Man)m(y)23 b(netCDF4)f(and)g FC(HDF5)330 4215 y
-FD(datasets)33 b(ha)m(v)m(e)h(m)m(ultiple)e(unlimited)g(dimensions.)45
+37 b(Man)m(y)23 b(netCDF4)f(and)g FD(HDF5)330 4215 y
+FE(datasets)33 b(ha)m(v)m(e)h(m)m(ultiple)e(unlimited)g(dimensions.)45
 b(Since)32 b(a)h(netCDF3)g(\014le)f(ma)m(y)h(ha)m(v)m(e)g(at)g(most)330
 4325 y(one)45 b(unlimited)f(dimension,)j(all)f(but)d(p)s(ossibly)h(one)
 g(unlimited)h(dimension)e(from)h(the)h(input)330 4434
 y(\014le)37 b(m)m(ust)g(b)s(e)g(con)m(v)m(erted)h(to)g(\014xed-length)f
 (dimensions)g(prior)f(to)i(storing)f(netCDF4)i(input)d(as)330
 4544 y(netCDF3)26 b(output.)39 b(By)26 b(in)m(v)m(oking)h
-Fy(--fix_rec_dmn)f(all)f FD(the)g(user)g(ensures)g(the)g(output)g
+Fz(--fix_rec_dmn)f(all)f FE(the)g(user)g(ensures)g(the)g(output)g
 (\014le)h(will)330 4654 y(adhere)31 b(to)h(netCDF3)g(con)m(v)m(en)m
 (tions)h(and)e(the)g(user)g(need)g(not)g(kno)m(w)g(the)g(names)g(of)h
 (the)f(sp)s(eci\014c)330 4763 y(record)i(dimensions)e(to)j(\014x.)47
 b(See)32 b(Section)i(4.7)g([nc)m(ks)f(netCDF)g(Kitc)m(hen)g(Sink],)g
-(page)g(176)h(for)f(a)330 4873 y(description)d(of)h(the)g(`)p
-Fy(--fix_rec_dmn)p FD(')c(option.)199 5011 y(3.)61 b(Flattening)29
+(page)g(188)h(for)f(a)330 4873 y(description)d(of)h(the)g(`)p
+Fz(--fix_rec_dmn)p FE(')c(option.)199 5011 y(3.)61 b(Flattening)29
 b(\(remo)m(v)-5 b(al\))30 b(of)d(groups.)39 b(Man)m(y)28
-b(netCDF4)h(and)e FC(HDF5)h FD(datasets)g(ha)m(v)m(e)h(group)e(hierar-)
+b(netCDF4)h(and)e FD(HDF5)h FE(datasets)g(ha)m(v)m(e)h(group)e(hierar-)
 330 5121 y(c)m(hies.)41 b(Since)30 b(a)f(netCDF3)i(\014le)f(ma)m(y)g
 (not)f(ha)m(v)m(e)i(an)m(y)f(groups,)f(groups)g(in)g(the)g(input)g
 (\014le)g(m)m(ust)h(b)s(e)330 5230 y(remo)m(v)m(ed.)43
 b(This)30 b(is)h(also)h(called)g(\\\015attening")g(the)g(hierarc)m
 (hical)g(\014le.)42 b(See)31 b(Section)h(3.13)g([Group)330
 5340 y(P)m(ath)f(Editing],)g(page)g(46)g(for)f(a)h(description)g(of)f
-(the)h FC(GPE)e FD(option)i(`)p Fy(-G)f(:)p FD(')g(to)h(\015atten)g
+(the)h FD(GPE)e FE(option)i(`)p Fz(-G)f(:)p FE(')g(to)h(\015atten)g
 (\014les.)p eop end
 %%Page: 40 46
-TeXDict begin 40 45 bop 150 -116 a FD(40)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(Putting)j(the)h(three)f(algorithms)
+TeXDict begin 40 45 bop 150 -116 a FE(40)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(Putting)j(the)h(three)f(algorithms)
 h(together,)i(one)e(sees)g(that)g(the)f(recip)s(e)h(to)g(con)m(v)m(ert)
 h(netCDF4)f(to)150 408 y(netCDF4)g(b)s(ecomes)g(increasingly)g(complex)
 g(as)f(the)h(netCDF4)g(features)g(in)f(the)g(input)f(\014le)i(b)s
-(ecome)150 518 y(more)d(elab)s(orate:)390 712 y Fy(#)47
+(ecome)150 518 y(more)d(elab)s(orate:)390 712 y Fz(#)47
 b(Convert)f(file)h(with)g(netCDF4)e(atomic)h(types)390
 821 y(ncks)h(-3)g(in.nc4)f(out.nc3)390 931 y(#)h(Convert)f(file)h(with)
 g(multiple)e(record)h(dimensions)f(+)j(netCDF4)d(atomic)i(types)390
@@ -15345,35 +15572,35 @@ g(multiple)e(record)h(dimensions)f(+)j(netCDF4)d(atomic)i(types)390
 1150 y(#)h(Convert)f(file)h(with)g(groups,)e(multiple)h(record)g
 (dimensions)f(+)i(netCDF4)f(atomic)g(types)390 1259 y(ncks)h(-3)g(-G)g
 (:)g(--fix_rec_dmn=all)d(in.nc4)i(out.nc3)275 1453 y
-FD(F)-8 b(uture)41 b(v)m(ersions)h(of)g FC(NCO)f FD(ma)m(y)h
+FE(F)-8 b(uture)41 b(v)m(ersions)h(of)g FD(NCO)f FE(ma)m(y)h
 (automatically)j(in)m(v)m(ok)m(e)e(the)f(record)g(dimension)f
 (\014xation)h(and)150 1563 y(group)30 b(\015attening)i(when)e(con)m(v)m
 (erting)j(to)f(netCDF3)g(\(rather)f(than)f(requiring)h(it)g(b)s(e)g(sp)
 s(eci\014ed)f(man)m(u-)150 1672 y(ally\).)42 b(If)30
 b(this)g(feature)h(w)m(ould)f(in)m(terest)i(y)m(ou,)f(please)g(let)g
-(us)f(kno)m(w.)150 2007 y FB(3.10)68 b(Large)46 b(File)f(Supp)t(ort)150
-2140 y Fk(\013)p 200 2140 3554 4 v 3553 w(\010)p 150
-2630 4 442 v 178 2277 a FD(Av)-5 b(ailabilit)m(y:)43
+(us)f(kno)m(w.)150 2007 y FC(3.10)68 b(Large)46 b(File)f(Supp)t(ort)150
+2140 y Fl(\013)p 200 2140 3554 4 v 3553 w(\010)p 150
+2630 4 442 v 178 2277 a FE(Av)-5 b(ailabilit)m(y:)43
 b(All)31 b(op)s(erators)178 2386 y(Short)f(options:)41
 b(none)178 2496 y(Long)31 b(options:)41 b(none)p 3803
-2630 V 150 2682 a Fk(\012)p 200 2682 3554 4 v 3553 w(\011)275
-2891 y FC(NCO)20 b FD(has)h(Large)h(File)h(Supp)s(ort)c(\()p
-FC(LFS)p FD(\),)24 b(meaning)e(that)f FC(NCO)g FD(can)h(write)f
+2630 V 150 2682 a Fl(\012)p 200 2682 3554 4 v 3553 w(\011)275
+2891 y FD(NCO)20 b FE(has)h(Large)h(File)h(Supp)s(ort)c(\()p
+FD(LFS)p FE(\),)24 b(meaning)e(that)f FD(NCO)g FE(can)h(write)f
 (\014les)g(larger)h(than)f(2)31 b(GB)22 b(on)150 3001
 y(some)g(32-bit)g(op)s(erating)g(systems)g(with)f(netCDF)h(libraries)f
 (earlier)h(than)f(v)m(ersion)31 b(3.6)q(.)38 b(If)21
-b(desired,)i FC(LFS)150 3110 y FD(supp)s(ort)e(m)m(ust)i(b)s(e)f
-(con\014gured)g(when)g(b)s(oth)g(netCDF)i(and)e FC(NCO)g
-FD(are)i(installed.)39 b(netCDF)23 b(v)m(ersions)31 b(3.6)150
+b(desired,)i FD(LFS)150 3110 y FE(supp)s(ort)e(m)m(ust)i(b)s(e)f
+(con\014gured)g(when)g(b)s(oth)g(netCDF)i(and)e FD(NCO)g
+FE(are)i(installed.)39 b(netCDF)23 b(v)m(ersions)31 b(3.6)150
 3220 y(and)i(higher)h(supp)s(ort)e(64-bit)j(\014le)f(addresses)f(as)h
 (part)g(of)g(the)g(netCDF)h(standard.)50 b(W)-8 b(e)35
-b(recommend)150 3329 y(that)24 b(users)f(ignore)h FC(LFS)g
-FD(supp)s(ort)e(whic)m(h)h(is)h(di\016cult)g(to)g(con\014gure)f(and)g
-(is)h(implemen)m(ted)g(in)f FC(NCO)h FD(only)150 3439
+b(recommend)150 3329 y(that)24 b(users)f(ignore)h FD(LFS)g
+FE(supp)s(ort)e(whic)m(h)h(is)h(di\016cult)g(to)g(con\014gure)f(and)g
+(is)h(implemen)m(ted)g(in)f FD(NCO)h FE(only)150 3439
 y(to)h(supp)s(ort)e(netCDF)i(v)m(ersions)g(prior)f(to)31
 b(3.6)q(.)39 b(This)24 b(ob)m(viates)i(the)f(need)f(for)h
-(con\014guring)f(explicit)i FC(LFS)150 3549 y FD(supp)s(ort)35
-b(in)h(applications)h(\(suc)m(h)g(as)f FC(NCO)p FD(\))h(that)g(no)m(w)f
+(con\014guring)f(explicit)i FD(LFS)150 3549 y FE(supp)s(ort)35
+b(in)h(applications)h(\(suc)m(h)g(as)f FD(NCO)p FE(\))h(that)g(no)m(w)f
 (supp)s(ort)f(64-bit)j(\014les)e(directly)h(through)f(the)150
 3658 y(netCDF)23 b(in)m(terface.)39 b(See)22 b(Section)h(3.9)g([File)g
 (F)-8 b(ormats)23 b(and)f(Con)m(v)m(ersion],)i(page)f(35)g(for)e
@@ -15381,91 +15608,91 @@ b(in)h(applications)h(\(suc)m(h)g(as)f FC(NCO)p FD(\))h(that)g(no)m(w)f
 (\014le)g(formats,)g(including)f(64-bit)i(\014les,)f(supp)s(orted)d(b)m
 (y)j(the)f(mo)s(dern)f(netCDF)150 3877 y(in)m(terface.)275
 4071 y(If)46 b(y)m(ou)h(are)f(still)i(in)m(terested)g(in)e(explicit)i
-FC(LFS)e FD(supp)s(ort)f(for)i(netCDF)g(v)m(ersions)g(prior)e(to)32
-b(3.6)q(,)150 4180 y(kno)m(w)i(that)g FC(LFS)g FD(supp)s(ort)e(dep)s
+FD(LFS)e FE(supp)s(ort)f(for)i(netCDF)g(v)m(ersions)g(prior)e(to)32
+b(3.6)q(,)150 4180 y(kno)m(w)i(that)g FD(LFS)g FE(supp)s(ort)e(dep)s
 (ends)g(on)i(a)g(complex,)i(in)m(terlo)s(c)m(king)g(set)e(of)g(op)s
-(erating)g(system)3499 4147 y Ft(13)3604 4180 y FD(and)150
+(erating)g(system)3499 4147 y Fu(13)3604 4180 y FE(and)150
 4290 y(netCDF)28 b(supp)s(ort)e(issues.)39 b(The)27 b(netCDF)h
-FC(LFS)f FD(F)-10 b(A)m(Q)28 b(\()p Fy(http://my.unidata.ucar.edu)o
+FD(LFS)f FE(F)-10 b(A)m(Q)28 b(\()p Fz(http://my.unidata.ucar.edu)o
 (/con)o(tent)o(/)150 4400 y(software)8 b(/)e(netcdf)i(/)e(faq-lf)o(s)i
-(.)d(html)o FD(\))34 b(describ)s(es)39 b(the)h(v)-5 b(arious)40
+(.)d(html)o FE(\))34 b(describ)s(es)39 b(the)h(v)-5 b(arious)40
 b(\014le)g(size)h(limitations)g(imp)s(osed)e(b)m(y)150
 4509 y(di\013eren)m(t)h(v)m(ersions)g(of)g(the)h(netCDF)f(standard.)68
-b FC(NCO)40 b FD(and)f(netCDF)i(automatically)h(attempt)f(to)150
-4619 y(con\014gure)30 b FC(LFS)h FD(at)g(build)e(time.)150
-4953 y FB(3.11)68 b(Subsetting)46 b(Files)p 150 5241
-1200 4 v 166 5308 a Ft(13)300 5340 y Fs(Lin)n(ux)25 b(and)g
-Fp(AIX)h Fs(do)f(supp)r(ort)h Fp(LFS)p Fs(.)p eop end
+b FD(NCO)40 b FE(and)f(netCDF)i(automatically)h(attempt)f(to)150
+4619 y(con\014gure)30 b FD(LFS)h FE(at)g(build)e(time.)150
+4953 y FC(3.11)68 b(Subsetting)46 b(Files)p 150 5241
+1200 4 v 166 5308 a Fu(13)300 5340 y Ft(Lin)n(ux)25 b(and)g
+Fq(AIX)h Ft(do)f(supp)r(ort)h Fq(LFS)p Ft(.)p eop end
 %%Page: 41 47
-TeXDict begin 41 46 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(41)150 51 y Fk(\013)p
+TeXDict begin 41 46 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(41)150 51 y Fl(\013)p
 200 51 3554 4 v 3553 w(\010)p 150 1965 4 1866 v 178 187
-a FD(Options)30 b Fy(-g)g Fn(grp)178 296 y FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncbo)p FD(,)30 b Fy(nces)p FD(,)f Fy(ncecat)p FD(,)g
-Fy(ncflint)p FD(,)g Fy(ncks)p FD(,)g Fy(ncpdq)p FD(,)h
-Fy(ncra)p FD(,)f Fy(ncrcat)p FD(,)g Fy(ncwa)178 406 y
-FD(Short)h(options:)41 b(`)p Fy(-g)p FD(')178 515 y(Long)31
-b(options:)41 b(`)p Fy(--grp)p FD(')29 b(and)h(`)p Fy(--group)p
-FD(')178 625 y(Options)g Fy(-v)g Fn(var)f FD(and)h Fy(-x)178
-735 y FD(Av)-5 b(ailabilit)m(y:)43 b(\()p Fy(ncap2)p
-FD(\),)30 b Fy(ncbo)p FD(,)g Fy(nces)p FD(,)f Fy(ncecat)p
-FD(,)g Fy(ncflint)p FD(,)g Fy(ncks)p FD(,)g Fy(ncpdq)p
-FD(,)h Fy(ncra)p FD(,)f Fy(ncrcat)p FD(,)g Fy(ncwa)178
-844 y FD(Short)h(options:)41 b(`)p Fy(-v)p FD(',)31 b(`)p
-Fy(-x)p FD(')178 954 y(Long)g(options:)41 b(`)p Fy(--variable)p
-FD(',)28 b(`)p Fy(--exclude)p FD(')g(or)j(`)p Fy(--xcl)p
-FD(')178 1063 y(Options)f Fy(--unn)178 1173 y FD(Av)-5
-b(ailabilit)m(y:)43 b Fy(ncbo)p FD(,)30 b Fy(nces)p FD(,)f
-Fy(ncecat)p FD(,)g Fy(ncflint)p FD(,)g Fy(ncks)p FD(,)g
-Fy(ncpdq)p FD(,)h Fy(ncra)p FD(,)f Fy(ncrcat)p FD(,)g
-Fy(ncwa)178 1283 y FD(Short)h(options:)178 1392 y(Long)h(options:)41
-b(`)p Fy(--unn)p FD(')29 b(and)h(`)p Fy(--union)p FD(')178
-1502 y(Options)g Fy(--grp_xtr_var_xcl)178 1611 y FD(Av)-5
-b(ailabilit)m(y:)43 b Fy(ncks)178 1721 y FD(Short)30
-b(options:)178 1830 y(Long)h(options:)41 b(`)p Fy(--gxvx)p
-FD(')29 b(and)h(`)p Fy(--grp_xtr_var_xcl)p FD(')p 3803
-1965 V 150 2016 a Fk(\012)p 200 2016 3554 4 v 3553 w(\011)275
-2253 y FD(Subsetting)35 b(v)-5 b(ariables)36 b(refers)g(to)g
+a FE(Options)30 b Fz(-g)g Fo(grp)178 296 y FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncbo)p FE(,)30 b Fz(nces)p FE(,)f Fz(ncecat)p FE(,)g
+Fz(ncflint)p FE(,)g Fz(ncks)p FE(,)g Fz(ncpdq)p FE(,)h
+Fz(ncra)p FE(,)f Fz(ncrcat)p FE(,)g Fz(ncwa)178 406 y
+FE(Short)h(options:)41 b(`)p Fz(-g)p FE(')178 515 y(Long)31
+b(options:)41 b(`)p Fz(--grp)p FE(')29 b(and)h(`)p Fz(--group)p
+FE(')178 625 y(Options)g Fz(-v)g Fo(var)f FE(and)h Fz(-x)178
+735 y FE(Av)-5 b(ailabilit)m(y:)43 b(\()p Fz(ncap2)p
+FE(\),)30 b Fz(ncbo)p FE(,)g Fz(nces)p FE(,)f Fz(ncecat)p
+FE(,)g Fz(ncflint)p FE(,)g Fz(ncks)p FE(,)g Fz(ncpdq)p
+FE(,)h Fz(ncra)p FE(,)f Fz(ncrcat)p FE(,)g Fz(ncwa)178
+844 y FE(Short)h(options:)41 b(`)p Fz(-v)p FE(',)31 b(`)p
+Fz(-x)p FE(')178 954 y(Long)g(options:)41 b(`)p Fz(--variable)p
+FE(',)28 b(`)p Fz(--exclude)p FE(')g(or)j(`)p Fz(--xcl)p
+FE(')178 1063 y(Options)f Fz(--unn)178 1173 y FE(Av)-5
+b(ailabilit)m(y:)43 b Fz(ncbo)p FE(,)30 b Fz(nces)p FE(,)f
+Fz(ncecat)p FE(,)g Fz(ncflint)p FE(,)g Fz(ncks)p FE(,)g
+Fz(ncpdq)p FE(,)h Fz(ncra)p FE(,)f Fz(ncrcat)p FE(,)g
+Fz(ncwa)178 1283 y FE(Short)h(options:)178 1392 y(Long)h(options:)41
+b(`)p Fz(--unn)p FE(')29 b(and)h(`)p Fz(--union)p FE(')178
+1502 y(Options)g Fz(--grp_xtr_var_xcl)178 1611 y FE(Av)-5
+b(ailabilit)m(y:)43 b Fz(ncks)178 1721 y FE(Short)30
+b(options:)178 1830 y(Long)h(options:)41 b(`)p Fz(--gxvx)p
+FE(')29 b(and)h(`)p Fz(--grp_xtr_var_xcl)p FE(')p 3803
+1965 V 150 2016 a Fl(\012)p 200 2016 3554 4 v 3553 w(\011)275
+2253 y FE(Subsetting)35 b(v)-5 b(ariables)36 b(refers)g(to)g
 (explicitly)i(sp)s(ecifying)d(v)-5 b(ariables)37 b(and)e(groups)g(to)i
 (b)s(e)e(included)150 2362 y(or)29 b(excluded)f(from)h(op)s(erator)g
 (actions.)41 b(Subsetting)29 b(is)f(con)m(trolled)j(b)m(y)d(the)h(`)p
-Fy(-v)h Fn(var)p Fy([,...)n(])p FD(')f(and)f(`)p Fy(-x)p
-FD(')150 2472 y(options)22 b(for)f(directly)h(sp)s(ecifying)g(v)-5
+Fz(-v)h Fo(var)p Fz([,...)n(])p FE(')f(and)f(`)p Fz(-x)p
+FE(')150 2472 y(options)22 b(for)f(directly)h(sp)s(ecifying)g(v)-5
 b(ariables.)38 b(Sp)s(ecifying)21 b(groups,)i(whether)e(in)g(addition)h
 (to)g(or)g(instead)150 2581 y(of)k(v)-5 b(ariables,)27
 b(is)f(quite)g(similar)g(and)f(is)h(con)m(trolled)h(b)m(y)f(the)f(`)p
-Fy(-g)30 b Fn(grp)p Fy([,...)n(])p FD(')c(and)f(`)p Fy(-x)p
-FD(')g(options.)40 b(A)30 b(list)150 2691 y(of)38 b(v)-5
+Fz(-g)30 b Fo(grp)p Fz([,...)n(])p FE(')c(and)f(`)p Fz(-x)p
+FE(')g(options.)40 b(A)30 b(list)150 2691 y(of)38 b(v)-5
 b(ariables)38 b(or)f(groups)f(to)j(extract)f(is)g(sp)s(eci\014ed)e
-(follo)m(wing)j(the)f(`)p Fy(-v)p FD(')f(and)g(`)p Fy(-g)p
-FD(')g(options,)j(e.g.,)g(`)p Fy(-v)150 2801 y(time,lat,lon)p
-FD(')25 b(or)j(`)p Fy(-g)i(grp1,grp2)p FD('.)37 b(Both)29
+(follo)m(wing)j(the)f(`)p Fz(-v)p FE(')f(and)g(`)p Fz(-g)p
+FE(')g(options,)j(e.g.,)g(`)p Fz(-v)150 2801 y(time,lat,lon)p
+FE(')25 b(or)j(`)p Fz(-g)i(grp1,grp2)p FE('.)37 b(Both)29
 b(options)f(ma)m(y)g(b)s(e)f(sp)s(eci\014ed)g(sim)m(ultaneously)i(and)e
-FC(NCO)150 2910 y FD(will)32 b(extract)h(the)e(in)m(tersection)i(of)f
+FD(NCO)150 2910 y FE(will)32 b(extract)h(the)e(in)m(tersection)i(of)f
 (the)f(lists,)i(i.e.,)g(only)e(v)-5 b(ariables)32 b(of)g(the)f(sp)s
 (eci\014ed)g(names)g(found)f(in)150 3020 y(groups)e(of)h(the)h(sp)s
-(eci\014ed)e(names.)40 b(The)29 b(`)p Fy(--unn)p FD(')f(option)h
-(causes)g FC(NCO)g FD(to)h(extract)g(the)f(union,)g(rather)150
+(eci\014ed)e(names.)40 b(The)29 b(`)p Fz(--unn)p FE(')f(option)h
+(causes)g FD(NCO)g FE(to)h(extract)g(the)f(union,)g(rather)150
 3129 y(than)24 b(the)h(in)m(tersection,)j(of)d(the)f(sp)s(eci\014ed)g
 (groups)g(and)g(v)-5 b(ariables.)40 b(Not)25 b(using)f(the)h(`)p
-Fy(-v)p FD(')f(or)h(`)p Fy(-g)p FD(')f(option)150 3239
+Fz(-v)p FE(')f(or)h(`)p Fz(-g)p FE(')f(option)150 3239
 y(is)32 b(equiv)-5 b(alen)m(t)33 b(to)f(sp)s(ecifying)g(all)h(v)-5
 b(ariables)32 b(or)g(groupp,)f(resp)s(ectiv)m(ely)-8
-b(.)47 b(The)31 b(`)p Fy(-x)p FD(')g(option)i(causes)f(the)150
+b(.)47 b(The)31 b(`)p Fz(-x)p FE(')g(option)i(causes)f(the)150
 3349 y(list)38 b(of)f(v)-5 b(ariables)38 b(sp)s(eci\014ed)e(with)h(`)p
-Fy(-v)p FD(')g(to)g(b)s(e)g Fo(exclude)-5 b(d)47 b FD(rather)37
-b(than)g Fo(extr)-5 b(acte)g(d)p FD(.)63 b(Th)m(us)36
-b(`)p Fy(-x)p FD(')g(sa)m(v)m(es)150 3458 y(t)m(yping)31
+Fz(-v)p FE(')g(to)g(b)s(e)g Fp(exclude)-5 b(d)47 b FE(rather)37
+b(than)g Fp(extr)-5 b(acte)g(d)p FE(.)63 b(Th)m(us)36
+b(`)p Fz(-x)p FE(')g(sa)m(v)m(es)150 3458 y(t)m(yping)31
 b(when)e(y)m(ou)i(only)f(w)m(an)m(t)i(to)f(extract)h(few)m(er)e(than)g
 (half)h(of)f(the)h(v)-5 b(ariables)31 b(in)f(a)h(\014le.)275
 3684 y(V)-8 b(ariables)58 b(or)f(groups)g(explicitly)i(sp)s(eci\014ed)d
-(for)h(extraction)i(with)e(`)p Fy(-v)30 b Fn(var)p Fy([,...)n(])p
-FD(')57 b(or)g(`)p Fy(-g)150 3793 y Fn(grp)p Fy([,...)n(])p
-FD(')44 b Fo(must)53 b FD(b)s(e)43 b(presen)m(t)h(in)g(the)g(input)f
+(for)h(extraction)i(with)e(`)p Fz(-v)30 b Fo(var)p Fz([,...)n(])p
+FE(')57 b(or)g(`)p Fz(-g)150 3793 y Fo(grp)p Fz([,...)n(])p
+FE(')44 b Fp(must)53 b FE(b)s(e)43 b(presen)m(t)h(in)g(the)g(input)f
 (\014le)h(or)g(an)g(error)g(will)g(result.)82 b(V)-8
 b(ariables)45 b(explic-)150 3903 y(itly)28 b(sp)s(eci\014ed)f(for)g
-Fo(exclusion)34 b FD(with)27 b(`)p Fy(-x)j(-v)g Fn(var)p
-Fy([,...)n(])p FD(')d(need)g(not)h(b)s(e)e(presen)m(t)i(in)f(the)g
+Fp(exclusion)34 b FE(with)27 b(`)p Fz(-x)j(-v)g Fo(var)p
+Fz([,...)n(])p FE(')d(need)g(not)h(b)s(e)e(presen)m(t)i(in)f(the)g
 (input)g(\014le.)39 b(T)-8 b(o)150 4012 y(accord)26 b(with)f(the)h
 (sophistication)h(of)e(the)h(underlying)e(hierarc)m(h)m(y)-8
 b(,)28 b(group)d(subsetting)h(is)f(con)m(trolled)i(b)m(y)150
@@ -15473,17 +15700,17 @@ b(,)28 b(group)d(subsetting)h(is)f(con)m(trolled)i(b)m(y)150
 (tactical)j(distinctions.)53 b(When)34 b(learning)h(this)f(syn)m(tax)h
 (it)g(is)g(helpful)150 4232 y(to)c(k)m(eep)g(in)f(mind)g(the)g
 (similarit)m(y)i(b)s(et)m(w)m(een)f(group)f(hierarc)m(hies)h(and)f
-(directory)g(structures.)275 4457 y(As)43 b(of)h FC(NCO)g
-FD(4.4.4)h(\(June,)i(2014\),)i Fy(ncks)43 b FD(\(alone\))i(supp)s(orts)
+(directory)g(structures.)275 4457 y(As)43 b(of)h FD(NCO)g
+FE(4.4.4)h(\(June,)i(2014\),)i Fz(ncks)43 b FE(\(alone\))i(supp)s(orts)
 d(an)i(option)g(to)g(include)g(sp)s(eci\014ed)150 4567
 y(groups)29 b(y)m(et)j(exclude)e(sp)s(eci\014ed)g(v)-5
-b(ariables.)41 b(The)30 b(`)p Fy(--grp_xtr_var_xcl)p
-FD(')c(switc)m(h)k(\(with)h(long)f(option)150 4676 y(equiv)-5
-b(alen)m(t)32 b(`)p Fy(--gxvx)p FD('\))e(extracts)i(all)f(con)m(ten)m
+b(ariables.)41 b(The)30 b(`)p Fz(--grp_xtr_var_xcl)p
+FE(')c(switc)m(h)k(\(with)h(long)f(option)150 4676 y(equiv)-5
+b(alen)m(t)32 b(`)p Fz(--gxvx)p FE('\))e(extracts)i(all)f(con)m(ten)m
 (ts)i(of)d(groups)g(giv)m(en)i(as)f(argumen)m(ts)g(to)g(`)p
-Fy(-g)f Fn(grp)p Fy([,...)n(])p FD(',)150 4786 y(except)41
+Fz(-g)f Fo(grp)p Fz([,...)n(])p FE(',)150 4786 y(except)41
 b(for)e(v)-5 b(ariables)40 b(giv)m(en)h(as)f(argumen)m(ts)f(to)i(`)p
-Fy(-v)30 b Fn(var)p Fy([,...)n(])p FD('.)68 b(Use)40
+Fz(-v)30 b Fo(var)p Fz([,...)n(])p FE('.)68 b(Use)40
 b(this)f(when)g(one)h(or)f(a)h(few)150 4895 y(v)-5 b(ariables)37
 b(in)e(hierarc)m(hical)j(\014les)e(are)g(not)h(to)g(b)s(e)e(extracted,)
 k(and)d(all)g(other)h(v)-5 b(ariables)36 b(are.)59 b(This)35
@@ -15491,116 +15718,116 @@ b(is)150 5005 y(useful)30 b(when)g(co)s(ercing)i(netCDF4)h(\014les)e
 (in)m(to)h(netCDF3)g(\014les)f(suc)m(h)g(as)g(with)g(con)m(v)m(erting,)
 i(\015attening,)150 5115 y(or)d(dismem)m(b)s(ering)g(\014les)g(\(see)i
 (Section)f(3.13.1)h([Flattening)h(Groups],)d(page)h(46\).)390
-5340 y Fy(ncks)47 b(--grp_xtr_var_xcl)c(-g)k(g1)g(-v)g(v1)g(#)h
+5340 y Fz(ncks)47 b(--grp_xtr_var_xcl)c(-g)k(g1)g(-v)g(v1)g(#)h
 (Extract)e(all)h(of)g(group)f(g1)h(except)f(v1)p eop
 end
 %%Page: 42 48
-TeXDict begin 42 47 bop 150 -116 a FD(42)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(Tw)m(o)d(prop)s(erties)f(of)h
+TeXDict begin 42 47 bop 150 -116 a FE(42)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(Tw)m(o)d(prop)s(erties)f(of)h
 (subsetting,)h(recursion)e(and)g(anc)m(horing,)j(are)e(b)s(est)f
 (illustrated)i(b)m(y)f(reminding)150 408 y(the)k(user)g(of)g(their)g
-FC(UNIX)h FD(equiv)-5 b(alen)m(ts.)45 b(The)30 b FC(UNIX)i
-FD(command)f Fy(mv)f(src)g(dst)g FD(mo)m(v)m(es)i Fy(src)f
-Fo(and)j(al)5 b(l)34 b(its)150 518 y(sub)-5 b(dir)g(e)g(ctories)44
-b FD(\(and)34 b(all)i(their)e(sub)s(directories)g(etc.\))55
-b(to)35 b Fy(dst)p FD(.)53 b(In)33 b(other)i(w)m(ords)f
-Fy(mv)g FD(is,)i(b)m(y)e(default,)150 628 y Fo(r)-5 b(e)g(cursive)p
-FD(.)41 b(In)29 b(con)m(trast,)i(the)f FC(UNIX)g FD(command)f
-Fy(cp)h(src)g(dst)e FD(mo)m(v)m(es)j Fy(src)p FD(,)e(and)g(only)h
-Fy(src)p FD(,)f(to)h Fy(dst)p FD(,)f(If)150 737 y Fy(src)f
-FD(is)h(a)h(directory)-8 b(,)31 b(not)e(a)h(\014le,)f(then)g(that)h
+FD(UNIX)h FE(equiv)-5 b(alen)m(ts.)45 b(The)30 b FD(UNIX)i
+FE(command)f Fz(mv)f(src)g(dst)g FE(mo)m(v)m(es)i Fz(src)f
+Fp(and)j(al)5 b(l)34 b(its)150 518 y(sub)-5 b(dir)g(e)g(ctories)44
+b FE(\(and)34 b(all)i(their)e(sub)s(directories)g(etc.\))55
+b(to)35 b Fz(dst)p FE(.)53 b(In)33 b(other)i(w)m(ords)f
+Fz(mv)g FE(is,)i(b)m(y)e(default,)150 628 y Fp(r)-5 b(e)g(cursive)p
+FE(.)41 b(In)29 b(con)m(trast,)i(the)f FD(UNIX)g FE(command)f
+Fz(cp)h(src)g(dst)e FE(mo)m(v)m(es)j Fz(src)p FE(,)e(and)g(only)h
+Fz(src)p FE(,)f(to)h Fz(dst)p FE(,)f(If)150 737 y Fz(src)f
+FE(is)h(a)h(directory)-8 b(,)31 b(not)e(a)h(\014le,)f(then)g(that)h
 (command)f(fails.)41 b(One)28 b(m)m(ust)h(explicitly)i(request)e(to)h
 (cop)m(y)150 847 y(directories)g(recursiv)m(ely)-8 b(,)30
-b(i.e.,)g(with)e Fy(cp)i(-r)g(src)f(dst)p FD(.)39 b(In)28
-b FC(NCO)g FD(recursiv)m(e)h(extraction)h(\(and)f(cop)m(ying\))150
+b(i.e.,)g(with)e Fz(cp)i(-r)g(src)f(dst)p FE(.)39 b(In)28
+b FD(NCO)g FE(recursiv)m(e)h(extraction)h(\(and)f(cop)m(ying\))150
 956 y(of)g(groups)f(is)h(the)g(default)g(\(lik)m(e)i(with)d
-Fy(mv)p FD(,)h(not)g(with)g Fy(cp)p FD(\).)40 b(Recursion)28
+Fz(mv)p FE(,)h(not)g(with)g Fz(cp)p FE(\).)40 b(Recursion)28
 b(is)h(turned)f(o\013)h(b)m(y)g(app)s(ending)f(a)150
 1066 y(trailing)j(slash)g(to)g(the)f(path.)275 1229 y(These)j
-FC(UNIX)h FD(commands)g(also)g(illustrate)h(a)f(prop)s(ert)m(y)g(w)m(e)
-g(call)h Fo(anchoring)p FD(.)52 b(The)33 b(command)h
-Fy(mv)150 1339 y(src)29 b(dst)35 b FD(mo)m(v)m(es)i(\(recursiv)m(ely\))
-f(the)g(source)f(directory)h Fy(src)e FD(to)i(the)g(destination)g
-(directory)g Fy(dst)p FD(.)54 b(If)150 1448 y Fy(src)27
-b FD(b)s(egins)h(with)g(the)g(slash)g(c)m(haracter)i(then)e(the)h(sp)s
+FD(UNIX)h FE(commands)g(also)g(illustrate)h(a)f(prop)s(ert)m(y)g(w)m(e)
+g(call)h Fp(anchoring)p FE(.)52 b(The)33 b(command)h
+Fz(mv)150 1339 y(src)29 b(dst)35 b FE(mo)m(v)m(es)i(\(recursiv)m(ely\))
+f(the)g(source)f(directory)h Fz(src)e FE(to)i(the)g(destination)g
+(directory)g Fz(dst)p FE(.)54 b(If)150 1448 y Fz(src)27
+b FE(b)s(egins)h(with)g(the)g(slash)g(c)m(haracter)i(then)e(the)h(sp)s
 (eci\014ed)e(path)h(is)g(relativ)m(e)j(to)e(the)f(ro)s(ot)h(directory)
 -8 b(,)150 1558 y(otherwise)35 b(the)g(path)g(is)g(relativ)m(e)i(to)f
 (the)f(curren)m(t)f(w)m(orking)i(directory)-8 b(.)55
 b(In)34 b(other)h(w)m(ords,)h(an)f(initial)150 1668 y(slash)d(c)m
 (haracter)h(anc)m(hors)f(the)g(subsequen)m(t)g(path)f(to)i(the)f(ro)s
-(ot)g(directory)-8 b(.)46 b(In)32 b FC(NCO)f FD(an)h(initial)h(slash)
+(ot)g(directory)-8 b(.)46 b(In)32 b FD(NCO)f FE(an)h(initial)h(slash)
 150 1777 y(anc)m(hors)g(the)f(path)h(at)g(the)g(ro)s(ot)g(group.)46
 b(P)m(aths)33 b(that)g(b)s(egin)g(and)f(end)f(with)i(slash)f(c)m
-(haracters)i(\(e.g.,)150 1887 y Fy(//)p FD(,)c Fy(/g1/)p
-FD(,)f(and)h Fy(/g1/g2/)p FD(\))f(are)i(b)s(oth)e(anc)m(hored)i(and)f
+(haracters)i(\(e.g.,)150 1887 y Fz(//)p FE(,)c Fz(/g1/)p
+FE(,)f(and)h Fz(/g1/g2/)p FE(\))f(are)i(b)s(oth)e(anc)m(hored)i(and)f
 (non-recursiv)m(e.)275 2050 y(Consider)40 b(the)i(follo)m(wing)i
 (commands,)g(all)f(of)f(whic)m(h)f(ma)m(y)i(b)s(e)e(assumed)g(to)h(end)
-g(with)f(`)p Fy(in.nc)150 2160 y(out.nc)p FD(':)390 2323
-y Fy(ncks)47 b(-g)95 b(g1)f(#)48 b(Extract,)d(recursively,)g(all)i
+g(with)f(`)p Fz(in.nc)150 2160 y(out.nc)p FE(':)390 2323
+y Fz(ncks)47 b(-g)95 b(g1)f(#)48 b(Extract,)d(recursively,)g(all)i
 (groups)f(with)h(a)g(g1)g(component)390 2432 y(ncks)g(-g)95
 b(g1/)46 b(#)i(Extract,)d(non-recursively,)f(all)j(groups)f
 (terminating)f(in)i(g1)390 2542 y(ncks)g(-g)g(/g1)94
 b(#)48 b(Extract,)d(recursively,)g(root)i(group)f(g1)390
 2651 y(ncks)h(-g)g(/g1/)f(#)i(Extract,)d(non-recursively)f(root)j
 (group)f(g1)390 2761 y(ncks)h(-g)g(//)142 b(#)48 b(Extract,)d
-(non-recursively)f(the)j(root)g(group)275 2924 y FD(The)37
+(non-recursively)f(the)j(root)g(group)275 2924 y FE(The)37
 b(\014rst)h(command)g(is)h(probably)f(the)g(most)h(useful)f(and)g
 (common.)65 b(It)38 b(w)m(ould)h(extract)g(these)150
 3034 y(groups,)27 b(if)f(presen)m(t,)h(and)f(all)h(their)f(direct)h
-(ancestors)g(and)f(c)m(hildren:)38 b Fy(/g1)p FD(,)27
-b Fy(/g2/g1)p FD(,)f(and)f Fy(/g3/g1/g2)p FD(.)150 3143
+(ancestors)g(and)f(c)m(hildren:)38 b Fz(/g1)p FE(,)27
+b Fz(/g2/g1)p FE(,)f(and)f Fz(/g3/g1/g2)p FE(.)150 3143
 y(In)c(other)h(w)m(ords,)h(the)f(simplest)g(form)f(of)h(`)p
-Fy(-g)30 b(grp)p FD(')21 b(grabs)g(all)i(groups)e(that)h(\(and)f(their)
+Fz(-g)30 b(grp)p FE(')21 b(grabs)g(all)i(groups)e(that)h(\(and)f(their)
 h(direct)g(ancestors)150 3253 y(and)31 b(c)m(hildren,)i(recursiv)m
-(ely\))g(that)g(ha)m(v)m(e)g Fy(grp)e FD(as)i(a)f(complete)i(comp)s
+(ely\))g(that)g(ha)m(v)m(e)g Fz(grp)e FE(as)i(a)f(complete)i(comp)s
 (onen)m(t)e(of)g(their)g(path.)46 b(A)32 b(simple)150
-3363 y(string)k(matc)m(h)h(is)e(insu\016cien)m(t,)j Fz(grp)g
-FD(m)m(ust)e(b)s(e)f(a)h(complete)i(comp)s(onen)m(t)e(\(i.e.,)j(group)c
+3363 y(string)k(matc)m(h)h(is)e(insu\016cien)m(t,)j FA(grp)g
+FE(m)m(ust)e(b)s(e)f(a)h(complete)i(comp)s(onen)m(t)e(\(i.e.,)j(group)c
 (name\))h(in)g(the)150 3472 y(path.)73 b(The)40 b(option)i(`)p
-Fy(-g)30 b(g1)p FD(')41 b(w)m(ould)g(not)g(extract)i(these)e(groups)g
-(b)s(ecause)g Fy(g1)f FD(is)i(not)f(a)g(complete)150
-3582 y(comp)s(onen)m(t)36 b(of)f(the)h(path:)50 b Fy(/g12)p
-FD(,)36 b Fy(/fg1)p FD(,)f(and)g Fy(/g1g1)p FD(.)54 b(The)35
+Fz(-g)30 b(g1)p FE(')41 b(w)m(ould)g(not)g(extract)i(these)e(groups)g
+(b)s(ecause)g Fz(g1)f FE(is)i(not)f(a)g(complete)150
+3582 y(comp)s(onen)m(t)36 b(of)f(the)h(path:)50 b Fz(/g12)p
+FE(,)36 b Fz(/fg1)p FE(,)f(and)g Fz(/g1g1)p FE(.)54 b(The)35
 b(second)g(command)g(ab)s(o)m(v)m(e)i(sho)m(ws)e(ho)m(w)150
-3691 y(a)h(terminating)h(slash)f(c)m(haracter)h Fn(/)f
-FD(cancels)h(the)f(recursiv)m(e)h(cop)m(ying)f(of)h(groups.)56
-b(An)36 b(argumen)m(t)g(to)150 3801 y(`)p Fy(-g)p FD(')i(whic)m(h)f
+3691 y(a)h(terminating)h(slash)f(c)m(haracter)h Fo(/)f
+FE(cancels)h(the)f(recursiv)m(e)h(cop)m(ying)f(of)h(groups.)56
+b(An)36 b(argumen)m(t)g(to)150 3801 y(`)p Fz(-g)p FE(')i(whic)m(h)f
 (terminates)i(with)f(a)g(slash)g(c)m(haracter)h(extracts)h(the)e(group)
 f(and)g(its)i(direct)f(ancestors,)150 3911 y(but)30 b(none)h(of)g(its)h
 (c)m(hildren.)42 b(The)31 b(third)f(command)h(ab)s(o)m(v)m(e)h(sho)m
 (ws)f(ho)m(w)g(an)g(initial)h(slash)f(c)m(haracter)h
-Fn(/)150 4020 y FD(anc)m(hors)f(the)f(argumen)m(t)h(to)g(the)f(ro)s(ot)
+Fo(/)150 4020 y FE(anc)m(hors)f(the)f(argumen)m(t)h(to)g(the)f(ro)s(ot)
 h(group.)40 b(The)30 b(third)f(command)i(w)m(ould)f(not)g(extract)i
-(the)e(group)150 4130 y Fy(/g2/g1)g FD(b)s(ecause)i(the)g
-Fy(g1)g FD(group)f(is)h(not)g(at)h(the)f(ro)s(ot)g(lev)m(el,)j(but)c
-(it)h(w)m(ould)g(extract,)i(an)m(y)e(group)g Fy(/g1)150
-4239 y FD(at)f(the)f(ro)s(ot)h(lev)m(el)h(and)d(all)i(its)g(c)m
+(the)e(group)150 4130 y Fz(/g2/g1)g FE(b)s(ecause)i(the)g
+Fz(g1)g FE(group)f(is)h(not)g(at)h(the)f(ro)s(ot)g(lev)m(el,)j(but)c
+(it)h(w)m(ould)g(extract,)i(an)m(y)e(group)g Fz(/g1)150
+4239 y FE(at)f(the)f(ro)s(ot)h(lev)m(el)h(and)d(all)i(its)g(c)m
 (hildren,)f(recursiv)m(ely)-8 b(.)42 b(The)30 b(fourth)f(command)h(is)g
 (the)h(non-recursiv)m(e)150 4349 y(v)m(ersion)d(of)g(the)f(third)g
 (command.)39 b(The)27 b(\014fth)g(command)g(is)h(a)f(sp)s(ecial)i(case)
 f(of)g(the)f(fourth)g(command.)275 4512 y(As)38 b(men)m(tioned)i(ab)s
-(o)m(v)m(e,)i(b)s(oth)c(`)p Fy(-v)p FD(')h(and)f(`)p
-Fy(-g)p FD(')g(options)h(ma)m(y)h(b)s(e)e(sp)s(eci\014ed)g(sim)m
-(ultaneously)i(and)150 4622 y FC(NCO)30 b FD(will,)i(b)m(y)e(default,)h
+(o)m(v)m(e,)i(b)s(oth)c(`)p Fz(-v)p FE(')h(and)f(`)p
+Fz(-g)p FE(')g(options)h(ma)m(y)h(b)s(e)e(sp)s(eci\014ed)g(sim)m
+(ultaneously)i(and)150 4622 y FD(NCO)30 b FE(will,)i(b)m(y)e(default,)h
 (extract)h(the)f(in)m(tersection)h(of)f(the)g(lists,)g(i.e.,)h(the)f
 (sp)s(eci\014ed)f(v)-5 b(ariables)31 b(found)150 4731
-y(in)d(the)h(sp)s(eci\014ed)f(groups)1038 4698 y Ft(14)1107
-4731 y FD(.)40 b(The)28 b(`)p Fy(--unn)p FD(')g(option)h(causes)g
-FC(NCO)f FD(to)h(extract)h(the)f(union,)f(rather)g(than)150
+y(in)d(the)h(sp)s(eci\014ed)f(groups)1038 4698 y Fu(14)1107
+4731 y FE(.)40 b(The)28 b(`)p Fz(--unn)p FE(')g(option)h(causes)g
+FD(NCO)f FE(to)h(extract)h(the)f(union,)f(rather)g(than)150
 4841 y(the)37 b(in)m(tersection,)j(of)c(the)h(sp)s(eci\014ed)f(groups)g
 (and)f(v)-5 b(ariables.)60 b(Consider)36 b(the)g(follo)m(wing)i
 (commands)150 4950 y(\(whic)m(h)30 b(ma)m(y)h(b)s(e)f(assumed)g(to)h
-(end)f(with)g(`)p Fy(in.nc)f(out.nc)p FD('\):)p 150 5066
-1200 4 v 166 5134 a Ft(14)300 5166 y Fs(In)n(tersection-mo)r(de)d(can)g
+(end)f(with)g(`)p Fz(in.nc)f(out.nc)p FE('\):)p 150 5066
+1200 4 v 166 5134 a Fu(14)300 5166 y Ft(In)n(tersection-mo)r(de)d(can)g
 (also)h(b)r(e)f(explicitly)f(in)n(v)n(ok)n(ed)g(with)h(the)f(`)p
-Fr(--nsx)p Fs(')j(or)e(`)p Fr(--intersection)p Fs(')k(switc)n(hes.)35
+Fs(--nsx)p Ft(')j(or)e(`)p Fs(--intersection)p Ft(')k(switc)n(hes.)35
 b(These)275 5253 y(switc)n(hes)d(are)f(supplied)g(for)h(clarit)n(y)f
 (and)g(consistency)h(and)e(do)h(absolutely)h(nothing)f(since)h(in)n
 (tersection-mo)r(de)f(is)275 5340 y(the)25 b(default.)p
 eop end
 %%Page: 43 49
-TeXDict begin 43 48 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(43)390 299 y Fy(#)47
+TeXDict begin 43 48 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(43)390 299 y Fz(#)47
 b(Intersection-mode)d(subsetting)h(\(default\))390 408
 y(ncks)i(-g)95 b(g1)f(-v)48 b(v1)f(#)g(Yes:)g(/g1/v1,)f(/g2/g1/v1.)f
 (No:)i(/v1,)f(/g2/v1)390 518 y(ncks)h(-g)g(/g1)94 b(-v)48
@@ -15620,21 +15847,21 @@ f(#)g(Yes:)g(/g1/v1.)f(No:)h(/g2/g1/v1,)e(/v1,)h(/g2/v1)g(...)390
 y(ncks)h(-g)95 b(g1/)46 b(-v)i(v1)f(--unn)f(#)i(All)f(variables)e(in)95
 b(g1)47 b(or)g(named)f(v1)390 1614 y(ncks)h(-g)g(/g1/)f(-v)i(v1)f
 (--unn)f(#)i(All)f(variables)e(in)i(/g1)g(or)g(named)f(v1)275
-1786 y FD(The)34 b(\014rst)h(command)g(\(`)p Fy(-g)30
-b(g1)g(-v)g(v1)p FD('\))35 b(extracts)i(the)e(v)-5 b(ariable)37
-b Fy(v1)d FD(from)h(an)m(y)h(group)f(named)g Fy(g1)150
-1896 y FD(or)h(descenden)m(t)h Fy(g1)p FD(.)57 b(The)36
-b(second)g(command)g(extracts)i Fy(v1)e FD(from)f(an)m(y)i(ro)s(ot)f
-(group)g(named)g Fy(g1)g FD(and)150 2005 y(an)m(y)41
+1786 y FE(The)34 b(\014rst)h(command)g(\(`)p Fz(-g)30
+b(g1)g(-v)g(v1)p FE('\))35 b(extracts)i(the)e(v)-5 b(ariable)37
+b Fz(v1)d FE(from)h(an)m(y)h(group)f(named)g Fz(g1)150
+1896 y FE(or)h(descenden)m(t)h Fz(g1)p FE(.)57 b(The)36
+b(second)g(command)g(extracts)i Fz(v1)e FE(from)f(an)m(y)i(ro)s(ot)f
+(group)g(named)g Fz(g1)g FE(and)150 2005 y(an)m(y)41
 b(descenden)m(t)f(groups)f(as)i(w)m(ell.)71 b(The)40
 b(third)f(and)g(fourth)h(commands)g(are)g(equiv)-5 b(alen)m(t)42
-b(w)m(a)m(ys)f(of)150 2115 y(extracting)29 b Fy(v1)d
-FD(only)i(from)e(the)i(ro)s(ot)f(group)g(named)g Fy(g1)f
-FD(\(not)i(its)f(descenden)m(ts\).)41 b(The)26 b(\014fth)g(and)h(sixth)
+b(w)m(a)m(ys)f(of)150 2115 y(extracting)29 b Fz(v1)d
+FE(only)i(from)e(the)i(ro)s(ot)f(group)g(named)g Fz(g1)f
+FE(\(not)i(its)f(descenden)m(ts\).)41 b(The)26 b(\014fth)g(and)h(sixth)
 150 2225 y(commands)c(are)h(equiv)-5 b(alen)m(t)24 b(w)m(a)m(ys)h(of)e
-(extracting)i(the)e(v)-5 b(ariable)25 b Fy(v1)d FD(only)i(from)e(the)i
-(ro)s(ot)g(group)e(named)150 2334 y Fy(g1)p FD(.)38 b(Subsetting)23
-b(in)h(union-mo)s(de)e(\(with)i(`)p Fy(--unn)p FD('\))f(causes)h(all)h
+(extracting)i(the)e(v)-5 b(ariable)25 b Fz(v1)d FE(only)i(from)e(the)i
+(ro)s(ot)g(group)e(named)150 2334 y Fz(g1)p FE(.)38 b(Subsetting)23
+b(in)h(union-mo)s(de)e(\(with)i(`)p Fz(--unn)p FE('\))f(causes)h(all)h
 (v)-5 b(ariables)24 b(to)h(b)s(e)e(extracted)i(whic)m(h)e(meet)150
 2444 y(either)i(one)f(or)h(b)s(oth)e(of)i(the)f(sp)s(eci\014cations)h
 (of)g(the)f(v)-5 b(ariable)25 b(and)f(group)g(sp)s(eci\014cations.)39
@@ -15647,65 +15874,65 @@ b(group)f(and)g(v)-5 b(ariable)33 b(sp)s(eci\014cations)g(ma)m(y)g(b)s
 2945 y(Remem)m(b)s(er,)41 b(if)f(a)m(v)m(eraging)i(or)e(concatenating)i
 (large)f(\014les)e(stresses)h(y)m(our)g(systems)f(memory)h(or)150
 3054 y(disk)31 b(resources,)g(then)g(the)g(easiest)h(solution)g(is)f
-(often)g(to)h(subset)f(\(with)g(`)p Fy(-g)p FD(')g(and/or)f(`)p
-Fy(-v)p FD('\))i(to)f(retain)150 3164 y(only)f(the)h(most)g(imp)s
+(often)g(to)h(subset)f(\(with)g(`)p Fz(-g)p FE(')g(and/or)f(`)p
+Fz(-v)p FE('\))i(to)f(retain)150 3164 y(only)f(the)h(most)g(imp)s
 (ortan)m(t)f(v)-5 b(ariables)31 b(\(see)h(Section)f(2.9)g([Memory)g
-(Requiremen)m(ts],)h(page)f(22\).)390 3336 y Fy(ncks)476
+(Requiremen)m(ts],)h(page)f(22\).)390 3336 y Fz(ncks)476
 b(in.nc)47 b(out.nc)f(#)h(Extract)f(all)h(groups)f(and)h(variables)390
 3446 y(ncks)g(-v)g(scl)142 b(#)48 b(Extract)d(variable)h(scl)h(from)g
 (all)f(groups)390 3555 y(ncks)h(-g)g(g1)190 b(#)48 b(Extract)d(group)i
 (g1)g(and)g(descendents)390 3665 y(ncks)g(-x)g(-g)g(g1)g(#)h(Extract)d
 (all)i(groups)f(except)h(g1)g(and)g(descendents)390 3774
 y(ncks)g(-g)g(g2,g3)f(-v)h(scl)g(#)h(Extract)e(scl)g(from)h(groups)f
-(g2)h(and)g(g3)275 3947 y FD(Ov)m(erwriting)30 b(and)g(app)s(ending)f
-(w)m(ork)h(as)h(exp)s(ected:)390 4119 y Fy(#)47 b(Replace)f(scl)h(in)g
+(g2)h(and)g(g3)275 3947 y FE(Ov)m(erwriting)30 b(and)g(app)s(ending)f
+(w)m(ork)h(as)h(exp)s(ected:)390 4119 y Fz(#)47 b(Replace)f(scl)h(in)g
 (group)g(g2)g(in)g(out.nc)f(with)h(scl)g(from)f(group)h(g2)g(from)g
 (in.nc)390 4228 y(ncks)g(-A)g(-g)g(g2)g(-v)g(scl)g(in.nc)g(out.nc)275
-4401 y FD(Due)23 b(to)h(its)f(sp)s(ecial)h(capabilities,)i
-Fy(ncap2)c FD(in)m(terprets)h(the)h(`)p Fy(-v)p FD(')f(switc)m(h)g
+4401 y FE(Due)23 b(to)h(its)f(sp)s(ecial)h(capabilities,)i
+Fz(ncap2)c FE(in)m(terprets)h(the)h(`)p Fz(-v)p FE(')f(switc)m(h)g
 (di\013eren)m(tly)h(\(see)g(Section)g(4.1)150 4510 y([ncap2)44
-b(netCDF)g(Arithmetic)g(Pro)s(cessor],)k(page)c(104\).)82
-b(F)-8 b(or)44 b Fy(ncap2)p FD(,)h(the)f(`)p Fy(-v)p
-FD(')f(switc)m(h)h(tak)m(es)h(no)150 4620 y(argumen)m(ts)33
-b(and)e(indicates)j(that)f Fo(only)41 b FD(user-de\014ned)31
+b(netCDF)g(Arithmetic)g(Pro)s(cessor],)k(page)c(116\).)82
+b(F)-8 b(or)44 b Fz(ncap2)p FE(,)h(the)f(`)p Fz(-v)p
+FE(')f(switc)m(h)h(tak)m(es)h(no)150 4620 y(argumen)m(ts)33
+b(and)e(indicates)j(that)f Fp(only)41 b FE(user-de\014ned)31
 b(v)-5 b(ariables)33 b(should)e(b)s(e)h(output.)46 b
-Fy(ncap2)31 b FD(neither)150 4729 y(accepts)h(nor)e(understands)e(the)i
-Fz(-x)37 b FD(and)30 b Fz(-g)39 b FD(switc)m(hes.)275
+Fz(ncap2)31 b FE(neither)150 4729 y(accepts)h(nor)e(understands)e(the)i
+FA(-x)37 b FE(and)30 b FA(-g)39 b FE(switc)m(hes.)275
 4902 y(Regular)24 b(expressions)f(the)g(syn)m(tax)h(that)g
-FC(NCO)g FD(use)f(pattern-matc)m(h)i(ob)5 b(ject)24 b(names)g(in)f
+FD(NCO)g FE(use)f(pattern-matc)m(h)i(ob)5 b(ject)24 b(names)g(in)f
 (netCDF)h(\014le)150 5011 y(against)29 b(user)e(requests.)39
 b(The)27 b(user)g(can)h(select)h(all)f(v)-5 b(ariables)28
-b(b)s(eginning)f(with)g(the)h(string)f(`)p Fy(DST)p FD(')g(from)150
+b(b)s(eginning)f(with)g(the)h(string)f(`)p Fz(DST)p FE(')g(from)150
 5121 y(an)g(input)g(\014le)h(b)m(y)f(supplying)g(the)g(regular)h
-(expression)f(`)p Fy(^DST)p FD(')g(to)i(the)e(`)p Fy(-v)p
-FD(')h(switc)m(h,)h(i.e.,)g(`)p Fy(-v)h('^DST')p FD('.)150
+(expression)f(`)p Fz(^DST)p FE(')g(to)i(the)e(`)p Fz(-v)p
+FE(')h(switc)m(h,)h(i.e.,)g(`)p Fz(-v)h('^DST')p FE('.)150
 5230 y(The)38 b(meta-c)m(haracters)k(used)c(to)h(express)g(pattern)g
-(matc)m(hing)h(op)s(erations)f(are)g(`)p Fy(^$+?.*[]{}|)p
-FD('.)63 b(If)150 5340 y(the)36 b(regular)g(expression)f(pattern)h
-(matc)m(hes)h Fo(any)45 b FD(part)35 b(of)h(a)g(v)-5
+(matc)m(hing)h(op)s(erations)f(are)g(`)p Fz(^$+?.*[]{}|)p
+FE('.)63 b(If)150 5340 y(the)36 b(regular)g(expression)f(pattern)h
+(matc)m(hes)h Fp(any)45 b FE(part)35 b(of)h(a)g(v)-5
 b(ariable)37 b(name)f(then)f(that)h(v)-5 b(ariable)37
 b(is)p eop end
 %%Page: 44 50
-TeXDict begin 44 49 bop 150 -116 a FD(44)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(selected.)48 b(This)31
-b(capabilit)m(y)j(is)e(also)h(called)g Fz(wildcarding)p
-FD(,)g(and)e(is)i(v)m(ery)f(useful)g(for)f(sub-setting)i(large)150
+TeXDict begin 44 49 bop 150 -116 a FE(44)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(selected.)48 b(This)31
+b(capabilit)m(y)j(is)e(also)h(called)g FA(wildcarding)p
+FE(,)g(and)e(is)i(v)m(ery)f(useful)g(for)f(sub-setting)i(large)150
 408 y(data)e(\014les.)275 569 y(Extended)d(regular)i(expressions)f(are)
-g(de\014ned)f(b)m(y)h(the)h FC(POSIX)e Fy(grep)i(-E)e
-FD(\(ak)-5 b(a)31 b Fy(egrep)p FD(\))d(command.)150 678
-y(As)33 b(of)g FC(NCO)g FD(2.8.1)i(\(August,)f(2003\),)j(v)-5
-b(ariable)33 b(name)h(argumen)m(ts)f(to)h(the)f(`)p Fy(-v)p
-FD(')g(switc)m(h)h(ma)m(y)g(con)m(tain)150 788 y Fz(extended)e(regular)
-f(expressions)p FD(.)44 b(As)32 b(of)f FC(NCO)h FD(3.9.6)h(\(Jan)m
+g(de\014ned)f(b)m(y)h(the)h FD(POSIX)e Fz(grep)i(-E)e
+FE(\(ak)-5 b(a)31 b Fz(egrep)p FE(\))d(command.)150 678
+y(As)33 b(of)g FD(NCO)g FE(2.8.1)i(\(August,)f(2003\),)j(v)-5
+b(ariable)33 b(name)h(argumen)m(ts)f(to)h(the)f(`)p Fz(-v)p
+FE(')g(switc)m(h)h(ma)m(y)g(con)m(tain)150 788 y FA(extended)e(regular)
+f(expressions)p FE(.)44 b(As)32 b(of)f FD(NCO)h FE(3.9.6)h(\(Jan)m
 (uary)-8 b(,)33 b(2009\),)h(v)-5 b(ariable)32 b(names)g(argumen)m(ts)
-150 898 y(to)f Fy(ncatted)d FD(ma)m(y)j(con)m(tain)g
-Fz(extended)g(regular)f(expressions)p FD(.)40 b(As)30
-b(of)h FC(NCO)f FD(4.2.4)i(\(No)m(v)m(em)m(b)s(er,)g(2012\),)150
-1007 y(group)e(name)g(argumen)m(ts)h(to)g(the)g(`)p Fy(-g)p
-FD(')f(switc)m(h)h(ma)m(y)g(con)m(tain)g Fz(extended)g(regular)f
-(expressions)p FD(.)275 1167 y(Because)35 b(of)e(its)h(wide)g(a)m(v)-5
-b(ailabilit)m(y)d(,)38 b FC(NCO)c FD(uses)f(the)h FC(POSIX)f
-FD(regular)g(expression)h(library)f Fy(regex)p FD(.)150
+150 898 y(to)f Fz(ncatted)d FE(ma)m(y)j(con)m(tain)g
+FA(extended)g(regular)f(expressions)p FE(.)40 b(As)30
+b(of)h FD(NCO)f FE(4.2.4)i(\(No)m(v)m(em)m(b)s(er,)g(2012\),)150
+1007 y(group)e(name)g(argumen)m(ts)h(to)g(the)g(`)p Fz(-g)p
+FE(')f(switc)m(h)h(ma)m(y)g(con)m(tain)g FA(extended)g(regular)f
+(expressions)p FE(.)275 1167 y(Because)35 b(of)e(its)h(wide)g(a)m(v)-5
+b(ailabilit)m(y)d(,)38 b FD(NCO)c FE(uses)f(the)h FD(POSIX)f
+FE(regular)g(expression)h(library)f Fz(regex)p FE(.)150
 1277 y(Regular)c(expressions)f(of)g(arbitary)g(complexit)m(y)i(ma)m(y)f
 (b)s(e)f(used.)39 b(Since)28 b(netCDF)h(v)-5 b(ariable)29
 b(names)g(are)150 1387 y(relativ)m(ely)f(simple)d(constructs,)i(only)e
@@ -15713,32 +15940,32 @@ b(names)g(are)150 1387 y(relativ)m(ely)f(simple)d(constructs,)i(only)e
 b(wildcards)f(are)h(lik)m(ely)h(to)f(b)s(e)e(useful.)150
 1496 y(F)-8 b(or)31 b(con)m(v)m(enience,)i(w)m(e)e(de\014ne)e(the)i
 (most)g(useful)e(pattern)i(matc)m(hing)g(op)s(erators)g(here:)150
-1682 y(`)p Fy(^)p FD(')382 b(Matc)m(hes)32 b(the)f(b)s(eginning)e(of)i
-(a)g(string)150 1844 y(`)p Fy($)p FD(')382 b(Matc)m(hes)32
-b(the)f(end)e(of)i(a)g(string)150 2005 y(`)p Fy(.)p FD(')382
+1682 y(`)p Fz(^)p FE(')382 b(Matc)m(hes)32 b(the)f(b)s(eginning)e(of)i
+(a)g(string)150 1844 y(`)p Fz($)p FE(')382 b(Matc)m(hes)32
+b(the)f(end)e(of)i(a)g(string)150 2005 y(`)p Fz(.)p FE(')382
 b(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter)150
 2191 y(The)f(most)h(useful)e(rep)s(etition)i(and)f(com)m(bination)i(op)
-s(erators)e(are)150 2377 y(`)p Fy(?)p FD(')382 b(The)30
+s(erators)e(are)150 2377 y(`)p Fz(?)p FE(')382 b(The)30
 b(preceding)g(regular)h(expression)f(is)g(optional)i(and)e(matc)m(hed)h
-(at)g(most)g(once)150 2538 y(`)p Fy(*)p FD(')382 b(The)30
+(at)g(most)g(once)150 2538 y(`)p Fz(*)p FE(')382 b(The)30
 b(preceding)g(regular)h(expression)f(will)h(b)s(e)e(matc)m(hed)j(zero)f
-(or)f(more)h(times)150 2699 y(`)p Fy(+)p FD(')382 b(The)30
+(or)f(more)h(times)150 2699 y(`)p Fz(+)p FE(')382 b(The)30
 b(preceding)g(regular)h(expression)f(will)h(b)s(e)e(matc)m(hed)j(one)e
-(or)h(more)f(times)150 2861 y(`)p Fy(|)p FD(')382 b(The)42
+(or)h(more)f(times)150 2861 y(`)p Fz(|)p FE(')382 b(The)42
 b(preceding)g(regular)h(expression)f(will)h(b)s(e)f(joined)g(to)h(the)g
 (follo)m(wing)h(regular)e(ex-)630 2970 y(pression.)k(The)32
 b(resulting)g(regular)h(expression)f(matc)m(hes)h(an)m(y)g(string)f
 (matc)m(hing)h(either)630 3080 y(sub)s(expression.)275
 3317 y(T)-8 b(o)32 b(illustrate)h(the)g(use)f(of)g(these)g(op)s
 (erators)h(in)f(extracting)h(v)-5 b(ariables)33 b(and)f(groups,)g
-(consider)g(\014le)150 3426 y Fy(in_grp.nc)22 b FD(with)h(groups)h
-Fy(g0)p FD({)p Fy(g9)p FD(,)h(and)e(subgroups)f Fy(s0)p
-FD({)p Fy(s9)p FD(,)j(in)f(eac)m(h)h(of)f(those)h(groups,)g(and)e
-(\014le)h Fy(in.nc)150 3536 y FD(with)30 b(v)-5 b(ariables)31
-b Fy(Q)p FD(,)f Fy(Q01)p FD({)p Fy(Q99)p FD(,)g Fy(Q100)p
-FD(,)f Fy(QAA)p FD({)p Fy(QZZ)p FD(,)h Fy(Q_H2O)p FD(,)f
-Fy(X_H2O)p FD(,)g Fy(Q_CO2)p FD(,)g Fy(X_CO2)p FD(.)390
-3696 y Fy(ncks)47 b(-v)g('.+')f(in.nc)715 b(#)47 b(All)g(variables)f
+(consider)g(\014le)150 3426 y Fz(in_grp.nc)22 b FE(with)h(groups)h
+Fz(g0)p FE({)p Fz(g9)p FE(,)h(and)e(subgroups)f Fz(s0)p
+FE({)p Fz(s9)p FE(,)j(in)f(eac)m(h)h(of)f(those)h(groups,)g(and)e
+(\014le)h Fz(in.nc)150 3536 y FE(with)30 b(v)-5 b(ariables)31
+b Fz(Q)p FE(,)f Fz(Q01)p FE({)p Fz(Q99)p FE(,)g Fz(Q100)p
+FE(,)f Fz(QAA)p FE({)p Fz(QZZ)p FE(,)h Fz(Q_H2O)p FE(,)f
+Fz(X_H2O)p FE(,)g Fz(Q_CO2)p FE(,)g Fz(X_CO2)p FE(.)390
+3696 y Fz(ncks)47 b(-v)g('.+')f(in.nc)715 b(#)47 b(All)g(variables)f
 (\(default\))390 3806 y(ncks)h(-v)g('Q.?')f(in.nc)667
 b(#)47 b(Variables)f(that)g(contain)g(Q)390 3915 y(ncks)h(-v)g('^Q.?')f
 (in.nc)619 b(#)47 b(Variables)f(that)g(start)h(with)f(Q)390
@@ -15760,253 +15987,254 @@ b(#)47 b(10)h(Groups)e(g0-g9)390 5230 y(ncks)h(-g)g('s.')f(in_grp.nc)
 5340 y(ncks)g(-g)g('g.')f(-v)i('v.')e(in_grp.nc)141 b(#)47
 b(All)g(variables)f('v.')g(in)h(groups)g('g.')p eop end
 %%Page: 45 51
-TeXDict begin 45 50 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(45)275 299 y(Bew)m(are|t)m(w)m(o)29
+TeXDict begin 45 50 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(45)275 299 y(Bew)m(are|t)m(w)m(o)29
 b(of)e(the)h(most)f(frequen)m(tly)g(used)f(rep)s(etition)i(pattern)f
-(matc)m(hing)h(op)s(erators,)g(`)p Fy(*)p FD(')g(and)150
-408 y(`)p Fy(?)p FD(',)f(are)e(also)i(v)-5 b(alid)25
+(matc)m(hing)h(op)s(erators,)g(`)p Fz(*)p FE(')g(and)150
+408 y(`)p Fz(?)p FE(',)f(are)e(also)i(v)-5 b(alid)25
 b(pattern)h(matc)m(hing)g(op)s(erators)g(for)f(\014lename)g(expansion)h
 (\(globbing\))g(at)g(the)f(shell-)150 518 y(lev)m(el.)40
 b(Confusingly)-8 b(,)24 b(their)f(meanings)f(in)h(extended)f(regular)h
 (expressions)f(and)g(in)h(shell-lev)m(el)i(\014lename)150
 628 y(expansion)37 b(are)g(signi\014can)m(tly)h(di\013eren)m(t.)61
 b(In)36 b(an)h(extended)f(regular)i(expression,)g(`)p
-Fy(*)p FD(')f(matc)m(hes)h(zero)150 737 y(or)k(more)h(o)s(ccurences)g
+Fz(*)p FE(')f(matc)m(hes)h(zero)150 737 y(or)k(more)h(o)s(ccurences)g
 (of)f(the)h(preceding)f(regular)h(expression.)76 b(Th)m(us)42
-b(`)p Fy(Q*)p FD(')g(selects)i(all)f(v)-5 b(ariables,)150
-847 y(and)34 b(`)p Fy(Q+.*)p FD(')h(selects)h(all)g(v)-5
-b(ariables)36 b(con)m(taining)g(`)p Fy(Q)p FD(')f(\(the)h(`)p
-Fy(+)p FD(')f(ensures)f(the)h(preceding)g(item)h(matc)m(hes)150
+b(`)p Fz(Q*)p FE(')g(selects)i(all)f(v)-5 b(ariables,)150
+847 y(and)34 b(`)p Fz(Q+.*)p FE(')h(selects)h(all)g(v)-5
+b(ariables)36 b(con)m(taining)g(`)p Fz(Q)p FE(')f(\(the)h(`)p
+Fz(+)p FE(')f(ensures)f(the)h(preceding)g(item)h(matc)m(hes)150
 956 y(at)j(least)h(once\).)67 b(T)-8 b(o)39 b(matc)m(h)g(zero)h(or)e
 (one)h(o)s(ccurence)g(of)g(the)g(preceding)g(regular)g(expression,)h
-(use)150 1066 y(`)p Fy(?)p FD('.)g(Do)s(cumen)m(tation)31
-b(for)e(the)g FC(UNIX)h Fy(egrep)e FD(command)h(details)h(the)f
+(use)150 1066 y(`)p Fz(?)p FE('.)g(Do)s(cumen)m(tation)31
+b(for)e(the)g FD(UNIX)h Fz(egrep)e FE(command)h(details)h(the)f
 (extended)g(regular)g(expressions)150 1176 y(whic)m(h)h
-FC(NCO)g FD(supp)s(orts.)275 1363 y(One)25 b(m)m(ust)h(b)s(e)f(careful)
+FD(NCO)g FE(supp)s(orts.)275 1363 y(One)25 b(m)m(ust)h(b)s(e)f(careful)
 i(to)f(protect)h(an)m(y)g(sp)s(ecial)f(c)m(haracters)i(in)d(the)h
 (regular)h(expression)e(sp)s(eci\014ca-)150 1473 y(tion)31
 b(from)f(b)s(eing)g(in)m(terpreted)h(\(globb)s(ed\))g(b)m(y)f(the)h
 (shell.)42 b(This)29 b(is)i(accomplish)g(b)m(y)g(enclosing)g(sp)s
 (ecial)150 1582 y(c)m(haracters)h(within)e(single)h(or)f(double)g
-(quotes)390 1770 y Fy(ncra)47 b(-v)g(Q??)g(in.nc)f(out.nc)142
+(quotes)390 1770 y Fz(ncra)47 b(-v)g(Q??)g(in.nc)f(out.nc)142
 b(#)47 b(Error:)f(Shell)h(attempts)e(to)i(glob)g(wildcards)390
 1880 y(ncra)g(-v)g('^Q+..')f(in.nc)g(out.nc)g(#)i(Correct:)d(NCO)i
 (interprets)e(wildcards)390 1989 y(ncra)i(-v)g('^Q+..')f(in*.nc)g
 (out.nc)g(#)h(Correct:)f(NCO)h(interprets,)d(Shell)j(globs)275
-2177 y FD(The)27 b(\014nal)g(example)i(sho)m(ws)f(that)g(commands)g(ma)
+2177 y FE(The)27 b(\014nal)g(example)i(sho)m(ws)f(that)g(commands)g(ma)
 m(y)g(use)g(a)g(com)m(bination)h(of)f(v)-5 b(ariable)29
 b(wildcarding)150 2286 y(and)i(shell)h(\014lename)f(expansion)h
-(\(globbing\).)45 b(F)-8 b(or)32 b(globbing,)g(`)p Fy(*)p
-FD(')g(and)f(`)p Fy(?)p FD(')g Fo(have)j(nothing)h(to)f(do)k
-FD(with)150 2396 y(the)32 b(preceding)f(regular)g(expression!)44
+(\(globbing\).)45 b(F)-8 b(or)32 b(globbing,)g(`)p Fz(*)p
+FE(')g(and)f(`)p Fz(?)p FE(')g Fp(have)j(nothing)h(to)f(do)k
+FE(with)150 2396 y(the)32 b(preceding)f(regular)g(expression!)44
 b(In)30 b(shell-lev)m(el)k(\014lename)d(expansion,)h(`)p
-Fy(*)p FD(')g(matc)m(hes)g(an)m(y)g(string,)150 2506
-y(including)26 b(the)h(n)m(ull)f(string)g(and)g(`)p Fy(?)p
-FD(')h(matc)m(hes)g(an)m(y)g(single)g(c)m(haracter.)41
-b(Do)s(cumen)m(tation)28 b(for)e Fy(bash)g FD(and)150
-2615 y Fy(csh)j FD(describ)s(e)h(the)h(rules)f(of)g(\014lename)h
-(expansion)f(\(globbing\).)150 2932 y FB(3.12)68 b(Subsetting)46
-b(Co)t(ordinate)g(V)-11 b(ariables)150 3066 y Fk(\013)p
+Fz(*)p FE(')g(matc)m(hes)g(an)m(y)g(string,)150 2506
+y(including)26 b(the)h(n)m(ull)f(string)g(and)g(`)p Fz(?)p
+FE(')h(matc)m(hes)g(an)m(y)g(single)g(c)m(haracter.)41
+b(Do)s(cumen)m(tation)28 b(for)e Fz(bash)g FE(and)150
+2615 y Fz(csh)j FE(describ)s(e)h(the)h(rules)f(of)g(\014lename)h
+(expansion)f(\(globbing\).)150 2932 y FC(3.12)68 b(Subsetting)46
+b(Co)t(ordinate)g(V)-11 b(ariables)150 3066 y Fl(\013)p
 200 3066 3554 4 v 3553 w(\010)p 150 3556 4 442 v 178
-3202 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncap2)p FD(,)30
-b Fy(ncbo)p FD(,)f Fy(nces)p FD(,)h Fy(ncecat)p FD(,)f
-Fy(ncflint)p FD(,)f Fy(ncks)p FD(,)i Fy(ncpdq)p FD(,)f
-Fy(ncra)p FD(,)g Fy(ncrcat)p FD(,)g Fy(ncwa)178 3312
-y FD(Short)h(options:)41 b(`)p Fy(-C)p FD(',)31 b(`)p
-Fy(-c)p FD(')178 3421 y(Long)g(options:)41 b(`)p Fy(--no-coords)p
-FD(',)28 b(`)p Fy(--no-crd)p FD(',)h(`)p Fy(--crd)p FD(',)g(`)p
-Fy(--coords)p FD(')p 3803 3556 V 150 3607 a Fk(\012)p
-200 3607 3554 4 v 3553 w(\011)275 3806 y FD(By)c(default,)h(co)s
+3202 a FE(Av)-5 b(ailabilit)m(y:)43 b Fz(ncap2)p FE(,)30
+b Fz(ncbo)p FE(,)f Fz(nces)p FE(,)h Fz(ncecat)p FE(,)f
+Fz(ncflint)p FE(,)f Fz(ncks)p FE(,)i Fz(ncpdq)p FE(,)f
+Fz(ncra)p FE(,)g Fz(ncrcat)p FE(,)g Fz(ncwa)178 3312
+y FE(Short)h(options:)41 b(`)p Fz(-C)p FE(',)31 b(`)p
+Fz(-c)p FE(')178 3421 y(Long)g(options:)41 b(`)p Fz(--no-coords)p
+FE(',)28 b(`)p Fz(--no-crd)p FE(',)h(`)p Fz(--crd)p FE(',)g(`)p
+Fz(--coords)p FE(')p 3803 3556 V 150 3607 a Fl(\012)p
+200 3607 3554 4 v 3553 w(\011)275 3806 y FE(By)c(default,)h(co)s
 (ordinates)g(v)-5 b(ariables)25 b(asso)s(ciated)i(with)d(an)m(y)h(v)-5
-b(ariable)26 b(app)s(earing)f(in)f(the)h Fz(input-\014le)150
-3915 y FD(will)30 b(b)s(e)g(placed)g(in)g(the)g Fz(output-\014le)p
-FD(,)g(ev)m(en)h(if)f(they)g(are)g(not)h(explicitly)g(sp)s(eci\014ed,)f
-(e.g.,)h(with)f(the)g(`)p Fy(-v)p FD(')150 4025 y(switc)m(h.)46
+b(ariable)26 b(app)s(earing)f(in)f(the)h FA(input-\014le)150
+3915 y FE(will)30 b(b)s(e)g(placed)g(in)g(the)g FA(output-\014le)p
+FE(,)g(ev)m(en)h(if)f(they)g(are)g(not)h(explicitly)g(sp)s(eci\014ed,)f
+(e.g.,)h(with)f(the)g(`)p Fz(-v)p FE(')150 4025 y(switc)m(h.)46
 b(Th)m(us)31 b(v)-5 b(ariables)33 b(with)f(a)g(latitude)h(co)s
-(ordinate)g Fy(lat)e FD(alw)m(a)m(ys)j(carry)e(the)g(v)-5
-b(alues)33 b(of)f Fy(lat)f FD(with)150 4134 y(them)e(in)m(to)h(the)f
-Fz(output-\014le)p FD(.)41 b(This)28 b(feature)i(can)f(b)s(e)g
-(disabled)f(with)h(`)p Fy(-C)p FD(',)h(whic)m(h)e(causes)i
-FC(NCO)f FD(to)h(not)150 4244 y(automatically)f(add)d(co)s(ordinates)h
+(ordinate)g Fz(lat)e FE(alw)m(a)m(ys)j(carry)e(the)g(v)-5
+b(alues)33 b(of)f Fz(lat)f FE(with)150 4134 y(them)e(in)m(to)h(the)f
+FA(output-\014le)p FE(.)41 b(This)28 b(feature)i(can)f(b)s(e)g
+(disabled)f(with)h(`)p Fz(-C)p FE(',)h(whic)m(h)e(causes)i
+FD(NCO)f FE(to)h(not)150 4244 y(automatically)f(add)d(co)s(ordinates)h
 (to)g(the)f(v)-5 b(ariables)27 b(app)s(earing)f(in)g(the)h
-Fz(output-\014le)p FD(.)39 b(Ho)m(w)m(ev)m(er,)29 b(using)150
-4354 y(`)p Fy(-C)p FD(')23 b(do)s(es)g(not)h(preclude)f(the)g(user)g
+FA(output-\014le)p FE(.)39 b(Ho)m(w)m(ev)m(er,)29 b(using)150
+4354 y(`)p Fz(-C)p FE(')23 b(do)s(es)g(not)h(preclude)f(the)g(user)g
 (from)g(including)g(some)g(co)s(ordinates)h(in)f(the)h(output)f
 (\014les)g(simply)g(b)m(y)150 4463 y(explicitly)31 b(selecting)g(the)e
-(co)s(ordinates)h(with)f(the)h Fz(-v)37 b FD(option.)k(The)28
-b(`)p Fy(-c)p FD(')i(option,)g(on)f(the)g(other)h(hand,)150
+(co)s(ordinates)h(with)f(the)h FA(-v)37 b FE(option.)k(The)28
+b(`)p Fz(-c)p FE(')i(option,)g(on)f(the)g(other)h(hand,)150
 4573 y(is)35 b(a)g(shorthand)e(w)m(a)m(y)j(of)f(automatically)i(sp)s
-(ecifying)e(that)g Fo(al)5 b(l)45 b FD(co)s(ordinate)35
-b(v)-5 b(ariables)35 b(in)g(the)g Fz(input-)150 4682
-y(\014les)f FD(should)29 b(app)s(ear)h(in)f(the)i Fz(output-\014le)p
-FD(.)41 b(Th)m(us)29 b(`)p Fy(-c)p FD(')h(allo)m(ws)h(the)g(user)e(to)i
+(ecifying)e(that)g Fp(al)5 b(l)45 b FE(co)s(ordinate)35
+b(v)-5 b(ariables)35 b(in)g(the)g FA(input-)150 4682
+y(\014les)f FE(should)29 b(app)s(ear)h(in)f(the)i FA(output-\014le)p
+FE(.)41 b(Th)m(us)29 b(`)p Fz(-c)p FE(')h(allo)m(ws)h(the)g(user)e(to)i
 (select)h(all)f(the)f(co)s(ordinate)150 4792 y(v)-5 b(ariables)34
 b(without)f(ha)m(ving)h(to)g(kno)m(w)f(their)g(names.)49
-b(As)33 b(of)h FC(NCO)e FD(v)m(ersion)i(4.4.5)h(\(July)-8
-b(,)34 b(2014\))i(b)s(oth)150 4902 y(`)p Fy(-c)p FD(')26
-b(and)g(`)p Fy(-C)p FD(')g(honor)g(the)g FC(CF)h Fy
-(ancillary_variables)21 b FD(con)m(v)m(en)m(tion)28 b(describ)s(ed)e
-(in)g(Section)h(3.37)h([CF)150 5011 y(Con)m(v)m(en)m(tions],)33
-b(page)f(99.)44 b(As)31 b(of)g FC(NCO)g FD(v)m(ersion)h(4.0.8)g
-(\(April,)g(2011\))h(b)s(oth)e(`)p Fy(-c)p FD(')g(and)f(`)p
-Fy(-C)p FD(')h(honor)g(the)150 5121 y FC(CF)39 b Fy(bounds)e
-FD(con)m(v)m(en)m(tion)j(describ)s(ed)e(in)g(Section)i(3.37)g([CF)f
-(Con)m(v)m(en)m(tions],)j(page)e(99.)66 b(As)38 b(of)h
-FC(NCO)150 5230 y FD(v)m(ersion)j(3.9.6)i(\(Jan)m(uary)-8
-b(,)45 b(2009\))f(b)s(oth)e(`)p Fy(-c)p FD(')f(and)h(`)p
-Fy(-C)p FD(')g(honor)f(the)h FC(CF)g Fy(coordinates)d
-FD(con)m(v)m(en)m(tion)150 5340 y(describ)s(ed)29 b(in)h(Section)i
-(3.37)f([CF)g(Con)m(v)m(en)m(tions],)h(page)f(99.)p eop
-end
+b(As)33 b(of)h FD(NCO)e FE(v)m(ersion)i(4.4.5)h(\(July)-8
+b(,)34 b(2014\))i(b)s(oth)150 4902 y(`)p Fz(-c)p FE(')26
+b(and)g(`)p Fz(-C)p FE(')g(honor)g(the)g FD(CF)h Fz
+(ancillary_variables)21 b FE(con)m(v)m(en)m(tion)28 b(describ)s(ed)e
+(in)g(Section)h(3.38)h([CF)150 5011 y(Con)m(v)m(en)m(tions],)i(page)f
+(110.)41 b(As)28 b(of)h FD(NCO)e FE(v)m(ersion)i(4.0.8)h(\(April,)e
+(2011\))j(b)s(oth)c(`)p Fz(-c)p FE(')h(and)f(`)p Fz(-C)p
+FE(')h(honor)g(the)150 5121 y FD(CF)36 b Fz(bounds)e
+FE(con)m(v)m(en)m(tion)j(describ)s(ed)e(in)g(Section)i(3.38)g([CF)f
+(Con)m(v)m(en)m(tions],)j(page)d(110.)58 b(As)35 b(of)h
+FD(NCO)150 5230 y FE(v)m(ersion)42 b(3.9.6)i(\(Jan)m(uary)-8
+b(,)45 b(2009\))f(b)s(oth)e(`)p Fz(-c)p FE(')f(and)h(`)p
+Fz(-C)p FE(')g(honor)f(the)h FD(CF)g Fz(coordinates)d
+FE(con)m(v)m(en)m(tion)150 5340 y(describ)s(ed)29 b(in)h(Section)i
+(3.38)f([CF)g(Con)m(v)m(en)m(tions],)h(page)f(110.)p
+eop end
 %%Page: 46 52
-TeXDict begin 46 51 bop 150 -116 a FD(46)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(3.13)68 b(Group)45
-b(P)l(ath)g(Editing)150 433 y Fk(\013)p 200 433 3554
-4 v 3553 w(\010)p 150 1031 4 551 v 178 568 a FD(Options)30
-b Fy(-G)g Fn(gpe_dsc)178 677 y FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncbo)p FD(,)30 b Fy(ncecat)p FD(,)f Fy(nces)p FD(,)g
-Fy(ncflint)p FD(,)g Fy(ncks)p FD(,)g Fy(ncpdq)p FD(,)h
-Fy(ncra)p FD(,)f Fy(ncrcat)p FD(,)g Fy(ncwa)178 787 y
-FD(Short)h(options:)41 b(`)p Fy(-G)p FD(')178 896 y(Long)31
-b(options:)41 b(`)p Fy(--gpe)p FD(')p 3803 1031 V 150
-1082 a Fk(\012)p 200 1082 3554 4 v 3553 w(\011)275 1262
-y Fz(Group)h(P)m(ath)i(Editing)p FD(,)k(or)43 b FC(GPE)p
-FD(,)j(allo)m(ws)f(the)f(user)f(to)h(restructure)f(\(i.e.,)49
+TeXDict begin 46 51 bop 150 -116 a FE(46)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(3.13)68 b(Group)45
+b(P)l(ath)g(Editing)150 433 y Fl(\013)p 200 433 3554
+4 v 3553 w(\010)p 150 1031 4 551 v 178 568 a FE(Options)30
+b Fz(-G)g Fo(gpe_dsc)178 677 y FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncbo)p FE(,)30 b Fz(ncecat)p FE(,)f Fz(nces)p FE(,)g
+Fz(ncflint)p FE(,)g Fz(ncks)p FE(,)g Fz(ncpdq)p FE(,)h
+Fz(ncra)p FE(,)f Fz(ncrcat)p FE(,)g Fz(ncwa)178 787 y
+FE(Short)h(options:)41 b(`)p Fz(-G)p FE(')178 896 y(Long)31
+b(options:)41 b(`)p Fz(--gpe)p FE(')p 3803 1031 V 150
+1082 a Fl(\012)p 200 1082 3554 4 v 3553 w(\011)275 1262
+y FA(Group)h(P)m(ath)i(Editing)p FE(,)k(or)43 b FD(GPE)p
+FE(,)j(allo)m(ws)f(the)f(user)f(to)h(restructure)f(\(i.e.,)49
 b(add,)d(remo)m(v)m(e,)j(and)150 1371 y(rename)34 b(groups\))g(in)g
 (the)h(output)f(\014le)g(relativ)m(e)j(to)e(the)f(input)g(\014le)g
 (based)g(on)g(the)h(instructions)f(they)150 1481 y(pro)m(vide.)49
-b(As)33 b(of)g FC(NCO)g FD(4.2.3)i(\(No)m(v)m(em)m(b)s(er,)g(2012\),)i
+b(As)33 b(of)g FD(NCO)g FE(4.2.3)i(\(No)m(v)m(em)m(b)s(er,)g(2012\),)i
 (all)d(op)s(erators)f(that)g(accept)i(netCDF4)f(\014les)f(with)150
-1590 y(groups)j(accept)j(the)e(`)p Fy(-G)p FD(')g(switc)m(h,)j(or)d
-(its)g(long-option)i(equiv)-5 b(alen)m(t)38 b(`)p Fy(--gpe)p
-FD('.)60 b(T)-8 b(o)38 b(master)f FC(GPE)g FD(one)150
+1590 y(groups)j(accept)j(the)e(`)p Fz(-G)p FE(')g(switc)m(h,)j(or)d
+(its)g(long-option)i(equiv)-5 b(alen)m(t)38 b(`)p Fz(--gpe)p
+FE('.)60 b(T)-8 b(o)38 b(master)f FD(GPE)g FE(one)150
 1700 y(m)m(ust)24 b(understand)f(the)h(meaning)h(of)f(the)h(required)e
-Fz(gp)s(e)p 2090 1700 28 4 v 40 w(dsc)30 b FD(structure/argumen)m(t)25
+FA(gp)s(e)p 2090 1700 28 4 v 40 w(dsc)30 b FE(structure/argumen)m(t)25
 b(that)g(sp)s(eci\014es)f(the)150 1810 y(transformation)31
 b(of)f(input-to-output)h(group)f(paths.)275 1973 y(Eac)m(h)h
-Fz(gp)s(e)p 646 1973 V 39 w(dsc)36 b FD(con)m(tains)c(up)d(to)i(three)g
+FA(gp)s(e)p 646 1973 V 39 w(dsc)36 b FE(con)m(tains)c(up)d(to)i(three)g
 (elemen)m(ts)g(\(t)m(w)m(o)h(are)f(optional\))h(in)e(the)h(follo)m
-(wing)g(order:)150 2082 y Fz(gp)s(e)p 295 2082 V 40 w(dsc)k
-FD(=)30 b Fz(grp)p 730 2082 V 40 w(pth)p FD(:)p Fz(lvl)p
-1030 2082 V 40 w(n)m(br)36 b FD(or)30 b Fz(grp)p 1484
-2082 V 40 w(pth)p FD(@)p Fz(lvl)p 1830 2082 V 40 w(n)m(br)150
-2274 y(grp)p 288 2274 V 40 w(pth)171 b FD(Group)33 b(P)m(ath.)51
+(wing)g(order:)150 2082 y FA(gp)s(e)p 295 2082 V 40 w(dsc)k
+FE(=)30 b FA(grp)p 730 2082 V 40 w(pth)p FE(:)p FA(lvl)p
+1030 2082 V 40 w(n)m(br)36 b FE(or)30 b FA(grp)p 1484
+2082 V 40 w(pth)p FE(@)p FA(lvl)p 1830 2082 V 40 w(n)m(br)150
+2274 y(grp)p 288 2274 V 40 w(pth)171 b FE(Group)33 b(P)m(ath.)51
 b(This)33 b(\(optional\))j(comp)s(onen)m(t)e(sp)s(eci\014es)f(the)h
 (output)g(group)f(path)g(that)630 2384 y(should)c(b)s(e)g(app)s(ended)f
 (after)i(an)m(y)g(editing)h(\(i.e.,)g(deletion)g(or)f(truncation\))g
 (of)g(the)g(input)630 2494 y(path)g(is)h(p)s(erformed.)150
-2661 y Fz(lvl)p 254 2661 V 40 w(n)m(br)207 b FD(The)35
+2661 y FA(lvl)p 254 2661 V 40 w(n)m(br)207 b FE(The)35
 b(n)m(um)m(b)s(er)f(of)i(lev)m(els)g(to)h(delete)f(\(from)g(the)f
 (head\))h(or)f(truncate)h(\(from)f(the)h(tail\))h(of)630
 2770 y(the)31 b(input)e(path.)150 2962 y(If)34 b(b)s(oth)f(comp)s(onen)
 m(ts)h(of)h(the)f(argumen)m(t)g(are)h(presen)m(t,)g(then)f(a)g(single)h
 (c)m(haracter,)i(either)e(the)f(colon)150 3072 y(or)28
-b(at-sign)g(\()p Fy(:)g FD(or)g Fy(@)p FD(\),)g(m)m(ust)g(separate)g
-(them.)40 b(If)27 b(only)h Fz(grp)p 2179 3072 V 40 w(pth)f
-FD(is)g(sp)s(ecifed,)h(the)g(separator)g(c)m(haracter)150
-3181 y(ma)m(y)39 b(b)s(e)f(omitted,)j(e.g.,)h(`)p Fy(-G)30
-b(g1)p FD('.)65 b(If)38 b(only)g Fz(lvl)p 1834 3181 V
-41 w(n)m(br)43 b FD(is)c(sp)s(ecifed,)h(the)f(separator)g(c)m(haracter)
+b(at-sign)g(\()p Fz(:)g FE(or)g Fz(@)p FE(\),)g(m)m(ust)g(separate)g
+(them.)40 b(If)27 b(only)h FA(grp)p 2179 3072 V 40 w(pth)f
+FE(is)g(sp)s(ecifed,)h(the)g(separator)g(c)m(haracter)150
+3181 y(ma)m(y)39 b(b)s(e)f(omitted,)j(e.g.,)h(`)p Fz(-G)30
+b(g1)p FE('.)65 b(If)38 b(only)g FA(lvl)p 1834 3181 V
+41 w(n)m(br)43 b FE(is)c(sp)s(ecifed,)h(the)f(separator)g(c)m(haracter)
 h(is)e(still)150 3291 y(required)30 b(to)h(indicate)g(it)g(is)f(a)h
-Fz(lvl)p 1323 3291 V 41 w(n)m(br)36 b FD(arugmen)m(t)30
-b(and)g(not)h(a)g Fz(grp)p 2488 3291 V 39 w(pth)p FD(,)f(e.g.,)i(`)p
-Fy(-G)e(:-1)p FD(')g(or)g(`)p Fy(-G)g(@1)p FD('.)275
+FA(lvl)p 1323 3291 V 41 w(n)m(br)36 b FE(arugmen)m(t)30
+b(and)g(not)h(a)g FA(grp)p 2488 3291 V 39 w(pth)p FE(,)f(e.g.,)i(`)p
+Fz(-G)e(:-1)p FE(')g(or)g(`)p Fz(-G)g(@1)p FE('.)275
 3454 y(If)35 b(the)h(at-sign)g(separator)h(c)m(haracter)g
-Fy(@)e FD(is)h(used)f(instead)h(of)g(the)g(colon)g(separator)h(c)m
-(haracter)g Fy(:)p FD(,)150 3564 y(then)h(the)h(follo)m(wing)h
-Fz(lvl)p 1026 3564 V 40 w(n)m(br)k FD(arugmen)m(t)39
+Fz(@)e FE(is)h(used)f(instead)h(of)g(the)g(colon)g(separator)h(c)m
+(haracter)g Fz(:)p FE(,)150 3564 y(then)h(the)h(follo)m(wing)h
+FA(lvl)p 1026 3564 V 40 w(n)m(br)k FE(arugmen)m(t)39
 b(m)m(ust)f(b)s(e)g(p)s(ositiv)m(e)i(and)e(it)g(will)h(b)s(e)f(assumed)
 g(to)h(refer)f(to)150 3673 y(T)-8 b(runcation-Mo)s(de.)46
-b(Hence,)34 b(`)p Fy(-G)c(:-1)p FD(')h(is)h(the)h(same)f(as)g(`)p
-Fy(-G)f(@1)p FD('.)45 b(This)31 b(is)h(simply)g(a)g(w)m(a)m(y)h(of)g
-(making)150 3783 y(the)e Fz(lvl)p 411 3783 V 40 w(n)m(br)36
-b FD(argumen)m(t)31 b(p)s(ositiv)m(e-de\014nite.)150
-3990 y Fu(3.13.1)63 b(Deletion,)42 b(T)-10 b(runcation,)41
-b(and)g(Flattening)g(of)g(Groups)150 4137 y FC(GPE)c
-FD(has)g(three)h(editing)g(mo)s(des:)55 b(Delete,)42
+b(Hence,)34 b(`)p Fz(-G)c(:-1)p FE(')h(is)h(the)h(same)f(as)g(`)p
+Fz(-G)f(@1)p FE('.)45 b(This)31 b(is)h(simply)g(a)g(w)m(a)m(y)h(of)g
+(making)150 3783 y(the)e FA(lvl)p 411 3783 V 40 w(n)m(br)36
+b FE(argumen)m(t)31 b(p)s(ositiv)m(e-de\014nite.)150
+3990 y Fv(3.13.1)63 b(Deletion,)42 b(T)-10 b(runcation,)41
+b(and)g(Flattening)g(of)g(Groups)150 4137 y FD(GPE)c
+FE(has)g(three)h(editing)g(mo)s(des:)55 b(Delete,)42
 b(T)-8 b(runcate,)40 b(and)d(Flatten.)64 b(Select)39
-b(one)f(of)g FC(GPE)p FD('s)f(three)150 4246 y(editing)23
-b(mo)s(des)f(b)m(y)g(supplying)f(a)i Fz(lvl)p 1412 4246
-V 40 w(n)m(br)28 b FD(that)23 b(is)g(p)s(ositiv)m(e,)i(negativ)m(e,)h
+b(one)f(of)g FD(GPE)p FE('s)f(three)150 4246 y(editing)23
+b(mo)s(des)f(b)m(y)g(supplying)f(a)i FA(lvl)p 1412 4246
+V 40 w(n)m(br)28 b FE(that)23 b(is)g(p)s(ositiv)m(e,)i(negativ)m(e,)h
 (or)c(zero)i(for)e(Delete-,)k(T)-8 b(runcate-)150 4356
 y(and)30 b(Flatten-mo)s(de,)i(resp)s(ectiv)m(ely)-8 b(.)275
-4519 y(In)37 b(Delete-mo)s(de,)43 b Fz(lvl)p 1062 4519
-V 41 w(n)m(br)h FD(is)38 b(a)h(p)s(ositiv)m(e)g(in)m(teger)h(whic)m(h)f
+4519 y(In)37 b(Delete-mo)s(de,)43 b FA(lvl)p 1062 4519
+V 41 w(n)m(br)h FE(is)38 b(a)h(p)s(ositiv)m(e)g(in)m(teger)h(whic)m(h)f
 (sp)s(eci\014es)f(the)g(maxim)m(um)h(n)m(um)m(b)s(er)e(of)150
 4629 y(group)28 b(path)g(comp)s(onen)m(ts)g(\(i.e.,)i(groups\))e(that)h
-FC(GPE)e FD(will)i(try)f(to)h(delete)g(from)f(the)g(head)g(of)h
-Fz(grp)p 3555 4629 V 39 w(pth)p FD(.)150 4738 y(F)-8
-b(or)42 b(example)h Fz(lvl)p 800 4738 V 44 w(n)m(br)49
-b FD(=)44 b(3)e(c)m(hanges)g(the)g(input)e(path)i Fy(/g1/g2/g3/g4/g5)37
-b FD(to)42 b(the)g(output)f(path)150 4848 y Fy(/g4/g5)p
-FD(.)e(Input)27 b(paths)i(with)g Fz(lvl)p 1307 4848 V
-40 w(n)m(br)35 b FD(or)29 b(few)m(er)h(comp)s(onen)m(ts)f(\(groups\))g
+FD(GPE)e FE(will)i(try)f(to)h(delete)g(from)f(the)g(head)g(of)h
+FA(grp)p 3555 4629 V 39 w(pth)p FE(.)150 4738 y(F)-8
+b(or)42 b(example)h FA(lvl)p 800 4738 V 44 w(n)m(br)49
+b FE(=)44 b(3)e(c)m(hanges)g(the)g(input)e(path)i Fz(/g1/g2/g3/g4/g5)37
+b FE(to)42 b(the)g(output)f(path)150 4848 y Fz(/g4/g5)p
+FE(.)e(Input)27 b(paths)i(with)g FA(lvl)p 1307 4848 V
+40 w(n)m(br)35 b FE(or)29 b(few)m(er)h(comp)s(onen)m(ts)f(\(groups\))g
 (are)g(completely)i(erased)f(and)150 4958 y(the)h(output)f(path)g
 (commences)h(from)f(the)g(ro)s(ot)h(lev)m(el.)275 5121
-y(In)g(other)h(w)m(ords,)h FC(GPE)e FD(is)h(toleran)m(t)i(of)e(sp)s
+y(In)g(other)h(w)m(ords,)h FD(GPE)e FE(is)h(toleran)m(t)i(of)e(sp)s
 (ecifying)g(to)s(o)h(man)m(y)g(group)e(comp)s(onen)m(ts)i(to)f(delete.)
 48 b(It)150 5230 y(deletes)35 b(as)f(man)m(y)f(as)h(p)s(ossible,)g
 (without)g(complain)m(t,)i(and)d(then)g(b)s(egins)g(to)h(\015atten)g
 (the)g(\014le)g(\(whic)m(h)150 5340 y(will)d(fail)g(if)f(namespace)h
 (con\015icts)g(arise\).)p eop end
 %%Page: 47 53
-TeXDict begin 47 52 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(47)275 299 y(In)27 b(T)-8
-b(runcate-mo)s(de,)29 b Fz(lvl)p 1145 299 28 4 v 40 w(n)m(br)34
-b FD(is)28 b(a)g(negativ)m(e)i(in)m(teger)g(whic)m(h)d(sp)s(eci\014es)h
-(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)150 408 y(group)e(path)f(comp)
-s(onen)m(ts)i(\(i.e.,)i(groups\))c(that)i FC(GPE)e FD(will)i(try)f(to)h
-(truncate)f(from)g(the)g(tail)i(of)e Fz(grp)p 3555 408
-V 39 w(pth)p FD(.)150 518 y(F)-8 b(or)37 b(example)h
-Fz(lvl)p 790 518 V 44 w(n)m(br)j FD(=)35 b FA(\000)p
-FD(3)i(c)m(hanges)h(the)e(input)g(path)g Fy(/g1/g2/g3/g4/g5)d
-FD(to)k(the)g(output)f(path)150 628 y Fy(/g1/g2)p FD(.)j(Input)27
-b(paths)i(with)g Fz(lvl)p 1307 628 V 40 w(n)m(br)35 b
-FD(or)29 b(few)m(er)h(comp)s(onen)m(ts)f(\(groups\))g(are)g(completely)
-i(erased)f(and)150 737 y(the)h(output)f(path)g(commences)h(from)f(the)g
-(ro)s(ot)h(lev)m(el.)275 902 y(In)i(Flatten-mo)s(de,)k(indicated)e(b)m
-(y)f(the)g(separator)h(c)m(haracter)h(alone)f(or)f(with)g
-Fz(lvl)p 3157 902 V 44 w(n)m(br)k FD(=)31 b(0,)36 b FC(GPE)150
-1011 y FD(remo)m(v)m(es)28 b(the)f(en)m(tire)g(group)f(path)g(from)g
-(the)h(input)e(\014le)i(and)f(constructs)h(the)f(output)g(path)h(b)s
-(eginning)150 1121 y(at)41 b(the)f(ro)s(ot)h(lev)m(el.)72
-b(F)-8 b(or)41 b(example)g Fy(-G)30 b(:0)39 b FD(and)h
-Fy(-G)30 b(:)40 b FD(are)g(iden)m(tical)i(and)e(c)m(hange)h(the)g
-(input)e(path)150 1230 y Fy(/g1/g2/g3/g4/g5)h FD(to)45
-b(the)f(output)g(path)g Fy(/)g FD(whereas)g Fy(-G)30
-b(g1:0)43 b FD(and)h Fy(-G)30 b(g1:)43 b FD(are)i(iden)m(tical)h(and)
-150 1340 y(result)30 b(in)g(the)h(output)f(path)g Fy(/g1)f
-FD(for)i(all)g(v)-5 b(ariables.)275 1504 y(Subsequen)m(t)24
-b(to)i(the)f(alteration)i(of)f(the)f(input)f(path)h(b)m(y)g(the)h(sp)s
-(eci\014ed)e(editing)i(mo)s(de,)g(if)g(an)m(y)-8 b(,)27
-b FC(GPE)150 1614 y FD(prep)s(ends)22 b(\(in)i(Delete)j(Mo)s(de\))d(or)
-h(App)s(ends)d(\(in)i(T)-8 b(runcate-mo)s(de\))25 b(an)m(y)f(sp)s
-(ecifed)g Fz(grp)p 3139 1614 V 40 w(pth)f FD(to)i(the)f(out-)150
-1724 y(put)h(path.)38 b(F)-8 b(or)27 b(example)f Fy(-G)j(g2)c
-FD(c)m(hanges)i(the)e(input)f(paths)h Fy(/)g FD(and)g
-Fy(/g1)g FD(to)h Fy(/g2)e FD(and)h Fy(/g1/g2)p FD(,)g(resp)s(ec-)150
-1833 y(tiv)m(ely)-8 b(.)56 b(Lik)m(ewise,)37 b Fy(-G)30
-b(g2/g3)j FD(c)m(hanges)j(the)e(input)g(paths)g Fy(/)h
-FD(and)f Fy(/g1)g FD(to)h Fy(/g2/g3)e FD(and)h Fy(/g1/g2/g3)p
-FD(,)150 1943 y(resp)s(ectiv)m(ely)-8 b(.)42 b(When)29
-b Fz(grp)p 1075 1943 V 40 w(pth)f FD(and)h Fz(lvl)p 1554
-1943 V 40 w(n)m(br)35 b FD(are)29 b(b)s(oth)g(sp)s(eci\014ed,)g(the)g
-(editing)h(actions)g(are)g(tak)m(en)g(in)150 2052 y(sequence)e(so)g
-(that,)i(e.g.,)g Fy(-G)f(g1/g2:2)d FD(c)m(hanges)j(the)f(input)f(paths)
-h Fy(/)f FD(and)g Fy(/h1/h2/h3/h4)e FD(to)k Fy(/g1/g2)150
-2162 y FD(and)41 b Fy(/g1/g2/h3/h4)p FD(,)f(resp)s(ectiv)m(ely)-8
-b(.)75 b(Lik)m(ewise,)45 b Fy(-G)30 b(g1/g2:-2)39 b FD(c)m(hanges)j
-(the)g(input)e(paths)h Fy(/)g FD(and)150 2271 y Fy(/h1/h2/h3/h4)27
-b FD(to)k Fy(/g1/g2)e FD(and)h Fy(/h1/h2/g1/g2)p FD(,)d(resp)s(ectiv)m
-(ely)-8 b(.)275 2436 y(Com)m(bining)42 b FC(GPE)f FD(with)h(subsetting)
+TeXDict begin 47 52 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(47)275 299 y(In)27
+b(T)-8 b(runcate-mo)s(de,)29 b FA(lvl)p 1145 299 28 4
+v 40 w(n)m(br)34 b FE(is)28 b(a)g(negativ)m(e)i(in)m(teger)g(whic)m(h)d
+(sp)s(eci\014es)h(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)150
+408 y(group)e(path)f(comp)s(onen)m(ts)i(\(i.e.,)i(groups\))c(that)i
+FD(GPE)e FE(will)i(try)f(to)h(truncate)f(from)g(the)g(tail)i(of)e
+FA(grp)p 3555 408 V 39 w(pth)p FE(.)150 518 y(F)-8 b(or)37
+b(example)h FA(lvl)p 790 518 V 44 w(n)m(br)j FE(=)35
+b FB(\000)p FE(3)i(c)m(hanges)h(the)e(input)g(path)g
+Fz(/g1/g2/g3/g4/g5)d FE(to)k(the)g(output)f(path)150
+628 y Fz(/g1/g2)p FE(.)j(Input)27 b(paths)i(with)g FA(lvl)p
+1307 628 V 40 w(n)m(br)35 b FE(or)29 b(few)m(er)h(comp)s(onen)m(ts)f
+(\(groups\))g(are)g(completely)i(erased)f(and)150 737
+y(the)h(output)f(path)g(commences)h(from)f(the)g(ro)s(ot)h(lev)m(el.)
+275 902 y(In)i(Flatten-mo)s(de,)k(indicated)e(b)m(y)f(the)g(separator)h
+(c)m(haracter)h(alone)f(or)f(with)g FA(lvl)p 3157 902
+V 44 w(n)m(br)k FE(=)31 b(0,)36 b FD(GPE)150 1011 y FE(remo)m(v)m(es)28
+b(the)f(en)m(tire)g(group)f(path)g(from)g(the)h(input)e(\014le)i(and)f
+(constructs)h(the)f(output)g(path)h(b)s(eginning)150
+1121 y(at)41 b(the)f(ro)s(ot)h(lev)m(el.)72 b(F)-8 b(or)41
+b(example)g Fz(-G)30 b(:0)39 b FE(and)h Fz(-G)30 b(:)40
+b FE(are)g(iden)m(tical)i(and)e(c)m(hange)h(the)g(input)e(path)150
+1230 y Fz(/g1/g2/g3/g4/g5)h FE(to)45 b(the)f(output)g(path)g
+Fz(/)g FE(whereas)g Fz(-G)30 b(g1:0)43 b FE(and)h Fz(-G)30
+b(g1:)43 b FE(are)i(iden)m(tical)h(and)150 1340 y(result)30
+b(in)g(the)h(output)f(path)g Fz(/g1)f FE(for)i(all)g(v)-5
+b(ariables.)275 1504 y(Subsequen)m(t)24 b(to)i(the)f(alteration)i(of)f
+(the)f(input)f(path)h(b)m(y)g(the)h(sp)s(eci\014ed)e(editing)i(mo)s
+(de,)g(if)g(an)m(y)-8 b(,)27 b FD(GPE)150 1614 y FE(prep)s(ends)22
+b(\(in)i(Delete)j(Mo)s(de\))d(or)h(App)s(ends)d(\(in)i(T)-8
+b(runcate-mo)s(de\))25 b(an)m(y)f(sp)s(ecifed)g FA(grp)p
+3139 1614 V 40 w(pth)f FE(to)i(the)f(out-)150 1724 y(put)h(path.)38
+b(F)-8 b(or)27 b(example)f Fz(-G)j(g2)c FE(c)m(hanges)i(the)e(input)f
+(paths)h Fz(/)g FE(and)g Fz(/g1)g FE(to)h Fz(/g2)e FE(and)h
+Fz(/g1/g2)p FE(,)g(resp)s(ec-)150 1833 y(tiv)m(ely)-8
+b(.)56 b(Lik)m(ewise,)37 b Fz(-G)30 b(g2/g3)j FE(c)m(hanges)j(the)e
+(input)g(paths)g Fz(/)h FE(and)f Fz(/g1)g FE(to)h Fz(/g2/g3)e
+FE(and)h Fz(/g1/g2/g3)p FE(,)150 1943 y(resp)s(ectiv)m(ely)-8
+b(.)42 b(When)29 b FA(grp)p 1075 1943 V 40 w(pth)f FE(and)h
+FA(lvl)p 1554 1943 V 40 w(n)m(br)35 b FE(are)29 b(b)s(oth)g(sp)s
+(eci\014ed,)g(the)g(editing)h(actions)g(are)g(tak)m(en)g(in)150
+2052 y(sequence)e(so)g(that,)i(e.g.,)g Fz(-G)f(g1/g2:2)d
+FE(c)m(hanges)j(the)f(input)f(paths)h Fz(/)f FE(and)g
+Fz(/h1/h2/h3/h4)e FE(to)k Fz(/g1/g2)150 2162 y FE(and)41
+b Fz(/g1/g2/h3/h4)p FE(,)f(resp)s(ectiv)m(ely)-8 b(.)75
+b(Lik)m(ewise,)45 b Fz(-G)30 b(g1/g2:-2)39 b FE(c)m(hanges)j(the)g
+(input)e(paths)h Fz(/)g FE(and)150 2271 y Fz(/h1/h2/h3/h4)27
+b FE(to)k Fz(/g1/g2)e FE(and)h Fz(/h1/h2/g1/g2)p FE(,)d(resp)s(ectiv)m
+(ely)-8 b(.)275 2436 y(Com)m(bining)42 b FD(GPE)f FE(with)h(subsetting)
 g(\(see)h(Section)g(3.11)h([Subsetting)e(Files],)47 b(page)c(40\))h
 (yields)150 2545 y(p)s(o)m(w)m(erful)27 b(con)m(trol)j(o)m(v)m(er)f
 (the)f(extracted)i(\(or)e(excluded\))g(v)-5 b(ariables)29
 b(and)e(groups)g(and)h(their)f(placemen)m(t)150 2655
 y(in)43 b(the)g(output)g(\014le)h(as)f(sho)m(wn)g(b)m(y)g(the)h(follo)m
 (wing)g(commands.)79 b(All)44 b(commands)f(b)s(elo)m(w)h(ma)m(y)g(b)s
-(e)150 2765 y(assumed)30 b(to)h(end)e(with)i(`)p Fy(in.nc)e(out.nc)p
-FD('.)390 2929 y Fy(#)47 b(Prepending)e(paths)i(without)f(editing:)390
+(e)150 2765 y(assumed)30 b(to)h(end)e(with)i(`)p Fz(in.nc)e(out.nc)p
+FE('.)390 2929 y Fz(#)47 b(Prepending)e(paths)i(without)f(editing:)390
 3039 y(ncks)906 b(#)47 b(/g?/v?)f(->)h(/g?/v?)390 3148
 y(ncks)619 b(-v)48 b(v1)f(#)g(/g?/v1)f(->)h(/g?/v1)390
 3258 y(ncks)333 b(-g)47 b(g1)334 b(#)47 b(/g1/v?)f(->)h(/g1/v?)390
@@ -16036,8 +16264,8 @@ b(/g2/v1)390 5230 y(ncks)g(-G)g(g2:1)94 b(-g)47 b(g1/g1)g(-v)g(v1)g(#)h
 (/g1/g1/v1)d(->)i(/g2/g1/v1)390 5340 y(#)g(Flatten-mode:)e(Remove)h
 (all)h(input)f(path)h(components)p eop end
 %%Page: 48 54
-TeXDict begin 48 53 bop 150 -116 a FD(48)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(#)47 b(Syntax:)f(-G)h([apn]:)g
+TeXDict begin 48 53 bop 150 -116 a FE(48)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(#)47 b(Syntax:)f(-G)h([apn]:)g
 (colon)f(without)g(numerical)f(argument)390 408 y(ncks)i(-G)g(:)572
 b(-v)47 b(v1)h(#)f(/g?/v1)189 b(->)48 b(/v1)390 518 y(ncks)f(-G)g(:)143
 b(-g)47 b(g1)190 b(-v)47 b(v1)h(#)f(/g1/v1)189 b(->)48
@@ -16060,40 +16288,40 @@ y(ncks)g(-G)g(g2:-1)476 b(-v)47 b(v1)g(#)h(/g?/v1)189
 b(->)47 b(/g2/v1)390 1943 y(ncks)g(-G)g(g2:-1)f(-g)h(g1)191
 b(-v)47 b(v1)g(#)h(/g1/v1)189 b(->)47 b(/g2/v1)390 2052
 y(ncks)g(-G)g(g1:-1)f(-g)h(g1/g2)g(-v)g(v1)g(#)h(/g1/g2/v1)d(->)i
-(/g1/g1/v1)150 2399 y Fu(3.13.2)63 b(Mo)m(ving)42 b(Groups)150
-2545 y FD(Un)m(til)35 b(fall)f(2013)h(\(netCDF)g(v)m(ersion)f
+(/g1/g1/v1)150 2399 y Fv(3.13.2)63 b(Mo)m(ving)42 b(Groups)150
+2545 y FE(Un)m(til)35 b(fall)f(2013)h(\(netCDF)g(v)m(ersion)f
 (4.3.1-pre1\),)j(netCDF)d(con)m(tained)h(no)f(library)f(function)g(for)
 h(re-)150 2655 y(naming)39 b(groups,)i(and)e(therefore)g
-Fy(ncrename)e FD(cannot)j(rename)g(groups.)66 b(Ho)m(w)m(ev)m(er,)44
-b FC(NCO)39 b FD(built)g(on)150 2765 y(earlier)32 b(v)m(ersions)f(of)g
-(netCDF)g(than)g(4.3.1)i(can)e(use)f(a)i FC(GPE)p FD(-based)e(w)m(ork)
+Fz(ncrename)e FE(cannot)j(rename)g(groups.)66 b(Ho)m(w)m(ev)m(er,)44
+b FD(NCO)39 b FE(built)g(on)150 2765 y(earlier)32 b(v)m(ersions)f(of)g
+(netCDF)g(than)g(4.3.1)i(can)e(use)f(a)i FD(GPE)p FE(-based)e(w)m(ork)
 -5 b(around)29 b(mec)m(hanism)j(to)f(\\re-)150 2874 y(name")e(groups.)
-39 b(The)28 b FC(GPE)g FD(mec)m(hanism)g(actually)i Fo(moves)37
-b FD(\(i.e.,)30 b(copies)f(to)g(a)g(new)f(lo)s(cation\))i(groups,)150
+39 b(The)28 b FD(GPE)g FE(mec)m(hanism)g(actually)i Fp(moves)37
+b FE(\(i.e.,)30 b(copies)f(to)g(a)g(new)f(lo)s(cation\))i(groups,)150
 2984 y(a)f(more)h(arduous)d(pro)s(cedure)h(than)h(simply)g(renaming)g
-(them.)40 b FC(GPE)28 b FD(applies)h(to)h(all)g(selected)g(groups,)150
+(them.)40 b FD(GPE)28 b FE(applies)h(to)h(all)g(selected)g(groups,)150
 3093 y(so,)f(in)e(the)h(general)h(case,)g(one)f(m)m(ust)g(mo)m(v)m(e)h
 (only)f(the)f(desired)h(group)f(to)h(a)g(new)f(\014le,)i(and)e(then)g
 (merge)150 3203 y(that)i(new)f(\014le)g(with)h(the)f(original)i(to)f
 (obtain)g(a)g(\014le)f(where)g(the)h(desired)f(group)g(has)g(b)s(een)f
 (\\renamed")150 3313 y(and)39 b(all)i(else)g(is)f(unc)m(hanged.)68
-b(Here)41 b(is)f(ho)m(w)g(to)g(\\rename")h(group)e Fy(/g4)g
-FD(to)i(group)e Fy(/f4)g FD(with)h FC(GPE)150 3422 y
-FD(instead)31 b(of)f Fy(ncrename)390 3655 y(ncks)47 b(-O)g(-G)g(f4:1)g
+b(Here)41 b(is)f(ho)m(w)g(to)g(\\rename")h(group)e Fz(/g4)g
+FE(to)i(group)e Fz(/f4)g FE(with)h FD(GPE)150 3422 y
+FE(instead)31 b(of)f Fz(ncrename)390 3655 y(ncks)47 b(-O)g(-G)g(f4:1)g
 (-g)g(g4)g(~/nco/data/in_grp.nc)42 b(~/tmp.nc)k(#)h(Move)g(/g4)g(to)g
 (/f4)390 3765 y(ncks)g(-O)g(-x)g(-g)g(g4)g(~/nco/data/in_grp.nc)c
 (~/out.nc)i(#)j(Excise)e(/g4)390 3874 y(ncks)h(-A)g(~/tmp.nc)e
 (~/out.nc)h(#)h(Add)g(/f4)g(to)g(new)g(file)275 4107
-y FD(If)40 b(the)i(original)g(group)f Fy(g4)g FD(is)g(not)h(excised)g
-(from)f Fy(out.nc)e FD(\(step)j(t)m(w)m(o)h(ab)s(o)m(v)m(e\),)j(then)41
+y FE(If)40 b(the)i(original)g(group)f Fz(g4)g FE(is)g(not)h(excised)g
+(from)f Fz(out.nc)e FE(\(step)j(t)m(w)m(o)h(ab)s(o)m(v)m(e\),)j(then)41
 b(the)g(\014nal)150 4217 y(output)33 b(\014le)h(w)m(ould)f(con)m(tain)i
-(b)s(oth)e Fy(g4)g FD(and)g(a)h(cop)m(y)g(named)g Fy(f4)p
-FD(.)49 b(Th)m(us)33 b(GPE)h(can)g(b)s(e)e(used)h(to)i(b)s(oth)150
+(b)s(oth)e Fz(g4)g FE(and)g(a)h(cop)m(y)g(named)g Fz(f4)p
+FE(.)49 b(Th)m(us)33 b(GPE)h(can)g(b)s(e)e(used)h(to)i(b)s(oth)150
 4326 y(\\rename")d(and)e(cop)m(y)i(groups.)41 b(The)31
 b(recommended)f(w)m(a)m(y)i(to)f(rename)g(groups)g(when)e(when)h
 (netCDF)150 4436 y(v)m(ersion)h(4.3.1)i(is)d(a)m(v)-5
-b(ailale)34 b(is)d(to)g(use)f Fy(ncrename)f FD(\(see)i(Section)h(4.11)g
-([ncrename)f(netCDF)g(Renamer],)150 4545 y(page)g(202\).)275
+b(ailale)34 b(is)d(to)g(use)f Fz(ncrename)f FE(\(see)i(Section)h(4.11)g
+([ncrename)f(netCDF)g(Renamer],)150 4545 y(page)g(214\).)275
 4778 y(One)48 b(ma)m(y)i(wish)f(to)h(\015atten)f(hierarc)m(hical)i
 (group)e(\014les)g(for)g(man)m(y)h(reasons.)97 b(These)49
 b(include)150 4888 y(1.)41 b(Obtaining)d(\015at)g(netCDF3)i(\014les)e
@@ -16102,32 +16330,32 @@ b(include)150 4888 y(1.)41 b(Obtaining)d(\015at)g(netCDF3)i(\014les)e
 (hies)g(to)h(re-assem)m(ble)g(in)m(to)f(di\013eren)m(t)h(hierarc)m
 (hies,)g(and)e(3.)42 b(Pro)m(viding)36 b(a)150 5107 y(subset)30
 b(of)g(a)h(hierarc)m(hical)h(\014le)e(with)g(the)h(simplest)g(p)s
-(ossible)f(storage)h(structure.)390 5340 y Fy(ncks)47
+(ossible)f(storage)h(structure.)390 5340 y Fz(ncks)47
 b(-O)g(-G)g(:)g(-g)h(cesm)e(-3)h(~/nco/data/cmip5.nc)c(~/cesm.nc)i(#)j
 (Extract)e(/cesm)g(to)h(/)p eop end
 %%Page: 49 55
-TeXDict begin 49 54 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(49)275 299 y(The)39
-b Fy(-3)f FD(switc)m(h)855 266 y Ft(15)966 299 y FD(sp)s(eci\014es)h
+TeXDict begin 49 54 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(49)275 299 y(The)39
+b Fz(-3)f FE(switc)m(h)855 266 y Fu(15)966 299 y FE(sp)s(eci\014es)h
 (the)g(output)h(dataset)g(should)f(b)s(e)g(in)g(netCDF3)h(format,)j
-(the)d Fy(-G)29 b(:)150 408 y FD(option)k(\015attens)g(all)h(extracted)
-g(groups,)f(and)f(the)h Fy(-g)d(cesm)i FD(option)h(extracts)h(only)f
-(the)g Fy(cesm)e FD(group)150 518 y(and)f(lea)m(v)m(es)i(all)g(other)e
-(groups)g(\(e.g.,)i Fy(ecmwf)p FD(,)d Fy(giss)p FD(\).)150
-712 y Fu(3.13.3)63 b(Dismem)m(b)s(ering)43 b(Files)150
-859 y FD(Let)24 b(us)e(sho)m(w)i(ho)m(w)f(to)h(completely)h
-(disaggregate)h(\(or,)f(more)f(memorably\))f Fo(dismemb)-5
-b(er)35 b FD(a)23 b(hierarc)m(hical)150 969 y(dataset.)60
+(the)d Fz(-G)29 b(:)150 408 y FE(option)k(\015attens)g(all)h(extracted)
+g(groups,)f(and)f(the)h Fz(-g)d(cesm)i FE(option)h(extracts)h(only)f
+(the)g Fz(cesm)e FE(group)150 518 y(and)f(lea)m(v)m(es)i(all)g(other)e
+(groups)g(\(e.g.,)i Fz(ecmwf)p FE(,)d Fz(giss)p FE(\).)150
+712 y Fv(3.13.3)63 b(Dismem)m(b)s(ering)43 b(Files)150
+859 y FE(Let)24 b(us)e(sho)m(w)i(ho)m(w)f(to)h(completely)h
+(disaggregate)h(\(or,)f(more)f(memorably\))f Fp(dismemb)-5
+b(er)35 b FE(a)23 b(hierarc)m(hical)150 969 y(dataset.)60
 b(F)-8 b(or)37 b(no)m(w)f(w)m(e)h(tak)m(e)h(this)e(to)h(mean:)53
 b(store)37 b(eac)m(h)g(group)f(as)g(a)h(standalone)g(\015at)g(dataset)g
 (in)150 1078 y(netCDF3)22 b(format.)38 b(This)21 b(can)g(b)s(e)g
 (accomplished)h(b)m(y)f(lo)s(oping)h(the)f(previous)g(example)h(o)m(v)m
-(er)g(all)g(groups.)150 1188 y(This)28 b(script)g Fy(ncdismember)d
-FD(dismem)m(b)s(ers)j(the)g(input)g(\014le)h Fz(\015)p
-2252 1188 28 4 v 39 w(in)f FD(sp)s(eci\014ed)g(in)g(the)h(\014rst)f
+(er)g(all)g(groups.)150 1188 y(This)28 b(script)g Fz(ncdismember)d
+FE(dismem)m(b)s(ers)j(the)g(input)g(\014le)h FA(\015)p
+2252 1188 28 4 v 39 w(in)f FE(sp)s(eci\014ed)g(in)g(the)h(\014rst)f
 (argumen)m(t)h(and)150 1297 y(places)i(the)g(resulting)f(\014les)h(in)f
-(the)g(directory)h Fz(drc)p 1914 1297 V 40 w(out)h FD(sp)s(eci\014ed)e
-(b)m(y)g(the)h(second)f(argumen)m(t:)390 1457 y Fy(cat)47
+(the)g(directory)h FA(drc)p 1914 1297 V 40 w(out)h FE(sp)s(eci\014ed)e
+(b)m(y)g(the)h(second)f(argumen)m(t:)390 1457 y Fz(cat)47
 b(>)g(~/ncdismember)e(<<)i('EOF')390 1566 y(#)g(Purpose:)f(Dismember)f
 (netCDF4/HDF5)g(hierarchical)f(files.)i(CF-check)g(them.)390
 1676 y(#)h(Place)g(each)f(input)h(file)f(group)h(in)g(separate)f
@@ -16167,15 +16395,15 @@ y(#)g(Otherwise)f(arguments)f(would)h(be)i(seen)e(as)h(${5},)g(${6},)f
 (${7})h(...)390 4854 y(#)g(Command)f(line)h(argument)e(option)i
 (parsing)390 4964 y(if)g([)h(-n)f("${1}")f(];)h(then)g(fl_in=${1};)d
 (fi)390 5073 y(if)j([)h(-n)f("${2}")f(];)h(then)g(drc_out=${2};)d(fi)p
-150 5154 1200 4 v 166 5221 a Ft(15)275 5253 y Fs(Note)29
-b(that)g(the)f Fr(-3)i Fs(switc)n(h)g(should)f(app)r(ear)h
-Fj(after)38 b Fs(the)28 b Fr(-G)i Fs(and)f Fr(-g)h Fs(switc)n(hes.)46
+150 5154 1200 4 v 166 5221 a Fu(15)275 5253 y Ft(Note)29
+b(that)g(the)f Fs(-3)i Ft(switc)n(h)g(should)f(app)r(ear)h
+Fk(after)38 b Ft(the)28 b Fs(-G)i Ft(and)f Fs(-g)h Ft(switc)n(hes.)46
 b(This)30 b(is)f(due)g(to)g(an)h(artifact)g(of)g(the)275
-5340 y Fp(GPE)25 b Fs(implemen)n(tation)i(whic)n(h)e(w)n(e)i(wish)f(to)
+5340 y Fq(GPE)25 b Ft(implemen)n(tation)i(whic)n(h)e(w)n(e)i(wish)f(to)
 g(remo)n(v)n(e)f(in)h(the)f(future.)p eop end
 %%Page: 50 56
-TeXDict begin 50 55 bop 150 -116 a FD(50)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(if)47 b([)h(-n)f("${3}")f(];)h
+TeXDict begin 50 55 bop 150 -116 a FE(50)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(if)47 b([)h(-n)f("${3}")f(];)h
 (then)g(flg_cf=${3};)d(fi)390 408 y(if)j([)h(-n)f("${4}")f(];)h(then)g
 (cf_vrs=${4};)d(fi)390 518 y(if)j([)h(-n)f("${5}")f(];)h(then)g
 (opt=${5};)e(fi)390 737 y(#)i(Prepare)f(output)g(directory)390
@@ -16226,42 +16454,42 @@ g(flat)g(netCDF3)e(format")581 3915 y(cfchecker)g(-c)i(${cf_vrs})f
 (.ecm)o(wf_0)o(2.n)o(c)390 5340 y(/data/zender/nco/tmp/mdl)o(_1.n)o
 (c/ec)o(mwf)o(.nc)p eop end
 %%Page: 51 57
-TeXDict begin 51 56 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(51)390 299 y Fy
+TeXDict begin 51 56 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(51)390 299 y Fz
 (/data/zender/nco/tmp/mdl)o(_1.n)o(c/ro)o(ot.)o(nc)275
-463 y FD(A)20 b(\(p)s(oten)m(tially)j(more)d(p)s(ortable\))h(binary)f
+463 y FE(A)20 b(\(p)s(oten)m(tially)j(more)d(p)s(ortable\))h(binary)f
 (executable)i(could)f(b)s(e)f(written)g(to)i(dismem)m(b)s(er)d(all)j
 (groups)150 572 y(with)27 b(a)h(single)f(in)m(v)m(o)s(cation,)k(y)m(et)
 d(dismem)m(b)s(ering)e(without)i(loss)f(of)g(information)h(is)f(p)s
 (ossible)g(no)m(w)g(with)150 682 y(this)j(simple)g(script)g(on)g(all)h
-(platforms)g(with)e FC(UNIX)p FD(y)i(utilities.)42 b(Note)32
+(platforms)g(with)e FD(UNIX)p FE(y)i(utilities.)42 b(Note)32
 b(that)f(all)g(dimensions)e(inherited)150 791 y(b)m(y)c(groups)f(in)g
 (the)i(input)d(\014le)i(are)h(correctly)g(placed)f(b)m(y)g
-Fy(ncdismember)d FD(in)m(to)k(the)f(\015at)g(\014les.)39
+Fz(ncdismember)d FE(in)m(to)k(the)f(\015at)g(\014les.)39
 b(Moreo)m(v)m(er,)150 901 y(eac)m(h)c(output)f(\014le)f(preserv)m(es)h
 (the)g(group)g(metadata)h(of)f(all)h(ancestor)g(groups,)f(including)g
 (the)g(global)150 1011 y(metadata)45 b(from)e(the)g(input)f(\014le.)80
 b(As)43 b(written,)k(the)c(script)g(could)g(fail)h(on)f(groups)g(that)h
 (con)m(tain)150 1120 y(adv)-5 b(anced)26 b(netCDF4)i(features)f(b)s
 (ecause)f(the)g(user)g(requests)g(\(with)h(the)f(`)p
-Fy(-3)p FD(')h(switc)m(h\))g(that)g(output)f(b)s(e)150
+Fz(-3)p FE(')h(switc)m(h\))g(that)g(output)f(b)s(e)150
 1230 y(netCDF3)33 b(classic)h(format.)45 b(Ho)m(w)m(ev)m(er,)35
-b Fy(ncks)c FD(detects)i(man)m(y)f(format)h(incompatibilities)h(in)d
+b Fz(ncks)c FE(detects)i(man)m(y)f(format)h(incompatibilities)h(in)d
 (adv)-5 b(ance)150 1339 y(and)23 b(w)m(orks)i(around)e(them.)38
-b(F)-8 b(or)25 b(example,)h Fy(ncks)d FD(auto)s(con)m(v)m(erts)j
+b(F)-8 b(or)25 b(example,)h Fz(ncks)d FE(auto)s(con)m(v)m(erts)j
 (netCDF4-only)g(atomic-t)m(yp)s(es)g(\(suc)m(h)150 1449
-y(as)36 b Fy(NC_STRING)c FD(and)j Fy(NC_UBYTE)p FD(\))e(to)j(corresp)s
-(onding)f(netCDF3)h(atomic)h(t)m(yp)s(es)e(\()p Fy(NC_CHAR)f
-FD(and)h Fy(NC_)150 1559 y(SHORT)p FD(\))29 b(when)h(the)g(output)g
-(format)h(is)f(netCDF3.)150 1767 y Fu(3.13.4)63 b(Chec)m(king)40
-b(CF-compliance)150 1914 y FD(One)21 b(application)i(of)e(dismem)m(b)s
-(ering)g(is)g(to)h(c)m(hec)m(k)h(the)f FC(CF)p FD(-compliance)h(of)e
+y(as)36 b Fz(NC_STRING)c FE(and)j Fz(NC_UBYTE)p FE(\))e(to)j(corresp)s
+(onding)f(netCDF3)h(atomic)h(t)m(yp)s(es)e(\()p Fz(NC_CHAR)f
+FE(and)h Fz(NC_)150 1559 y(SHORT)p FE(\))29 b(when)h(the)g(output)g
+(format)h(is)f(netCDF3.)150 1767 y Fv(3.13.4)63 b(Chec)m(king)40
+b(CF-compliance)150 1914 y FE(One)21 b(application)i(of)e(dismem)m(b)s
+(ering)g(is)g(to)h(c)m(hec)m(k)h(the)f FD(CF)p FE(-compliance)h(of)e
 (eac)m(h)i(group)e(in)g(a)g(\014le.)38 b(When)150 2023
 y(in)m(v)m(ok)m(ed)32 b(with)f(the)f(optional)i(third)e(argumn)m(t)h(`)
-p Fy(cf)p FD(',)g Fy(ncdismember)d FD(passes)i(eac)m(h)i(\014le)f(it)g
+p Fz(cf)p FE(',)g Fz(ncdismember)d FE(passes)i(eac)m(h)i(\014le)f(it)g
 (generates)h(to)150 2133 y(the)f(freely)f(a)m(v)-5 b(ailable)895
-2100 y Ft(16)998 2133 y Fy(cfchecker)28 b FD(command.)390
-2297 y Fy(zender at roulee:~$)43 b(ncdismember)i(~/nco/data/mdl_1.nc)e
+2100 y Fu(16)998 2133 y Fz(cfchecker)28 b FE(command.)390
+2297 y Fz(zender at roulee:~$)43 b(ncdismember)i(~/nco/data/mdl_1.nc)e
 (/data/zender/nco/tmp)f(cf)390 2406 y(NCO)47 b(dismembering)d(file)j
 (/home/zender/nco/data/md)o(l_1.)o(nc)390 2516 y(CFchecker)e(reports)h
 (CF-compliance)e(of)j(each)g(group)f(in)i(flat)e(netCDF3)g(format)390
@@ -16283,53 +16511,53 @@ b(variable)45 b("tas1")h(does)h(not)g(contain)f(units)g(attribute)390
 3721 y(INFO:)g(3.1:)286 b(variable)45 b("tas2")h(does)h(not)g(contain)f
 (units)g(attribute)390 3831 y(------------------------)o(----)o(----)o
 (---)o(----)o(----)o(---)o(----)390 3940 y(cesm.cesm_02.nc:)390
-4050 y(...)275 4214 y FD(By)28 b(default)g(the)g FC(CF)h
-FD(v)m(ersion)f(c)m(hec)m(k)m(ed)i(is)e(determined)g(automatically)j(b)
-m(y)d Fy(cfchecker)p FD(.)37 b(The)28 b(user)150 4323
+4050 y(...)275 4214 y FE(By)28 b(default)g(the)g FD(CF)h
+FE(v)m(ersion)f(c)m(hec)m(k)m(ed)i(is)e(determined)g(automatically)j(b)
+m(y)d Fz(cfchecker)p FE(.)37 b(The)28 b(user)150 4323
 y(can)36 b(o)m(v)m(erride)h(this)f(default)g(b)m(y)g(supplying)f(a)h
-(supp)s(orted)e FC(CF)i FD(v)m(ersion,)i(e.g.,)h(`)p
-Fy(1.3)p FD(',)e(as)f(an)g(optional)150 4433 y(fourth)e(argumen)m(t)i
-(to)g Fy(ncdismember)p FD(.)53 b(Curren)m(t)34 b(v)-5
-b(alid)36 b FC(CF)f FD(options)h(are)g(`)p Fy(1.0)p FD(',)g(`)p
-Fy(1.1)p FD(',)h(`)p Fy(1.2)p FD(',)f(`)p Fy(1.3)p FD(',)150
-4543 y(`)p Fy(1.4)p FD(',)30 b(and)g(`)p Fy(1.5)p FD('.)275
+(supp)s(orted)e FD(CF)i FE(v)m(ersion,)i(e.g.,)h(`)p
+Fz(1.3)p FE(',)e(as)f(an)g(optional)150 4433 y(fourth)e(argumen)m(t)i
+(to)g Fz(ncdismember)p FE(.)53 b(Curren)m(t)34 b(v)-5
+b(alid)36 b FD(CF)f FE(options)h(are)g(`)p Fz(1.0)p FE(',)g(`)p
+Fz(1.1)p FE(',)h(`)p Fz(1.2)p FE(',)f(`)p Fz(1.3)p FE(',)150
+4543 y(`)p Fz(1.4)p FE(',)30 b(and)g(`)p Fz(1.5)p FE('.)275
 4706 y(Our)i(dev)m(elopmen)m(t)j(and)f(testing)g(of)g
-Fy(ncdismember)d FD(is)j(funded)e(b)m(y)i(our)f(in)m(v)m(olv)m(emen)m
-(t)j(in)e FC(NASA)p FD('s)150 4816 y(Dataset)k(In)m(terop)s(erabilit)m
-(y)f(W)-8 b(orking)37 b(Group)f(\(DIW)m(G)i(\()p Fy(https:)5
+Fz(ncdismember)d FE(is)j(funded)e(b)m(y)i(our)f(in)m(v)m(olv)m(emen)m
+(t)j(in)e FD(NASA)p FE('s)150 4816 y(Dataset)k(In)m(terop)s(erabilit)m
+(y)f(W)-8 b(orking)37 b(Group)f(\(DIW)m(G)i(\()p Fz(https:)5
 b(/)g(/)t(wiki)g(.)t(ear)o(thda)o(ta)t(.)t(n)o(asa)t(.)s(gov)t(/)150
 4926 y(display)s(/)s(ESDSWG)s(/)s(Dataset+)o(Inte)o(rope)o(rab)o(ilit)o
-(y+Wo)o(rki)o(ng+G)o(roup)o FD(\)\),)31 b(though)j(our)g(in)m(terest)h
-(ex-)150 5035 y(tends)28 b(b)s(ey)m(ond)f FC(NASA)i FD(datasets.)41
-b(T)-8 b(ak)m(en)29 b(together,)h FC(NCO)p FD('s)e(features)h(\(auto)s
+(y+Wo)o(rki)o(ng+G)o(roup)o FE(\)\),)31 b(though)j(our)g(in)m(terest)h
+(ex-)150 5035 y(tends)28 b(b)s(ey)m(ond)f FD(NASA)i FE(datasets.)41
+b(T)-8 b(ak)m(en)29 b(together,)h FD(NCO)p FE('s)e(features)h(\(auto)s
 (con)m(v)m(ersion)h(to)f(netCDF3)p 150 5154 1200 4 v
-166 5221 a Ft(16)275 5253 y Fs(CFc)n(hec)n(k)n(er)j(is)h(dev)n(elop)r
+166 5221 a Fu(16)275 5253 y Ft(CFc)n(hec)n(k)n(er)j(is)h(dev)n(elop)r
 (ed)f(b)n(y)f(Mic)n(hael)j(Dec)n(k)n(er)e(and)g(Martin)h(Sc)n(h)n(ultz)
 e(at)i(F)-6 b(orsc)n(h)n(ungszen)n(trum)31 b(J)r(\177)-41
 b(ulic)n(h)34 b(and)e(dis-)275 5340 y(tributed)24 b(at)i
-Fr(https://bitbucket.org/mde_/c)q(fche)q(cker)p Fs(.)p
+Fs(https://bitbucket.org/mde_/c)q(fche)q(cker)p Ft(.)p
 eop end
 %%Page: 52 58
-TeXDict begin 52 57 bop 150 -116 a FD(52)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(atomic)i(t)m(yp)s(es,)f(\014xing)f
-(m)m(ultiple)h(record)f(dimensions,)g(autosensing)h FC(HDF4)g
-FD(input,)e(scoping)i(rules)f(for)150 408 y(CF)f(con)m(v)m(en)m
-(tions\))i(mak)m(e)f Fy(ncdismember)c FD(reliable)k(and)e(friendly)g
+TeXDict begin 52 57 bop 150 -116 a FE(52)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(atomic)i(t)m(yp)s(es,)f(\014xing)f
+(m)m(ultiple)h(record)f(dimensions,)g(autosensing)h FD(HDF4)g
+FE(input,)e(scoping)i(rules)f(for)150 408 y(CF)f(con)m(v)m(en)m
+(tions\))i(mak)m(e)f Fz(ncdismember)c FE(reliable)k(and)e(friendly)g
 (for)h(b)s(oth)f(dismem)m(b)s(ering)g(hierarc)m(hi-)150
-518 y(cal)33 b(\014les)g(and)f(for)g FC(CF)p FD(-compliance)i(c)m(hec)m
-(ks.)48 b(Most)34 b FC(HDF4)e FD(and)g FC(HDF5)h FD(datasets)g(can)g(b)
-s(e)f(c)m(hec)m(k)m(ed)i(for)150 628 y FC(CF)p FD(-compliance)39
+518 y(cal)33 b(\014les)g(and)f(for)g FD(CF)p FE(-compliance)i(c)m(hec)m
+(ks.)48 b(Most)34 b FD(HDF4)e FE(and)g FD(HDF5)h FE(datasets)g(can)g(b)
+s(e)f(c)m(hec)m(k)m(ed)i(for)150 628 y FD(CF)p FE(-compliance)39
 b(with)f(a)g(one-line)g(command.)63 b(Example)37 b(compliance)i(c)m
-(hec)m(ks)g(of)f(common)g FC(NASA)150 737 y FD(datasets)j(are)f(at)h
-Fy(http:)8 b(/)g(/)e(dust)i(.)e(ess)i(.)e(u)o(ci)h(.)f(ed)o(u)i(/)d
-(diwg)o FD(.)63 b(Our)39 b(long-term)h(goal)i(is)d(to)i(enric)m(h)f
+(hec)m(ks)g(of)f(common)g FD(NASA)150 737 y FE(datasets)j(are)f(at)h
+Fz(http:)8 b(/)g(/)e(dust)i(.)e(ess)i(.)e(u)o(ci)h(.)f(ed)o(u)i(/)d
+(diwg)o FE(.)63 b(Our)39 b(long-term)h(goal)i(is)d(to)i(enric)m(h)f
 (the)150 847 y(hierarc)m(hical)32 b(data)f(mo)s(del)f(with)g(the)h
 (expressivit)m(y)g(and)f(syn)m(tactic)i(p)s(o)m(w)m(er)f(of)f
-FC(CF)h FD(con)m(v)m(en)m(tions.)275 1011 y FC(NASA)37
-b FD(ask)m(ed)g(the)f FC(DIW)n(G)h FD(to)g(prepare)f(a)h(one-page)h
+FD(CF)h FE(con)m(v)m(en)m(tions.)275 1011 y FD(NASA)37
+b FE(ask)m(ed)g(the)f FD(DIW)n(G)h FE(to)g(prepare)f(a)h(one-page)h
 (summary)d(of)i(the)f(pro)s(cedure)f(necessary)i(to)150
-1121 y(c)m(hec)m(k)32 b FC(HDF)f FD(\014les)f(for)h FC(CF)p
-FD(-compliance:)390 1285 y Fy(cat)47 b(>)g(~/ncdismember.txt)c(<<)48
+1121 y(c)m(hec)m(k)32 b FD(HDF)f FE(\014les)f(for)h FD(CF)p
+FE(-compliance:)390 1285 y Fz(cat)47 b(>)g(~/ncdismember.txt)c(<<)48
 b('EOF')581 1395 y(Preparing)d(an)i(RPM-based)f(OS)h(to)g(Test)g(HDF)g
 (&)g(netCDF)f(Files)g(for)h(CF-Compliance)390 1614 y(By)g(Charlie)f
 (Zender,)g(UCI)h(&)g(NASA)g(Dataset)f(Interoperability)d(Working)j
@@ -16366,8 +16594,8 @@ f(--prefix=${H4DIR})390 4573 y(make)k(&&)g(make)f(check)h(&&)g(make)g
 5340 y(./configure)e(--enable-shared)e(--prefix=${H5DIR})p
 eop end
 %%Page: 53 59
-TeXDict begin 53 58 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(53)390 299 y Fy(make)47
+TeXDict begin 53 58 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(53)390 299 y Fz(make)47
 b(&&)g(make)f(check)h(&&)g(make)g(install)390 518 y(#)g(3.)h(netCDF)e
 (version)g(4.3.1)g(or)h(later.)f(Build)h(in)g(non-default)d(manner)j
 (with)f(HDF4.)390 628 y(#)h(Per)g(http://www.unidata.ucar.ed)o(u/s)o
@@ -16409,8 +16637,8 @@ o(2)390 4792 y(cd)g(CFchecker)390 4902 y(sudo)g(python)f(setup.py)f
 (${DATA}/nco/tmp/hdf)390 5340 y(mkdir)g(-p)i(${DATA}/nco/tmp/hdf)p
 eop end
 %%Page: 54 60
-TeXDict begin 54 59 bop 150 -116 a FD(54)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(#)47 b(Many)g(datasets)f(work)g
+TeXDict begin 54 59 bop 150 -116 a FE(54)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(#)47 b(Many)g(datasets)f(work)g
 (with)h(a)g(simpler)f(command...)390 408 y(ncdismember)f
 (~/nco/data/in.nc)e(${DATA}/nco/tmp/hdf)g(cf)k(1.5)390
 518 y(ncdismember)e(~/nco/data/mdl_1.nc)d(${DATA}/nco/tmp/hdf)h(cf)k
@@ -16429,22 +16657,22 @@ b(1.5)390 1176 y(#)g(Some)g(datasets,)e(typically)h(.h5,)g(require)g
 b(1.5)e(--fix_rec_dmn=all)390 1395 y(ncdismember)f
 (${DATA}/hdf/mabel_l2_20)o(1309)o(27t2)o(018)o(00_0)o(08_1)o(.h5)c(\\)
 963 1504 y(${DATA}/nco/tmp/hdf)h(cf)47 b(1.5)g(--fix_rec_dmn=all)390
-1614 y(EOF)275 1775 y FD(A)24 b FC(PDF)h FD(v)m(ersion)g(of)g(these)g
+1614 y(EOF)275 1775 y FE(A)24 b FD(PDF)h FE(v)m(ersion)g(of)g(these)g
 (instructions)g(is)g(a)m(v)-5 b(ailable)27 b(here)e(\()p
-Fy(http://dust.ess.uci.edu/)o(diwg)o(/)150 1884 y(ncdismember.pdf)p
-FD(\).)150 2121 y FB(3.14)68 b(C)45 b(and)g(F)-11 b(ortran)45
-b(Index)f(con)l(v)l(en)l(tions)150 2231 y Fk(\013)p 200
+Fz(http://dust.ess.uci.edu/)o(diwg)o(/)150 1884 y(ncdismember.pdf)p
+FE(\).)150 2121 y FC(3.14)68 b(C)45 b(and)g(F)-11 b(ortran)45
+b(Index)f(con)l(v)l(en)l(tions)150 2231 y Fl(\013)p 200
 2231 3554 4 v 3553 w(\010)p 150 2721 4 442 v 178 2367
-a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncbo)p FD(,)30 b
-Fy(nces)p FD(,)f Fy(ncecat)p FD(,)g Fy(ncflint)p FD(,)g
-Fy(ncks)p FD(,)g Fy(ncpdq)p FD(,)h Fy(ncra)p FD(,)f Fy(ncrcat)p
-FD(,)g Fy(ncwa)178 2477 y FD(Short)h(options:)41 b(`)p
-Fy(-F)p FD(')178 2586 y(Long)31 b(options:)41 b(`)p Fy(--fortran)p
-FD(')p 3803 2721 V 150 2772 a Fk(\012)p 200 2772 3554
-4 v 3553 w(\011)275 2944 y FD(The)30 b(`)p Fy(-F)p FD(')h(switc)m(h)h
-(c)m(hanges)g FC(NCO)f FD(to)h(read)g(and)e(write)i(with)f(the)g(F)-8
+a FE(Av)-5 b(ailabilit)m(y:)43 b Fz(ncbo)p FE(,)30 b
+Fz(nces)p FE(,)f Fz(ncecat)p FE(,)g Fz(ncflint)p FE(,)g
+Fz(ncks)p FE(,)g Fz(ncpdq)p FE(,)h Fz(ncra)p FE(,)f Fz(ncrcat)p
+FE(,)g Fz(ncwa)178 2477 y FE(Short)h(options:)41 b(`)p
+Fz(-F)p FE(')178 2586 y(Long)31 b(options:)41 b(`)p Fz(--fortran)p
+FE(')p 3803 2721 V 150 2772 a Fl(\012)p 200 2772 3554
+4 v 3553 w(\011)275 2944 y FE(The)30 b(`)p Fz(-F)p FE(')h(switc)m(h)h
+(c)m(hanges)g FD(NCO)f FE(to)h(read)g(and)e(write)i(with)f(the)g(F)-8
 b(ortran)32 b(index)f(con)m(v)m(en)m(tion.)46 b(By)150
-3053 y(default,)34 b FC(NCO)e FD(uses)g(C-st)m(yle)i(\(0-based\))g
+3053 y(default,)34 b FD(NCO)e FE(uses)g(C-st)m(yle)i(\(0-based\))g
 (indices)e(for)h(all)g(I/O.)g(In)d(C)o(,)k(indices)f(coun)m(t)g(from)d
 (0)j(\(rather)150 3163 y(than)d(1)q(\),)d(and)e(dimensions)f(are)i
 (ordered)f(from)g(slo)m(w)m(est)j(\(inner-most\))e(to)g(fastest)h
@@ -16459,111 +16687,111 @@ y(con)m(v)m(en)m(tions)i(represen)m(t)f(mathematical)i(transp)s(oses)c
 b(ariables)150 3601 y(con)m(tain)29 b(the)f(record)g(dimension)f(as)h
 (the)g(most)g(slo)m(wly)h(v)-5 b(arying)28 b(dimension.)39
 b(See)28 b(Section)g(4.8)h([ncp)s(dq)150 3711 y(netCDF)c(P)m(erm)m(ute)
-g(Dimensions)f(Quic)m(kly],)i(page)f(190)h(for)d(tec)m(hniques)i(to)g
+g(Dimensions)f(Quic)m(kly],)i(page)f(202)h(for)d(tec)m(hniques)i(to)g
 (re-order)f(\(including)g(trans-)150 3821 y(p)s(ose\))30
 b(dimensions)g(and)g(to)h(rev)m(erse)g(data)g(storage)h(order.)275
-3981 y(Consider)f(a)h(\014le)g Fy(85.nc)f FD(con)m(taining)j(12)d(mon)m
-(ths)h(of)g(data)h(in)f(the)g(record)g(dimension)g Fy(time)p
-FD(.)44 b(The)150 4091 y(follo)m(wing)29 b(h)m(yp)s(erslab)d(op)s
+3981 y(Consider)f(a)h(\014le)g Fz(85.nc)f FE(con)m(taining)j(12)d(mon)m
+(ths)h(of)g(data)h(in)f(the)g(record)g(dimension)g Fz(time)p
+FE(.)44 b(The)150 4091 y(follo)m(wing)29 b(h)m(yp)s(erslab)d(op)s
 (erations)h(pro)s(duce)f(iden)m(tical)j(results,)e(a)h
 (June-July-August)e(a)m(v)m(erage)k(of)d(the)150 4200
-y(data:)390 4361 y Fy(ncra)47 b(-d)g(time,5,7)e(85.nc)i(85_JJA.nc)390
+y(data:)390 4361 y Fz(ncra)47 b(-d)g(time,5,7)e(85.nc)i(85_JJA.nc)390
 4471 y(ncra)g(-F)g(-d)g(time,6,8)f(85.nc)g(85_JJA.nc)275
-4631 y FD(Prin)m(ting)27 b(v)-5 b(ariable)28 b Fz(three)p
+4631 y FE(Prin)m(ting)27 b(v)-5 b(ariable)28 b FA(three)p
 1175 4631 28 4 v 40 w(dmn)p 1393 4631 V 39 w(v)-5 b(ar)34
-b FD(in)26 b(\014le)i Fy(in.nc)d FD(\014rst)i(with)g(the)g(C)j
+b FE(in)26 b(\014le)i Fz(in.nc)d FE(\014rst)i(with)g(the)g(C)j
 (indexing)d(con)m(v)m(en)m(tion,)j(then)150 4741 y(with)g(F)-8
 b(ortran)31 b(indexing)f(con)m(v)m(en)m(tion)j(results)d(in)g(the)h
-(follo)m(wing)g(output)f(formats:)390 4902 y Fy(\045)47
+(follo)m(wing)g(output)f(formats:)390 4902 y Fz(\045)47
 b(ncks)g(-v)g(three_dmn_var)d(in.nc)390 5011 y(lat[0]=-90)h
 (lev[0]=1000)g(lon[0]=-180)f(three_dmn_var[0]=0)390 5121
 y(...)390 5230 y(\045)j(ncks)g(-F)g(-v)g(three_dmn_var)e(in.nc)390
 5340 y(lon\(1\)=0)h(lev\(1\)=100)f(lat\(1\)=-90)g(three_dmn_var\(1\)=0)
 p eop end
 %%Page: 55 61
-TeXDict begin 55 60 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(55)390 299 y Fy(...)150
-546 y FB(3.15)68 b(Hyp)t(erslabs)150 679 y Fk(\013)p
+TeXDict begin 55 60 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(55)390 299 y Fz(...)150
+546 y FC(3.15)68 b(Hyp)t(erslabs)150 679 y Fl(\013)p
 200 679 3554 4 v 3553 w(\010)p 150 1279 4 552 v 178 815
-a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncbo)p FD(,)30 b
-Fy(nces)p FD(,)f Fy(ncecat)p FD(,)g Fy(ncflint)p FD(,)g
-Fy(ncks)p FD(,)g Fy(ncpdq)p FD(,)h Fy(ncra)p FD(,)f Fy(ncrcat)p
-FD(,)g Fy(ncwa)178 925 y FD(Short)h(options:)41 b(`)p
-Fy(-d)30 b Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p
-Fy(][,[)p Fn(strid)o(e)p Fy(]]])o FD(')178 1035 y(Long)h(options:)41
-b(`)p Fy(--dimension)27 b Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])p FD(',)178
-1144 y(`)p Fy(--dmn)i Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])p FD(')p 3803
-1279 V 150 1330 a Fk(\012)p 200 1330 3554 4 v 3553 w(\011)275
-1505 y FD(A)h Fz(h)m(yp)s(erslab)d FD(is)f(a)h(subset)e(of)h(a)h(v)-5
+a FE(Av)-5 b(ailabilit)m(y:)43 b Fz(ncbo)p FE(,)30 b
+Fz(nces)p FE(,)f Fz(ncecat)p FE(,)g Fz(ncflint)p FE(,)g
+Fz(ncks)p FE(,)g Fz(ncpdq)p FE(,)h Fz(ncra)p FE(,)f Fz(ncrcat)p
+FE(,)g Fz(ncwa)178 925 y FE(Short)h(options:)41 b(`)p
+Fz(-d)30 b Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p
+Fz(][,[)p Fo(strid)o(e)p Fz(]]])o FE(')178 1035 y(Long)h(options:)41
+b(`)p Fz(--dimension)27 b Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])p FE(',)178
+1144 y(`)p Fz(--dmn)i Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])p FE(')p 3803
+1279 V 150 1330 a Fl(\012)p 200 1330 3554 4 v 3553 w(\011)275
+1505 y FE(A)h FA(h)m(yp)s(erslab)d FE(is)f(a)h(subset)e(of)h(a)h(v)-5
 b(ariable's)27 b(data.)40 b(The)26 b(co)s(ordinates)g(of)h(a)f(h)m(yp)s
 (erslab)f(are)i(sp)s(eci\014ed)150 1615 y(with)g(the)g
-Fy(-d)j Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p
-Fy(][,[)p Fn(stri)o(de)p Fy(]])o(])21 b FD(short)27 b(option)g(\(or)h
+Fz(-d)j Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p
+Fz(][,[)p Fo(stri)o(de)p Fz(]])o(])21 b FE(short)27 b(option)g(\(or)h
 (with)e(the)h(same)h(argumen)m(ts)f(to)150 1724 y(the)34
-b(`)p Fy(--dimension)p FD(')e(or)i(`)p Fy(--dmn)p FD(')f(long)i
+b(`)p Fz(--dimension)p FE(')e(or)i(`)p Fz(--dmn)p FE(')f(long)i
 (options\).)53 b(A)m(t)35 b(least)g(one)g(h)m(yp)s(erslab)e(argumen)m
-(t)h(\()p Fz(min)p FD(,)i Fz(max)p FD(,)150 1834 y(or)e
-Fz(stride)5 b FD(\))35 b(m)m(ust)f(b)s(e)g(presen)m(t.)53
+(t)h(\()p FA(min)p FE(,)i FA(max)p FE(,)150 1834 y(or)e
+FA(stride)5 b FE(\))35 b(m)m(ust)f(b)s(e)g(presen)m(t.)53
 b(The)34 b(b)s(ounds)e(of)i(the)h(h)m(yp)s(erslab)e(to)i(b)s(e)f
 (extracted)i(are)e(sp)s(eci\014ed)g(b)m(y)150 1944 y(the)g(asso)s
-(ciated)i Fz(min)e FD(and)f Fz(max)41 b FD(v)-5 b(alues.)53
+(ciated)i FA(min)e FE(and)f FA(max)41 b FE(v)-5 b(alues.)53
 b(A)30 b(half-op)s(en)k(range)h(is)f(sp)s(eci\014ed)f(b)m(y)i(omitting)
-g(either)g(the)150 2053 y Fz(min)28 b FD(or)g Fz(max)34
-b FD(parameter.)41 b(The)28 b(separating)h(comma)g(m)m(ust)f(b)s(e)f
+g(either)g(the)150 2053 y FA(min)28 b FE(or)g FA(max)34
+b FE(parameter.)41 b(The)28 b(separating)h(comma)g(m)m(ust)f(b)s(e)f
 (presen)m(t)i(to)g(indicate)g(the)f(omission)h(of)150
 2163 y(one)i(of)g(these)h(argumen)m(ts.)42 b(The)31 b(unsp)s(eci\014ed)
 e(limit)j(is)f(in)m(terpreted)g(as)g(the)g(maxim)m(um)g(or)g(minim)m
 (um)150 2272 y(v)-5 b(alue)35 b(in)f(the)g(unsp)s(eci\014ed)f
 (direction.)53 b(A)31 b(cross-section)36 b(at)f(a)g(sp)s(eci\014c)f(co)
 s(ordinate)h(is)f(extracted)i(b)m(y)150 2382 y(sp)s(ecifying)g(only)g
-(the)g Fz(min)f FD(limit)i(and)e(omitting)i(a)f(trailing)h(comma.)58
+(the)g FA(min)f FE(limit)i(and)e(omitting)i(a)f(trailing)h(comma.)58
 b(Dimensions)36 b(not)g(men)m(tioned)150 2492 y(are)e(passed)g(with)f
 (no)h(reduction)g(in)f(range.)52 b(The)33 b(dimensionalit)m(y)i(of)f(v)
 -5 b(ariables)35 b(is)f(not)g(reduced)f(\(in)150 2601
 y(the)e(case)g(of)g(a)f(cross-section,)j(the)d(size)h(of)g(the)f
 (constan)m(t)i(dimension)e(will)h(b)s(e)e(one\).)390
-2765 y Fy(#)47 b(First)g(and)g(second)f(longitudes)390
+2765 y Fz(#)47 b(First)g(and)g(second)f(longitudes)390
 2875 y(ncks)h(-F)g(-d)g(lon,1,2)f(in.nc)g(out.nc)390
 2984 y(#)h(Second)g(and)f(third)h(longitudes)390 3094
-y(ncks)g(-d)g(lon,1,2)f(in.nc)g(out.nc)275 3258 y FD(As)32
-b(of)g(v)m(ersion)g(4.2.1)i(\(August,)f(2012\),)i FC(NCO)d
-FD(allo)m(ws)h(one)f(to)h(extract)h(the)e(last)h Fz(N)42
-b FD(elemen)m(ts)33 b(of)g(a)150 3368 y(h)m(yp)s(erslab.)47
-b(Negativ)m(e)36 b(in)m(tegers)e(as)f Fz(min)f FD(or)h
-Fz(max)39 b FD(elemen)m(ts)34 b(of)f(a)g(h)m(yp)s(erslab)f(sp)s
+y(ncks)g(-d)g(lon,1,2)f(in.nc)g(out.nc)275 3258 y FE(As)32
+b(of)g(v)m(ersion)g(4.2.1)i(\(August,)f(2012\),)i FD(NCO)d
+FE(allo)m(ws)h(one)f(to)h(extract)h(the)e(last)h FA(N)42
+b FE(elemen)m(ts)33 b(of)g(a)150 3368 y(h)m(yp)s(erslab.)47
+b(Negativ)m(e)36 b(in)m(tegers)e(as)f FA(min)f FE(or)h
+FA(max)39 b FE(elemen)m(ts)34 b(of)f(a)g(h)m(yp)s(erslab)f(sp)s
 (eci\014cation)i(indicate)150 3477 y(o\013sets)i(from)e(the)h(end)g
 (\(Python)f(also)i(uses)f(this)g(con)m(v)m(en)m(tion\).)57
 b(Consisten)m(t)35 b(with)g(this)g(con)m(v)m(en)m(tion,)150
-3587 y(the)29 b(v)-5 b(alue)28 b(`)p Fy(-1)p FD(')g(\(negativ)m(e)j
+3587 y(the)29 b(v)-5 b(alue)28 b(`)p Fz(-1)p FE(')g(\(negativ)m(e)j
 (one\))e(indicates)h(the)e(last)h(elemen)m(t)h(of)e(a)h(dimension,)g
 (and)e(negativ)m(e)k(zero)e(is)150 3697 y(algebraically)d(equiv)-5
 b(alen)m(t)24 b(to)g(zero)g(and)f(so)g(indicates)h(the)g(\014rst)e
 (elemen)m(t)j(of)e(a)g(dimension.)38 b(Previously)-8
-b(,)150 3806 y(for)29 b(example,)i(`)p Fy(-d)f(time,-2,-1)p
-FD(')d(caused)i(a)h(domain)f(error.)40 b(No)m(w)30 b(it)g(means)g
+b(,)150 3806 y(for)29 b(example,)i(`)p Fz(-d)f(time,-2,-1)p
+FE(')d(caused)i(a)h(domain)f(error.)40 b(No)m(w)30 b(it)g(means)g
 (select)h(the)e(p)s(en)m(ultimate)150 3916 y(and)f(last)h(timesteps,)h
-(indep)s(enden)m(t)d(of)i(the)g(size)g(of)g(the)g Fy(time)e
-FD(dimension.)40 b(Select)29 b(only)g(the)g(\014rst)f(and)150
+(indep)s(enden)m(t)d(of)i(the)g(size)g(of)g(the)g Fz(time)e
+FE(dimension.)40 b(Select)29 b(only)g(the)g(\014rst)f(and)150
 4025 y(last)i(timesteps,)g(resp)s(ectiv)m(ely)-8 b(,)31
-b(with)e(`)p Fy(-d)h(time,0)p FD(')d(and)i(`)p Fy(-d)h(time,-1)p
-FD('.)38 b(Negativ)m(e)32 b(in)m(tegers)e(w)m(ork)f(for)150
-4135 y Fz(min)h FD(and)g Fz(max)36 b FD(indices,)31 b(though)f(not)h
-(for)f Fz(stride)p FD(.)390 4299 y Fy(#)47 b(Second)g(through)e
+b(with)e(`)p Fz(-d)h(time,0)p FE(')d(and)i(`)p Fz(-d)h(time,-1)p
+FE('.)38 b(Negativ)m(e)32 b(in)m(tegers)e(w)m(ork)f(for)150
+4135 y FA(min)h FE(and)g FA(max)36 b FE(indices,)31 b(though)f(not)h
+(for)f FA(stride)p FE(.)390 4299 y Fz(#)47 b(Second)g(through)e
 (penultimate)g(longitudes)390 4409 y(ncks)i(-d)g(lon,1,-2)e(in.nc)i
 (out.nc)390 4518 y(#)g(Second)g(through)e(last)i(longitude)390
 4628 y(ncks)g(-d)g(lon,1,-1)e(in.nc)i(out.nc)390 4737
 y(#)g(Second-to-last)d(to)k(last)e(longitude)390 4847
 y(ncks)h(-d)g(lon,-3,-1)e(in.nc)h(out.nc)390 4957 y(#)h(Second-to-last)
 d(to)k(last)e(longitude)390 5066 y(ncks)h(-d)g(lon,-3,)f(in.nc)g
-(out.nc)150 5230 y FD(The)29 b(`)p Fy(-F)p FD(')g(argumen)m(t,)h(if)f
+(out.nc)150 5230 y FE(The)29 b(`)p Fz(-F)p FE(')g(argumen)m(t,)h(if)f
 (an)m(y)-8 b(,)31 b(applies)e(the)h(F)-8 b(ortran)30
 b(index)f(con)m(v)m(en)m(tion)i(only)f(to)g(indices)f(sp)s(eci\014ed)g
 (as)150 5340 y(p)s(ositiv)m(e)i(in)m(tegers:)p eop end
 %%Page: 56 62
-TeXDict begin 56 61 bop 150 -116 a FD(56)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(#)47 b(First)g(through)f
+TeXDict begin 56 61 bop 150 -116 a FE(56)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(#)47 b(First)g(through)f
 (penultimate)e(longitudes)390 408 y(ncks)j(-F)g(-d)g(lon,1,-2)f(in.nc)g
 (out.nc)g(\(-F)h(affects)f(only)g(start)h(index\))390
 518 y(#)g(First)g(through)f(last)g(longitude)390 628
@@ -16572,7 +16800,7 @@ y(#)h(Second-to-last)d(to)k(penultimate)c(longitude)i(\(-F)g(has)h(no)h
 (effect\))390 847 y(ncks)f(-F)g(-d)g(lon,-3,-1)e(in.nc)i(out.nc)390
 956 y(#)g(Second-to-last)d(to)k(last)e(longitude)f(\(-F)i(has)g(no)g
 (effect\))390 1066 y(ncks)g(-F)g(-d)g(lon,-3,)f(in.nc)g(out.nc)275
-1249 y FD(Co)s(ordinate)21 b(v)-5 b(alues)23 b(should)e(b)s(e)g(sp)s
+1249 y FE(Co)s(ordinate)21 b(v)-5 b(alues)23 b(should)e(b)s(e)g(sp)s
 (eci\014ed)g(using)g(real)i(notation)g(with)e(a)i(decimal)f(p)s(oin)m
 (t)g(required)f(in)150 1358 y(the)28 b(v)-5 b(alue,)30
 b(whereas)d(dimension)h(indices)g(are)h(sp)s(eci\014ed)e(using)h(in)m
@@ -16595,7 +16823,7 @@ b(alues)28 b(need)g(not)h(exactly)h(matc)m(h)f(co)s(ordinate)g(v)-5
 b(alues)28 b(for)g(the)h(sp)s(eci\014ed)e(dimension.)150
 2308 y(Ranges)37 b(are)g(determined)f(b)m(y)g(seeking)h(the)g(\014rst)f
 (co)s(ordinate)h(v)-5 b(alue)37 b(to)g(o)s(ccur)g(in)f(the)g(closed)i
-(range)150 2418 y([)p Fz(min)p FD(,)p Fz(max)6 b FD(])33
+(range)150 2418 y([)p FA(min)p FE(,)p FA(max)6 b FE(])33
 b(and)e(including)g(all)i(subsequen)m(t)e(v)-5 b(alues)32
 b(un)m(til)h(one)f(falls)g(outside)g(the)g(range.)46
 b(The)31 b(co)s(or-)150 2527 y(dinate)c(v)-5 b(alue)26
@@ -16603,19 +16831,19 @@ b(for)g(a)h(cross-section)h(is)e(the)h(co)s(ordinate-v)-5
 b(ariable)28 b(v)-5 b(alue)27 b(closest)g(to)g(the)g(sp)s(eci\014ed)e
 (v)-5 b(alue)150 2637 y(and)34 b(m)m(ust)g(lie)i(within)e(the)h(range)g
 (or)f(co)s(ordinate-v)-5 b(ariable)37 b(v)-5 b(alues.)53
-b(The)34 b Fz(stride)40 b FD(argumen)m(t,)c(if)f(an)m(y)-8
+b(The)34 b FA(stride)40 b FE(argumen)m(t,)c(if)f(an)m(y)-8
 b(,)150 2746 y(m)m(ust)32 b(b)s(e)g(a)h(dimension)f(index,)h(not)g(a)f
 (co)s(ordinate)i(v)-5 b(alue.)47 b(See)33 b(Section)g(3.16)h([Stride],)
 g(page)f(57,)h(for)150 2856 y(more)d(information)f(on)g(the)h
-Fz(stride)k FD(option.)390 3039 y Fy(#)47 b(All)g(longitude)f(values)g
+FA(stride)k FE(option.)390 3039 y Fz(#)47 b(All)g(longitude)f(values)g
 (between)g(1)h(and)g(2)g(degrees)390 3148 y(ncks)g(-d)g(lon,1.0,2.0)e
 (in.nc)h(out.nc)390 3258 y(#)h(All)g(longitude)f(values)g(between)g(1)h
 (and)g(2)g(degrees)390 3367 y(ncks)g(-F)g(-d)g(lon,1.0,2.0)e(in.nc)h
 (out.nc)390 3477 y(#)h(Every)g(other)f(longitude)f(value)i(between)f(0)
 h(and)g(90)g(degrees)390 3587 y(ncks)g(-F)g(-d)g(lon,0.0,90.0,2)d
-(in.nc)i(out.nc)275 3769 y FD(As)33 b(sho)m(wn,)h(w)m(e)g(recommend)f
+(in.nc)i(out.nc)275 3769 y FE(As)33 b(sho)m(wn,)h(w)m(e)g(recommend)f
 (using)g(a)h(full)f(\015oating)i(p)s(oin)m(t)e(su\016x)g(of)h
-Fy(.0)f FD(instead)g(of)h(simply)f Fy(.)g FD(in)150 3879
+Fz(.0)f FE(instead)g(of)h(simply)f Fz(.)g FE(in)150 3879
 y(order)27 b(to)i(mak)m(e)g(ob)m(vious)f(the)g(selection)i(of)e(h)m(yp)
 s(erslab)f(elemen)m(ts)i(based)e(on)h(co)s(ordinate)h(v)-5
 b(alue)28 b(rather)150 3988 y(than)i(index.)275 4171
@@ -16623,160 +16851,160 @@ y(User-sp)s(eci\014ed)d(co)s(ordinate)i(limits)g(are)f(promoted)g(to)h
 (double-precision)f(v)-5 b(alues)28 b(while)g(searc)m(hing)150
 4281 y(for)k(the)h(indices)f(whic)m(h)g(brac)m(k)m(et)i(the)f(range.)46
 b(Th)m(us,)32 b(h)m(yp)s(erslabs)g(on)g(co)s(ordinates)h(of)f(t)m(yp)s
-(e)h Fy(NC_CHAR)150 4390 y FD(are)e(computed)f(n)m(umerically)h(rather)
+(e)h Fz(NC_CHAR)150 4390 y FE(are)e(computed)f(n)m(umerically)h(rather)
 f(than)g(lexically)-8 b(,)34 b(so)c(the)h(results)f(are)h
 (unpredictable.)275 4573 y(The)k(relativ)m(e)j(magnitude)e(of)g
-Fz(min)f FD(and)g Fz(max)43 b FD(indicate)37 b(to)f(the)g(op)s(erator)g
-(whether)g(to)g(exp)s(ect)h(a)150 4682 y Fz(wrapp)s(ed)29
-b(co)s(ordinate)36 b FD(\(see)c(Section)f(3.20)i([W)-8
+FA(min)f FE(and)g FA(max)43 b FE(indicate)37 b(to)f(the)g(op)s(erator)g
+(whether)g(to)g(exp)s(ect)h(a)150 4682 y FA(wrapp)s(ed)29
+b(co)s(ordinate)36 b FE(\(see)c(Section)f(3.20)i([W)-8
 b(rapp)s(ed)30 b(Co)s(ordinates],)h(page)h(63\),)g(suc)m(h)e(as)h
-(longitude.)150 4792 y(If)e Fz(min)24 b Fv(>)h Fz(max)7
-b FD(,)29 b(the)h FC(NCO)f FD(exp)s(ects)g(the)g(co)s(ordinate)h(to)g
+(longitude.)150 4792 y(If)e FA(min)24 b Fw(>)h FA(max)7
+b FE(,)29 b(the)h FD(NCO)f FE(exp)s(ects)g(the)g(co)s(ordinate)h(to)g
 (b)s(e)f(wrapp)s(ed,)e(and)i(a)g(w)m(arning)g(message)i(will)150
 4902 y(b)s(e)e(prin)m(ted.)40 b(When)29 b(this)g(o)s(ccurs,)h
-FC(NCO)f FD(selects)i(all)g(v)-5 b(alues)29 b(outside)h(the)g(domain)f
-([)p Fz(max)j Fv(<)25 b Fz(min)o FD(],)31 b(i.e.,)150
+FD(NCO)f FE(selects)i(all)g(v)-5 b(alues)29 b(outside)h(the)g(domain)f
+([)p FA(max)j Fw(<)25 b FA(min)o FE(],)31 b(i.e.,)150
 5011 y(all)h(the)g(v)-5 b(alues)32 b(exclusiv)m(e)h(of)f(the)f(v)-5
 b(alues)32 b(whic)m(h)f(w)m(ould)h(ha)m(v)m(e)g(b)s(een)f(selected)i
-(if)f Fz(min)f FD(and)g Fz(max)37 b FD(w)m(ere)150 5121
+(if)f FA(min)f FE(and)g FA(max)37 b FE(w)m(ere)150 5121
 y(sw)m(app)s(ed.)i(If)28 b(this)h(seems)g(confusing,)f(test)i(y)m(our)f
 (command)f(on)h(just)f(the)g(co)s(ordinate)i(v)-5 b(ariables)29
-b(with)150 5230 y Fy(ncks)p FD(,)41 b(and)d(then)i(examine)g(the)f
-(output)g(to)h(ensure)f FC(NCO)g FD(selected)i(the)e(h)m(yp)s(erslab)g
+b(with)150 5230 y Fz(ncks)p FE(,)41 b(and)d(then)i(examine)g(the)f
+(output)g(to)h(ensure)f FD(NCO)g FE(selected)i(the)e(h)m(yp)s(erslab)g
 (y)m(ou)h(exp)s(ected)150 5340 y(\(co)s(ordinate)32 b(wrapping)d(is)h
-(curren)m(tly)h(only)f(supp)s(orted)f(b)m(y)h Fy(ncks)p
-FD(\).)p eop end
+(curren)m(tly)h(only)f(supp)s(orted)f(b)m(y)h Fz(ncks)p
+FE(\).)p eop end
 %%Page: 57 63
-TeXDict begin 57 62 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(57)275 299 y(Because)35
+TeXDict begin 57 62 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(57)275 299 y(Because)35
 b(of)g(the)g(w)m(a)m(y)g(wrapp)s(ed)e(co)s(ordinates)i(are)g(in)m
 (terpreted,)h(it)f(is)f(v)m(ery)h(imp)s(ortan)m(t)g(to)g(mak)m(e)150
 408 y(sure)d(y)m(ou)i(alw)m(a)m(ys)h(sp)s(ecify)d(h)m(yp)s(erslabs)g
 (in)h(the)g(monotonically)j(increasing)d(sense,)h(i.e.,)i
-Fz(min)29 b Fv(<)h Fz(max)150 518 y FD(\(ev)m(en)24 b(if)f(the)g
+FA(min)29 b Fw(<)h FA(max)150 518 y FE(\(ev)m(en)24 b(if)f(the)g
 (underlying)f(co)s(ordinate)i(v)-5 b(ariable)24 b(is)f(monotonically)i
 (decreasing\).)39 b(The)23 b(only)g(exception)150 628
 y(to)33 b(this)f(is)g(when)f(y)m(ou)i(are)f(indeed)g(sp)s(ecifying)g(a)
 g(wrapp)s(ed)f(co)s(ordinate.)47 b(The)31 b(distinction)i(is)f(crucial)
 150 737 y(to)25 b(understand)e(b)s(ecause)i(the)g(p)s(oin)m(ts)f
-(selected)j(b)m(y)-8 b(,)26 b(e.g.,)h Fy(-d)j(longitude,50.,340.)p
-FD(,)21 b(are)k(exactly)i(the)150 847 y(complemen)m(t)32
-b(of)e(the)h(p)s(oin)m(ts)f(selected)i(b)m(y)e Fy(-d)g
-(longitude,340.,50.)p FD(.)275 1014 y(Not)h(sp)s(ecifying)g(an)m(y)g(h)
+(selected)j(b)m(y)-8 b(,)26 b(e.g.,)h Fz(-d)j(longitude,50.,340.)p
+FE(,)21 b(are)k(exactly)i(the)150 847 y(complemen)m(t)32
+b(of)e(the)h(p)s(oin)m(ts)f(selected)i(b)m(y)e Fz(-d)g
+(longitude,340.,50.)p FE(.)275 1014 y(Not)h(sp)s(ecifying)g(an)m(y)g(h)
 m(yp)s(erslab)f(option)h(is)g(equiv)-5 b(alen)m(t)32
 b(to)g(sp)s(ecifying)e(full)h(ranges)g(of)g(all)g(dimen-)150
 1123 y(sions.)38 b(This)22 b(option)i(ma)m(y)f(b)s(e)g(sp)s(eci\014ed)f
 (more)h(than)g(once)h(in)f(a)g(single)h(command)e(\(eac)m(h)j(h)m(yp)s
 (erslabb)s(ed)150 1233 y(dimension)30 b(requires)g(its)g(o)m(wn)h
-Fy(-d)f FD(option\).)150 1489 y FB(3.16)68 b(Stride)150
-1599 y Fk(\013)p 200 1599 3554 4 v 3553 w(\010)p 150
-2198 4 552 v 178 1735 a FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncbo)p FD(,)30 b Fy(nces)p FD(,)f Fy(ncecat)p FD(,)g
-Fy(ncflint)p FD(,)g Fy(ncks)p FD(,)g Fy(ncpdq)p FD(,)h
-Fy(ncra)p FD(,)f Fy(ncrcat)p FD(,)g Fy(ncwa)178 1845
-y FD(Short)h(options:)41 b(`)p Fy(-d)30 b Fn(dim)p Fy(,[)p
-Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p Fn(strid)o(e)p
-Fy(]]])o FD(')178 1954 y(Long)h(options:)41 b(`)p Fy(--dimension)27
-b Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p
-Fn(stride)p Fy(])o(]])p FD(',)178 2064 y(`)p Fy(--dmn)i
-Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p
-Fn(stride)p Fy(])o(]])p FD(')p 3803 2198 V 150 2250 a
-Fk(\012)p 200 2250 3554 4 v 3553 w(\011)275 2428 y FD(All)36
+Fz(-d)f FE(option\).)150 1489 y FC(3.16)68 b(Stride)150
+1599 y Fl(\013)p 200 1599 3554 4 v 3553 w(\010)p 150
+2198 4 552 v 178 1735 a FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncbo)p FE(,)30 b Fz(nces)p FE(,)f Fz(ncecat)p FE(,)g
+Fz(ncflint)p FE(,)g Fz(ncks)p FE(,)g Fz(ncpdq)p FE(,)h
+Fz(ncra)p FE(,)f Fz(ncrcat)p FE(,)g Fz(ncwa)178 1845
+y FE(Short)h(options:)41 b(`)p Fz(-d)30 b Fo(dim)p Fz(,[)p
+Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p Fo(strid)o(e)p
+Fz(]]])o FE(')178 1954 y(Long)h(options:)41 b(`)p Fz(--dimension)27
+b Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p
+Fo(stride)p Fz(])o(]])p FE(',)178 2064 y(`)p Fz(--dmn)i
+Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p
+Fo(stride)p Fz(])o(]])p FE(')p 3803 2198 V 150 2250 a
+Fl(\012)p 200 2250 3554 4 v 3553 w(\011)275 2428 y FE(All)36
 b(data)h(op)s(erators)f(supp)s(ort)e(sp)s(ecifying)i(a)h
-Fz(stride)k FD(for)35 b(an)m(y)i(and)e(all)i(dimensions)f(at)g(the)h
-(same)150 2537 y(time.)59 b(The)36 b Fz(stride)41 b FD(is)c(the)f
+FA(stride)k FE(for)35 b(an)m(y)i(and)e(all)i(dimensions)f(at)g(the)h
+(same)150 2537 y(time.)59 b(The)36 b FA(stride)41 b FE(is)c(the)f
 (spacing)h(b)s(et)m(w)m(een)g(consecutiv)m(e)h(p)s(oin)m(ts)e(in)g(a)h
-(h)m(yp)s(erslab.)57 b(A)31 b Fz(stride)41 b FD(of)31
+(h)m(yp)s(erslab.)57 b(A)31 b FA(stride)41 b FE(of)31
 b(1)150 2647 y(pic)m(ks)22 b(all)g(the)g(elemen)m(ts)h(of)e(the)h(h)m
-(yp)s(erslab,)h(and)d(a)i Fz(stride)27 b FD(of)j(2)22
+(yp)s(erslab,)h(and)d(a)i FA(stride)27 b FE(of)j(2)22
 b(skips)f(ev)m(ery)h(other)g(elemen)m(t,)j(etc..)39 b
-Fy(ncks)150 2757 y FD(m)m(ultislabs)e(supp)s(ort)e(strides,)j(and)d
+Fz(ncks)150 2757 y FE(m)m(ultislabs)e(supp)s(ort)e(strides,)j(and)d
 (are)i(more)g(p)s(o)m(w)m(erful)f(than)g(the)h(regular)f(h)m(yp)s
 (erslabs)g(supp)s(orted)150 2866 y(b)m(y)30 b(the)h(other)f(op)s
 (erators)h(\(see)g(Section)g(3.19)h([Multislabs],)g(page)f(60\).)42
-b(Using)30 b(the)h Fz(stride)k FD(option)c(for)150 2976
-y(the)j(record)f(dimension)g(with)g Fy(ncra)g FD(and)g
-Fy(ncrcat)e FD(mak)m(es)k(it)f(p)s(ossible,)g(for)f(instance,)j(to)e(a)
+b(Using)30 b(the)h FA(stride)k FE(option)c(for)150 2976
+y(the)j(record)f(dimension)g(with)g Fz(ncra)g FE(and)g
+Fz(ncrcat)e FE(mak)m(es)k(it)f(p)s(ossible,)g(for)f(instance,)j(to)e(a)
 m(v)m(erage)i(or)150 3085 y(concatenate)d(regular)e(in)m(terv)-5
 b(als)31 b(across)g(m)m(ulti-\014le)g(input)f(data)h(sets.)275
-3252 y(The)22 b Fz(stride)27 b FD(is)c(sp)s(eci\014ed)f(as)g(the)h
-(optional)h(fourth)e(argumen)m(t)h(to)g(the)g(`)p Fy(-d)p
-FD(')f(h)m(yp)s(erslab)g(sp)s(eci\014cation:)150 3362
-y Fy(-d)30 b Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p
-Fy(][,[)p Fn(stri)o(de)p Fy(]])o(])p FD(.)48 b(Sp)s(ecify)34
-b Fz(stride)40 b FD(as)35 b(an)g(in)m(teger)h(\(i.e.,)i(no)d(decimal)h
+3252 y(The)22 b FA(stride)27 b FE(is)c(sp)s(eci\014ed)f(as)g(the)h
+(optional)h(fourth)e(argumen)m(t)h(to)g(the)g(`)p Fz(-d)p
+FE(')f(h)m(yp)s(erslab)g(sp)s(eci\014cation:)150 3362
+y Fz(-d)30 b Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p
+Fz(][,[)p Fo(stri)o(de)p Fz(]])o(])p FE(.)48 b(Sp)s(ecify)34
+b FA(stride)40 b FE(as)35 b(an)g(in)m(teger)h(\(i.e.,)i(no)d(decimal)h
 (p)s(oin)m(t\))150 3472 y(follo)m(wing)31 b(the)f(third)f(comma)h(in)f
-(the)h(`)p Fy(-d)p FD(')f(argumen)m(t.)41 b(There)29
-b(is)h(no)f(default)h(v)-5 b(alue)30 b(for)g Fz(stride)p
-FD(.)40 b(Th)m(us)150 3581 y(using)34 b(`)p Fy(-d)c(time,,,2)p
-FD(')i(is)j(v)-5 b(alid)35 b(but)e(`)p Fy(-d)d(time,,,2.0)p
-FD(')i(and)i(`)p Fy(-d)c(time,,,)p FD(')j(are)i(not.)53
-b(When)34 b Fz(stride)150 3691 y FD(is)39 b(sp)s(eci\014ed)f(but)g
-Fz(min)g FD(is)g(not,)k(there)c(is)h(an)g(am)m(biguit)m(y)h(as)f(to)g
+(the)h(`)p Fz(-d)p FE(')f(argumen)m(t.)41 b(There)29
+b(is)h(no)f(default)h(v)-5 b(alue)30 b(for)g FA(stride)p
+FE(.)40 b(Th)m(us)150 3581 y(using)34 b(`)p Fz(-d)c(time,,,2)p
+FE(')i(is)j(v)-5 b(alid)35 b(but)e(`)p Fz(-d)d(time,,,2.0)p
+FE(')i(and)i(`)p Fz(-d)c(time,,,)p FE(')j(are)i(not.)53
+b(When)34 b FA(stride)150 3691 y FE(is)39 b(sp)s(eci\014ed)f(but)g
+FA(min)g FE(is)g(not,)k(there)c(is)h(an)g(am)m(biguit)m(y)h(as)f(to)g
 (whether)f(the)h(extracted)h(h)m(yp)s(erslab)150 3800
 y(should)31 b(b)s(egin)h(with)g(\(using)g(C-st)m(yle,)i(0-based)e
-(indexes\))h(elemen)m(t)f(0)g(or)g(elemen)m(t)i(`)p Fy(stride-1)p
-FD('.)44 b FC(NCO)150 3910 y FD(m)m(ust)33 b(resolv)m(e)h(this)f(am)m
+(indexes\))h(elemen)m(t)f(0)g(or)g(elemen)m(t)i(`)p Fz(stride-1)p
+FE('.)44 b FD(NCO)150 3910 y FE(m)m(ust)33 b(resolv)m(e)h(this)f(am)m
 (biguit)m(y)h(and)e(it)i(c)m(ho)s(oses)f(elemen)m(t)f(0)h(as)g(the)g
 (\014rst)g(elemen)m(t)h(of)f(the)g(h)m(yp)s(erslab)150
-4020 y(when)44 b Fz(min)g FD(is)g(not)h(sp)s(eci\014ed.)83
-b(Th)m(us)43 b(`)p Fy(-d)30 b(time,,,)p Fn(stride)p FD(')42
+4020 y(when)44 b FA(min)g FE(is)g(not)h(sp)s(eci\014ed.)83
+b(Th)m(us)43 b(`)p Fz(-d)30 b(time,,,)p Fo(stride)p FE(')42
 b(is)i(syn)m(tactically)k(equiv)-5 b(alen)m(t)46 b(to)f(`)p
-Fy(-d)150 4129 y(time,0,,)p Fn(stride)p FD('.)55 b(This)36
+Fz(-d)150 4129 y(time,0,,)p Fo(stride)p FE('.)55 b(This)36
 b(means,)i(for)e(example,)i(that)f(sp)s(ecifying)g(the)f(op)s(eration)h
-(`)p Fy(-d)30 b(time,,,2)p FD(')150 4239 y(on)43 b(the)h(arra)m(y)g(`)p
-Fy(1,2,3,4,5)p FD(')d(selects)k(the)e(h)m(yp)s(erslab)g(`)p
-Fy(1,3,5)p FD('.)79 b(T)-8 b(o)44 b(obtain)f(the)h(h)m(yp)s(erslab)e(`)
-p Fy(2,4)p FD(')150 4348 y(instead,)31 b(simply)f(explicitly)i(sp)s
+(`)p Fz(-d)30 b(time,,,2)p FE(')150 4239 y(on)43 b(the)h(arra)m(y)g(`)p
+Fz(1,2,3,4,5)p FE(')d(selects)k(the)e(h)m(yp)s(erslab)g(`)p
+Fz(1,3,5)p FE('.)79 b(T)-8 b(o)44 b(obtain)f(the)h(h)m(yp)s(erslab)e(`)
+p Fz(2,4)p FE(')150 4348 y(instead,)31 b(simply)f(explicitly)i(sp)s
 (ecify)e(the)g(starting)h(index)f(as)h(1,)g(i.e.,)h(`)p
-Fy(-d)e(time,1,,2)p FD('.)275 4515 y(F)-8 b(or)23 b(example,)i
-(consider)d(a)h(\014le)f Fy(8501_8912.nc)e FD(whic)m(h)i(con)m(tains)h
+Fz(-d)e(time,1,,2)p FE('.)275 4515 y(F)-8 b(or)23 b(example,)i
+(consider)d(a)h(\014le)f Fz(8501_8912.nc)e FE(whic)m(h)i(con)m(tains)h
 (60)h(consecutiv)m(e)g(mon)m(ths)e(of)h(data.)150 4625
 y(Sa)m(y)36 b(y)m(ou)g(wish)f(to)i(obtain)f(just)f(the)h(Marc)m(h)h
 (data)f(from)g(this)f(\014le.)57 b(Using)36 b(0-based)h(subscripts)d
 (\(see)150 4735 y(Section)f(3.14)g([C)e(and)h(F)-8 b(ortran)32
 b(Index)f(Con)m(v)m(en)m(tions],)j(page)e(54\))h(these)f(data)h(are)f
 (stored)g(in)f(records)150 4844 y(2,)g(14,)37 b(.)22
-b(.)h(.)41 b(50)36 b(so)f(the)h(desired)e Fz(stride)40
-b FD(is)31 b(12.)36 b(Without)g(the)f Fz(stride)40 b
-FD(option,)d(the)e(pro)s(cedure)f(is)i(v)m(ery)150 4954
-y(a)m(wkw)m(ard.)41 b(One)29 b(could)h(use)f Fy(ncks)g
-FD(\014v)m(e)h(times)g(and)f(then)h(use)f Fy(ncrcat)f
-FD(to)j(concatenate)h(the)e(resulting)150 5063 y(\014les)g(together:)
-390 5230 y Fy(for)47 b(idx)g(in)g(02)g(14)g(26)h(38)f(50;)g(do)g(#)g
+b(.)h(.)41 b(50)36 b(so)f(the)h(desired)e FA(stride)40
+b FE(is)31 b(12.)36 b(Without)g(the)f FA(stride)40 b
+FE(option,)d(the)e(pro)s(cedure)f(is)i(v)m(ery)150 4954
+y(a)m(wkw)m(ard.)41 b(One)29 b(could)h(use)f Fz(ncks)g
+FE(\014v)m(e)h(times)g(and)f(then)h(use)f Fz(ncrcat)f
+FE(to)j(concatenate)h(the)e(resulting)150 5063 y(\014les)g(together:)
+390 5230 y Fz(for)47 b(idx)g(in)g(02)g(14)g(26)h(38)f(50;)g(do)g(#)g
 (Bourne)f(Shell)485 5340 y(ncks)h(-d)g(time,${idx})e(8501_8912.nc)f
 (foo.${idx})p eop end
 %%Page: 58 64
-TeXDict begin 58 63 bop 150 -116 a FD(58)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(done)390 408 y(foreach)46
+TeXDict begin 58 63 bop 150 -116 a FE(58)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(done)390 408 y(foreach)46
 b(idx)h(\(02)g(14)g(26)g(38)g(50\))g(#)h(C)f(Shell)485
 518 y(ncks)g(-d)g(time,${idx})e(8501_8912.nc)f(foo.${idx})390
 628 y(end)390 737 y(ncrcat)i(foo.??)g(8589_03.nc)390
-847 y(rm)h(foo.??)275 1007 y FD(With)30 b(the)h Fz(stride)k
-FD(option,)c Fy(ncks)f FD(p)s(erforms)e(this)j(h)m(yp)s(erslab)e
-(extraction)j(in)e(one)h(op)s(eration:)390 1167 y Fy(ncks)47
+847 y(rm)h(foo.??)275 1007 y FE(With)30 b(the)h FA(stride)k
+FE(option,)c Fz(ncks)f FE(p)s(erforms)e(this)j(h)m(yp)s(erslab)e
+(extraction)j(in)e(one)h(op)s(eration:)390 1167 y Fz(ncks)47
 b(-d)g(time,2,,12)e(8501_8912.nc)f(8589_03.nc)275 1328
-y FD(See)30 b(Section)h(4.7)h([nc)m(ks)f(netCDF)g(Kitc)m(hen)f(Sink],)h
-(page)g(176,)h(for)e(more)g(information)h(on)f Fy(ncks)p
-FD(.)275 1488 y(Applying)21 b(the)i Fz(stride)k FD(option)c(to)g(the)f
-(record)g(dimension)g(in)g Fy(ncra)f FD(and)h Fy(ncrcat)e
-FD(mak)m(es)j(it)g(p)s(ossible,)150 1598 y(for)30 b(instance,)h(to)h(a)
+y FE(See)30 b(Section)h(4.7)h([nc)m(ks)f(netCDF)g(Kitc)m(hen)f(Sink],)h
+(page)g(188,)h(for)e(more)g(information)h(on)f Fz(ncks)p
+FE(.)275 1488 y(Applying)21 b(the)i FA(stride)k FE(option)c(to)g(the)f
+(record)g(dimension)g(in)g Fz(ncra)f FE(and)h Fz(ncrcat)e
+FE(mak)m(es)j(it)g(p)s(ossible,)150 1598 y(for)30 b(instance,)h(to)h(a)
 m(v)m(erage)h(or)d(concatenate)j(regular)e(in)m(terv)-5
 b(als)31 b(across)g(m)m(ulti-\014le)g(input)f(data)h(sets.)390
-1758 y Fy(ncra)47 b(-F)g(-d)g(time,3,,12)e(85.nc)h(86.nc)h(87.nc)f
+1758 y Fz(ncra)47 b(-F)g(-d)g(time,3,,12)e(85.nc)h(86.nc)h(87.nc)f
 (88.nc)g(89.nc)h(8589_03.nc)390 1867 y(ncrcat)f(-F)h(-d)g(time,3,,12)e
 (85.nc)i(86.nc)f(87.nc)h(88.nc)f(89.nc)g(8503_8903.nc)150
-2102 y FB(3.17)68 b(Record)46 b(App)t(ending)150 2236
-y Fk(\013)p 200 2236 3554 4 v 3553 w(\010)p 150 2726
-4 442 v 178 2372 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncra)p
-FD(,)30 b Fy(ncrcat)178 2482 y FD(Short)g(options:)41
-b(None)178 2592 y(Long)31 b(options:)41 b(`)p Fy(--rec_apn)p
-FD(',)28 b(`)p Fy(--record_append)p FD(')p 3803 2726
-V 150 2777 a Fk(\012)p 200 2777 3554 4 v 3553 w(\011)275
-2954 y FD(As)i(of)h(v)m(ersion)h(4.2.6)g(\(Marc)m(h,)g(2013\),)i
-FC(NCO)c FD(allo)m(ws)i(b)s(oth)e(Multi-File,)k(Multi-Record)e(op)s
-(erators)150 3063 y(\()p Fy(ncra)21 b FD(and)g Fy(ncrcat)p
-FD(\))f(to)i(app)s(end)e(their)i(output)f(directly)i(to)f(the)g(end)f
+2102 y FC(3.17)68 b(Record)46 b(App)t(ending)150 2236
+y Fl(\013)p 200 2236 3554 4 v 3553 w(\010)p 150 2726
+4 442 v 178 2372 a FE(Av)-5 b(ailabilit)m(y:)43 b Fz(ncra)p
+FE(,)30 b Fz(ncrcat)178 2482 y FE(Short)g(options:)41
+b(None)178 2592 y(Long)31 b(options:)41 b(`)p Fz(--rec_apn)p
+FE(',)28 b(`)p Fz(--record_append)p FE(')p 3803 2726
+V 150 2777 a Fl(\012)p 200 2777 3554 4 v 3553 w(\011)275
+2954 y FE(As)i(of)h(v)m(ersion)h(4.2.6)g(\(Marc)m(h,)g(2013\),)i
+FD(NCO)c FE(allo)m(ws)i(b)s(oth)e(Multi-File,)k(Multi-Record)e(op)s
+(erators)150 3063 y(\()p Fz(ncra)21 b FE(and)g Fz(ncrcat)p
+FE(\))f(to)i(app)s(end)e(their)i(output)f(directly)i(to)f(the)g(end)f
 (of)h(an)f(existing)i(\014le.)38 b(This)20 b(feature)150
 3173 y(ma)m(y)37 b(b)s(e)e(used)h(to)h(augmen)m(t)g(a)f(target)i
 (\014le,)g(rather)e(than)g(construct)h(it)g(from)f(scratc)m(h.)59
@@ -16786,18 +17014,18 @@ b(ailable)35 b(in)150 3392 y(stages)d(rather)e(than)g(all)h(at)g(once.)
 42 b(In)29 b(suc)m(h)i(cases)g(this)f(switc)m(h)h(signi\014can)m(tly)g
 (sp)s(eeds)f(writing.)275 3552 y(Consider)d(the)h(use)g(case)h(where)f
 (one)h(wishes)e(to)i(preserv)m(e)g(the)f(con)m(ten)m(ts)i(of)e
-Fy(fl_1.nc)p FD(,)f(and)h(add)f(to)150 3662 y(them)i(new)f(records)g
-(con)m(tained)i(in)e Fy(fl_2.nc)p FD(.)38 b(Previously)29
+Fz(fl_1.nc)p FE(,)f(and)h(add)f(to)150 3662 y(them)i(new)f(records)g
+(con)m(tained)i(in)e Fz(fl_2.nc)p FE(.)38 b(Previously)29
 b(the)g(output)f(had)g(to)h(b)s(e)f(placed)h(in)g(a)g(third)150
-3771 y(\014le,)i Fy(fl_3.nc)d FD(\(whic)m(h)j(could)f(also)h(safely)g
-(b)s(e)f(named)g Fy(fl_2.nc)p FD(\),)f(via)390 3932 y
-Fy(ncrcat)46 b(-O)h(fl_1.nc)f(fl_2.nc)g(fl_3.nc)275 4092
-y FD(Under)29 b(the)h(ho)s(o)s(d)f(this)h(op)s(eration)g(copies)h(all)g
-(information)f(in)g Fy(fl_1.nc)e FD(and)h Fy(fl_2.nc)f
-FD(not)i(once)150 4202 y(but)40 b(t)m(wice.)75 b(The)41
+3771 y(\014le,)i Fz(fl_3.nc)d FE(\(whic)m(h)j(could)f(also)h(safely)g
+(b)s(e)f(named)g Fz(fl_2.nc)p FE(\),)f(via)390 3932 y
+Fz(ncrcat)46 b(-O)h(fl_1.nc)f(fl_2.nc)g(fl_3.nc)275 4092
+y FE(Under)29 b(the)h(ho)s(o)s(d)f(this)h(op)s(eration)g(copies)h(all)g
+(information)f(in)g Fz(fl_1.nc)e FE(and)h Fz(fl_2.nc)f
+FE(not)i(once)150 4202 y(but)40 b(t)m(wice.)75 b(The)41
 b(\014rst)f(cop)m(y)i(is)f(p)s(erformed)f(through)g(the)i(netCDF)f(in)m
-(terface,)46 b(as)41 b(all)i(data)e(from)150 4311 y Fy(fl_1.nc)28
-b FD(and)i Fy(fl_2.nc)e FD(are)i(extracted)h(and)f(placed)g(in)g(the)g
+(terface,)46 b(as)41 b(all)i(data)e(from)150 4311 y Fz(fl_1.nc)28
+b FE(and)i Fz(fl_2.nc)e FE(are)i(extracted)h(and)f(placed)g(in)g(the)g
 (output)g(\014le.)41 b(The)29 b(second)h(cop)m(y)h(o)s(ccurs)150
 4421 y(\(usually)c(m)m(uc)m(h\))g(more)g(quic)m(kly)h(as)f(the)g(\(b)m
 (y)h(default\))f(temp)s(orary)g(output)f(\014le)h(is)g(copied)h
@@ -16805,88 +17033,88 @@ b FD(and)i Fy(fl_2.nc)e FD(are)i(extracted)h(and)f(placed)g(in)g(the)g
 (the)g(\014nal)f(output)f(\014le)i(\(see)g(Section)g(2.3)g([T)-8
 b(emp)s(orary)33 b(Output)f(Files],)150 4640 y(page)f(15\).)42
 b(All)31 b(this)f(cop)m(ying)i(is)e(exp)s(ensiv)m(e)h(for)f(large)h
-(\014les.)275 4800 y(The)26 b(`)p Fy(--record_append)p
-FD(')d(switc)m(h)28 b(app)s(ends)d(all)j(records)e(in)h
-Fy(fl_2.nc)e FD(to)j(the)f(end)f(\(after)i(the)f(last)150
-4910 y(record\))k(of)f Fy(fl_1.nc)p FD(:)390 5070 y Fy(ncrcat)46
-b(--rec_apn)f(fl_2.nc)h(fl_1.nc)275 5230 y FD(The)32
+(\014les.)275 4800 y(The)26 b(`)p Fz(--record_append)p
+FE(')d(switc)m(h)28 b(app)s(ends)d(all)j(records)e(in)h
+Fz(fl_2.nc)e FE(to)j(the)f(end)f(\(after)i(the)f(last)150
+4910 y(record\))k(of)f Fz(fl_1.nc)p FE(:)390 5070 y Fz(ncrcat)46
+b(--rec_apn)f(fl_2.nc)h(fl_1.nc)275 5230 y FE(The)32
 b(ordering)h(of)g(the)h(\014lename)f(argumen)m(ts)g(ma)m(y)h(seem)g
 (non-in)m(tuitiv)m(e.)50 b(If)33 b(the)g(record)g(v)-5
 b(ariable)150 5340 y(represen)m(ts)29 b(time)g(in)g(these)g(\014les,)h
-(then)e(the)h(v)-5 b(alues)29 b(in)g Fy(fl_1.nc)e FD(precede)i(those)g
-(in)g Fy(fl_2.nc)p FD(,)e(so)i(wh)m(y)p eop end
+(then)e(the)h(v)-5 b(alues)29 b(in)g Fz(fl_1.nc)e FE(precede)i(those)g
+(in)g Fz(fl_2.nc)p FE(,)e(so)i(wh)m(y)p eop end
 %%Page: 59 65
-TeXDict begin 59 64 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(59)150 299 y(do)25 b(the)g(\014les)g
-(app)s(ear)g(in)g(the)g(rev)m(erse)h(order)e(on)h(the)h(command)f
-(line?)39 b Fy(fl_1.nc)23 b FD(is)i(the)g(last)h(\014le)f(named)150
-408 y(b)s(ecause)20 b(it)h(is)g(the)g(pre-existing)g(output)f(\014le)h
-(to)g(whic)m(h)f(w)m(e)h(will)g(app)s(end)e(all)i(the)g(other)f(input)g
-(\014les)g(listed)150 518 y(\(in)34 b(this)g(case)h(only)f
-Fy(fl_2.nc)p FD(\).)50 b(The)34 b(con)m(ten)m(ts)h(of)f
-Fy(fl_1.nc)e FD(are)j(completely)h(preserv)m(ed,)e(and)g(only)150
-628 y(v)-5 b(alues)26 b(in)g Fy(fl_2.nc)d FD(\(and)j(an)m(y)g(other)g
+TeXDict begin 59 64 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(59)150 299 y(do)25
+b(the)g(\014les)g(app)s(ear)g(in)g(the)g(rev)m(erse)h(order)e(on)h(the)
+h(command)f(line?)39 b Fz(fl_1.nc)23 b FE(is)i(the)g(last)h(\014le)f
+(named)150 408 y(b)s(ecause)20 b(it)h(is)g(the)g(pre-existing)g(output)
+f(\014le)h(to)g(whic)m(h)f(w)m(e)h(will)g(app)s(end)e(all)i(the)g
+(other)f(input)g(\014les)g(listed)150 518 y(\(in)34 b(this)g(case)h
+(only)f Fz(fl_2.nc)p FE(\).)50 b(The)34 b(con)m(ten)m(ts)h(of)f
+Fz(fl_1.nc)e FE(are)j(completely)h(preserv)m(ed,)e(and)g(only)150
+628 y(v)-5 b(alues)26 b(in)g Fz(fl_2.nc)d FE(\(and)j(an)m(y)g(other)g
 (input)f(\014les\))h(are)g(copied.)39 b(This)25 b(switc)m(h)i(a)m(v)m
 (oids)g(the)f(necessit)m(y)h(of)150 737 y(cop)m(ying)f(all)g(of)g
-Fy(fl_1.nc)d FD(through)i(the)g(netCDF)h(in)m(terface)h(to)f(a)f(new)g
-(output)g(\014le.)39 b(The)25 b(`)p Fy(--rec_apn)p FD(')150
-847 y(switc)m(h)33 b(automatically)j(puts)31 b FC(NCO)i
-FD(in)m(to)g(app)s(end)e(mo)s(de)h(\(see)i(Section)f(2.4)h([App)s
+Fz(fl_1.nc)d FE(through)i(the)g(netCDF)h(in)m(terface)h(to)f(a)f(new)g
+(output)g(\014le.)39 b(The)25 b(`)p Fz(--rec_apn)p FE(')150
+847 y(switc)m(h)33 b(automatically)j(puts)31 b FD(NCO)i
+FE(in)m(to)g(app)s(end)e(mo)s(de)h(\(see)i(Section)f(2.4)h([App)s
 (ending)d(V)-8 b(ariables],)150 956 y(page)41 b(17\),)j(so)d(sp)s
-(ecifying)f(`)p Fy(-A)p FD(')g(is)h(redundan)m(t,)g(and)f(sim)m
+(ecifying)f(`)p Fz(-A)p FE(')g(is)h(redundan)m(t,)g(and)f(sim)m
 (ultaneously)h(sp)s(ecifying)f(o)m(v)m(erwrite)i(mo)s(de)150
-1066 y(with)27 b(`)p Fy(-O)p FD(')g(causes)g(an)g(error.)39
+1066 y(with)27 b(`)p Fz(-O)p FE(')g(causes)g(an)g(error.)39
 b(By)27 b(default,)i(NCO)d(w)m(orks)h(in)g(an)g(in)m(termediate)h(temp)
 s(orary)f(\014le.)40 b(P)m(o)m(w)m(er)150 1176 y(users)25
-b(ma)m(y)h(com)m(bine)g(`)p Fy(--rec_apn)p FD(')e(with)h(the)h(`)p
-Fy(--no_tmp_fl)p FD(')d(switc)m(h)k(\(see)f(Section)h(2.3)f([T)-8
+b(ma)m(y)h(com)m(bine)g(`)p Fz(--rec_apn)p FE(')e(with)h(the)h(`)p
+Fz(--no_tmp_fl)p FE(')d(switc)m(h)k(\(see)f(Section)h(2.3)f([T)-8
 b(emp)s(orary)150 1285 y(Output)29 b(Files],)j(page)f(15\):)390
-1446 y Fy(ncrcat)46 b(--rec_apn)f(--no_tmp_fl)g(fl_2.nc)h(fl_1.nc)275
-1606 y FD(This)33 b(a)m(v)m(oids)j(creating)f(an)f(in)m(termediate)i
+1446 y Fz(ncrcat)46 b(--rec_apn)f(--no_tmp_fl)g(fl_2.nc)h(fl_1.nc)275
+1606 y FE(This)33 b(a)m(v)m(oids)j(creating)f(an)f(in)m(termediate)i
 (\014le,)g(and)e(copies)h(only)f(the)h(minimal)f(amoun)m(t)h(of)f(data)
-150 1716 y(\(i.e.,)h(all)f(of)f Fy(fl_2.nc)p FD(\).)46
+150 1716 y(\(i.e.,)h(all)f(of)f Fz(fl_2.nc)p FE(\).)46
 b(Hence,)35 b(it)e(is)g(fast.)48 b(W)-8 b(e)34 b(recommend)f(users)f
 (try)g(to)i(understand)d(the)i(safet)m(y)150 1825 y(trade-o\013s)e(in)m
-(v)m(olv)m(ed.)150 2060 y FB(3.18)68 b(Sub)t(cycle)150
-2194 y Fk(\013)p 200 2194 3554 4 v 3553 w(\010)p 150
-2794 4 552 v 178 2330 a FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncra)p FD(,)30 b Fy(ncrcat)178 2440 y FD(Short)g(options:)41
-b(`)p Fy(-d)30 b Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(strid)o(e)p Fy(][,)o([)p Fn(sub)o(cyc)o(le)p
-Fy(]])o(]])p FD(')178 2549 y(Long)h(options:)41 b(`)p
-Fy(--mro)p FD(')29 b(`)p Fy(--dimension)f Fn(dim)p Fy(,[)p
-Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p Fn(strid)o(e)p
-Fy(][)o(,[)p Fn(su)o(bcyc)o(le)p Fy(])o(]]])p FD(')178
-2659 y(`)p Fy(--dmn)h Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o([,[)o Fn(subc)o(ycle)o
-Fy(]]])o(])p FD(')p 3803 2794 V 150 2845 a Fk(\012)p
-200 2845 3554 4 v 3553 w(\011)275 3021 y FD(As)c(of)g(v)m(ersion)h
-(4.2.1)h(\(August,)g(2012\),)h FC(NCO)d FD(allo)m(ws)i(b)s(oth)d
+(v)m(olv)m(ed.)150 2060 y FC(3.18)68 b(Sub)t(cycle)150
+2194 y Fl(\013)p 200 2194 3554 4 v 3553 w(\010)p 150
+2794 4 552 v 178 2330 a FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncra)p FE(,)30 b Fz(ncrcat)178 2440 y FE(Short)g(options:)41
+b(`)p Fz(-d)30 b Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(strid)o(e)p Fz(][,)o([)p Fo(sub)o(cyc)o(le)p
+Fz(]])o(]])p FE(')178 2549 y(Long)h(options:)41 b(`)p
+Fz(--mro)p FE(')29 b(`)p Fz(--dimension)f Fo(dim)p Fz(,[)p
+Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p Fo(strid)o(e)p
+Fz(][)o(,[)p Fo(su)o(bcyc)o(le)p Fz(])o(]]])p FE(')178
+2659 y(`)p Fz(--dmn)h Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o([,[)o Fo(subc)o(ycle)o
+Fz(]]])o(])p FE(')p 3803 2794 V 150 2845 a Fl(\012)p
+200 2845 3554 4 v 3553 w(\011)275 3021 y FE(As)c(of)g(v)m(ersion)h
+(4.2.1)h(\(August,)g(2012\),)h FD(NCO)d FE(allo)m(ws)i(b)s(oth)d
 (Multi-File,)29 b(Multi-Record)e(op)s(erators,)150 3131
-y Fy(ncra)h FD(and)g Fy(ncrcat)p FD(,)g(to)i(extract)h(and)d(op)s
+y Fz(ncra)h FE(and)g Fz(ncrcat)p FE(,)g(to)i(extract)h(and)d(op)s
 (erate)i(on)f(m)m(ultiple)g(groups)g(of)g(records.)40
 b(These)29 b(groups)f(ma)m(y)150 3240 y(b)s(e)g(connected)i(to)f(ph)m
-(ysical)h Fo(sub-cycles)35 b FD(of)29 b(a)g(p)s(erio)s(dic)f(nature,)h
+(ysical)h Fp(sub-cycles)35 b FE(of)29 b(a)g(p)s(erio)s(dic)f(nature,)h
 (e.g.,)i(mon)m(ths)d(of)h(a)g(y)m(ear,)h(or)f(hours)f(of)150
 3350 y(a)35 b(da)m(y)-8 b(.)54 b(Or)34 b(they)h(ma)m(y)g(b)s(e)f
 (though)m(t)i(of)e(as)h(groups)f(of)h(a)g(sp)s(ecifed)f(duration.)53
 b(The)35 b(feature)g(and)f(the)150 3460 y(terminology)h(to)f(describ)s
 (e)f(it)h(are)g(new.)50 b(F)-8 b(or)34 b(no)m(w,)h(w)m(e)f(call)g(this)
-g(the)g Fz(sub)s(cycle)f(feature)p FD(,)i(sometimes)150
-3569 y(abbreviated)c FC(SSC)800 3536 y Ft(17)870 3569
-y FD(.)275 3730 y(The)22 b(sub)s(cycle)i(feature)f(allo)m(ws)i(pro)s
+g(the)g FA(sub)s(cycle)f(feature)p FE(,)i(sometimes)150
+3569 y(abbreviated)c FD(SSC)800 3536 y Fu(17)870 3569
+y FE(.)275 3730 y(The)22 b(sub)s(cycle)i(feature)f(allo)m(ws)i(pro)s
 (cessing)e(of)h(groups)e(of)i(records)f(separated)h(b)m(y)f(regular)h
 (in)m(terv)-5 b(als)150 3839 y(of)35 b(records.)54 b(It)35
 b(is)g(p)s(erhaps)e(b)s(est)i(illustrated)g(b)m(y)g(an)g(extended)g
 (example)g(whic)m(h)g(describ)s(es)f(ho)m(w)h(to)150
 3949 y(solv)m(e)d(the)e(same)h(problem)f(b)s(oth)g(with)g(and)f
-(without)i(the)f FC(SSC)h FD(feature.)275 4109 y(The)37
+(without)i(the)f FD(SSC)h FE(feature.)275 4109 y(The)37
 b(\014rst)g(task)i(in)e(climate)j(data)f(pro)s(cessing)f(is)g(often)g
 (creating)h(seasonal)h(cycles.)64 b(Supp)s(ose)37 b(a)150
 4219 y(150-y)m(ear)43 b(climate)g(sim)m(ulation)f(pro)s(duces)e(150)i
 (output)f(\014les,)i(eac)m(h)f(comprising)f(12)h(records,)i(eac)m(h)150
-4328 y(record)39 b(a)g(mon)m(thly)g(mean:)58 b Fy(1850.nc)p
-FD(,)39 b Fy(1851.nc)p FD(,)h(...)66 b Fy(1999.nc)p FD(.)f(Our)37
+4328 y(record)39 b(a)g(mon)m(thly)g(mean:)58 b Fz(1850.nc)p
+FE(,)39 b Fz(1851.nc)p FE(,)h(...)66 b Fz(1999.nc)p FE(.)f(Our)37
 b(goal)k(is)e(to)h(create)g(a)f(single)150 4438 y(\014le)29
 b(con)m(taining)h(the)f(summertime)f(\(June,)h(July)-8
 b(,)29 b(and)f(August,)h(ak)-5 b(a)30 b(JJA\))e(mean.)40
@@ -16894,140 +17122,140 @@ b(T)-8 b(raditionally)g(,)31 b(w)m(e)150 4548 y(w)m(ould)h(\014rst)g
 (compute)h(the)g(climatological)k(mon)m(thly)c(mean)g(for)f(eac)m(h)i
 (mon)m(th)e(of)h(summer.)47 b(Eac)m(h)33 b(of)150 4657
 y(these)e(is)f(a)h(150-y)m(ear)i(mean,)e(i.e.,)390 4817
-y Fy(#)47 b(Step)g(1:)g(Create)f(climatological)e(monthly)i(files)g
+y Fz(#)47 b(Step)g(1:)g(Create)f(climatological)e(monthly)i(files)g
 (clm06.nc..clm08.nc)390 4927 y(for)h(mth)g(in)g({6..8};)f(do)485
 5037 y(mm=`printf)f("\04502d")i($mth`)485 5146 y(ncra)g(-O)g(-F)g(-d)h
 (time,${mm},,12)c(-n)j(150,4,1)f(1850.nc)f(clm${mm}.nc)p
-150 5241 1200 4 v 166 5308 a Ft(17)275 5340 y Fs(When)25
+150 5241 1200 4 v 166 5308 a Fu(17)275 5340 y Ft(When)25
 b(originally)i(released)g(in)e(2012)i(this)f(w)n(as)h(called)f(the)g
-Fm(duration)f(feature)p Fs(,)i(and)e(w)n(as)i(abbreviated)e
-Fp(DRN)p Fs(.)p eop end
+Fn(duration)f(feature)p Ft(,)i(and)e(w)n(as)i(abbreviated)e
+Fq(DRN)p Ft(.)p eop end
 %%Page: 60 66
-TeXDict begin 60 65 bop 150 -116 a FD(60)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(done)390 408 y(#)47
+TeXDict begin 60 65 bop 150 -116 a FE(60)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(done)390 408 y(#)47
 b(Step)g(2:)g(Average)f(climatological)e(monthly)i(files)g(into)h
 (summertime)e(mean)390 518 y(ncra)i(-O)g(clm06)f(clm07.nc)g(clm08.nc)f
-(clm_JJA.nc)150 679 y FD(So)34 b(far,)i(nothing)e(is)h(un)m(usual)f
+(clm_JJA.nc)150 679 y FE(So)34 b(far,)i(nothing)e(is)h(un)m(usual)f
 (and)f(this)i(task)g(can)g(b)s(e)f(p)s(erformed)f(b)m(y)h(an)m(y)h
-FC(NCO)f FD(v)m(ersion.)54 b(The)34 b FC(SSC)150 789
-y FD(feature)d(mak)m(es)g(obsolete)h(the)f(need)f(for)g(the)g(shell)h
+FD(NCO)f FE(v)m(ersion.)54 b(The)34 b FD(SSC)150 789
+y FE(feature)d(mak)m(es)g(obsolete)h(the)f(need)f(for)g(the)g(shell)h
 (lo)s(op)f(used)g(in)g(Step)g(1)h(ab)s(o)m(v)m(e.)275
-950 y(The)c(new)g FC(SSC)h FD(option)g(aggregates)i(more)e(than)g(one)g
+950 y(The)c(new)g FD(SSC)h FE(option)g(aggregates)i(more)e(than)g(one)g
 (input)e(record)i(at)g(a)g(time)h(b)s(efore)e(p)s(erforming)150
 1060 y(arithmetic)32 b(op)s(erations,)g(and,)f(with)g(an)g(additional)h
 (switc)m(h,)g(allo)m(ws)g(us)e(to)i(arc)m(hiv)m(e)h(those)e(results)g
 (in)150 1170 y(m)m(ultiple)h(record)f(output)h(\(MR)m(O\))g(\014les.)44
 b(This)31 b(reduces)g(the)g(task)h(of)g(pro)s(ducing)e(the)i
 (climatological)150 1279 y(summertime)e(mean)g(to)h(one)g(step:)390
-1440 y Fy(#)47 b(Step)g(1:)g(Compute)f(climatological)e(summertime)h
+1440 y Fz(#)47 b(Step)g(1:)g(Compute)f(climatological)e(summertime)h
 (mean)390 1550 y(ncra)i(-O)g(-F)g(-d)g(time,6,,12,3)e(-n)i(150,4,1)f
-(1850.nc)f(clm_JJA.nc)150 1711 y FD(The)33 b FC(SSC)h
-FD(option)g(instructs)f Fy(ncra)f FD(\(or)i Fy(ncrcat)p
-FD(\))e(to)i(pro)s(cess)g(\014les)f(in)g(groups)g(of)h(three)g
+(1850.nc)f(clm_JJA.nc)150 1711 y FE(The)33 b FD(SSC)h
+FE(option)g(instructs)f Fz(ncra)f FE(\(or)i Fz(ncrcat)p
+FE(\))e(to)i(pro)s(cess)g(\014les)f(in)g(groups)g(of)h(three)g
 (records.)49 b(T)-8 b(o)150 1821 y(b)s(etter)31 b(understand)f(the)i
 (meaning)f(of)h(eac)m(h)g(argumen)m(t)g(to)g(the)g(`)p
-Fy(-d)p FD(')f(h)m(yp)s(erslab)f(option,)j(read)e(it)h(this)150
+Fz(-d)p FE(')f(h)m(yp)s(erslab)f(option,)j(read)e(it)h(this)150
 1931 y(w)m(a)m(y:)41 b(\\for)30 b(the)f(time)h(dimension)f(start)h
 (with)f(the)g(sixth)h(record,)f(con)m(tin)m(ue)i(without)e(end,)g(rep)s
 (eat)h(the)150 2040 y(pro)s(cess)g(ev)m(ery)h(t)m(w)m(elfth)h(record,)e
 (and)g(de\014ne)g(a)g(sub-cycle)h(as)g(three)f(consecutiv)m(e)j
 (records".)275 2202 y(A)38 b(separate)i(option,)i(`)p
-Fy(--mro)p FD(',)e(instructs)e Fy(ncra)g FD(to)h(output)f(its)h
+Fz(--mro)p FE(',)e(instructs)e Fz(ncra)g FE(to)h(output)f(its)h
 (results)g(from)f(eac)m(h)i(sub-group,)150 2311 y(and)f(to)h(pro)s
-(duce)e(a)i Fz(Multi-Record)g(Output)h FD(\(MR)m(O\))f(\014le)g(rather)
-f(than)g(a)h Fz(Single-Record)g(Output)150 2421 y FD(\(SR)m(O\))34
-b(\014le.)49 b(Unless)34 b(`)p Fy(--mro)p FD(')e(is)i(sp)s(eci\014ed,)f
-Fy(ncra)f FD(collects)k(together)f(all)f(the)g(sub-groups,)e(op)s
+(duce)e(a)i FA(Multi-Record)g(Output)h FE(\(MR)m(O\))f(\014le)g(rather)
+f(than)g(a)h FA(Single-Record)g(Output)150 2421 y FE(\(SR)m(O\))34
+b(\014le.)49 b(Unless)34 b(`)p Fz(--mro)p FE(')e(is)i(sp)s(eci\014ed,)f
+Fz(ncra)f FE(collects)k(together)f(all)f(the)g(sub-groups,)e(op)s
 (erates)150 2530 y(on)39 b(their)g(ensem)m(ble,)j(and)c(pro)s(duces)g
 (a)h(single)h(output)e(record.)66 b(The)39 b(addition)g(of)g(`)p
-Fy(--mro)p FD(')f(to)i(the)150 2640 y(ab)s(o)m(v)m(e)32
-b(example)f(causes)f Fy(ncra)g FD(to)h(arc)m(hiv)m(e)h(all)f(\(150\))h
+Fz(--mro)p FE(')f(to)i(the)150 2640 y(ab)s(o)m(v)m(e)32
+b(example)f(causes)f Fz(ncra)g FE(to)h(arc)m(hiv)m(e)h(all)f(\(150\))h
 (ann)m(ual)f(summertime)f(means)g(to)h(one)g(\014le:)390
-2801 y Fy(#)47 b(Step)g(1:)g(Archive)f(all)h(150)g(summertime)e(means)h
+2801 y Fz(#)47 b(Step)g(1:)g(Archive)f(all)h(150)g(summertime)e(means)h
 (in)h(one)g(file)390 2911 y(ncra)g(--mro)f(-O)h(-F)g(-d)h(time,6,,12,3)
 c(-n)j(150,4,1)f(1850.nc)g(1850_2009_JJA.nc)390 3020
 y(#)h(...or)g(all)g(\(150\))f(annual)g(means...)390 3130
 y(ncra)h(--mro)f(-O)h(-d)g(time,,,12,12)e(-n)i(150,4,1)f(1850.nc)g
-(1850_2009.nc)150 3291 y FD(These)41 b(op)s(erations)g(generate)h(and)f
+(1850_2009.nc)150 3291 y FE(These)41 b(op)s(erations)g(generate)h(and)f
 (require)f(no)h(in)m(termediate)i(\014les.)72 b(This)41
-b(con)m(trasts)h(to)f(previous)150 3401 y FC(NCO)31 b
-FD(metho)s(ds,)g(whic)m(h)g(require)g(generating,)i(a)m(v)m(eraging,)h
+b(con)m(trasts)h(to)f(previous)150 3401 y FD(NCO)31 b
+FE(metho)s(ds,)g(whic)m(h)g(require)g(generating,)i(a)m(v)m(eraging,)h
 (then)c(catenating)k(150)e(\014les.)43 b(The)31 b(`)p
-Fy(--mro)p FD(')150 3511 y(option)f(has)f(no)g(e\013ect)h(on,)g(or)f
-(rather)g(is)h(redundan)m(t)e(for,)h Fy(ncrcat)f FD(since)h
-Fy(ncrcat)f FD(alw)m(a)m(ys)i(outputs)f(all)150 3620
-y(selected)j(records.)150 3858 y FB(3.19)68 b(Multislabs)150
-3969 y Fk(\013)p 200 3969 3554 4 v 3553 w(\010)p 150
-4678 4 661 v 178 4105 a FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncbo)p FD(,)30 b Fy(nces)p FD(,)f Fy(ncecat)p FD(,)g
-Fy(ncflint)p FD(,)g Fy(ncks)p FD(,)g Fy(ncpdq)p FD(,)h
-Fy(ncra)p FD(,)f Fy(ncrcat)178 4215 y FD(Short)h(options:)41
-b(`)p Fy(-d)30 b Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(strid)o(e)p Fy(]]])o FD(')178 4324
-y(Long)h(options:)41 b(`)p Fy(--dimension)27 b Fn(dim)p
-Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p Fn(stride)p
-Fy(])o(]])p FD(',)178 4434 y(`)p Fy(--dmn)i Fn(dim)p
-Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p Fn(stride)p
-Fy(])o(]])p FD(')178 4543 y(`)p Fy(--msa_usr_rdr)p FD(',)f(`)p
-Fy(--msa_user_order)p FD(')p 3803 4678 V 150 4729 a Fk(\012)p
-200 4729 3554 4 v 3553 w(\011)275 4902 y FD(A)35 b(m)m(ultislab)i(is)f
+Fz(--mro)p FE(')150 3511 y(option)f(has)f(no)g(e\013ect)h(on,)g(or)f
+(rather)g(is)h(redundan)m(t)e(for,)h Fz(ncrcat)f FE(since)h
+Fz(ncrcat)f FE(alw)m(a)m(ys)i(outputs)f(all)150 3620
+y(selected)j(records.)150 3858 y FC(3.19)68 b(Multislabs)150
+3969 y Fl(\013)p 200 3969 3554 4 v 3553 w(\010)p 150
+4678 4 661 v 178 4105 a FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncbo)p FE(,)30 b Fz(nces)p FE(,)f Fz(ncecat)p FE(,)g
+Fz(ncflint)p FE(,)g Fz(ncks)p FE(,)g Fz(ncpdq)p FE(,)h
+Fz(ncra)p FE(,)f Fz(ncrcat)178 4215 y FE(Short)h(options:)41
+b(`)p Fz(-d)30 b Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(strid)o(e)p Fz(]]])o FE(')178 4324
+y(Long)h(options:)41 b(`)p Fz(--dimension)27 b Fo(dim)p
+Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p Fo(stride)p
+Fz(])o(]])p FE(',)178 4434 y(`)p Fz(--dmn)i Fo(dim)p
+Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p Fo(stride)p
+Fz(])o(]])p FE(')178 4543 y(`)p Fz(--msa_usr_rdr)p FE(',)f(`)p
+Fz(--msa_user_order)p FE(')p 3803 4678 V 150 4729 a Fl(\012)p
+200 4729 3554 4 v 3553 w(\011)275 4902 y FE(A)35 b(m)m(ultislab)i(is)f
 (a)g(union)f(of)h(one)g(or)g(more)g(h)m(yp)s(erslabs.)56
 b(One)35 b(de\014nes)g(m)m(ultislabs)h(b)m(y)g(c)m(haining)150
 5011 y(together)44 b(h)m(yp)s(erslab)d(commands,)j(i.e.,)j
-Fn(-d)41 b FD(options)h(\(see)h(Section)g(3.15)h([Hyp)s(erslabs],)h
+Fo(-d)41 b FE(options)h(\(see)h(Section)g(3.15)h([Hyp)s(erslabs],)h
 (page)d(55\).)150 5121 y(Supp)s(ort)18 b(for)j(sp)s(ecifying)f(a)h
-Fz(m)m(ulti-h)m(yp)s(erslab)i FD(or)d Fz(m)m(ultislab)j
-FD(for)e(an)m(y)g(v)-5 b(ariable)21 b(w)m(as)g(\014rst)f(added)g(to)h
-Fy(ncks)150 5230 y FD(in)31 b(late)i(2002.)46 b(The)31
+FA(m)m(ulti-h)m(yp)s(erslab)i FE(or)d FA(m)m(ultislab)j
+FE(for)e(an)m(y)g(v)-5 b(ariable)21 b(w)m(as)g(\014rst)f(added)g(to)h
+Fz(ncks)150 5230 y FE(in)31 b(late)i(2002.)46 b(The)31
 b(other)h(op)s(erators)g(receiv)m(ed)g(these)g(capabilities)i(in)d
 (April)g(2008.)46 b(Multi-slabbing)150 5340 y(is)28 b(often)f(referred)
-g(to)h(b)m(y)g(the)f(acron)m(ym)i FC(MSA)p FD(,)f(whic)m(h)f(stands)g
+g(to)h(b)m(y)g(the)f(acron)m(ym)i FD(MSA)p FE(,)f(whic)m(h)f(stands)g
 (for)h(\\Multi-Slabbing)g(Algorithm".)41 b(As)p eop end
 %%Page: 61 67
-TeXDict begin 61 66 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(61)150 299 y(explained)33
+TeXDict begin 61 66 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(61)150 299 y(explained)33
 b(b)s(elo)m(w,)h(the)f(user)f(ma)m(y)i(additionally)g(request)f(that)h
 (the)f(m)m(ultislabs)g(b)s(e)f(returned)g(in)h(the)150
 408 y(user-sp)s(eci\014ed)k(order,)j(rather)e(than)g(the)g(on-disk)g
-(storage)h(order.)64 b(Although)38 b FC(MSA)h FD(user-ordering)150
+(storage)h(order.)64 b(Although)38 b FD(MSA)h FE(user-ordering)150
 518 y(has)k(b)s(een)f(a)m(v)-5 b(ailable)45 b(in)e(all)h(op)s(erators)f
 (since)g(2008,)48 b(most)43 b(users)f(w)m(ere)i(una)m(w)m(are)f(of)g
 (it)g(since)h(the)150 628 y(do)s(cumen)m(tation)31 b(\(b)s(elo)m(w,)g
 (and)f(in)g(the)h(man)f(pages\))h(w)m(as)g(not)g(written)f(un)m(til)h
 (July)e(2013.)275 803 y(Multislabs)47 b(o)m(v)m(ercome)j(man)m(y)d
 (restrain)m(ts)h(that)f(limit)h(simple)f(h)m(yp)s(erslabs.)90
-b(A)30 b(single)48 b Fn(-d)f FD(op-)150 913 y(tion)40
+b(A)30 b(single)48 b Fo(-d)f FE(op-)150 913 y(tion)40
 b(can)f(only)g(sp)s(ecify)g(a)g(con)m(tiguous)i(and/or)e(a)g(regularly)
 h(spaced)f(m)m(ulti-dimensional)h(data)g(ar-)150 1022
 y(ra)m(y)-8 b(.)79 b(Multislabs)43 b(are)g(constructed)g(from)f(m)m
-(ultiple)i Fn(-d)e FD(options)h(and)f(ma)m(y)h(therefore)g(ha)m(v)m(e)h
+(ultiple)i Fo(-d)e FE(options)h(and)f(ma)m(y)h(therefore)g(ha)m(v)m(e)h
 (non-)150 1132 y(regularly)c(spaced)g(arra)m(ys.)70 b(F)-8
 b(or)40 b(example,)j(supp)s(ose)c(it)h(is)g(desired)f(to)i(op)s(erate)f
 (on)g(all)g(longitudes)150 1241 y(from)j(10.0)i(to)f(20.0)h(and)e(from)
 g(80.0)i(to)f(90.0)32 b(degrees.)80 b(The)43 b(com)m(bined)h(range)f
 (of)h(longitudes)g(is)150 1351 y(not)d(selectable)i(in)e(a)g(single)g
 (h)m(yp)s(erslab)f(sp)s(ec\014cation)h(of)g(the)g(form)g(`)p
-Fy(-d)30 b Fn(dimension)p Fy(,)p Fn(min)p Fy(,)p Fn(max)p
-FD(')36 b(or)150 1461 y(`)p Fy(-d)30 b Fn(dimension)p
-Fy(,)p Fn(min)p Fy(,)p Fn(max)p Fy(,)p Fn(stride)o FD(')25
+Fz(-d)30 b Fo(dimension)p Fz(,)p Fo(min)p Fz(,)p Fo(max)p
+FE(')36 b(or)150 1461 y(`)p Fz(-d)30 b Fo(dimension)p
+Fz(,)p Fo(min)p Fz(,)p Fo(max)p Fz(,)p Fo(stride)o FE(')25
 b(b)s(ecause)31 b(its)g(elemen)m(ts)h(are)f(irregularly)g(spaced)g(in)f
 (co)s(ordinate)150 1570 y(space)g(\(and)e(presumably)g(in)h(index)g
 (space)g(to)s(o\).)42 b(The)28 b(m)m(ultislab)i(sp)s(eci\014cation)g
 (for)f(obtaining)g(these)150 1680 y(v)-5 b(alues)29 b(is)g(simply)f
 (the)h(union)f(of)h(the)g(h)m(yp)s(erslabs)e(sp)s(eci\014cations)j
 (that)f(comprise)g(the)g(m)m(ultislab,)h(i.e.,)390 1855
-y Fy(ncks)47 b(-d)g(lon,10.,20.)e(-d)i(lon,80.,90.)d(in.nc)j(out.nc)390
+y Fz(ncks)47 b(-d)g(lon,10.,20.)e(-d)i(lon,80.,90.)d(in.nc)j(out.nc)390
 1965 y(ncks)g(-d)g(lon,10.,15.)e(-d)i(lon,15.,20.)d(-d)k(lon,80.,90.)c
-(in.nc)j(out.nc)150 2140 y FD(An)m(y)30 b(n)m(um)m(b)s(er)f(of)h(h)m
+(in.nc)j(out.nc)150 2140 y FE(An)m(y)30 b(n)m(um)m(b)s(er)f(of)h(h)m
 (yp)s(erslabs)g(sp)s(eci\014cations)g(ma)m(y)h(b)s(e)f(c)m(hained)g
 (together)i(to)f(sp)s(ecify)f(the)g(m)m(ultislab.)150
-2250 y FC(MSA)37 b FD(creates)g(an)f(output)g(dimension)g(equal)g(in)g
+2250 y FD(MSA)37 b FE(creates)g(an)f(output)g(dimension)g(equal)g(in)g
 (size)h(to)g(the)g(sum)e(of)h(the)h(sizes)f(of)h(the)f(m)m(ultislabs.)
 150 2359 y(This)30 b(can)g(b)s(e)g(used)g(to)h(extend)f(and)g(or)g(pad)
 g(co)s(ordinate)h(grids.)275 2534 y(Users)f(ma)m(y)h(sp)s(ecify)f
 (redundan)m(t)f(ranges)h(of)h(indices)f(in)h(a)f(m)m(ultislab,)h(e.g.,)
-390 2710 y Fy(ncks)47 b(-d)g(lon,0,4)f(-d)h(lon,2,9,2)e(in.nc)h(out.nc)
-150 2885 y FD(This)e(command)h(retriev)m(es)h(the)f(\014rst)f(\014v)m
+390 2710 y Fz(ncks)47 b(-d)g(lon,0,4)f(-d)h(lon,2,9,2)e(in.nc)h(out.nc)
+150 2885 y FE(This)e(command)h(retriev)m(es)h(the)f(\014rst)f(\014v)m
 (e)h(longitudes,)k(and)c(then)f(ev)m(ery)i(other)f(longitude)g(v)-5
 b(alue)150 2995 y(up)36 b(to)h(the)g(ten)m(th.)61 b(Elemen)m(ts)37
 b(0,)i(2,)h(and)29 b(4)37 b(are)h(sp)s(eci\014ed)e(b)m(y)g(b)s(oth)h(h)
@@ -17036,18 +17264,18 @@ m(t\))e(but)h(will)g(coun)m(t)h(only)g(once)g(if)f(an)g(arithmetic)i
 (op)s(eration)f(is)f(b)s(eing)g(p)s(erformed.)150 3214
 y(This)27 b(example)i(uses)e(index-based)h(\(not)h(co)s
 (ordinate-based\))g(m)m(ultislabs)f(b)s(ecause)g(the)g
-Fz(stride)33 b FD(option)150 3324 y(only)43 b(supp)s(orts)e
+FA(stride)33 b FE(option)150 3324 y(only)43 b(supp)s(orts)e
 (index-based)i(h)m(yp)s(er-slabbing.)77 b(See)43 b(Section)h(3.16)h
 ([Stride],)h(page)e(57,)j(for)c(more)150 3433 y(information)31
-b(on)f(the)h Fz(stride)k FD(option.)275 3608 y(Multislabs)g(are)g(more)
+b(on)f(the)h FA(stride)k FE(option.)275 3608 y(Multislabs)g(are)g(more)
 g(e\016cien)m(t)i(than)d(the)h(alternativ)m(e)j(of)d(sequen)m(tially)h
 (p)s(erforming)e(h)m(yp)s(erslab)150 3718 y(op)s(erations)g(and)e
 (concatenating)k(the)d(results.)49 b(This)33 b(is)g(b)s(ecause)g
-FC(NCO)g FD(emplo)m(ys)h(a)g(no)m(v)m(el)g(m)m(ultislab)150
+FD(NCO)g FE(emplo)m(ys)h(a)g(no)m(v)m(el)g(m)m(ultislab)150
 3828 y(algorithm)42 b(to)g(minimize)f(the)h(n)m(um)m(b)s(er)d(of)i(I/O)
 g(op)s(erations)h(when)e(retrieving)i(irregularly)f(spaced)150
-3937 y(data)36 b(from)f(disk.)55 b(The)35 b FC(NCO)g
-FD(m)m(ultislab)h(algorithm)g(retriev)m(es)h(eac)m(h)f(elemen)m(t)h
+3937 y(data)36 b(from)f(disk.)55 b(The)35 b FD(NCO)g
+FE(m)m(ultislab)h(algorithm)g(retriev)m(es)h(eac)m(h)f(elemen)m(t)h
 (from)e(disk)g(once)h(and)150 4047 y(only)31 b(once.)42
 b(Th)m(us)29 b(users)h(ma)m(y)h(tak)m(e)i(some)e(shortcuts)f(in)h(sp)s
 (ecifying)f(m)m(ultislabs)h(and)f(the)h(algorithm)150
@@ -17055,28 +17283,28 @@ b(Th)m(us)29 b(users)h(ma)m(y)h(tak)m(e)i(some)e(shortcuts)f(in)h(sp)s
 b(Sp)s(ecifying)34 b(redundan)m(t)g(ranges)h(is)g(not)h(encouraged,)h
 (but)d(ma)m(y)150 4266 y(b)s(e)c(useful)f(on)i(o)s(ccasion)g(and)f
 (will)h(not)f(result)h(in)f(unin)m(tended)f(consequences.)275
-4441 y(Supp)s(ose)45 b(the)i Fz(Q)k FD(v)-5 b(ariable)48
+4441 y(Supp)s(ose)45 b(the)i FA(Q)k FE(v)-5 b(ariable)48
 b(con)m(tains)g(three)f(dimensional)g(arra)m(ys)g(of)g(distinct)h(c)m
 (hemical)g(con-)150 4551 y(stituen)m(ts)23 b(in)f(no)h(particular)f
 (order.)38 b(W)-8 b(e)24 b(are)e(in)m(terested)i(in)e(the)h(NOy)f(sp)s
 (ecies)g(in)g(a)h(certain)h(geographic)150 4661 y(range.)46
 b(Sa)m(y)33 b(that)f(NO,)h(NO2,)g(and)e(N2O5)i(are)f(elemen)m(ts)g(0)q
-(,)g(1,)h(and)d(5)j(of)f(the)g Fz(sp)s(ecies)k FD(dimension)c(of)150
-4770 y Fz(Q)p FD(.)40 b(The)30 b(m)m(ultislab)h(sp)s(eci\014cation)g
+(,)g(1,)h(and)d(5)j(of)f(the)g FA(sp)s(ecies)k FE(dimension)c(of)150
+4770 y FA(Q)p FE(.)40 b(The)30 b(m)m(ultislab)h(sp)s(eci\014cation)g
 (migh)m(t)g(lo)s(ok)g(something)g(lik)m(e)390 4945 y
-Fy(ncks)47 b(-d)g(species,0,1)e(-d)i(species,5)e(-d)i(lon,0,4)f(-d)h
-(lon,2,9,2)e(in.nc)i(out.nc)150 5121 y FD(Multislabs)41
+Fz(ncks)47 b(-d)g(species,0,1)e(-d)i(species,5)e(-d)i(lon,0,4)f(-d)h
+(lon,2,9,2)e(in.nc)i(out.nc)150 5121 y FE(Multislabs)41
 b(are)g(p)s(o)m(w)m(erful)g(b)s(ecause)f(they)h(ma)m(y)g(b)s(e)f(sp)s
 (eci\014ed)g(for)h(ev)m(ery)g(dimension)f(at)i(the)f(same)150
 5230 y(time.)g(Th)m(us)29 b(m)m(ultislabs)h(obsolete)h(the)f(need)g(to)
-g(execute)h(m)m(ultiple)g Fy(ncks)d FD(commands)i(to)g(gather)h(the)150
+g(execute)h(m)m(ultiple)g Fz(ncks)d FE(commands)i(to)g(gather)h(the)150
 5340 y(desired)f(range)h(of)f(data.)p eop end
 %%Page: 62 68
-TeXDict begin 62 67 bop 150 -116 a FD(62)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(The)40 b FC(MSA)h
-FD(user-order)f(switc)m(h)h(`)p Fy(--msa_usr_rdr)p FD(')d(\(or)j(`)p
-Fy(--msa_user_order)p FD(',)f(b)s(oth)g(of)h(whic)m(h)150
-408 y(shorten)30 b(to)i(`)p Fy(--msa)p FD('\))e(requests)h(that)g(the)g
+TeXDict begin 62 67 bop 150 -116 a FE(62)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(The)40 b FD(MSA)h
+FE(user-order)f(switc)m(h)h(`)p Fz(--msa_usr_rdr)p FE(')d(\(or)j(`)p
+Fz(--msa_user_order)p FE(',)f(b)s(oth)g(of)h(whic)m(h)150
+408 y(shorten)30 b(to)i(`)p Fz(--msa)p FE('\))e(requests)h(that)g(the)g
 (m)m(ultislabs)g(b)s(e)g(output)f(in)g(the)h(user-sp)s(eci\014ed)f
 (order)g(from)150 518 y(the)44 b(command-line,)j(rather)d(than)f(in)g
 (the)h(input-\014le)f(on-disk)g(storage)i(order.)80 b(This)43
@@ -17086,12 +17314,12 @@ f(re-ordering)g(in)g(one)g(op)s(eration)g(that)g(w)m(ould)g(otherwise)g
 (erslabbing,)g(concatenating,)45 b(and)39 b(p)s(erm)m(uting.)67
 b(Consider)38 b(the)i(recen)m(t)150 847 y(example)28
 b(of)g(a)h(user)e(who)g(needed)h(to)g(con)m(v)m(ert)h(datasets)g
-(stored)f(with)g(the)g(longitude)g(co)s(ordinate)h Fy(Lon)150
-956 y FD(ranging)i(from)e([)p FA(\000)p FD(180,180\))34
+(stored)f(with)g(the)g(longitude)g(co)s(ordinate)h Fz(Lon)150
+956 y FE(ranging)i(from)e([)p FB(\000)p FE(180,180\))34
 b(to)d(datasets)h(that)f(follo)m(w)g(the)g([0,360\))i(con)m(v)m(en)m
-(tion.)390 1121 y Fy(\045)47 b(ncks)g(-H)g(-v)g(Lon)g(in.nc)390
+(tion.)390 1121 y Fz(\045)47 b(ncks)g(-H)g(-v)g(Lon)g(in.nc)390
 1230 y(Lon[0]=-180)390 1340 y(Lon[1]=-90)390 1450 y(Lon[2]=0)390
-1559 y(Lon[3]=90)150 1724 y FD(Although)38 b(simple)f(in)g(theory)-8
+1559 y(Lon[3]=90)150 1724 y FE(Although)38 b(simple)f(in)g(theory)-8
 b(,)40 b(this)d(task)h(requires)f(b)s(oth)g(mathematics)i(to)f(c)m
 (hange)h(the)e(n)m(umerical)150 1833 y(v)-5 b(alue)35
 b(of)g(the)g(longitude)h(co)s(ordinate,)h(data)e(h)m(yp)s(erslabbing)f
@@ -17099,7 +17327,7 @@ b(of)g(the)g(longitude)h(co)s(ordinate,)h(data)e(h)m(yp)s(erslabbing)f
 1943 y(Green)m(wic)m(h,)f(and)e(data)i(re-ordering)e(within)g(to)i
 (stitc)m(h)f(the)g(w)m(estern)g(hemisphere)f(on)m(to)i(the)e(eastern)
 150 2052 y(hemisphere)e(at)i(the)g(date-line.)44 b(The)31
-b(`)p Fy(--msa)p FD(')f(user-order)h(switc)m(h)g(o)m(v)m(errides)i(the)
+b(`)p Fz(--msa)p FE(')f(user-order)h(switc)m(h)g(o)m(v)m(errides)i(the)
 e(default)g(that)h(data)150 2162 y(are)d(output)g(in)f(the)h(same)g
 (order)f(in)h(whic)m(h)f(they)h(are)g(stored)g(on-disk)g(in)f(the)h
 (input)f(\014le,)i(and)e(instead)150 2271 y(stores)42
@@ -17107,18 +17335,18 @@ b(them)g(in)f(the)h(same)h(order)e(as)h(the)g(m)m(ulti-slabs)g(are)h
 (giv)m(en)f(to)h(the)f(command)f(line.)76 b(This)150
 2381 y(default)29 b(is)g(in)m(tuitiv)m(e)i(and)d(is)h(not)g(imp)s
 (ortan)m(t)h(in)e(most)h(uses.)40 b(Ho)m(w)m(ev)m(er,)32
-b(the)d FC(MSA)g FD(user-order)f(switc)m(h)150 2491 y(allo)m(ws)34
+b(the)d FD(MSA)g FE(user-order)f(switc)m(h)150 2491 y(allo)m(ws)34
 b(users)e(to)i(meet)g(their)f(output)g(order)f(needs)h(b)m(y)g(sp)s
 (ecifying)f(m)m(ulti-slabs)i(in)f(a)g(certain)h(order.)150
 2600 y(Compare)c(the)h(results)f(of)g(default)h(ordering)f(to)h
-(user-ordering)f(for)g(longitude:)390 2765 y Fy(\045)47
+(user-ordering)f(for)g(longitude:)390 2765 y Fz(\045)47
 b(ncks)g(-O)g(-H)334 b(-v)47 b(Lon)g(-d)g(Lon,0.,180.)e(-d)i
 (Lon,-180.,-1.0)d(in.nc)390 2874 y(Lon[0]=-180)390 2984
 y(Lon[1]=-90)390 3093 y(Lon[2]=0)390 3203 y(Lon[3]=90)390
 3313 y(\045)j(ncks)g(-O)g(-H)g(--msa)g(-v)g(Lon)g(-d)g(Lon,0.,180.)e
 (-d)i(Lon,-180.,-1.0)d(in.nc)390 3422 y(Lon[0]=0)390
 3532 y(Lon[1]=90)390 3641 y(Lon[2]=-180)390 3751 y(Lon[3]=-90)150
-3915 y FD(The)28 b(t)m(w)m(o)j(m)m(ulti-slabs)e(are)h(the)f(same)g(but)
+3915 y FE(The)28 b(t)m(w)m(o)j(m)m(ulti-slabs)e(are)h(the)f(same)g(but)
 f(they)h(can)g(b)s(e)g(presen)m(ted)g(to)g(screen,)h(or)f(to)g(an)g
 (output)g(\014le,)150 4025 y(in)j(either)g(order.)46
 b(The)31 b(second)i(example)f(sho)m(ws)g(ho)m(w)g(to)h(place)g(the)g(w)
@@ -17127,7 +17355,7 @@ m(estern)f(hemisphere)f(after)i(the)150 4134 y(eastern)e(hemisphere,)f
 (the)h(input)e(\014le.)275 4299 y(With)h(this)f(bac)m(kground,)h(one)g
 (sees)g(that)g(the)g(follo)m(wing)h(commands)e(su\016ce)h(to)g(rotate)h
 (the)f(input)150 4408 y(\014le)g(b)m(y)h(180)g(degrees)g(longitude:)390
-4573 y Fy(\045)47 b(ncks)g(-O)g(-v)g(LatLon)g(--msa)f(-d)h(Lon,0.,180.)
+4573 y Fz(\045)47 b(ncks)g(-O)g(-v)g(LatLon)g(--msa)f(-d)h(Lon,0.,180.)
 e(-d)i(Lon,-180.,-1.0)d(in.nc)i(out.nc)390 4682 y(\045)h(ncap2)g(-O)g
 (-s)g('where\(Lon)e(<)j(0\))f(Lon=Lon+360')d(out.nc)i(out.nc)390
 4792 y(\045)h(ncks)g(-C)g(-H)g(-v)h(LatLon)e(~/nco/data/in.nc)390
@@ -17137,8 +17365,8 @@ y(Lat[0]=-45)g(Lon[1]=-90)g(LatLon[1]=1)390 5121 y(Lat[0]=-45)g
 (LatLon[3]=3)390 5340 y(Lat[1]=45)g(Lon[0]=-180)g(LatLon[4]=4)p
 eop end
 %%Page: 63 69
-TeXDict begin 63 68 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(63)390 299 y Fy(Lat[1]=45)45
+TeXDict begin 63 68 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(63)390 299 y Fz(Lat[1]=45)45
 b(Lon[1]=-90)g(LatLon[5]=5)390 408 y(Lat[1]=45)g(Lon[2]=0)h
 (LatLon[6]=6)390 518 y(Lat[1]=45)f(Lon[3]=90)h(LatLon[7]=7)390
 628 y(\045)h(ncks)g(-C)g(-H)g(-v)h(LatLon)e(~/out.nc)390
@@ -17148,10 +17376,10 @@ b(Lon[1]=-90)g(LatLon[5]=5)390 408 y(Lat[1]=45)g(Lon[2]=0)h
 1176 y(Lat[1]=45)g(Lon[0]=0)h(LatLon[4]=6)390 1285 y(Lat[1]=45)f
 (Lon[1]=90)h(LatLon[5]=7)390 1395 y(Lat[1]=45)f(Lon[2]=180)g
 (LatLon[6]=4)390 1504 y(Lat[1]=45)g(Lon[3]=270)g(LatLon[7]=5)150
-1668 y FD(There)31 b(are)i(other)f(w)m(ork)-5 b(able,)33
+1668 y FE(There)31 b(are)i(other)f(w)m(ork)-5 b(able,)33
 b(v)-5 b(alid)32 b(metho)s(ds)f(to)i(accomplish)g(this)e(rotation,)j(y)
 m(et)f(none)f(are)g(simpler)150 1778 y(nor)43 b(more)g(e\016cien)m(t)i
-(than)e(utilizing)i FC(MSA)e FD(user-ordering.)79 b(Some)44
+(than)e(utilizing)i FD(MSA)e FE(user-ordering.)79 b(Some)44
 b(\014nal)f(commen)m(ts)h(on)f(applying)150 1888 y(this)26
 b(algorithm:)40 b(Be)27 b(careful)f(to)h(sp)s(ecify)f(hemispheres)f
 (that)i(do)f(not)g(o)m(v)m(erlap,)j(e.g.,)f(b)m(y)e(inadv)m(erten)m
@@ -17159,18 +17387,18 @@ b(algorithm:)40 b(Be)27 b(careful)f(to)h(sp)s(ecify)f(hemispheres)f
 (oth)f(include)g(Green)m(wic)m(h.)40 b(Some)24 b(users)g(will)h(\014nd)
 e(using)h(index-)150 2107 y(based)30 b(rather)g(than)g(co)s
 (ordinate-based)i(h)m(yp)s(erslabs)d(mak)m(es)i(this)f(clearer.)150
-2353 y FB(3.20)68 b(W)-11 b(rapp)t(ed)44 b(Co)t(ordinates)150
-2487 y Fk(\013)p 200 2487 3554 4 v 3553 w(\010)p 150
-3086 4 552 v 178 2623 a FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncks)178 2733 y FD(Short)30 b(options:)41 b(`)p
-Fy(-d)30 b Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p
-Fy(][,[)p Fn(strid)o(e)p Fy(]]])o FD(')178 2842 y(Long)h(options:)41
-b(`)p Fy(--dimension)27 b Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])p FD(',)178
-2952 y(`)p Fy(--dmn)i Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])p FD(')p 3803
-3086 V 150 3138 a Fk(\012)p 200 3138 3554 4 v 3553 w(\011)275
-3313 y FD(A)h Fz(wrapp)s(ed)e(co)s(ordinate)40 b FD(is)33
+2353 y FC(3.20)68 b(W)-11 b(rapp)t(ed)44 b(Co)t(ordinates)150
+2487 y Fl(\013)p 200 2487 3554 4 v 3553 w(\010)p 150
+3086 4 552 v 178 2623 a FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncks)178 2733 y FE(Short)30 b(options:)41 b(`)p
+Fz(-d)30 b Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p
+Fz(][,[)p Fo(strid)o(e)p Fz(]]])o FE(')178 2842 y(Long)h(options:)41
+b(`)p Fz(--dimension)27 b Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])p FE(',)178
+2952 y(`)p Fz(--dmn)i Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])p FE(')p 3803
+3086 V 150 3138 a Fl(\012)p 200 3138 3554 4 v 3553 w(\011)275
+3313 y FE(A)h FA(wrapp)s(ed)e(co)s(ordinate)40 b FE(is)33
 b(a)h(co)s(ordinate)g(whose)f(v)-5 b(alues)34 b(increase)g(or)g
 (decrease)g(monotonically)150 3422 y(\(nothing)d(un)m(usual)f(so)h
 (far\),)h(but)e(whic)m(h)g(represen)m(ts)h(a)g(dimension)g(that)g(ends)
@@ -17186,7 +17414,7 @@ y(Con)m(tin)m(uing)30 b(east)m(w)m(ard,)h(longitude)g(increases)f(to)g
 (360)i(degrees)e(East)g(at)h(Green)m(wic)m(h.)41 b(The)29
 b(longitude)150 3970 y(v)-5 b(alues)24 b(of)g(most)g(geoph)m(ysical)i
 (data)f(are)f(either)g(in)g(the)g(range)g([0,360\),)k(or)c([)p
-FA(\000)p FD(180,180\).)41 b(In)23 b(either)i(case,)150
+FB(\000)p FE(180,180\).)41 b(In)23 b(either)i(case,)150
 4080 y(the)42 b(W)-8 b(esternmost)42 b(and)f(Easternmost)h(longitudes)g
 (are)f(n)m(umerically)h(separated)g(b)m(y)f(360)32 b(degrees)q(,)150
 4190 y(but)h(represen)m(t)h(con)m(tiguous)h(regions)g(on)f(the)g(glob)s
@@ -17198,82 +17426,82 @@ g(presen)m(ts)e(sp)s(ecial)i(problems)d(when)h(the)h(global)g(dataset)h
 (is)f(stored)150 4518 y(consecutiv)m(ely)g(in)d(longitude)h(from)f(0)h
 (to)g(360)e(degrees)q(.)50 b(This)33 b(is)g(b)s(ecause)h(the)g(data)g
 (for)f(the)h(Sahara)150 4628 y(will)d(not)g(b)s(e)e(con)m(tiguous)j(in)
-e(the)h Fz(input-\014le)k FD(but)30 b(is)g(exp)s(ected)h(b)m(y)f(the)h
+e(the)h FA(input-\014le)k FE(but)30 b(is)g(exp)s(ected)h(b)m(y)f(the)h
 (user)f(to)h(b)s(e)f(con)m(tiguous)i(in)e(the)150 4738
-y Fz(output-\014le)p FD(.)40 b(In)26 b(this)h(case,)i
-Fy(ncks)d FD(m)m(ust)h(in)m(v)m(ok)m(e)i(sp)s(ecial)e(soft)m(w)m(are)i
+y FA(output-\014le)p FE(.)40 b(In)26 b(this)h(case,)i
+Fz(ncks)d FE(m)m(ust)h(in)m(v)m(ok)m(e)i(sp)s(ecial)e(soft)m(w)m(are)i
 (routines)e(to)g(assem)m(ble)h(the)f(desired)150 4847
 y(output)j(h)m(yp)s(erslab)f(from)h(m)m(ultiple)h(reads)f(of)h(the)g
-Fz(input-\014le)p FD(.)275 5011 y(Assume)40 b(the)h(domain)g(of)g(the)g
+FA(input-\014le)p FE(.)275 5011 y(Assume)40 b(the)h(domain)g(of)g(the)g
 (monotonically)i(increasing)e(longitude)h(co)s(ordinate)f
-Fy(lon)f FD(is)h(0)i Fv(<)150 5121 y Fz(lon)29 b Fv(<)f
-FD(360.)49 b Fy(ncks)31 b FD(will)i(extract)h(a)e(h)m(yp)s(erslab)g
+Fz(lon)f FE(is)h(0)i Fw(<)150 5121 y FA(lon)29 b Fw(<)f
+FE(360.)49 b Fz(ncks)31 b FE(will)i(extract)h(a)e(h)m(yp)s(erslab)g
 (whic)m(h)g(crosses)h(the)g(Green)m(wic)m(h)g(meridian)f(simply)g(b)m
 (y)150 5230 y(sp)s(ecifying)j(the)g(w)m(esternmost)g(longitude)h(as)f
-Fz(min)f FD(and)h(the)g(easternmost)g(longitude)h(as)f
-Fz(max)p FD(.)54 b(The)150 5340 y(follo)m(wing)32 b(commands)e(extract)
+FA(min)f FE(and)h(the)g(easternmost)g(longitude)h(as)f
+FA(max)p FE(.)54 b(The)150 5340 y(follo)m(wing)32 b(commands)e(extract)
 i(a)e(h)m(yp)s(erslab)g(con)m(taining)i(the)e(Saharan)g(desert:)p
 eop end
 %%Page: 64 70
-TeXDict begin 64 69 bop 150 -116 a FD(64)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(ncks)47 b(-d)g(lon,340.,50.)d
+TeXDict begin 64 69 bop 150 -116 a FE(64)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(ncks)47 b(-d)g(lon,340.,50.)d
 (in.nc)j(out.nc)390 408 y(ncks)g(-d)g(lon,340.,50.)d(-d)j(lat,10.,35.)e
-(in.nc)i(out.nc)150 573 y FD(The)41 b(\014rst)h(example)g(selects)i
+(in.nc)i(out.nc)150 573 y FE(The)41 b(\014rst)h(example)g(selects)i
 (data)e(in)g(the)g(same)g(longitude)h(range)f(as)g(the)g(Sahara.)75
 b(The)42 b(second)150 682 y(example)33 b(further)d(constrains)i(the)g
 (data)h(to)f(ha)m(ving)h(the)f(same)g(latitude)h(as)f(the)g(Sahara.)45
-b(The)31 b(co)s(or-)150 792 y(dinate)h Fy(lon)f FD(in)g(the)h
-Fz(output-\014le)p FD(,)h Fy(out.nc)p FD(,)d(will)j(no)e(longer)h(b)s
+b(The)31 b(co)s(or-)150 792 y(dinate)h Fz(lon)f FE(in)g(the)h
+FA(output-\014le)p FE(,)h Fz(out.nc)p FE(,)d(will)j(no)e(longer)h(b)s
 (e)g(monotonic!)46 b(The)31 b(v)-5 b(alues)32 b(of)g
-Fy(lon)f FD(will)150 901 y(b)s(e,)26 b(e.g.,)i(`)p Fy(340,)i(350,)f(0,)
-h(10,)f(20,)h(30,)f(40,)h(50)p FD('.)38 b(This)25 b(can)h(ha)m(v)m(e)h
+Fz(lon)f FE(will)150 901 y(b)s(e,)26 b(e.g.,)i(`)p Fz(340,)i(350,)f(0,)
+h(10,)f(20,)h(30,)f(40,)h(50)p FE('.)38 b(This)25 b(can)h(ha)m(v)m(e)h
 (serious)e(implications)i(should)e(y)m(ou)150 1011 y(run)32
-b Fy(out.nc)f FD(through)h(another)i(op)s(eration)f(whic)m(h)g(exp)s
-(ects)g(the)h Fy(lon)e FD(co)s(ordinate)i(to)g(b)s(e)e(monotoni-)150
+b Fz(out.nc)f FE(through)h(another)i(op)s(eration)f(whic)m(h)g(exp)s
+(ects)g(the)h Fz(lon)e FE(co)s(ordinate)i(to)g(b)s(e)e(monotoni-)150
 1121 y(cally)e(increasing.)41 b(F)-8 b(ortunately)g(,)32
 b(the)d(c)m(hances)h(of)f(this)g(happ)s(ening)f(are)h(slim,)h(since)f
-Fy(lon)g FD(has)f(already)150 1230 y(b)s(een)i(h)m(yp)s(erslabb)s(ed,)f
+Fz(lon)g FE(has)f(already)150 1230 y(b)s(een)i(h)m(yp)s(erslabb)s(ed,)f
 (there)i(should)f(b)s(e)g(no)h(reason)g(to)g(h)m(yp)s(erslab)f
-Fy(lon)g FD(again.)43 b(Should)30 b(y)m(ou)h(need)f(to)150
-1340 y(h)m(yp)s(erslab)25 b Fy(lon)g FD(again,)j(b)s(e)d(sure)g(to)h
+Fz(lon)g FE(again.)43 b(Should)30 b(y)m(ou)h(need)f(to)150
+1340 y(h)m(yp)s(erslab)25 b Fz(lon)g FE(again,)j(b)s(e)d(sure)g(to)h
 (giv)m(e)h(dimensional)f(indices)g(as)g(the)g(h)m(yp)s(erslab)f
 (argumen)m(ts,)i(rather)150 1449 y(than)j(co)s(ordinate)h(v)-5
 b(alues)31 b(\(see)g(Section)h(3.15)f([Hyp)s(erslabs],)g(page)g(55\).)
-150 1696 y FB(3.21)68 b(Auxiliary)46 b(Co)t(ordinates)150
-1830 y Fk(\013)p 200 1830 3554 4 v 3553 w(\010)p 150
-2320 4 442 v 178 1966 a FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncbo)p FD(,)30 b Fy(nces)p FD(,)f Fy(ncecat)p FD(,)g
-Fy(ncflint)p FD(,)g Fy(ncks)p FD(,)g Fy(ncpdq)p FD(,)h
-Fy(ncra)p FD(,)f Fy(ncrcat)178 2076 y FD(Short)h(options:)41
-b(`)p Fy(-X)30 b Fn(lon_min)p Fy(,)p Fn(lon_max)p Fy(,)p
-Fn(lat_min)p Fy(,)o Fn(lat_)o(max)p FD(')178 2185 y(Long)h(options:)41
-b(`)p Fy(--auxiliary)27 b Fn(lon_min)p Fy(,)p Fn(lon_max)p
-Fy(,)p Fn(lat_min)p Fy(,)p Fn(la)o(t_m)o(ax)p FD(')p
-3803 2320 V 150 2371 a Fk(\012)p 200 2371 3554 4 v 3553
-w(\011)275 2546 y FD(Utilize)36 b(auxiliary)f(co)s(ordinates)g(sp)s
+150 1696 y FC(3.21)68 b(Auxiliary)46 b(Co)t(ordinates)150
+1830 y Fl(\013)p 200 1830 3554 4 v 3553 w(\010)p 150
+2320 4 442 v 178 1966 a FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncbo)p FE(,)30 b Fz(nces)p FE(,)f Fz(ncecat)p FE(,)g
+Fz(ncflint)p FE(,)g Fz(ncks)p FE(,)g Fz(ncpdq)p FE(,)h
+Fz(ncra)p FE(,)f Fz(ncrcat)178 2076 y FE(Short)h(options:)41
+b(`)p Fz(-X)30 b Fo(lon_min)p Fz(,)p Fo(lon_max)p Fz(,)p
+Fo(lat_min)p Fz(,)o Fo(lat_)o(max)p FE(')178 2185 y(Long)h(options:)41
+b(`)p Fz(--auxiliary)27 b Fo(lon_min)p Fz(,)p Fo(lon_max)p
+Fz(,)p Fo(lat_min)p Fz(,)p Fo(la)o(t_m)o(ax)p FE(')p
+3803 2320 V 150 2371 a Fl(\012)p 200 2371 3554 4 v 3553
+w(\011)275 2546 y FE(Utilize)36 b(auxiliary)f(co)s(ordinates)g(sp)s
 (eci\014ed)f(in)g(v)-5 b(alues)35 b(of)f(the)h(co)s(ordinate)g(v)-5
-b(ariable's)35 b Fy(standard_)150 2656 y(name)60 b FD(attributes,)69
+b(ariable's)35 b Fz(standard_)150 2656 y(name)60 b FE(attributes,)69
 b(if)61 b(an)m(y)-8 b(,)69 b(when)60 b(in)m(terpreting)h(h)m(yp)s
 (erslab)f(and)g(m)m(ulti-slab)i(options.)132 b(Also)150
-2765 y(`)p Fy(--auxiliary)p FD('.)36 b(This)25 b(switc)m(h)g(supp)s
+2765 y(`)p Fz(--auxiliary)p FE('.)36 b(This)25 b(switc)m(h)g(supp)s
 (orts)e(h)m(yp)s(erslabbing)h(cell-based)i(grids)f(o)m(v)m(er)i(co)s
 (ordinate)e(ranges.)150 2875 y(This)30 b(w)m(orks)g(on)h(datasets)h
 (that)f(asso)s(ciate)i(co)s(ordinate)e(v)-5 b(ariables)31
-b(to)h(grid-mappings)e(using)g(the)h FC(CF)p FD(-)150
-2984 y(con)m(v)m(en)m(tion)g(\(see)f(Section)f(3.37)i([CF)e(Con)m(v)m
-(en)m(tions],)i(page)e(99\))i Fy(coordinates)25 b FD(and)k
-Fy(standard_name)150 3094 y FD(attributes)35 b(describ)s(ed)e(here)i
-(\()p Fy(http:)s(/)s(/)s(cfconventions)s(.)s(org)r(/)s(1)s(.)r(6)s(.)s
-(h)o(tml)r(#)s(co)o(ordi)o(nate)o(-sy)o(stem)o FD(\).)150
-3204 y(Curren)m(tly)-8 b(,)41 b FC(NCO)d FD(understands)e(auxiliary)k
+b(to)h(grid-mappings)e(using)g(the)h FD(CF)p FE(-)150
+2984 y(con)m(v)m(en)m(tion)26 b(\(see)g(Section)f(3.38)g([CF)g(Con)m(v)
+m(en)m(tions],)i(page)e(110\))h Fz(coordinates)21 b FE(and)j
+Fz(standard_name)150 3094 y FE(attributes)35 b(describ)s(ed)e(here)i
+(\()p Fz(http:)s(/)s(/)s(cfconventions)s(.)s(org)r(/)s(1)s(.)r(6)s(.)s
+(h)o(tml)r(#)s(co)o(ordi)o(nate)o(-sy)o(stem)o FE(\).)150
+3204 y(Curren)m(tly)-8 b(,)41 b FD(NCO)d FE(understands)e(auxiliary)k
 (co)s(ordinate)f(v)-5 b(ariables)39 b(p)s(oin)m(ted)g(to)g(b)m(y)g(the)
-f Fy(standard_)150 3313 y(name)j FD(attributes)i(for)g
-Fz(latitude)48 b FD(and)42 b Fz(longitude)p FD(.)78 b(Cells)43
+f Fz(standard_)150 3313 y(name)j FE(attributes)i(for)g
+FA(latitude)48 b FE(and)42 b FA(longitude)p FE(.)78 b(Cells)43
 b(that)g(con)m(tain)h(a)f(v)-5 b(alue)43 b(within)f(the)g(user-)150
-3423 y(sp)s(eci\014ed)30 b(range)g([)p Fz(lon)p 916 3423
-28 4 v 41 w(min)p FD(,)p Fz(lon)p 1255 3423 V 40 w(max)p
-FD(,)p Fz(lat)p 1594 3423 V 41 w(min)p FD(,)p Fz(lat)p
-1917 3423 V 41 w(max)6 b FD(])31 b(are)g(included)f(in)g(the)g(output)g
+3423 y(sp)s(eci\014ed)30 b(range)g([)p FA(lon)p 916 3423
+28 4 v 41 w(min)p FE(,)p FA(lon)p 1255 3423 V 40 w(max)p
+FE(,)p FA(lat)p 1594 3423 V 41 w(min)p FE(,)p FA(lat)p
+1917 3423 V 41 w(max)6 b FE(])31 b(are)g(included)f(in)g(the)g(output)g
 (h)m(yp)s(erslab.)275 3587 y(A)38 b(cell-based)h(grid)f(collapses)h
 (the)f(horizon)m(tal)i(spatial)f(information)f(\(latitude)i(and)d
 (longitude\))150 3697 y(and)g(stores)h(it)g(along)g(a)g
@@ -17283,33 +17511,33 @@ FD(,)p Fz(lat)p 1594 3423 V 41 w(min)p FD(,)p Fz(lat)p
 (horizon)m(tal)g(h)m(y-)150 3916 y(p)s(erslabs)44 b(cannot)i(b)s(e)f
 (selected)i(using)e(the)h(t)m(ypical)h(pro)s(cedure)d(\(see)j(Section)f
 (3.15)h([Hyp)s(erslabs],)150 4025 y(page)32 b(55\))g(of)g(separately)g
-(sp)s(ecifying)f(`)p Fy(-d)p FD(')g(argumen)m(ts)h(for)f(longitude)h
+(sp)s(ecifying)f(`)p Fz(-d)p FE(')g(argumen)m(ts)h(for)f(longitude)h
 (and)e(latitude.)44 b(Instead,)32 b(when)150 4135 y(the)c(`)p
-Fy(-X)p FD(')h(is)f(used,)g FC(NCO)g FD(learns)g(the)g(names)h(of)f
+Fz(-X)p FE(')h(is)f(used,)g FD(NCO)g FE(learns)g(the)g(names)h(of)f
 (the)g(latitude)i(and)d(longitude)i(co)s(ordinates)g(b)m(y)f(searc)m
-(h-)150 4245 y(ing)45 b(the)f Fy(standard_name)d FD(attribute)k(of)g
+(h-)150 4245 y(ing)45 b(the)f Fz(standard_name)d FE(attribute)k(of)g
 (all)h(v)-5 b(ariables)45 b(un)m(til)g(it)g(\014nds)d(the)j(t)m(w)m(o)h
-(v)-5 b(ariables)45 b(whose)150 4354 y Fy(standard_name)p
-FD('s)39 b(are)j(\\latitude")j(and)c(\\longitude",)47
-b(resp)s(ectiv)m(ely)-8 b(.)79 b(This)41 b Fy(standard_name)e
-FD(at-)150 4464 y(tribute)34 b(for)g(latitude)i(and)e(longitude)h(co)s
-(ordinates)g(follo)m(ws)g(the)g FC(CF)p FD(-con)m(v)m(en)m(tion)i
-(\(see)e(Section)g(3.37)150 4573 y([CF)c(Con)m(v)m(en)m(tions],)h(page)
-f(99\).)275 4737 y(Putting)e(it)h(all)g(together,)h(consider)e(a)h(v)-5
-b(ariable)30 b Fz(gds)p 2112 4737 V 39 w(3dv)-5 b(ar)36
-b FD(output)29 b(from)g(sim)m(ulations)h(on)f(a)g(cell-)150
+(v)-5 b(ariables)45 b(whose)150 4354 y Fz(standard_name)p
+FE('s)39 b(are)j(\\latitude")j(and)c(\\longitude",)47
+b(resp)s(ectiv)m(ely)-8 b(.)79 b(This)41 b Fz(standard_name)e
+FE(at-)150 4464 y(tribute)34 b(for)g(latitude)i(and)e(longitude)h(co)s
+(ordinates)g(follo)m(ws)g(the)g FD(CF)p FE(-con)m(v)m(en)m(tion)i
+(\(see)e(Section)g(3.38)150 4573 y([CF)c(Con)m(v)m(en)m(tions],)h(page)
+f(110\).)275 4737 y(Putting)e(it)h(all)g(together,)h(consider)e(a)h(v)
+-5 b(ariable)30 b FA(gds)p 2112 4737 V 39 w(3dv)-5 b(ar)36
+b FE(output)29 b(from)g(sim)m(ulations)h(on)f(a)g(cell-)150
 4847 y(based)21 b(geo)s(desic)i(grid.)38 b(Although)21
 b(the)h(v)-5 b(ariable)22 b(con)m(tains)h(three)f(dimensions)f(of)h
 (data)g(\(time,)j(latitude,)150 4957 y(and)f(longitude\),)k(it)d(is)g
 (stored)g(in)g(the)g(netCDF)h(\014le)f(with)f(only)i(t)m(w)m(o)g
-(dimensions,)f Fy(time)f FD(and)h Fy(gds_crd)p FD(.)390
-5121 y Fy(\045)47 b(ncks)g(-m)g(-C)g(-v)h(gds_3dvar)d(~/nco/data/in.nc)
+(dimensions,)f Fz(time)f FE(and)h Fz(gds_crd)p FE(.)390
+5121 y Fz(\045)47 b(ncks)g(-m)g(-C)g(-v)h(gds_3dvar)d(~/nco/data/in.nc)
 390 5230 y(gds_3dvar:)g(type)i(NC_FLOAT,)e(2)i(dimensions,)e(4)j
 (attributes,)c(chunked?)i(no,)h(\\)438 5340 y(compressed?)d(no,)j
 (packed?)f(no,)h(ID)g(=)h(41)p eop end
 %%Page: 65 71
-TeXDict begin 65 70 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(65)390 299 y Fy(gds_3dvar)45
+TeXDict begin 65 70 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(65)390 299 y Fz(gds_3dvar)45
 b(RAM)i(size)g(is)g(10*8*sizeof\(NC_FLOAT\))42 b(=)47
 b(80*4)g(=)h(320)e(bytes)390 408 y(gds_3dvar)f(dimension)h(0:)h(time,)f
 (size)h(=)g(10)g(NC_DOUBLE,)e(dim.)i(ID)g(=)h(20)f(\\)438
@@ -17323,24 +17551,24 @@ b(80*4)g(=)h(320)e(bytes)390 408 y(gds_3dvar)f(dimension)h(0:)h(time,)f
 1176 y(lat_gds)e(lon_gds)390 1285 y(gds_3dvar)f(attribute)h(3:)h
 (purpose,)e(size)i(=)g(64)h(NC_CHAR,)d(value)h(=)i(\\)438
 1395 y(Test)e(auxiliary)g(coordinates)e(like)j(those)f(that)h(define)f
-(geodesic)g(grids)275 1614 y FD(The)36 b Fy(coordinates)e
-FD(attribute)k(lists)g(the)f(names)g(of)g(the)h(latitude)g(and)e
-(longitude)i(co)s(ordinates,)150 1724 y Fy(lat_gds)d
-FD(and)h Fy(lon_gds)p FD(,)h(resp)s(ectiv)m(ely)-8 b(.)63
-b(The)36 b Fy(coordinates)e FD(attribute)k(is)f(recommended)f(though)
+(geodesic)g(grids)275 1614 y FE(The)36 b Fz(coordinates)e
+FE(attribute)k(lists)g(the)f(names)g(of)g(the)h(latitude)g(and)e
+(longitude)i(co)s(ordinates,)150 1724 y Fz(lat_gds)d
+FE(and)h Fz(lon_gds)p FE(,)h(resp)s(ectiv)m(ely)-8 b(.)63
+b(The)36 b Fz(coordinates)e FE(attribute)k(is)f(recommended)f(though)
 150 1833 y(optional.)57 b(With)36 b(it,)i(the)e(user)e(can)i
 (immediately)h(iden)m(tify)f(whic)m(h)f(v)-5 b(ariables)36
 b(con)m(tain)h(the)f(latitude)150 1943 y(and)e(longitude)h(co)s
-(ordinates.)54 b(Without)35 b(a)g Fy(coordinates)c FD(attribute)36
+(ordinates.)54 b(Without)35 b(a)g Fz(coordinates)c FE(attribute)36
 b(it)f(w)m(ould)f(b)s(e)g(unclear)g(at)i(\014rst)150
 2052 y(glance)h(whether)d(a)i(v)-5 b(ariable)36 b(resides)f(on)g(a)h
-(cell-based)h(grid.)55 b(In)34 b(this)h(example,)j Fy(time)c
-FD(is)h(a)h(normal)150 2162 y(record)30 b(dimension)g(and)g
-Fy(gds_crd)e FD(is)j(the)f(cell-based)i(dimension.)275
+(cell-based)h(grid.)55 b(In)34 b(this)h(example,)j Fz(time)c
+FE(is)h(a)h(normal)150 2162 y(record)30 b(dimension)g(and)g
+Fz(gds_crd)e FE(is)j(the)f(cell-based)i(dimension.)275
 2381 y(The)c(cell-based)i(grid)f(\014le)g(m)m(ust)g(con)m(tain)i(t)m(w)
-m(o)f(v)-5 b(ariables)30 b(whose)f Fy(standard_name)c
-FD(attributes)30 b(are)150 2491 y(\\latitude",)j(and)c(\\longitude":)
-390 2710 y Fy(\045)47 b(ncks)g(-m)g(-C)g(-v)h(lat_gds,lon_gds)43
+m(o)f(v)-5 b(ariables)30 b(whose)f Fz(standard_name)c
+FE(attributes)30 b(are)150 2491 y(\\latitude",)j(and)c(\\longitude":)
+390 2710 y Fz(\045)47 b(ncks)g(-m)g(-C)g(-v)h(lat_gds,lon_gds)43
 b(~/nco/data/in.nc)390 2819 y(lat_gds:)j(type)g(NC_DOUBLE,)f(1)j
 (dimensions,)c(4)k(attributes,)d(\\)438 2929 y(chunked?)g(no,)i
 (compressed?)e(no,)i(packed?)f(no,)h(ID)g(=)g(37)390
@@ -17366,73 +17594,73 @@ d(value)i(=)g(Latitude)390 3367 y(lat_gds)f(attribute)f(1:)i
 (units,)f(size)h(=)g(6)h(NC_CHAR,)d(value)i(=)g(degree)390
 4682 y(lon_gds)f(attribute)f(3:)i(purpose,)f(size)g(=)i(63)f(NC_CHAR,)f
 (value)g(=)h(\\)438 4792 y(1-D)g(longitude)e(coordinate)g(referred)g
-(to)j(by)f(geodesic)e(grid)i(variables)275 5011 y FD(In)31
-b(this)g(example)i Fy(lat_gds)d FD(and)h Fy(lon_gds)f
-FD(represen)m(t)i(the)g(latitude)h(or)f(longitude,)h(resp)s(ectiv)m
+(to)j(by)f(geodesic)e(grid)i(variables)275 5011 y FE(In)31
+b(this)g(example)i Fz(lat_gds)d FE(and)h Fz(lon_gds)f
+FE(represen)m(t)i(the)g(latitude)h(or)f(longitude,)h(resp)s(ectiv)m
 (ely)-8 b(,)150 5121 y(of)26 b(cell-based)i(v)-5 b(ariables.)40
 b(These)25 b(co)s(ordinates)i(\(m)m(ust\))g(ha)m(v)m(e)g(the)g(same)f
-(single)h(dimension)e(\()p Fy(gds_crd)p FD(,)150 5230
+(single)h(dimension)e(\()p Fz(gds_crd)p FE(,)150 5230
 y(in)36 b(this)f(case\))j(as)e(the)g(cell-based)h(v)-5
 b(ariables.)58 b(And)35 b(the)h(co)s(ordinates)h(m)m(ust)f(b)s(e)f
 (one-dimensional|)150 5340 y(m)m(ultidimensional)c(co)s(ordinates)g
 (will)g(not)g(w)m(ork.)p eop end
 %%Page: 66 72
-TeXDict begin 66 71 bop 150 -116 a FD(66)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(This)j(infrastructure)h(allo)m(ws)i
-FC(NCO)e FD(to)h(iden)m(tify)-8 b(,)37 b(in)m(terpret,)f(and)e(pro)s
+TeXDict begin 66 71 bop 150 -116 a FE(66)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(This)j(infrastructure)h(allo)m(ws)i
+FD(NCO)e FE(to)h(iden)m(tify)-8 b(,)37 b(in)m(terpret,)f(and)e(pro)s
 (cess)g(\(e.g.,)k(h)m(yp)s(erslab\))c(the)150 408 y(v)-5
 b(ariables)37 b(on)g(cell-based)h(grids)e(as)h(easily)g(as)g(it)g(w)m
 (orks)g(with)f(regular)h(grids.)59 b(T)-8 b(o)37 b(time-a)m(v)m(erage)j
 (all)150 518 y(the)31 b(v)-5 b(alues)30 b(b)s(et)m(w)m(een)h(zero)h
 (and)d(180)j(degrees)f(longitude)g(and)f(b)s(et)m(w)m(een)h(plus)e(and)
 h(min)m(us)g(30)h(degress)150 628 y(latitude,)h(w)m(e)e(use)390
-787 y Fy(ncra)47 b(-O)g(-X)g(0.,180.,-30.,30.)c(-v)48
-b(gds_3dvar)d(in.nc)h(out.nc)275 947 y FC(NCO)35 b FD(accepts)i(m)m
-(ultiple)f(`)p Fy(-X)p FD(')g(argumen)m(ts)g(for)f(cell-based)i(grid)e
+787 y Fz(ncra)47 b(-O)g(-X)g(0.,180.,-30.,30.)c(-v)48
+b(gds_3dvar)d(in.nc)h(out.nc)275 947 y FD(NCO)35 b FE(accepts)i(m)m
+(ultiple)f(`)p Fz(-X)p FE(')g(argumen)m(ts)g(for)f(cell-based)i(grid)e
 (m)m(ulti-slabs,)j(just)e(as)f(it)i(accepts)150 1057
-y(m)m(ultiple)31 b(`)p Fy(-d)p FD(')f(argumen)m(ts)h(for)f(m)m
+y(m)m(ultiple)31 b(`)p Fz(-d)p FE(')f(argumen)m(ts)h(for)f(m)m
 (ulti-slabs)h(of)g(regular)f(co)s(ordinates.)390 1216
-y Fy(ncra)47 b(-O)g(-X)g(0.,180.,-30.,30.)c(-X)48 b(270.,315.,45.,90.)
-43 b(in.nc)j(out.nc)275 1376 y FD(The)20 b(argumen)m(ts)h(to)g(`)p
-Fy(-X)p FD(')g(are)g(alw)m(a)m(ys)h(in)m(terpreted)f(as)g(\015oating)h
+y Fz(ncra)47 b(-O)g(-X)g(0.,180.,-30.,30.)c(-X)48 b(270.,315.,45.,90.)
+43 b(in.nc)j(out.nc)275 1376 y FE(The)20 b(argumen)m(ts)h(to)g(`)p
+Fz(-X)p FE(')g(are)g(alw)m(a)m(ys)h(in)m(terpreted)f(as)g(\015oating)h
 (p)s(oin)m(t)f(n)m(um)m(b)s(ers,)g(i.e.,)j(as)d(co)s(ordinate)150
 1485 y(v)-5 b(alues)29 b(rather)g(than)f(dimension)h(indices)g(so)g
 (that)g(these)g(t)m(w)m(o)h(commands)f(pro)s(duce)f(iden)m(tical)i
-(results)390 1645 y Fy(ncra)47 b(-X)g(0.,180.,-30.,30.)c(in.nc)k
+(results)390 1645 y Fz(ncra)47 b(-X)g(0.,180.,-30.,30.)c(in.nc)k
 (out.nc)390 1755 y(ncra)g(-X)g(0,180,-30,30)d(in.nc)j(out.nc)275
-1914 y FD(In)38 b(con)m(trast,)k(argumen)m(ts)d(to)h(`)p
-Fy(-d)p FD(')e(require)h(decimal)h(places)f(to)h(b)s(e)e(recognized)i
+1914 y FE(In)38 b(con)m(trast,)k(argumen)m(ts)d(to)h(`)p
+Fz(-d)p FE(')e(require)h(decimal)h(places)f(to)h(b)s(e)e(recognized)i
 (as)f(co)s(ordinates)150 2024 y(not)32 b(indices)h(\(see)g(Section)g
 (3.15)h([Hyp)s(erslabs],)e(page)h(55\).)47 b(W)-8 b(e)34
 b(recommend)e(alw)m(a)m(ys)h(using)f(decimal)150 2133
-y(p)s(oin)m(ts)e(with)g(`)p Fy(-X)p FD(')h(argumen)m(ts)f(to)h(a)m(v)m
-(oid)h(confusion.)150 2367 y FB(3.22)68 b(UDUnits)46
-b(Supp)t(ort)150 2500 y Fk(\013)p 200 2500 3554 4 v 3553
-w(\010)p 150 3100 4 552 v 178 2637 a FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncbo)p FD(,)30 b Fy(nces)p FD(,)f Fy(ncecat)p FD(,)g
-Fy(ncflint)p FD(,)g Fy(ncks)p FD(,)g Fy(ncpdq)p FD(,)h
-Fy(ncra)p FD(,)f Fy(ncrcat)p FD(,)g Fy(ncwa)178 2746
-y FD(Short)h(options:)41 b(`)p Fy(-d)30 b Fn(dim)p Fy(,[)p
-Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p Fn(strid)o(e)p
-Fy(]]])o FD(')178 2856 y(Long)h(options:)41 b(`)p Fy(--dimension)27
-b Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p
-Fn(stride)p Fy(])o(]])p FD(',)178 2965 y(`)p Fy(--dmn)i
-Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p
-Fn(stride)p Fy(])o(]])p FD(')p 3803 3100 V 150 3151 a
-Fk(\012)p 200 3151 3554 4 v 3553 w(\011)275 3327 y FD(There)i(is)h
+y(p)s(oin)m(ts)e(with)g(`)p Fz(-X)p FE(')h(argumen)m(ts)f(to)h(a)m(v)m
+(oid)h(confusion.)150 2367 y FC(3.22)68 b(UDUnits)46
+b(Supp)t(ort)150 2500 y Fl(\013)p 200 2500 3554 4 v 3553
+w(\010)p 150 3100 4 552 v 178 2637 a FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncbo)p FE(,)30 b Fz(nces)p FE(,)f Fz(ncecat)p FE(,)g
+Fz(ncflint)p FE(,)g Fz(ncks)p FE(,)g Fz(ncpdq)p FE(,)h
+Fz(ncra)p FE(,)f Fz(ncrcat)p FE(,)g Fz(ncwa)178 2746
+y FE(Short)h(options:)41 b(`)p Fz(-d)30 b Fo(dim)p Fz(,[)p
+Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p Fo(strid)o(e)p
+Fz(]]])o FE(')178 2856 y(Long)h(options:)41 b(`)p Fz(--dimension)27
+b Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p
+Fo(stride)p Fz(])o(]])p FE(',)178 2965 y(`)p Fz(--dmn)i
+Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p
+Fo(stride)p Fz(])o(]])p FE(')p 3803 3100 V 150 3151 a
+Fl(\012)p 200 3151 3554 4 v 3553 w(\011)275 3327 y FE(There)i(is)h
 (more)g(than)g(one)g(w)m(a)m(y)h(to)g(h)m(yp)s(erskin)d(a)j(cat.)46
-b(The)32 b(UDUnits)h(\()p Fy(http:)q(/)q(/)q(www)q(.)q(unidata)q(.)150
+b(The)32 b(UDUnits)h(\()p Fz(http:)q(/)q(/)q(www)q(.)q(unidata)q(.)150
 3436 y(ucar)t(.)s(edu)t(/)s(packages)t(/)s(uduni)o(ts)p
-FD(\))c(pac)m(k)-5 b(age)37 b(pro)m(vides)e(a)h(library)f(whic)m(h,)h
-(if)f(presen)m(t,)i FC(NCO)e FD(uses)f(to)150 3546 y(translate)g
+FE(\))c(pac)m(k)-5 b(age)37 b(pro)m(vides)e(a)h(library)f(whic)m(h,)h
+(if)f(presen)m(t,)i FD(NCO)e FE(uses)f(to)150 3546 y(translate)g
 (user-sp)s(eci\014ed)f(ph)m(ysical)g(dimensions)g(in)m(to)h(the)f(ph)m
 (ysical)h(dimensions)f(of)g(data)h(stored)f(in)150 3656
 y(netCDF)d(\014les.)40 b(Unidata)29 b(pro)m(vides)g(UDUnits)h(under)d
 (the)i(same)g(terms)g(as)g(netCDF,)h(so)f(sites)h(should)150
-3765 y(install)h(b)s(oth.)40 b(Compiling)31 b FC(NCO)f
-FD(with)g(UDUnits)h(supp)s(ort)e(is)h(curren)m(tly)g(optional)i(but)e
+3765 y(install)h(b)s(oth.)40 b(Compiling)31 b FD(NCO)f
+FE(with)g(UDUnits)h(supp)s(ort)e(is)h(curren)m(tly)g(optional)i(but)e
 (ma)m(y)h(b)s(ecome)150 3875 y(required)f(in)g(a)g(future)g(v)m(ersion)
-h(of)f FC(NCO)p FD(.)275 4034 y(Tw)m(o)35 b(examples)i(su\016ce)e(to)i
+h(of)f FD(NCO)p FE(.)275 4034 y(Tw)m(o)35 b(examples)i(su\016ce)e(to)i
 (demonstrate)f(the)g(p)s(o)m(w)m(er)g(and)f(con)m(v)m(enience)j(of)e
 (UDUnits)g(supp)s(ort.)150 4144 y(First,)48 b(consider)c(extraction)i
 (of)e(a)h(v)-5 b(ariable)44 b(con)m(taining)i(non-record)e(co)s
@@ -17442,13 +17670,13 @@ b(stored)i(in)e(MKS)h(units.)38 b(In)23 b(the)i(follo)m(wing)g
 4363 y(in)32 b(the)h(visible)g(p)s(ortion)g(of)g(the)g(sp)s(ectrum)e
 (in)i(terms)f(of)h(the)g(units)f(v)m(ery)h(frequen)m(tly)g(used)f(in)g
 (visible)150 4473 y(sp)s(ectroscop)m(y)-8 b(,)32 b(microns:)390
-4632 y Fy(\045)47 b(ncks)g(-C)g(-H)g(-v)h(wvl)f(-d)g(wvl,"0.4)e
+4632 y Fz(\045)47 b(ncks)g(-C)g(-H)g(-v)h(wvl)f(-d)g(wvl,"0.4)e
 (micron","0.7)g(micron")h(in.nc)390 4742 y(wvl[0]=5e-07)e(meter)150
-4902 y FD(The)36 b(h)m(yp)s(erslab)g(returns)g(the)h(correct)h(v)-5
-b(alues)37 b(b)s(ecause)g(the)g Fz(wvl)j FD(v)-5 b(ariable)38
+4902 y FE(The)36 b(h)m(yp)s(erslab)g(returns)g(the)h(correct)h(v)-5
+b(alues)37 b(b)s(ecause)g(the)g FA(wvl)j FE(v)-5 b(ariable)38
 b(is)f(stored)g(on)g(disk)f(with)150 5011 y(a)45 b(length)h(dimension)e
-(that)h(UDUnits)h(recognizes)h(in)d(the)h Fy(units)f
-FD(attribute.)85 b(The)44 b(automagical)150 5121 y(algorithm)h(that)f
+(that)h(UDUnits)h(recognizes)h(in)d(the)h Fz(units)f
+FE(attribute.)85 b(The)44 b(automagical)150 5121 y(algorithm)h(that)f
 (implemen)m(ts)g(this)g(functionalit)m(y)h(is)f(w)m(orth)g(describing)f
 (since)h(understanding)e(it)150 5230 y(helps)36 b(one)h(a)m(v)m(oid)i
 (some)e(p)s(oten)m(tial)h(pitfalls.)61 b(First,)39 b(the)e(user)f
@@ -17457,49 +17685,49 @@ FD(attribute.)85 b(The)44 b(automagical)150 5121 y(algorithm)h(that)f
 (b)m(y)g(a)g(simple)f(space)h(from)f(the)h(n)m(umerical)g(v)-5
 b(alues)25 b(of)p eop end
 %%Page: 67 73
-TeXDict begin 67 72 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(67)150 299 y(the)29
+TeXDict begin 67 72 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(67)150 299 y(the)29
 b(h)m(yp)s(erslab)g(limits.)41 b(She)28 b(encloses)j(eac)m(h)f(co)s
 (ordinate)g(sp)s(eci\014cations)g(in)f(quotes)h(so)f(that)h(the)g
-(shell)150 408 y(do)s(es)h(not)g(break)g(the)g Fo(value-sp)-5
-b(ac)g(e-unit)40 b FD(string)31 b(in)m(to)h(separate)g(argumen)m(ts)g
-(b)s(efore)e(passing)h(them)g(to)150 518 y FC(NCO)p FD(.)57
-b(Double)36 b(quotes)h(\()p Fy(")p Fn(foo)p Fy(")p FD(\))e(or)h(single)
-g(quotes)h(\()p Fn('foo')p FD(\))e(are)h(equally)h(v)-5
+(shell)150 408 y(do)s(es)h(not)g(break)g(the)g Fp(value-sp)-5
+b(ac)g(e-unit)40 b FE(string)31 b(in)m(to)h(separate)g(argumen)m(ts)g
+(b)s(efore)e(passing)h(them)g(to)150 518 y FD(NCO)p FE(.)57
+b(Double)36 b(quotes)h(\()p Fz(")p Fo(foo)p Fz(")p FE(\))e(or)h(single)
+g(quotes)h(\()p Fo('foo')p FE(\))e(are)h(equally)h(v)-5
 b(alid)36 b(for)g(this)f(purp)s(ose.)150 628 y(Second,)23
-b FC(NCO)f FD(recognizes)h(that)f(units)f(translation)i(is)f(requested)
+b FD(NCO)f FE(recognizes)h(that)f(units)f(translation)i(is)f(requested)
 f(b)s(ecause)h(eac)m(h)h(h)m(yp)s(erslab)d(argumen)m(t)150
 737 y(con)m(tains)31 b(text)f(c)m(haracters)h(and)e(non-initial)i
-(spaces.)41 b(Third,)28 b FC(NCO)i FD(determines)f(whether)g(the)h
-Fz(wvl)j FD(is)150 847 y(dimensioned)24 b(with)h(a)g(co)s(ordinate)h(v)
--5 b(ariable)25 b(that)h(has)e(a)i Fy(units)d FD(attribute.)40
-b(In)24 b(this)h(case,)i Fz(wvl)h FD(itself)e(is)150
+(spaces.)41 b(Third,)28 b FD(NCO)i FE(determines)f(whether)g(the)h
+FA(wvl)j FE(is)150 847 y(dimensioned)24 b(with)h(a)g(co)s(ordinate)h(v)
+-5 b(ariable)25 b(that)h(has)e(a)i Fz(units)d FE(attribute.)40
+b(In)24 b(this)h(case,)i FA(wvl)h FE(itself)e(is)150
 956 y(a)31 b(co)s(ordinate)g(v)-5 b(ariable.)41 b(The)30
-b(v)-5 b(alue)31 b(of)f(its)h Fy(units)d FD(attribute)j(is)g
-Fy(meter)p FD(.)39 b(Th)m(us)29 b Fz(wvl)34 b FD(passes)c(this)g(test)
+b(v)-5 b(alue)31 b(of)f(its)h Fz(units)d FE(attribute)j(is)g
+Fz(meter)p FE(.)39 b(Th)m(us)29 b FA(wvl)34 b FE(passes)c(this)g(test)
 150 1066 y(so)25 b(UDUnits)g(con)m(v)m(ersion)h(is)e(attempted.)40
 b(If)24 b(the)h(co)s(ordinate)g(asso)s(ciated)h(with)e(the)h(v)-5
 b(ariable)25 b(do)s(es)g(not)150 1176 y(con)m(tain)31
-b(a)f Fy(units)e FD(attribute,)j(then)e FC(NCO)g FD(ab)s(orts.)40
-b(F)-8 b(ourth,)30 b FC(NCO)g FD(passes)f(the)h(sp)s(eci\014ed)f(and)f
+b(a)f Fz(units)e FE(attribute,)j(then)e FD(NCO)g FE(ab)s(orts.)40
+b(F)-8 b(ourth,)30 b FD(NCO)g FE(passes)f(the)h(sp)s(eci\014ed)f(and)f
 (desired)150 1285 y(dimension)34 b(strings)h(\(microns)g(are)g(sp)s
 (eci\014ed)f(b)m(y)h(the)g(user,)h(meters)f(are)g(required)f(b)m(y)h
-FC(NCO)p FD(\))g(to)h(the)150 1395 y(UDUnits)e(library)-8
+FD(NCO)p FE(\))g(to)h(the)150 1395 y(UDUnits)e(library)-8
 b(.)51 b(Fifth,)35 b(the)f(UDUnits)g(library)g(that)g(these)g
 (dimension)f(are)h(commensurate)h(and)150 1504 y(it)30
 b(returns)e(the)i(appropriate)f(linear)h(scaling)g(factors)h(to)f(con)m
-(v)m(ert)h(from)e(microns)g(to)h(meters)g(to)g FC(NCO)p
-FD(.)150 1614 y(If)d(the)g(units)g(are)g(incommensurate)h(\(i.e.,)h
+(v)m(ert)h(from)e(microns)g(to)h(meters)g(to)g FD(NCO)p
+FE(.)150 1614 y(If)d(the)g(units)g(are)g(incommensurate)h(\(i.e.,)h
 (not)f(expressible)f(in)g(the)g(same)h(fundamen)m(tal)f(MKS)g(units\),)
 150 1724 y(or)41 b(are)h(not)f(listed)h(in)f(the)g(UDUnits)h(database,)
 j(then)c(NCO)f(ab)s(orts)h(since)g(it)h(cannot)g(determine)150
 1833 y(the)37 b(user's)f(in)m(ten)m(t.)61 b(Finally)-8
-b(,)39 b FC(NCO)e FD(uses)f(the)h(scaling)h(information)f(to)g(con)m(v)
+b(,)39 b FD(NCO)e FE(uses)f(the)h(scaling)h(information)f(to)g(con)m(v)
 m(ert)h(the)f(user-sp)s(eci\014ed)150 1943 y(h)m(yp)s(erslab)22
 b(limits)i(in)m(to)h(the)e(same)h(ph)m(ysical)g(dimensions)e(as)i
 (those)g(of)f(the)h(corresp)s(onding)e(co)s(oridinate)150
 2052 y(v)-5 b(ariable)36 b(on)f(disk.)56 b(A)m(t)36 b(this)f(p)s(oin)m
-(t,)i FC(NCO)e FD(can)h(p)s(erform)e(a)i(co)s(ordinate)g(h)m(yp)s
+(t,)i FD(NCO)e FE(can)h(p)s(erform)e(a)i(co)s(ordinate)g(h)m(yp)s
 (erslab)e(using)h(the)h(same)150 2162 y(algorithm)31
 b(as)g(if)f(the)h(user)f(had)f(sp)s(eci\014ed)h(the)h(h)m(yp)s(erslab)e
 (without)h(requesting)h(units)f(con)m(v)m(ersion.)275
@@ -17510,11 +17738,11 @@ g(time)h(co)s(ordinates)f(sho)m(ws)g(a)g(more)g(p)s(o)m(w-)150
 (all)150 2582 y(data)29 b(b)s(et)m(w)m(een)f(4)j(PM)d(and)f(7)k(PM)d
 (on)f(Decem)m(b)s(er)32 b(8,)d(1999,)h(from)d(a)i(v)-5
 b(ariable)28 b(whose)g(time)h(dimension)150 2692 y(is)h(hours)g(since)g
-(the)h(y)m(ear)g(1900:)390 2892 y Fy(\045)47 b(ncks)g(-u)g(-H)g(-C)h
+(the)h(y)m(ear)g(1900:)390 2892 y Fz(\045)47 b(ncks)g(-u)g(-H)g(-C)h
 (-v)f(time_udunits)d(-d)j(time_udunits,"1999-12-08)42
 b(\\)485 3002 y(16:00:0.0","1999-12-08)g(19:00:0.0")j(in.nc)390
 3112 y(time_udunits[1]=876018)d(hours)k(since)g(1900-01-01)f(00:00:0.0)
-150 3313 y FD(Here,)23 b(the)e(user)f(in)m(v)m(ok)m(es)i(the)f(stride)g
+150 3313 y FE(Here,)23 b(the)e(user)f(in)m(v)m(ok)m(es)i(the)f(stride)g
 (\(see)g(Section)g(3.16)i([Stride],)f(page)g(57\))f(capabilit)m(y)i(to)
 e(obtain)g(ev)m(ery)150 3422 y(other)31 b(timeslice.)42
 b(This)30 b(is)g(p)s(ossible)g(b)s(ecause)h(the)f(UDUnits)h(feature)g
@@ -17525,139 +17753,139 @@ b(This)30 b(is)g(p)s(ossible)g(b)s(ecause)h(the)f(UDUnits)h(feature)g
 (ort)e(h)m(yp)s(erslabbing.)61 b(The)38 b(follo)m(wing)h(example)f(sho)
 m(ws)150 3751 y(ho)m(w)30 b(one)h(migh)m(t)g(a)m(v)m(erage)i(data)e(in)
 f(a)h(time)g(p)s(erio)s(d)e(spread)h(across)h(m)m(ultiple)g(input)e
-(\014les)390 3952 y Fy(ncra)47 b(-d)g(time,"1939-09-09)c
+(\014les)390 3952 y Fz(ncra)47 b(-d)g(time,"1939-09-09)c
 (12:00:0.0","1945-05-08)f(00:00:0.0")j(\\)485 4061 y(in1.nc)i(in2.nc)f
-(in3.nc)g(out.nc)150 4262 y FD(Note)34 b(that)g(there)g(is)f(no)g
+(in3.nc)g(out.nc)150 4262 y FE(Note)34 b(that)g(there)g(is)f(no)g
 (excess)h(whitespace)g(b)s(efore)e(or)h(after)h(the)f(individual)g
-(elemen)m(ts)h(of)g(the)f(`)p Fy(-d)p FD(')150 4372 y(argumen)m(t.)40
+(elemen)m(ts)h(of)g(the)f(`)p Fz(-d)p FE(')150 4372 y(argumen)m(t.)40
 b(This)27 b(is)g(imp)s(ortan)m(t)g(since,)i(as)e(far)h(as)f(the)h
-(shell)f(kno)m(ws,)h(`)p Fy(-d)p FD(')f(tak)m(es)i(only)e
-Fo(one)35 b FD(command-)150 4482 y(line)26 b(argumen)m(t.)39
+(shell)f(kno)m(ws,)h(`)p Fz(-d)p FE(')f(tak)m(es)i(only)e
+Fp(one)35 b FE(command-)150 4482 y(line)26 b(argumen)m(t.)39
 b(P)m(arsing)26 b(this)f(argumen)m(t)g(in)m(to)i(its)e(comp)s(onen)m(t)
-h Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p Fn(max)p Fy(][,[)p
-Fn(stri)o(de)p Fy(]])o(])150 4591 y FD(elemen)m(ts)47
+h Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p Fo(max)p Fz(][,[)p
+Fo(stri)o(de)p Fz(]])o(])150 4591 y FE(elemen)m(ts)47
 b(\(see)f(Section)g(3.15)h([Hyp)s(erslabs],)i(page)d(55\))h(is)e(the)h
-(job)f(of)g FC(NCO)p FD(.)86 b(When)45 b(unquoted)150
+(job)f(of)g FD(NCO)p FE(.)86 b(When)45 b(unquoted)150
 4701 y(whitespace)40 b(is)f(presen)m(t)g(b)s(et)m(w)m(een)h(these)g
-(elemen)m(ts,)j(the)c(shell)h(passes)f FC(NCO)g FD(arugmen)m(t)g
+(elemen)m(ts,)j(the)c(shell)h(passes)f FD(NCO)g FE(arugmen)m(t)g
 (fragmen)m(ts)150 4810 y(whic)m(h)30 b(will)h(not)f(parse)h(as)f(in)m
-(tended.)275 5011 y FC(NCO)h FD(implemen)m(ted)h(supp)s(ort)d(for)i
+(tended.)275 5011 y FD(NCO)h FE(implemen)m(ted)h(supp)s(ort)d(for)i
 (the)h(UDUnits2)g(library)f(with)h(v)m(ersion)f(3.9.2)j(\(August,)e
-(2007\).)150 5121 y(The)53 b(UDUnits2)i(\()p Fy(http:)19
+(2007\).)150 5121 y(The)53 b(UDUnits2)i(\()p Fz(http:)19
 b(/)g(/)c(www)j(.)d(unidata)i(.)e(ucar)i(.)e(edu)j(/)d(software)i(/)e
 (udunits)i(/)e(udunits-2)h(/)150 5230 y(udunits2)7 b(.)f(html)p
-FD(\))36 b(pac)m(k)-5 b(age)42 b(supp)s(orts)37 b(non-ASCI)s(I)h(c)m
+FE(\))36 b(pac)m(k)-5 b(age)42 b(supp)s(orts)37 b(non-ASCI)s(I)h(c)m
 (haracters)j(and)e(logarithmic)i(units.)67 b(W)-8 b(e)41
 b(are)150 5340 y(in)m(terested)31 b(in)f(user-feedbac)m(k)h(on)g(these)
 f(features.)p eop end
 %%Page: 68 74
-TeXDict begin 68 73 bop 150 -116 a FD(68)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(One)35 b(asp)s(ect)h(that)h(deserv)
+TeXDict begin 68 73 bop 150 -116 a FE(68)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(One)35 b(asp)s(ect)h(that)h(deserv)
 m(es)f(men)m(tion)g(is)g(that)g(UDUnits,)j(and)c(th)m(us)g
-FC(NCO)p FD(,)i(supp)s(orts)d(run-time)150 408 y(de\014nition)42
+FD(NCO)p FE(,)i(supp)s(orts)d(run-time)150 408 y(de\014nition)42
 b(of)g(the)h(lo)s(cation)h(of)e(the)h(relev)-5 b(an)m(t)43
 b(UDUnits)g(databases.)78 b(With)42 b(UDUnits)h(v)m(ersion)31
 b(1)q(,)150 518 y(users)36 b(ma)m(y)h(sp)s(ecify)f(the)g(directory)h
 (whic)m(h)g(con)m(tains)g(the)g(UDUnits)g(database,)i
-Fy(udunits.dat)p FD(,)c(via)150 628 y(the)g Fy(UDUNITS_PATH)d
-FD(en)m(vironmen)m(t)k(v)-5 b(ariable.)57 b(With)35 b(UDUnits)h(v)m
+Fz(udunits.dat)p FE(,)c(via)150 628 y(the)g Fz(UDUNITS_PATH)d
+FE(en)m(vironmen)m(t)k(v)-5 b(ariable.)57 b(With)35 b(UDUnits)h(v)m
 (ersion)31 b(2)q(,)36 b(users)f(ma)m(y)h(sp)s(ecify)f(the)150
-737 y(UDUnits)27 b(database)h(\014le)f(itself,)h Fy(udunits2.xml)p
-FD(,)c(via)k(the)e Fy(UDUNITS2_XML_PATH)c FD(en)m(vironmen)m(t)27
-b(v)-5 b(ari-)150 847 y(able.)390 1010 y Fy(#)47 b(UDUnits1)390
+737 y(UDUnits)27 b(database)h(\014le)f(itself,)h Fz(udunits2.xml)p
+FE(,)c(via)k(the)e Fz(UDUNITS2_XML_PATH)c FE(en)m(vironmen)m(t)27
+b(v)-5 b(ari-)150 847 y(able.)390 1010 y Fz(#)47 b(UDUnits1)390
 1120 y(export)f(UDUNITS_PATH='/unusual/lo)o(cat)o(ion/)o(shar)o(e/u)o
 (duni)o(ts')390 1230 y(#)h(UDUnits2)390 1339 y(export)f
 (UDUNITS2_XML_PATH='/unusu)o(al/)o(loca)o(tion)o(/sh)o(are/)o(udun)o
-(its)o(/udu)o(nits)o(2.x)o(ml')275 1503 y FD(This)20
+(its)o(/udu)o(nits)o(2.x)o(ml')275 1503 y FE(This)20
 b(run-time)h(\015exibilit)m(y)h(can)g(enable)f(the)h(full)f
 (functionalit)m(y)h(of)g(pre-built)e(binaries)h(on)g(mac)m(hines)150
 1613 y(with)30 b(libraries)h(in)f(di\013eren)m(t)g(lo)s(cations.)275
-1776 y(The)24 b(UDUnits)i(\()p Fy(http://www.unidata.ucar.edu)o(/pac)o
-(kag)o(es/u)o(duni)o(ts)p FD(\))19 b(pac)m(k)-5 b(age)28
+1776 y(The)24 b(UDUnits)i(\()p Fz(http://www.unidata.ucar.edu)o(/pac)o
+(kag)o(es/u)o(duni)o(ts)p FE(\))19 b(pac)m(k)-5 b(age)28
 b(do)s(cumen-)150 1886 y(tation)35 b(describ)s(es)e(the)g(supp)s(orted)
 f(formats)i(of)f(time)h(dimensions.)50 b(Among)34 b(the)f(metadata)i
 (con)m(v)m(en-)150 1995 y(tions)24 b(that)g(adhere)f(to)i(these)f
 (formats)f(are)h(the)g(Climate)h(and)e(F)-8 b(orecast)26
-b(\(CF\))e(Con)m(v)m(en)m(tions)h(\()p Fy(http://)150
-2105 y(cf-pcmdi)14 b(.)e(llnl)i(.)e(gov)p FD(\))49 b(and)g(the)h(Co)s
+b(\(CF\))e(Con)m(v)m(en)m(tions)h(\()p Fz(http://)150
+2105 y(cf-pcmdi)14 b(.)e(llnl)i(.)e(gov)p FE(\))49 b(and)g(the)h(Co)s
 (op)s(erativ)m(e)h(Ocean/A)m(tmosphere)g(Researc)m(h)f(Data)h(Service)
 150 2215 y(\(CO)m(ARDS\))22 b(Con)m(v)m(en)m(tions)g(\()p
-Fy(http://ferret.wrc.noaa.gov/)o(noaa)o(_co)o(op/c)o(oop_)o(cdf)o(_pro)
-o(file)o(.)150 2324 y(html)p FD(\).)52 b(The)33 b(follo)m(wing)j(`)p
-Fy(-d)30 b(arguments)p FD(')i(extract)k(the)e(same)h(data)g(using)f
+Fz(http://ferret.wrc.noaa.gov/)o(noaa)o(_co)o(op/c)o(oop_)o(cdf)o(_pro)
+o(file)o(.)150 2324 y(html)p FE(\).)52 b(The)33 b(follo)m(wing)j(`)p
+Fz(-d)30 b(arguments)p FE(')i(extract)k(the)e(same)h(data)g(using)f
 (commonly)g(encoun)m(tered)150 2434 y(time)d(dimension)f(formats:)390
-2597 y Fy(-d)47 b(time,'1918-11-11)d(00:00:0.0','1939-09-09)d
+2597 y Fz(-d)47 b(time,'1918-11-11)d(00:00:0.0','1939-09-09)d
 (00:00:0.0')390 2707 y(-d)47 b(time,'1918-11-11)d
 (00:00:0.0','1939-09-09)d(00:00:0.0')390 2817 y(-d)47
 b(time,'1918-11-11T00:00:0.)o(0Z',)o('19)o(39-0)o(9-09)o(T00)o(:00:)o
 (0.0Z)o(')390 2926 y(-d)g(time,'1918-11-11','1939-0)o(9-09)o(')390
 3036 y(-d)g(time,'1918-11-11','1939-9)o(-9')150 3199
-y FD(All)30 b(of)f(these)h(formats)f(include)g(at)h(least)g(one)g(dash)
-e Fn(-)h FD(in)g(a)g(non-leading)h(c)m(haracter)h(p)s(osition)e(\(a)h
+y FE(All)30 b(of)f(these)h(formats)f(include)g(at)h(least)g(one)g(dash)
+e Fo(-)h FE(in)g(a)g(non-leading)h(c)m(haracter)h(p)s(osition)e(\(a)h
 (dash)150 3309 y(in)37 b(a)h(leading)h(c)m(haracter)g(p)s(osition)e(is)
-h(a)g(negativ)m(e)i(sign\).)62 b FC(NCO)38 b FD(assumes)f(that)h(a)g
+h(a)g(negativ)m(e)i(sign\).)62 b FD(NCO)38 b FE(assumes)f(that)h(a)g
 (space,)i(colon,)h(or)150 3419 y(non-leading)34 b(dash)f(in)g(a)h
 (limit)g(string)g(indicates)g(that)g(a)g(UDUnits)g(units)f(con)m(v)m
 (ersion)i(is)f(requested.)150 3528 y(Some)j(date)h(formats)g(lik)m(e)g
 (YYYYMMDD)h(that)f(are)g(v)-5 b(alid)37 b(in)g(UDUnits)h(are)g(am)m
-(biguous)f(to)h FC(NCO)150 3638 y FD(b)s(ecause)31 b(it)g(cannot)h
+(biguous)f(to)h FD(NCO)150 3638 y FE(b)s(ecause)31 b(it)g(cannot)h
 (distinguish)e(a)h(purely)f(n)m(umerical)i(date)f(\(i.e.,)i(no)e
 (dashes)f(or)h(text)h(c)m(haracters)g(in)150 3747 y(it\))f(from)f(a)h
 (co)s(ordinate)g(or)g(index)e(v)-5 b(alue:)390 3911 y
-Fy(-d)47 b(time,1918-11-11)d(#)j(Interpreted)e(as)i(the)g(date)g
+Fz(-d)47 b(time,1918-11-11)d(#)j(Interpreted)e(as)i(the)g(date)g
 (November)e(11,)i(1918)390 4021 y(-d)g(time,19181111)140
 b(#)47 b(Interpreted)e(as)i(time-dimension)d(index)i(19181111)390
 4130 y(-d)h(time,19181111.)92 b(#)47 b(Interpreted)e(as)i
-(time-coordinate)d(value)i(19181111.0)275 4294 y FD(Hence,)31
+(time-coordinate)d(value)i(19181111.0)275 4294 y FE(Hence,)31
 b(use)f(the)h(YYYY-MM-DD)i(format)e(rather)f(than)g(YYYYMMDD)i(for)f
 (dates.)150 4458 y(As)26 b(of)f(v)m(ersion)h(4.0.0)i(\(Jan)m(uary)-8
-b(,)27 b(2010\),)i FC(NCO)c FD(supp)s(orts)f(some)i(calendar)g
+b(,)27 b(2010\),)i FD(NCO)c FE(supp)s(orts)f(some)i(calendar)g
 (attributes)g(sp)s(eci\014ed)f(b)m(y)h(the)150 4567 y
-FC(CF)k FD(con)m(v)m(en)m(tions.)150 4760 y Fq(Supp)s(orted)f(t)m(yp)s
-(es:)630 4870 y Fy(")p FD(365)p 819 4870 28 4 v 41 w(da)m(y)p
-Fy(")p FD(/)p Fy(")p FD(noleap)p Fy(")p FD(,)i Fy(")p
-FD(360)p 1686 4870 V 41 w(da)m(y)p Fy(")p FD(,)g Fy(")p
-FD(gregorian)p Fy(")p FD(,)g Fy(")p FD(standard)p Fy(")150
-5038 y Fq(Unsupp)s(orted)d(t)m(yp)s(es:)630 5147 y Fy(")p
-FD(366)p 819 5147 V 41 w(da)m(y)p Fy(")p FD(/)p Fy(")p
-FD(all)p 1237 5147 V 41 w(leap)p Fy(")p FD(,)p Fy(")p
-FD(proleptic)p 1908 5147 V 41 w(gregorian)p Fy(")p FD(,)p
-Fy(")p FD(julian)p Fy(")p FD(,)p Fy(")p FD(none)p Fy(")275
-5340 y FD(Unsupp)s(orted)g(t)m(yp)s(es)i(default)h(to)g(mixed)f
+FD(CF)k FE(con)m(v)m(en)m(tions.)150 4760 y Fr(Supp)s(orted)f(t)m(yp)s
+(es:)630 4870 y Fz(")p FE(365)p 819 4870 28 4 v 41 w(da)m(y)p
+Fz(")p FE(/)p Fz(")p FE(noleap)p Fz(")p FE(,)i Fz(")p
+FE(360)p 1686 4870 V 41 w(da)m(y)p Fz(")p FE(,)g Fz(")p
+FE(gregorian)p Fz(")p FE(,)g Fz(")p FE(standard)p Fz(")150
+5038 y Fr(Unsupp)s(orted)d(t)m(yp)s(es:)630 5147 y Fz(")p
+FE(366)p 819 5147 V 41 w(da)m(y)p Fz(")p FE(/)p Fz(")p
+FE(all)p 1237 5147 V 41 w(leap)p Fz(")p FE(,)p Fz(")p
+FE(proleptic)p 1908 5147 V 41 w(gregorian)p Fz(")p FE(,)p
+Fz(")p FE(julian)p Fz(")p FE(,)p Fz(")p FE(none)p Fz(")275
+5340 y FE(Unsupp)s(orted)g(t)m(yp)s(es)i(default)h(to)g(mixed)f
 (Gregorian/Julian)i(as)e(de\014ned)f(b)m(y)i(UDUnits.)p
 eop end
 %%Page: 69 75
-TeXDict begin 69 74 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(69)150 299 y(An)30 b(Example:)41
-b(Consider)29 b(the)i(follo)m(wing)h(netCDF)f(v)-5 b(ariable)390
-463 y Fy(variables:)485 573 y(double)47 b(lon_cal\(lon_cal\))c(;)581
-682 y(lon_cal:long_name)g(=)k("lon_cal")f(;)581 792 y(lon_cal:units)e
-(=)k("days)e(since)g(1964-2-28)g(0:0:0")g(;)581 901 y(lon_cal:calendar)
-d(=)48 b("365_day")d(;)390 1011 y(data:)485 1121 y(lon_cal)h(=)i
-(1,2,3,4,5,6,7,8,9,10;)275 1285 y FD(`)p Fy(ncks)29 b(-v)h(lon_cal)e
-(-d)i(lon_cal,'1964-3-1)c(0:00:0.0','1964-3-4)f(00:00:0.0')p
-FD(')70 b(results)150 1394 y(in)30 b Fy(lon_cal=1,2,3,4)p
-FD(.)275 1559 y(netCDF)j(v)-5 b(ariables)34 b(should)e(alw)m(a)m(ys)j
-(b)s(e)d(stored)h(with)g(MKS)g(\(i.e.,)i(Go)s(d's\))e(units,)h(so)f
-(that)h(appli-)150 1668 y(cation)g(programs)f(ma)m(y)g(assume)g(MKS)f
-(dimensions)g(apply)g(to)i(all)f(input)f(v)-5 b(ariables.)49
-b(The)32 b(UDUnits)150 1778 y(feature)g(is)g(in)m(tended)f(to)i
-(alleviate)h(some)e(of)g(the)g FC(NCO)f FD(user's)g(pain)g(when)g
-(handling)g(MKS)g(units.)44 b(It)150 1887 y(connects)38
-b(users)e(who)g(think)h(in)f(h)m(uman-friendly)g(units)g(\(e.g.,)k
-(miles,)g(millibars,)e(da)m(ys\))g(to)f(extract)150 1997
-y(data)h(whic)m(h)g(are)g(alw)m(a)m(ys)h(stored)e(in)h(Go)s(d's)f
-(units,)i(MKS)e(\(e.g.,)42 b(meters,)e(P)m(ascals,)h(seconds\).)62
-b(The)150 2107 y(feature)35 b(is)f(not)h(in)m(tended)f(to)h(encourage)h
-(writers)e(to)h(store)g(data)g(in)f(esoteric)i(units)e(\(e.g.,)j
-(furlongs,)150 2216 y(p)s(ounds)28 b(p)s(er)i(square)g(inc)m(h,)g
-(fortnigh)m(ts\).)150 2463 y FB(3.23)68 b(Rebasing)46
-b(Time)g(Co)t(ordinate)150 2597 y Fk(\013)p 200 2597
-3554 4 v 3553 w(\010)p 150 2867 4 223 v 178 2733 a FD(Av)-5
-b(ailabilit)m(y:)43 b Fy(ncra)p FD(,)30 b Fy(ncrcat)f
-FD(Short)g(options:)41 b(None)p 3803 2867 V 150 2919
-a Fk(\012)p 200 2919 3554 4 v 3553 w(\011)275 3094 y
-FD(Time)22 b(rebasing)g(is)g(in)m(v)m(ok)m(ed)h(when)e(n)m(umerous)g
+TeXDict begin 69 74 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(69)150 299 y(An)30
+b(Example:)41 b(Consider)29 b(the)i(follo)m(wing)h(netCDF)f(v)-5
+b(ariable)390 463 y Fz(variables:)485 573 y(double)47
+b(lon_cal\(lon_cal\))c(;)581 682 y(lon_cal:long_name)g(=)k("lon_cal")f
+(;)581 792 y(lon_cal:units)e(=)k("days)e(since)g(1964-2-28)g(0:0:0")g
+(;)581 901 y(lon_cal:calendar)d(=)48 b("365_day")d(;)390
+1011 y(data:)485 1121 y(lon_cal)h(=)i(1,2,3,4,5,6,7,8,9,10;)275
+1285 y FE(`)p Fz(ncks)29 b(-v)h(lon_cal)e(-d)i(lon_cal,'1964-3-1)c
+(0:00:0.0','1964-3-4)f(00:00:0.0')p FE(')70 b(results)150
+1394 y(in)30 b Fz(lon_cal=1,2,3,4)p FE(.)275 1559 y(netCDF)j(v)-5
+b(ariables)34 b(should)e(alw)m(a)m(ys)j(b)s(e)d(stored)h(with)g(MKS)g
+(\(i.e.,)i(Go)s(d's\))e(units,)h(so)f(that)h(appli-)150
+1668 y(cation)g(programs)f(ma)m(y)g(assume)g(MKS)f(dimensions)g(apply)g
+(to)i(all)f(input)f(v)-5 b(ariables.)49 b(The)32 b(UDUnits)150
+1778 y(feature)g(is)g(in)m(tended)f(to)i(alleviate)h(some)e(of)g(the)g
+FD(NCO)f FE(user's)g(pain)g(when)g(handling)g(MKS)g(units.)44
+b(It)150 1887 y(connects)38 b(users)e(who)g(think)h(in)f(h)m
+(uman-friendly)g(units)g(\(e.g.,)k(miles,)g(millibars,)e(da)m(ys\))g
+(to)f(extract)150 1997 y(data)h(whic)m(h)g(are)g(alw)m(a)m(ys)h(stored)
+e(in)h(Go)s(d's)f(units,)i(MKS)e(\(e.g.,)42 b(meters,)e(P)m(ascals,)h
+(seconds\).)62 b(The)150 2107 y(feature)35 b(is)f(not)h(in)m(tended)f
+(to)h(encourage)h(writers)e(to)h(store)g(data)g(in)f(esoteric)i(units)e
+(\(e.g.,)j(furlongs,)150 2216 y(p)s(ounds)28 b(p)s(er)i(square)g(inc)m
+(h,)g(fortnigh)m(ts\).)150 2463 y FC(3.23)68 b(Rebasing)46
+b(Time)g(Co)t(ordinate)150 2597 y Fl(\013)p 200 2597
+3554 4 v 3553 w(\010)p 150 2867 4 223 v 178 2733 a FE(Av)-5
+b(ailabilit)m(y:)43 b Fz(ncra)p FE(,)30 b Fz(ncrcat)f
+FE(Short)g(options:)41 b(None)p 3803 2867 V 150 2919
+a Fl(\012)p 200 2919 3554 4 v 3553 w(\011)275 3094 y
+FE(Time)22 b(rebasing)g(is)g(in)m(v)m(ok)m(ed)h(when)e(n)m(umerous)g
 (\014les)h(share)g(a)g(common)h(record)f(co)s(ordinate,)i(and)e(the)150
 3204 y(record)28 b(co)s(ordinate)h(units)f(c)m(hange)h(among)g(input)e
 (\014les.)40 b(The)28 b(rebasing)g(is)g(p)s(erformed)f(automatically)
@@ -17669,7 +17897,7 @@ b(and)f(times)g(are)h(recorded)f(in)g(units)f(of)h(a)h
 y(c)m(hanges)36 b(from)e(\014le)h(to)g(\014le.)54 b(Since)34
 b(the)h(output)g(\014le)f(can)h(ha)m(v)m(e)h(only)f(one)g(unit)f
 (\(i.e.,)k(one)d(basetime\))150 3642 y(for)30 b(the)g(record)g(co)s
-(ordinate,)i FC(NCO)p FD(,)e(in)g(suc)m(h)g(cases,)h(c)m(ho)s(oses)g
+(ordinate,)i FD(NCO)p FE(,)e(in)g(suc)m(h)g(cases,)h(c)m(ho)s(oses)g
 (the)f(units)g(of)g(the)h(\014rst)e(input)g(\014le)i(to)g(b)s(e)150
 3751 y(the)d(units)g(of)g(the)h(output)e(\014le.)40 b(It)29
 b(is)f(necessary)g(to)h(\\rebase")h(all)f(the)f(input)f(record)h(v)-5
@@ -17679,11 +17907,11 @@ b(alues.)275 4025 y(F)d(or)32 b(example)g(supp)s(ose)d(the)j(time)g(co)
 s(ordinate)g(is)f(in)g(hours)g(and)f(eac)m(h)j(da)m(y)f(in)f(Jan)m
 (uary)f(is)i(stored)150 4135 y(in)j(its)h(o)m(wn)f(daily)h(\014le.)56
 b(Eac)m(h)36 b(daily)g(\014le)g(records)f(the)h(temp)s(erature)f(v)-5
-b(ariable)36 b Fy(tpt\(time\))d FD(with)i(an)150 4244
-y(\(unadjusted\))f Fy(time)h FD(co)s(ordinate)h(v)-5
+b(ariable)36 b Fz(tpt\(time\))d FE(with)i(an)150 4244
+y(\(unadjusted\))f Fz(time)h FE(co)s(ordinate)h(v)-5
 b(alue)36 b(b)s(et)m(w)m(een)g(0{23)h(hours,)f(and)f(uses)g(the)g
-Fy(units)f FD(attribute)i(to)150 4354 y(adv)-5 b(ance)31
-b(the)g(base)f(time:)390 4518 y Fy(file01.nc)45 b(time:units="hours)e
+Fz(units)f FE(attribute)i(to)150 4354 y(adv)-5 b(ance)31
+b(the)g(base)f(time:)390 4518 y Fz(file01.nc)45 b(time:units="hours)e
 (since)k(1990-1-1")390 4628 y(file02.nc)e(time:units="hours)e(since)k
 (1990-1-2")390 4737 y(...)390 4847 y(file31.nc)e(time:units="hours)e
 (since)k(1990-1-31")390 5011 y(//)g(Mean)g(noontime)e(temperature)g(in)
@@ -17691,8 +17919,8 @@ i(January)390 5121 y(ncra)g(-v)g(tpt)g(-d)g(time,"1990-1-1)d
 (12:00:00","1990-1-31)e(23:59:59",24)j(\\)676 5230 y(file??.nc)h
 (noon.nc)p eop end
 %%Page: 70 76
-TeXDict begin 70 75 bop 150 -116 a FD(70)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(//)47 b(Concatenate)e(day2)i
+TeXDict begin 70 75 bop 150 -116 a FE(70)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(//)47 b(Concatenate)e(day2)i
 (noon)f(through)g(day3)h(noon)f(records)390 408 y(ncrcat)g(-v)h(tpt)g
 (-d)g(time,"1990-1-2)d(12:00:00","1990-1-3)f(11:59:59")i(\\)676
 518 y(file01.nc)h(file02.nc)f(file03.nc)g(noon.nc)390
@@ -17708,19 +17936,19 @@ h(in)g("file01.nc")390 847 y(time=36,)f(37,)g(38,)h(39,)g(40,)g(41,)g
 390 1724 y(time)f(=)g(12,)g(13,)g(14,)g(15,)g(16,)g(17,)g(18,)f(19,)h
 (20,)g(21,)g(22,)g(23,)g(24,)g(25,)g(\\)629 1833 y(26,)g(27,)f(28,)h
 (29,)g(30,)g(31,)g(32,)g(33,)g(34,)g(35)g(;)275 2005
-y FD(As)28 b(of)g FC(NCO)g FD(v)m(ersion)h(4.2.1)h(\(August,)g(2012\),)
-h FC(NCO)d FD(automatically)j(rebases)d(not)h(only)f(the)h(record)150
-2115 y(co)s(ordinate)38 b(\()p Fy(time)p FD(,)g(here\))g(but)e(also)i
+y FE(As)28 b(of)g FD(NCO)g FE(v)m(ersion)h(4.2.1)h(\(August,)g(2012\),)
+h FD(NCO)d FE(automatically)j(rebases)d(not)h(only)f(the)h(record)150
+2115 y(co)s(ordinate)38 b(\()p Fz(time)p FE(,)g(here\))g(but)e(also)i
 (an)m(y)f(b)s(ounds)e(asso)s(ciated)k(with)e(the)g(record)g(co)s
-(ordinate)h(\(e.g.,)150 2224 y Fy(time_bnds)p FD(\))28
-b(\(see)k(Section)f(3.37)h([CF)e(Con)m(v)m(en)m(tions],)i(page)f(99\).)
-150 2494 y FB(3.24)68 b(Multiple)46 b(Record)f(Dimensions)150
-2628 y Fk(\013)p 200 2628 3554 4 v 3553 w(\010)p 150
-3008 4 333 v 178 2764 a FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncecat)p FD(,)29 b Fy(ncpdq)g FD(Short)h(options:)41
-b(None)178 2874 y(Long)31 b(options:)41 b(`)p Fy(--mrd)p
-FD(')p 3803 3008 V 150 3060 a Fk(\012)p 200 3060 3554
-4 v 3553 w(\011)275 3243 y FD(The)36 b(netCDF3)i(\014le)f(format)h
+(ordinate)h(\(e.g.,)150 2224 y Fz(time_bnds)p FE(\))28
+b(\(see)k(Section)f(3.38)h([CF)e(Con)m(v)m(en)m(tions],)i(page)f
+(110\).)150 2494 y FC(3.24)68 b(Multiple)46 b(Record)f(Dimensions)150
+2628 y Fl(\013)p 200 2628 3554 4 v 3553 w(\010)p 150
+3008 4 333 v 178 2764 a FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncecat)p FE(,)29 b Fz(ncpdq)g FE(Short)h(options:)41
+b(None)178 2874 y(Long)31 b(options:)41 b(`)p Fz(--mrd)p
+FE(')p 3803 3008 V 150 3060 a Fl(\012)p 200 3060 3554
+4 v 3553 w(\011)275 3243 y FE(The)36 b(netCDF3)i(\014le)f(format)h
 (allo)m(ws)g(only)f(one)g(record)g(dimension,)i(and)d(that)i(dimension)
 e(m)m(ust)150 3352 y(b)s(e)29 b(the)g(\014rst)g(dimension)f(\(i.e.,)j
 (the)f(least)g(rapidly)f(v)-5 b(arying)29 b(dimension\))g(of)h(an)m(y)f
@@ -17737,170 +17965,170 @@ y(in)j(an)m(y)g(order.)72 b(This)40 b(additional)i(\015exibilit)m(y)g
 150 3900 y(abandoning)i(the)i(constrain)m(ts)g(that)f(w)m(ould)g(mak)m
 (e)h(op)s(erations)f(b)s(eha)m(v)m(e)h(completely)g(consisten)m(tly)150
 4010 y(b)s(et)m(w)m(een)31 b(netCDF3)g(and)f(netCDF4)i(\014les.)275
-4182 y FC(NCO)e FD(c)m(ho)s(oses,)i(b)m(y)e(default,)i(to)f(imp)s(ose)f
+4182 y FD(NCO)e FE(c)m(ho)s(oses,)i(b)m(y)e(default,)i(to)f(imp)s(ose)f
 (netCDF3-based)i(constrain)m(ts)g(on)e(netCDF4)i(\014les.)42
 b(This)150 4291 y(reduces)33 b(the)g(n)m(um)m(b)s(er)f(of)h(unan)m
 (ticipated)h(consequences)g(and)f(k)m(eeps)g(the)h(op)s(erators)f
 (functioning)g(in)150 4401 y(a)28 b(familiar)h(w)m(a)m(y)-8
-b(.)42 b(Put)27 b(another)i(w)m(a)m(y)-8 b(,)30 b FC(NCO)d
-FD(limits)i(pro)s(duction)e(of)h(additional)h(record)f(dimensions)g(so)
+b(.)42 b(Put)27 b(another)i(w)m(a)m(y)-8 b(,)30 b FD(NCO)d
+FE(limits)i(pro)s(duction)e(of)h(additional)h(record)f(dimensions)g(so)
 150 4510 y(pro)s(cessing)k(netCDF4)h(\014les)f(leads)g(to)h(the)f(same)
 g(results)g(as)g(pro)s(cessing)g(netCDF4)h(\014les.)46
 b(Users)32 b(can)150 4620 y(o)m(v)m(erride)f(this)g(default)f(with)g
-(the)h(`)p Fy(--mrd)p FD(')f(\(or)g(`)p Fy(--multiple_record_dimensio)o
-(n)p FD('\))25 b(switc)m(h,)31 b(whic)m(h)150 4730 y(enables)g(netCDF4)
+(the)h(`)p Fz(--mrd)p FE(')f(\(or)g(`)p Fz(--multiple_record_dimensio)o
+(n)p FE('\))25 b(switc)m(h,)31 b(whic)m(h)150 4730 y(enables)g(netCDF4)
 g(v)-5 b(ariables)31 b(to)g(accum)m(ulate)i(additional)e(record)f
 (dimensions.)275 4902 y(Ho)m(w)c(can)g(additional)g(record)g
 (dimensions)f(b)s(e)g(pro)s(duced?)37 b(Most)27 b(commonly)f
-Fy(ncecat)e FD(\(in)i(record-)150 5011 y(aggregate)40
+Fz(ncecat)e FE(\(in)i(record-)150 5011 y(aggregate)40
 b(mo)s(de\))d(de\014nes)f(a)h(new)f(leading)i(record)f(dimension.)60
 b(In)36 b(netCDF4)i(\014les)f(this)g(b)s(ecomes)150 5121
 y(an)e(additional)g(record)g(dimension)f(unless)g(the)h(original)g
 (record)g(dimension)f(is)h(c)m(hanged)g(to)h(a)f(\014xed)150
 5230 y(dimension)i(\(as)i(m)m(ust)f(b)s(e)f(done)h(in)g(netCDF3)h
-(\014les\).)64 b(Also)38 b(when)f Fy(ncpdq)g FD(reorders)g(dimensions)g
+(\014les\).)64 b(Also)38 b(when)f Fz(ncpdq)g FE(reorders)g(dimensions)g
 (it)150 5340 y(can)g(preserv)m(e)h(the)f(\\record")h(prop)s(ert)m(y)e
-(of)h(record)g(v)-5 b(ariables.)61 b Fy(ncpdq)36 b FD(tries)h(to)h
+(of)h(record)g(v)-5 b(ariables.)61 b Fz(ncpdq)36 b FE(tries)h(to)h
 (de\014ne)e(as)i(a)f(record)p eop end
 %%Page: 71 77
-TeXDict begin 71 76 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(71)150 299 y(dimension)36
+TeXDict begin 71 76 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(71)150 299 y(dimension)36
 b(whic)m(hev)m(er)h(dimension)f(ends)g(up)f(\014rst)h(in)g(a)h(record)g
 (v)-5 b(ariable,)39 b(and,)f(in)e(netCDF4)i(\014les,)150
 408 y(this)24 b(b)s(ecomes)g(an)g(additional)h(record)f(dimension)f
 (unless)h(the)g(original)h(record)f(dimension)f(is)h(c)m(hanged)150
 518 y(to)33 b(a)g(\014xed)e(dimension)h(\(as)h(m)m(ust)f(b)s(e)g(done)g
 (in)g(netCDF3)h(\014les\).)47 b(It)33 b(it)g(easier)g(if)f
-Fy(ncpdq)f FD(and)h Fy(ncecat)150 628 y FD(do)i(not)g(increase)h(the)g
+Fz(ncpdq)f FE(and)h Fz(ncecat)150 628 y FE(do)i(not)g(increase)h(the)g
 (n)m(um)m(b)s(er)e(of)h(record)g(dimensions)f(in)h(a)h(v)-5
 b(ariable)35 b(so)f(that)h(is)f(the)g(default.)53 b(Use)150
-737 y(`)p Fy(--mrd)p FD(')29 b(to)j(o)m(v)m(erride)f(this.)150
-980 y FB(3.25)68 b(Missing)46 b(v)-7 b(alues)150 1113
-y Fk(\013)p 200 1113 3554 4 v 3553 w(\010)p 150 1494
-4 333 v 178 1250 a FD(Av)i(ailabilit)m(y:)43 b Fy(ncap2)p
-FD(,)30 b Fy(ncbo)p FD(,)f Fy(nces)p FD(,)h Fy(ncflint)p
-FD(,)e Fy(ncpdq)p FD(,)h Fy(ncra)p FD(,)h Fy(ncwa)178
-1359 y FD(Short)g(options:)41 b(None)p 3803 1494 V 150
-1545 a Fk(\012)p 200 1545 3554 4 v 3553 w(\011)275 1719
-y FD(The)25 b(phrase)h Fz(missing)g(data)h FD(refers)f(to)g(data)h(p)s
+737 y(`)p Fz(--mrd)p FE(')29 b(to)j(o)m(v)m(erride)f(this.)150
+980 y FC(3.25)68 b(Missing)46 b(v)-7 b(alues)150 1113
+y Fl(\013)p 200 1113 3554 4 v 3553 w(\010)p 150 1494
+4 333 v 178 1250 a FE(Av)i(ailabilit)m(y:)43 b Fz(ncap2)p
+FE(,)30 b Fz(ncbo)p FE(,)f Fz(nces)p FE(,)h Fz(ncflint)p
+FE(,)e Fz(ncpdq)p FE(,)h Fz(ncra)p FE(,)h Fz(ncwa)178
+1359 y FE(Short)g(options:)41 b(None)p 3803 1494 V 150
+1545 a Fl(\012)p 200 1545 3554 4 v 3553 w(\011)275 1719
+y FE(The)25 b(phrase)h FA(missing)g(data)h FE(refers)f(to)g(data)h(p)s
 (oin)m(ts)f(that)h(are)g(missing,)g(in)m(v)-5 b(alid,)28
 b(or)e(for)g(an)m(y)h(reason)150 1828 y(not)36 b(in)m(tended)g(to)h(b)s
 (e)f(arithmetically)i(pro)s(cessed)e(in)f(the)i(same)f(fashion)g(as)g
-(v)-5 b(alid)37 b(data.)59 b(The)35 b FC(NCO)150 1938
-y FD(arithmetic)j(op)s(erators)f(attempt)g(to)h(handle)e(missing)g
+(v)-5 b(alid)37 b(data.)59 b(The)35 b FD(NCO)150 1938
+y FE(arithmetic)j(op)s(erators)f(attempt)g(to)h(handle)e(missing)g
 (data)h(in)g(an)f(in)m(telligen)m(t)j(fashion.)59 b(There)37
-b(are)150 2048 y(four)30 b(steps)g(in)g(the)h FC(NCO)f
-FD(treatmen)m(t)i(of)e(missing)g(data:)199 2210 y(1.)61
+b(are)150 2048 y(four)30 b(steps)g(in)g(the)h FD(NCO)f
+FE(treatmen)m(t)i(of)e(missing)g(data:)199 2210 y(1.)61
 b(Iden)m(tifying)31 b(v)-5 b(ariables)31 b(that)g(ma)m(y)g(con)m(tain)g
-(missing)g(data.)330 2348 y FC(NCO)40 b FD(follo)m(ws)g(the)g(con)m(v)m
+(missing)g(data.)330 2348 y FD(NCO)40 b FE(follo)m(ws)g(the)g(con)m(v)m
 (en)m(tion)i(that)f(missing)f(data)g(should)f(b)s(e)g(stored)h(with)g
-(the)p 3354 2348 28 4 v 80 w Fz(FillV)-8 b(alue)330 2458
-y FD(sp)s(eci\014ed)33 b(in)f(the)i(v)-5 b(ariable's)34
-b Fy(_FillValue)c FD(attributes.)50 b(The)33 b Fo(only)42
-b FD(w)m(a)m(y)34 b FC(NCO)f FD(recognizes)i(that)330
-2567 y(a)d(v)-5 b(ariable)33 b Fo(may)41 b FD(con)m(tain)34
+(the)p 3354 2348 28 4 v 80 w FA(FillV)-8 b(alue)330 2458
+y FE(sp)s(eci\014ed)33 b(in)f(the)i(v)-5 b(ariable's)34
+b Fz(_FillValue)c FE(attributes.)50 b(The)33 b Fp(only)42
+b FE(w)m(a)m(y)34 b FD(NCO)f FE(recognizes)i(that)330
+2567 y(a)d(v)-5 b(ariable)33 b Fp(may)41 b FE(con)m(tain)34
 b(missing)e(data)g(is)g(if)h(the)f(v)-5 b(ariable)33
-b(has)e(a)i Fy(_FillValue)c FD(attribute.)47 b(In)330
+b(has)e(a)i Fz(_FillValue)c FE(attribute.)47 b(In)330
 2677 y(this)35 b(case,)k(an)m(y)c(elemen)m(ts)i(of)f(the)g(v)-5
 b(ariable)36 b(whic)m(h)f(are)h(n)m(umerically)h(equal)f(to)g(the)p
-3354 2677 V 76 w Fz(FillV)-8 b(alue)330 2787 y FD(are)31
-b(treated)g(as)g(missing)f(data.)330 2924 y FC(NCO)g
-FD(adopted)g(the)g(b)s(eha)m(vior)g(that)h(the)f(default)h(attribute)f
+3354 2677 V 76 w FA(FillV)-8 b(alue)330 2787 y FE(are)31
+b(treated)g(as)g(missing)f(data.)330 2924 y FD(NCO)g
+FE(adopted)g(the)g(b)s(eha)m(vior)g(that)h(the)f(default)h(attribute)f
 (name,)h(if)f(an)m(y)-8 b(,)31 b(assumed)e(to)i(sp)s(ecify)330
 3034 y(the)h(v)-5 b(alue)33 b(of)f(data)h(to)g(ignore)f(is)g
-Fy(_FillValue)e FD(with)h(v)m(ersion)i(3.9.2)h(\(August,)f(2007\).)47
-b(Prior)32 b(to)330 3144 y(that,)39 b(the)e Fy(missing_value)c
-FD(attribute,)39 b(if)d(an)m(y)-8 b(,)39 b(w)m(as)e(assumed)f(to)h(sp)s
+Fz(_FillValue)e FE(with)h(v)m(ersion)i(3.9.2)h(\(August,)f(2007\).)47
+b(Prior)32 b(to)330 3144 y(that,)39 b(the)e Fz(missing_value)c
+FE(attribute,)39 b(if)d(an)m(y)-8 b(,)39 b(w)m(as)e(assumed)f(to)h(sp)s
 (ecify)g(the)f(v)-5 b(alue)38 b(of)e(data)330 3253 y(to)e(ignore.)48
 b(Supp)s(orting)31 b(b)s(oth)i(of)g(these)g(attributes)g(sim)m
 (ultaneously)h(is)f(not)g(practical.)50 b(Hence)330 3363
-y(the)26 b(b)s(eha)m(vior)h FC(NCO)f FD(once)g(applied)g(to)h
-Fz(missing)p 1986 3363 V 40 w(v)-5 b(alue)32 b FD(it)27
-b(no)m(w)f(applies)g(to)h(an)m(y)p 3108 3363 V 67 w Fz(FillV)-8
-b(alue)p FD(.)41 b FC(NCO)330 3472 y FD(no)m(w)30 b(treats)i(an)m(y)e
-Fz(missing)p 1249 3472 V 40 w(v)-5 b(alue)36 b FD(as)31
-b(normal)f(data)2119 3439 y Ft(18)2190 3472 y FD(.)330
+y(the)26 b(b)s(eha)m(vior)h FD(NCO)f FE(once)g(applied)g(to)h
+FA(missing)p 1986 3363 V 40 w(v)-5 b(alue)32 b FE(it)27
+b(no)m(w)f(applies)g(to)h(an)m(y)p 3108 3363 V 67 w FA(FillV)-8
+b(alue)p FE(.)41 b FD(NCO)330 3472 y FE(no)m(w)30 b(treats)i(an)m(y)e
+FA(missing)p 1249 3472 V 40 w(v)-5 b(alue)36 b FE(as)31
+b(normal)f(data)2119 3439 y Fu(18)2190 3472 y FE(.)330
 3610 y(It)43 b(has)f(b)s(een)h(and)f(remains)g(most)i(advisable)f(to)h
-(create)g(b)s(oth)e Fy(_FillValue)e FD(and)i Fy(missing_)330
-3720 y(value)30 b FD(attributes)i(with)g(iden)m(tical)h(v)-5
+(create)g(b)s(oth)e Fz(_FillValue)e FE(and)i Fz(missing_)330
+3720 y(value)30 b FE(attributes)i(with)g(iden)m(tical)h(v)-5
 b(alues)32 b(in)f(datasets.)46 b(Man)m(y)33 b(legacy)g(datasets)g(con)m
-(tain)g(only)330 3829 y Fy(missing_value)h FD(attributes.)63
-b FC(NCO)37 b FD(can)h(help)g(migrating)g(datasets)h(b)s(et)m(w)m(een)f
+(tain)g(only)330 3829 y Fz(missing_value)h FE(attributes.)63
+b FD(NCO)37 b FE(can)h(help)g(migrating)g(datasets)h(b)s(et)m(w)m(een)f
 (these)g(con)m(v)m(en-)330 3939 y(tions.)g(One)22 b(ma)m(y)g(use)g
-Fy(ncrename)e FD(\(see)j(Section)f(4.11)i([ncrename)e(netCDF)g
-(Renamer],)j(page)d(202\))330 4049 y(to)31 b(rename)g(all)g
-Fy(missing_value)c FD(attributes)k(to)g Fy(_FillValue)p
-FD(:)570 4187 y Fy(ncrename)46 b(-a)h(.missing_value,_FillVal)o(ue)42
-b(inout.nc)330 4324 y FD(Alternativ)m(ely)-8 b(,)26 b(one)c(ma)m(y)h
-(use)e Fy(ncatted)f FD(\(see)i(Section)h(4.2)g([ncatted)g(netCDF)f(A)m
-(ttribute)g(Editor],)330 4434 y(page)31 b(156\))h(to)f(add)f(a)h
-Fy(_FillValue)c FD(attribute)k(to)h(all)f(v)-5 b(ariables)570
-4572 y Fy(ncatted)46 b(-O)h(-a)g(_FillValue,,o,f,1.0e36)42
-b(inout.nc)199 4710 y FD(2.)61 b(Con)m(v)m(erting)31
-b(the)p 960 4710 V 71 w Fz(FillV)-8 b(alue)38 b FD(to)31
+Fz(ncrename)e FE(\(see)j(Section)f(4.11)i([ncrename)e(netCDF)g
+(Renamer],)j(page)d(214\))330 4049 y(to)31 b(rename)g(all)g
+Fz(missing_value)c FE(attributes)k(to)g Fz(_FillValue)p
+FE(:)570 4187 y Fz(ncrename)46 b(-a)h(.missing_value,_FillVal)o(ue)42
+b(inout.nc)330 4324 y FE(Alternativ)m(ely)-8 b(,)26 b(one)c(ma)m(y)h
+(use)e Fz(ncatted)f FE(\(see)i(Section)h(4.2)g([ncatted)g(netCDF)f(A)m
+(ttribute)g(Editor],)330 4434 y(page)31 b(168\))h(to)f(add)f(a)h
+Fz(_FillValue)c FE(attribute)k(to)h(all)f(v)-5 b(ariables)570
+4572 y Fz(ncatted)46 b(-O)h(-a)g(_FillValue,,o,f,1.0e36)42
+b(inout.nc)199 4710 y FE(2.)61 b(Con)m(v)m(erting)31
+b(the)p 960 4710 V 71 w FA(FillV)-8 b(alue)38 b FE(to)31
 b(the)f(t)m(yp)s(e)h(of)f(the)h(v)-5 b(ariable,)31 b(if)g(neccessary)-8
 b(.)330 4848 y(Consider)27 b(a)h(v)-5 b(ariable)28 b
-Fz(v)-5 b(ar)34 b FD(of)28 b(t)m(yp)s(e)f Fz(v)-5 b(ar)p
-1708 4848 V 40 w(t)m(yp)s(e)33 b FD(with)27 b(a)h Fy(_FillValue)d
-FD(attribute)j(of)g(t)m(yp)s(e)g Fz(att)p 3536 4848 V
-41 w(t)m(yp)s(e)330 4957 y FD(con)m(taining)33 b(the)g(v)-5
-b(alue)p 1174 4957 V 72 w Fz(FillV)d(alue)p FD(.)48 b(As)31
-b(a)i(guideline,)g(the)f(t)m(yp)s(e)g(of)g(the)g Fy(_FillValue)d
-FD(attribute)p 150 5066 1200 4 v 166 5134 a Ft(18)303
-5166 y Fs(The)g(old)g(functionalit)n(y)-6 b(,)30 b(i.e.,)h(where)e(the)
-f(ignored)i(v)l(alues)e(are)i(indicated)f(b)n(y)e Fr(missing_value)32
-b Fs(not)c Fr(_FillValue)p Fs(,)275 5253 y(ma)n(y)38
-b(still)i(b)r(e)f(selected)h Fj(at)g Fi(NCO)f Fj(build)h(time)k
-Fs(b)n(y)38 b(compiling)i Fp(NCO)f Fs(with)g(the)g(tok)n(en)f
-(de\014nition)g Fh(CPPFLAGS='-)275 5340 y(UNCO_USE_FILL_VALUE')p
-Fs(.)p eop end
+FA(v)-5 b(ar)34 b FE(of)28 b(t)m(yp)s(e)f FA(v)-5 b(ar)p
+1708 4848 V 40 w(t)m(yp)s(e)33 b FE(with)27 b(a)h Fz(_FillValue)d
+FE(attribute)j(of)g(t)m(yp)s(e)g FA(att)p 3536 4848 V
+41 w(t)m(yp)s(e)330 4957 y FE(con)m(taining)33 b(the)g(v)-5
+b(alue)p 1174 4957 V 72 w FA(FillV)d(alue)p FE(.)48 b(As)31
+b(a)i(guideline,)g(the)f(t)m(yp)s(e)g(of)g(the)g Fz(_FillValue)d
+FE(attribute)p 150 5066 1200 4 v 166 5134 a Fu(18)303
+5166 y Ft(The)g(old)g(functionalit)n(y)-6 b(,)30 b(i.e.,)h(where)e(the)
+f(ignored)i(v)l(alues)e(are)i(indicated)f(b)n(y)e Fs(missing_value)32
+b Ft(not)c Fs(_FillValue)p Ft(,)275 5253 y(ma)n(y)38
+b(still)i(b)r(e)f(selected)h Fk(at)g Fj(NCO)f Fk(build)h(time)k
+Ft(b)n(y)38 b(compiling)i Fq(NCO)f Ft(with)g(the)g(tok)n(en)f
+(de\014nition)g Fi(CPPFLAGS='-)275 5340 y(UNCO_USE_FILL_VALUE')p
+Ft(.)p eop end
 %%Page: 72 78
-TeXDict begin 72 77 bop 150 -116 a FD(72)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)330 299 y(should)37 b(b)s(e)h(the)g(same)g
+TeXDict begin 72 77 bop 150 -116 a FE(72)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)330 299 y(should)37 b(b)s(e)h(the)g(same)g
 (as)h(the)f(t)m(yp)s(e)g(of)h(the)f(v)-5 b(ariable)39
-b(it)g(is)f(attac)m(hed)i(to.)65 b(If)37 b Fz(v)-5 b(ar)p
-3253 299 28 4 v 40 w(t)m(yp)s(e)44 b FD(equals)330 408
-y Fz(att)p 451 408 V 41 w(t)m(yp)s(e)39 b FD(then)33
-b FC(NCO)g FD(straigh)m(tforw)m(ardly)i(compares)f(eac)m(h)g(v)-5
-b(alue)34 b(of)g Fz(v)-5 b(ar)40 b FD(to)p 3085 408 V
-74 w Fz(FillV)-8 b(alue)41 b FD(to)34 b(de-)330 518 y(termine)39
-b(whic)m(h)f(elemen)m(ts)i(of)e Fz(v)-5 b(ar)45 b FD(are)39
+b(it)g(is)f(attac)m(hed)i(to.)65 b(If)37 b FA(v)-5 b(ar)p
+3253 299 28 4 v 40 w(t)m(yp)s(e)44 b FE(equals)330 408
+y FA(att)p 451 408 V 41 w(t)m(yp)s(e)39 b FE(then)33
+b FD(NCO)g FE(straigh)m(tforw)m(ardly)i(compares)f(eac)m(h)g(v)-5
+b(alue)34 b(of)g FA(v)-5 b(ar)40 b FE(to)p 3085 408 V
+74 w FA(FillV)-8 b(alue)41 b FE(to)34 b(de-)330 518 y(termine)39
+b(whic)m(h)f(elemen)m(ts)i(of)e FA(v)-5 b(ar)45 b FE(are)39
 b(to)h(b)s(e)d(treated)j(as)f(missing)f(data.)66 b(If)38
-b(not,)j(then)d FC(NCO)330 628 y FD(con)m(v)m(erts)p
-701 628 V 79 w Fz(FillV)-8 b(alue)45 b FD(from)37 b Fz(att)p
-1477 628 V 42 w(t)m(yp)s(e)43 b FD(to)38 b Fz(v)-5 b(ar)p
-1978 628 V 40 w(t)m(yp)s(e)43 b FD(b)m(y)38 b(using)f(the)h(implicit)g
+b(not,)j(then)d FD(NCO)330 628 y FE(con)m(v)m(erts)p
+701 628 V 79 w FA(FillV)-8 b(alue)45 b FE(from)37 b FA(att)p
+1477 628 V 42 w(t)m(yp)s(e)43 b FE(to)38 b FA(v)-5 b(ar)p
+1978 628 V 40 w(t)m(yp)s(e)43 b FE(b)m(y)38 b(using)f(the)h(implicit)g
 (con)m(v)m(ersion)h(rules)330 737 y(of)31 b(C)o(,)25
-b(or,)g(if)e Fz(att)p 877 737 V 41 w(t)m(yp)s(e)28 b
-FD(is)23 b Fy(NC_CHAR)1534 704 y Ft(19)1603 737 y FD(,)h(b)m(y)f(t)m
+b(or,)g(if)e FA(att)p 877 737 V 41 w(t)m(yp)s(e)28 b
+FE(is)23 b Fz(NC_CHAR)1534 704 y Fu(19)1603 737 y FE(,)h(b)m(y)f(t)m
 (yp)s(ecasting)i(the)e(results)g(of)g(the)g(C)30 b(function)23
-b Fy(strtod\()p Fn(_)330 847 y(FillValue)p Fy(\))p FD(.)47
-b(Y)-8 b(ou)35 b(ma)m(y)f(use)f(the)h FC(NCO)f FD(op)s(erator)h
-Fy(ncatted)d FD(to)k(c)m(hange)f(the)g Fy(_FillValue)d
-FD(at-)330 956 y(tribute)h(and)g(all)h(data)g(whose)f(data)h(is)p
-1730 956 V 72 w Fz(FillV)-8 b(alue)40 b FD(to)33 b(a)g(new)e(v)-5
+b Fz(strtod\()p Fo(_)330 847 y(FillValue)p Fz(\))p FE(.)47
+b(Y)-8 b(ou)35 b(ma)m(y)f(use)f(the)h FD(NCO)f FE(op)s(erator)h
+Fz(ncatted)d FE(to)k(c)m(hange)f(the)g Fz(_FillValue)d
+FE(at-)330 956 y(tribute)h(and)g(all)h(data)g(whose)f(data)h(is)p
+1730 956 V 72 w FA(FillV)-8 b(alue)40 b FE(to)33 b(a)g(new)e(v)-5
 b(alue)33 b(\(see)g(Section)g(4.2)h([ncatted)330 1066
-y(netCDF)d(A)m(ttribute)g(Editor],)g(page)g(156\).)199
+y(netCDF)d(A)m(ttribute)g(Editor],)g(page)g(168\).)199
 1241 y(3.)61 b(Iden)m(tifying)31 b(missing)f(data)h(during)e
 (arithmetic)j(op)s(erations.)330 1416 y(When)41 b(an)h
-FC(NCO)f FD(arithmetic)h(op)s(erator)g(pro)s(cesses)f(a)h(v)-5
-b(ariable)42 b Fz(v)-5 b(ar)48 b FD(with)41 b(a)h Fy(_FillValue)d
-FD(at-)330 1526 y(tribute,)g(it)f(compares)g(eac)m(h)h(v)-5
-b(alue)38 b(of)g Fz(v)-5 b(ar)43 b FD(to)p 2029 1526
-V 79 w Fz(FillV)-8 b(alue)45 b FD(b)s(efore)37 b(p)s(erforming)f(an)h
+FD(NCO)f FE(arithmetic)h(op)s(erator)g(pro)s(cesses)f(a)h(v)-5
+b(ariable)42 b FA(v)-5 b(ar)48 b FE(with)41 b(a)h Fz(_FillValue)d
+FE(at-)330 1526 y(tribute,)g(it)f(compares)g(eac)m(h)h(v)-5
+b(alue)38 b(of)g FA(v)-5 b(ar)43 b FE(to)p 2029 1526
+V 79 w FA(FillV)-8 b(alue)45 b FE(b)s(efore)37 b(p)s(erforming)f(an)h
 (op)s(eration.)330 1636 y(Note)26 b(the)p 700 1636 V
-64 w Fz(FillV)-8 b(alue)31 b FD(comparison)25 b(imp)s(oses)f(a)g(p)s
+64 w FA(FillV)-8 b(alue)31 b FE(comparison)25 b(imp)s(oses)f(a)g(p)s
 (erformance)g(p)s(enalt)m(y)g(on)g(the)h(op)s(erator.)39
 b(Arith-)330 1745 y(metic)24 b(pro)s(cessing)f(of)g(v)-5
-b(ariables)24 b(whic)m(h)e(con)m(tain)j(the)e Fy(_FillValue)d
-FD(attribute)k(alw)m(a)m(ys)g(incurs)e(this)330 1855
+b(ariables)24 b(whic)m(h)e(con)m(tain)j(the)e Fz(_FillValue)d
+FE(attribute)k(alw)m(a)m(ys)g(incurs)e(this)330 1855
 y(p)s(enalt)m(y)-8 b(,)32 b(ev)m(en)g(when)e(none)g(of)h(the)g(data)h
 (are)f(missing.)42 b(Con)m(v)m(ersely)-8 b(,)33 b(arithmetic)f(pro)s
 (cessing)f(of)330 1964 y(v)-5 b(ariables)31 b(whic)m(h)f(do)h(not)f
-(con)m(tain)i(the)f Fy(_FillValue)c FD(attribute)k(nev)m(er)g(incurs)f
+(con)m(tain)i(the)f Fz(_FillValue)c FE(attribute)k(nev)m(er)g(incurs)f
 (this)g(p)s(enalt)m(y)-8 b(.)42 b(In)330 2074 y(other)25
-b(w)m(ords,)g(do)f(not)g(attac)m(h)j(a)d Fy(_FillValue)e
-FD(attribute)j(to)g(a)f(v)-5 b(ariable)25 b(whic)m(h)f(do)s(es)g(not)h
+b(w)m(ords,)g(do)f(not)g(attac)m(h)j(a)d Fz(_FillValue)e
+FE(attribute)j(to)g(a)f(v)-5 b(ariable)25 b(whic)m(h)f(do)s(es)g(not)h
 (con)m(tain)330 2184 y(missing)j(data.)40 b(This)27 b(exhortation)i
 (can)f(usually)f(b)s(e)h(ob)s(ey)m(ed)f(for)h(mo)s(del)f(generated)i
 (data,)g(but)e(it)330 2293 y(ma)m(y)j(b)s(e)g(harder)e(to)j(kno)m(w)f
@@ -17908,108 +18136,108 @@ FD(attribute)j(to)g(a)f(v)-5 b(ariable)25 b(whic)m(h)f(do)s(es)g(not)h
 b(data)e(will)g(b)s(e)g(v)-5 b(alid)30 b(or)f(not.)199
 2468 y(4.)61 b(T)-8 b(reatmen)m(t)32 b(of)e(an)m(y)h(data)g(iden)m
 (ti\014ed)f(as)h(missing)f(in)g(arithmetic)i(op)s(erators.)330
-2644 y FC(NCO)c FD(a)m(v)m(eragers)i(\()p Fy(ncra)p FD(,)f
-Fy(nces)p FD(,)e Fy(ncwa)p FD(\))h(do)g(not)h(coun)m(t)g(an)m(y)f
+2644 y FD(NCO)c FE(a)m(v)m(eragers)i(\()p Fz(ncra)p FE(,)f
+Fz(nces)p FE(,)e Fz(ncwa)p FE(\))h(do)g(not)h(coun)m(t)g(an)m(y)f
 (elemen)m(t)i(with)e(the)h(v)-5 b(alue)p 3354 2644 V
-69 w Fz(FillV)d(alue)330 2753 y FD(to)m(w)m(ards)35 b(the)f(a)m(v)m
-(erage.)53 b Fy(ncbo)33 b FD(and)g Fy(ncflint)f FD(de\014ne)h(a)p
-2328 2753 V 74 w Fz(FillV)-8 b(alue)41 b FD(result)34
+69 w FA(FillV)d(alue)330 2753 y FE(to)m(w)m(ards)35 b(the)f(a)m(v)m
+(erage.)53 b Fz(ncbo)33 b FE(and)g Fz(ncflint)f FE(de\014ne)h(a)p
+2328 2753 V 74 w FA(FillV)-8 b(alue)41 b FE(result)34
 b(when)f(either)h(of)g(the)330 2863 y(input)27 b(v)-5
-b(alues)28 b(is)g(a)p 1007 2863 V 68 w Fz(FillV)-8 b(alue)p
-FD(.)43 b(Sometimes)28 b(the)p 2076 2863 V 68 w Fz(FillV)-8
-b(alue)35 b FD(ma)m(y)29 b(c)m(hange)g(from)e(\014le)h(to)h(\014le)f
+b(alues)28 b(is)g(a)p 1007 2863 V 68 w FA(FillV)-8 b(alue)p
+FE(.)43 b(Sometimes)28 b(the)p 2076 2863 V 68 w FA(FillV)-8
+b(alue)35 b FE(ma)m(y)29 b(c)m(hange)g(from)e(\014le)h(to)h(\014le)f
 (in)g(a)330 2972 y(m)m(ulti-\014le)k(op)s(erator,)h(e.g.,)g
-Fy(ncra)p FD(.)43 b FC(NCO)31 b FD(is)g(written)h(to)g(accoun)m(t)h
+Fz(ncra)p FE(.)43 b FD(NCO)31 b FE(is)g(written)h(to)g(accoun)m(t)h
 (for)e(this)g(\(it)i(alw)m(a)m(ys)g(compares)330 3082
 y(a)g(v)-5 b(ariable)33 b(to)h(the)p 1030 3082 V 73 w
-Fz(FillV)-8 b(alue)40 b FD(assigned)32 b(to)i(that)f(v)-5
+FA(FillV)-8 b(alue)40 b FE(assigned)32 b(to)i(that)f(v)-5
 b(ariable)33 b(in)g(the)g(curren)m(t)f(\014le\).)48 b(Su\016ce)32
 b(it)h(to)330 3192 y(sa)m(y)e(that,)g(in)f(all)i(kno)m(wn)d(cases,)j
-FC(NCO)e FD(do)s(es)g(\\the)h(righ)m(t)g(thing".)330
+FD(NCO)e FE(do)s(es)g(\\the)h(righ)m(t)g(thing".)330
 3367 y(It)22 b(is)g(imp)s(ossible)f(to)h(determine)g(and)g(store)g(the)
 g(correct)h(result)e(of)h(a)g(binary)f(op)s(eration)i(in)e(a)h(single)
 330 3476 y(v)-5 b(ariable.)62 b(One)36 b(suc)m(h)h(corner)g(case)h(o)s
 (ccurs)f(when)f(b)s(oth)g(op)s(erands)g(ha)m(v)m(e)j(di\013ering)p
-3354 3476 V 77 w Fz(FillV)-8 b(alue)330 3586 y FD(attributes,)42
+3354 3476 V 77 w FA(FillV)-8 b(alue)330 3586 y FE(attributes,)42
 b(i.e.,)h(attributes)c(with)g(di\013eren)m(t)h(n)m(umerical)f(v)-5
 b(alues.)67 b(Since)39 b(the)h(output)e(\(result\))330
 3695 y(of)c(the)f(op)s(eration)h(can)g(only)f(ha)m(v)m(e)i(one)p
-1767 3695 V 73 w Fz(FillV)-8 b(alue)p FD(,)37 b(some)d(information)f
+1767 3695 V 73 w FA(FillV)-8 b(alue)p FE(,)37 b(some)d(information)f
 (ma)m(y)h(b)s(e)f(lost.)50 b(In)33 b(this)330 3805 y(case,)i
-FC(NCO)e FD(alw)m(a)m(ys)h(de\014nes)e(the)h(output)g(v)-5
+FD(NCO)e FE(alw)m(a)m(ys)h(de\014nes)e(the)h(output)g(v)-5
 b(ariable)34 b(to)f(ha)m(v)m(e)i(the)e(same)p 2890 3805
-V 73 w Fz(FillV)-8 b(alue)40 b FD(as)34 b(the)f(\014rst)330
+V 73 w FA(FillV)-8 b(alue)40 b FE(as)34 b(the)f(\014rst)330
 3915 y(input)f(v)-5 b(ariable.)51 b(Prior)33 b(to)h(p)s(erforming)e
 (the)i(arithmetic)g(op)s(eration,)h(all)f(v)-5 b(alues)34
 b(of)f(the)h(second)330 4024 y(op)s(erand)j(equal)h(to)g(the)g(second)p
-1525 4024 V 78 w Fz(FillV)-8 b(alue)45 b FD(are)38 b(replaced)h(with)e
-(the)h(\014rst)p 3064 4024 V 77 w Fz(FillV)-8 b(alue)p
-FD(.)65 b(Then)330 4134 y(the)29 b(arithmetic)i(op)s(eration)e(pro)s
+1525 4024 V 78 w FA(FillV)-8 b(alue)45 b FE(are)38 b(replaced)h(with)e
+(the)h(\014rst)p 3064 4024 V 77 w FA(FillV)-8 b(alue)p
+FE(.)65 b(Then)330 4134 y(the)29 b(arithmetic)i(op)s(eration)e(pro)s
 (ceeds)g(as)g(normal,)h(comparing)f(eac)m(h)h(elemen)m(t)h(of)e(eac)m
 (h)h(op)s(erand)330 4243 y(to)k(a)g(single)p 785 4243
-V 74 w Fz(FillV)-8 b(alue)p FD(.)52 b(Comparing)33 b(eac)m(h)i(elemen)m
-(t)g(to)f(t)m(w)m(o)h(distinct)p 2898 4243 V 73 w Fz(FillV)-8
-b(alue)5 b FD('s)36 b(w)m(ould)e(b)s(e)330 4353 y(m)m(uc)m(h)d(slo)m(w)
+V 74 w FA(FillV)-8 b(alue)p FE(.)52 b(Comparing)33 b(eac)m(h)i(elemen)m
+(t)g(to)f(t)m(w)m(o)h(distinct)p 2898 4243 V 73 w FA(FillV)-8
+b(alue)5 b FE('s)36 b(w)m(ould)e(b)s(e)330 4353 y(m)m(uc)m(h)d(slo)m(w)
 m(er)h(and)f(w)m(ould)f(b)s(e)h(no)g(lik)m(elier)h(to)g(yield)f(a)h
 (more)f(satisfactory)i(answ)m(er.)42 b(In)30 b(practice,)330
 4463 y(judicious)37 b(c)m(hoice)j(of)p 1115 4463 V 78
-w Fz(FillV)-8 b(alue)46 b FD(v)-5 b(alues)38 b(prev)m(en)m(ts)g(an)m(y)
+w FA(FillV)-8 b(alue)46 b FE(v)-5 b(alues)38 b(prev)m(en)m(ts)g(an)m(y)
 h(imp)s(ortan)m(t)f(information)g(from)f(b)s(eing)330
-4572 y(lost.)150 4927 y FB(3.26)68 b(Ch)l(unking)p 150
-5241 1200 4 v 166 5308 a Ft(19)275 5340 y Fs(F)-6 b(or)25
-b(example,)h(the)g Fp(DOE)f(ARM)g Fs(program)i(often)f(uses)g
-Fm(att)p 2012 5340 24 4 v 34 w(t)n(yp)r(e)j Fs(=)c Fr(NC_CHAR)i
-Fs(and)p 2758 5340 V 59 w Fm(FillV)-6 b(alue)31 b Fs(=)25
-b(`)p Fr(-99999.)p Fs('.)p eop end
+4572 y(lost.)150 4927 y FC(3.26)68 b(Ch)l(unking)p 150
+5241 1200 4 v 166 5308 a Fu(19)275 5340 y Ft(F)-6 b(or)25
+b(example,)h(the)g Fq(DOE)f(ARM)g Ft(program)i(often)f(uses)g
+Fn(att)p 2012 5340 24 4 v 34 w(t)n(yp)r(e)j Ft(=)c Fs(NC_CHAR)i
+Ft(and)p 2758 5340 V 59 w Fn(FillV)-6 b(alue)31 b Ft(=)25
+b(`)p Fs(-99999.)p Ft('.)p eop end
 %%Page: 73 79
-TeXDict begin 73 78 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(73)150 51 y Fk(\013)p
+TeXDict begin 73 78 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(73)150 51 y Fl(\013)p
 200 51 3554 4 v 3553 w(\010)p 150 1089 4 990 v 178 188
-a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncap2)p FD(,)30 b
-Fy(ncbo)p FD(,)f Fy(nces)p FD(,)h Fy(ncecat)p FD(,)f
-Fy(ncflint)p FD(,)f Fy(ncks)p FD(,)i Fy(ncpdq)p FD(,)f
-Fy(ncra)p FD(,)g Fy(ncrcat)p FD(,)g Fy(ncwa)178 297 y
-FD(Short)h(options:)41 b(none)178 407 y(Long)31 b(options:)41
-b(`)p Fy(--cnk_byt)28 b Fn(cnk_sz)p FD(',)h(`)p Fy(--chunk_byte)e
-Fn(cnk_sz)p FD(')178 516 y(`)p Fy(--cnk_dmn)h Fn(dmn_nm)p
-Fy(,)p Fn(cnk_sz)p FD(',)g(`)p Fy(--chunk_dimension)d
-Fn(dmn_nm)p Fy(,)p Fn(cnk_sz)p FD(')178 626 y(,)31 b(`)p
-Fy(--cnk_map)d Fn(cnk_map)p FD(',)h(`)p Fy(--chunk_map)e
-Fn(cnk_map)p FD(',)178 736 y(`)p Fy(--cnk_min)h Fn(var_sz)p
-FD(',)h(`)p Fy(--chunk_min)f Fn(var_sz)p FD(',)178 845
-y(`)p Fy(--cnk_plc)g Fn(cnk_plc)p FD(',)h(`)p Fy(--chunk_policy)e
-Fn(cnk_plc)p FD(',)178 955 y(`)p Fy(--cnk_scl)h Fn(cnk_sz)p
-FD(',)h(`)p Fy(--chunk_scalar)e Fn(cnk_sz)p FD(')p 3803
-1089 V 150 1141 a Fk(\012)p 200 1141 3554 4 v 3553 w(\011)275
-1325 y FD(All)k(netCDF4-enabled)g FC(NCO)g FD(op)s(erators)f(that)h
+a FE(Av)-5 b(ailabilit)m(y:)43 b Fz(ncap2)p FE(,)30 b
+Fz(ncbo)p FE(,)f Fz(nces)p FE(,)h Fz(ncecat)p FE(,)f
+Fz(ncflint)p FE(,)f Fz(ncks)p FE(,)i Fz(ncpdq)p FE(,)f
+Fz(ncra)p FE(,)g Fz(ncrcat)p FE(,)g Fz(ncwa)178 297 y
+FE(Short)h(options:)41 b(none)178 407 y(Long)31 b(options:)41
+b(`)p Fz(--cnk_byt)28 b Fo(cnk_sz)p FE(',)h(`)p Fz(--chunk_byte)e
+Fo(cnk_sz)p FE(')178 516 y(`)p Fz(--cnk_dmn)h Fo(dmn_nm)p
+Fz(,)p Fo(cnk_sz)p FE(',)g(`)p Fz(--chunk_dimension)d
+Fo(dmn_nm)p Fz(,)p Fo(cnk_sz)p FE(')178 626 y(,)31 b(`)p
+Fz(--cnk_map)d Fo(cnk_map)p FE(',)h(`)p Fz(--chunk_map)e
+Fo(cnk_map)p FE(',)178 736 y(`)p Fz(--cnk_min)h Fo(var_sz)p
+FE(',)h(`)p Fz(--chunk_min)f Fo(var_sz)p FE(',)178 845
+y(`)p Fz(--cnk_plc)g Fo(cnk_plc)p FE(',)h(`)p Fz(--chunk_policy)e
+Fo(cnk_plc)p FE(',)178 955 y(`)p Fz(--cnk_scl)h Fo(cnk_sz)p
+FE(',)h(`)p Fz(--chunk_scalar)e Fo(cnk_sz)p FE(')p 3803
+1089 V 150 1141 a Fl(\012)p 200 1141 3554 4 v 3553 w(\011)275
+1325 y FE(All)k(netCDF4-enabled)g FD(NCO)g FE(op)s(erators)f(that)h
 (de\014ne)f(v)-5 b(ariables)31 b(supp)s(ort)e(a)h(plethora)h(of)g(c)m
 (h)m(unk-)150 1435 y(size)39 b(options.)63 b(Ch)m(unking)36
 b(can)i(signi\014can)m(tly)h(accelerate)i(or)d(degrade)g(read/write)g
 (access)h(to)g(large)150 1544 y(datasets.)91 b(Dataset)49
 b(c)m(h)m(unking)e(issues)f(are)h(describ)s(ed)f(b)m(y)h
-FC(THG)g FD(and)f(Unidata)h(here)g(\()p Fy(http:)13 b(/)g(/)150
+FD(THG)g FE(and)f(Unidata)h(here)g(\()p Fz(http:)13 b(/)g(/)150
 1654 y(www)24 b(.)18 b(hdfgroup)23 b(.)18 b(org)24 b(/)19
 b(HDF5)k(/)c(doc)24 b(/)18 b(H5)25 b(.)18 b(user)24 b(/)18
-b(Chunking)23 b(.)18 b(html)p FD(\),)68 b(here)60 b(\()p
-Fy(http:)24 b(/)g(/)18 b(www)24 b(.)150 1763 y(unidata)14
+b(Chunking)23 b(.)18 b(html)p FE(\),)68 b(here)60 b(\()p
+Fz(http:)24 b(/)g(/)18 b(www)24 b(.)150 1763 y(unidata)14
 b(.)e(ucar)j(.)d(edu)j(/)d(blogs)j(/)d(developer)i(/)e(en)j(/)d(entry)j
-(/)d(chunking_data_why_it_mat)o(ters)o FD(\),)150 1873
-y(and)73 b(here)h(\()p Fy(http:)34 b(/)i(/)27 b(www)34
+(/)d(chunking_data_why_it_mat)o(ters)o FE(\),)150 1873
+y(and)73 b(here)h(\()p Fz(http:)34 b(/)i(/)27 b(www)34
 b(.)28 b(unidata)33 b(.)27 b(ucar)35 b(.)27 b(edu)34
 b(/)28 b(blogs)34 b(/)27 b(developer)33 b(/)27 b(en)35
 b(/)27 b(entry)34 b(/)150 1983 y(chunking_data_choosing_s)o(hape)o(s)p
-FD(\).)54 b FC(NCO)37 b FD(authors)f(are)h(w)m(orking)g(on)g
+FE(\).)54 b FD(NCO)37 b FE(authors)f(are)h(w)m(orking)g(on)g
 (generalized)h(algorithms)150 2092 y(and)30 b(applications)h(of)g(c)m
 (h)m(unking)f(strategies)j(\(sta)m(y)e(tuned)f(for)g(more)h(in)f
-(2015\).)275 2266 y(The)c FC(NCO)i FD(c)m(h)m(unking)f(implemen)m
+(2015\).)275 2266 y(The)c FD(NCO)i FE(c)m(h)m(unking)f(implemen)m
 (tation)i(is)f(designed)f(to)h(b)s(e)f(\015exible.)40
 b(Users)27 b(con)m(trol)i(four)e(asp)s(ects)150 2375
 y(of)k(the)g(c)m(h)m(unking)f(implemen)m(tation.)43 b(These)30
-b(are)h(the)g Fz(c)m(h)m(unking)g(p)s(olicy)p FD(,)g
-Fz(c)m(h)m(unking)f(map)p FD(,)h Fz(c)m(h)m(unksize)p
-FD(,)150 2485 y(and)36 b Fz(minim)m(um)h(c)m(h)m(unksize)p
-FD(.)61 b(The)36 b(c)m(h)m(unking)h(p)s(olicy)h(determines)f
-Fo(which)44 b FD(v)-5 b(ariables)38 b(to)g(c)m(h)m(unk,)h(and)150
+b(are)h(the)g FA(c)m(h)m(unking)g(p)s(olicy)p FE(,)g
+FA(c)m(h)m(unking)f(map)p FE(,)h FA(c)m(h)m(unksize)p
+FE(,)150 2485 y(and)36 b FA(minim)m(um)h(c)m(h)m(unksize)p
+FE(.)61 b(The)36 b(c)m(h)m(unking)h(p)s(olicy)h(determines)f
+Fp(which)44 b FE(v)-5 b(ariables)38 b(to)g(c)m(h)m(unk,)h(and)150
 2594 y(the)30 b(c)m(h)m(unking)g(map)f(determines)h(ho)m(w)g(\(with)g
 (what)f(exact)j(sizes\))f(to)f(c)m(h)m(unk)g(those)g(v)-5
 b(ariables.)41 b(These)150 2704 y(are)26 b(high-lev)m(el)h(mec)m
@@ -18018,8 +18246,8 @@ b(ariables.)41 b(These)150 2704 y(are)26 b(high-lev)m(el)h(mec)m
 y(c)m(h)m(unksize)d(option)f(allo)m(ws)i(p)s(er-dimension)c(sp)s
 (eci\014cation)j(of)f(sizes)h(that)g(will)f(o)m(v)m(erride)h(the)f
 (selected)150 2923 y(\(or)d(default\))g(c)m(h)m(unking)f(map.)275
-3097 y(The)c Fz(v)-5 b(ar)p 588 3097 28 4 v 40 w(sz)32
-b FD(parameter)27 b(is)g(the)h(minim)m(um)e(size)h(in)g(b)m(ytes)g
+3097 y(The)c FA(v)-5 b(ar)p 588 3097 28 4 v 40 w(sz)32
+b FE(parameter)27 b(is)g(the)h(minim)m(um)e(size)h(in)g(b)m(ytes)g
 (\(not)h(elemen)m(ts\))h(of)e(v)-5 b(ariables)27 b(to)h(c)m(h)m(unk.)
 150 3206 y(This)33 b(threshold)h(is)g(in)m(tended)g(to)h(restrict)g
 (use)f(of)g(c)m(h)m(unking)h(to)f(v)-5 b(ariables)35
@@ -18028,12 +18256,12 @@ y(By)40 b(default)g(this)f(minim)m(um)g(v)-5 b(ariable)41
 b(size)f(for)f(c)m(h)m(unking)h(is)g(t)m(wice)h(the)f(system)f(blo)s(c)
 m(ksize)j(\(when)150 3425 y(a)m(v)-5 b(ailable\))26 b(and)d(is)h(8192)
 32 b(b)m(ytes)24 b(otherwise.)39 b(Users)23 b(ma)m(y)h(set)g(this)g(to)
-g(an)m(y)g(v)-5 b(alue)24 b(with)f(the)h(`)p Fy(--cnk_min)p
-FD(')150 3535 y(switc)m(h.)275 3708 y(The)33 b(c)m(h)m(unking)i
+g(an)m(y)g(v)-5 b(alue)24 b(with)f(the)h(`)p Fz(--cnk_min)p
+FE(')150 3535 y(switc)m(h.)275 3708 y(The)33 b(c)m(h)m(unking)i
 (implemen)m(tation)h(is)e(similar)h(to)g(a)g(h)m(ybrid)e(of)i(the)f
-Fy(ncpdq)f FD(pac)m(king)j(p)s(olicies)f(\(see)150 3818
+Fz(ncpdq)f FE(pac)m(king)j(p)s(olicies)f(\(see)150 3818
 y(Section)29 b(4.8)f([ncp)s(dq)f(netCDF)h(P)m(erm)m(ute)g(Dimensions)g
-(Quic)m(kly],)i(page)e(190\))h(and)f(h)m(yp)s(erslab)e(sp)s(eci\014-)
+(Quic)m(kly],)i(page)e(202\))h(and)f(h)m(yp)s(erslab)e(sp)s(eci\014-)
 150 3928 y(cations)k(\(see)g(Section)g(3.15)g([Hyp)s(erslabs],)f(page)h
 (55\).)41 b(Eac)m(h)30 b(asp)s(ect)f(is)g(in)m(tended)g(to)h(ha)m(v)m
 (e)g(a)f(sensible)150 4037 y(default,)h(so)f(that)h(man)m(y)f(users)f
@@ -18041,2643 +18269,3597 @@ y(Section)29 b(4.8)f([ncp)s(dq)f(netCDF)h(P)m(erm)m(ute)g(Dimensions)g
 m(h)m(unking.)41 b(P)m(o)m(w)m(er)150 4147 y(users)28
 b(can)h(tune)g(c)m(h)m(unking)g(with)f(the)h(three)h(switc)m(hes)f(in)g
 (tandem)f(to)i(obtain)f(optimal)h(p)s(erformance.)275
-4320 y(By)36 b(default,)i FC(NCO)e FD(preserv)m(es)g(the)h(c)m(h)m
+4320 y(By)36 b(default,)i FD(NCO)e FE(preserv)m(es)g(the)h(c)m(h)m
 (unking)f(c)m(haracteristics)j(of)d(the)g(input)g(\014le)g(in)g(the)g
-(output)150 4430 y(\014le)266 4397 y Ft(20)337 4430 y
-FD(.)k(In)30 b(other)g(w)m(ords,)h(preserving)e(c)m(h)m(unking)i
+(output)150 4430 y(\014le)266 4397 y Fu(20)337 4430 y
+FE(.)k(In)30 b(other)g(w)m(ords,)h(preserving)e(c)m(h)m(unking)i
 (requires)f(no)g(switc)m(hes)h(or)f(user)g(in)m(terv)m(en)m(tion.)275
 4603 y(Users)f(sp)s(ecify)h(the)g(desired)f(c)m(h)m(unking)h(p)s(olicy)
-g(with)f(the)h(`)p Fy(-P)p FD(')g(switc)m(h)g(\(or)h(its)f(long)g
-(option)h(equiv-)150 4713 y(alen)m(ts,)f(`)p Fy(--cnk_plc)p
-FD(')d(and)g(`)p Fy(--chunk_policy)p FD('\))f(and)h(its)i
-Fz(cnk)p 2344 4713 V 40 w(plc)34 b FD(argumen)m(t.)40
+g(with)f(the)h(`)p Fz(-P)p FE(')g(switc)m(h)g(\(or)h(its)f(long)g
+(option)h(equiv-)150 4713 y(alen)m(ts,)f(`)p Fz(--cnk_plc)p
+FE(')d(and)g(`)p Fz(--chunk_policy)p FE('\))f(and)h(its)i
+FA(cnk)p 2344 4713 V 40 w(plc)34 b FE(argumen)m(t.)40
 b(As)29 b(of)f(August,)h(2014,)150 4823 y(six)h(c)m(h)m(unking)h(p)s
 (olicies)g(are)g(implemen)m(ted:)p 150 5066 1200 4 v
-166 5134 a Ft(20)275 5166 y Fs(This)36 b(b)r(eha)n(vior)h(b)r(ecame)f
+166 5134 a Fu(20)275 5166 y Ft(This)36 b(b)r(eha)n(vior)h(b)r(ecame)f
 (the)g(default)h(in)f(No)n(v)n(em)n(b)r(er)f(2014)j(with)f
-Fp(NCO)e Fs(v)n(ersion)i(4.4.7.)68 b(Prior)37 b(v)n(ersions)g(w)n(ould)
+Fq(NCO)e Ft(v)n(ersion)i(4.4.7.)68 b(Prior)37 b(v)n(ersions)g(w)n(ould)
 275 5253 y(alw)n(a)n(ys)26 b(use)f(netCDF)h(default)f(c)n(h)n(unking)f
-(in)i(the)f(output)f(\014le)i(when)f(no)g Fp(NCO)g Fs(c)n(h)n(unking)f
+(in)i(the)f(output)f(\014le)i(when)f(no)g Fq(NCO)g Ft(c)n(h)n(unking)f
 (switc)n(hes)j(w)n(ere)f(activ)l(ated,)275 5340 y(regardless)h(of)f
 (the)g(c)n(h)n(unking)e(in)i(the)f(input)g(\014le.)p
 eop end
 %%Page: 74 80
-TeXDict begin 74 79 bop 150 -116 a FD(74)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fz(Ch)m(unk)f(All)i(V)-8
-b(ariables)630 408 y FD(De\014nition:)49 b(Ch)m(unk)33
+TeXDict begin 74 79 bop 150 -116 a FE(74)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FA(Ch)m(unk)f(All)i(V)-8
+b(ariables)630 408 y FE(De\014nition:)49 b(Ch)m(unk)33
 b(all)i(v)-5 b(ariables)35 b(p)s(ossible.)51 b(F)-8 b(or)35
 b(ob)m(vious)g(reasons,)g(scalar)g(v)-5 b(ariables)630
 518 y(cannot)31 b(b)s(e)f(c)m(h)m(unk)m(ed.)630 628 y(Alternate)i(in)m
-(v)m(o)s(cation:)43 b Fy(ncchunk)630 737 y Fz(cnk)p 775
-737 28 4 v 40 w(plc)36 b FD(k)m(ey)31 b(v)-5 b(alues:)41
-b(`)p Fy(all)p FD(',)30 b(`)p Fy(cnk_all)p FD(',)f(`)p
-Fy(plc_all)p FD(')630 847 y(Mnemonic:)41 b(All)150 1154
-y Fz(Ch)m(unk)29 b(V)-8 b(ariables)32 b(with)e(at)h(least)g(Tw)m(o)g
-(Dimensions)g([)p Fo(default)9 b Fz(])630 1263 y FD(De\014nition:)41
+(v)m(o)s(cation:)43 b Fz(ncchunk)630 737 y FA(cnk)p 775
+737 28 4 v 40 w(plc)36 b FE(k)m(ey)31 b(v)-5 b(alues:)41
+b(`)p Fz(all)p FE(',)30 b(`)p Fz(cnk_all)p FE(',)f(`)p
+Fz(plc_all)p FE(')630 847 y(Mnemonic:)41 b(All)150 1154
+y FA(Ch)m(unk)29 b(V)-8 b(ariables)32 b(with)e(at)h(least)g(Tw)m(o)g
+(Dimensions)g([)p Fp(default)9 b FA(])630 1263 y FE(De\014nition:)41
 b(Ch)m(unk)29 b(all)j(v)-5 b(ariables)31 b(p)s(ossible)e(with)i(at)g
 (least)g(t)m(w)m(o)h(dimensions)630 1373 y(Alternate)g(in)m(v)m(o)s
-(cation:)43 b(none)630 1482 y Fz(cnk)p 775 1482 V 40
-w(plc)36 b FD(k)m(ey)31 b(v)-5 b(alues:)41 b(`)p Fy(g2d)p
-FD(',)30 b(`)p Fy(cnk_g2d)p FD(',)f(`)p Fy(plc_g2d)p
-FD(')630 1592 y(Mnemonic:)41 b Fo(G)8 b FD(reater)32
-b(than)e(or)g(equal)h(to)g Fo(2)43 b(D)9 b FD(imensions)150
-1899 y Fz(Ch)m(unk)29 b(V)-8 b(ariables)32 b(with)e(at)h(least)g(Three)
-f(Dimensions)630 2008 y FD(De\014nition:)41 b(Ch)m(unk)29
+(cation:)43 b(none)630 1482 y FA(cnk)p 775 1482 V 40
+w(plc)36 b FE(k)m(ey)31 b(v)-5 b(alues:)41 b(`)p Fz(g2d)p
+FE(',)30 b(`)p Fz(cnk_g2d)p FE(',)f(`)p Fz(plc_g2d)p
+FE(')630 1592 y(Mnemonic:)41 b Fp(G)8 b FE(reater)32
+b(than)e(or)g(equal)h(to)g Fp(2)43 b(D)9 b FE(imensions)150
+1899 y FA(Ch)m(unk)29 b(V)-8 b(ariables)32 b(with)e(at)h(least)g(Three)
+f(Dimensions)630 2008 y FE(De\014nition:)41 b(Ch)m(unk)29
 b(all)j(v)-5 b(ariables)31 b(p)s(ossible)e(with)i(at)g(least)g(three)g
 (dimensions)630 2118 y(Alternate)h(in)m(v)m(o)s(cation:)43
-b(none)630 2228 y Fz(cnk)p 775 2228 V 40 w(plc)36 b FD(k)m(ey)31
-b(v)-5 b(alues:)41 b(`)p Fy(g3d)p FD(',)30 b(`)p Fy(cnk_g3d)p
-FD(',)f(`)p Fy(plc_g3d)p FD(')630 2337 y(Mnemonic:)41
-b Fo(G)8 b FD(reater)32 b(than)e(or)g(equal)h(to)g Fo(3)43
-b(D)9 b FD(imensions)150 2644 y Fz(Ch)m(unk)29 b(One-Dimensional)i
-(Record)g(V)-8 b(ariables)630 2754 y FD(De\014nition:)41
+b(none)630 2228 y FA(cnk)p 775 2228 V 40 w(plc)36 b FE(k)m(ey)31
+b(v)-5 b(alues:)41 b(`)p Fz(g3d)p FE(',)30 b(`)p Fz(cnk_g3d)p
+FE(',)f(`)p Fz(plc_g3d)p FE(')630 2337 y(Mnemonic:)41
+b Fp(G)8 b FE(reater)32 b(than)e(or)g(equal)h(to)g Fp(3)43
+b(D)9 b FE(imensions)150 2644 y FA(Ch)m(unk)29 b(One-Dimensional)i
+(Record)g(V)-8 b(ariables)630 2754 y FE(De\014nition:)41
 b(Ch)m(unk)29 b(all)j(1-D)f(record)f(v)-5 b(ariables)630
 2863 y(Alternate)32 b(in)m(v)m(o)s(cation:)43 b(none)630
-2973 y(An)m(y)34 b(sp)s(eci\014ed)g(\(with)h(`)p Fy(--cnk_dmn)p
-FD('\))d(record)j(dimension)f(c)m(h)m(unksizes)h(will)f(b)s(e)g
+2973 y(An)m(y)34 b(sp)s(eci\014ed)g(\(with)h(`)p Fz(--cnk_dmn)p
+FE('\))d(record)j(dimension)f(c)m(h)m(unksizes)h(will)f(b)s(e)g
 (applied)630 3082 y(only)26 b(to)h(1-D)f(record)g(v)-5
 b(ariables)27 b(\(and)e(to)i(no)f(other)g(v)-5 b(ariables\).)40
 b(Other)25 b(dimensions)g(ma)m(y)630 3192 y(b)s(e)i(c)m(h)m(unk)m(ed)i
-(with)e(their)h(o)m(wn)g(`)p Fy(--cnk_dmn)p FD(')e(options)j(that)f
+(with)e(their)h(o)m(wn)g(`)p Fz(--cnk_dmn)p FE(')e(options)j(that)f
 (will)h(apply)e(to)i(all)g(v)-5 b(ariables.)630 3302
-y Fz(cnk)p 775 3302 V 40 w(plc)36 b FD(k)m(ey)31 b(v)-5
-b(alues:)41 b(`)p Fy(r1d)p FD(',)30 b(`)p Fy(cnk_r1d)p
-FD(',)f(`)p Fy(plc_r1d)p FD(')630 3411 y(Mnemonic:)41
-b Fo(R)t FD(ecord)31 b Fo(1)p FD(-)p Fo(D)39 b FD(v)-5
-b(ariables)150 3718 y Fz(Ch)m(unk)29 b(V)-8 b(ariables)32
+y FA(cnk)p 775 3302 V 40 w(plc)36 b FE(k)m(ey)31 b(v)-5
+b(alues:)41 b(`)p Fz(r1d)p FE(',)30 b(`)p Fz(cnk_r1d)p
+FE(',)f(`)p Fz(plc_r1d)p FE(')630 3411 y(Mnemonic:)41
+b Fp(R)t FE(ecord)31 b Fp(1)p FE(-)p Fp(D)39 b FE(v)-5
+b(ariables)150 3718 y FA(Ch)m(unk)29 b(V)-8 b(ariables)32
 b(Con)m(taining)f(Explicitly)g(Ch)m(unk)m(ed)f(Dimensions)630
-3828 y FD(De\014nition:)62 b(Ch)m(unk)40 b(all)i(v)-5
+3828 y FE(De\014nition:)62 b(Ch)m(unk)40 b(all)i(v)-5
 b(ariables)41 b(p)s(ossible)g(that)g(con)m(tain)h(at)g(least)g(one)g
 (dimension)630 3937 y(whose)j(c)m(h)m(unksize)h(w)m(as)g(explicitly)h
-(set)f(with)f(the)h(`)p Fy(--cnk_dmn)p FD(')d(option.)86
+(set)f(with)f(the)h(`)p Fz(--cnk_dmn)p FE(')d(option.)86
 b(Alternate)630 4047 y(in)m(v)m(o)s(cation:)43 b(none)630
-4156 y Fz(cnk)p 775 4156 V 40 w(plc)36 b FD(k)m(ey)31
-b(v)-5 b(alues:)41 b(`)p Fy(xpl)p FD(',)30 b(`)p Fy(cnk_xpl)p
-FD(',)f(`)p Fy(plc_xpl)p FD(')630 4266 y(Mnemonic:)41
-b(E)p Fo(XPL)p FD(icitly)31 b(sp)s(eci\014ed)f(dimensions)150
-4573 y Fz(Ch)m(unk)f(V)-8 b(ariables)32 b(that)f(are)f(already)h(Ch)m
-(unk)m(ed)630 4682 y FD(De\014nition:)62 b(Ch)m(unk)39
+4156 y FA(cnk)p 775 4156 V 40 w(plc)36 b FE(k)m(ey)31
+b(v)-5 b(alues:)41 b(`)p Fz(xpl)p FE(',)30 b(`)p Fz(cnk_xpl)p
+FE(',)f(`)p Fz(plc_xpl)p FE(')630 4266 y(Mnemonic:)41
+b(E)p Fp(XPL)p FE(icitly)31 b(sp)s(eci\014ed)f(dimensions)150
+4573 y FA(Ch)m(unk)f(V)-8 b(ariables)32 b(that)f(are)f(already)h(Ch)m
+(unk)m(ed)630 4682 y FE(De\014nition:)62 b(Ch)m(unk)39
 b(only)i(v)-5 b(ariables)41 b(that)g(are)g(already)g(c)m(h)m(unk)m(ed)g
 (in)f(the)h(input)f(\014le.)630 4792 y(When)27 b(used)g(in)g
-(conjunction)h(with)f(`)p Fy(cnk_map=xst)p FD(')e(this)i(option)h
+(conjunction)h(with)f(`)p Fz(cnk_map=xst)p FE(')e(this)i(option)h
 (preserv)m(es)f(and)g(copies)630 4902 y(the)21 b(c)m(h)m(unking)g
 (parameters)h(from)e(the)i(input)e(to)h(the)h(output)e(\014le.)38
 b(Alternate)23 b(in)m(v)m(o)s(cation:)630 5011 y(none)630
-5121 y Fz(cnk)p 775 5121 V 40 w(plc)36 b FD(k)m(ey)31
-b(v)-5 b(alues:)41 b(`)p Fy(xst)p FD(',)30 b(`)p Fy(cnk_xst)p
-FD(',)f(`)p Fy(plc_xst)p FD(')630 5230 y(Mnemonic:)41
-b(E)p Fo(X)14 b FD(i)p Fo(ST)e FD(ing)31 b(c)m(h)m(unk)m(ed)g(v)-5
+5121 y FA(cnk)p 775 5121 V 40 w(plc)36 b FE(k)m(ey)31
+b(v)-5 b(alues:)41 b(`)p Fz(xst)p FE(',)30 b(`)p Fz(cnk_xst)p
+FE(',)f(`)p Fz(plc_xst)p FE(')630 5230 y(Mnemonic:)41
+b(E)p Fp(X)14 b FE(i)p Fp(ST)e FE(ing)31 b(c)m(h)m(unk)m(ed)g(v)-5
 b(ariables)p eop end
 %%Page: 75 81
-TeXDict begin 75 80 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(75)150 299 y Fz(Unc)m(h)m(unking)630
-408 y FD(De\014nition:)68 b(Unc)m(h)m(unk)43 b(all)h(v)-5
-b(ariables)45 b(p)s(ossible.)80 b(The)43 b FC(HDF5)h
-FD(storge)g(la)m(y)m(er)h(requires)630 518 y(that)27
+TeXDict begin 75 80 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(75)150 299 y FA(Ch)m(unk)29
+b(V)-8 b(ariables)32 b(with)e Fh(NCO)g FA(recommendations)630
+408 y FE(De\014nition:)66 b(Ch)m(unk)41 b(all)j(v)-5
+b(ariables)44 b(according)f(to)h FD(NCO)e FE(b)s(est)h(practices.)79
+b(This)42 b(is)h(a)630 518 y(virtual)d(option)h(that)f(ensures)f(the)h
+(c)m(h)m(unking)g(p)s(olicy)g(is)g(\(in)g(the)g(sub)5
+b(jectiv)m(e)41 b(opinion)630 628 y(of)j(the)g(authors\))h(the)f(b)s
+(est)f(p)s(olicy)i(for)f(t)m(ypical)h(usage.)83 b(As)44
+b(of)g FD(NCO)g FE(v)m(ersion)g(4.4.8)630 737 y(\(F)-8
+b(ebruary)g(,)45 b(2015\),)i(this)41 b(virtual)h(p)s(olicy)g(implemen)m
+(ts)g(`)p Fz(map_rew)p FE(')e(for)i(3-D)g(v)-5 b(ariables)630
+847 y(and)30 b(`)p Fz(map_lfp)p FE(')f(for)h(all)h(other)g(v)-5
+b(ariables.)630 956 y(Alternate)32 b(in)m(v)m(o)s(cation:)43
+b(none)630 1066 y FA(cnk)p 775 1066 28 4 v 40 w(plc)36
+b FE(k)m(ey)31 b(v)-5 b(alues:)41 b(`)p Fz(nco)p FE(',)30
+b(`)p Fz(cnk_nco)p FE(',)f(`)p Fz(plc_nco)p FE(')630
+1176 y(Mnemonic:)41 b Fp(N)15 b FE(et)p Fp(C)e FE(DF)p
+Fp(O)c FE(p)s(erator)150 1440 y FA(Unc)m(h)m(unking)630
+1549 y FE(De\014nition:)68 b(Unc)m(h)m(unk)43 b(all)h(v)-5
+b(ariables)45 b(p)s(ossible.)80 b(The)43 b FD(HDF5)h
+FE(storge)g(la)m(y)m(er)h(requires)630 1659 y(that)27
 b(record)g(v)-5 b(ariables)28 b(\(i.e.,)h(v)-5 b(ariables)28
 b(that)f(con)m(tain)h(at)g(least)g(one)f(record)g(dimension\))630
-628 y(m)m(ust)35 b(b)s(e)g(c)m(h)m(unk)m(ed.)55 b(Also)36
+1768 y(m)m(ust)35 b(b)s(e)g(c)m(h)m(unk)m(ed.)55 b(Also)36
 b(v)-5 b(ariables)36 b(that)g(are)g(compressed)f(or)g(use)g(c)m(hec)m
-(ksums)h(m)m(ust)630 737 y(b)s(e)30 b(c)m(h)m(unk)m(ed.)41
+(ksums)h(m)m(ust)630 1878 y(b)s(e)30 b(c)m(h)m(unk)m(ed.)41
 b(Suc)m(h)29 b(v)-5 b(ariables)31 b(cannot)g(b)s(e)f(unc)m(h)m(unk)m
-(ed.)630 847 y(Alternate)i(in)m(v)m(o)s(cation:)43 b
-Fy(ncunchunk)630 956 y Fz(cnk)p 775 956 28 4 v 40 w(plc)36
-b FD(k)m(ey)31 b(v)-5 b(alues:)41 b(`)p Fy(uck)p FD(',)30
-b(`)p Fy(cnk_uck)p FD(',)f(`)p Fy(plc_uck)p FD(',)h(`)p
-Fy(unchunk)p FD(')630 1066 y(Mnemonic:)41 b Fo(U)15 b
-FD(n)p Fo(C)e FD(h)m(un)p Fo(K)150 1376 y FD(Equiv)-5
+(ed.)630 1988 y(Alternate)i(in)m(v)m(o)s(cation:)43 b
+Fz(ncunchunk)630 2097 y FA(cnk)p 775 2097 V 40 w(plc)36
+b FE(k)m(ey)31 b(v)-5 b(alues:)41 b(`)p Fz(uck)p FE(',)30
+b(`)p Fz(cnk_uck)p FE(',)f(`)p Fz(plc_uck)p FE(',)h(`)p
+Fz(unchunk)p FE(')630 2207 y(Mnemonic:)41 b Fp(U)15 b
+FE(n)p Fp(C)e FE(h)m(un)p Fp(K)150 2498 y FE(Equiv)-5
 b(alen)m(t)26 b(k)m(ey)g(v)-5 b(alues)26 b(are)g(fully)f(in)m(terc)m
 (hangeable.)41 b(Multiple)26 b(equiv)-5 b(alen)m(t)27
-b(options)f(are)f(pro)m(vided)g(to)150 1486 y(satisfy)g(disparate)g
-(needs)f(and)g(tastes)h(of)g FC(NCO)f FD(users)g(w)m(orking)g(with)h
-(scripts)f(and)g(from)g(the)g(command)150 1595 y(line.)275
-1763 y(The)32 b(c)m(h)m(unking)h(algorithms)h(m)m(ust)f(kno)m(w)g(the)h
+b(options)f(are)f(pro)m(vided)g(to)150 2608 y(satisfy)g(disparate)g
+(needs)f(and)g(tastes)h(of)g FD(NCO)f FE(users)g(w)m(orking)g(with)h
+(scripts)f(and)g(from)g(the)g(command)150 2717 y(line.)275
+2877 y(The)32 b(c)m(h)m(unking)h(algorithms)h(m)m(ust)f(kno)m(w)g(the)h
 (c)m(h)m(unksizes)f(of)h(eac)m(h)g(dimension)f(of)g(eac)m(h)h(v)-5
-b(ariable)150 1873 y(to)29 b(b)s(e)e(c)m(h)m(unk)m(ed.)40
+b(ariable)150 2986 y(to)29 b(b)s(e)e(c)m(h)m(unk)m(ed.)40
 b(The)28 b(corresp)s(ondence)f(b)s(et)m(w)m(een)i(the)f(input)f(v)-5
 b(ariable)29 b(shap)s(e)e(and)g(the)h(c)m(h)m(unksizes)h(is)150
-1982 y(called)i(the)e Fz(c)m(h)m(unking)g(map)p FD(.)40
+3096 y(called)i(the)e FA(c)m(h)m(unking)g(map)p FE(.)40
 b(The)29 b(user)g(sp)s(eci\014es)g(the)h(desired)e(c)m(h)m(unking)i
-(map)f(with)g(the)g(`)p Fy(-M)p FD(')g(switc)m(h)150
-2092 y(\(or)c(its)g(long)g(option)g(equiv)-5 b(alen)m(ts,)27
-b(`)p Fy(--cnk_map)p FD(')22 b(and)i(`)p Fy(--chunk_map)p
-FD('\))f(and)h(its)g Fz(cnk)p 3115 2092 V 40 w(map)j
-FD(argumen)m(t.)150 2201 y(Eigh)m(t)k(c)m(h)m(unking)g(maps)e(are)i
-(curren)m(tly)g(implemen)m(ted:)150 2511 y Fz(Ch)m(unksize)f(Equals)g
-(Dimension)h(Size)g([)p Fo(default)9 b Fz(])630 2621
-y FD(De\014nition:)43 b(Ch)m(unksize)30 b(defaults)h(to)h(dimension)f
+(map)f(with)g(the)g(`)p Fz(-M)p FE(')g(switc)m(h)150
+3205 y(\(or)c(its)g(long)g(option)g(equiv)-5 b(alen)m(ts,)27
+b(`)p Fz(--cnk_map)p FE(')22 b(and)i(`)p Fz(--chunk_map)p
+FE('\))f(and)h(its)g FA(cnk)p 3115 3205 V 40 w(map)j
+FE(argumen)m(t.)150 3315 y(Eigh)m(t)k(c)m(h)m(unking)g(maps)e(are)i
+(curren)m(tly)g(implemen)m(ted:)150 3606 y FA(Ch)m(unksize)f(Equals)g
+(Dimension)h(Size)g([)p Fp(default)9 b FA(])630 3716
+y FE(De\014nition:)43 b(Ch)m(unksize)30 b(defaults)h(to)h(dimension)f
 (size.)44 b(Explicitly)32 b(sp)s(ecify)e(c)m(h)m(unksizes)630
-2731 y(for)g(particular)h(dimensions)e(with)i(`)p Fy(--cnk_dmn)p
-FD(')d(option.)630 2840 y Fz(cnk)p 775 2840 V 40 w(map)33
-b FD(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fy(dmn)p FD(',)30
-b(`)p Fy(cnk_dmn)p FD(',)f(`)p Fy(map_dmn)p FD(')630
-2950 y(Mnemonic:)41 b Fo(D)9 b FD(i)p Fo(M)15 b FD(e)p
-Fo(N)g FD(sion)150 3235 y Fz(Ch)m(unksize)30 b(Equals)g(Dimension)h
-(Size)g(except)g(Record)g(Dimension)630 3345 y FD(De\014nition:)52
+3826 y(for)g(particular)h(dimensions)e(with)i(`)p Fz(--cnk_dmn)p
+FE(')d(option.)630 3935 y FA(cnk)p 775 3935 V 40 w(map)33
+b FE(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fz(dmn)p FE(',)30
+b(`)p Fz(cnk_dmn)p FE(',)f(`)p Fz(map_dmn)p FE(')630
+4045 y(Mnemonic:)41 b Fp(D)9 b FE(i)p Fp(M)15 b FE(e)p
+Fp(N)g FE(sion)150 4309 y FA(Ch)m(unksize)30 b(Equals)g(Dimension)h
+(Size)g(except)g(Record)g(Dimension)630 4418 y FE(De\014nition:)52
 b(Ch)m(unksize)35 b(equals)h(dimension)f(size)h(except)g(record)g
-(dimension)f(has)g(size)630 3454 y(one.)55 b(Explicitly)36
+(dimension)f(has)g(size)630 4528 y(one.)55 b(Explicitly)36
 b(sp)s(ecify)f(c)m(h)m(unksizes)h(for)e(particular)i(dimensions)e(with)
-h(`)p Fy(--cnk_dmn)p FD(')630 3564 y(option.)630 3673
-y Fz(cnk)p 775 3673 V 40 w(map)e FD(k)m(ey)e(v)-5 b(alues:)41
-b(`)p Fy(rd1)p FD(',)30 b(`)p Fy(cnk_rd1)p FD(',)f(`)p
-Fy(map_rd1)p FD(')630 3783 y(Mnemonic:)41 b Fo(R)t FD(ecord)31
-b Fo(D)9 b FD(imension)29 b(size)i Fo(1)150 4068 y Fz(Ch)m(unksize)f
-(Equals)g(Scalar)h(Size)g(Sp)s(eci\014ed)630 4178 y FD(De\014nition:)41
+h(`)p Fz(--cnk_dmn)p FE(')630 4638 y(option.)630 4747
+y FA(cnk)p 775 4747 V 40 w(map)e FE(k)m(ey)e(v)-5 b(alues:)41
+b(`)p Fz(rd1)p FE(',)30 b(`)p Fz(cnk_rd1)p FE(',)f(`)p
+Fz(map_rd1)p FE(')630 4857 y(Mnemonic:)41 b Fp(R)t FE(ecord)31
+b Fp(D)9 b FE(imension)29 b(size)i Fp(1)150 5121 y FA(Ch)m(unksize)f
+(Equals)g(Scalar)h(Size)g(Sp)s(eci\014ed)630 5230 y FE(De\014nition:)41
 b(Ch)m(unksize)30 b(for)g(all)i(dimensions)d(is)i(set)g(with)f(the)g(`)
-p Fy(--cnk_scl)p FD(')f(option.)630 4288 y Fz(cnk)p 775
-4288 V 40 w(map)k FD(k)m(ey)e(v)-5 b(alues:)41 b(`)p
-Fy(xpl)p FD(',)30 b(`)p Fy(cnk_xpl)p FD(',)f(`)p Fy(map_xpl)p
-FD(')630 4397 y(Mnemonic:)41 b(E)p Fo(XPL)p FD(icitly)31
-b(sp)s(eci\014ed)f(dimensions)150 4682 y Fz(Ch)m(unksize)g(Pro)s(duct)f
-(Matc)m(hes)j(Scalar)f(Size)g(Sp)s(eci\014ed)630 4792
-y FD(De\014nition:)47 b(The)32 b(pro)s(duct)g(of)i(the)f(c)m(h)m
-(unksizes)h(for)f(eac)m(h)h(v)-5 b(ariable)34 b(matc)m(hes)g(\(appro)m
-(xi-)630 4902 y(mately)f(equals\))g(the)f(size)g(sp)s(eci\014ed)f(with)
-h(the)g(`)p Fy(--cnk_scl)p FD(')e(option.)46 b(A)31 b(dimension)h(of)
-630 5011 y(size)37 b(one)g(is)f(said)h(to)g(b)s(e)f Fo(de)-5
-b(gener)g(ate)p FD(.)60 b(F)-8 b(or)37 b(a)g(v)-5 b(ariable)37
-b(of)g(rank)f Fz(R)g FD(\(i.e.,)k(with)c Fz(R)g FD(non-)630
-5121 y(degenerate)30 b(dimensions\),)f(the)g(c)m(h)m(unksize)h(in)e
-(eac)m(h)i(non-degenerate)g(dimension)e(is)h(the)630
-5230 y Fz(R)p FD(th)h(ro)s(ot)h(of)f Fz(cnk)p 1256 5230
-V 40 w(scl)p FD(.)630 5340 y Fz(cnk)p 775 5340 V 40 w(map)j
-FD(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fy(prd)p FD(',)30
-b(`)p Fy(cnk_prd)p FD(',)f(`)p Fy(map_prd)p FD(')p eop
-end
+p Fz(--cnk_scl)p FE(')f(option.)630 5340 y FA(cnk)p 775
+5340 V 40 w(map)k FE(k)m(ey)e(v)-5 b(alues:)41 b(`)p
+Fz(xpl)p FE(',)30 b(`)p Fz(cnk_xpl)p FE(',)f(`)p Fz(map_xpl)p
+FE(')p eop end
 %%Page: 76 82
-TeXDict begin 76 81 bop 150 -116 a FD(76)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)630 299 y(Mnemonic:)41 b Fo(PR)t
-FD(o)p Fo(D)9 b FD(uct)150 579 y Fz(Ch)m(unksize)30 b(Lefter)h(Pro)s
-(duct)e(Matc)m(hes)j(Scalar)f(Size)g(Sp)s(eci\014ed)630
-688 y FD(De\014nition:)63 b(The)40 b(pro)s(duct)g(of)h(the)g(c)m(h)m
-(unksizes)h(for)f(eac)m(h)h(v)-5 b(ariable)42 b(\(appro)m(ximately\))
-630 798 y(equals)g(the)f(size)i(sp)s(eci\014ed)d(with)h(the)h(`)p
-Fy(--cnk_scl)p FD(')d(option.)74 b(This)41 b(is)g(accomplished)630
-908 y(b)m(y)d(using)f(dimension)h(sizes)h(as)f(c)m(h)m(unksizes)g(for)g
+TeXDict begin 76 81 bop 150 -116 a FE(76)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)630 299 y(Mnemonic:)41 b(E)p
+Fp(XPL)p FE(icitly)31 b(sp)s(eci\014ed)f(dimensions)150
+562 y FA(Ch)m(unksize)g(Pro)s(duct)f(Matc)m(hes)j(Scalar)f(Size)g(Sp)s
+(eci\014ed)630 671 y FE(De\014nition:)47 b(The)32 b(pro)s(duct)g(of)i
+(the)f(c)m(h)m(unksizes)h(for)f(eac)m(h)h(v)-5 b(ariable)34
+b(matc)m(hes)g(\(appro)m(xi-)630 781 y(mately)f(equals\))g(the)f(size)g
+(sp)s(eci\014ed)f(with)h(the)g(`)p Fz(--cnk_scl)p FE(')e(option.)46
+b(A)31 b(dimension)h(of)630 891 y(size)37 b(one)g(is)f(said)h(to)g(b)s
+(e)f Fp(de)-5 b(gener)g(ate)p FE(.)60 b(F)-8 b(or)37
+b(a)g(v)-5 b(ariable)37 b(of)g(rank)f FA(R)g FE(\(i.e.,)k(with)c
+FA(R)g FE(non-)630 1000 y(degenerate)30 b(dimensions\),)f(the)g(c)m(h)m
+(unksize)h(in)e(eac)m(h)i(non-degenerate)g(dimension)e(is)h(the)630
+1110 y FA(R)p FE(th)h(ro)s(ot)h(of)f FA(cnk)p 1256 1110
+28 4 v 40 w(scl)p FE(.)630 1219 y FA(cnk)p 775 1219 V
+40 w(map)j FE(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fz(prd)p
+FE(',)30 b(`)p Fz(cnk_prd)p FE(',)f(`)p Fz(map_prd)p
+FE(')630 1329 y(Mnemonic:)41 b Fp(PR)t FE(o)p Fp(D)9
+b FE(uct)150 1592 y FA(Ch)m(unksize)30 b(Lefter)h(Pro)s(duct)e(Matc)m
+(hes)j(Scalar)f(Size)g(Sp)s(eci\014ed)630 1702 y FE(De\014nition:)63
+b(The)40 b(pro)s(duct)g(of)h(the)g(c)m(h)m(unksizes)h(for)f(eac)m(h)h
+(v)-5 b(ariable)42 b(\(appro)m(ximately\))630 1811 y(equals)g(the)f
+(size)i(sp)s(eci\014ed)d(with)h(the)h(`)p Fz(--cnk_scl)p
+FE(')d(option.)74 b(This)41 b(is)g(accomplished)630 1921
+y(b)m(y)d(using)f(dimension)h(sizes)h(as)f(c)m(h)m(unksizes)g(for)g
 (the)g(righ)m(tmost)h(\(most)g(rapidly)f(v)-5 b(ary-)630
-1017 y(ing\))28 b(dimensions,)g(and)g(then)f(\\\015exing")i(the)f(c)m
+2030 y(ing\))28 b(dimensions,)g(and)g(then)f(\\\015exing")i(the)f(c)m
 (h)m(unksize)h(of)f(the)g(leftmost)h(\(least)g(rapidly)630
-1127 y(v)-5 b(arying\))30 b(dimensions)f(suc)m(h)g(that)h(the)f(pro)s
+2140 y(v)-5 b(arying\))30 b(dimensions)f(suc)m(h)g(that)h(the)f(pro)s
 (duct)g(of)g(all)i(c)m(h)m(unksizes)f(matc)m(hes)g(the)g(sp)s(eci-)630
-1236 y(\014ed)g(size.)42 b(All)31 b(dimensions)f(to)h(the)g(left)h(of)e
+2250 y(\014ed)g(size.)42 b(All)31 b(dimensions)f(to)h(the)g(left)h(of)e
 (and)g(including)g(the)h(\014rst)f(record)h(dimension)630
-1346 y(de\014ne)f(the)g(left-hand)h(side.)40 b(This)30
+2359 y(de\014ne)f(the)g(left-hand)h(side.)40 b(This)30
 b(map)g(w)m(as)h(\014rst)e(prop)s(osed)g(b)m(y)i(Chris)e(Bark)m(er.)630
-1456 y Fz(cnk)p 775 1456 28 4 v 40 w(map)k FD(k)m(ey)e(v)-5
-b(alues:)41 b(`)p Fy(lfp)p FD(',)30 b(`)p Fy(cnk_lfp)p
-FD(',)f(`)p Fy(map_lfp)p FD(')630 1565 y(Mnemonic:)41
-b Fo(L)p FD(e)p Fo(F)12 b FD(ter)32 b Fo(P)9 b FD(ro)s(duct)150
-1845 y Fz(Ch)m(unksize)30 b(Equals)g(Existing)h(Ch)m(unksize)630
-1955 y FD(De\014nition:)54 b(Ch)m(unksizes)36 b(are)h(copied)g(from)f
+2469 y FA(cnk)p 775 2469 V 40 w(map)k FE(k)m(ey)e(v)-5
+b(alues:)41 b(`)p Fz(lfp)p FE(',)30 b(`)p Fz(cnk_lfp)p
+FE(',)f(`)p Fz(map_lfp)p FE(')630 2578 y(Mnemonic:)41
+b Fp(L)p FE(e)p Fp(F)12 b FE(ter)32 b Fp(P)9 b FE(ro)s(duct)150
+2841 y FA(Ch)m(unksize)30 b(Equals)g(Existing)h(Ch)m(unksize)630
+2951 y FE(De\014nition:)54 b(Ch)m(unksizes)36 b(are)h(copied)g(from)f
 (the)h(input)f(to)h(the)g(output)f(\014le)h(for)f(ev)m(ery)630
-2064 y(v)-5 b(ariable)36 b(that)f(is)g(c)m(h)m(unk)m(ed)g(in)f(the)h
+3061 y(v)-5 b(ariable)36 b(that)f(is)g(c)m(h)m(unk)m(ed)g(in)f(the)h
 (input)f(\014le.)54 b(V)-8 b(ariables)36 b(not)f(c)m(h)m(unk)m(ed)g(in)
-f(the)h(input)630 2174 y(\014le)30 b(will)h(b)s(e)f(c)m(h)m(unk)m(ed)g
-(with)h(default)f(mappings.)630 2283 y Fz(cnk)p 775 2283
-V 40 w(map)j FD(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fy(xst)p
-FD(',)30 b(`)p Fy(cnk_xst)p FD(',)f(`)p Fy(map_xst)p
-FD(')630 2393 y(Mnemonic:)41 b(E)p Fo(X)14 b FD(i)p Fo(ST)150
-2673 y Fz(Ch)m(unksize)30 b(Balances)i(1D)f(and)f(\(N-1\)-D)j(Access)e
-(to)g(N-D)g(V)-8 b(ariable)630 2783 y FD(De\014nition:)40
+f(the)h(input)630 3170 y(\014le)30 b(will)h(b)s(e)f(c)m(h)m(unk)m(ed)g
+(with)h(default)f(mappings.)630 3280 y FA(cnk)p 775 3280
+V 40 w(map)j FE(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fz(xst)p
+FE(',)30 b(`)p Fz(cnk_xst)p FE(',)f(`)p Fz(map_xst)p
+FE(')630 3389 y(Mnemonic:)41 b(E)p Fp(X)14 b FE(i)p Fp(ST)150
+3652 y FA(Ch)m(unksize)30 b(Balances)i(1D)f(and)f(\(N-1\)-D)j(Access)e
+(to)g(N-D)g(V)-8 b(ariable)630 3762 y FE(De\014nition:)40
 b(Ch)m(unksizes)27 b(are)i(c)m(hosen)f(so)g(that)h(1-D)g(and)e(\()p
-Fz(\(N-1\))q FD(\)-D)k(h)m(yp)s(erslabs)c(of)h Fz(3)p
-FD(-D)630 2892 y(v)-5 b(ariables)41 b(\(e.g.,)k(p)s(oin)m(t-timeseries)
+FA(\(N-1\))q FE(\)-D)k(h)m(yp)s(erslabs)c(of)h FA(3)p
+FE(-D)630 3871 y(v)-5 b(ariables)41 b(\(e.g.,)k(p)s(oin)m(t-timeseries)
 d(orn)e(latitude/longitude)j(surfaces)e(of)f(3-D)i(\014elds\))630
-3002 y(b)s(oth)f(require)h(appro)m(ximately)h(the)g(n)m(um)m(b)s(er)d
+3981 y(b)s(oth)f(require)h(appro)m(ximately)h(the)g(n)m(um)m(b)s(er)d
 (of)j(c)m(h)m(unks.)75 b(Hence)43 b(their)f(access)h(time)630
-3111 y(should)31 b(b)s(e)g(balanced.)44 b(Russ)31 b(Rew)h(explains)f
+4091 y(should)31 b(b)s(e)g(balanced.)44 b(Russ)31 b(Rew)h(explains)f
 (the)h(motiv)-5 b(ation)33 b(and)e(deriv)-5 b(ation)33
-b(for)e(this)630 3221 y(strategy)h(here)f(\()p Fy
+b(for)e(this)630 4200 y(strategy)h(here)f(\()p Fz
 (http://www.unidata.ucar.edu/blogs/devel)o(oper)o(/en/ent)o(ry/)630
-3331 y(chunking_data_choosing_s)o(hape)o(s)p FD(\).)630
-3440 y Fz(cnk)p 775 3440 V 40 w(map)i FD(k)m(ey)e(v)-5
-b(alues:)41 b(`)p Fy(rew)p FD(',)30 b(`)p Fy(cnk_rew)p
-FD(',)f(`)p Fy(map_rew)p FD(')630 3550 y(Mnemonic:)41
-b(Russ)30 b Fo(REW)150 3830 y Fz(Ch)m(unksizes)g(use)g(netCDF4)h
-(defaults)630 3939 y FD(De\014nition:)47 b(Ch)m(unksizes)33
+4310 y(chunking_data_choosing_s)o(hape)o(s)p FE(\).)630
+4419 y FA(cnk)p 775 4419 V 40 w(map)i FE(k)m(ey)e(v)-5
+b(alues:)41 b(`)p Fz(rew)p FE(',)30 b(`)p Fz(cnk_rew)p
+FE(',)f(`)p Fz(map_rew)p FE(')630 4529 y(Mnemonic:)41
+b(Russ)30 b Fp(REW)150 4792 y FA(Ch)m(unksizes)g(use)g(netCDF4)h
+(defaults)630 4902 y FE(De\014nition:)47 b(Ch)m(unksizes)33
 b(are)h(determined)f(b)m(y)g(the)g(underlying)g(netCDF)h(library)-8
-b(.)49 b(All)630 4049 y(v)-5 b(ariables)36 b(selected)h(b)m(y)e(the)g
+b(.)49 b(All)630 5011 y(v)-5 b(ariables)36 b(selected)h(b)m(y)e(the)g
 (curren)m(t)g(c)m(h)m(unking)g(p)s(olicy)h(ha)m(v)m(e)g(their)g(c)m(h)m
-(unksizes)f(deter-)630 4158 y(mined)44 b(b)m(y)g(netCDF)g(library)g
+(unksizes)f(deter-)630 5121 y(mined)44 b(b)m(y)g(netCDF)g(library)g
 (defaults.)82 b(The)44 b(default)g(algorithm)i(netCDF)e(uses)g(to)630
-4268 y(determine)31 b(c)m(h)m(unksizes)f(has)h(c)m(hanged)g(through)e
+5230 y(determine)31 b(c)m(h)m(unksizes)f(has)h(c)m(hanged)g(through)e
 (the)i(y)m(ears,)g(and)f(th)m(us)g(dep)s(ends)e(on)j(the)630
-4378 y(netCDF)c(library)e(v)m(ersion.)40 b(This)25 b(map)g(can)i(b)s(e)
-e(used)g(to)i(reset)f(\(p)s(ortions)g(of)7 b(\))26 b(previously)630
-4487 y(c)m(h)m(unk)m(ed)31 b(\014les)f(to)h(default)g(c)m(h)m(unking)f
-(v)-5 b(alues.)630 4597 y Fz(cnk)p 775 4597 V 40 w(map)33
-b FD(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fy(nc4)p FD(',)30
-b(`)p Fy(cnk_nc4)p FD(',)f(`)p Fy(map_nc4)p FD(')630
-4706 y(Mnemonic:)41 b Fo(N)15 b FD(et)p Fo(C)e FD(DF)p
-Fo(4)150 5011 y FD(It)49 b(is)g(p)s(ossible)f(to)i(com)m(bine)g(the)f
-(ab)s(o)m(v)m(e)h(c)m(h)m(unking)f(map)f(algorithms)i(with)f(user-sp)s
-(eci\014ed)f(p)s(er-)150 5121 y(dimension)23 b(\(though)h(not)g(p)s
-(er-v)-5 b(ariable\))24 b(c)m(h)m(unksizes)g(that)g(o)m(v)m(erride)h
-(sp)s(eci\014c)e(c)m(h)m(unksizes)h(determined)150 5230
-y(b)m(y)32 b(the)h(maps)f(ab)s(o)m(v)m(e.)49 b(The)32
-b(user)f(sp)s(eci\014es)i(the)f(p)s(er-dimension)g(c)m(h)m(unksizes)h
-(with)f(the)h(\(equiv)-5 b(alen)m(t\))150 5340 y(long)23
-b(options)g(`)p Fy(--cnk_dmn)p FD(')d(or)i(`)p Fy(--chunk_dimension)p
-FD('\).)34 b(The)22 b(option)h(tak)m(es)h(t)m(w)m(o)f(comma-separated)p
+5340 y(netCDF)c(library)e(v)m(ersion.)40 b(This)25 b(map)g(can)i(b)s(e)
+e(used)g(to)i(reset)f(\(p)s(ortions)g(of)7 b(\))26 b(previously)p
 eop end
 %%Page: 77 83
-TeXDict begin 77 82 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(77)150 299 y(argumen)m(ts,)30
-b Fz(dmn)p 801 299 28 4 v 39 w(nm)p FD(,)p Fz(cnk)p 1131
-299 V 40 w(sz)p FD(,)g(whic)m(h)f(are)h(the)g(dimension)f(name)h(and)f
-(its)h(c)m(h)m(unksize,)h(resp)s(ectiv)m(ely)-8 b(.)150
-408 y(The)30 b(`)p Fy(--cnk_dmn)p FD(')e(option)j(ma)m(y)g(b)s(e)f
-(used)f(as)i(man)m(y)f(times)h(as)g(necessary)-8 b(.)275
-573 y(The)44 b(default)g(b)s(eha)m(vior)h(of)g(c)m(h)m(unking)f(dep)s
-(ends)f(on)i(sev)m(eral)h(factors.)84 b(As)44 b(men)m(tioned)h(ab)s(o)m
-(v)m(e,)150 682 y(when)e(no)g(c)m(h)m(unking)h(options)g(are)g
-(explicitly)i(sp)s(eci\014ed)d(b)m(y)g(the)h(user,)j(then)c
-FC(NCO)h FD(preserv)m(es)g(the)150 792 y(c)m(h)m(unking)30
-b(c)m(haracteristics)i(of)e(the)g(input)f(\014le)h(in)g(the)g(output)f
-(\014le.)41 b(This)29 b(is)h(equiv)-5 b(alen)m(t)31 b(to)g(sp)s
-(ecifying)150 902 y(b)s(oth)g Fz(cnk)p 511 902 V 40 w(plc)37
-b FD(and)30 b Fz(cnk)p 1020 902 V 40 w(map)k FD(as)e(\\existing",)i
-(i.e.,)f(`)p Fy(--cnk_plc=xst)27 b(--cnk_map=xst)p FD('.)40
-b(If)31 b(output)150 1011 y(netCDF4)g(\014les)g(are)g(c)m(h)m(unk)m(ed)
-f(with)g(the)h(default)f(b)s(eha)m(vior)h(of)f(the)h(netCDF4)g(library)
--8 b(.)275 1176 y(When)49 b(an)m(y)i(c)m(h)m(unking)f(parameter)h
-Fo(exc)-5 b(ept)59 b FD(`)p Fy(cnk_plc)p FD(')49 b(or)h(`)p
-Fy(cnk_map)p FD(')f(is)h(sp)s(eci\014ed)f(\(suc)m(h)i(as)150
-1285 y(`)p Fy(cnk_dmn)p FD(')22 b(or)h(`)p Fy(cnk_sz_scl)p
-FD('\),)g(then)h(the)f(\\existing")j(p)s(olicy)d(and)g(map)g(are)h
-(retained)g(and)f(the)g(output)150 1395 y(c)m(h)m(unksizes)j(are)f(mo)s
+TeXDict begin 77 82 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(77)630 299 y(c)m(h)m(unk)m(ed)31
+b(\014les)f(to)h(default)g(c)m(h)m(unking)f(v)-5 b(alues.)630
+408 y FA(cnk)p 775 408 28 4 v 40 w(map)33 b FE(k)m(ey)e(v)-5
+b(alues:)41 b(`)p Fz(nc4)p FE(',)30 b(`)p Fz(cnk_nc4)p
+FE(',)f(`)p Fz(map_nc4)p FE(')630 518 y(Mnemonic:)41
+b Fp(N)15 b FE(et)p Fp(C)e FE(DF)p Fp(4)150 788 y FA(Ch)m(unksizes)30
+b(use)g Fh(NCO)g FA(recommendations)630 898 y FE(De\014nition:)70
+b(Ch)m(unksizes)44 b(are)h(determined)g(b)m(y)f(the)h(curren)m(tly)g
+(recommended)f FD(NCO)630 1007 y FE(map.)37 b(This)21
+b(is)h(a)g(virtual)f(option)h(that)g(ensures)f(the)h(c)m(h)m(unking)f
+(map)g(is)h(\(in)f(the)h(sub)5 b(jectiv)m(e)630 1117
+y(opinion)41 b(of)h(the)f(authors\))h(the)f(b)s(est)g(map)g(for)g(t)m
+(ypical)i(usage.)75 b(As)41 b(of)g FD(NCO)g FE(v)m(ersion)630
+1227 y(4.4.8)c(\(F)-8 b(ebruary)g(,)38 b(2015\),)h(this)c(virtual)h
+(map)f(calls)i(`)p Fz(map_rew)p FE(')d(for)h(3-D)h(v)-5
+b(ariables)37 b(and)630 1336 y(`)p Fz(map_lfp)p FE(')29
+b(for)h(all)h(others.)630 1446 y FA(cnk)p 775 1446 V
+40 w(map)i FE(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fz(nco)p
+FE(',)30 b(`)p Fz(cnk_nco)p FE(',)f(`)p Fz(map_nco)p
+FE(')630 1555 y(Mnemonic:)41 b Fp(N)15 b FE(et)p Fp(C)e
+FE(DF)p Fp(O)c FE(p)s(erator)150 1851 y(It)49 b(is)g(p)s(ossible)f(to)i
+(com)m(bine)g(the)f(ab)s(o)m(v)m(e)h(c)m(h)m(unking)f(map)f(algorithms)
+i(with)f(user-sp)s(eci\014ed)f(p)s(er-)150 1960 y(dimension)23
+b(\(though)h(not)g(p)s(er-v)-5 b(ariable\))24 b(c)m(h)m(unksizes)g
+(that)g(o)m(v)m(erride)h(sp)s(eci\014c)e(c)m(h)m(unksizes)h(determined)
+150 2070 y(b)m(y)32 b(the)h(maps)f(ab)s(o)m(v)m(e.)49
+b(The)32 b(user)f(sp)s(eci\014es)i(the)f(p)s(er-dimension)g(c)m(h)m
+(unksizes)h(with)f(the)h(\(equiv)-5 b(alen)m(t\))150
+2179 y(long)23 b(options)g(`)p Fz(--cnk_dmn)p FE(')d(or)i(`)p
+Fz(--chunk_dimension)p FE('\).)34 b(The)22 b(option)h(tak)m(es)h(t)m(w)
+m(o)f(comma-separated)150 2289 y(argumen)m(ts,)30 b FA(dmn)p
+801 2289 V 39 w(nm)p FE(,)p FA(cnk)p 1131 2289 V 40 w(sz)p
+FE(,)g(whic)m(h)f(are)h(the)g(dimension)f(name)h(and)f(its)h(c)m(h)m
+(unksize,)h(resp)s(ectiv)m(ely)-8 b(.)150 2399 y(The)30
+b(`)p Fz(--cnk_dmn)p FE(')e(option)j(ma)m(y)g(b)s(e)f(used)f(as)i(man)m
+(y)f(times)h(as)g(necessary)-8 b(.)275 2559 y(The)44
+b(default)g(b)s(eha)m(vior)h(of)g(c)m(h)m(unking)f(dep)s(ends)f(on)i
+(sev)m(eral)h(factors.)84 b(As)44 b(men)m(tioned)h(ab)s(o)m(v)m(e,)150
+2668 y(when)e(no)g(c)m(h)m(unking)h(options)g(are)g(explicitly)i(sp)s
+(eci\014ed)d(b)m(y)g(the)h(user,)j(then)c FD(NCO)h FE(preserv)m(es)g
+(the)150 2778 y(c)m(h)m(unking)30 b(c)m(haracteristics)i(of)e(the)g
+(input)f(\014le)h(in)g(the)g(output)f(\014le.)41 b(This)29
+b(is)h(equiv)-5 b(alen)m(t)31 b(to)g(sp)s(ecifying)150
+2887 y(b)s(oth)g FA(cnk)p 511 2887 V 40 w(plc)37 b FE(and)30
+b FA(cnk)p 1020 2887 V 40 w(map)k FE(as)e(\\existing",)i(i.e.,)f(`)p
+Fz(--cnk_plc=xst)27 b(--cnk_map=xst)p FE('.)40 b(If)31
+b(output)150 2997 y(netCDF4)g(\014les)g(are)g(c)m(h)m(unk)m(ed)f(with)g
+(the)h(default)f(b)s(eha)m(vior)h(of)f(the)h(netCDF4)g(library)-8
+b(.)275 3157 y(When)49 b(an)m(y)i(c)m(h)m(unking)f(parameter)h
+Fp(exc)-5 b(ept)59 b FE(`)p Fz(cnk_plc)p FE(')49 b(or)h(`)p
+Fz(cnk_map)p FE(')f(is)h(sp)s(eci\014ed)f(\(suc)m(h)i(as)150
+3267 y(`)p Fz(cnk_dmn)p FE(')22 b(or)h(`)p Fz(cnk_sz_scl)p
+FE('\),)g(then)h(the)f(\\existing")j(p)s(olicy)d(and)g(map)g(are)h
+(retained)g(and)f(the)g(output)150 3376 y(c)m(h)m(unksizes)j(are)f(mo)s
 (di\014ed)f(where)h(necessary)h(in)e(accord)i(with)f(the)h(user-sp)s
-(eci\014ed)e(parameter.)39 b(When)150 1504 y(`)p Fy(cnk_map)p
-FD(')28 b(is)i(sp)s(eci\014ed)f(and)g(`)p Fy(cnk_plc)p
-FD(')f(is)i(not,)g(then)f FC(NCO)h FD(pic)m(ks)g(\(what)g(it)g(thinks)f
-(is\))h(the)g(optimal)150 1614 y(c)m(h)m(unking)j(p)s(olicy)-8
+(eci\014ed)e(parameter.)39 b(When)150 3486 y(`)p Fz(cnk_map)p
+FE(')28 b(is)i(sp)s(eci\014ed)f(and)g(`)p Fz(cnk_plc)p
+FE(')f(is)i(not,)g(then)f FD(NCO)h FE(pic)m(ks)g(\(what)g(it)g(thinks)f
+(is\))h(the)g(optimal)150 3595 y(c)m(h)m(unking)j(p)s(olicy)-8
 b(.)49 b(This)32 b(has)h(alw)m(a)m(ys)h(b)s(een)e(p)s(olicy)h(`)p
-Fy(map_g2d)p FD('.)47 b(When)33 b(`)p Fy(cnk_plc)p FD(')e(is)i(sp)s
-(eci\014ed)g(and)150 1724 y(`)p Fy(cnk_map)p FD(')f(is)h(not,)h(then)f
-FC(NCO)f FD(pic)m(ks)i(\(what)f(it)h(thinks)e(is\))h(the)h(optimal)g(c)
-m(h)m(unking)f(map.)48 b(This)32 b(has)150 1833 y(alw)m(a)m(ys)g(b)s
-(een)e(map)g(`)p Fy(map_rd1)p FD('.)275 1998 y(T)-8 b(o)30
+Fz(map_g2d)p FE('.)47 b(When)33 b(`)p Fz(cnk_plc)p FE(')e(is)i(sp)s
+(eci\014ed)g(and)150 3705 y(`)p Fz(cnk_map)p FE(')f(is)h(not,)h(then)f
+FD(NCO)f FE(pic)m(ks)i(\(what)f(it)h(thinks)e(is\))h(the)h(optimal)g(c)
+m(h)m(unking)f(map.)48 b(This)32 b(has)150 3814 y(alw)m(a)m(ys)g(b)s
+(een)e(map)g(`)p Fz(map_rd1)p FE('.)275 3974 y(T)-8 b(o)30
 b(start)h(afresh)f(and)g(return)f(to)i(netCDF4)h(c)m(h)m(unking)e
-(defaults,)h(select)h(`)p Fy(cnk_map=nc4)p FD('.)390
-2162 y Fy(#)47 b(Simple)g(chunking)e(and)i(unchunking)390
-2271 y(ncks)g(-O)g(-4)g(--cnk_plc=all)235 b(in.nc)46
-b(out.nc)h(#)g(Chunk)f(in.nc)390 2381 y(ncks)h(-O)g(-4)g
+(defaults,)h(select)h(`)p Fz(cnk_map=nc4)p FE('.)390
+4134 y Fz(#)47 b(Simple)g(chunking)e(and)i(unchunking)390
+4244 y(ncks)g(-O)g(-4)g(--cnk_plc=all)235 b(in.nc)46
+b(out.nc)h(#)g(Chunk)f(in.nc)390 4354 y(ncks)h(-O)g(-4)g
 (--cnk_plc=unchunk)c(in.nc)j(out.nc)h(#)g(Unchunk)f(in.nc)390
-2600 y(#)h(Chunk)g(data)f(then)h(unchunk)f(it,)h(printing)e
-(informative)g(metadata)390 2710 y(ncks)i(-O)g(-4)g(-D)g(4)h
-(--cnk_plc=all)c(~/nco/data/in.nc)f(~/foo.nc)390 2819
+4573 y(#)h(Chunk)g(data)f(then)h(unchunk)f(it,)h(printing)e
+(informative)g(metadata)390 4682 y(ncks)i(-O)g(-4)g(-D)g(4)h
+(--cnk_plc=all)c(~/nco/data/in.nc)f(~/foo.nc)390 4792
 y(ncks)k(-O)g(-4)g(-D)g(4)h(--cnk_plc=uck)c(~/foo.nc)h(~/foo.nc)390
-3039 y(#)i(Set)g(total)g(chunksize)e(to)i(8192)g(B)390
-3148 y(ncks)g(-O)g(-4)g(-D)g(4)h(--cnk_plc=all)c(--cnk_byt=8192)g
-(~/nco/data/in.nc)f(~/foo.nc)390 3367 y(#)k(More)g(complex)f(chunking)f
-(procedures,)g(with)i(informative)e(metadata)390 3477
-y(ncks)i(-O)g(-4)g(-D)g(4)h(--cnk_scl=8)c(~/nco/data/in.nc)g(~/foo.nc)
-390 3587 y(ncks)j(-O)g(-4)g(-D)g(4)h(--cnk_scl=8)c(dstmch90_clm.nc)g
-(~/foo.nc)390 3696 y(ncks)j(-O)g(-4)g(-D)g(4)h(--cnk_dmn)d(lat,64)h
-(--cnk_dmn)f(lon,128)h(dstmch90_clm.nc)e(\\)438 3806
-y(~/foo.nc)390 3915 y(ncks)j(-O)g(-4)g(-D)g(4)h(--cnk_plc=uck)c
-(~/foo.nc)h(~/foo.nc)390 4025 y(ncks)i(-O)g(-4)g(-D)g(4)h
-(--cnk_plc=g2d)c(--cnk_map=rd1)g(--cnk_dmn)h(lat,32)h(\\)438
-4134 y(--cnk_dmn)f(lon,128)h(dstmch90_clm_0112.nc)c(~/foo.nc)390
-4354 y(#)47 b(Chunking)f(works)g(with)h(all)g(operators...)390
-4463 y(ncap2)f(-O)i(-4)f(-D)g(4)g(--cnk_scl=8)e(-S)i
-(~/nco/data/ncap2_tst.nco)41 b(\\)438 4573 y(~/nco/data/in.nc)i
-(~/foo.nc)390 4682 y(ncbo)k(-O)g(-4)g(-D)g(4)h(--cnk_scl=8)c(-p)k
-(~/nco/data)d(in.nc)h(in.nc)g(~/foo.nc)390 4792 y(ncecat)g(-O)h(-4)g
-(-D)h(4)f(-n)g(12,2,1)f(--cnk_dmn)g(lat,32)g(\\)438 4902
-y(-p)h(/data/zender/dstmch90)42 b(dstmch90_clm01.nc)h(~/foo.nc)390
-5011 y(ncflint)j(-O)h(-4)g(-D)g(4)h(--cnk_scl=8)d(~/nco/data/in.nc)e
-(~/foo.nc)390 5121 y(ncpdq)j(-O)i(-4)f(-D)g(4)g(-P)h(all_new)d
-(--cnk_scl=8)g(-L)i(5)h(~/nco/data/in.nc)43 b(~/foo.nc)390
-5230 y(ncrcat)j(-O)h(-4)g(-D)h(4)f(-n)g(12,2,1)f(--cnk_dmn)g(lat,32)g
-(\\)438 5340 y(-p)h(/data/zender/dstmch90)42 b(dstmch90_clm01.nc)h
-(~/foo.nc)p eop end
+5011 y(#)i(Set)g(total)g(chunksize)e(to)i(8192)g(B)390
+5121 y(ncks)g(-O)g(-4)g(-D)g(4)h(--cnk_plc=all)c(--cnk_byt=8192)g
+(~/nco/data/in.nc)f(~/foo.nc)390 5340 y(#)k(More)g(complex)f(chunking)f
+(procedures,)g(with)i(informative)e(metadata)p eop end
 %%Page: 78 84
-TeXDict begin 78 83 bop 150 -116 a FD(78)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(ncwa)47 b(-O)g(-4)g(-D)g(4)h(-a)
+TeXDict begin 78 83 bop 150 -116 a FE(78)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(ncks)47 b(-O)g(-4)g(-D)g(4)h
+(--cnk_scl=8)c(~/nco/data/in.nc)g(~/foo.nc)390 408 y(ncks)j(-O)g(-4)g
+(-D)g(4)h(--cnk_scl=8)c(dstmch90_clm.nc)g(~/foo.nc)390
+518 y(ncks)j(-O)g(-4)g(-D)g(4)h(--cnk_dmn)d(lat,64)h(--cnk_dmn)f
+(lon,128)h(dstmch90_clm.nc)e(\\)438 628 y(~/foo.nc)390
+737 y(ncks)j(-O)g(-4)g(-D)g(4)h(--cnk_plc=uck)c(~/foo.nc)h(~/foo.nc)390
+847 y(ncks)i(-O)g(-4)g(-D)g(4)h(--cnk_plc=g2d)c(--cnk_map=rd1)g
+(--cnk_dmn)h(lat,32)h(\\)438 956 y(--cnk_dmn)f(lon,128)h
+(dstmch90_clm_0112.nc)c(~/foo.nc)390 1176 y(#)47 b(Chunking)f(works)g
+(with)h(all)g(operators...)390 1285 y(ncap2)f(-O)i(-4)f(-D)g(4)g
+(--cnk_scl=8)e(-S)i(~/nco/data/ncap2_tst.nco)41 b(\\)438
+1395 y(~/nco/data/in.nc)i(~/foo.nc)390 1504 y(ncbo)k(-O)g(-4)g(-D)g(4)h
+(--cnk_scl=8)c(-p)k(~/nco/data)d(in.nc)h(in.nc)g(~/foo.nc)390
+1614 y(ncecat)g(-O)h(-4)g(-D)h(4)f(-n)g(12,2,1)f(--cnk_dmn)g(lat,32)g
+(\\)438 1724 y(-p)h(/data/zender/dstmch90)42 b(dstmch90_clm01.nc)h
+(~/foo.nc)390 1833 y(ncflint)j(-O)h(-4)g(-D)g(4)h(--cnk_scl=8)d
+(~/nco/data/in.nc)e(~/foo.nc)390 1943 y(ncpdq)j(-O)i(-4)f(-D)g(4)g(-P)h
+(all_new)d(--cnk_scl=8)g(-L)i(5)h(~/nco/data/in.nc)43
+b(~/foo.nc)390 2052 y(ncrcat)j(-O)h(-4)g(-D)h(4)f(-n)g(12,2,1)f
+(--cnk_dmn)g(lat,32)g(\\)438 2162 y(-p)h(/data/zender/dstmch90)42
+b(dstmch90_clm01.nc)h(~/foo.nc)390 2271 y(ncwa)k(-O)g(-4)g(-D)g(4)h(-a)
 f(time)f(--cnk_plc=g2d)f(--cnk_map=rd1)f(--cnk_dmn)h(lat,32)h(\\)438
-408 y(--cnk_dmn)f(lon,128)h(dstmch90_clm_0112.nc)c(~/foo.nc)275
-570 y FD(Ch)m(unking)27 b(p)s(olicy)i(`)p Fy(r1d)p FD(')g(c)m(hanges)g
+2381 y(--cnk_dmn)f(lon,128)h(dstmch90_clm_0112.nc)c(~/foo.nc)275
+2641 y FE(Ch)m(unking)27 b(p)s(olicy)i(`)p Fz(r1d)p FE(')g(c)m(hanges)g
 (the)g(c)m(h)m(unksize)h(of)f(1-D)h(record)f(v)-5 b(ariables)29
-b(\(and)g(no)f(other)h(v)-5 b(ari-)150 679 y(ables\))25
-b(to)g(the)g(sp)s(eci\014ed)e(\(with)i(`)p Fy(--cnk_dmn)p
-FD('\))d(c)m(h)m(unksize.)40 b(An)m(y)24 b(sp)s(eci\014ed)g(record)g
-(dimension)g(c)m(h)m(unk-)150 789 y(sizes)33 b(will)f(b)s(e)g(applied)g
-(to)h(1-D)g(record)g(v)-5 b(ariables)32 b(only)-8 b(.)47
+b(\(and)g(no)f(other)h(v)-5 b(ari-)150 2750 y(ables\))21
+b(to)g(that)g(sp)s(eci\014ed)f(\(with)h(`)p Fz(--cnk_dmn)p
+FE('\))d(c)m(h)m(unksize.)38 b(An)m(y)21 b(sp)s(eci\014ed)f(record)g
+(dimension)g(c)m(h)m(unk-)150 2860 y(sizes)33 b(will)f(b)s(e)g(applied)
+g(to)h(1-D)g(record)g(v)-5 b(ariables)32 b(only)-8 b(.)47
 b(Other)32 b(dimensions)f(ma)m(y)i(b)s(e)f(c)m(h)m(unk)m(ed)g(with)150
-899 y(their)e(o)m(wn)h(`)p Fy(--cnk_dmn)p FD(')d(options)j(that)g(will)
-g(apply)f(to)h(all)g(v)-5 b(ariables.)41 b(F)-8 b(or)31
-b(example,)390 1060 y Fy(ncks)47 b(--cnk_plc=r1d)d
-(--cnk_dmn=time,1000.)e(in.nc)k(out.nc)275 1221 y FD(This)34
-b(sets)h Fy(time)e FD(c)m(h)m(unks)i(to)g(1000)i(only)e(in)f(1-D)i
+2969 y(their)e(o)m(wn)h(`)p Fz(--cnk_dmn)p FE(')d(options)j(that)g
+(will)g(apply)f(to)h(all)g(v)-5 b(ariables.)41 b(F)-8
+b(or)31 b(example,)390 3229 y Fz(ncks)47 b(--cnk_plc=r1d)d
+(--cnk_dmn=time,1000.)e(in.nc)k(out.nc)275 3488 y FE(This)34
+b(sets)h Fz(time)e FE(c)m(h)m(unks)i(to)g(1000)i(only)e(in)f(1-D)i
 (record)f(v)-5 b(ariables.)55 b(Without)35 b(the)h(`)p
-Fy(r1d)p FD(')e(p)s(olicy)-8 b(,)150 1331 y Fy(time)29
-b FD(c)m(h)m(unks)h(w)m(ould)g(c)m(hange)i(in)e(all)h(v)-5
-b(ariables.)275 1492 y(It)32 b(is)g(appropriate)g(to)h(conclude)f(b)m
+Fz(r1d)p FE(')e(p)s(olicy)-8 b(,)150 3598 y Fz(time)29
+b FE(c)m(h)m(unks)h(w)m(ould)g(c)m(hange)i(in)e(all)h(v)-5
+b(ariables.)275 3857 y(It)32 b(is)g(appropriate)g(to)h(conclude)f(b)m
 (y)g(informing)f(users)g(ab)s(out)h(an)g(asp)s(ect)h(of)f(c)m(h)m
-(unking)g(that)g(ma)m(y)150 1602 y(not)h(b)s(e)f(exp)s(ected.)48
+(unking)g(that)g(ma)m(y)150 3967 y(not)h(b)s(e)f(exp)s(ected.)48
 b(Three)33 b(t)m(yp)s(es)f(of)h(v)-5 b(ariables)34 b(are)f
-Fo(always)42 b FD(c)m(h)m(unk)m(ed:)k(Record)33 b(v)-5
-b(ariables,)34 b(De\015ated)150 1711 y(\(compressed\))40
+Fp(always)42 b FE(c)m(h)m(unk)m(ed:)k(Record)33 b(v)-5
+b(ariables,)34 b(De\015ated)150 4077 y(\(compressed\))40
 b(v)-5 b(ariables,)44 b(and)39 b(Chec)m(ksummed)h(v)-5
 b(ariables.)70 b(Hence)41 b(all)g(v)-5 b(ariables)40
-b(that)h(con)m(tain)h(a)150 1821 y(record)30 b(dimension)g(are)h(also)h
+b(that)h(con)m(tain)h(a)150 4186 y(record)30 b(dimension)g(are)h(also)h
 (c)m(h)m(unk)m(ed)f(\(since)g(data)g(m)m(ust)f(b)s(e)g(c)m(h)m(unk)m
-(ed)h(in)f(all)i(dimensions,)e(not)h(just)150 1931 y(one\).)62
+(ed)h(in)f(all)i(dimensions,)e(not)h(just)150 4296 y(one\).)62
 b(Unless)37 b(otherwise)h(sp)s(eci\014ed)f(b)m(y)g(the)g(user,)i(the)e
 (other)h(\(\014xed,)h(non-record\))e(dimensions)g(of)150
-2040 y(record)d(v)-5 b(ariables)36 b(are)f(assigned)g(default)f(c)m(h)m
-(unk)h(sizes.)54 b(The)34 b FC(HDF5)h FD(la)m(y)m(er)h(do)s(es)e(all)i
-(this)e(automati-)150 2150 y(cally)f(to)g(optimize)g(the)g(on-disk)f(v)
+4405 y(record)d(v)-5 b(ariables)36 b(are)f(assigned)g(default)f(c)m(h)m
+(unk)h(sizes.)54 b(The)34 b FD(HDF5)h FE(la)m(y)m(er)h(do)s(es)e(all)i
+(this)e(automati-)150 4515 y(cally)f(to)g(optimize)g(the)g(on-disk)f(v)
 -5 b(ariable/\014le)33 b(storage)h(geometry)f(of)f(record)g(v)-5
-b(ariables.)46 b(Do)33 b(not)g(b)s(e)150 2259 y(surprised)f(to)i(learn)
+b(ariables.)46 b(Do)33 b(not)g(b)s(e)150 4625 y(surprised)f(to)i(learn)
 g(that)g(\014les)f(created)i(without)e(an)m(y)h(explicit)h
 (instructions)f(to)g(activ)-5 b(ate)36 b(c)m(h)m(unking)150
-2369 y(nev)m(ertheless)31 b(con)m(tain)h(c)m(h)m(unk)m(ed)f(v)-5
-b(ariables.)150 2607 y FB(3.27)68 b(De\015ation)150 2718
-y Fk(\013)p 200 2718 3554 4 v 3553 w(\010)p 150 3208
-4 442 v 178 2854 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncap2)p
-FD(,)30 b Fy(ncbo)p FD(,)f Fy(nces)p FD(,)h Fy(ncecat)p
-FD(,)f Fy(ncflint)p FD(,)f Fy(ncks)p FD(,)i Fy(ncpdq)p
-FD(,)f Fy(ncra)p FD(,)g Fy(ncrcat)p FD(,)g Fy(ncwa)178
-2963 y FD(Short)h(options:)41 b(`)p Fy(-L)p FD(')178
-3073 y(Long)31 b(options:)41 b(`)p Fy(--dfl_lvl)p FD(',)28
-b(`)p Fy(--deflate)p FD(')p 3803 3208 V 150 3259 a Fk(\012)p
-200 3259 3554 4 v 3553 w(\011)275 3431 y FD(All)38 b
-FC(NCO)f FD(op)s(erators)h(that)g(de\014ne)f(v)-5 b(ariables)39
-b(supp)s(ort)d(the)i(netCDF4)g(feature)g(of)g(storing)g(v)-5
-b(ari-)150 3541 y(ables)35 b(compressed)g(with)f(Lemp)s(el-Ziv)h
-(de\015ation.)54 b(The)34 b(Lemp)s(el-Ziv)h(algorithm)h(is)f(a)g
-(lossless)g(data)150 3650 y(compression)e(tec)m(hnique.)50
-b(Activ)-5 b(ate)35 b(this)f(de\015ation)f(with)g(the)g
-Fy(-L)d Fn(dfl_lvl)h FD(short)i(option)h(\(or)f(with)150
-3760 y(the)e(same)g(argumen)m(t)h(to)f(the)g(`)p Fy(--dfl_lvl)p
-FD(')e(or)i(`)p Fy(--deflate)p FD(')e(long)i(options\).)43
-b(Sp)s(ecify)30 b(the)i(de\015ation)150 3870 y(lev)m(el)i
-Fz(d\015)p 467 3870 28 4 v 39 w(lvl)i FD(on)d(a)f(scale)i(from)e(no)g
-(de\015ation)h(\()p Fz(d\015)p 1924 3870 V 39 w(lvl)g(=)f(0)7
-b FD(\))33 b(to)h(maxim)m(um)e(de\015ation)h(\()p Fz(d\015)p
-3370 3870 V 39 w(lvl)g(=)f(9)7 b FD(\).)150 3979 y(Minimal)35
-b(de\015ation)g(\()p Fz(d\015)p 1036 3979 V 40 w(lvl)g(=)f(1)7
-b FD(\))36 b(ac)m(hiev)m(es)g(considerable)g(storage)g(compression)e
-(with)h(little)h(time)150 4089 y(p)s(enalt)m(y)-8 b(.)40
-b(Higher)27 b(de\015ation)g(lev)m(els)h(require)f(more)f(time)i(for)e
-(compression.)40 b(File)27 b(sizes)h(resulting)e(from)150
-4198 y(minimal)37 b(\()p Fz(d\015)p 653 4198 V 39 w(lvl)g(=)f(1)7
-b FD(\))37 b(and)f(maximal)h(\()p Fz(d\015)p 1755 4198
-V 40 w(lvl)f(=)h(9)7 b FD(\))37 b(de\015ation)g(lev)m(els)h(t)m
-(ypically)g(di\013er)e(b)m(y)g(a)h(few)150 4308 y(p)s(ercen)m(t)30
-b(in)h(size.)275 4469 y(T)-8 b(o)30 b(compress)h(an)f(en)m(tire)h
-(\014le)g(using)e(de\015ation,)i(use)390 4631 y Fy(ncks)47
-b(-4)g(-L)g(0)g(in.nc)g(out.nc)f(#)h(No)h(deflation)d(\(fast,)h(no)h
-(time)g(penalty\))390 4740 y(ncks)g(-4)g(-L)g(1)g(in.nc)g(out.nc)f(#)h
-(Minimal)f(deflation)f(\(little)h(time)h(penalty\))390
-4850 y(ncks)g(-4)g(-L)g(9)g(in.nc)g(out.nc)f(#)h(Maximal)f(deflation)f
-(\(much)i(slower\))275 5011 y FD(Unscien)m(ti\014c)29
-b(testing)g(sho)m(ws)f(that)h(de\015ation)f(compresses)h(t)m(ypical)g
-(climate)h(datasets)g(b)m(y)e(30-60\045.)150 5121 y(P)m(ac)m(king,)51
-b(a)45 b(lossy)h(compression)f(tec)m(hnique)h(a)m(v)-5
-b(ailable)47 b(for)e(all)h(netCDF)g(\014les)f(\(see)h(Section)g(3.31)
-150 5230 y([P)m(ac)m(k)m(ed)33 b(data],)f(page)f(82\),)h(can)f(easily)h
-(compress)e(\014les)h(b)m(y)f(50\045.)42 b(P)m(ac)m(k)m(ed)33
-b(data)e(ma)m(y)h(b)s(e)e(de\015ated)g(to)150 5340 y(squeeze)h
-(datasets)h(b)m(y)e(ab)s(out)g(80\045:)p eop end
+4734 y(nev)m(ertheless)31 b(con)m(tain)h(c)m(h)m(unk)m(ed)f(v)-5
+b(ariables.)150 5267 y FC(3.27)68 b(Compression)p eop
+end
 %%Page: 79 85
-TeXDict begin 79 84 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(79)390 299 y Fy(ncks)94
-b(-4)48 b(-L)f(1)g(in.nc)g(out.nc)f(#)h(Minimal)f(deflation)f
-(\(~30-60\045)h(compression\))390 408 y(ncks)94 b(-4)48
-b(-L)f(9)g(in.nc)g(out.nc)f(#)h(Maximal)f(deflation)f(\(~31-63\045)h
-(compression\))390 518 y(ncpdq)428 b(in.nc)47 b(out.nc)f(#)h(Standard)f
-(packing)93 b(\(~50\045)47 b(compression\))390 628 y(ncpdq)f(-4)i(-L)f
-(9)g(in.nc)g(out.nc)f(#)h(Deflated)f(packing)93 b(\(~80\045)47
-b(compression\))275 805 y(ncks)23 b FD(prin)m(ts)h(de\015ation)i
-(parameters,)g(if)f(an)m(y)-8 b(,)27 b(to)e(screen)g(\(see)h(Section)g
-(4.7)g([nc)m(ks)f(netCDF)g(Kitc)m(hen)150 914 y(Sink],)30
-b(page)h(176\).)150 1200 y FB(3.28)68 b(MD5)45 b(digests)150
-1334 y Fk(\013)p 200 1334 3554 4 v 3553 w(\010)p 150
-1824 4 442 v 178 1470 a FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(ncecat)p FD(,)29 b Fy(ncks)p FD(,)h Fy(ncrcat)178
-1580 y FD(Short)g(options:)178 1689 y(Long)h(options:)41
-b(`)p Fy(--md5_dgs)p FD(',)28 b(`)p Fy(--md5_digest)p
-FD(',)g(`)p Fy(--md5_wrt_att)p FD(',)g(`)p Fy(--md5_write_attribute)p
-FD(')p 3803 1824 V 150 1875 a Fk(\012)p 200 1875 3554
-4 v 3553 w(\011)275 2069 y FD(As)c(of)h FC(NCO)g FD(v)m(ersion)g(4.1.0)
-h(\(April,)g(2012\),)j FC(NCO)24 b FD(supp)s(orts)f(data)i(in)m(tegrit)
-m(y)i(v)m(eri\014cation)g(using)d(the)150 2178 y FC(MD5)32
-b FD(digest)g(algorithm.)46 b(This)31 b(supp)s(ort)f(is)i(curren)m(tly)
-g(implemen)m(ted)g(in)f Fy(ncks)g FD(and)g(in)g(the)h(m)m(ulti\014le)
-150 2288 y(concan)m(tenators)38 b Fy(ncecat)c FD(and)i
-Fy(ncrcat)p FD(.)55 b(Activ)-5 b(ate)39 b(it)d(with)g(the)g(`)p
-Fy(--md5_dgs)p FD(')e(or)i(`)p Fy(--md5_digest)p FD(')150
-2397 y(long)43 b(options.)78 b(As)43 b(of)g FC(NCO)f
-FD(v)m(ersion)h(4.3.3)i(\(July)-8 b(,)46 b(2013\),)i
-FC(NCO)43 b FD(will)g(write)g(the)g FC(MD5)f FD(digest)i(of)150
-2507 y(eac)m(h)34 b(v)-5 b(ariable)34 b(as)f(an)f Fy(NC_CHAR)f
-FD(attribute)i(named)g Fy(MD5)p FD(.)47 b(This)32 b(supp)s(ort)f(is)i
-(curren)m(tly)f(implemen)m(ted)150 2616 y(in)45 b Fy(ncks)f
-FD(and)g(in)h(the)g(m)m(ulti\014le)h(concan)m(tenators)h
-Fy(ncecat)c FD(and)h Fy(ncrcat)p FD(.)83 b(Activ)-5 b(ate)47
-b(it)f(with)f(the)150 2726 y(`)p Fy(--md5_wrt_att)p FD(')27
-b(or)k(`)p Fy(--md5_write_attribute)p FD(')25 b(long)31
-b(options.)275 2903 y(The)g(b)s(eha)m(vior)i(and)e(v)m(erb)s(osit)m(y)i
-(of)g(the)f FC(MD5)g FD(digest)h(is)g(op)s(erator-dep)s(enden)m(t.)46
-b(When)32 b(activ)-5 b(ating)150 3013 y FC(MD5)30 b FD(digests)i(with)e
-Fy(ncks)f FD(it)i(is)g(assumed)f(that)h(the)f(user)g(simply)g(wishes)g
-(to)h(see)h(the)e(digest)h(of)g(ev)m(ery)150 3122 y(v)-5
-b(ariable)29 b(and)e(this)h(is)h(done)f(when)f(the)h(debugging)g(lev)m
-(el)i(exceeds)f(one.)40 b(This)28 b(incurs)f(only)h(the)g(minor)150
-3232 y(o)m(v)m(erhead)41 b(of)f(p)s(erforming)f(the)h(hash)f(algorithm)
-i(for)f(eac)m(h)h(v)-5 b(ariable)40 b(read.)70 b FC(MD5)40
-b FD(digests)g(ma)m(y)h(b)s(e)150 3342 y(activ)-5 b(ated)39
-b(in)d(b)s(oth)g(the)h(one-)h(and)e(t)m(w)m(o-\014lename)j(argumen)m(t)
-e(forms)f(of)h Fy(ncks)p FD(,)g(whic)m(h)g(are)g(used)f(for)150
-3451 y(prin)m(ting)j(and)f(for)h(sub-setting,)j(resp)s(ectiv)m(ely)-8
-b(.)68 b(The)39 b FC(MD5)g FD(digests)h(are)f(sho)m(wn)f(as)i(a)f(32-c)
-m(haracter)150 3561 y(hexadecimal)32 b(string)e(in)g(whic)m(h)g(eac)m
-(h)i(t)m(w)m(o)f(c)m(haracters)h(represen)m(t)f(one)f(b)m(yte)h(of)g
-(the)f(16-b)m(yte)j(digest:)390 3738 y Fy(>)47 b(ncks)g(-O)g(-D)g(2)h
-(-C)f(--md5)f(-v)i(md5_a,md5_abc)c(~/nco/data/in.nc)390
-3848 y(...)390 3957 y(ncks:)i(INFO)h(MD5\(md5_a\))e(=)i
-(0cc175b9c0f1b6a831c399e269)o(7726)o(61)390 4067 y(md5_a)f(=)i('a')390
-4176 y(ncks:)e(INFO)h(MD5\(md5_abc\))d(=)k(900150983cd24fb0d6963f7d)o
-(28e1)o(7f7)o(2)390 4286 y(lev[0]=100)d(md5_abc[0--2]='abc')390
-4396 y(>)i(ncks)g(-O)g(-D)g(2)h(-C)f(-d)g(lev,0)g(--md5)f(-v)h
-(md5_a,md5_abc)d(~/nco/data/in.nc)390 4505 y(...)390
-4615 y(ncks:)i(INFO)h(MD5\(md5_a\))e(=)i(0cc175b9c0f1b6a831c399e269)o
-(7726)o(61)390 4724 y(md5_a)f(=)i('a')390 4834 y(ncks:)e(INFO)h
-(MD5\(md5_abc\))d(=)k(0cc175b9c0f1b6a831c399e2)o(6977)o(266)o(1)390
-4944 y(lev[0]=100)d(md5_abc[0--0]='a')275 5121 y FD(In)37
-b(fact)j(these)f(examples)g(demonstrate)g(the)g(v)-5
+TeXDict begin 79 84 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(79)150 51 y Fl(\013)p
+200 51 3554 4 v 3553 w(\010)p 150 761 4 661 v 178 188
+a FE(Av)-5 b(ailabilit)m(y:)43 b Fz(ncbo)p FE(,)30 b
+Fz(ncecat)p FE(,)f Fz(nces)p FE(,)g Fz(ncflint)p FE(,)g
+Fz(ncks)p FE(,)g Fz(ncpdq)p FE(,)h Fz(ncra)p FE(,)f Fz(ncrcat)p
+FE(,)g Fz(ncwa)178 297 y FE(Short)h(options:)41 b(None)178
+407 y(Long)31 b(options:)41 b(`)p Fz(--ppc)29 b Fo(var1)p
+Fz([,)p Fo(var2)p Fz([,...]]=)p Fo(prc)p FE(',)178 516
+y(`)p Fz(--precision_preserving_com)o(pres)o(sio)o(n)24
+b Fo(var1)p Fz([,)p Fo(var2)p Fz([,...]]=)p Fo(prc)p
+FE(',)178 626 y(`)p Fz(--quantize)k Fo(var1)p Fz([,)p
+Fo(var2)p Fz([,...]]=)p Fo(prc)p FE(')p 3803 761 V 150
+812 a Fl(\012)p 200 812 3554 4 v 3553 w(\011)275 1003
+y FD(NCO)e FE(implemen)m(ts)i(or)f(accesses)i(four)d(di\013eren)m(t)i
+(compression)f(algorithms,)i(the)e(standard)f(lossless)150
+1113 y FD(DEFLA)-7 b(TE)37 b FE(algorithm)h(and)f(three)h(lossy)f
+(compression)h(algorithms.)62 b(All)38 b(four)f(algorithms)h(reduce)150
+1222 y(the)33 b(on-disk)f(size)h(of)g(a)g(dataset)g(while)g
+(sacri\014cing)g(no)f(\(lossless\))i(or)f(a)f(tolerable)i(amoun)m(t)f
+(\(lossy\))h(of)150 1332 y(precision.)39 b(First,)26
+b FD(NCO)e FE(can)g(access)i(the)e(lossless)h FD(DEFLA)-7
+b(TE)24 b FE(algorithm,)j(a)d(com)m(bination)i(of)e(Lemp)s(el-)150
+1441 y(Ziv)39 b(enco)s(ding)f(and)h(Hu\013man)f(co)s(ding,)j(algorithm)
+f(on)f(an)m(y)g(netCDF4)h(dataset)g(\(see)g(Section)f(3.28)150
+1551 y([De\015ation],)33 b(page)e(88\).)42 b(Because)32
+b(it)f(is)f(lossless,)i(this)e(algorithm)i(re-in\015ates)f(de\015ated)f
+(data)i(to)f(their)150 1660 y(full)j(original)i(precision.)55
+b(This)33 b(algorithm)j(is)f(accessed)h(via)f(the)g FD(HDF5)h
+FE(library)e(la)m(y)m(er)i(\(whic)m(h)f(itself)150 1770
+y(calls)d(the)e Fz(zlib)f FE(library)h(also)i(used)d(b)m(y)h
+Fz(gzip)p FE(\),)g(and)g(is)g(una)m(v)-5 b(ailable)32
+b(with)e(netCDF3.)275 1950 y(The)41 b(three)h(lossy)g(compression)g
+(algorithms)g(are)h(P)m(ac)m(king)g(\(see)g(Section)f(3.32)i([P)m(ac)m
+(k)m(ed)g(data],)150 2060 y(page)30 b(92\),)i(and)d(t)m(w)m(o)i
+(precision-preserving)e(algorithms.)42 b(P)m(ac)m(king)31
+b(quan)m(tizes)g(data)f(of)g(a)g(higher)f(pre-)150 2169
+y(cision)36 b(t)m(yp)s(e)f(in)m(to)h(a)f(lo)m(w)m(er)i(precision)e(t)m
+(yp)s(e)g(\(often)h Fz(NC_SHORT)p FE(\))d(that)j(th)m(us)f(stores)g(a)h
+(few)m(er)f(\(though)150 2279 y(constan)m(t\))i(n)m(um)m(b)s(er)e(of)h
+(b)m(ytes)g(p)s(er)f(v)-5 b(alue.)57 b(P)m(ac)m(k)m(ed)38
+b(data)e(almost)h(unpac)m(ks)e(in)m(to)i(a)f(\(m)m(uc)m(h\))g(smaller)
+150 2389 y(dynamic)k(range)h(than)g(the)g(\015oating-p)s(oin)m(t)g
+(data)h(can)f(represen)m(t.)71 b(The)40 b(t)m(yp)s(e-con)m(v)m(ersion)j
+(and)d(re-)150 2498 y(duced)27 b(dynamic)h(range)g(of)g(the)g(data)g
+(allo)m(ws)h(pac)m(king)g(to)g(eliminate)g(bits)f(t)m(ypically)h(used)e
+(to)i(store)f(an)150 2608 y(exp)s(onen)m(t,)35 b(th)m(us)e(impro)m
+(ving)h(its)g(pac)m(king)h(e\016ciency)-8 b(.)52 b(P)m(ac)m(k)m(ed)36
+b(data)e(also)h(can)f(also)g(b)s(e)f(de\015ated)h(for)150
+2717 y(additional)d(space)g(sa)m(vings.)275 2897 y(A)j(limitation)j(of)
+d(pac)m(king)i(is)e(that)h(unpac)m(king)g(data)g(stored)g(as)g(in)m
+(tegers)g(in)m(to)h(the)f(linear)g(range)150 3007 y(de\014ned)25
+b(b)m(y)i Fz(scale_factor)c FE(and)j Fz(add_offset)d
+FE(rapidly)j(loses)i(precision)e(outside)h(of)g(a)f(narro)m(w)h(range)
+150 3117 y(of)40 b(\015oating)g(p)s(oin)m(t)f(v)-5 b(alues.)69
+b(V)-8 b(ariables)41 b(pac)m(k)m(ed)f(as)g Fz(NC_SHORT)p
+FE(,)g(for)f(example,)k(can)c(represen)m(t)h(only)150
+3226 y(ab)s(out)45 b(64000)i(discrete)f(v)-5 b(alues)45
+b(in)f(the)i(range)f FB(\000)p FE(32768)32 b FB(\003)e
+Fw(scal)r(e)2489 3240 y Fg(f)2532 3226 y Fw(actor)j FE(+)d
+Fw(add)3013 3240 y Fg(o)3050 3226 y Fw(f)10 b(f)g(set)44
+b FE(to)h(32767)33 b FB(\003)150 3336 y Fw(scal)r(e)351
+3350 y Fg(f)394 3336 y Fw(actor)24 b FE(+)d Fw(add)857
+3350 y Fg(o)895 3336 y Fw(f)10 b(f)g(set)p FE(.)43 b(The)31
+b(precision)h(of)g(pac)m(k)m(ed)h(data)g(equals)f(the)g(v)-5
+b(alue)32 b(of)g Fz(scale_factor)p FE(,)150 3445 y(and)h
+Fz(scale_factor)e FE(is)i(usually)h(c)m(hosen)g(to)h(span)e(the)h
+(range)g(of)g(v)-5 b(alid)34 b(data,)h(not)f(to)h(represen)m(t)f(the)
+150 3555 y(in)m(trinsic)g(precision)g(of)g(the)g(v)-5
+b(ariable.)52 b(In)33 b(other)h(w)m(ords,)h(the)f(precision)g(of)g(pac)
+m(k)m(ed)h(data)f(cannot)h(b)s(e)150 3665 y(sp)s(eci\014ed)30
+b(in)g(adv)-5 b(ance)31 b(b)s(ecause)f(it)h(dep)s(ends)d(on)j(the)f
+(range)h(of)g(v)-5 b(alues)30 b(to)h(quan)m(tize.)275
+3845 y FD(NCO)37 b FE(implemen)m(ted)h(the)g(\014nal)g(t)m(w)m(o)h
+(lossy)f(compression)g(algorithms)g(in)g(v)m(ersion)g(4.4.8)i(\(F)-8
+b(ebru-)150 3954 y(ary)g(,)35 b(2015\).)53 b(These)33
+b(are)h(b)s(oth)f FA(Precision-Preserving)i(Compression)e
+FE(\()p FD(PPC)p FE(\))g(algorithms)i(and)e(since)150
+4064 y(standard)j(terminology)i(for)f(precision)g(is)f(remark)-5
+b(ably)37 b(imprecise,)i(so)e(is)g(our)f(nomenclature.)60
+b(The)150 4174 y(op)s(erational)39 b(de\014nition)f(of)h
+(\\signi\014can)m(t)g(digit")g(in)f(our)g(precision)g(preserving)g
+(algorithms)h(is)f(that)150 4283 y(the)27 b(exact)h(v)-5
+b(alue,)28 b(b)s(efore)f(rounding)e(or)i(quan)m(tization,)i(is)e
+(within)f(one-half)h(the)g(v)-5 b(alue)27 b(of)g(the)g(decimal)150
+4393 y(place)i(o)s(ccupied)f(b)m(y)f(the)h FA(Least)h(Signi\014can)m(t)
+g(Digit)i FE(\()p FD(LSD)p FE(\))e(of)f(the)g(rounded)e(v)-5
+b(alue.)41 b(F)-8 b(or)28 b(example,)i(the)150 4502 y(v)-5
+b(alue)29 b Fw(pi)c FE(=)g(3)p Fw(:)p FE(14)30 b(correctly)g(represen)m
+(ts)f(the)f(exact)i(mathematical)h(constan)m(t)f FA(pi)j
+FE(to)c(three)g(signi\014can)m(t)150 4612 y(digits)35
+b(b)s(ecause)g(the)g FD(LSD)g FE(of)g(the)g(rounded)f(v)-5
+b(alue)35 b(\(i.e.,)d(4\))k(is)e(in)h(the)g(one-h)m(undredths)e(digit)j
+(place,)150 4721 y(and)e(the)h(di\013erence)g(b)s(et)m(w)m(een)h(the)e
+(exact)j(v)-5 b(alue)35 b(and)f(the)h(rounded)e(v)-5
+b(alue)35 b(is)g(less)g(than)f(one-half)i(of)150 4831
+y(one)31 b(one-h)m(undredth,)e(i.e.,)i(\(3)p Fw(:)p FE(14159265358)q
+(979)q(32)q(38)q(44)c FB(\000)20 b FE(3)p Fw(:)p FE(14)27
+b(=)e(0)p Fw(:)p FE(00159)j Fw(<)d FE(0)p Fw(:)p FE(005\).)275
+5011 y(One)20 b FD(PPC)h FE(algorithm)h(preserv)m(es)f(the)h(sp)s
+(eci\014ed)f(total)i FA(Num)m(b)s(er)d(of)i(Signifcan)m(t)g(Digits)k
+FE(\()p FD(NSD)p FE(\))d(of)f(the)150 5121 y(v)-5 b(alue.)42
+b(F)-8 b(or)31 b(example)g(there)g(is)g(only)f(one)h(signi\014can)m(t)h
+(digit)f(in)f(the)h(w)m(eigh)m(t)h(of)f(most)g(\\eigh)m(t-h)m(undred)
+150 5230 y(p)s(ound)f(gorillas")k(that)f(y)m(ou)f(will)h(encoun)m(ter,)
+g(i.e.,)h(so)e FA(nsd)c FE(=)d FA(1)7 b FE(.)46 b(This)31
+b(is)h(the)h(most)f(straigh)m(tforw)m(ard)150 5340 y(measure)e(of)h
+(precision,)g(and)e(th)m(us)h FD(NSD)i FE(is)e(the)g(default)h
+FD(PPC)e FE(algorithm.)p eop end
+%%Page: 80 86
+TeXDict begin 80 85 bop 150 -116 a FE(80)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(The)24 b(other)i
+FD(PPC)e FE(algorithm)j(preserv)m(es)e(the)h(n)m(um)m(b)s(er)e(of)h
+FA(Decimal)j(Signi\014can)m(t)e(Digits)k FE(\()p FD(DSD)p
+FE(\),)f(i.e.,)150 408 y(the)j(n)m(um)m(b)s(er)e(of)h(signi\014can)m(t)
+i(digits)f(follo)m(wing)h(\(p)s(ositiv)m(e,)g(b)m(y)e(con)m(v)m(en)m
+(tion\))j(or)e(preceding)f(\(negativ)m(e\))150 518 y(the)j(decimal)g(p)
+s(oin)m(t.)50 b(F)-8 b(or)34 b(example,)h(\\0.008")h(and)d(\\800")j(ha)
+m(v)m(e,)f(resp)s(ectiv)m(ely)-8 b(,)36 b(three)e(and)f(negativ)m(e)150
+628 y(t)m(w)m(o)f(digits)f(digits)g(follo)m(wing)h(the)e(decimal)h(p)s
+(oin)m(t,)g(corresp)s(onding)e FA(dsd)f FE(=)d FA(3)38
+b FE(and)30 b FA(dsd)e FE(=)c FB(\000)p FA(2)8 b FE(.)275
+819 y(The)28 b(only)h(justi\014able)f FD(NSD)i FE(for)e(a)h(giv)m(en)h
+(v)-5 b(alue)29 b(dep)s(ends)e(on)i(in)m(trinsic)g(accuracy)h(and)e
+(error)g(c)m(har-)150 929 y(acteristics)42 b(of)f(the)f(mo)s(del)g(or)g
+(measuremen)m(ts,)j(and)d(not)g(on)g(the)h(units)e(with)h(whic)m(h)g
+(the)g(v)-5 b(alue)41 b(is)150 1039 y(stored.)62 b(The)36
+b(appropriate)i FD(DSD)g FE(for)f(a)g(giv)m(en)i(v)-5
+b(alue)37 b(dep)s(ends)f(on)h(these)h(in)m(trinsic)f(c)m
+(haracteristics)150 1148 y(and,)30 b(in)h(addition,)g(the)g(units)f(of)
+g(storage.)43 b(This)30 b(is)h(the)g(fundamen)m(tal)f(di\013erence)h(b)
+s(et)m(w)m(een)g(the)g FD(NSD)150 1258 y FE(and)37 b
+FD(DSD)i FE(approac)m(hes.)64 b(The)38 b(eigh)m(t-h)m(undred)f(p)s
+(ound)f(gorilla)k(alw)m(a)m(ys)f(has)f FA(nsd)28 b FE(=)d
+FA(1)45 b FE(regardless)39 b(of)150 1367 y(whether)h(the)g(v)-5
+b(alue)41 b(is)f(store)h(in)f(p)s(ounds)e(or)i(in)g(some)g(other)h
+(unit.)70 b FD(DSD)41 b FE(corresp)s(onding)e(to)i(this)150
+1477 y(w)m(eigh)m(t)32 b(is)e FA(dsd)e FE(=)d FB(\000)p
+FA(2)38 b FE(if)30 b(the)h(v)-5 b(alue)30 b(is)h(store)g(in)f(p)s
+(ounds,)e FA(dsd)g FE(=)d FA(4)38 b FE(if)30 b(stored)h(in)f(megap)s
+(ounds.)275 1669 y(Users)i(ma)m(y)i(wish)e(to)h(express)g(the)g
+(precision)g(to)g(b)s(e)f(preserv)m(ed)h(as)g(either)g
+FD(NSD)h FE(or)e FD(DSD)p FE(.)49 b(In)m(v)m(ok)m(e)150
+1778 y FD(PPC)34 b FE(with)h(the)g(long)h(option)g(`)p
+Fz(--ppc)29 b(var=prc)p FE(',)35 b(or)g(giv)m(e)i(the)e(same)h(argumen)
+m(ts)f(to)h(the)g(synon)m(yms)150 1888 y(`)p Fz
+(--precision_preserving_co)o(mpre)o(ssio)o(n)p FE(',)j(or)k(to)g(`)p
+Fz(--quantize)p FE('.)73 b(Here)43 b FA(v)-5 b(ar)49
+b FE(is)42 b(the)g(v)-5 b(ariable)150 1998 y(to)41 b(quan)m(tize,)k
+(and)40 b FA(prc)45 b FE(is)c(the)g(precision.)71 b(The)40
+b(default)h(algorithm)g(assumes)g FA(prc)k FE(sp)s(eci\014es)40
+b FD(NSD)150 2107 y FE(precision,)j(e.g.,)i(`)p Fz(T=2)p
+FE(')40 b(means)h FA(nsd)27 b FE(=)e FA(2)8 b FE(.)71
+b(Prep)s(end)39 b FA(prc)45 b FE(with)c(a)g(decimal)g(p)s(oin)m(t)g(to)
+g(sp)s(ecify)f FD(DSD)150 2217 y FE(precision,)28 b(e.g.,)h(`)p
+Fz(T=.2)p FE(')d(means)h FA(dsd)g FE(=)e FA(2)8 b FE(.)39
+b FD(NSD)28 b FE(precision)f(m)m(ust)f(b)s(e)g(sp)s(eci\014ed)g(as)h(a)
+h(p)s(ositiv)m(e)f(in)m(teger.)150 2326 y FD(DSD)g FE(precision)f(ma)m
+(y)g(b)s(e)f(a)i(p)s(ositiv)m(e)f(or)g(negativ)m(e)i(in)m(teger;)h(and)
+c(is)h(sp)s(eci\014ed)f(as)i(the)f(negativ)m(e)i(base)i(10)150
+2436 y(logarithm)j(of)g(the)f(desired)g(precision,)h(in)f(accord)h
+(with)f(common)g(usage.)47 b(F)-8 b(or)33 b(example,)h(sp)s(ecifying)
+150 2545 y(`)p Fz(T=.3)p FE(')28 b(or)h(`)p Fz(T=.-2)p
+FE(')f(tells)i(the)f FD(DSD)h FE(algorithm)g(to)g(store)f(only)g
+(enough)g(bits)g(to)g(preserv)m(e)g(the)g(v)-5 b(alue)30
+b(of)150 2655 y FA(T)37 b FE(rounded)28 b(to)j(the)g(nearest)g
+(thousandth)e(or)i(h)m(undred,)d(resp)s(ectiv)m(ely)-8
+b(.)275 2847 y(Setting)30 b FA(v)-5 b(ar)37 b FE(to)31
+b Fz(default)d FE(has)i(the)g(sp)s(ecial)h(meaning)g(of)f(applying)g
+(the)g(asso)s(ciated)i FD(NSD)f FE(or)f FD(DSD)150 2956
+y FE(algorithm)i(to)g(all)g(\015oating)g(p)s(oin)m(t)g(v)-5
+b(ariables)31 b(except)i(co)s(ordinate)f(v)-5 b(ariables.)43
+b(V)-8 b(ariables)33 b Fp(not)h(a\013e)-5 b(cte)g(d)150
+3066 y FE(b)m(y)28 b Fz(default)e FE(include)h(in)m(teger)i(and)f
+(non-n)m(umeric)f(atomic)i(t)m(yp)s(es,)g(co)s(ordinates,)g(and)f(v)-5
+b(ariables)28 b(men-)150 3176 y(tioned)e(in)e(the)i Fz(coordinates)c
+FE(or)j Fz(bounds)e FE(attribute)j(of)f(an)m(y)h(v)-5
+b(ariable.)40 b FD(NCO)24 b FE(applies)i FD(PPC)e FE(to)h(co)s(ordi-)
+150 3285 y(nate)e(v)-5 b(ariables)24 b(only)f(if)g(those)g(v)-5
+b(ariables)23 b(are)h(explicitly)g(sp)s(eci\014ed)e(\(i.e.,)k(not)d
+(with)g(the)g(`)p Fz(default=)p Fo(prc)p FE(')150 3395
+y(mec)m(hanism.)56 b FD(NCO)35 b FE(applies)h FD(PPC)e
+FE(to)i(in)m(teger-t)m(yp)s(e)h(v)-5 b(ariables)36 b(only)g(if)f(those)
+h(v)-5 b(ariables)36 b(are)g(explic-)150 3504 y(itly)h(sp)s(eci\014ed)e
+(\(i.e.,)k(not)d(with)g(the)g(`)p Fz(default=)p Fo(prc)p
+FE(',)f(and)g(only)h(if)g(the)g FD(DSD)h FE(algorithm)g(is)e(in)m(v)m
+(ok)m(ed)150 3614 y(with)40 b(a)g(negativ)m(e)i FA(prc)p
+FE(.)68 b(T)-8 b(o)40 b(prev)m(en)m(t)h FD(PPC)e FE(from)g(applying)h
+(to)g(certain)h(non-co)s(ordinate)f(v)-5 b(ariables)150
+3724 y(\(e.g.,)35 b Fz(gridcell_area)29 b FE(or)k Fz(gaussian_weight)p
+FE(\),)d(explicitly)k(sp)s(ecify)e(a)h(precision)g(exceeding)f(7)h
+(\(for)150 3833 y Fz(NC_FLOAT)p FE(\))j(or)30 b(15)39
+b(\(for)e Fz(NC_DOUBLE)p FE(\))f(for)h(those)h(v)-5 b(ariables.)63
+b(Since)38 b(these)g(are)g(the)g(maxim)m(um)f(rep-)150
+3943 y(resen)m(table)c(precisions)f(in)f(decimal)i(digits,)g
+FD(NCO)f Fp(turns-o\013)51 b FD(PPC)31 b FE(\(i.e.,)j(do)s(es)e
+(nothing\))g(when)f(more)150 4052 y(precision)g(is)f(requested.)275
+4244 y(The)36 b(time)h(p)s(enalt)m(y)g(for)f(compressing)h(and)f
+(uncompressing)g(data)h(v)-5 b(aries)37 b(according)h(to)f(the)g(al-)
+150 4354 y(gorithm.)52 b(The)34 b(Num)m(b)s(er)f(of)h(Signi\014can)m(t)
+h(Digit)g(\()p FD(NSD)p FE(\))h(algorithm)f(quan)m(tizes)g(b)m(y)f
+(bitmasking,)i(and)150 4463 y(emplo)m(ys)c(no)f(\015oating)h(p)s(oin)m
+(t)f(math.)44 b(The)31 b(Decimal)i(Signi\014can)m(t)f(Digit)h(\()p
+FD(DSD)p FE(\))g(algorithm)f(quan)m(tizes)150 4573 y(b)m(y)e(rounding,)
+e(whic)m(h)i(do)s(es)f(require)g(\015oating)i(p)s(oin)m(t)e(math.)41
+b(Hence)30 b FD(NSD)h FE(is)e(lik)m(ely)i(faster)f(than)g
+FD(DSD)p FE(,)150 4682 y(though)24 b(the)h(di\013erence)g(has)f(not)h
+(b)s(een)f(measured.)38 b FD(NSD)25 b FE(creates)h(a)f(bitmask)g(to)g
+(alter)h(the)e FA(signi\014cand)150 4792 y FE(of)38 b
+FD(IEEE)29 b FE(754)38 b(\015oating)h(p)s(oin)m(t)f(data.)63
+b(The)37 b(bitmask)h(is)f(one)h(for)g(all)g(bits)g(to)g(b)s(e)f
+(retained)h(and)f(zero)150 4902 y(or)c(one)g(for)f(all)i(bits)f(to)g(b)
+s(e)f(ignored.)48 b(The)32 b(algorithm)i(assumes)f(that)g(the)g(n)m(um)
+m(b)s(er)e(of)i(binary)f(digits)150 5011 y(\(i.e.,)38
+b(bits\))d(necessary)h(to)g(represen)m(t)f(a)g(single)h(base-10)g
+(digit)g(is)f Fw(l)r(n)p FE(\(10\))p Fw(=l)r(n)p FE(\(2\))h(=)c(3)p
+Fw(:)p FE(32.)57 b(The)34 b(exact)150 5121 y(n)m(um)m(b)s(ers)27
+b(of)i(bits)g FA(Nbit)h FE(retained)g(for)e(single)h(and)f(double)h
+(precision)f(v)-5 b(alues)29 b(are)h Fw(ceil)r FE(\(3)p
+Fw(:)p FE(32)19 b FB(\003)e FA(nsd)s FE(\))g(+)g(1)150
+5230 y(and)29 b Fw(ceil)r FE(\(3)p Fw(:)p FE(32)21 b
+FB(\003)e FA(nsd)r FE(\))g(+)f(2,)30 b(resp)s(ectiv)m(ely)-8
+b(.)43 b(Once)29 b(these)h(reac)m(h)h(23)f(and)g(53)q(,)g(resp)s(ectiv)
+m(ely)-8 b(,)32 b(bitmasking)150 5340 y(is)e(completely)i(ine\013ectiv)
+m(e.)44 b(This)29 b(o)s(ccurs)h(at)h FA(nsd)d FE(=)d(6)p
+Fw(:)p FE(3)31 b(and)f(15.4)r(,)g(resp)s(ectiv)m(ely)-8
+b(.)p eop end
+%%Page: 81 87
+TeXDict begin 81 86 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(81)275 299 y(The)41
+b FD(DSD)j FE(algorithm,)i(b)m(y)d(con)m(trast,)k(uses)42
+b(rounding)f(to)i(remo)m(v)m(e)h(undesired)d(precision.)76
+b(The)150 408 y(rounding)505 375 y Fu(21)604 408 y FE(zero)s(es)30
+b(the)h(greatest)g(n)m(um)m(b)s(er)e(of)h(signi\014cand)f(bits)h
+(consisten)m(t)h(with)f(the)g(desired)g(preci-)150 518
+y(sion.)275 684 y(T)-8 b(o)29 b(demonstrate)g(the)g(c)m(hange)h(in)e
+FD(IEEE)f FE(represen)m(tation)j(caused)e(b)m(y)h FD(PPC)e
+FE(rounding)h(algorithms,)150 794 y(consider)35 b(again)g(the)g(case)h
+(of)f FA(pi)p FE(,)g(represen)m(ted)g(as)g(an)f Fz(NC_FLOAT)p
+FE(.)52 b(The)34 b FD(IEEE)29 b FE(754)35 b(single)h(precision)150
+903 y(represen)m(tations)c(of)f(the)h(exact)g(v)-5 b(alue)32
+b(\(3.141592...\),)k(the)31 b(v)-5 b(alue)32 b(with)f(only)g(three)g
+(signi\014can)m(t)h(digits)150 1013 y(treated)g(as)g(exact)h
+(\(3.140000...\),)k(and)31 b(the)g(v)-5 b(alue)32 b(as)g(stored)f
+(\(3.140625\))36 b(after)c FD(PPC)p FE(-rounding)d(with)150
+1122 y(either)i(the)f FD(NSD)i FE(\()p FA(prc)e FE(=)25
+b(3\))31 b(or)g FD(DSD)g FE(\()p FA(prc)f FE(=)25 b(2\))32
+b(algorithm)f(are,)g(resp)s(ectiv)m(ely)-8 b(,)390 1288
+y Fz(S)47 b(Exponent)94 b(Fraction)45 b(\(Significand\))140
+b(Decimal)189 b(Notes)390 1398 y(0)47 b(100000001)f
+(0010010000111111011011)41 b(#)48 b(3.14159265)d(Exact)390
+1507 y(0)i(100000001)f(0010001111010111000011)41 b(#)48
+b(3.14000000)390 1617 y(0)f(100000001)f(0010010000000000000000)41
+b(#)48 b(3.14062500)d(NSD)i(=)g(3)390 1727 y(0)g(100000001)f
+(0010010000000000000000)41 b(#)48 b(3.14062500)d(DSD)i(=)g(2)275
+1892 y FE(The)23 b(string)h(of)h(trailing)g(zero-bits)g(in)f(the)h
+(rounded)d(v)-5 b(alues)25 b(facilitates)i(b)m(yte-stream)f
+(compression.)150 2002 y(Note)35 b(that)e(the)h FD(NSD)g
+FE(and)e FD(DSD)i FE(algorithms)h(do)e(not)g(alw)m(a)m(ys)i(pro)s(duce)
+d(results)h(that)h(are)f(bit-for-bit)150 2112 y(iden)m(tical,)f
+(although)f(they)g(do)f(in)g(this)g(particular)h(case.)275
+2278 y(Reducing)f(the)g(preserv)m(ed)g(precision)h(of)f
+FD(NSD)p FE(-rounding)g(pro)s(duces)f(increasingly)j(long)f(strings)f
+(of)150 2387 y(iden)m(tical-bits)i(amenable)f(to)h(compression:)390
+2553 y Fz(S)47 b(Exponent)94 b(Fraction)45 b(\(Significand\))140
+b(Decimal)189 b(Notes)390 2663 y(0)47 b(100000001)f
+(0010010000111111011011)41 b(#)48 b(3.14159265)d(Exact)390
+2772 y(0)i(100000001)f(0010010000111111011011)41 b(#)48
+b(3.14159265)d(NSD)i(=)g(8)390 2882 y(0)g(100000001)f
+(0010010000111111011010)41 b(#)48 b(3.14159262)d(NSD)i(=)g(7)390
+2991 y(0)g(100000001)f(0010010000111111011000)41 b(#)48
+b(3.14159203)d(NSD)i(=)g(6)390 3101 y(0)g(100000001)f
+(0010010000111111000000)41 b(#)48 b(3.14158630)d(NSD)i(=)g(5)390
+3211 y(0)g(100000001)f(0010010000111100000000)41 b(#)48
+b(3.14154053)d(NSD)i(=)g(4)390 3320 y(0)g(100000001)f
+(0010010000000000000000)41 b(#)48 b(3.14062500)d(NSD)i(=)g(3)390
+3430 y(0)g(100000001)f(0010010000000000000000)41 b(#)48
+b(3.14062500)d(NSD)i(=)g(2)390 3539 y(0)g(100000001)f
+(0010000000000000000000)41 b(#)48 b(3.12500000)d(NSD)i(=)g(1)275
+3705 y FE(The)c(consumption)g(of)i(ab)s(out)e(3)31 b(bits)44
+b(p)s(er)f(digit)i(of)f(base-10)h(precision)f(is)g(eviden)m(t,)49
+b(as)44 b(is)g(the)150 3815 y(coincidence)30 b(of)g(a)f(quan)m(tized)h
+(v)-5 b(alue)29 b(that)h(greatly)g(exceeds)g(the)f(mandated)g
+(precision)g(for)g(NSD)c(=)g(2.)150 3924 y(Although)35
+b(the)g FD(NSD)h FE(algorithm)g(generally)h(masks)e(some)g(bits)g(for)g
+(all)h FA(nsd)f Fw(<)p FE(=)e(7)i(\(for)h Fz(NC_FLOAT)p
+FE(\),)150 4034 y(compression)j(algorithms)g(lik)m(e)h
+FD(DEFLA)-7 b(TE)38 b FE(ma)m(y)i(need)e(b)m(yte-size-or-greater)43
+b(\(i.e.,)f(at)d(least)h(eigh)m(t-)150 4144 y(bit\))c(bit)f(patterns)h
+(b)s(efore)f(their)g(algorithms)i(can)f(tak)m(e)h(adv)-5
+b(an)m(tage)37 b(of)f(of)f(enco)s(ding)h(suc)m(h)f(patterns)150
+4253 y(for)d(compression.)47 b(Do)33 b(not)g(exp)s(ect)g(signi\014can)m
+(tly)h(enhanced)e(compression)g(from)g FA(nsd)f Fw(>)d
+FE(5)33 b(\(for)g Fz(NC_)150 4363 y(FLOAT)p FE(\))28
+b(or)i FA(nsd)d Fw(>)e FE(14)31 b(\(for)e Fz(NC_DOUBLE)p
+FE(\).)38 b(Clearly)30 b(v)-5 b(alues)30 b(stored)g(as)f
+Fz(NC_DOUBLE)e FE(\(i.e.,)k(eigh)m(t-b)m(ytes\))150 4472
+y(are)k(susceptible)g(to)g(m)m(uc)m(h)g(greater)h(compression)f(than)f
+Fz(NC_FLOAT)f FE(for)h(a)h(giv)m(en)h(precision)f(b)s(ecause)150
+4582 y(their)30 b(signi\014cands)g(explicitly)i(con)m(tain)g(53)f(bits)
+f(rather)h(than)f(23)h(bits.)275 4748 y(Main)m(taining)37
+b(non-biased)e(statistical)j(prop)s(erties)c(during)h(lossy)g
+(compression)g(requires)g(sp)s(ecial)150 4858 y(atten)m(tion.)43
+b(The)29 b FD(DSD)j FE(algorithm)f(uses)f Fz(rint\(\))p
+FE(,)e(whic)m(h)i(rounds)f(to)m(w)m(ard)i(the)g(nearest)f(ev)m(en)h(in)
+m(teger.)p 150 4979 1200 4 v 166 5047 a Fu(21)300 5078
+y Ft(Rounding)25 b(is)g(p)r(erformed)i(b)n(y)d(the)h(in)n(ternal)h
+(math)f(library)h Fs(rint\(\))g Ft(family)h(of)f(functions)g(that)f(w)n
+(ere)h(standardized)275 5166 y(in)h(C99.)43 b(The)28
+b(exact)h(alorithm)f(emplo)n(y)n(ed)g(is)h Fn(v)l(al)f
+Ft(:=)d Ff(r)r(int)p Ft(\()p Fn(scale)f Fe(\003)19 b
+Fn(v)l(al)s Ft(\))p Ff(=)p Fn(scale)34 b Ft(where)28
+b Fn(scale)34 b Ft(is)28 b(the)g(nearest)g(p)r(o)n(w)n(er)275
+5253 y(of)e(2)f(that)f(exceeds)g(10)15 b Fe(\003)g(\003)p
+Fn(prc)5 b Ft(,)25 b(and)f(the)g(in)n(v)n(erse)g(of)h
+Fn(scale)30 b Ft(is)25 b(used)f(when)g Fn(prc)i Ff(<)21
+b Ft(0.)34 b(F)-6 b(or)25 b Fn(pp)r(c)g Ft(=)c(3)k(or)g
+Fn(pp)r(c)g Ft(=)c Fe(\000)p Ft(2,)k(for)275 5340 y(example,)h(w)n(e)g
+(ha)n(v)n(e)f Fn(scale)i Ft(=)21 b(1024)27 b(and)e Fn(scale)i
+Ft(=)21 b(1)p Ff(=)p Ft(128.)p eop end
+%%Page: 82 88
+TeXDict begin 82 87 bop 150 -116 a FE(82)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(Th)m(us)i FD(DSD)j
+FE(has)e(no)h(systematic)h(bias.)50 b(Ho)m(w)m(ev)m(er,)37
+b(the)d FD(NSD)g FE(algorithm)g(uses)g(a)g(bitmask)f(tec)m(hnique)150
+408 y(susceptible)43 b(to)h(statistical)i(bias.)78 b(Zeroing)43
+b(all)h(non-signi\014can)m(t)g(bits)e(is)h(guaran)m(teed)h(to)g(pro)s
+(duce)150 518 y(n)m(um)m(b)s(ers)30 b(quan)m(tized)i(to)g(the)g(sp)s
+(eci\014ed)e(tolerance,)k(i.e.,)f(half)e(of)h(the)g(decimal)g(v)-5
+b(alue)32 b(of)f(the)h(p)s(osition)150 628 y(o)s(ccupied)e(b)m(y)g(the)
+g FD(LSD)p FE(.)41 b(Ho)m(w)m(ev)m(er,)32 b(alw)m(a)m(ys)g(zeroing)f
+(the)f(non-signi\014can)m(t)h(bits)f(results)f(in)h(quan)m(tized)150
+737 y(n)m(um)m(b)s(ers)44 b(that)i(nev)m(er)f(exceed)i(the)e(exact)i(n)
+m(um)m(b)s(er.)84 b(This)45 b(w)m(ould)g(pro)s(duce)f(a)h(negativ)m(e)j
+(bias)d(in)150 847 y(statistical)35 b(quan)m(tities)e(\(e.g.,)h(the)e
+(a)m(v)m(erage\))j(subsequen)m(tly)c(deriv)m(ed)h(from)f(the)i(quan)m
+(tized)f(n)m(um)m(b)s(ers.)150 956 y(T)-8 b(o)40 b(a)m(v)m(oid)g(this)f
+(bias,)j FD(NSD)e FE(rounds)d(non-signi\014can)m(t)j(bits)f(do)m(wn)g
+(\(to)h(zero\))g(or)f(up)f(\(to)i(one\))g(in)f(an)150
+1066 y(alternating)h(fashion)f(when)f(pro)s(cessing)g(arra)m(y)i(data.)
+67 b(In)38 b(general,)k(the)d(\014rst)f(elemen)m(t)j(is)e(rounded)150
+1176 y(do)m(wn,)32 b(the)f(second)h(up,)f(and)g(so)h(on.)44
+b(This)31 b(results)h(in)f(a)h(mean)g(bias)f(quite)h(close)h(to)f
+(zero.)46 b(The)31 b(only)150 1285 y(exception)c(is)g(that)f(the)h
+(\015oating)g(p)s(oin)m(t)f(v)-5 b(alue)27 b(of)f(zero)h(is)f(nev)m(er)
+h(quan)m(tized)g(up)m(w)m(ards.)38 b(F)-8 b(or)27 b(simplicit)m(y)-8
+b(,)150 1395 y FD(NSD)31 b FE(alw)m(a)m(ys)h(rounds)d(scalars)i(do)m
+(wn)m(w)m(ards.)275 1568 y(Although)36 b FD(NSD)h FE(or)f
+FD(DSD)h FE(are)f(di\013eren)m(t)h(algorithms)g(under)d(the)i(ho)s(o)s
+(d,)h(they)f(b)s(oth)g(replace)h(the)150 1677 y(\(un)m(w)m(an)m(ted\))
+27 b(least)g(sigini\014can)m(t)g(bits)e(of)h(the)g FD(IEEE)e
+FE(signi\014cand)h(with)h(a)g(string)g(of)f(consecutiv)m(e)j(zero)s
+(es.)150 1787 y(Byte-stream)41 b(compression)f(tec)m(hniques,)i(suc)m
+(h)d(as)h(the)f Fz(gzip)f FD(DEFLA)-7 b(TE)40 b FE(algorithm)g
+(compression)150 1897 y(a)m(v)-5 b(ailable)37 b(in)d
+FD(HDF5)p FE(,)i(alw)m(a)m(ys)g(compress)e(zero-strings)h(more)g
+(e\016cien)m(tly)h(than)e(random)g(digits.)53 b(The)150
+2006 y(net)44 b(result)g(is)g(netCDF)h(\014les)e(that)i(utilize)g
+(compression)f(can)h(b)s(e)e(signi\014can)m(tly)i(reduced)e(in)h(size.)
+150 2116 y(This)35 b(feature)h(only)h(w)m(orks)e(when)g(the)h(data)h
+(are)f(compressed,)i(either)e(in)m(ternally)h(\(b)m(y)f(netCDF\))h(or)
+150 2225 y(externally)22 b(\(b)m(y)e(another)h(user-supplied)e(mec)m
+(hanism\).)38 b(It)20 b(is)h(most)g(straigh)m(tfo)m(w)m(ard)h(to)f
+(compress)f(data)150 2335 y(in)m(ternally)37 b(using)e(the)h(built-in)f
+(compression)h(and)f(decompression)h(supp)s(orted)e(b)m(y)h(netCDF4.)58
+b(F)-8 b(or)150 2444 y(con)m(v)m(enience,)37 b FD(NCO)d
+FE(automatically)j(activ)-5 b(ates)37 b(\014le-wide)d(Lemp)s(el-Ziv)g
+(de\015ation)g(\(see)h(Section)g(3.28)150 2554 y([De\015ation],)24
+b(page)d(88\))h(lev)m(el)g(one)e(\(i.e.,)k(`)p Fz(-L)30
+b(1)p FE('\))21 b(when)e FD(PPC)g FE(is)i(in)m(v)m(ok)m(ed)g(on)g(an)m
+(y)f(v)-5 b(ariable)21 b(in)f(a)h(netCDF4)150 2664 y(output)f(\014le.)
+38 b(This)20 b(mak)m(es)h FD(PPC)f FE(easier)h(to)h(use)e(e\013ectiv)m
+(ely)-8 b(,)26 b(since)21 b(the)g(user)f(need)g(not)h(explicitly)h(sp)s
+(ecify)150 2773 y(de\015ation.)40 b(An)m(y)28 b(explicitly)h(sp)s
+(eci\014ed)e(de\015ation)i(\(including)e(no)h(de\015ation,)h(`)p
+Fz(-L)h(0)p FE('\))e(will)g(o)m(v)m(erride)h(the)150
+2883 y FD(PPC)36 b FE(de\015ation)h(default.)61 b(If)37
+b(the)g(output)g(\014le)g(is)g(a)g(netCDF3)h(format,)i
+FD(NCO)c FE(will)i(emit)f(a)h(message)150 2992 y(suggesting)30
+b(in)m(ternal)h(netCDF4)f(or)f(external)i(netCDF3)f(compression.)40
+b(netCDF3)31 b(\014les)e(compressed)150 3102 y(b)m(y)j(an)h(external)g
+(utilit)m(y)h(suc)m(h)f(as)f Fz(gzip)g FE(accrue)h(appro)m(ximately)h
+(the)f(same)g(b)s(ene\014ts)e(\(shrink)-5 b(age\))34
+b(as)150 3212 y(netCDF4,)29 b(although)d(with)h(netCDF3)g(the)g(user)e
+(or)i(pro)m(vider)f(m)m(ust)g(uncompress)g(\(e.g.,)j
+Fz(gunzip)p FE(\))c(the)150 3321 y(\014le)j(b)s(efore)f(accessing)i
+(the)f(data.)40 b(There)27 b(is)h(no)f(b)s(ene\014t)g(to)h(rounding)f
+(n)m(um)m(b)s(ers)f(and)h(storing)h(them)f(in)150 3431
+y(netCDF3)33 b(\014les)f(unless)g(suc)m(h)f(custom)i
+(compression/decompression)f(is)g(emplo)m(y)m(ed.)47
+b(Without)33 b(that,)150 3540 y(one)e(ma)m(y)g(as)f(w)m(ell)i(main)m
+(tain)f(the)f(undesired)f(precision.)275 3713 y(The)42
+b(user)g(accesses)j FD(PPC)d FE(through)g(a)h(single)h(switc)m(h,)j(`)p
+Fz(--ppc)p FE(',)e(rep)s(eated)e(as)g(man)m(y)g(times)h(as)150
+3823 y(necessary)-8 b(.)42 b(T)-8 b(o)30 b(apply)g(the)h
+FD(NSD)g FE(algorithm)g(to)h(v)-5 b(ariable)31 b FA(u)f
+FE(use,)g(e.g.,)390 3996 y Fz(ncks)47 b(-7)g(--ppc)f(u=2)h(in.nc)f
+(out.nc)275 4169 y FE(The)36 b(output)g(\014le)h(will)g(preserv)m(e)g
+(only)g(t)m(w)m(o)h(signi\014can)m(t)f(digits)h(of)e
+FA(u)p FE(.)60 b(The)36 b(options)h(`)p Fz(-4)p FE(')f(or)h(`)p
+Fz(-7)p FE(')150 4279 y(ensure)e(a)g(netCDF4-format)j(output)d
+(\(regardless)h(of)g(the)f(input)g(\014le)g(format\))h(to)h(supp)s(ort)
+c(in)m(ternal)150 4388 y(compression.)39 b(It)27 b(is)f(recommended)g
+(though)g(not)h(required)e(to)i(write)f(netCDF4)i(\014les)e(after)h
+FD(PPC)p FE(.)38 b(F)-8 b(or)150 4498 y(clarit)m(y)34
+b(the)f(`)p Fz(-4/-7)p FE(')f(switc)m(hes)i(are)f(omitted)h(in)e
+(subsequen)m(t)g(examples.)49 b FD(NCO)32 b FE(attac)m(hes)j
+(attributes)150 4607 y(that)22 b(indicate)g(the)f(algorithm)h(used)e
+(and)g(degree)i(of)f(precision)g(retained)g(for)g(eac)m(h)h(v)-5
+b(ariable)22 b(a\013ected)g(b)m(y)150 4717 y FD(PPC)p
+FE(.)41 b(The)31 b FD(NSD)g FE(and)g FD(DSD)h FE(algorithms)f(store)h
+(the)f(attributes)h Fz(number_of_significant_d)o(igit)o(s)150
+4827 y FE(and)e Fz(least_significant_digit)1430 4794
+y Fu(22)1495 4827 y FE(,)g(resp)s(ectiv)m(ely)-8 b(.)p
+150 4979 1200 4 v 166 5047 a Fu(22)275 5078 y Ft(The)35
+b Fs(nc3tonc4)i Ft(to)r(ol)f(b)n(y)e(Je\013)h(Whitak)n(er)g(inspired)g
+Fq(NCO)f Ft(to)i(implemen)n(t)f Fq(PPC)p Ft(.)62 b Fq(NCO)35
+b Ft(implemen)n(ts)g(a)g(di\013eren)n(t)275 5166 y Fq(DSD)e
+Ft(algorithm)i(than)e Fs(nc3tonc4)p Ft(,)38 b(and)33
+b(pro)r(duces)h(sligh)n(tly)g(di\013eren)n(t)f(\(not)g(bit-for-bit\))g
+(though)h(self-consisten)n(t)275 5253 y(and)f(equiv)l(alen)n(t)g
+(results.)60 b Fs(nc3tonc4)35 b Ft(records)g(the)e(precision)i(of)g
+(its)f Fq(DSD)g Ft(algorithm)h(in)f(the)f(attribute)h
+Fs(least_)275 5340 y(significant_digit)29 b Ft(and)c
+Fq(NCO)h Ft(do)r(es)g(the)f(same)i(for)f(consistency)-6
+b(.)p eop end
+%%Page: 83 89
+TeXDict begin 83 88 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(83)275 299 y(It)38
+b(is)g(safe)h(to)g(attempt)h FD(PPC)d FE(on)h(input)g(that)h(has)f
+(already)h(b)s(een)e(rounded.)63 b(V)-8 b(ariables)40
+b(can)f(b)s(e)150 408 y(made)34 b(rounder,)h(not)f(sharp)s(er,)g(i.e.,)
+j(v)-5 b(ariables)35 b(cannot)g(b)s(e)f(\\un-rounded".)51
+b(Th)m(us)34 b FD(PPC)f FE(attempted)150 518 y(on)27
+b(an)g(input)e(v)-5 b(ariable)28 b(with)f(an)g(existing)g
+FD(PPC)f FE(attribute)i(pro)s(ceeds)e(only)h(if)g(the)g(new)g(rounding)
+e(lev)m(el)150 628 y(exceeds)34 b(the)f(old,)g(otherwise)h(no)e(new)h
+(rounding)e(o)s(ccurs)i(\(i.e.,)i(a)e(\\no-op"\),)i(and)d(the)h
+(original)h FD(PPC)150 737 y FE(attribute)d(is)g(retained)f(rather)h
+(than)f(replaced)g(with)h(the)f(new)m(er)g(v)-5 b(alue)31
+b(of)g FA(prc)p FE(.)275 897 y(T)-8 b(o)36 b(request,)h(sa)m(y)-8
+b(,)38 b(\014v)m(e)e(signi\014can)m(t)h(digits)f(\()p
+FA(nsd)28 b FE(=)d FA(5)8 b FE(\))36 b(for)f(all)i(\014elds,)g(except,)
+h(sa)m(y)-8 b(,)38 b(wind)d(sp)s(eeds)150 1006 y(whic)m(h)i(are)i(only)
+e(kno)m(wn)h(to)g(in)m(teger)h(v)-5 b(alues)38 b(\()p
+FA(dsd)28 b FE(=)d FA(0)8 b FE(\))38 b(in)f(the)h(supplied)e(units,)k
+(requires)d(`)p Fz(--ppc)p FE(')150 1116 y(t)m(wice:)390
+1275 y Fz(ncks)47 b(-4)g(--ppc)f(default=5)f(--ppc)i(u,v=.0)f(in.nc)g
+(out.nc)275 1435 y FE(T)-8 b(o)32 b(preserv)m(e)h(\014v)m(e)g(digits)g
+(in)f(all)i(v)-5 b(ariables)33 b(except)g(co)s(ordinate)h(v)-5
+b(ariables)33 b(and)f FA(u)f FE(and)h FA(v)p FE(,)i(use)e(the)150
+1544 y(`)p Fz(default)p FE(')d(option)i(and)e(separately)j(sp)s(ecify)e
+(the)h(exceptions:)390 1704 y Fz(ncks)47 b(--ppc)f(default=5)f(--ppc)i
+(u,v=20)f(in.nc)g(out.nc)275 1863 y FE(The)32 b(`)p Fz(--ppc)p
+FE(')f(option)i(ma)m(y)h(b)s(e)e(sp)s(eci\014ed)g(an)m(y)h(n)m(um)m(b)s
+(er)e(of)i(times)g(to)g(supp)s(ort)e(v)-5 b(arying)33
+b(precision)150 1973 y(t)m(yp)s(es)d(and)g(lev)m(els,)i(and)e(eac)m(h)i
+(option)e(ma)m(y)h(aggregate)j(all)d(the)g(v)-5 b(ariables)31
+b(with)f(the)g(same)h(precision)390 2132 y Fz(ncks)47
+b(--ppc)f(p,w,z=5)g(--ppc)g(q,RH=4)g(--ppc)h(T,u,v=3)e(in.nc)i(out.nc)
+275 2291 y FE(An)m(y)24 b FA(v)-5 b(ar)30 b FE(argumen)m(t)25
+b(ma)m(y)g(b)s(e)e(a)i(regular)f(expression.)39 b(This)23
+b(simpli\014es)h(generating)h(lists)g(of)f(related)150
+2401 y(v)-5 b(ariables:)390 2560 y Fz(ncks)47 b(--ppc)f(Q.?=5)g(--ppc)h
+(FS.?,FL.?=4)d(--ppc)j(RH=.3)f(in.nc)h(out.nc)275 2720
+y FE(Although)26 b FD(PPC)p FE(-rounding)f(instan)m(tly)j(reduces)e
+(data)i(precision,)f(on-disk)g(storage)h(reduction)f(only)150
+2829 y(o)s(ccurs)j(once)h(the)g(data)g(are)g(compressed.)275
+2989 y(Ho)m(w)c(can)g(one)h(b)s(e)e(sure)g(the)h(lossy)g(data)h(are)f
+(su\016cien)m(tly)h(precise?)39 b FD(PPC)26 b FE(preserv)m(es)h(all)h
+(signi\014can)m(t)150 3098 y(digits)41 b(of)f(ev)m(ery)h(v)-5
+b(alue.)70 b(The)39 b FD(DSD)i FE(algorithm)g(uses)f(\015oating)h(p)s
+(oin)m(t)f(math)g(to)h(round)d(eac)m(h)j(v)-5 b(alue)150
+3208 y(optimally)39 b(so)g(that)g(it)f(has)g(the)h(maxim)m(um)f(n)m(um)
+m(b)s(er)e(of)j(zero)s(ed)f(bits)g(that)h(preserv)m(e)f(the)h(sp)s
+(eci\014ed)150 3318 y(precision.)81 b(The)43 b FD(NSD)i
+FE(algorithm)f(uses)g(a)g(theoretical)i(approac)m(h)e(\(3.2)h(bits)f(p)
+s(er)e(base-10)k(digit\),)150 3427 y(tuned)32 b(and)g(tested)i(to)f
+(ensure)f(the)h Fp(worst)43 b FE(case)34 b(quan)m(tization)h(error)d
+(is)h(less)g(than)g(half)f(the)h(v)-5 b(alue)34 b(of)150
+3537 y(the)d(minim)m(um)e(incremen)m(t)i(in)f(the)h(least)g
+(signi\014can)m(t)h(digit.)275 3696 y(W)-8 b(e)42 b(de\014ne)e(sev)m
+(eral)j(metrics)f(to)g(quan)m(tify)f(the)h(quan)m(tization)h(error.)73
+b(The)40 b(mean)i(error)36 b(\026)-41 b Fw(\017)42 b
+FE(and)150 3806 y(mean)25 b(absolute)g(error)c(\026)-41
+b Fw(\017)995 3773 y Fu(+)1075 3806 y FE(incurred)23
+b(in)i(quan)m(tizing)h(a)f(v)-5 b(ariable)26 b(from)e(its)h(true)g(v)-5
+b(alues)25 b Fw(x)3208 3820 y Fg(i)3261 3806 y FE(to)g(quan)m(tized)150
+3915 y(v)-5 b(alues)31 b Fw(q)462 3929 y Fg(i)519 3915
+y FE(are,)g(resp)s(ectiv)m(ely)-8 b(,)643 4177 y(\026)-41
+b Fw(\017)25 b FE(=)815 4051 y Fd(P)903 4071 y Fg(i)p
+Fu(=)p Fg(N)903 4138 y(i)p Fu(=1)1055 4115 y Fw(\026)1110
+4129 y Fg(i)1138 4115 y Fw(m)1218 4129 y Fg(i)1245 4115
+y Fw(w)1310 4129 y Fg(i)1338 4115 y FE(\()p Fw(x)1425
+4129 y Fg(i)1473 4115 y FB(\000)20 b Fw(q)1605 4129 y
+Fg(i)1632 4115 y FE(\))p 815 4156 853 4 v 980 4185 a
+Fd(P)1068 4205 y Fg(i)p Fu(=)p Fg(N)1068 4272 y(i)p Fu(=1)1220
+4249 y Fw(\026)1275 4263 y Fg(i)1303 4249 y Fw(m)1383
+4263 y Fg(i)1410 4249 y Fw(w)1475 4263 y Fg(i)1859 4177
+y FE(and)177 b(\026)-40 b Fw(\017)2225 4139 y Fu(+)2305
+4177 y FE(=)2411 4051 y Fd(P)2498 4071 y Fg(i)p Fu(=)p
+Fg(N)2498 4138 y(i)p Fu(=1)2651 4115 y Fw(\026)2706 4129
+y Fg(i)2733 4115 y Fw(m)2813 4129 y Fg(i)2841 4115 y
+Fw(w)2906 4129 y Fg(i)2934 4115 y FB(j)p Fw(x)3011 4129
+y Fg(i)3059 4115 y FB(\000)20 b Fw(q)3191 4129 y Fg(i)3218
+4115 y FB(j)p 2411 4156 833 4 v 2566 4185 a Fd(P)2653
+4205 y Fg(i)p Fu(=)p Fg(N)2653 4272 y(i)p Fu(=1)2806
+4249 y Fw(\026)2861 4263 y Fg(i)2888 4249 y Fw(m)2968
+4263 y Fg(i)2996 4249 y Fw(w)3061 4263 y Fg(i)150 4434
+y FE(where)31 b Fw(\026)469 4448 y Fg(i)528 4434 y FE(is)g(1)h(unless)e
+Fw(x)1018 4448 y Fg(i)1077 4434 y FE(equals)i(the)g(missing)f(v)-5
+b(alue,)32 b Fw(m)2178 4448 y Fg(i)2237 4434 y FE(is)f(1)h(unless)f
+Fw(x)2728 4448 y Fg(i)2787 4434 y FE(is)g(mask)m(ed,)i(and)d
+Fw(w)3472 4448 y Fg(i)3531 4434 y FE(is)i(the)150 4543
+y(w)m(eigh)m(t.)42 b(The)30 b(maxim)m(um)g(and)g(minim)m(um)g(errors)g
+Fw(\017)1964 4557 y Fu(max)2120 4543 y FE(and)g Fw(\017)2334
+4557 y Fu(min)2479 4543 y FE(are)g(b)s(oth)g(signed)926
+4742 y Fw(\017)963 4756 y Fu(max)1115 4742 y FE(=)25
+b(max\()p Fw(x)1467 4756 y Fg(i)1516 4742 y FB(\000)19
+b Fw(q)1647 4756 y Fg(i)1675 4742 y FE(\))182 b(and)f
+Fw(\017)2257 4756 y Fu(min)2396 4742 y FE(=)25 b(min\()p
+Fw(x)2731 4756 y Fg(i)2779 4742 y FB(\000)20 b Fw(q)2911
+4756 y Fg(i)2938 4742 y FE(\))150 4942 y(while)30 b(the)h(maxim)m(um)f
+(and)g(minim)m(um)g(absolute)h(errors)e Fw(\017)2206
+4903 y Fu(+)2206 4964 y(mabs)2391 4942 y FE(are)i(p)s(ositiv)m
+(e-de\014nite.)1146 5141 y Fw(\017)1183 5103 y Fu(+)1183
+5163 y(mabs)1363 5141 y FE(=)25 b(max)p FB(j)p Fw(x)1705
+5155 y Fg(i)1753 5141 y FB(\000)20 b Fw(q)1885 5155 y
+Fg(i)1912 5141 y FB(j)25 b FE(=)g(max)q(\()p FB(j)p Fw(\017)2325
+5155 y Fu(max)2452 5141 y FB(j)p Fw(;)15 b FB(j)p Fw(\017)2579
+5155 y Fu(min)2694 5141 y FB(j)p FE(\))1171 5340 y Fw(\017)1208
+5302 y Fu(+)1208 5362 y(mibs)1373 5340 y FE(=)25 b(min)p
+FB(j)p Fw(x)1698 5354 y Fg(i)1746 5340 y FB(\000)20 b
+Fw(q)1878 5354 y Fg(i)1905 5340 y FB(j)25 b FE(=)g(min\()p
+FB(j)p Fw(\017)2300 5354 y Fu(max)2427 5340 y FB(j)p
+Fw(;)15 b FB(j)p Fw(\017)2554 5354 y Fu(min)2669 5340
+y FB(j)p FE(\))p eop end
+%%Page: 84 90
+TeXDict begin 84 89 bop 150 -116 a FE(84)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(T)m(ypically)38 b
+Fw(\017)595 261 y Fu(+)595 321 y(mibs)770 299 y FE(=)d(0)i(for)f(quan)m
+(tization,)k(since)d(man)m(y)f(exact)i(v)-5 b(alues)37
+b(need)f(no)g(quan)m(tization.)61 b(Bit-)150 408 y(shifting)25
+b(zeros)g(in)m(to)h(the)f(least)i(signi\014can)m(t)f(bits)e(\()p
+FD(LSB)p FE(s\))i(alw)m(a)m(ys)g(underestimates)f(true)g(v)-5
+b(alues)25 b(so)g(that)150 518 y Fw(\017)187 532 y Fu(max)348
+518 y FE(=)34 b(0.)58 b(Con)m(v)m(ersely)-8 b(,)39 b(bit-shifting)d
+(ones)h(in)m(to)f(the)h FD(LSB)p FE(s)e(alw)m(a)m(ys)j(o)m(v)m
+(erestimates)h(true)c(v)-5 b(alues)37 b(so)150 628 y(that)32
+b Fw(\017)385 642 y Fu(min)525 628 y FE(=)27 b(0.)43
+b(Our)30 b FD(NSD)i FE(algorithm)g(is)f(balanced)h(b)s(ecause)f(it)h
+(alternates)g(bit-shifting)g(zero)s(es)g(and)150 737
+y(ones.)41 b(Balanced)32 b(algorithms)f(should)e(yield)i
+Fw(\017)1776 751 y Fu(max)1928 737 y FB(\031)25 b(\000)p
+Fw(\017)2132 751 y Fu(min)2245 737 y FE(,)31 b Fw(\017)2338
+699 y Fu(+)2338 760 y(mabs)2518 737 y FB(\031)25 b Fw(\017)2651
+699 y Fu(+)2651 760 y(mibs)2791 737 y FE(,)31 b(and)25
+b(\026)-40 b Fw(\017)25 b FB(\031)g FE(0.)275 902 y(The)h(three)h(most)
+g(imp)s(ortan)m(t)g(error)g(metrics)g(for)g(quan)m(tization)i(are)e
+Fw(\017)2710 863 y Fu(+)2710 924 y(mabs)2864 902 y FE(,)d(\026)-41
+b Fw(\017)2954 869 y Fu(+)3009 902 y FE(,)28 b(and)22
+b(\026)-41 b Fw(\017)p FE(.)40 b(The)26 b(upp)s(er)150
+1011 y(b)s(ound)42 b(\(w)m(orst)i(case\))i(quan)m(tization)g(p)s
+(erformance)d(is)h Fw(\017)2195 973 y Fu(+)2195 1034
+y(mabs)2349 1011 y FE(.)77 b(\026)-40 b Fw(\017)2493
+978 y Fu(+)2591 1011 y FE(measures)44 b(the)g(absolute)h(mean)150
+1121 y(accuracy)37 b(of)f(quan)m(tization,)k(and)35 b(do)s(es)h(not)g
+(allo)m(w)i(p)s(ositiv)m(e)f(and)e(negativ)m(e)k(o\013sets)e(to)f(comp)
+s(ensate)150 1230 y(eac)m(hother)f(and)e(conceal)j(p)s(o)s(or)d(p)s
+(erformance.)50 b(The)33 b(di\013erence)i(b)s(ewt)m(w)m(een)f
+Fw(\017)2907 1192 y Fu(+)2907 1253 y(mabs)3095 1230 y
+FE(and)29 b(\026)-41 b Fw(\017)3312 1197 y Fu(+)3401
+1230 y FE(indicates)150 1340 y(ho)m(w)26 b(m)m(uc)m(h)h(of)f(an)h
+(outlier)g(the)f(w)m(orst)h(case)h(is.)39 b(The)26 b(mean)g(accuracy)e
+(\026)-41 b Fw(\017)26 b FE(indicates)h(whether)f(statistical)150
+1450 y(prop)s(erties)k(of)g(quan)m(tized)h(n)m(um)m(b)s(ers)e(will)i
+(accurately)h(re\015ect)f(the)g(true)f(v)-5 b(alues.)275
+1614 y(All)26 b(three)f(metrics)h(are)g(expressed)f(in)g(terms)g(of)h
+(the)g(fraction)g(of)f(the)h(ten's)g(place)g(o)s(ccupied)f(b)m(y)h(the)
+150 1723 y FD(LSD)p FE(.)49 b(If)32 b(the)h FD(LSD)g
+FE(is)g(the)g(h)m(undreds)e(digit)j(or)f(the)g(thousandths)e(digit,)k
+(then)e(the)g(metrics)g(are)g(frac-)150 1833 y(tions)f(of)f(100)q(,)i
+(or)f(of)e(1/100)r(,)j(resp)s(ectiv)m(ely)-8 b(.)47 b
+FD(PPC)31 b FE(algorithms)i(should)e(pro)s(duce)f(maxim)m(um)i
+(absolute)150 1943 y(errors)g(no)h(greater)g(than)d(0.5)k(in)e(these)h
+(units.)47 b(If)32 b(the)h FD(LSD)g FE(is)g(the)f(h)m(undreds)f(digit,)
+j(then)e(quan)m(tized)150 2052 y(v)m(ersions)d(of)g(true)f(v)-5
+b(alues)29 b(will)h(b)s(e)e(within)g(\014ft)m(y)h(of)f(the)h(true)g(v)
+-5 b(alue.)40 b(It)29 b(is)g(m)m(uc)m(h)g(easier)g(to)h(satisfy)f(this)
+150 2162 y(tolerance)36 b(for)e(a)h(true)f(v)-5 b(alue)35
+b(of)30 b(100)36 b(\(only)f(50\045)g(accuracy)g(required\))f(than)g
+(for)c(999)36 b(\(5\045)31 b(accuracy)150 2271 y(required\).)57
+b(Th)m(us)35 b(the)i(minim)m(um)e(accuracy)i(guaran)m(teed)g(for)f
+FA(nsd)h FE(=)e(1)h(ranges)g(from)g(5{50\045.)59 b(F)-8
+b(or)150 2381 y(this)31 b(reason,)g(the)h(b)s(est)e(and)g(w)m(orst)i
+(cast)g(p)s(erformance)e(usually)g(o)s(ccurs)h(for)g(true)g(v)-5
+b(alues)31 b(whose)g FD(LSD)150 2491 y FE(v)-5 b(alue)36
+b(is)g(close)g(to)h(one)f(and)f(nine,)h(resp)s(ectiv)m(ely)-8
+b(.)58 b(Of)35 b(course)h(most)g(users)f(prefer)f FA(prc)39
+b Fw(>)34 b FE(1)i(b)s(ecause)150 2600 y(accuracies)i(increase)f(exp)s
+(onen)m(tially)g(with)f FA(prc)p FE(.)57 b(Con)m(tin)m(uing)36
+b(the)g(previous)g(example)g(to)h FA(prc)j FE(=)34 b(2,)150
+2710 y(quan)m(tized)h(v)m(ersions)g(of)f(true)h(v)-5
+b(alues)34 b(from)g(1000{9999)39 b(will)c(also)g(b)s(e)f(within)c(50)35
+b(of)f(the)h(true)f(v)-5 b(alue,)150 2819 y(i.e.,)26
+b(ha)m(v)m(e)e(accuracies)g(from)e(0.5{5\045.)40 b(In)22
+b(other)h(w)m(ords,)h(only)f(t)m(w)m(o)h(signi\014can)m(t)g(digits)f
+(are)g(necessary)g(to)150 2929 y(guaran)m(tee)28 b(b)s(etter)e(than)k
+(5\045)d(accuracy)g(in)f(quan)m(tization.)41 b(W)-8 b(e)27
+b(recommend)f(that)h(dataset)h(pro)s(ducers)150 3039
+y(and)37 b(users)f(consider)i(quan)m(tizing)g(datasets)h(with)e
+FA(nsd)i FE(=)e(3.)62 b(This)36 b(guaran)m(tees)j(accuracy)f(of)g
+(0.05{)150 3148 y(0.5\045)h(for)f(individual)f(v)-5 b(alues.)64
+b(Statistics)39 b(computed)f(from)g(ensem)m(bles)g(of)g(quan)m(tized)h
+(v)-5 b(alues)38 b(will,)150 3258 y(assuming)32 b(the)i(mean)f(error)28
+b(\026)-41 b Fw(\017)33 b FE(is)g(small,)h(ha)m(v)m(e)g(m)m(uc)m(h)f(b)
+s(etter)g(accuracy)h(than)c(0.5\045)q(.)49 b(This)32
+b(accuracy)150 3367 y(is)e(the)h(most)g(that)g(can)f(b)s(e)g
+(justi\014ed)g(for)g(man)m(y)g(applications.)275 3532
+y(T)-8 b(o)30 b(demonstrate)g(these)g(principles)f(w)m(e)h(conduct)f
+(error)h(analyses)g(on)f(an)h(arti\014cial,)h(repro)s(ducible)150
+3641 y(dataset,)g(and)d(on)h(an)g(actual)h(dataset)h(of)e(observ)-5
+b(ational)30 b(analysis)g(v)-5 b(alues.)2767 3608 y Fu(23)2878
+3641 y FE(The)28 b(table)i(summarizes)150 3751 y(quan)m(tization)i
+(accuracy)g(based)e(on)g(the)h(three)f(metrics.)150 3945
+y Fz(NSD)336 b FE(Num)m(b)s(er)29 b(of)i(Signi\014can)m(t)g(Digits.)150
+4114 y Fz(Emabs)240 b FE(Maxim)m(um)31 b(absolute)g(error.)150
+4284 y Fz(Emebs)240 b FE(Mean)31 b(absolute)g(error.)150
+4453 y Fz(Emean)240 b FE(Mean)31 b(error.)390 4617 y
+Fz(Artificial)45 b(Data:)h(N=1000000)g(values)g(in)h([1.0,2.0\))e(in)i
+(steps)g(of)g(1.0e-6)390 4727 y(Single-Precision)377
+b(Double-Precision)139 b(Single-Precision)390 4837 y(NSD)47
+b(Emabs)f(Emebs)h(Emean)141 b(Emabs)47 b(Emebs)f(Emean)94
+b(DSD)47 b(Emabs)g(Emebs)f(Emean)438 4946 y(1)95 b(0.31)f(0.11)h
+(4.1e-4)e(0.31)i(0.11)f(4.0e-4)g(1)h(0.30)g(0.11)46 b(-8.1e-4)438
+5056 y(2)95 b(0.39)f(0.14)h(6.8e-5)e(0.39)i(0.14)f(5.5e-5)g(2)h(0.39)g
+(0.14)46 b(-1.3e-4)p 150 5154 1200 4 v 166 5221 a Fu(23)275
+5253 y Ft(The)27 b(arti\014cial)h(dataset)g(emplo)n(y)n(ed)e(is)i(one)f
+(million)h(ev)n(enly)f(spaced)g(v)l(alues)g(from)h(1.0{2.0.)41
+b(The)27 b(analysis)h(data)f(are)275 5340 y Ff(N)i Ft(=)21
+b(13934592)29 b(v)l(alues)d(of)g(the)g(temp)r(erature)f(\014eld)h(from)
+g(the)g Fq(NASA)f(MERRA)g Ft(analysis)i(of)f(20130601.)p
+eop end
+%%Page: 85 91
+TeXDict begin 85 90 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(85)438 299 y Fz(3)95
+b(0.49)f(0.17)h(1.0e-6)e(0.49)i(0.17)46 b(-5.5e-7)94
+b(3)h(0.49)g(0.17)46 b(-2.0e-5)438 408 y(4)95 b(0.30)f(0.11)h(3.2e-7)e
+(0.30)i(0.11)46 b(-6.1e-6)94 b(4)h(0.30)g(0.11)f(5.1e-8)438
+518 y(5)h(0.37)f(0.13)h(3.1e-7)e(0.38)i(0.13)46 b(-5.6e-6)94
+b(5)h(0.38)g(0.13)f(2.6e-6)438 628 y(6)h(0.36)f(0.12)47
+b(-4.4e-7)93 b(0.48)i(0.17)46 b(-4.1e-7)94 b(6)h(0.48)g(0.17)f(7.2e-6)
+438 737 y(7)h(0.00)f(0.00)h(0.0)237 b(0.30)95 b(0.10)f(1.5e-7)g(7)h
+(0.00)g(0.00)f(0.0)390 956 y(Observational)44 b(Analysis:)h(N=13934592)
+g(values)i(MERRA)f(Temperature)f(20130601)390 1066 y(Single-Precision)
+390 1176 y(NSD)i(Emabs)f(Emebs)h(Emean)438 1285 y(1)95
+b(0.31)f(0.11)h(2.4e-3)438 1395 y(2)g(0.39)f(0.14)h(3.8e-4)438
+1504 y(3)g(0.49)f(0.17)47 b(-9.6e-5)438 1614 y(4)95 b(0.30)f(0.11)h
+(2.3e-3)438 1724 y(5)g(0.37)f(0.13)h(2.2e-3)438 1833
+y(6)g(0.36)f(0.13)h(1.7e-2)438 1943 y(7)g(0.00)f(0.00)h(0.0)275
+2102 y FE(All)25 b(results)g(sho)m(w)g(that)h FD(PPC)e
+FE(quan)m(tization)j(p)s(erforms)d(as)h(exp)s(ected.)40
+b(Absolute)25 b(maxim)m(um)g(errors)150 2212 y FA(Emabs)j
+Fw(<)d FE(0)p Fw(:)p FE(5)k(for)f(all)h FA(prc)p FE(.)39
+b(F)-8 b(or)28 b(1)e Fw(<)p FE(=)f FA(prc)30 b Fw(<)p
+FE(=)25 b(6,)k(quan)m(tization)g(results)f(in)g(comparable)g(maxim)m
+(um)150 2321 y(absolute)38 b(and)g(mean)f(absolute)i(errors)e
+FA(Emabs)k FE(and)c FA(Emebs)p FE(,)i(resp)s(ectiv)m(ely)-8
+b(.)64 b(Mean)39 b(errors)e FA(Emean)150 2431 y FE(are)c(orders)e(of)i
+(magnitude)g(smaller)f(b)s(ecause)h(quan)m(tization)h(pro)s(duces)d(o)m
+(v)m(er-)j(and)e(under-estimated)150 2540 y(v)-5 b(alues)43
+b(in)g(balance.)79 b(When)43 b FA(prc)51 b FE(=)46 b(7,)g(quan)m
+(tization)f(of)e(single-precision)h(v)-5 b(alues)43 b(is)g
+(ine\013ectiv)m(e,)150 2650 y(b)s(ecause)h(all)g(a)m(v)-5
+b(ailable)46 b(bits)e(are)g(used)f(to)i(represen)m(t)e(the)h(maxim)m
+(um)g(precision)g(of)g(sev)m(en)g(digits.)150 2760 y(The)e(maxim)m(um)g
+(and)f(mean)h(absolute)h(errors)f FA(Emabs)j FE(and)c
+FA(Emebs)46 b FE(are)c(nearly)g(iden)m(tical)i(across)150
+2869 y(algorithms,)38 b(precisions,)f(and)f(dataset)h(t)m(yp)s(es.)56
+b(This)35 b(is)h(consisten)m(t)h(with)e(b)s(oth)g(the)h(arti\014cial)h
+(data)150 2979 y(and)30 b(empirical)h(data)g(b)s(eing)f(random,)g(and)f
+(th)m(us)h(exercising)i(equally)f(strengths)f(and)g(w)m(eaknesses)h(of)
+150 3088 y(the)37 b(algorithms)h(o)m(v)m(er)g(the)f(course)g(of)f
+(millions)i(of)f(input)e(v)-5 b(alues.)61 b(W)-8 b(e)38
+b(generated)f(arti\014cial)i(arra)m(ys)150 3198 y(with)34
+b(man)m(y)g(di\013eren)m(t)h(starting)g(v)-5 b(alues)35
+b(and)e(in)m(terv)-5 b(al)36 b(spacing)e(and)g(all)h(ga)m(v)m(e)h
+(qualitativ)m(ely)i(similar)150 3308 y(results.)i(The)30
+b(results)h(presen)m(ted)f(are)h(the)f(w)m(orst)h(obtained.)275
+3467 y(The)c(arti\014cial)j(data)f(has)f(m)m(uc)m(h)h(smaller)f(mean)h
+(error)f FA(Emean)g FE(than)g(the)g(observ)-5 b(ational)30
+b(analysis.)150 3577 y(The)40 b(reason)g(wh)m(y)g(is)h(unclear.)71
+b(It)40 b(ma)m(y)h(b)s(e)f(b)s(ecause)g(the)h(temp)s(erature)f(\014eld)
+g(is)g(concen)m(trated)i(in)150 3686 y(particular)d(ranges)g(of)f(v)-5
+b(alues)39 b(\(and)f(asso)s(ciated)i(quan)m(tization)h(errors\))d(prev)
+-5 b(alen)m(t)39 b(on)g(Earth,)h(e.g.,)150 3796 y(200)33
+b Fw(<)e FA(T)37 b Fw(<)31 b FE(320.)53 b(It)34 b(is)g(w)m(orth)g
+(noting)h(that)f(the)g(mean)g(error)g FA(Emean)d Fw(<)g
+FE(0)p Fw(:)p FE(01)36 b(for)e(1)d Fw(<)p FE(=)g FA(prc)36
+b Fw(<)31 b FE(6,)150 3905 y(and)22 b(that)i FA(Emean)e
+FE(is)h(t)m(ypically)i(at)e(least)h(t)m(w)m(o)g(or)f(more)g(orders)f
+(of)h(magnitude)g(less)g(than)f FA(Emabs)p FE(.)38 b(Th)m(us)150
+4015 y(quan)m(tized)31 b(v)-5 b(alues)30 b(with)g(precisions)g(as)g(lo)
+m(w)h(as)f FA(prc)h FE(=)25 b(1)30 b(still)h(yield)f(highly)g
+(signi\014can)m(t)h(statistics)h(b)m(y)150 4125 y(con)m(temp)s(orary)f
+(scien)m(ti\014c)h(standards.)275 4284 y(T)-8 b(esting)31
+b(sho)m(ws)f(that)i FD(PPC)d FE(quan)m(tization)k(enhances)d
+(compression)h(of)g(t)m(ypical)h(climate)h(datasets.)150
+4394 y(The)k(degree)h(of)g(enhancemen)m(t)g(dep)s(ends,)g(of)f(course,)
+j(on)e(the)f(required)g(precision.)62 b(Mo)s(del)38 b(results)150
+4503 y(are)j(often)f(computed)g(as)h Fz(NC_DOUBLE)c FE(then)j(arc)m
+(hiv)m(ed)h(as)g Fz(NC_FLOAT)c FE(to)k(sa)m(v)m(e)h(space.)71
+b(This)39 b(table)150 4613 y(summarizes)d(the)h(p)s(erformance)f(of)h
+(lossless)g(and)f(lossy)h(compression)g(on)g(t)m(w)m(o)h(t)m(ypical,)i
+(or)c(at)i(least)150 4722 y(random,)31 b(netCDF)h(data)g(\014les.)43
+b(The)30 b(\014les)i(w)m(ere)f(tak)m(en)i(from)d(represen)m(tativ)m(e)j
+(mo)s(del-sim)m(ulated)g(and)150 4832 y(satellite-retriev)m(ed)44
+b(datasets.)70 b(Only)39 b(\015oating)h(p)s(oin)m(t)g(data)h(w)m(ere)f
+(compressed.)68 b(No)41 b(attempt)g(w)m(as)150 4941 y(made)36
+b(to)h(compress)f(in)m(teger-t)m(yp)s(e)i(v)-5 b(ariables)37
+b(as)f(they)g(o)s(ccup)m(y)g(an)g(insigni\014can)m(t)h(fraction)g(of)f
+(ev)m(ery)150 5051 y(dataset.)42 b(The)30 b(columns)g(are)150
+5230 y Fz(Type)288 b FE(File-t)m(yp)s(e:)47 b Fo(N3)31
+b FE(for)h(netCDF)h Fz(CLASSIC)p FE(,)f Fo(N4)f FE(for)i
+Fz(NETCDF4)p FE(\),)e Fo(N7)h FE(for)g Fz(NETCDF4_CLASSIC)630
+5340 y FE(\(whic)m(h)39 b(comprises)g(netCDF3)h(data)f(t)m(yp)s(es)g
+(and)f(structures)g(with)h(netCDF4)g(storage)p eop end
+%%Page: 86 92
+TeXDict begin 86 91 bop 150 -116 a FE(86)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)630 299 y(features)h(lik)m(e)i
+(compression\),)f Fo(H4)e FE(for)h FD(HDF4)p FE(,)h(and)f
+Fo(H5)f FE(for)h FD(HDF5)p FE(.)43 b Fo(N4/7)30 b FE(means)h(results)
+630 408 y(apply)f(to)h(b)s(oth)f Fo(N4)g FE(and)f Fo(N7)h
+FE(\014let)m(yp)s(es.)150 573 y Fz(LLC)336 b FE(T)m(yp)s(e)46
+b(of)i(lossless)f(compression)g(emplo)m(y)m(ed,)53 b(if)47
+b(an)m(y)-8 b(.)91 b(Bare)48 b(n)m(um)m(b)s(ers)d(refer)i(to)h(the)630
+683 y(strength)38 b(of)h(the)f FD(DEFLA)-7 b(TE)38 b
+FE(algorithm)h(emplo)m(y)m(ed)g(in)m(ternally)h(b)m(y)e(netCDF4/)p
+FD(HDF5)p FE(,)630 792 y(while)26 b(n)m(um)m(b)s(ers)f(pre\014xed)h
+(with)g Fo(B)g FE(refer)g(to)i(the)e(blo)s(c)m(k)h(size)g(emplo)m(y)m
+(ed)h(b)m(y)e(the)h(Burro)m(ws-)630 902 y(Wheeler)k(algorithm)h(in)e
+Fz(bzip2)p FE(.)150 1067 y Fz(PPC)336 b FE(Num)m(b)s(er)35
+b(of)i(signi\014can)m(t)h(digits)f(retained)g(b)m(y)f(the)h
+(precision-preserving)g(compression)630 1176 y FD(NSD)31
+b FE(algorithm.)150 1341 y Fz(Pck)336 b Fo(Y)35 b FE(if)h(the)g
+(default)g Fz(ncpdq)e FE(pac)m(king)i(algorithm)h(\(con)m(v)m(ert)h
+(\015oating)e(p)s(oin)m(t)g(t)m(yp)s(es)f(to)i Fz(NC_)630
+1451 y(SHORT)p FE(\))28 b(w)m(as)i(emplo)m(y)m(ed.)41
+b(A)29 b(dash)g(\()p Fo(-)p FE(\))g(indicates)h(the)g(asso)s(ciated)g
+(compression)f(feature)630 1561 y(w)m(as)i(not)f(emplo)m(y)m(ed.)150
+1725 y Fz(Size)288 b FE(Resulting)31 b(\014lesize)g(in)f
+FD(MB)p FE(.)150 1890 y Fz(\045)432 b FE(Compression)29
+b(ratio,)j(i.e.,)f(resulting)f(\014lesize)i(relativ)m(e)g(to)f
+(original)g(size,)g(in)f(p)s(ercen)m(t.)41 b(In)630 2000
+y(some)32 b(cases)h(the)f(original)h(\014les)e(is)h(already)g
+(losslessly)h(compressed.)45 b(The)31 b(compression)630
+2109 y(ratios)h(rep)s(orted)e(are)h(relativ)m(e)h(to)g(the)f(size)g(of)
+g(the)g(original)h(\014le)f(as)g(distributed,)f(not)h(as)630
+2219 y(optimally)h(losslessly)f(compressed.)390 2381
+y Fz(#)47 b(dstmch90_clm.nc)390 2491 y(Type)g(LLC)g(PPC)f(Pck)95
+b(Size)142 b(\045)191 b(Flags)46 b(and)h(Notes)485 2600
+y(N3)143 b(-)g(-)95 b(-)143 b(34.7)47 b(100.0)94 b(Original)45
+b(is)j(not)e(compressed)485 2710 y(N3)95 b(B1)143 b(-)95
+b(-)143 b(28.9)94 b(83.2)h(bzip2)46 b(-1)485 2819 y(N3)95
+b(B9)143 b(-)95 b(-)143 b(29.3)94 b(84.4)h(bzip2)46 b(-9)485
+2929 y(N7)143 b(-)g(-)95 b(-)143 b(35.0)47 b(101.0)485
+3039 y(N7)143 b(1)g(-)95 b(-)143 b(28.2)94 b(81.3)h(-L)47
+b(1)485 3148 y(N7)143 b(9)g(-)95 b(-)143 b(28.0)94 b(80.8)h(-L)47
+b(9)485 3258 y(N7)143 b(-)g(-)95 b(Y)143 b(17.6)94 b(50.9)h(ncpdq)46
+b(-L)h(0)485 3367 y(N7)143 b(1)g(-)95 b(Y)191 b(7.9)94
+b(22.8)h(ncpdq)46 b(-L)h(1)485 3477 y(N7)143 b(1)g(7)95
+b(-)143 b(28.2)94 b(81.3)h(--ppc)46 b(default=7)485 3587
+y(N7)143 b(1)g(6)95 b(-)143 b(27.9)94 b(80.6)h(--ppc)46
+b(default=6)485 3696 y(N7)143 b(1)g(5)95 b(-)143 b(25.9)94
+b(74.6)h(--ppc)46 b(default=5)485 3806 y(N7)143 b(1)g(4)95
+b(-)143 b(22.3)94 b(64.3)h(--ppc)46 b(default=4)485 3915
+y(N7)143 b(1)g(3)95 b(-)143 b(18.9)94 b(54.6)h(--ppc)46
+b(default=3)485 4025 y(N7)143 b(1)g(2)95 b(-)143 b(14.5)94
+b(43.2)h(--ppc)46 b(default=2)485 4134 y(N7)143 b(1)g(1)95
+b(-)143 b(10.0)94 b(29.0)h(--ppc)46 b(default=1)390 4354
+y(#)h(b1850c5cn_doe_polar_merged)o(_0_c)o(esm)o(1_2_)o(0_HD)o(+MA)o
+(M4+t)o(un2b)o(.hp)o(.e00)o(3.ca)o(m.h)o(0.00)o(01-0)o(1.n)o(c)390
+4463 y(Type)g(LLC)g(PPC)f(Pck)95 b(Size)142 b(\045)191
+b(Flags)46 b(and)h(Notes)485 4573 y(N3)143 b(-)g(-)95
+b(-)g(119.8)47 b(100.0)94 b(Original)45 b(is)j(not)e(compressed)485
+4682 y(N3)95 b(B1)143 b(-)95 b(-)143 b(84.2)94 b(70.3)h(bzip2)46
+b(-1)485 4792 y(N3)95 b(B9)143 b(-)95 b(-)143 b(84.8)94
+b(70.9)h(bzip2)46 b(-9)485 4902 y(N7)143 b(-)g(-)95 b(-)g(120.5)47
+b(100.7)485 5011 y(N7)143 b(1)g(-)95 b(-)143 b(82.6)94
+b(69.0)h(-L)47 b(1)485 5121 y(N7)143 b(9)g(-)95 b(-)143
+b(82.1)94 b(68.6)h(-L)47 b(9)485 5230 y(N7)143 b(-)g(-)95
+b(Y)143 b(60.7)94 b(50.7)h(ncpdq)46 b(-L)h(0)485 5340
+y(N7)143 b(1)g(-)95 b(Y)143 b(26.0)94 b(21.8)h(ncpdq)46
+b(-L)h(1)p eop end
+%%Page: 87 93
+TeXDict begin 87 92 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(87)485 299 y Fz(N7)143
+b(1)g(7)95 b(-)143 b(82.6)94 b(69.0)h(--ppc)46 b(default=7)485
+408 y(N7)143 b(1)g(6)95 b(-)143 b(81.9)94 b(68.4)h(--ppc)46
+b(default=6)485 518 y(N7)143 b(1)g(5)95 b(-)143 b(77.2)94
+b(64.5)h(--ppc)46 b(default=5)485 628 y(N7)143 b(1)g(4)95
+b(-)143 b(69.0)94 b(57.6)h(--ppc)46 b(default=4)485 737
+y(N7)143 b(1)g(3)95 b(-)143 b(59.3)94 b(49.5)h(--ppc)46
+b(default=3)485 847 y(N7)143 b(1)g(2)95 b(-)143 b(49.5)94
+b(41.3)h(--ppc)46 b(default=2)485 956 y(N7)143 b(1)g(1)95
+b(-)143 b(38.2)94 b(31.9)h(--ppc)46 b(default=1)390 1176
+y(#)h(MERRA300.prod.assim.inst3_)o(3d_a)o(sm_)o(Cp.2)o(0130)o(601)o
+(.hdf)390 1285 y(Type)g(LLC)g(PPC)f(Pck)95 b(Size)142
+b(\045)191 b(Flags)46 b(and)h(Notes)485 1395 y(H4)143
+b(5)g(-)95 b(-)g(244.3)47 b(100.0)94 b(Original)45 b(is)j(compressed)
+485 1504 y(H4)95 b(B1)143 b(-)95 b(-)g(244.7)47 b(100.1)94
+b(bzip2)46 b(-1)485 1614 y(N4)143 b(5)g(-)95 b(-)g(214.5)f(87.8)485
+1724 y(N7)143 b(5)g(-)95 b(-)g(210.6)f(86.2)485 1833
+y(N4)h(B1)143 b(-)95 b(-)g(215.4)f(88.2)h(bzip2)46 b(-1)485
+1943 y(N4)95 b(B9)143 b(-)95 b(-)g(214.8)f(87.9)h(bzip2)46
+b(-9)485 2052 y(N3)143 b(-)g(-)95 b(-)g(617.1)47 b(252.6)390
+2162 y(N4/7)142 b(-)h(-)95 b(-)g(694.0)47 b(284.0)94
+b(-L)47 b(0)390 2271 y(N4/7)142 b(1)h(-)95 b(-)g(223.2)f(91.3)h(-L)47
+b(1)390 2381 y(N4/7)142 b(9)h(-)95 b(-)g(207.3)f(84.9)h(-L)47
+b(9)390 2491 y(N4/7)142 b(-)h(-)95 b(Y)g(347.1)47 b(142.1)94
+b(ncpdq)46 b(-L)h(0)390 2600 y(N4/7)142 b(1)h(-)95 b(Y)g(133.6)f(54.7)h
+(ncpdq)46 b(-L)h(1)390 2710 y(N4/7)142 b(1)h(7)95 b(-)g(223.1)f(91.3)h
+(--ppc)46 b(default=7)390 2819 y(N4/7)142 b(1)h(6)95
+b(-)g(225.1)f(92.1)h(--ppc)46 b(default=6)390 2929 y(N4/7)142
+b(1)h(5)95 b(-)g(221.4)f(90.6)h(--ppc)46 b(default=5)390
+3039 y(N4/7)142 b(1)h(4)95 b(-)g(201.4)f(82.4)h(--ppc)46
+b(default=4)390 3148 y(N4/7)142 b(1)h(3)95 b(-)g(185.3)f(75.9)h(--ppc)
+46 b(default=3)390 3258 y(N4/7)142 b(1)h(2)95 b(-)g(150.0)f(61.4)h
+(--ppc)46 b(default=2)390 3367 y(N4/7)142 b(1)h(1)95
+b(-)g(100.8)f(41.3)h(--ppc)46 b(default=1)390 3587 y(#)h
+(OMI-Aura_L2-OMIAuraSO2_201)o(2m12)o(22-)o(o448)o(88_v)o(01-)o(00-2)o
+(014m)o(010)o(7t11)o(4720)o(.h5)390 3696 y(Type)g(LLC)g(PPC)f(Pck)95
+b(Size)142 b(\045)191 b(Flags)46 b(and)h(Notes)485 3806
+y(H5)143 b(5)g(-)95 b(-)143 b(29.5)47 b(100.0)94 b(Original)45
+b(is)j(compressed)485 3915 y(H5)95 b(B1)143 b(-)95 b(-)143
+b(29.3)94 b(99.6)h(bzip2)46 b(-1)485 4025 y(N4)143 b(5)g(-)95
+b(-)143 b(29.5)47 b(100.0)485 4134 y(N4)95 b(B1)143 b(-)95
+b(-)143 b(29.3)94 b(99.6)h(bzip2)46 b(-1)485 4244 y(N4)95
+b(B9)143 b(-)95 b(-)143 b(29.3)94 b(99.4)h(bzip2)46 b(-9)485
+4354 y(N4)143 b(-)g(-)95 b(-)143 b(50.7)47 b(172.3)94
+b(-L)47 b(0)485 4463 y(N4)143 b(1)g(-)95 b(-)143 b(29.8)47
+b(101.3)94 b(-L)47 b(1)485 4573 y(N4)143 b(9)g(-)95 b(-)143
+b(29.4)94 b(99.8)h(-L)47 b(9)485 4682 y(N4)143 b(-)g(-)95
+b(Y)143 b(27.7)94 b(94.0)h(ncpdq)46 b(-L)h(0)485 4792
+y(N4)143 b(1)g(-)95 b(Y)143 b(12.9)94 b(43.9)h(ncpdq)46
+b(-L)h(1)485 4902 y(N4)143 b(1)g(7)95 b(-)143 b(29.7)47
+b(100.7)94 b(--ppc)46 b(default=7)485 5011 y(N4)143 b(1)g(6)95
+b(-)143 b(29.7)47 b(100.8)94 b(--ppc)46 b(default=6)485
+5121 y(N4)143 b(1)g(5)95 b(-)143 b(27.3)94 b(92.8)h(--ppc)46
+b(default=5)485 5230 y(N4)143 b(1)g(4)95 b(-)143 b(23.8)94
+b(80.7)h(--ppc)46 b(default=4)485 5340 y(N4)143 b(1)g(3)95
+b(-)143 b(20.3)94 b(69.0)h(--ppc)46 b(default=3)p eop
+end
+%%Page: 88 94
+TeXDict begin 88 93 bop 150 -116 a FE(88)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)485 299 y Fz(N4)143 b(1)g(2)95
+b(-)143 b(15.1)94 b(51.2)h(--ppc)46 b(default=2)485 408
+y(N4)143 b(1)g(1)95 b(-)191 b(9.9)94 b(33.6)h(--ppc)46
+b(default=1)275 575 y FE(A)30 b(selectiv)m(e,)j(p)s(er-v)-5
+b(ariable)31 b(approac)m(h)f(to)h FD(PPC)e FE(yields)i(the)f(b)s(est)g
+(balance)h(of)g(precision)f(and)g(com-)150 685 y(pression)42
+b(y)m(et)i(requires)e(the)h(dataset)h(pro)s(ducer)d(to)i(understand)e
+(the)i(in)m(trinsic)g(precision)g(of)g(eac)m(h)150 794
+y(v)-5 b(ariable.)46 b(Suc)m(h)32 b(a)g(sp)s(eci\014cation)h(for)e(a)i
+FD(GCM)f FE(dataset)h(migh)m(t)g(lo)s(ok)f(lik)m(e)h(this)f(\(using)g
+(names)g(for)g(the)150 904 y FD(NCAR)f(CAM)g FE(mo)s(del\):)390
+1070 y Fz(#)47 b(Be)h(conservative)c(on)j(non-explicit)e(quantities,)f
+(so)k(default=5)390 1180 y(#)f(Some)g(quantities)e(deserve)h(four)h
+(significant)d(digits)390 1289 y(#)j(Many)g(quantities,)e(such)h(as)i
+(aerosol)d(optical)h(depths)g(and)h(burdens,)f(are)390
+1399 y(#)h(highly)g(uncertain)e(and)i(only)f(useful)g(to)i(three)e
+(significant)f(digits.)390 1509 y(ncks)i(-7)g(-O)g(\\)390
+1618 y(--ppc)f(default=5)g(\\)390 1728 y(--ppc)g(AN.?,AQ.?=4)f(\\)390
+1837 y(--ppc)h(AER.?,AOD.?,ARE.?,AW.?,BUR)o(DEN)o(.?=3)41
+b(\\)390 1947 y(ncar_cam.nc)k(~/foo.nc)150 2201 y FC(3.28)68
+b(De\015ation)150 2311 y Fl(\013)p 200 2311 3554 4 v
+3553 w(\010)p 150 2801 4 442 v 178 2447 a FE(Av)-5 b(ailabilit)m(y:)43
+b Fz(ncap2)p FE(,)30 b Fz(ncbo)p FE(,)f Fz(nces)p FE(,)h
+Fz(ncecat)p FE(,)f Fz(ncflint)p FE(,)f Fz(ncks)p FE(,)i
+Fz(ncpdq)p FE(,)f Fz(ncra)p FE(,)g Fz(ncrcat)p FE(,)g
+Fz(ncwa)178 2557 y FE(Short)h(options:)41 b(`)p Fz(-L)p
+FE(')178 2667 y(Long)31 b(options:)41 b(`)p Fz(--dfl_lvl)p
+FE(',)28 b(`)p Fz(--deflate)p FE(')p 3803 2801 V 150
+2853 a Fl(\012)p 200 2853 3554 4 v 3553 w(\011)275 3030
+y FE(All)c FD(NCO)f FE(op)s(erators)h(that)h(de\014ne)e(v)-5
+b(ariables)24 b(supp)s(ort)e(the)i(netCDF4)h(feature)f(of)g(storing)g
+(v)-5 b(ariables)150 3140 y(compressed)40 b(with)g(the)h(lossless)g
+FD(DEFLA)-7 b(TE)40 b FE(compression)g(algorithm.)72
+b FD(DEFLA)-7 b(TE)40 b FE(com)m(bines)h(the)150 3249
+y(Lemp)s(el-Ziv)26 b(enco)s(ding)h(with)f(Hu\013man)g(co)s(ding.)40
+b(The)26 b(sp)s(eci\014c)g(v)m(ersion)h(used)f(b)m(y)g(netCDF4/)p
+FD(HDF5)j FE(is)150 3359 y(that)d(implemen)m(ted)f(in)g(the)g
+Fz(zlib)f FE(library)h(used)f(b)m(y)h Fz(gzip)p FE(.)38
+b(Activ)-5 b(ate)27 b(de\015ation)e(with)g(the)g Fz(-L)30
+b Fo(dfl_lvl)150 3468 y FE(short)g(option)g(\(or)g(with)g(the)g(same)g
+(argumen)m(t)g(to)h(the)f(`)p Fz(--dfl_lvl)p FE(')e(or)i(`)p
+Fz(--deflate)p FE(')e(long)i(options\).)150 3578 y(Sp)s(ecify)37
+b(the)h(de\015ation)g(lev)m(el)h FA(d\015)p 1340 3578
+28 4 v 39 w(lvl)j FE(on)37 b(a)h(scale)h(from)f(no)f(de\015ation)h(\()p
+FA(d\015)p 2834 3578 V 40 w(lvl)g(=)f(0)7 b FE(\))39
+b(to)f(maxim)m(um)150 3688 y(de\015ation)f(\()p FA(d\015)p
+673 3688 V 40 w(lvl)g(=)f(9)7 b FE(\).)61 b(Under)36
+b(the)h(ho)s(o)s(d,)h(this)f(selects)h(the)f(compression)g(blo)s(c)m
+(ksize.)61 b(Minimal)150 3797 y(de\015ation)37 b(\()p
+FA(d\015)p 673 3797 V 39 w(lvl)g(=)f(1)7 b FE(\))37 b(ac)m(hiev)m(es)h
+(considerable)f(storage)h(compression)e(with)g(little)i(time)f(p)s
+(enalt)m(y)-8 b(.)150 3907 y(Higher)27 b(de\015ation)g(lev)m(els)i
+(require)d(more)h(time)h(for)e(compression.)40 b(File)28
+b(sizes)f(resulting)g(from)g(minimal)150 4016 y(\()p
+FA(d\015)p 293 4016 V 39 w(lvl)k(=)f(1)7 b FE(\))32 b(and)e(maximal)h
+(\()p FA(d\015)p 1366 4016 V 39 w(lvl)g(=)f(9)7 b FE(\))32
+b(de\015ation)e(lev)m(els)i(t)m(ypically)h(di\013er)d(b)m(y)g(less)h
+(than)f(10\045)h(in)150 4126 y(size.)275 4292 y(T)-8
+b(o)30 b(compress)h(an)f(en)m(tire)h(\014le)g(using)e(de\015ation,)i
+(use)390 4459 y Fz(ncks)47 b(-4)g(-L)g(0)g(in.nc)g(out.nc)f(#)h(No)h
+(deflation)d(\(fast,)h(no)h(time)g(penalty\))390 4569
+y(ncks)g(-4)g(-L)g(1)g(in.nc)g(out.nc)f(#)h(Minimal)f(deflation)f
+(\(little)h(time)h(penalty\))390 4678 y(ncks)g(-4)g(-L)g(9)g(in.nc)g
+(out.nc)f(#)h(Maximal)f(deflation)f(\(much)i(slower\))275
+4845 y FE(Unscien)m(ti\014c)29 b(testing)g(sho)m(ws)f(that)h
+(de\015ation)f(compresses)h(t)m(ypical)g(climate)h(datasets)g(b)m(y)e
+(30-60\045.)150 4954 y(P)m(ac)m(king,)51 b(a)45 b(lossy)h(compression)f
+(tec)m(hnique)h(a)m(v)-5 b(ailable)47 b(for)e(all)h(netCDF)g(\014les)f
+(\(see)h(Section)g(3.32)150 5064 y([P)m(ac)m(k)m(ed)33
+b(data],)f(page)f(92\),)h(can)f(easily)h(compress)e(\014les)h(b)m(y)f
+(50\045.)42 b(P)m(ac)m(k)m(ed)33 b(data)e(ma)m(y)h(b)s(e)e(de\015ated)g
+(to)150 5173 y(squeeze)h(datasets)h(b)m(y)e(ab)s(out)g(80\045:)390
+5340 y Fz(ncks)94 b(-4)48 b(-L)f(1)g(in.nc)g(out.nc)f(#)h(Minimal)f
+(deflation)f(\(~30-60\045)h(compression\))p eop end
+%%Page: 89 95
+TeXDict begin 89 94 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(89)390 299 y Fz(ncks)94
+b(-4)48 b(-L)f(9)g(in.nc)g(out.nc)f(#)h(Maximal)f(deflation)f
+(\(~31-63\045)h(compression\))390 408 y(ncpdq)428 b(in.nc)47
+b(out.nc)f(#)h(Standard)f(packing)93 b(\(~50\045)47 b(compression\))390
+518 y(ncpdq)f(-4)i(-L)f(9)g(in.nc)g(out.nc)f(#)h(Deflated)f(packing)93
+b(\(~80\045)47 b(compression\))275 682 y(ncks)23 b FE(prin)m(ts)h
+(de\015ation)i(parameters,)g(if)f(an)m(y)-8 b(,)27 b(to)e(screen)g
+(\(see)h(Section)g(4.7)g([nc)m(ks)f(netCDF)g(Kitc)m(hen)150
+791 y(Sink],)30 b(page)h(188\).)150 1036 y FC(3.29)68
+b(MD5)45 b(digests)150 1170 y Fl(\013)p 200 1170 3554
+4 v 3553 w(\010)p 150 1660 4 442 v 178 1306 a FE(Av)-5
+b(ailabilit)m(y:)43 b Fz(ncecat)p FE(,)29 b Fz(ncks)p
+FE(,)h Fz(ncrcat)178 1415 y FE(Short)g(options:)178 1525
+y(Long)h(options:)41 b(`)p Fz(--md5_dgs)p FE(',)28 b(`)p
+Fz(--md5_digest)p FE(',)g(`)p Fz(--md5_wrt_att)p FE(',)g(`)p
+Fz(--md5_write_attribute)p FE(')p 3803 1660 V 150 1711
+a Fl(\012)p 200 1711 3554 4 v 3553 w(\011)275 1890 y
+FE(As)c(of)h FD(NCO)g FE(v)m(ersion)g(4.1.0)h(\(April,)g(2012\),)j
+FD(NCO)24 b FE(supp)s(orts)f(data)i(in)m(tegrit)m(y)i(v)m
+(eri\014cation)g(using)d(the)150 2000 y FD(MD5)32 b FE(digest)g
+(algorithm.)46 b(This)31 b(supp)s(ort)f(is)i(curren)m(tly)g(implemen)m
+(ted)g(in)f Fz(ncks)g FE(and)g(in)g(the)h(m)m(ulti\014le)150
+2110 y(concan)m(tenators)38 b Fz(ncecat)c FE(and)i Fz(ncrcat)p
+FE(.)55 b(Activ)-5 b(ate)39 b(it)d(with)g(the)g(`)p Fz(--md5_dgs)p
+FE(')e(or)i(`)p Fz(--md5_digest)p FE(')150 2219 y(long)43
+b(options.)78 b(As)43 b(of)g FD(NCO)f FE(v)m(ersion)h(4.3.3)i(\(July)-8
+b(,)46 b(2013\),)i FD(NCO)43 b FE(will)g(write)g(the)g
+FD(MD5)f FE(digest)i(of)150 2329 y(eac)m(h)34 b(v)-5
+b(ariable)34 b(as)f(an)f Fz(NC_CHAR)f FE(attribute)i(named)g
+Fz(MD5)p FE(.)47 b(This)32 b(supp)s(ort)f(is)i(curren)m(tly)f(implemen)
+m(ted)150 2438 y(in)45 b Fz(ncks)f FE(and)g(in)h(the)g(m)m(ulti\014le)h
+(concan)m(tenators)h Fz(ncecat)c FE(and)h Fz(ncrcat)p
+FE(.)83 b(Activ)-5 b(ate)47 b(it)f(with)f(the)150 2548
+y(`)p Fz(--md5_wrt_att)p FE(')27 b(or)k(`)p Fz(--md5_write_attribute)p
+FE(')25 b(long)31 b(options.)275 2712 y(The)g(b)s(eha)m(vior)i(and)e(v)
+m(erb)s(osit)m(y)i(of)g(the)f FD(MD5)g FE(digest)h(is)g(op)s
+(erator-dep)s(enden)m(t.)46 b(When)32 b(activ)-5 b(ating)150
+2821 y FD(MD5)30 b FE(digests)i(with)e Fz(ncks)f FE(it)i(is)g(assumed)f
+(that)h(the)f(user)g(simply)g(wishes)g(to)h(see)h(the)e(digest)h(of)g
+(ev)m(ery)150 2931 y(v)-5 b(ariable)29 b(and)e(this)h(is)h(done)f(when)
+f(the)h(debugging)g(lev)m(el)i(exceeds)f(one.)40 b(This)28
+b(incurs)f(only)h(the)g(minor)150 3040 y(o)m(v)m(erhead)41
+b(of)f(p)s(erforming)f(the)h(hash)f(algorithm)i(for)f(eac)m(h)h(v)-5
+b(ariable)40 b(read.)70 b FD(MD5)40 b FE(digests)g(ma)m(y)h(b)s(e)150
+3150 y(activ)-5 b(ated)39 b(in)d(b)s(oth)g(the)h(one-)h(and)e(t)m(w)m
+(o-\014lename)j(argumen)m(t)e(forms)f(of)h Fz(ncks)p
+FE(,)g(whic)m(h)g(are)g(used)f(for)150 3259 y(prin)m(ting)j(and)f(for)h
+(sub-setting,)j(resp)s(ectiv)m(ely)-8 b(.)68 b(The)39
+b FD(MD5)g FE(digests)h(are)f(sho)m(wn)f(as)i(a)f(32-c)m(haracter)150
+3369 y(hexadecimal)32 b(string)e(in)g(whic)m(h)g(eac)m(h)i(t)m(w)m(o)f
+(c)m(haracters)h(represen)m(t)f(one)f(b)m(yte)h(of)g(the)f(16-b)m(yte)j
+(digest:)390 3533 y Fz(>)47 b(ncks)g(-O)g(-D)g(2)h(-C)f(--md5)f(-v)i
+(md5_a,md5_abc)c(~/nco/data/in.nc)390 3642 y(...)390
+3752 y(ncks:)i(INFO)h(MD5\(md5_a\))e(=)i(0cc175b9c0f1b6a831c399e269)o
+(7726)o(61)390 3861 y(md5_a)f(=)i('a')390 3971 y(ncks:)e(INFO)h
+(MD5\(md5_abc\))d(=)k(900150983cd24fb0d6963f7d)o(28e1)o(7f7)o(2)390
+4081 y(lev[0]=100)d(md5_abc[0--2]='abc')390 4190 y(>)i(ncks)g(-O)g(-D)g
+(2)h(-C)f(-d)g(lev,0)g(--md5)f(-v)h(md5_a,md5_abc)d(~/nco/data/in.nc)
+390 4300 y(...)390 4409 y(ncks:)i(INFO)h(MD5\(md5_a\))e(=)i
+(0cc175b9c0f1b6a831c399e269)o(7726)o(61)390 4519 y(md5_a)f(=)i('a')390
+4628 y(ncks:)e(INFO)h(MD5\(md5_abc\))d(=)k(0cc175b9c0f1b6a831c399e2)o
+(6977)o(266)o(1)390 4738 y(lev[0]=100)d(md5_abc[0--0]='a')275
+4902 y FE(In)37 b(fact)j(these)f(examples)g(demonstrate)g(the)g(v)-5
 b(alidit)m(y)40 b(of)f(the)g(hash)f(algorithm)h(since)g(the)g
-FC(MD5)150 5230 y FD(hashes)f(of)h(the)f(strings)g(\\a")i(and)e(\\ab)s
+FD(MD5)150 5011 y FE(hashes)f(of)h(the)f(strings)g(\\a")i(and)e(\\ab)s
 (c")h(are)g(widely)f(kno)m(wn.)65 b(The)38 b(second)g(example)h(sho)m
-(ws)f(that)150 5340 y(the)33 b(h)m(yp)s(erslab)f(of)h(v)-5
-b(ariable)34 b Fy(md5_abc)d FD(\(=)i(\\ab)s(c"\))h(consisting)g(of)f
-(only)h(its)f(\014rst)f(letter)j(\(=)e(\\a"\))h(has)p
-eop end
-%%Page: 80 86
-TeXDict begin 80 85 bop 150 -116 a FD(80)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(the)35 b(same)g(hash)e(as)i(the)g
-(v)-5 b(ariable)35 b Fy(md5_a)e FD(\(\\a"\).)55 b(This)34
-b(illustrates)h(that)g FC(MD5)g FD(digests)g(act)g(only)g(on)150
-408 y(v)-5 b(ariable)31 b(data,)g(not)g(on)f(metadata.)275
-572 y(When)21 b(activ)-5 b(ating)24 b FC(MD5)d FD(digests)i(with)e
-Fy(ncecat)f FD(or)i Fy(ncrcat)d FD(it)k(is)e(assumed)g(that)h(the)g
-(user)f(wishes)g(to)150 681 y(v)m(erify)j(that)g(ev)m(ery)g(v)-5
-b(ariable)24 b(written)g(to)g(disk)f(has)g(the)h(same)f
-FC(MD5)h FD(digest)g(as)g(when)e(it)i(is)f(subsequen)m(tly)150
-791 y(read)g(from)f(disk.)38 b(This)22 b(incurs)h(the)g(ma)5
-b(jor)23 b(additional)h(o)m(v)m(erhead)g(of)f(reading)g(in)g(eac)m(h)h
-(v)-5 b(ariable)24 b(after)f(it)150 901 y(is)i(written)g(and)g(p)s
-(erforming)e(the)j(hash)e(algorithm)i(again)g(on)f(that)h(to)g(compare)
-f(to)h(the)f(original)h(hash.)150 1010 y(Moreo)m(v)m(er,)33
-b(it)d(is)g(assumed)g(that)h(suc)m(h)e(op)s(erations)i(are)f(generally)
-i(done)e(\\pro)s(duction)f(mo)s(de")h(where)150 1120
-y(the)39 b(user)f(is)g(not)h(in)m(terested)h(in)e(actually)i(examining)
-f(the)g(digests)g(herself.)65 b(The)38 b(digests)h(pro)s(ceed)150
-1229 y(silen)m(tly)32 b(unless)d(the)i(debugging)f(lev)m(el)i(exceeds)g
-(three:)390 1393 y Fy(>)47 b(ncecat)g(-O)g(-D)g(4)g(--md5)g(-p)g
-(~/nco/data)e(in.nc)h(in.nc)h(~/foo.nc)e(|)j(grep)e(MD5)390
-1502 y(...)390 1612 y(ncecat:)g(INFO)g(MD5\(wnd_spd\))f(=)i
-(bec190dd944f2ce2794a7a4abf)o(224)o(b28)390 1721 y(ncecat:)f(INFO)g
-(MD5)h(digests)f(of)h(RAM)g(and)g(disk)g(contents)e(for)i(wnd_spd)f
-(agree)390 1831 y(>)h(ncrcat)g(-O)g(-D)g(4)g(--md5)g(-p)g(~/nco/data)e
-(in.nc)h(in.nc)h(~/foo.nc)e(|)j(grep)e(MD5)390 1941 y(...)390
-2050 y(ncrcat:)g(INFO)g(MD5\(wnd_spd\))f(=)i
-(74699bb0a72b7f16456badb2c9)o(95f)o(1a1)390 2160 y(ncrcat:)f(INFO)g
+(ws)f(that)150 5121 y(the)33 b(h)m(yp)s(erslab)f(of)h(v)-5
+b(ariable)34 b Fz(md5_abc)d FE(\(=)i(\\ab)s(c"\))h(consisting)g(of)f
+(only)h(its)f(\014rst)f(letter)j(\(=)e(\\a"\))h(has)150
+5230 y(the)h(same)g(hash)e(as)i(the)g(v)-5 b(ariable)35
+b Fz(md5_a)e FE(\(\\a"\).)55 b(This)34 b(illustrates)h(that)g
+FD(MD5)g FE(digests)g(act)g(only)g(on)150 5340 y(v)-5
+b(ariable)31 b(data,)g(not)g(on)f(metadata.)p eop end
+%%Page: 90 96
+TeXDict begin 90 95 bop 150 -116 a FE(90)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(When)21 b(activ)-5
+b(ating)24 b FD(MD5)d FE(digests)i(with)e Fz(ncecat)f
+FE(or)i Fz(ncrcat)d FE(it)k(is)e(assumed)g(that)h(the)g(user)f(wishes)g
+(to)150 408 y(v)m(erify)j(that)g(ev)m(ery)g(v)-5 b(ariable)24
+b(written)g(to)g(disk)f(has)g(the)h(same)f FD(MD5)h FE(digest)g(as)g
+(when)e(it)i(is)f(subsequen)m(tly)150 518 y(read)g(from)f(disk.)38
+b(This)22 b(incurs)h(the)g(ma)5 b(jor)23 b(additional)h(o)m(v)m(erhead)
+g(of)f(reading)g(in)g(eac)m(h)h(v)-5 b(ariable)24 b(after)f(it)150
+628 y(is)i(written)g(and)g(p)s(erforming)e(the)j(hash)e(algorithm)i
+(again)g(on)f(that)h(to)g(compare)f(to)h(the)f(original)h(hash.)150
+737 y(Moreo)m(v)m(er,)33 b(it)d(is)g(assumed)g(that)h(suc)m(h)e(op)s
+(erations)i(are)f(generally)i(done)e(\\pro)s(duction)f(mo)s(de")h
+(where)150 847 y(the)39 b(user)f(is)g(not)h(in)m(terested)h(in)e
+(actually)i(examining)f(the)g(digests)g(herself.)65 b(The)38
+b(digests)h(pro)s(ceed)150 956 y(silen)m(tly)32 b(unless)d(the)i
+(debugging)f(lev)m(el)i(exceeds)g(three:)390 1126 y Fz(>)47
+b(ncecat)g(-O)g(-D)g(4)g(--md5)g(-p)g(~/nco/data)e(in.nc)h(in.nc)h
+(~/foo.nc)e(|)j(grep)e(MD5)390 1235 y(...)390 1345 y(ncecat:)g(INFO)g
+(MD5\(wnd_spd\))f(=)i(bec190dd944f2ce2794a7a4abf)o(224)o(b28)390
+1455 y(ncecat:)f(INFO)g(MD5)h(digests)f(of)h(RAM)g(and)g(disk)g
+(contents)e(for)i(wnd_spd)f(agree)390 1564 y(>)h(ncrcat)g(-O)g(-D)g(4)g
+(--md5)g(-p)g(~/nco/data)e(in.nc)h(in.nc)h(~/foo.nc)e(|)j(grep)e(MD5)
+390 1674 y(...)390 1783 y(ncrcat:)g(INFO)g(MD5\(wnd_spd\))f(=)i
+(74699bb0a72b7f16456badb2c9)o(95f)o(1a1)390 1893 y(ncrcat:)f(INFO)g
 (MD5)h(digests)f(of)h(RAM)g(and)g(disk)g(contents)e(for)i(wnd_spd)f
-(agree)275 2323 y FD(Regardless)32 b(of)g(the)g(debugging)g(lev)m(el,)j
+(agree)275 2062 y FE(Regardless)32 b(of)g(the)g(debugging)g(lev)m(el,)j
 (an)d(error)f(is)h(returned)f(when)g(the)h(digests)h(of)f(the)g(v)-5
-b(ariable)150 2433 y(read)30 b(from)g(the)h(source)f(\014le)h(and)f
-(from)f(the)i(output)f(\014le)g(disagree.)275 2596 y(These)c(rules)h
-(are)g(ev)m(olving)i(and)d(as)h FC(NCO)g FD(pa)m(ys)g(more)h(atten)m
+b(ariable)150 2172 y(read)30 b(from)g(the)h(source)f(\014le)h(and)f
+(from)f(the)i(output)f(\014le)g(disagree.)275 2341 y(These)c(rules)h
+(are)g(ev)m(olving)i(and)d(as)h FD(NCO)g FE(pa)m(ys)g(more)h(atten)m
 (tion)h(to)e(data)h(in)m(tegrit)m(y)-8 b(.)42 b(W)-8
-b(e)28 b(w)m(elcome)150 2705 y(feedbac)m(k)j(and)f(suggestions)h(from)f
-(users.)150 2950 y FB(3.29)68 b(Bu\013er)45 b(sizes)150
-3060 y Fk(\013)p 200 3060 3554 4 v 3553 w(\010)p 150
-3550 4 442 v 178 3196 a FD(Av)-5 b(ailabilit)m(y:)43
-b(All)31 b(op)s(erators)178 3306 y(Short)f(options:)178
-3415 y(Long)h(options:)41 b(`)p Fy(--bfr_sz_hnt)p FD(',)28
-b(`)p Fy(--buffer_size_hint)p FD(')p 3803 3550 V 150
-3601 a Fk(\012)p 200 3601 3554 4 v 3553 w(\011)275 3781
-y FD(As)e(of)h FC(NCO)f FD(v)m(ersion)h(4.2.0)i(\(Ma)m(y)-8
-b(,)29 b(2012\),)h FC(NCO)c FD(allo)m(ws)i(the)f(user)f(to)i(request)e
-(sp)s(eci\014c)h(bu\013er)e(sizes)150 3890 y(to)k(allo)s(cate)i(for)d
+b(e)28 b(w)m(elcome)150 2451 y(feedbac)m(k)j(and)f(suggestions)h(from)f
+(users.)150 2714 y FC(3.30)68 b(Bu\013er)45 b(sizes)150
+2824 y Fl(\013)p 200 2824 3554 4 v 3553 w(\010)p 150
+3314 4 442 v 178 2960 a FE(Av)-5 b(ailabilit)m(y:)43
+b(All)31 b(op)s(erators)178 3070 y(Short)f(options:)178
+3180 y(Long)h(options:)41 b(`)p Fz(--bfr_sz_hnt)p FE(',)28
+b(`)p Fz(--buffer_size_hint)p FE(')p 3803 3314 V 150
+3365 a Fl(\012)p 200 3365 3554 4 v 3553 w(\011)275 3551
+y FE(As)e(of)h FD(NCO)f FE(v)m(ersion)h(4.2.0)i(\(Ma)m(y)-8
+b(,)29 b(2012\),)h FD(NCO)c FE(allo)m(ws)i(the)f(user)f(to)i(request)e
+(sp)s(eci\014c)h(bu\013er)e(sizes)150 3660 y(to)k(allo)s(cate)i(for)d
 (reading)g(and)g(writing)g(\014les.)40 b(This)27 b(bu\013er)h(size)h
-(determines)f(ho)m(w)g(man)m(y)g(system)h(calls)150 4000
+(determines)f(ho)m(w)g(man)m(y)g(system)h(calls)150 3770
 y(the)23 b(netCDF)h(la)m(y)m(er)g(m)m(ust)f(in)m(v)m(ok)m(e)i(to)f
 (read)f(and)f(write)h(\014les.)39 b(By)23 b(default,)i(netCDF)e(uses)g
-(the)g(preferred)150 4109 y(I/O)i(blo)s(c)m(k)g(size)g(returned)f(as)h
-(the)g(`)p Fy(st_blksize)p FD(')d(mem)m(b)s(er)i(of)h(the)g(`)p
-Fy(stat)p FD(')f(structure)h(returned)e(b)m(y)i(the)150
-4219 y Fy(stat\(\))j FD(system)i(call)902 4186 y Ft(21)974
-4219 y FD(.)40 b(Otherwise,)30 b(netCDF)g(uses)g(t)m(wice)h(the)f
+(the)g(preferred)150 3880 y(I/O)i(blo)s(c)m(k)g(size)g(returned)f(as)h
+(the)g(`)p Fz(st_blksize)p FE(')d(mem)m(b)s(er)i(of)h(the)g(`)p
+Fz(stat)p FE(')f(structure)h(returned)e(b)m(y)i(the)150
+3989 y Fz(stat\(\))j FE(system)i(call)902 3956 y Fu(24)974
+3989 y FE(.)40 b(Otherwise,)30 b(netCDF)g(uses)g(t)m(wice)h(the)f
 (system)g(pagesize.)42 b(Larger)30 b(sizes)h(can)150
-4329 y(increase)g(access)g(sp)s(eed)d(b)m(y)i(reducing)f(the)h(n)m(um)m
+4099 y(increase)g(access)g(sp)s(eed)d(b)m(y)i(reducing)f(the)h(n)m(um)m
 (b)s(er)e(of)i(system)g(calls)h(netCDF)f(mak)m(es)h(to)f(read/write)150
-4438 y(data)j(from/to)h(disk.)47 b(Because)34 b(netCDF)g(cannot)f
+4208 y(data)j(from/to)h(disk.)47 b(Because)34 b(netCDF)g(cannot)f
 (guaran)m(tee)h(the)f(bu\013er)f(size)h(request)g(will)g(b)s(e)f(met,)
-150 4548 y(the)f(actual)g(bu\013er)f(size)h(gran)m(ted)g(b)m(y)f(the)h
+150 4318 y(the)f(actual)g(bu\013er)f(size)h(gran)m(ted)g(b)m(y)f(the)h
 (system)f(is)h(prin)m(ted)f(as)g(an)g(INF)m(O)h(statemen)m(t.)390
-4711 y Fy(#)47 b(Request)f(2)i(MB)f(file)g(buffer)f(instead)f(of)j
-(default)d(8)j(kB)f(buffer)390 4821 y(>)g(ncks)g(-O)g(-D)g(3)h
+4487 y Fz(#)47 b(Request)f(2)i(MB)f(file)g(buffer)f(instead)f(of)j
+(default)d(8)j(kB)f(buffer)390 4597 y(>)g(ncks)g(-O)g(-D)g(3)h
 (--bfr_sz=2097152)43 b(~/nco/data/in.nc)h(~/foo.nc)390
-4930 y(...)390 5040 y(ncks:)i(INFO)h(nc__open\(\))e(will)i(request)e
-(file)i(buffer)f(size)h(=)g(2097152)f(bytes)p 150 5154
-1200 4 v 166 5221 a Ft(21)303 5253 y Fs(On)28 b(mo)r(dern)g(Lin)n(ux)f
+4707 y(...)390 4816 y(ncks:)i(INFO)h(nc__open\(\))e(will)i(request)e
+(file)i(buffer)f(size)h(=)g(2097152)f(bytes)390 4926
+y(ncks:)g(INFO)h(nc__open\(\))e(opened)h(file)h(with)f(buffer)g(size)h
+(=)h(2097152)d(bytes)390 5035 y(...)p 150 5154 1200 4
+v 166 5221 a Fu(24)303 5253 y Ft(On)28 b(mo)r(dern)g(Lin)n(ux)f
 (systems)i(the)f(blo)r(c)n(k)g(size)i(defaults)f(to)f(8192)g(B.)43
 b(The)28 b(GLADE)g(\014lesystem)h(at)f(NCAR)g(has)h(a)275
 5340 y(blo)r(c)n(k)c(size)i(of)f(512)h(kB.)p eop end
-%%Page: 81 87
-TeXDict begin 81 86 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(81)390 299 y Fy(ncks:)46
-b(INFO)h(nc__open\(\))e(opened)h(file)h(with)f(buffer)g(size)h(=)h
-(2097152)d(bytes)390 408 y(...)150 643 y FB(3.30)68 b(RAM)45
-b(disks)150 754 y Fk(\013)p 200 754 3554 4 v 3553 w(\010)p
-150 1243 4 442 v 178 890 a FD(Av)-5 b(ailabilit)m(y:)43
-b(All)31 b(op)s(erators)178 999 y(Short)f(options:)178
-1109 y(Long)h(options:)41 b(`)p Fy(--ram_all)p FD(',)28
-b(`)p Fy(--create_ram)p FD(',)g(`)p Fy(--open_ram)p FD(',)h(`)p
-Fy(--diskless_all)p FD(')p 3803 1243 V 150 1295 a Fk(\012)p
-200 1295 3554 4 v 3553 w(\011)275 1471 y FD(As)41 b(of)h
-FC(NCO)g FD(v)m(ersion)g(4.2.1)i(\(August,)h(2012\),)i
-FC(NCO)42 b FD(supp)s(orts)e(the)i(use)f(of)h(diskless)g(\014les,)j(ak)
--5 b(a)150 1580 y FC(RAM)45 b FD(disks,)k(for)44 b(\014le)i(access)g
+%%Page: 91 97
+TeXDict begin 91 96 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(91)150 299 y FC(3.31)68
+b(RAM)45 b(disks)150 409 y Fl(\013)p 200 409 3554 4 v
+3553 w(\010)p 150 899 4 442 v 178 545 a FE(Av)-5 b(ailabilit)m(y:)43
+b(All)31 b(op)s(erators)178 655 y(Short)f(options:)178
+765 y(Long)h(options:)41 b(`)p Fz(--ram_all)p FE(',)28
+b(`)p Fz(--create_ram)p FE(',)g(`)p Fz(--open_ram)p FE(',)h(`)p
+Fz(--diskless_all)p FE(')p 3803 899 V 150 951 a Fl(\012)p
+200 951 3554 4 v 3553 w(\011)275 1129 y FE(As)41 b(of)h
+FD(NCO)g FE(v)m(ersion)g(4.2.1)i(\(August,)h(2012\),)i
+FD(NCO)42 b FE(supp)s(orts)e(the)i(use)f(of)h(diskless)g(\014les,)j(ak)
+-5 b(a)150 1239 y FD(RAM)45 b FE(disks,)k(for)44 b(\014le)i(access)g
 (and)e(creation.)86 b(Tw)m(o)45 b(indep)s(enden)m(t)f(switc)m(hes,)50
-b(`)p Fy(--open_ram)p FD(')43 b(and)150 1690 y(`)p Fy(--create_ram)p
-FD(',)33 b(con)m(trol)i(this)f(feature.)53 b(Before)35
+b(`)p Fz(--open_ram)p FE(')43 b(and)150 1348 y(`)p Fz(--create_ram)p
+FE(',)33 b(con)m(trol)i(this)f(feature.)53 b(Before)35
 b(describing)f(the)g(sp)s(eci\014cs)g(of)h(these)f(switc)m(hes,)i(w)m
-(e)150 1800 y(describ)s(e)23 b(wh)m(y)h(man)m(y)g FC(NCO)g
-FD(op)s(erations)h(will)f(not)g(b)s(ene\014t)g(from)f(them.)39
-b(Essen)m(tially)-8 b(,)27 b(reading/writing)150 1909
-y(from/to)g FC(RAM)g FD(rather)f(than)f(disk)h(only)g(hastens)g(the)h
+(e)150 1458 y(describ)s(e)23 b(wh)m(y)h(man)m(y)g FD(NCO)g
+FE(op)s(erations)h(will)f(not)g(b)s(ene\014t)g(from)f(them.)39
+b(Essen)m(tially)-8 b(,)27 b(reading/writing)150 1568
+y(from/to)g FD(RAM)g FE(rather)f(than)f(disk)h(only)g(hastens)g(the)h
 (task)f(when)g(reads/writes)g(to)h(disk)f(are)g(a)m(v)m(oided.)150
-2019 y(Most)k FC(NCO)g FD(op)s(erations)g(are)f(simple)h(enough)f(that)
+1677 y(Most)k FD(NCO)g FE(op)s(erations)g(are)f(simple)h(enough)f(that)
 h(they)g(require)f(a)h(single)g(read-from/write-to)h(disk)150
-2128 y(for)j(ev)m(ery)h(blo)s(c)m(k)g(of)f(input/output.)52
+1787 y(for)j(ev)m(ery)h(blo)s(c)m(k)g(of)f(input/output.)52
 b(Diskless)35 b(access)g(do)s(es)f(not)h(c)m(hange)g(this,)g(but)f(it)h
-(do)s(es)e(add)h(an)150 2238 y(extra)d(read-from/write-to)h(RAM.)e(Ho)m
-(w)m(ev)m(er)i(this)e(extra)h FC(RAM)g FD(write/read)f(do)s(es)g(a)m(v)
-m(oid)i(con)m(ten)m(tion)150 2348 y(for)d(limited)g(system)g(resources)
+(do)s(es)e(add)h(an)150 1896 y(extra)d(read-from/write-to)h(RAM.)e(Ho)m
+(w)m(ev)m(er)i(this)e(extra)h FD(RAM)g FE(write/read)f(do)s(es)g(a)m(v)
+m(oid)i(con)m(ten)m(tion)150 2006 y(for)d(limited)g(system)g(resources)
 g(lik)m(e)h(disk-head)f(access.)42 b(Op)s(erators)28
-b(whic)m(h)h(ma)m(y)g(b)s(ene\014t)f(from)h FC(RAM)150
-2457 y FD(disks)23 b(include)f Fy(ncwa)p FD(,)i(whic)m(h)f(ma)m(y)h
+b(whic)m(h)h(ma)m(y)g(b)s(ene\014t)f(from)h FD(RAM)150
+2116 y FE(disks)23 b(include)f Fz(ncwa)p FE(,)i(whic)m(h)f(ma)m(y)h
 (need)f(to)h(read)f(w)m(eigh)m(ting)i(v)-5 b(ariables)23
-b(m)m(ultiple)h(times,)i(the)d(m)m(ulti-\014le)150 2567
-y(op)s(erators)j Fy(ncra)p FD(,)h Fy(ncrcat)p FD(,)e(and)h
-Fy(ncecat)p FD(,)f(whic)m(h)h(ma)m(y)h(try)f(to)h(write)g(output)e(at)i
-(least)h(once)f(p)s(er)e(input)150 2676 y(\014le,)31
-b(and)e Fy(ncap2)g FD(scripts)i(whic)m(h)f(ma)m(y)h(b)s(e)e
-(arbitrarily)i(long)g(and)f(con)m(v)m(oluted.)275 2836
-y(The)g(`)p Fy(--open_ram)p FD(')e(switc)m(h)j(causes)g(input)f
-(\014les)g(to)h(copied)g(to)h FC(RAM)f FD(when)e(op)s(ened.)41
-b(All)31 b(further)150 2946 y(metadata)26 b(and)f(data)g(access)h(o)s
-(ccurs)e(in)h FC(RAM)g FD(and)f(th)m(us)g(a)m(v)m(oids)j(access)f(time)
-f(dela)m(ys)h(caused)e(b)m(y)h(disk-)150 3056 y(head)34
+b(m)m(ultiple)h(times,)i(the)d(m)m(ulti-\014le)150 2225
+y(op)s(erators)j Fz(ncra)p FE(,)h Fz(ncrcat)p FE(,)e(and)h
+Fz(ncecat)p FE(,)f(whic)m(h)h(ma)m(y)h(try)f(to)h(write)g(output)e(at)i
+(least)h(once)f(p)s(er)e(input)150 2335 y(\014le,)31
+b(and)e Fz(ncap2)g FE(scripts)i(whic)m(h)f(ma)m(y)h(b)s(e)e
+(arbitrarily)i(long)g(and)f(con)m(v)m(oluted.)275 2497
+y(The)g(`)p Fz(--open_ram)p FE(')e(switc)m(h)j(causes)g(input)f
+(\014les)g(to)h(copied)g(to)h FD(RAM)f FE(when)e(op)s(ened.)41
+b(All)31 b(further)150 2607 y(metadata)26 b(and)f(data)g(access)h(o)s
+(ccurs)e(in)h FD(RAM)g FE(and)f(th)m(us)g(a)m(v)m(oids)j(access)f(time)
+f(dela)m(ys)h(caused)e(b)m(y)h(disk-)150 2717 y(head)34
 b(mo)m(v)m(emen)m(t.)53 b(Usually)35 b(input)e(data)h(is)g(read)g(at)h
 (most)f(once)h(so)f(it)h(is)f(unlik)m(ely)g(that)h(requesting)150
-3165 y(input)28 b(\014les)h(b)s(e)g(stored)g(in)g FC(RAM)g
-FD(will)g(sa)m(v)m(e)i(m)m(uc)m(h)e(time.)41 b(The)29
+2826 y(input)28 b(\014les)h(b)s(e)g(stored)g(in)g FD(RAM)g
+FE(will)g(sa)m(v)m(e)i(m)m(uc)m(h)e(time.)41 b(The)29
 b(lik)m(eliest)i(exceptions)f(are)g(\014les)f(that)h(are)150
-3275 y(accessed)i(n)m(umerous)d(times,)i(suc)m(h)f(as)h(those)g
-(analyzed)g(extensiv)m(ely)h(analyzed)f(b)m(y)g Fy(ncap2)p
-FD(.)275 3435 y(In)m(v)m(oking)24 b(`)p Fy(--open_ram)p
-FD(',)e(`)p Fy(--ram_all)p FD(',)h(or)g(`)p Fy(--diskless_all)p
-FD(')d(uses)j(m)m(uc)m(h)g(more)g(system)h(mem-)150 3545
+2936 y(accessed)i(n)m(umerous)d(times,)i(suc)m(h)f(as)h(those)g
+(analyzed)g(extensiv)m(ely)h(analyzed)f(b)m(y)g Fz(ncap2)p
+FE(.)275 3098 y(In)m(v)m(oking)24 b(`)p Fz(--open_ram)p
+FE(',)e(`)p Fz(--ram_all)p FE(',)h(or)g(`)p Fz(--diskless_all)p
+FE(')d(uses)j(m)m(uc)m(h)g(more)g(system)h(mem-)150 3208
 y(ory)-8 b(.)71 b(T)-8 b(o)41 b(cop)m(y)g(the)g(input)e(\014le)i(to)g
-FC(RAM)f FD(increases)h(the)g(sustained)f(memory)g(use)g(b)m(y)h
-(exactly)h(the)150 3654 y(on-disk)33 b(\014lesize)h(of)f(the)g(input)f
-(\014le,)i(i.e.,)h Fv(M)10 b(S)5 b FD(+)30 b(=)f Fv(F)13
-b(T)g FD(.)49 b(F)-8 b(or)33 b(large)i(input)d(\014les)h(this)g(can)g
-(b)s(e)f(a)i(h)m(uge)150 3764 y(memory)i(burden)f(that)i(starv)m(es)g
-(the)g(rest)f(of)h(the)g FC(NCO)f FD(analysis)h(of)f(su\016cien)m(t)h
-FC(RAM)p FD(.)60 b(T)-8 b(o)36 b(b)s(e)g(safe,)150 3873
-y(use)h(`)p Fy(--open_ram)p FD(',)h(`)p Fy(--ram_all)p
-FD(',)g(or)f(`)p Fy(--diskless_all)p FD(')d(only)k(on)g(\014les)f(that)
-i(are)f(m)m(uc)m(h)f(\(sa)m(y)i(at)150 3983 y(least)d(a)f(factor)h(of)f
+FD(RAM)f FE(increases)h(the)g(sustained)f(memory)g(use)g(b)m(y)h
+(exactly)h(the)150 3318 y(on-disk)33 b(\014lesize)h(of)f(the)g(input)f
+(\014le,)i(i.e.,)h Fw(M)10 b(S)5 b FE(+)30 b(=)f Fw(F)13
+b(T)g FE(.)49 b(F)-8 b(or)33 b(large)i(input)d(\014les)h(this)g(can)g
+(b)s(e)f(a)i(h)m(uge)150 3427 y(memory)i(burden)f(that)i(starv)m(es)g
+(the)g(rest)f(of)h(the)g FD(NCO)f FE(analysis)h(of)f(su\016cien)m(t)h
+FD(RAM)p FE(.)60 b(T)-8 b(o)36 b(b)s(e)g(safe,)150 3537
+y(use)h(`)p Fz(--open_ram)p FE(',)h(`)p Fz(--ram_all)p
+FE(',)g(or)f(`)p Fz(--diskless_all)p FE(')d(only)k(on)g(\014les)f(that)
+i(are)f(m)m(uc)m(h)f(\(sa)m(y)i(at)150 3646 y(least)d(a)f(factor)h(of)f
 (four\))f(smaller)h(than)f(y)m(our)h(a)m(v)-5 b(ailable)37
-b(system)e FC(RAM)p FD(.)54 b(See)35 b(Section)g(2.9)h([Memory)150
-4092 y(Requiremen)m(ts],)31 b(page)g(22)h(for)e(further)f(details.)275
-4253 y(The)20 b(`)p Fy(--create_ram)p FD(')e(switc)m(h)j(causes)g
+b(system)e FD(RAM)p FE(.)54 b(See)35 b(Section)g(2.9)h([Memory)150
+3756 y(Requiremen)m(ts],)31 b(page)g(22)h(for)e(further)f(details.)275
+3919 y(The)20 b(`)p Fz(--create_ram)p FE(')e(switc)m(h)j(causes)g
 (output)f(\014les)h(to)h(b)s(e)e(created)i(in)e(RAM,)h(rather)g(than)g
-(on)f(disk.)150 4362 y(These)27 b(\014les)g(are)g(copied)h(to)g(disk)e
+(on)f(disk.)150 4028 y(These)27 b(\014les)g(are)g(copied)h(to)g(disk)e
 (only)i(when)e(closed,)i(i.e.,)i(when)c(the)h(op)s(erator)g(completes.)
-41 b(Creating)150 4472 y(\014les)e(in)f FC(RAM)h FD(ma)m(y)g(sa)m(v)m
-(e)h(time,)i(esp)s(ecially)e(with)e Fy(ncap2)f FD(computations)j(that)f
-(are)g(iterativ)m(e,)k(e.g.,)150 4581 y(lo)s(ops,)34
+41 b(Creating)150 4138 y(\014les)e(in)f FD(RAM)h FE(ma)m(y)g(sa)m(v)m
+(e)h(time,)i(esp)s(ecially)e(with)e Fz(ncap2)f FE(computations)j(that)f
+(are)g(iterativ)m(e,)k(e.g.,)150 4247 y(lo)s(ops,)34
 b(and)e(for)g(m)m(ulti-\014le)i(op)s(erators)f(that)h(write)f(output)f
 (ev)m(ery)i(record)e(\(timestep\))j(or)d(\014le.)49 b(RAM)150
-4691 y(\014les)32 b(pro)m(vide)h(man)m(y)g(of)f(the)h(same)g(b)s
-(ene\014ts)e(as)i FC(RAM)g FD(v)-5 b(ariables)33 b(in)f(suc)m(h)h
-(cases)g(\(see)g(Section)h(4.1.12)150 4801 y([RAM)d(v)-5
-b(ariables],)32 b(page)f(121\).)275 4961 y(Tw)m(o)e(switc)m(hes,)h(`)p
-Fy(--ram_all)p FD(')e(and)g(`)p Fy(--diskless_all)p FD(',)f(are)i(con)m
-(v)m(enien)m(t)j(shortcuts)d(for)g(sp)s(ecify-)150 5070
-y(ing)i(b)s(oth)e(`)p Fy(--create_ram)p FD(')f(and)h(`)p
-Fy(--diskless_ram)p FD('.)38 b(Th)m(us)390 5230 y Fy(ncks)47
+4357 y(\014les)32 b(pro)m(vide)h(man)m(y)g(of)f(the)h(same)g(b)s
+(ene\014ts)e(as)i FD(RAM)g FE(v)-5 b(ariables)33 b(in)f(suc)m(h)h
+(cases)g(\(see)g(Section)h(4.1.12)150 4467 y([RAM)d(v)-5
+b(ariables],)32 b(page)f(134\).)275 4629 y(Tw)m(o)e(switc)m(hes,)h(`)p
+Fz(--ram_all)p FE(')e(and)g(`)p Fz(--diskless_all)p FE(',)f(are)i(con)m
+(v)m(enien)m(t)j(shortcuts)d(for)g(sp)s(ecify-)150 4739
+y(ing)i(b)s(oth)e(`)p Fz(--create_ram)p FE(')f(and)h(`)p
+Fz(--diskless_ram)p FE('.)38 b(Th)m(us)390 4902 y Fz(ncks)47
 b(in.nc)f(out.nc)g(#)i(Default:)d(Open)i(in.nc)f(on)h(disk,)g(write)f
-(out.nc)g(to)h(disk)390 5340 y(ncks)g(--open_ram)e(in.nc)h(out.nc)g(#)i
-(Open)e(in.nc)h(in)g(RAM,)f(write)h(out.nc)f(to)h(disk)p
+(out.nc)g(to)h(disk)390 5011 y(ncks)g(--open_ram)e(in.nc)h(out.nc)g(#)i
+(Open)e(in.nc)h(in)g(RAM,)f(write)h(out.nc)f(to)h(disk)390
+5121 y(ncks)g(--create_ram)d(in.nc)i(out.nc)h(#)g(Create)f(out.nc)g(in)
+h(RAM,)g(write)f(to)i(disk)390 5230 y(#)f(Open)g(in.nc)f(in)i(RAM,)e
+(create)g(out.nc)g(in)i(RAM,)e(then)h(write)f(out.nc)g(to)i(disk)390
+5340 y(ncks)f(--open_ram)e(--create_ram)f(in.nc)i(out.nc)p
 eop end
-%%Page: 82 88
-TeXDict begin 82 87 bop 150 -116 a FD(82)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(ncks)47 b(--create_ram)d(in.nc)i
-(out.nc)h(#)g(Create)f(out.nc)g(in)h(RAM,)g(write)f(to)i(disk)390
-408 y(#)f(Open)g(in.nc)f(in)i(RAM,)e(create)g(out.nc)g(in)i(RAM,)e
-(then)h(write)f(out.nc)g(to)i(disk)390 518 y(ncks)f(--open_ram)e
-(--create_ram)f(in.nc)i(out.nc)390 628 y(ncks)h(--ram_all)e(in.nc)h
-(out.nc)g(#)i(Same)e(as)i(above)390 737 y(ncks)f(--diskless_all)d
-(in.nc)i(out.nc)g(#)h(Same)g(as)g(above)275 901 y FD(It)24
+%%Page: 92 98
+TeXDict begin 92 97 bop 150 -116 a FE(92)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(ncks)47 b(--ram_all)e(in.nc)h
+(out.nc)g(#)i(Same)e(as)i(above)390 408 y(ncks)f(--diskless_all)d
+(in.nc)i(out.nc)g(#)h(Same)g(as)g(above)275 583 y FE(It)24
 b(is)g(straigh)m(tforw)m(ard)g(to)h(demonstrate)g(the)f(e\016cacy)h(of)
-f FC(RAM)h FD(disks.)38 b(F)-8 b(or)24 b FC(NASA)h FD(w)m(e)g
-(constructed)150 1011 y(a)30 b(test)h(that)f(emplo)m(ys)h
-Fy(ncecat)d FD(an)h(arbitrary)h(n)m(um)m(b)s(er)f(\(set)h(to)h(one)f(h)
-m(undred)e(thousand\))h(of)h(\014les)g(are)150 1120 y(all)h(sym)m(b)s
+f FD(RAM)h FE(disks.)38 b(F)-8 b(or)24 b FD(NASA)h FE(w)m(e)g
+(constructed)150 693 y(a)30 b(test)h(that)f(emplo)m(ys)h
+Fz(ncecat)d FE(an)h(arbitrary)h(n)m(um)m(b)s(er)f(\(set)h(to)h(one)f(h)
+m(undred)e(thousand\))h(of)h(\014les)g(are)150 802 y(all)h(sym)m(b)s
 (olically)h(link)m(ed)f(to)g(the)f(same)h(\014le.)41
 b(Ev)m(erything)31 b(is)f(on)g(the)h(lo)s(cal)g(\014lesystem)g(\(not)g
-FC(D)n(AP)p FD(\).)390 1284 y Fy(#)47 b(Create)g(symbolic)e(links)h
-(for)h(benchmark)390 1394 y(cd)g(${DATA}/nco)e(#)i(Do)h(all)e(work)h
-(here)390 1503 y(for)g(idx)g(in)g({1..99999};)e(do)485
-1613 y(idx_fmt=`printf)f("\04505d")i(${idx}`)485 1722
-y(/bin/ln)g(-s)h(${DATA}/nco/LPRM-AMSR_E_L3)o(_D_S)o(OIL)o(M3_V)o(002-)
-o(201)o(2051)o(2T11)o(193)o(1Z_2)o(0020)o(619)o(.nc)41
-b(\\)1010 1832 y(${DATA}/nco/${idx_fmt}.nc)390 1942 y(done)390
-2051 y(#)47 b(Benchmark)f(time)g(to)i(ncecat)e(one)h(hundred)e
-(thousand)h(files)390 2161 y(time)h(ncecat)f(--create_ram)e(-O)j(-u)h
-(time)e(-v)h(ts)h(-d)f(Latitude,40.0)d(\\)438 2270 y(-d)j
-(Longitude,-105.0)c(-p)k(${DATA}/nco)e(-n)i(99999,5,1)f(00001.nc)f
-(~/foo.nc)275 2434 y FD(Run)27 b(normally)h(on)h(a)f(laptop)h(in)f
-(201303,)k(this)c(completes)i(in)e(21)j(seconds.)40 b(The)28
-b(`)p Fy(--create_ram)p FD(')150 2544 y(reduces)35 b(the)g(elapsed)h
-(time)g(to)g(9)30 b(seconds.)56 b(Some)35 b(of)g(this)g(sp)s(eed)g(ma)m
-(y)h(b)s(e)e(due)h(to)h(using)f(symlinks)150 2653 y(and)g(cac)m(hing.)
-58 b(Ho)m(w)m(ev)m(er,)39 b(the)d(e\016cacy)h(of)f(`)p
-Fy(--create_ram)p FD(')c(is)k(clear.)58 b(Placing)36
-b(the)g(output)g(\014le)f(in)150 2763 y FC(RAM)26 b FD(a)m(v)m(oids)h
-(thousands)d(of)i(disk)f(writes.)39 b(It)26 b(is)f(not)h(unreasonable)f
-(to)i(for)e FC(NCO)g FD(to)h(pro)s(cess)f(a)h(million)150
-2872 y(\014les)k(lik)m(e)i(this)f(in)f(a)h(few)f(min)m(utes.)41
-b(Ho)m(w)m(ev)m(er,)33 b(there)e(is)f(no)h(substitute)f(for)g(b)s(enc)m
-(hmarking)g(with)g(real)150 2982 y(\014les.)275 3146
-y(A)22 b(completely)i(indep)s(enden)m(t)c(w)m(a)m(y)j(to)g(reduce)f
-(time)h(sp)s(en)m(t)f(writing)g(\014les)g(is)g(to)h(refrain)e(from)h
-(writing)150 3255 y(temp)s(orary)h(output)f(\014les.)39
-b(This)22 b(is)h(accomplished)h(with)f(the)g(`)p Fy(--no_tmp_fl)p
-FD(')d(switc)m(h)k(\(see)g(Section)g(2.3)150 3365 y([T)-8
-b(emp)s(orary)30 b(Output)f(Files],)j(page)f(15\).)150
-3611 y FB(3.31)68 b(P)l(ac)l(k)l(ed)46 b(data)150 3721
-y Fk(\013)p 200 3721 3554 4 v 3553 w(\010)p 150 4211
-4 442 v 178 3857 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncap2)p
-FD(,)30 b Fy(ncbo)p FD(,)f Fy(nces)p FD(,)h Fy(ncflint)p
-FD(,)e Fy(ncpdq)p FD(,)h Fy(ncra)p FD(,)h Fy(ncwa)178
-3967 y FD(Short)g(options:)41 b(None)178 4076 y(Long)31
-b(options:)41 b(`)p Fy(--hdf_upk)p FD(',)28 b(`)p Fy(--hdf_unpack)p
-FD(')p 3803 4211 V 150 4262 a Fk(\012)p 200 4262 3554
-4 v 3553 w(\011)275 4437 y FD(The)22 b(phrase)h Fz(pac)m(k)m(ed)h(data)
-g FD(refers)f(to)h(data)g(whic)m(h)f(are)h(stored)g(in)f(the)g
-(standard)g(netCDF3)h(pac)m(king)150 4547 y(format)43
+FD(D)n(AP)p FE(\).)390 977 y Fz(#)47 b(Create)g(symbolic)e(links)h(for)
+h(benchmark)390 1087 y(cd)g(${DATA}/nco)e(#)i(Do)h(all)e(work)h(here)
+390 1196 y(for)g(idx)g(in)g({1..99999};)e(do)485 1306
+y(idx_fmt=`printf)f("\04505d")i(${idx}`)485 1416 y(/bin/ln)g(-s)h
+(${DATA}/nco/LPRM-AMSR_E_L3)o(_D_S)o(OIL)o(M3_V)o(002-)o(201)o(2051)o
+(2T11)o(193)o(1Z_2)o(0020)o(619)o(.nc)41 b(\\)1010 1525
+y(${DATA}/nco/${idx_fmt}.nc)390 1635 y(done)390 1744
+y(#)47 b(Benchmark)f(time)g(to)i(ncecat)e(one)h(hundred)e(thousand)h
+(files)390 1854 y(time)h(ncecat)f(--create_ram)e(-O)j(-u)h(time)e(-v)h
+(ts)h(-d)f(Latitude,40.0)d(\\)438 1963 y(-d)j(Longitude,-105.0)c(-p)k
+(${DATA}/nco)e(-n)i(99999,5,1)f(00001.nc)f(~/foo.nc)275
+2138 y FE(Run)27 b(normally)h(on)h(a)f(laptop)h(in)f(201303,)k(this)c
+(completes)i(in)e(21)j(seconds.)40 b(The)28 b(`)p Fz(--create_ram)p
+FE(')150 2248 y(reduces)35 b(the)g(elapsed)h(time)g(to)g(9)30
+b(seconds.)56 b(Some)35 b(of)g(this)g(sp)s(eed)g(ma)m(y)h(b)s(e)e(due)h
+(to)h(using)f(symlinks)150 2357 y(and)g(cac)m(hing.)58
+b(Ho)m(w)m(ev)m(er,)39 b(the)d(e\016cacy)h(of)f(`)p Fz(--create_ram)p
+FE(')c(is)k(clear.)58 b(Placing)36 b(the)g(output)g(\014le)f(in)150
+2467 y FD(RAM)26 b FE(a)m(v)m(oids)h(thousands)d(of)i(disk)f(writes.)39
+b(It)26 b(is)f(not)h(unreasonable)f(to)i(for)e FD(NCO)g
+FE(to)h(pro)s(cess)f(a)h(million)150 2577 y(\014les)k(lik)m(e)i(this)f
+(in)f(a)h(few)f(min)m(utes.)41 b(Ho)m(w)m(ev)m(er,)33
+b(there)e(is)f(no)h(substitute)f(for)g(b)s(enc)m(hmarking)g(with)g
+(real)150 2686 y(\014les.)275 2861 y(A)22 b(completely)i(indep)s(enden)
+m(t)c(w)m(a)m(y)j(to)g(reduce)f(time)h(sp)s(en)m(t)f(writing)g(\014les)
+g(is)g(to)h(refrain)e(from)h(writing)150 2970 y(temp)s(orary)h(output)f
+(\014les.)39 b(This)22 b(is)h(accomplished)h(with)f(the)g(`)p
+Fz(--no_tmp_fl)p FE(')d(switc)m(h)k(\(see)g(Section)g(2.3)150
+3080 y([T)-8 b(emp)s(orary)30 b(Output)f(Files],)j(page)f(15\).)150
+3359 y FC(3.32)68 b(P)l(ac)l(k)l(ed)46 b(data)150 3469
+y Fl(\013)p 200 3469 3554 4 v 3553 w(\010)p 150 3959
+4 442 v 178 3605 a FE(Av)-5 b(ailabilit)m(y:)43 b Fz(ncap2)p
+FE(,)30 b Fz(ncbo)p FE(,)f Fz(nces)p FE(,)h Fz(ncflint)p
+FE(,)e Fz(ncpdq)p FE(,)h Fz(ncra)p FE(,)h Fz(ncwa)178
+3715 y FE(Short)g(options:)41 b(None)178 3824 y(Long)31
+b(options:)41 b(`)p Fz(--hdf_upk)p FE(',)28 b(`)p Fz(--hdf_unpack)p
+FE(')p 3803 3959 V 150 4010 a Fl(\012)p 200 4010 3554
+4 v 3553 w(\011)275 4196 y FE(The)22 b(phrase)h FA(pac)m(k)m(ed)h(data)
+g FE(refers)f(to)h(data)g(whic)m(h)f(are)h(stored)g(in)f(the)g
+(standard)g(netCDF3)h(pac)m(king)150 4306 y(format)43
 b(whic)m(h)g(emplo)m(ys)h(a)f(lossy)h(algorithm.)80 b(See)43
 b(Section)h(4.7)g([nc)m(ks)g(netCDF)g(Kitc)m(hen)f(Sink],)150
-4656 y(page)j(176)g(for)f(a)h(description)f(of)h(de\015ation,)j(a)d
+4415 y(page)j(188)g(for)f(a)h(description)f(of)h(de\015ation,)j(a)d
 (lossless)g(compression)f(tec)m(hnique)h(a)m(v)-5 b(ailable)47
-b(with)150 4766 y(netCDF4)31 b(only)-8 b(.)42 b(P)m(ac)m(k)m(ed)32
+b(with)150 4525 y(netCDF4)31 b(only)-8 b(.)42 b(P)m(ac)m(k)m(ed)32
 b(data)f(ma)m(y)g(b)s(e)f(de\015ated)g(to)h(sa)m(v)m(e)h(additional)g
-(space.)150 4974 y Fu(P)m(ac)m(king)40 b(Algorithm)150
-5121 y Fz(P)m(ac)m(king)h FD(The)30 b(standard)g(netCDF)i(pac)m(king)g
-(algorithm)g(\(describ)s(ed)e(here)h(\()p Fy(http:)q(/)q(/www)q
-(.unidata)q(.)150 5230 y(ucar)10 b(.)e(edu)i(/)e(software)i(/)e(netcdf)
+(space.)150 4755 y Fv(P)m(ac)m(king)40 b(Algorithm)150
+4902 y FA(P)m(ac)m(king)h FE(The)30 b(standard)g(netCDF)i(pac)m(king)g
+(algorithm)g(\(describ)s(ed)e(here)h(\()p Fz(http:)q(/)q(/www)q
+(.unidata)q(.)150 5011 y(ucar)10 b(.)e(edu)i(/)e(software)i(/)e(netcdf)
 i(/)e(doc)o(s)i(/)e(net)o(cdf)h(/)f(Attr)o(ibut)o(e-C)o(onve)o(ntio)o
-(ns)i(.)e(h)o(tml)p FD(\)\))37 b(pro)s(duces)150 5340
+(ns)i(.)e(h)o(tml)p FE(\)\))37 b(pro)s(duces)150 5121
 y(data)h(with)f(the)h(same)g(dynamic)f(range)h(as)g(the)g(original)g
-(but)f(whic)m(h)h(requires)f(no)g(more)h(than)f(half)p
-eop end
-%%Page: 83 89
-TeXDict begin 83 88 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(83)150 299 y(the)36
-b(space)g(to)g(store.)57 b(Lik)m(e)36 b(all)g(pac)m(king)h(algorithms,)
-h(it)e(is)f Fo(lossy)p FD(.)57 b(The)35 b(pac)m(k)m(ed)i(v)-5
-b(ariable)36 b(is)g(stored)150 408 y(\(usually\))26 b(as)h(t)m(yp)s(e)f
-Fy(NC_SHORT)e FD(with)h(the)i(t)m(w)m(o)g(attributes)g(required)e(to)i
-(unpac)m(k)e(the)i(v)-5 b(ariable,)28 b Fy(scale_)150
-518 y(factor)i FD(and)g Fy(add_offset)p FD(,)f(stored)j(at)g(the)f
-(original)h(\(unpac)m(k)m(ed\))h(precision)e(of)g(the)h(v)-5
-b(ariable)3478 485 y Ft(22)3549 518 y FD(.)43 b(Let)150
-628 y Fz(min)30 b FD(and)g Fz(max)36 b FD(b)s(e)30 b(the)h(minim)m(um)e
-(and)h(maxim)m(um)g(v)-5 b(alues)31 b(of)f Fz(x)p FD(.)1046
-819 y(scale)p 1238 819 28 4 v 41 w(factor)c(=)f(\(max)c
-FA(\000)f FD(min)o(\))p Fv(=)p FD(ndrv)1106 953 y(add)p
-1259 953 V 40 w(o\013set)26 b(=)f(\(min)20 b(+)g(max\))p
-Fv(=)p FD(2)1364 1088 y(p)s(c)m(k)25 b(=)g(\(upk)20 b
-FA(\000)g FD(add)p 2073 1088 V 39 w(o\013set)q(\))p Fv(=)p
-FD(scale)p 2588 1088 V 42 w(factor)1528 1283 y(=)1634
-1222 y(ndrv)f FA(\002)h FD([upk)f FA(\000)h FD(\(min)g(+)g(max\))p
-Fv(=)p FD(2])p 1634 1262 1200 4 v 2018 1346 a(max)h FA(\000)e
-FD(min)150 1530 y(where)26 b Fz(ndrv)34 b FD(is)27 b(the)g(n)m(um)m(b)s
+(but)f(whic)m(h)h(requires)f(no)g(more)h(than)f(half)150
+5230 y(the)f(space)g(to)g(store.)57 b(Lik)m(e)36 b(all)g(pac)m(king)h
+(algorithms,)h(it)e(is)f Fp(lossy)p FE(.)57 b(The)35
+b(pac)m(k)m(ed)i(v)-5 b(ariable)36 b(is)g(stored)150
+5340 y(\(usually\))26 b(as)h(t)m(yp)s(e)f Fz(NC_SHORT)e
+FE(with)h(the)i(t)m(w)m(o)g(attributes)g(required)e(to)i(unpac)m(k)e
+(the)i(v)-5 b(ariable,)28 b Fz(scale_)p eop end
+%%Page: 93 99
+TeXDict begin 93 98 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(93)150 299 y Fz(factor)30
+b FE(and)g Fz(add_offset)p FE(,)f(stored)j(at)g(the)f(original)h
+(\(unpac)m(k)m(ed\))h(precision)e(of)g(the)h(v)-5 b(ariable)3478
+266 y Fu(25)3549 299 y FE(.)43 b(Let)150 408 y FA(min)30
+b FE(and)g FA(max)36 b FE(b)s(e)30 b(the)h(minim)m(um)e(and)h(maxim)m
+(um)g(v)-5 b(alues)31 b(of)f FA(x)p FE(.)1046 564 y(scale)p
+1238 564 28 4 v 41 w(factor)c(=)f(\(max)c FB(\000)f FE(min)o(\))p
+Fw(=)p FE(ndrv)1106 698 y(add)p 1259 698 V 40 w(o\013set)26
+b(=)f(\(min)20 b(+)g(max\))p Fw(=)p FE(2)1364 833 y(p)s(c)m(k)25
+b(=)g(\(upk)20 b FB(\000)g FE(add)p 2073 833 V 39 w(o\013set)q(\))p
+Fw(=)p FE(scale)p 2588 833 V 42 w(factor)1528 1029 y(=)1634
+967 y(ndrv)f FB(\002)h FE([upk)f FB(\000)h FE(\(min)g(+)g(max\))p
+Fw(=)p FE(2])p 1634 1007 1200 4 v 2018 1091 a(max)h FB(\000)e
+FE(min)150 1239 y(where)26 b FA(ndrv)34 b FE(is)27 b(the)g(n)m(um)m(b)s
 (er)e(of)i(discrete)h(represen)m(table)g(v)-5 b(alues)27
 b(for)g(giv)m(en)h(t)m(yp)s(e)f(of)g(pac)m(k)m(ed)h(v)-5
-b(ariable.)150 1640 y(The)31 b(theoretical)k(maxim)m(um)d(v)-5
-b(alue)32 b(for)g Fz(ndrv)38 b FD(is)32 b(t)m(w)m(o)h(raised)f(to)h
+b(ariable.)150 1349 y(The)31 b(theoretical)k(maxim)m(um)d(v)-5
+b(alue)32 b(for)g FA(ndrv)38 b FE(is)32 b(t)m(w)m(o)h(raised)f(to)h
 (the)f(n)m(um)m(b)s(er)f(of)h(bits)g(used)f(to)h(store)150
-1749 y(the)24 b(pac)m(k)m(ed)h(v)-5 b(ariable.)39 b(Th)m(us)22
+1459 y(the)24 b(pac)m(k)m(ed)h(v)-5 b(ariable.)39 b(Th)m(us)22
 b(if)i(the)g(v)-5 b(ariable)24 b(is)g(pac)m(k)m(ed)g(in)m(to)h(t)m(yp)s
-(e)f Fy(NC_SHORT)p FD(,)f(a)h(t)m(w)m(o-b)m(yte)i(datat)m(yp)s(e,)150
-1859 y(then)g(there)g(are)h(at)f(most)h(2)1099 1826 y
-Ft(16)1195 1859 y FD(=)e(65536)j(distinct)f(v)-5 b(alues)26
+(e)f Fz(NC_SHORT)p FE(,)f(a)h(t)m(w)m(o-b)m(yte)i(datat)m(yp)s(e,)150
+1568 y(then)g(there)g(are)h(at)f(most)h(2)1099 1535 y
+Fu(16)1195 1568 y FE(=)e(65536)j(distinct)f(v)-5 b(alues)26
 b(represen)m(table.)40 b(In)25 b(practice,)k(the)d(n)m(um)m(b)s(er)f
-(of)150 1968 y(discretely)33 b(represen)m(tible)f(v)-5
+(of)150 1678 y(discretely)33 b(represen)m(tible)f(v)-5
 b(alues)32 b(is)g(tak)m(en)g(to)h(b)s(e)e(t)m(w)m(o)i(less)f(than)f
-(the)h(theoretical)i(maxim)m(um.)45 b(This)150 2078 y(lea)m(v)m(es)26
+(the)h(theoretical)i(maxim)m(um.)45 b(This)150 1787 y(lea)m(v)m(es)26
 b(space)f(for)f(a)h(missing)f(v)-5 b(alue)25 b(and)e(solv)m(es)j(p)s
 (oten)m(tial)f(problems)f(with)g(rounding)e(that)j(ma)m(y)g(o)s(ccur)
-150 2188 y(during)k(the)h(unpac)m(king)g(of)h(the)f(v)-5
-b(ariable.)41 b(Th)m(us)29 b(for)h Fy(NC_SHORT)p FD(,)e
-Fv(ndr)s(v)g FD(=)d(65536)d FA(\000)e FD(2)25 b(=)g(65534.)43
-b(Less)150 2297 y(often,)28 b(the)f(v)-5 b(ariable)27
+150 1897 y(during)k(the)h(unpac)m(king)g(of)h(the)f(v)-5
+b(ariable.)41 b(Th)m(us)29 b(for)h Fz(NC_SHORT)p FE(,)e
+Fw(ndr)s(v)g FE(=)d(65536)d FB(\000)e FE(2)25 b(=)g(65534.)43
+b(Less)150 2007 y(often,)28 b(the)f(v)-5 b(ariable)27
 b(ma)m(y)h(b)s(e)e(pac)m(k)m(ed)h(in)m(to)h(t)m(yp)s(e)f
-Fy(NC_CHAR)p FD(,)e(where)i Fv(ndr)s(v)h FD(=)d(2)2889
-2264 y Ft(8)2939 2297 y FA(\000)13 b FD(2)25 b(=)g(256)13
-b FA(\000)g FD(2)26 b(=)f(254,)150 2407 y(or)33 b(t)m(yp)s(e)g
-Fy(NC_INT)f FD(where)g(where)h Fv(ndr)s(v)g FD(=)c(2)1690
-2374 y Ft(32)1783 2407 y FA(\000)22 b FD(2)30 b(=)f(4294967295)e
-FA(\000)22 b FD(2)30 b(=)g(4294967293.)53 b(One)33 b(useful)150
-2516 y(feature)27 b(of)h(\(lossy\))g(netCDF)f(pac)m(king)h(algorithm)g
+Fz(NC_CHAR)p FE(,)e(where)i Fw(ndr)s(v)h FE(=)d(2)2889
+1974 y Fu(8)2939 2007 y FB(\000)13 b FE(2)25 b(=)g(256)13
+b FB(\000)g FE(2)26 b(=)f(254,)150 2116 y(or)33 b(t)m(yp)s(e)g
+Fz(NC_INT)f FE(where)g(where)h Fw(ndr)s(v)g FE(=)c(2)1690
+2083 y Fu(32)1783 2116 y FB(\000)22 b FE(2)30 b(=)f(4294967295)e
+FB(\000)22 b FE(2)30 b(=)g(4294967293.)53 b(One)33 b(useful)150
+2226 y(feature)27 b(of)h(\(lossy\))g(netCDF)f(pac)m(king)h(algorithm)g
 (is)g(that)f(additional,)i(loss-less)f(pac)m(king)g(algorithms)150
-2626 y(p)s(erform)h(w)m(ell)i(on)g(top)f(of)h(it.)150
-2828 y Fu(Unpac)m(king)41 b(Algorithm)150 2975 y Fz(Unpac)m(king)48
-b FD(The)38 b(unpac)m(king)h(algorithm)i(dep)s(ends)c(on)i(the)g
-(presence)h(of)f(t)m(w)m(o)h(attributes,)j Fy(scale_)150
-3085 y(factor)26 b FD(and)g Fy(add_offset)p FD(.)37 b(If)27
-b Fy(scale_factor)d FD(is)k(presen)m(t)f(for)g(a)h(v)-5
+2335 y(p)s(erform)h(w)m(ell)i(on)g(top)f(of)h(it.)150
+2528 y Fv(Unpac)m(king)41 b(Algorithm)150 2675 y FA(Unpac)m(king)48
+b FE(The)38 b(unpac)m(king)h(algorithm)i(dep)s(ends)c(on)i(the)g
+(presence)h(of)f(t)m(w)m(o)h(attributes,)j Fz(scale_)150
+2784 y(factor)26 b FE(and)g Fz(add_offset)p FE(.)37 b(If)27
+b Fz(scale_factor)d FE(is)k(presen)m(t)f(for)g(a)h(v)-5
 b(ariable,)29 b(the)f(data)g(are)f(m)m(ultiplied)150
-3195 y(b)m(y)34 b(the)g(v)-5 b(alue)35 b Fz(scale)p 871
-3195 28 4 v 41 w(factor)42 b FD(after)34 b(the)h(data)f(are)h(read.)52
-b(If)33 b Fy(add_offset)e FD(is)j(presen)m(t)h(for)e(a)i(v)-5
-b(ariable,)150 3304 y(then)23 b(the)h Fz(add)p 653 3304
-V 39 w(o\013set)i FD(v)-5 b(alue)24 b(is)g(added)e(to)j(the)e(data)h
+2894 y(b)m(y)34 b(the)g(v)-5 b(alue)35 b FA(scale)p 871
+2894 28 4 v 41 w(factor)42 b FE(after)34 b(the)h(data)f(are)h(read.)52
+b(If)33 b Fz(add_offset)e FE(is)j(presen)m(t)h(for)e(a)i(v)-5
+b(ariable,)150 3003 y(then)23 b(the)h FA(add)p 653 3003
+V 39 w(o\013set)i FE(v)-5 b(alue)24 b(is)g(added)e(to)j(the)e(data)h
 (after)g(the)g(data)g(are)f(read.)39 b(If)23 b(b)s(oth)f
-Fy(scale_factor)150 3414 y FD(and)31 b Fy(add_offset)d
-FD(attributes)k(are)f(presen)m(t,)h(the)g(data)g(are)f(\014rst)g
-(scaled)h(b)m(y)f Fz(scale)p 3047 3414 V 41 w(factor)39
-b FD(b)s(efore)31 b(the)150 3523 y(o\013set)g Fz(add)p
-543 3523 V 40 w(o\013set)i FD(is)e(added.)1147 3714 y(upk)24
-b(=)h(scale)p 1609 3714 V 42 w(factor)c FA(\002)f FD(p)s(c)m(k)g(+)g
-(add)p 2389 3714 V 39 w(o\013set)1321 3910 y(=)1427 3849
-y(p)s(c)m(k)h FA(\002)e FD(\(max)i FA(\000)f FD(min\))p
-1427 3889 753 4 v 1711 3972 a(ndrv)2210 3910 y(+)2311
-3849 y(min)g(+)g(max)p 2311 3889 432 4 v 2504 3972 a(2)150
-4154 y(When)35 b Fy(scale_factor)d FD(and)j Fy(add_offset)e
-FD(are)j(used)f(for)g(pac)m(king,)j(the)e(asso)s(ciated)h(v)-5
-b(ariable)36 b(\(con-)150 4264 y(taining)f(the)f(pac)m(k)m(ed)h(data\))
-g(is)f(t)m(ypically)i(of)e(t)m(yp)s(e)h Fy(byte)e FD(or)h
-Fy(short)p FD(,)f(whereas)h(the)g(unpac)m(k)m(ed)h(v)-5
-b(alues)150 4373 y(are)32 b(in)m(tended)f(to)g(b)s(e)g(of)g(t)m(yp)s(e)
-h Fy(int)p FD(,)e Fy(float)p FD(,)g(or)i Fy(double)p
-FD(.)41 b(An)31 b(attribute's)h Fy(scale_factor)c FD(and)i
-Fy(add_)150 4483 y(offset)g FD(and)i Fy(_FillValue)p
-FD(,)e(if)i(an)m(y)-8 b(,)34 b(should)d(all)i(b)s(e)e(of)i(the)f(t)m
+Fz(scale_factor)150 3113 y FE(and)31 b Fz(add_offset)d
+FE(attributes)k(are)f(presen)m(t,)h(the)g(data)g(are)f(\014rst)g
+(scaled)h(b)m(y)f FA(scale)p 3047 3113 V 41 w(factor)39
+b FE(b)s(efore)31 b(the)150 3223 y(o\013set)g FA(add)p
+543 3223 V 40 w(o\013set)i FE(is)e(added.)1147 3378 y(upk)24
+b(=)h(scale)p 1609 3378 V 42 w(factor)c FB(\002)f FE(p)s(c)m(k)g(+)g
+(add)p 2389 3378 V 39 w(o\013set)1321 3574 y(=)1427 3512
+y(p)s(c)m(k)h FB(\002)e FE(\(max)i FB(\000)f FE(min\))p
+1427 3553 753 4 v 1711 3636 a(ndrv)2210 3574 y(+)2311
+3512 y(min)g(+)g(max)p 2311 3553 432 4 v 2504 3636 a(2)150
+3782 y(When)35 b Fz(scale_factor)d FE(and)j Fz(add_offset)e
+FE(are)j(used)f(for)g(pac)m(king,)j(the)e(asso)s(ciated)h(v)-5
+b(ariable)36 b(\(con-)150 3892 y(taining)f(the)f(pac)m(k)m(ed)h(data\))
+g(is)f(t)m(ypically)i(of)e(t)m(yp)s(e)h Fz(byte)e FE(or)h
+Fz(short)p FE(,)f(whereas)h(the)g(unpac)m(k)m(ed)h(v)-5
+b(alues)150 4001 y(are)32 b(in)m(tended)f(to)g(b)s(e)g(of)g(t)m(yp)s(e)
+h Fz(int)p FE(,)e Fz(float)p FE(,)g(or)i Fz(double)p
+FE(.)41 b(An)31 b(attribute's)h Fz(scale_factor)c FE(and)i
+Fz(add_)150 4111 y(offset)g FE(and)i Fz(_FillValue)p
+FE(,)e(if)i(an)m(y)-8 b(,)34 b(should)d(all)i(b)s(e)e(of)i(the)f(t)m
 (yp)s(e)g(in)m(tended)g(for)g(the)h(unpac)m(k)m(ed)f(data,)150
-4593 y(i.e.,)g Fy(int)p FD(,)d Fy(float)g FD(or)i Fy(double)p
-FD(.)150 4795 y Fu(Default)41 b(Handling)h(of)g(P)m(ac)m(k)m(ed)c(Data)
-150 4942 y FD(Most)44 b(\014les)f(originally)h(written)f(in)g
-FC(HDF)h FD(format)f(use)g(the)g FC(HDF)h FD(pac)m(king/unpac)m(king)h
-(algorithm.)150 5052 y(This)32 b(algorithm)i(is)f(incompatible)h(with)e
+4220 y(i.e.,)g Fz(int)p FE(,)d Fz(float)g FE(or)i Fz(double)p
+FE(.)150 4413 y Fv(Default)41 b(Handling)h(of)g(P)m(ac)m(k)m(ed)c(Data)
+150 4560 y FE(Most)44 b(\014les)f(originally)h(written)f(in)g
+FD(HDF)h FE(format)f(use)g(the)g FD(HDF)h FE(pac)m(king/unpac)m(king)h
+(algorithm.)150 4669 y(This)32 b(algorithm)i(is)f(incompatible)h(with)e
 (the)h(netCDF)h(pac)m(king)g(algorithm)f(describ)s(ed)f(ab)s(o)m(v)m
-(e.)49 b(The)p 150 5154 1200 4 v 166 5221 a Ft(22)275
-5253 y Fs(Although)26 b(not)g(a)h(part)g(of)g(the)f(standard,)i
-Fp(NCO)e Fs(enforces)i(the)e(p)r(olicy)h(that)f(the)h
-Fr(_FillValue)i Fs(attribute,)e(if)g(an)n(y)-6 b(,)26
-b(of)275 5340 y(a)g(pac)n(k)n(ed)e(v)l(ariable)j(is)f(also)h(stored)f
-(at)g(the)f(original)i(precision.)p eop end
-%%Page: 84 90
-TeXDict begin 84 89 bop 150 -116 a FD(84)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(unpac)m(king)g(comp)s(onen)m(t)h
-(of)g(the)f FC(HDF)i FD(algorithm)f(\(describ)s(ed)f(here)g(\()p
-Fy(http://www.hdfgroup.org/)150 408 y(HDF5/doc/UG/UG_frame10Da)o(tase)o
-(ts.h)o(tml)o FD(\)\))25 b(is)1172 612 y(upk)f(=)h(scale)p
-1634 612 28 4 v 42 w(factor)c FA(\002)f FD(\(p)s(c)m(k)g
-FA(\000)g FD(add)p 2449 612 V 40 w(o\013set)q(\))150
-815 y(Confusingly)-8 b(,)34 b(the)f(\(incompatible\))j(netCDF)e(and)e
-FC(HDF)i FD(algorithms)h(b)s(oth)d(store)i(their)g(parameters)150
-925 y(in)k(attributes)i(with)e(the)h(same)g(names)f(\()p
-Fy(scale_factor)e FD(and)i Fy(add_offset)p FD(\).)63
-b(Data)40 b(pac)m(k)m(ed)g(with)150 1035 y(one)d(algorithm)h(should)f
-(nev)m(er)g(b)s(e)f(unpac)m(k)m(ed)h(with)g(the)h(other;)i(doing)e(so)f
-(will)g(result)g(in)g(incorrect)150 1144 y(answ)m(ers.)44
-b(Unfortunately)-8 b(,)33 b(few)f(users)e(are)i(a)m(w)m(are)h(that)g
-(their)e(datasets)i(ma)m(y)f(b)s(e)f(pac)m(k)m(ed,)j(and)d(few)m(er)150
-1254 y(kno)m(w)42 b(the)g(details)g(of)g(the)g(pac)m(king)g(algorithm)h
-(emplo)m(y)m(ed.)76 b(This)41 b(is)g(what)h(w)m(e)g(in)f(the)h
-(\\bizness")150 1363 y(call)30 b(an)e Fz(in)m(terop)s(erabilit)m(y)38
-b FD(issue)28 b(b)s(ecause)g(it)h(hamp)s(ers)e(data)i(analysis)g(p)s
-(erformed)e(on)i(heterogeneous)150 1473 y(systems.)275
-1632 y(As)21 b(describ)s(ed)f(b)s(elo)m(w,)k FC(NCO)d
-FD(automatically)k(unpac)m(ks)c(data)h(b)s(efore)f(p)s(erforming)g
-(arithmetic.)39 b(This)150 1742 y(automatic)e(unpac)m(king)f(o)s(ccurs)
-f(silen)m(tly)i(since)f(there)g(is)f(usually)g(no)h(reason)f(to)i(b)s
-(other)e(users)f(with)150 1851 y(these)25 b(details.)40
+(e.)49 b(The)150 4779 y(unpac)m(king)30 b(comp)s(onen)m(t)h(of)g(the)f
+FD(HDF)i FE(algorithm)f(\(describ)s(ed)f(here)g(\()p
+Fz(http://www.hdfgroup.org/)150 4888 y(HDF5/doc/UG/UG_frame10Da)o(tase)
+o(ts.h)o(tml)o FE(\)\))25 b(is)1172 5067 y(upk)f(=)h(scale)p
+1634 5067 28 4 v 42 w(factor)c FB(\002)f FE(\(p)s(c)m(k)g
+FB(\000)g FE(add)p 2449 5067 V 40 w(o\013set)q(\))p 150
+5154 1200 4 v 166 5221 a Fu(25)275 5253 y Ft(Although)26
+b(not)g(a)h(part)g(of)g(the)f(standard,)i Fq(NCO)e Ft(enforces)i(the)e
+(p)r(olicy)h(that)f(the)h Fs(_FillValue)i Ft(attribute,)e(if)g(an)n(y)
+-6 b(,)26 b(of)275 5340 y(a)g(pac)n(k)n(ed)e(v)l(ariable)j(is)f(also)h
+(stored)f(at)g(the)f(original)i(precision.)p eop end
+%%Page: 94 100
+TeXDict begin 94 99 bop 150 -116 a FE(94)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(Confusingly)-8 b(,)34
+b(the)f(\(incompatible\))j(netCDF)e(and)e FD(HDF)i FE(algorithms)h(b)s
+(oth)d(store)i(their)g(parameters)150 408 y(in)k(attributes)i(with)e
+(the)h(same)g(names)f(\()p Fz(scale_factor)e FE(and)i
+Fz(add_offset)p FE(\).)63 b(Data)40 b(pac)m(k)m(ed)g(with)150
+518 y(one)d(algorithm)h(should)f(nev)m(er)g(b)s(e)f(unpac)m(k)m(ed)h
+(with)g(the)h(other;)i(doing)e(so)f(will)g(result)g(in)g(incorrect)150
+628 y(answ)m(ers.)44 b(Unfortunately)-8 b(,)33 b(few)f(users)e(are)i(a)
+m(w)m(are)h(that)g(their)e(datasets)i(ma)m(y)f(b)s(e)f(pac)m(k)m(ed,)j
+(and)d(few)m(er)150 737 y(kno)m(w)42 b(the)g(details)g(of)g(the)g(pac)m
+(king)g(algorithm)h(emplo)m(y)m(ed.)76 b(This)41 b(is)g(what)h(w)m(e)g
+(in)f(the)h(\\bizness")150 847 y(call)30 b(an)e FA(in)m(terop)s
+(erabilit)m(y)38 b FE(issue)28 b(b)s(ecause)g(it)h(hamp)s(ers)e(data)i
+(analysis)g(p)s(erformed)e(on)i(heterogeneous)150 956
+y(systems.)275 1180 y(As)21 b(describ)s(ed)f(b)s(elo)m(w,)k
+FD(NCO)d FE(automatically)k(unpac)m(ks)c(data)h(b)s(efore)f(p)s
+(erforming)g(arithmetic.)39 b(This)150 1290 y(automatic)e(unpac)m(king)
+f(o)s(ccurs)f(silen)m(tly)i(since)f(there)g(is)f(usually)g(no)h(reason)
+f(to)i(b)s(other)e(users)f(with)150 1399 y(these)25 b(details.)40
 b(There)24 b(is)g(as)h(y)m(et)h(no)e(generic)i(w)m(a)m(y)f(for)f
-FC(NCO)g FD(to)i(kno)m(w)e(whic)m(h)g(pac)m(king)i(con)m(v)m(en)m(tion)
-h(w)m(as)150 1961 y(used,)36 b(so)g FC(NCO)f Fo(assumes)44
-b FD(the)36 b(netCDF)g(con)m(v)m(en)m(tion)i(w)m(as)e(used.)56
-b FC(NCO)35 b FD(uses)g(the)h(same)g(con)m(v)m(en)m(tion)150
-2071 y(for)c(unpac)m(king)h(unless)f(explicitly)i(told)f(otherwise)g
-(with)f(the)h(`)p Fy(--hdf_upk)p FD(')e(\(also)i(`)p
-Fy(--hdf_unpack)p FD('\))150 2180 y(switc)m(h.)38 b(Un)m(til)24
+FD(NCO)g FE(to)i(kno)m(w)e(whic)m(h)g(pac)m(king)i(con)m(v)m(en)m(tion)
+h(w)m(as)150 1509 y(used,)36 b(so)g FD(NCO)f Fp(assumes)44
+b FE(the)36 b(netCDF)g(con)m(v)m(en)m(tion)i(w)m(as)e(used.)56
+b FD(NCO)35 b FE(uses)g(the)h(same)g(con)m(v)m(en)m(tion)150
+1618 y(for)c(unpac)m(king)h(unless)f(explicitly)i(told)f(otherwise)g
+(with)f(the)h(`)p Fz(--hdf_upk)p FE(')e(\(also)i(`)p
+Fz(--hdf_unpack)p FE('\))150 1728 y(switc)m(h.)38 b(Un)m(til)24
 b(and)d(unless)h(a)h(metho)s(d)e(of)i(automatically)i(detecting)f(the)e
-(pac)m(king)i(metho)s(d)d(is)i(devised,)150 2290 y(it)i(m)m(ust)g
+(pac)m(king)i(metho)s(d)d(is)i(devised,)150 1838 y(it)i(m)m(ust)g
 (remain)g(the)g(user's)f(resp)s(onsibilit)m(y)g(to)i(tell)g
-FC(NCO)e FD(when)g(to)i(use)e(the)h FC(HDF)h FD(con)m(v)m(en)m(tion)h
-(instead)150 2399 y(of)k(the)f(netCDF)h(con)m(v)m(en)m(tion)i(to)e
-(unpac)m(k.)275 2559 y(If)25 b(y)m(our)h(data)h(originally)g(came)g
-(from)f(an)g FC(HDF)h FD(\014le)f(\(e.g.,)j FC(NASA)e(EOS)p
-FD(\))e(then)h(it)h(w)m(as)f(lik)m(ely)i(pac)m(k)m(ed)150
-2668 y(with)37 b(the)h FC(HDF)g FD(con)m(v)m(en)m(tion)i(and)d(m)m(ust)
+FD(NCO)e FE(when)g(to)i(use)e(the)h FD(HDF)h FE(con)m(v)m(en)m(tion)h
+(instead)150 1947 y(of)k(the)f(netCDF)h(con)m(v)m(en)m(tion)i(to)e
+(unpac)m(k.)275 2171 y(If)25 b(y)m(our)h(data)h(originally)g(came)g
+(from)f(an)g FD(HDF)h FE(\014le)f(\(e.g.,)j FD(NASA)e(EOS)p
+FE(\))e(then)h(it)h(w)m(as)f(lik)m(ely)i(pac)m(k)m(ed)150
+2280 y(with)37 b(the)h FD(HDF)g FE(con)m(v)m(en)m(tion)i(and)d(m)m(ust)
 h(b)s(e)f(unpac)m(k)m(ed)g(with)h(the)f(same)h(con)m(v)m(en)m(tion.)65
-b(Our)36 b(recom-)150 2778 y(mendation)d(is)f(to)i(only)e(request)h
-FC(HDF)g FD(unpac)m(king)g(when)e(y)m(ou)i(are)g(certain.)49
-b(Most)33 b(pac)m(k)m(ed)h(datasets)150 2888 y(encoun)m(tered)26
-b(b)m(y)f FC(NCO)g FD(will)h(ha)m(v)m(e)h(used)e(the)g(netCDF)h(con)m
+b(Our)36 b(recom-)150 2390 y(mendation)d(is)f(to)i(only)e(request)h
+FD(HDF)g FE(unpac)m(king)g(when)e(y)m(ou)i(are)g(certain.)49
+b(Most)33 b(pac)m(k)m(ed)h(datasets)150 2500 y(encoun)m(tered)26
+b(b)m(y)f FD(NCO)g FE(will)h(ha)m(v)m(e)h(used)e(the)g(netCDF)h(con)m
 (v)m(en)m(tion.)42 b(Those)25 b(that)h(w)m(ere)g(not)g(will)f(hop)s(e-)
-150 2997 y(fully)36 b(pro)s(duce)f(noticeably)j(w)m(eird)e(v)-5
+150 2609 y(fully)36 b(pro)s(duce)f(noticeably)j(w)m(eird)e(v)-5
 b(alues)37 b(when)e(unpac)m(k)m(ed)i(b)m(y)f(the)h(wrong)f(algorithm.)
-60 b(Before)37 b(or)150 3107 y(after)31 b(panic)m(king,)h(treat)f(this)
+60 b(Before)37 b(or)150 2719 y(after)31 b(panic)m(king,)h(treat)f(this)
 g(as)g(a)g(clue)g(to)g(re-try)g(y)m(our)f(commands)h(with)f(the)h(`)p
-Fy(--hdf_upk)p FD(')d(switc)m(h.)150 3216 y(See)34 b(Section)h(4.8)h
+Fz(--hdf_upk)p FE(')d(switc)m(h.)150 2828 y(See)34 b(Section)h(4.8)h
 ([ncp)s(dq)c(netCDF)j(P)m(erm)m(ute)g(Dimensions)f(Quic)m(kly],)i(page)
-f(190)h(for)e(an)g(easy)h(tec)m(h-)150 3326 y(nique)23
+f(202)h(for)e(an)g(easy)h(tec)m(h-)150 2938 y(nique)23
 b(to)g(unpac)m(k)g(data)h(pac)m(k)m(ed)g(with)f(the)g
-FC(HDF)h FD(con)m(v)m(en)m(tion,)j(and)c(then)f(re-pac)m(k)j(it)e(with)
-g(the)g(netCDF)150 3436 y(con)m(v)m(en)m(tion.)150 3633
-y Fu(Default)41 b(Handling)h(of)g(P)m(ac)m(k)m(ed)c(Data)150
-3780 y FD(All)23 b FC(NCO)g FD(arithmetic)h(op)s(erators)e(understand)f
+FD(HDF)h FE(con)m(v)m(en)m(tion,)j(and)c(then)f(re-pac)m(k)j(it)e(with)
+g(the)g(netCDF)150 3048 y(con)m(v)m(en)m(tion.)150 3375
+y Fv(Default)41 b(Handling)h(of)g(P)m(ac)m(k)m(ed)c(Data)150
+3522 y FE(All)23 b FD(NCO)g FE(arithmetic)h(op)s(erators)e(understand)f
 (pac)m(k)m(ed)j(data.)39 b(The)22 b(op)s(erators)h(automatically)i
-(unpac)m(k)150 3890 y(an)m(y)33 b(pac)m(k)m(ed)h(v)-5
+(unpac)m(k)150 3632 y(an)m(y)33 b(pac)m(k)m(ed)h(v)-5
 b(ariable)34 b(in)f(the)g(input)f(\014le)h(whic)m(h)g(will)g(b)s(e)f
 (arithmetically)j(pro)s(cessed.)48 b(F)-8 b(or)34 b(example,)150
-4000 y Fy(ncra)26 b FD(unpac)m(ks)g(all)h(record)g(v)-5
-b(ariables,)28 b(and)e Fy(ncwa)g FD(unpac)m(ks)g(all)i(v)-5
+3741 y Fz(ncra)26 b FE(unpac)m(ks)g(all)h(record)g(v)-5
+b(ariables,)28 b(and)e Fz(ncwa)g FE(unpac)m(ks)g(all)i(v)-5
 b(ariable)27 b(whic)m(h)f(con)m(tain)i(a)g(dimension)150
-4109 y(to)j(b)s(e)f(a)m(v)m(eraged.)43 b(These)30 b(v)-5
+3851 y(to)j(b)s(e)f(a)m(v)m(eraged.)43 b(These)30 b(v)-5
 b(ariables)31 b(are)g(stored)f(unpac)m(k)m(ed)h(in)f(the)g(output)g
-(\014le.)275 4269 y(On)37 b(the)h(other)h(hand,)g(arithmetic)h(op)s
+(\014le.)275 4075 y(On)37 b(the)h(other)h(hand,)g(arithmetic)h(op)s
 (erators)e(do)g(not)h(unpac)m(k)f(non-pro)s(cessed)f(v)-5
-b(ariables.)65 b(F)-8 b(or)150 4378 y(example,)33 b Fy(ncra)e
-FD(lea)m(v)m(es)k(all)d(non-record)g(v)-5 b(ariables)33
-b(pac)m(k)m(ed,)h(and)d Fy(ncwa)g FD(lea)m(v)m(es)j(pac)m(k)m(ed)f(all)
-g(v)-5 b(ariables)150 4488 y(lac)m(king)27 b(an)e(a)m(v)m(eraged)i
+b(ariables.)65 b(F)-8 b(or)150 4184 y(example,)33 b Fz(ncra)e
+FE(lea)m(v)m(es)k(all)d(non-record)g(v)-5 b(ariables)33
+b(pac)m(k)m(ed,)h(and)d Fz(ncwa)g FE(lea)m(v)m(es)j(pac)m(k)m(ed)f(all)
+g(v)-5 b(ariables)150 4294 y(lac)m(king)27 b(an)e(a)m(v)m(eraged)i
 (dimension.)38 b(These)25 b(v)-5 b(ariables)25 b(\(called)i(\014xed)d
 (v)-5 b(ariables\))26 b(are)g(passed)e(unaltered)150
-4597 y(from)c(the)i(input)e(to)h(the)g(output)g(\014le.)38
+4403 y(from)c(the)i(input)e(to)h(the)g(output)g(\014le.)38
 b(Hence)21 b(\014xed)g(v)-5 b(ariables)21 b(whic)m(h)g(are)g(pac)m(k)m
-(ed)h(in)f(input)f(\014les)h(remain)150 4707 y(pac)m(k)m(ed)31
+(ed)h(in)f(input)f(\014les)h(remain)150 4513 y(pac)m(k)m(ed)31
 b(in)e(output)h(\014les.)40 b(Completely)31 b(pac)m(king)g(and)e(unpac)
 m(king)h(\014les)g(is)g(easily)h(accomplished)f(with)150
-4817 y Fy(ncpdq)d FD(\(see)j(Section)g(4.8)f([ncp)s(dq)f(netCDF)h(P)m
-(erm)m(ute)h(Dimensions)f(Quic)m(kly],)h(page)f(190\).)42
-b(P)m(ac)m(k)31 b(and)150 4926 y(unpac)m(k)26 b(individual)g(v)-5
-b(ariables)28 b(with)e Fy(ncpdq)f FD(and)h(the)h Fy(ncap2)e(pack\(\))g
-FD(and)h Fy(unpack\(\))f FD(functions)h(\(see)150 5036
+4623 y Fz(ncpdq)d FE(\(see)j(Section)g(4.8)f([ncp)s(dq)f(netCDF)h(P)m
+(erm)m(ute)h(Dimensions)f(Quic)m(kly],)h(page)f(202\).)42
+b(P)m(ac)m(k)31 b(and)150 4732 y(unpac)m(k)26 b(individual)g(v)-5
+b(ariables)28 b(with)e Fz(ncpdq)f FE(and)h(the)h Fz(ncap2)e(pack\(\))g
+FE(and)h Fz(unpack\(\))f FE(functions)h(\(see)150 4842
 y(Section)31 b(4.1.11)i([Metho)s(ds)d(and)g(functions],)g(page)i
-(119\).)150 5267 y FB(3.32)68 b(Op)t(eration)46 b(T)l(yp)t(es)p
+(131\).)150 5267 y FC(3.33)68 b(Op)t(eration)46 b(T)l(yp)t(es)p
 eop end
-%%Page: 85 91
-TeXDict begin 85 90 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(85)150 51 y Fk(\013)p
+%%Page: 95 101
+TeXDict begin 95 100 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(95)150 51 y Fl(\013)p
 200 51 3554 4 v 3553 w(\010)p 150 541 4 442 v 178 188
-a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncap2)p FD(,)30 b
-Fy(ncra)p FD(,)f Fy(nces)p FD(,)h Fy(ncwa)178 297 y FD(Short)g
-(options:)41 b(`)p Fy(-y)p FD(')178 407 y(Long)31 b(options:)41
-b(`)p Fy(--operation)p FD(',)28 b(`)p Fy(--op_typ)p FD(')p
-3803 541 V 150 593 a Fk(\012)p 200 593 3554 4 v 3553
-w(\011)150 767 y FD(The)c(`)p Fy(-y)30 b Fn(op_typ)p
-FD(')23 b(switc)m(h)h(allo)m(ws)i(sp)s(eci\014cation)f(of)g(man)m(y)f
+a FE(Av)-5 b(ailabilit)m(y:)43 b Fz(ncap2)p FE(,)30 b
+Fz(ncra)p FE(,)f Fz(nces)p FE(,)h Fz(ncwa)178 297 y FE(Short)g
+(options:)41 b(`)p Fz(-y)p FE(')178 407 y(Long)31 b(options:)41
+b(`)p Fz(--operation)p FE(',)28 b(`)p Fz(--op_typ)p FE(')p
+3803 541 V 150 593 a Fl(\012)p 200 593 3554 4 v 3553
+w(\011)150 763 y FE(The)c(`)p Fz(-y)30 b Fo(op_typ)p
+FE(')23 b(switc)m(h)h(allo)m(ws)i(sp)s(eci\014cation)f(of)g(man)m(y)f
 (di\013eren)m(t)h(t)m(yp)s(es)f(of)h(op)s(erations)f(Set)h
-Fz(op)p 3582 767 28 4 v 40 w(t)m(yp)150 876 y FD(to)31
+FA(op)p 3582 763 28 4 v 40 w(t)m(yp)150 873 y FE(to)31
 b(the)g(abbreviated)f(k)m(ey)i(for)e(the)g(corresp)s(onding)g(op)s
-(eration:)150 1068 y Fy(avg)336 b FD(Mean)31 b(v)-5 b(alue)150
-1234 y Fy(sqravg)192 b FD(Square)30 b(of)g(the)h(mean)150
-1401 y Fy(avgsqr)192 b FD(Mean)31 b(of)g(sum)e(of)h(squares)150
-1567 y Fy(max)336 b FD(Maximium)31 b(v)-5 b(alue)150
-1734 y Fy(min)336 b FD(Minimium)30 b(v)-5 b(alue)150
-1900 y Fy(rms)336 b FD(Ro)s(ot-mean-square)32 b(\(normalized)f(b)m(y)f
-Fz(N)10 b FD(\))150 2067 y Fy(rmssdn)192 b FD(Ro)s(ot-mean)31
-b(square)g(\(normalized)g(b)m(y)f Fz(N-1)7 b FD(\))150
-2233 y Fy(sqrt)288 b FD(Square)30 b(ro)s(ot)g(of)h(the)g(mean)150
-2400 y Fy(ttl)336 b FD(Sum)29 b(of)i(v)-5 b(alues)150
-2591 y FC(NCO)44 b FD(assumes)f(co)s(ordinate)i(v)-5
-b(ariables)44 b(represen)m(t)g(grid)g(axes,)k(e.g.,)g(longitude.)82
-b(The)43 b(only)h(rank-)150 2701 y(reduction)30 b(whic)m(h)f(mak)m(es)h
-(sense)g(for)f(co)s(ordinate)i(v)-5 b(ariables)30 b(is)g(a)m(v)m
-(eraging.)43 b(Hence)30 b FC(NCO)f FD(implemen)m(ts)150
-2810 y(the)35 b(op)s(eration)h(t)m(yp)s(e)f(requested)g(with)g(`)p
-Fy(-y)p FD(')g(on)g(all)h(non-co)s(ordinate)g(v)-5 b(ariables,)37
-b(not)e(on)g(co)s(ordinate)150 2920 y(v)-5 b(ariables.)66
+(eration:)150 1056 y Fz(avg)336 b FE(Mean)31 b(v)-5 b(alue)150
+1213 y Fz(sqravg)192 b FE(Square)30 b(of)g(the)h(mean)150
+1370 y Fz(avgsqr)192 b FE(Mean)31 b(of)g(sum)e(of)h(squares)150
+1527 y Fz(max)336 b FE(Maxim)m(um)31 b(v)-5 b(alue)150
+1685 y Fz(min)336 b FE(Minim)m(um)30 b(v)-5 b(alue)150
+1842 y Fz(mabs)288 b FE(Maxim)m(um)31 b(absolute)g(v)-5
+b(alue)150 1999 y Fz(mebs)288 b FE(Mean)31 b(absolute)g(v)-5
+b(alue)150 2156 y Fz(mabs)288 b FE(Minim)m(um)30 b(absolute)h(v)-5
+b(alue)150 2313 y Fz(rms)336 b FE(Ro)s(ot-mean-square)32
+b(\(normalized)f(b)m(y)f FA(N)10 b FE(\))150 2471 y Fz(rmssdn)192
+b FE(Ro)s(ot-mean)31 b(square)g(\(normalized)g(b)m(y)f
+FA(N-1)7 b FE(\))150 2628 y Fz(sqrt)288 b FE(Square)30
+b(ro)s(ot)g(of)h(the)g(mean)150 2785 y Fz(ttl)336 b FE(Sum)29
+b(of)i(v)-5 b(alues)150 2968 y FD(NCO)44 b FE(assumes)f(co)s(ordinate)i
+(v)-5 b(ariables)44 b(represen)m(t)g(grid)g(axes,)k(e.g.,)g(longitude.)
+82 b(The)43 b(only)h(rank-)150 3078 y(reduction)30 b(whic)m(h)f(mak)m
+(es)h(sense)g(for)f(co)s(ordinate)i(v)-5 b(ariables)30
+b(is)g(a)m(v)m(eraging.)43 b(Hence)30 b FD(NCO)f FE(implemen)m(ts)150
+3187 y(the)35 b(op)s(eration)h(t)m(yp)s(e)f(requested)g(with)g(`)p
+Fz(-y)p FE(')g(on)g(all)h(non-co)s(ordinate)g(v)-5 b(ariables,)37
+b(not)e(on)g(co)s(ordinate)150 3297 y(v)-5 b(ariables.)66
 b(When)39 b(an)g(op)s(eration)g(requires)f(a)h(co)s(ordinate)h(v)-5
 b(ariable)39 b(to)h(b)s(e)e(reduced)g(in)g(rank,)j(i.e.,)150
-3030 y(from)30 b(one)g(dimension)f(to)i(a)g(scalar)g(or)f(from)f(one)i
+3407 y(from)30 b(one)g(dimension)f(to)i(a)g(scalar)g(or)f(from)f(one)i
 (dimension)e(to)i(a)f(degenerate)i(\(single)f(v)-5 b(alue\))31
-b(arra)m(y)-8 b(,)150 3139 y(then)37 b FC(NCO)g Fo(always)k(aver)-5
-b(ages)45 b FD(the)38 b(co)s(ordinate)g(v)-5 b(ariable)38
+b(arra)m(y)-8 b(,)150 3516 y(then)37 b FD(NCO)g Fp(always)k(aver)-5
+b(ages)45 b FE(the)38 b(co)s(ordinate)g(v)-5 b(ariable)38
 b(regardless)f(of)h(the)f(arithmetic)h(op)s(eration)150
-3249 y(t)m(yp)s(e)31 b(p)s(erformed)d(on)j(the)f(non-co)s(ordinate)h(v)
--5 b(ariables.)275 3412 y(The)20 b(mathematical)k(de\014nition)d(of)g
+3626 y(t)m(yp)s(e)31 b(p)s(erformed)d(on)j(the)f(non-co)s(ordinate)h(v)
+-5 b(ariables.)275 3785 y(The)20 b(mathematical)k(de\014nition)d(of)g
 (eac)m(h)h(arithmetic)h(op)s(eration)f(is)f(giv)m(en)h(b)s(elo)m(w.)38
-b(See)21 b(Section)h(4.12)150 3521 y([ncw)m(a)44 b(netCDF)f(W)-8
-b(eigh)m(ted)46 b(Av)m(erager],)i(page)c(206,)j(for)c(additional)h
-(information)g(on)f(masks)g(and)150 3631 y(normalization.)e(If)26
+b(See)21 b(Section)h(4.12)150 3895 y([ncw)m(a)44 b(netCDF)f(W)-8
+b(eigh)m(ted)46 b(Av)m(erager],)i(page)c(218,)j(for)c(additional)h
+(information)g(on)f(masks)g(and)150 4004 y(normalization.)e(If)26
 b(an)h(op)s(eration)g(t)m(yp)s(e)g(is)g(not)g(sp)s(eci\014ed)f(with)g
-(`)p Fy(-y)p FD(')h(then)f(the)h(op)s(erator)g(p)s(erforms)e(an)150
-3740 y(arithmetic)30 b(a)m(v)m(erage)h(b)m(y)e(default.)40
+(`)p Fz(-y)p FE(')h(then)f(the)h(op)s(erator)g(p)s(erforms)e(an)150
+4114 y(arithmetic)30 b(a)m(v)m(erage)h(b)m(y)e(default.)40
 b(Av)m(eraging)31 b(is)e(describ)s(ed)e(\014rst)h(so)h(the)g
-(terminology)h(for)f(the)g(other)150 3850 y(op)s(erations)i(is)f
-(familiar.)275 4013 y(The)f(mask)m(ed,)i(w)m(eigh)m(ted)h(a)m(v)m
-(erage)h(of)e(a)f(v)-5 b(ariable)32 b Fv(x)e FD(can)h(b)s(e)e
-(generally)j(represen)m(ted)e(as)1538 4295 y(\026)-48
-b Fv(x)1587 4309 y Fg(j)1647 4295 y FD(=)1753 4169 y
-Ff(P)1841 4190 y Fg(i)p Ft(=)p Fg(N)1841 4256 y(i)p Ft(=1)1993
-4234 y Fv(\026)2048 4248 y Fg(i)2075 4234 y Fv(m)2155
-4248 y Fg(i)2183 4234 y Fv(w)2248 4248 y Fg(i)2276 4234
-y Fv(x)2328 4248 y Fg(i)p 1753 4274 603 4 v 1793 4303
-a Ff(P)1880 4324 y Fg(i)p Ft(=)p Fg(N)1880 4390 y(i)p
-Ft(=1)2033 4367 y Fv(\026)2088 4381 y Fg(i)2115 4367
-y Fv(m)2195 4381 y Fg(i)2223 4367 y Fv(w)2288 4381 y
-Fg(i)150 4573 y FD(where)40 b(\026)-48 b Fv(x)472 4587
-y Fg(j)544 4573 y FD(is)37 b(the)g Fv(j)5 b FD('th)38
+(terminology)h(for)f(the)g(other)150 4224 y(op)s(erations)i(is)f
+(familiar.)275 4383 y(The)f(mask)m(ed,)i(w)m(eigh)m(ted)h(a)m(v)m
+(erage)h(of)e(a)f(v)-5 b(ariable)32 b Fw(x)e FE(can)h(b)s(e)e
+(generally)j(represen)m(ted)e(as)1538 4644 y(\026)-48
+b Fw(x)1587 4658 y Fg(j)1647 4644 y FE(=)1753 4519 y
+Fd(P)1841 4539 y Fg(i)p Fu(=)p Fg(N)1841 4606 y(i)p Fu(=1)1993
+4583 y Fw(\026)2048 4597 y Fg(i)2075 4583 y Fw(m)2155
+4597 y Fg(i)2183 4583 y Fw(w)2248 4597 y Fg(i)2276 4583
+y Fw(x)2328 4597 y Fg(i)p 1753 4623 603 4 v 1793 4652
+a Fd(P)1880 4673 y Fg(i)p Fu(=)p Fg(N)1880 4740 y(i)p
+Fu(=1)2033 4717 y Fw(\026)2088 4731 y Fg(i)2115 4717
+y Fw(m)2195 4731 y Fg(i)2223 4717 y Fw(w)2288 4731 y
+Fg(i)150 4902 y FE(where)40 b(\026)-48 b Fw(x)472 4916
+y Fg(j)544 4902 y FE(is)37 b(the)g Fw(j)5 b FE('th)38
 b(elemen)m(t)h(of)e(the)h(output)e(h)m(yp)s(erslab,)j
-Fv(x)2416 4587 y Fg(i)2480 4573 y FD(is)f(the)f Fv(i)p
-FD('th)g(elemen)m(t)i(of)e(the)h(input)150 4682 y(h)m(yp)s(erslab,)30
-b Fv(\026)643 4696 y Fg(i)701 4682 y FD(is)g(1)h(unless)f
-Fv(x)1189 4696 y Fg(i)1247 4682 y FD(equals)h(the)f(missing)h(v)-5
-b(alue,)31 b Fv(m)2344 4696 y Fg(i)2402 4682 y FD(is)f(1)h(unless)f
-Fv(x)2890 4696 y Fg(i)2948 4682 y FD(is)h(mask)m(ed,)g(and)f
-Fv(w)3631 4696 y Fg(i)3689 4682 y FD(is)150 4792 y(the)j(w)m(eigh)m(t.)
+Fw(x)2416 4916 y Fg(i)2480 4902 y FE(is)f(the)f Fw(i)p
+FE('th)g(elemen)m(t)i(of)e(the)h(input)150 5011 y(h)m(yp)s(erslab,)30
+b Fw(\026)643 5025 y Fg(i)701 5011 y FE(is)g(1)h(unless)f
+Fw(x)1189 5025 y Fg(i)1247 5011 y FE(equals)h(the)f(missing)h(v)-5
+b(alue,)31 b Fw(m)2344 5025 y Fg(i)2402 5011 y FE(is)f(1)h(unless)f
+Fw(x)2890 5025 y Fg(i)2948 5011 y FE(is)h(mask)m(ed,)g(and)f
+Fw(w)3631 5025 y Fg(i)3689 5011 y FE(is)150 5121 y(the)j(w)m(eigh)m(t.)
 48 b(This)32 b(formiddable)g(lo)s(oking)h(form)m(ula)g(represen)m(ts)g
 (a)g(simple)f(w)m(eigh)m(ted)i(a)m(v)m(erage)h(whose)150
-4902 y(b)s(ells)d(and)g(whistles)h(are)g(all)g(explained)g(b)s(elo)m
+5230 y(b)s(ells)d(and)g(whistles)h(are)g(all)g(explained)g(b)s(elo)m
 (w.)47 b(It)32 b(is)h(not)g(to)s(o)g(early)g(to)g(note,)h(ho)m(w)m(ev)m
-(er,)h(that)e(when)150 5011 y Fv(\026)205 5025 y Fg(i)264
-5011 y FD(=)f Fv(m)447 5025 y Fg(i)507 5011 y FD(=)f
-Fv(w)674 5025 y Fg(i)734 5011 y FD(=)h(1,)k(the)e(generic)i(a)m(v)m
+(er,)h(that)e(when)150 5340 y Fw(\026)205 5354 y Fg(i)264
+5340 y FE(=)f Fw(m)447 5354 y Fg(i)507 5340 y FE(=)f
+Fw(w)674 5354 y Fg(i)734 5340 y FE(=)h(1,)k(the)e(generic)i(a)m(v)m
 (eraging)h(expression)d(ab)s(o)m(v)m(e)h(reduces)f(to)h(a)g(simple)g
-(arithmetic)150 5121 y(a)m(v)m(erage.)72 b(F)-8 b(urthermore,)42
-b Fv(m)1184 5135 y Fg(i)1252 5121 y FD(=)f Fv(w)1429
-5135 y Fg(i)1497 5121 y FD(=)g(1)f(for)g(all)g(op)s(erators)g(except)h
-Fy(ncwa)p FD(.)68 b(These)39 b(v)-5 b(ariables)41 b(are)150
-5230 y(included)i(in)h(the)g(discussion)g(b)s(elo)m(w)g(for)g
-(completeness,)k(and)c(for)g(p)s(ossible)f(future)g(use)h(in)g(other)
-150 5340 y(op)s(erators.)p eop end
-%%Page: 86 92
-TeXDict begin 86 91 bop 150 -116 a FD(86)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(The)21 b(size)h Fv(J)31
-b FD(of)22 b(the)g(output)f(h)m(yp)s(erslab)g(for)g(a)h(giv)m(en)h(v)-5
-b(ariable)22 b(is)g(the)g(pro)s(duct)e(of)i(all)h(the)f(dimensions)150
-408 y(of)43 b(the)h(input)e(v)-5 b(ariable)44 b(whic)m(h)f(are)h(not)f
-(a)m(v)m(eraged)j(o)m(v)m(er.)81 b(The)42 b(size)j Fv(N)53
-b FD(of)43 b(the)h(input)e(h)m(yp)s(erslab)150 518 y(con)m(tributing)k
-(to)g(eac)m(h)k(\026)-49 b Fv(x)1080 532 y Fg(j)1161
-518 y FD(is)45 b(simply)g(the)g(pro)s(duct)f(of)i(the)f(sizes)h(of)g
-(all)g(dimensions)f(whic)m(h)g(are)150 628 y(a)m(v)m(eraged)27
-b(o)m(v)m(er)f(\(i.e.,)h(dimensions)d(sp)s(eci\014ed)g(with)h(`)p
-Fy(-a)p FD('\).)39 b(Th)m(us)23 b Fv(N)35 b FD(is)25
-b(the)g(n)m(um)m(b)s(er)e(of)i(input)f(elemen)m(ts)150
-737 y(whic)m(h)36 b Fo(p)-5 b(otential)5 b(ly)46 b FD(con)m(tribute)36
-b(to)h(eac)m(h)g(output)f(elemen)m(t.)58 b(An)36 b(input)f(elemen)m(t)i
-Fv(x)3127 751 y Fg(i)3191 737 y FD(con)m(tributes)f(to)150
-847 y(the)31 b(output)f(elemen)m(t)h Fv(x)992 861 y Fg(j)1058
-847 y FD(except)g(in)f(t)m(w)m(o)i(conditions:)199 1006
-y(1.)61 b Fv(x)382 1020 y Fg(i)434 1006 y FD(equals)26
-b(the)f Fz(missing)g(v)-5 b(alue)30 b FD(\(see)c(Section)g(3.25)g
-([Missing)g(V)-8 b(alues],)27 b(page)f(71\))g(for)f(the)g(v)-5
-b(ariable.)199 1139 y(2.)61 b Fv(x)382 1153 y Fg(i)438
-1139 y FD(is)29 b(lo)s(cated)h(at)f(a)g(p)s(oin)m(t)f(where)g(the)h
-(mask)g(condition)g(\(see)g(Section)h(4.12.1)g([Mask)g(condition],)330
-1249 y(page)h(207\))h(is)f(false.)275 1431 y(P)m(oin)m(ts)c
-Fv(x)602 1445 y Fg(i)655 1431 y FD(in)f(either)h(of)f(these)h(t)m(w)m
-(o)g(categories)i(do)d(not)g(con)m(tribute)h(to)g Fv(x)2793
-1445 y Fg(j)2828 1431 y FD(|they)f(are)g(ignored.)40
-b(W)-8 b(e)150 1541 y(no)m(w)30 b(de\014ne)g(these)h(criteria)g(more)g
-(rigorously)-8 b(.)275 1700 y(Eac)m(h)45 b Fv(x)567 1714
-y Fg(i)640 1700 y FD(has)g(an)g(asso)s(ciated)i(Bo)s(olean)f(w)m(eigh)m
-(t)h Fv(\026)2128 1714 y Fg(i)2200 1700 y FD(whose)e(v)-5
-b(alue)46 b(is)f(0)h(or)f(1)g(\(false)h(or)g(true\).)150
-1810 y(The)38 b(v)-5 b(alue)40 b(of)f Fv(\026)756 1824
-y Fg(i)822 1810 y FD(is)g(1)h(\(true\))f(unless)g Fv(x)1608
-1824 y Fg(i)1674 1810 y FD(equals)g(the)h Fz(missing)e(v)-5
-b(alue)45 b FD(\(see)40 b(Section)g(3.25)g([Missing)150
-1919 y(V)-8 b(alues],)31 b(page)f(71\))g(for)f(the)h(v)-5
+(arithmetic)p eop end
+%%Page: 96 102
+TeXDict begin 96 101 bop 150 -116 a FE(96)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(a)m(v)m(erage.)72
+b(F)-8 b(urthermore,)42 b Fw(m)1184 313 y Fg(i)1252 299
+y FE(=)f Fw(w)1429 313 y Fg(i)1497 299 y FE(=)g(1)f(for)g(all)g(op)s
+(erators)g(except)h Fz(ncwa)p FE(.)68 b(These)39 b(v)-5
+b(ariables)41 b(are)150 408 y(included)i(in)h(the)g(discussion)g(b)s
+(elo)m(w)g(for)g(completeness,)k(and)c(for)g(p)s(ossible)f(future)g
+(use)h(in)g(other)150 518 y(op)s(erators.)275 677 y(The)21
+b(size)h Fw(J)31 b FE(of)22 b(the)g(output)f(h)m(yp)s(erslab)g(for)g(a)
+h(giv)m(en)h(v)-5 b(ariable)22 b(is)g(the)g(pro)s(duct)e(of)i(all)h
+(the)f(dimensions)150 787 y(of)43 b(the)h(input)e(v)-5
+b(ariable)44 b(whic)m(h)f(are)h(not)f(a)m(v)m(eraged)j(o)m(v)m(er.)81
+b(The)42 b(size)j Fw(N)53 b FE(of)43 b(the)h(input)e(h)m(yp)s(erslab)
+150 897 y(con)m(tributing)k(to)g(eac)m(h)k(\026)-49 b
+Fw(x)1080 911 y Fg(j)1161 897 y FE(is)45 b(simply)g(the)g(pro)s(duct)f
+(of)i(the)f(sizes)h(of)g(all)g(dimensions)f(whic)m(h)g(are)150
+1006 y(a)m(v)m(eraged)27 b(o)m(v)m(er)f(\(i.e.,)h(dimensions)d(sp)s
+(eci\014ed)g(with)h(`)p Fz(-a)p FE('\).)39 b(Th)m(us)23
+b Fw(N)35 b FE(is)25 b(the)g(n)m(um)m(b)s(er)e(of)i(input)f(elemen)m
+(ts)150 1116 y(whic)m(h)36 b Fp(p)-5 b(otential)5 b(ly)46
+b FE(con)m(tribute)36 b(to)h(eac)m(h)g(output)f(elemen)m(t.)58
+b(An)36 b(input)f(elemen)m(t)i Fw(x)3127 1130 y Fg(i)3191
+1116 y FE(con)m(tributes)f(to)150 1225 y(the)31 b(output)f(elemen)m(t)h
+Fw(x)992 1239 y Fg(j)1058 1225 y FE(except)g(in)f(t)m(w)m(o)i
+(conditions:)199 1385 y(1.)61 b Fw(x)382 1399 y Fg(i)434
+1385 y FE(equals)26 b(the)f FA(missing)g(v)-5 b(alue)30
+b FE(\(see)c(Section)g(3.25)g([Missing)g(V)-8 b(alues],)27
+b(page)f(71\))g(for)f(the)g(v)-5 b(ariable.)199 1516
+y(2.)61 b Fw(x)382 1530 y Fg(i)438 1516 y FE(is)29 b(lo)s(cated)h(at)f
+(a)g(p)s(oin)m(t)f(where)g(the)h(mask)g(condition)g(\(see)g(Section)h
+(4.12.1)g([Mask)g(condition],)330 1626 y(page)h(219\))h(is)f(false.)275
+1808 y(P)m(oin)m(ts)c Fw(x)602 1822 y Fg(i)655 1808 y
+FE(in)f(either)h(of)f(these)h(t)m(w)m(o)g(categories)i(do)d(not)g(con)m
+(tribute)h(to)g Fw(x)2793 1822 y Fg(j)2828 1808 y FE(|they)f(are)g
+(ignored.)40 b(W)-8 b(e)150 1917 y(no)m(w)30 b(de\014ne)g(these)h
+(criteria)g(more)g(rigorously)-8 b(.)275 2077 y(Eac)m(h)45
+b Fw(x)567 2091 y Fg(i)640 2077 y FE(has)g(an)g(asso)s(ciated)i(Bo)s
+(olean)f(w)m(eigh)m(t)h Fw(\026)2128 2091 y Fg(i)2200
+2077 y FE(whose)e(v)-5 b(alue)46 b(is)f(0)h(or)f(1)g(\(false)h(or)g
+(true\).)150 2186 y(The)38 b(v)-5 b(alue)40 b(of)f Fw(\026)756
+2200 y Fg(i)822 2186 y FE(is)g(1)h(\(true\))f(unless)g
+Fw(x)1608 2200 y Fg(i)1674 2186 y FE(equals)g(the)h FA(missing)e(v)-5
+b(alue)45 b FE(\(see)40 b(Section)g(3.25)g([Missing)150
+2296 y(V)-8 b(alues],)31 b(page)f(71\))g(for)f(the)h(v)-5
 b(ariable.)41 b(Th)m(us,)29 b(for)g(a)g(v)-5 b(ariable)30
-b(with)f(no)g Fy(_FillValue)e FD(attribute,)j Fv(\026)3632
-1933 y Fg(i)3689 1919 y FD(is)150 2029 y(alw)m(a)m(ys)35
-b(1.)52 b(All)34 b FC(NCO)g FD(arithmetic)h(op)s(erators)f(\()p
-Fy(ncbo)p FD(,)g Fy(ncra)p FD(,)g Fy(nces)p FD(,)g Fy(ncflint)p
-FD(,)f Fy(ncwa)p FD(\))g(treat)i(missing)150 2139 y(v)-5
-b(alues)31 b(analogously)-8 b(.)275 2298 y(Besides)36
-b(\(w)m(eigh)m(ted\))h(a)m(v)m(eraging,)j Fy(ncwa)p FD(,)c
-Fy(ncra)p FD(,)g(and)f Fy(nces)f FD(also)j(compute)e(some)h(common)g
-(non-)150 2408 y(linear)c(op)s(erations)g(whic)m(h)f(ma)m(y)i(b)s(e)e
-(sp)s(eci\014ed)g(with)g(the)h(`)p Fy(-y)p FD(')g(switc)m(h)g(\(see)g
-(Section)h(3.32)g([Op)s(eration)150 2517 y(T)m(yp)s(es],)h(page)f
-(84\).)50 b(The)33 b(other)g(rank-reducing)g(op)s(erations)g(are)g
+b(with)f(no)g Fz(_FillValue)e FE(attribute,)j Fw(\026)3632
+2310 y Fg(i)3689 2296 y FE(is)150 2405 y(alw)m(a)m(ys)35
+b(1.)52 b(All)34 b FD(NCO)g FE(arithmetic)h(op)s(erators)f(\()p
+Fz(ncbo)p FE(,)g Fz(ncra)p FE(,)g Fz(nces)p FE(,)g Fz(ncflint)p
+FE(,)f Fz(ncwa)p FE(\))g(treat)i(missing)150 2515 y(v)-5
+b(alues)31 b(analogously)-8 b(.)275 2674 y(Besides)36
+b(\(w)m(eigh)m(ted\))h(a)m(v)m(eraging,)j Fz(ncwa)p FE(,)c
+Fz(ncra)p FE(,)g(and)f Fz(nces)f FE(also)j(compute)e(some)h(common)g
+(non-)150 2784 y(linear)c(op)s(erations)g(whic)m(h)f(ma)m(y)i(b)s(e)e
+(sp)s(eci\014ed)g(with)g(the)h(`)p Fz(-y)p FE(')g(switc)m(h)g(\(see)g
+(Section)h(3.33)g([Op)s(eration)150 2894 y(T)m(yp)s(es],)h(page)f
+(94\).)50 b(The)33 b(other)g(rank-reducing)g(op)s(erations)g(are)g
 (simple)g(v)-5 b(ariations)35 b(of)e(the)g(generic)150
-2627 y(w)m(eigh)m(ted)f(mean)e(describ)s(ed)f(ab)s(o)m(v)m(e.)42
-b(The)30 b(total)i(v)-5 b(alue)31 b(of)g Fv(x)f FD(\()p
-Fy(-y)g(ttl)p FD(\))g(is)1594 2897 y(\026)-48 b Fv(x)1643
-2911 y Fg(j)1703 2897 y FD(=)1799 2791 y Fg(i)p Ft(=)p
-Fg(N)1805 2816 y Ff(X)1812 2993 y Fg(i)p Ft(=1)1947 2897
-y Fv(\026)2002 2911 y Fg(i)2030 2897 y Fv(m)2110 2911
-y Fg(i)2137 2897 y Fv(w)2202 2911 y Fg(i)2230 2897 y
-Fv(x)2282 2911 y Fg(i)150 3158 y FD(Note)26 b(that)f(the)f(total)i(is)f
+3003 y(w)m(eigh)m(ted)f(mean)e(describ)s(ed)f(ab)s(o)m(v)m(e.)42
+b(The)30 b(total)i(v)-5 b(alue)31 b(of)g Fw(x)f FE(\()p
+Fz(-y)g(ttl)p FE(\))g(is)1594 3263 y(\026)-48 b Fw(x)1643
+3277 y Fg(j)1703 3263 y FE(=)1799 3157 y Fg(i)p Fu(=)p
+Fg(N)1805 3182 y Fd(X)1812 3359 y Fg(i)p Fu(=1)1947 3263
+y Fw(\026)2002 3277 y Fg(i)2030 3263 y Fw(m)2110 3277
+y Fg(i)2137 3263 y Fw(w)2202 3277 y Fg(i)2230 3263 y
+Fw(x)2282 3277 y Fg(i)150 3514 y FE(Note)26 b(that)f(the)f(total)i(is)f
 (the)f(same)h(as)f(the)h(n)m(umerator)f(of)h(the)f(mean)h(of)f
-Fv(x)p FD(,)i(and)e(ma)m(y)h(also)g(b)s(e)f(obtained)150
-3268 y(in)45 b Fy(ncwa)e FD(b)m(y)i(using)f(the)h(`)p
-Fy(-N)p FD(')g(switc)m(h)g(\(see)h(Section)g(4.12)g([ncw)m(a)g(netCDF)f
-(W)-8 b(eigh)m(ted)47 b(Av)m(erager],)150 3377 y(page)31
-b(206\).)275 3537 y(The)e(minim)m(um)h(v)-5 b(alue)31
-b(of)f Fv(x)h FD(\()p Fy(-y)f(min)p FD(\))g(is)975 3731
-y(\026)-49 b Fv(x)1023 3745 y Fg(j)1084 3731 y FD(=)24
-b(min[)p Fv(\026)1411 3745 y Ft(1)1448 3731 y Fv(m)1528
-3745 y Ft(1)1565 3731 y Fv(w)1630 3745 y Ft(1)1668 3731
-y Fv(x)1720 3745 y Ft(1)1757 3731 y Fv(;)15 b(\026)1852
-3745 y Ft(2)1889 3731 y Fv(m)1969 3745 y Ft(2)2006 3731
-y Fv(w)2071 3745 y Ft(2)2109 3731 y Fv(x)2161 3745 y
-Ft(2)2198 3731 y Fv(;)g(:)g(:)g(:)h(;)f(\026)2454 3745
-y Fg(N)2518 3731 y Fv(m)2598 3745 y Fg(N)2660 3731 y
-Fv(w)2725 3745 y Fg(N)2788 3731 y Fv(x)2840 3745 y Fg(N)2903
-3731 y FD(])150 3925 y(Analogously)-8 b(,)32 b(the)f(maxim)m(um)f(v)-5
-b(alue)31 b(of)g Fv(x)f FD(\()p Fy(-y)g(max)p FD(\))g(is)966
-4119 y(\026)-49 b Fv(x)1014 4133 y Fg(j)1075 4119 y FD(=)25
-b(max[)p Fv(\026)1420 4133 y Ft(1)1457 4119 y Fv(m)1537
-4133 y Ft(1)1574 4119 y Fv(w)1639 4133 y Ft(1)1676 4119
-y Fv(x)1728 4133 y Ft(1)1766 4119 y Fv(;)15 b(\026)1861
-4133 y Ft(2)1898 4119 y Fv(m)1978 4133 y Ft(2)2015 4119
-y Fv(w)2080 4133 y Ft(2)2118 4119 y Fv(x)2170 4133 y
-Ft(2)2207 4119 y Fv(;)g(:)g(:)g(:)h(;)f(\026)2463 4133
-y Fg(N)2526 4119 y Fv(m)2606 4133 y Fg(N)2669 4119 y
-Fv(w)2734 4133 y Fg(N)2797 4119 y Fv(x)2849 4133 y Fg(N)2912
-4119 y FD(])150 4313 y(Th)m(us)29 b(the)i(minima)f(and)g(maxima)h(are)g
+Fw(x)p FE(,)i(and)e(ma)m(y)h(also)g(b)s(e)f(obtained)150
+3624 y(in)45 b Fz(ncwa)e FE(b)m(y)i(using)f(the)h(`)p
+Fz(-N)p FE(')g(switc)m(h)g(\(see)h(Section)g(4.12)g([ncw)m(a)g(netCDF)f
+(W)-8 b(eigh)m(ted)47 b(Av)m(erager],)150 3733 y(page)31
+b(218\).)275 3893 y(The)e(minim)m(um)h(v)-5 b(alue)31
+b(of)f Fw(x)h FE(\()p Fz(-y)f(min)p FE(\))g(is)975 4077
+y(\026)-49 b Fw(x)1023 4091 y Fg(j)1084 4077 y FE(=)24
+b(min[)p Fw(\026)1411 4091 y Fu(1)1448 4077 y Fw(m)1528
+4091 y Fu(1)1565 4077 y Fw(w)1630 4091 y Fu(1)1668 4077
+y Fw(x)1720 4091 y Fu(1)1757 4077 y Fw(;)15 b(\026)1852
+4091 y Fu(2)1889 4077 y Fw(m)1969 4091 y Fu(2)2006 4077
+y Fw(w)2071 4091 y Fu(2)2109 4077 y Fw(x)2161 4091 y
+Fu(2)2198 4077 y Fw(;)g(:)g(:)g(:)h(;)f(\026)2454 4091
+y Fg(N)2518 4077 y Fw(m)2598 4091 y Fg(N)2660 4077 y
+Fw(w)2725 4091 y Fg(N)2788 4077 y Fw(x)2840 4091 y Fg(N)2903
+4077 y FE(])150 4261 y(Analogously)-8 b(,)32 b(the)f(maxim)m(um)f(v)-5
+b(alue)31 b(of)g Fw(x)f FE(\()p Fz(-y)g(max)p FE(\))g(is)966
+4445 y(\026)-49 b Fw(x)1014 4459 y Fg(j)1075 4445 y FE(=)25
+b(max[)p Fw(\026)1420 4459 y Fu(1)1457 4445 y Fw(m)1537
+4459 y Fu(1)1574 4445 y Fw(w)1639 4459 y Fu(1)1676 4445
+y Fw(x)1728 4459 y Fu(1)1766 4445 y Fw(;)15 b(\026)1861
+4459 y Fu(2)1898 4445 y Fw(m)1978 4459 y Fu(2)2015 4445
+y Fw(w)2080 4459 y Fu(2)2118 4445 y Fw(x)2170 4459 y
+Fu(2)2207 4445 y Fw(;)g(:)g(:)g(:)h(;)f(\026)2463 4459
+y Fg(N)2526 4445 y Fw(m)2606 4459 y Fg(N)2669 4445 y
+Fw(w)2734 4459 y Fg(N)2797 4445 y Fw(x)2849 4459 y Fg(N)2912
+4445 y FE(])150 4629 y(Th)m(us)29 b(the)i(minima)f(and)g(maxima)h(are)g
 (determined)f(after)h(an)m(y)f(w)m(eigh)m(ts)i(are)f(applied.)275
-4472 y(The)e(square)i(of)f(the)h(mean)f(v)-5 b(alue)31
-b(of)f Fv(x)h FD(\()p Fy(-y)f(sqravg)p FD(\))f(is)1454
-4753 y(\026)-49 b Fv(x)1502 4767 y Fg(j)1563 4753 y FD(=)1659
-4609 y Ff( )1734 4627 y(P)1822 4648 y Fg(i)p Ft(=)p Fg(N)1822
-4714 y(i)p Ft(=1)1974 4691 y Fv(\026)2029 4705 y Fg(i)2057
-4691 y Fv(m)2137 4705 y Fg(i)2164 4691 y Fv(w)2229 4705
-y Fg(i)2257 4691 y Fv(x)2309 4705 y Fg(i)p 1734 4732
-603 4 v 1774 4761 a Ff(P)1862 4782 y Fg(i)p Ft(=)p Fg(N)1862
-4848 y(i)p Ft(=1)2014 4825 y Fv(\026)2069 4839 y Fg(i)2097
-4825 y Fv(m)2177 4839 y Fg(i)2204 4825 y Fv(w)2269 4839
-y Fg(i)2347 4609 y Ff(!)2412 4626 y Ft(2)150 5017 y FD(The)30
-b(mean)g(of)h(the)f(sum)g(of)g(squares)g(of)h Fv(x)f
-FD(\()p Fy(-y)g(avgsqr)p FD(\))f(is)1533 5278 y(\026)-48
-b Fv(x)1582 5292 y Fg(j)1642 5278 y FD(=)1748 5152 y
-Ff(P)1836 5173 y Fg(i)p Ft(=)p Fg(N)1836 5239 y(i)p Ft(=1)1988
-5216 y Fv(\026)2043 5230 y Fg(i)2071 5216 y Fv(m)2151
-5230 y Fg(i)2178 5216 y Fv(w)2243 5230 y Fg(i)2271 5216
-y Fv(x)2323 5183 y Ft(2)2323 5239 y Fg(i)p 1748 5257
-613 4 v 1793 5286 a Ff(P)1880 5307 y Fg(i)p Ft(=)p Fg(N)1880
-5373 y(i)p Ft(=1)2033 5350 y Fv(\026)2088 5364 y Fg(i)2115
-5350 y Fv(m)2195 5364 y Fg(i)2223 5350 y Fv(w)2288 5364
-y Fg(i)p eop end
-%%Page: 87 93
-TeXDict begin 87 92 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(87)150 299 y(If)21 b
-Fv(x)h FD(represen)m(ts)g(a)g(deviation)h(from)e(the)h(mean)g(of)g
-(another)g(v)-5 b(ariable,)25 b Fv(x)2601 313 y Fg(i)2653
-299 y FD(=)g Fv(y)2794 313 y Fg(i)2825 299 y FA(\000)t
-FD(\026)-46 b Fv(y)24 b FD(\(p)s(ossibly)d(created)i(b)m(y)150
-408 y Fy(ncbo)28 b FD(in)g(a)h(previous)f(step\),)i(then)f(applying)f
-Fy(avgsqr)f FD(to)j Fv(x)e FD(computes)h(the)g(appro)m(ximate)h(v)-5
-b(ariance)30 b(of)150 518 y Fv(y)s FD(.)39 b(Computing)24
-b(the)h(true)g(v)-5 b(ariance)26 b(of)f Fv(y)j FD(requires)c
+4788 y(The)e(minim)m(um)h(absolute)h(v)-5 b(alue)31 b(of)f
+Fw(x)h FE(\()p Fz(-y)f(mibs)p FE(\))f(is)899 4972 y(\026)-48
+b Fw(x)948 4986 y Fg(j)1008 4972 y FE(=)25 b(min)o([)p
+Fw(\026)1335 4986 y Fu(1)1373 4972 y Fw(m)1453 4986 y
+Fu(1)1490 4972 y Fw(w)1555 4986 y Fu(1)1592 4972 y FB(j)p
+Fw(x)1669 4986 y Fu(1)1706 4972 y FB(j)p Fw(;)15 b(\026)1826
+4986 y Fu(2)1864 4972 y Fw(m)1944 4986 y Fu(2)1981 4972
+y Fw(w)2046 4986 y Fu(2)2083 4972 y FB(j)p Fw(x)2160
+4986 y Fu(2)2198 4972 y FB(j)p Fw(;)g(:)g(:)g(:)i(;)e(\026)2480
+4986 y Fg(N)2543 4972 y Fw(m)2623 4986 y Fg(N)2686 4972
+y Fw(w)2751 4986 y Fg(N)2814 4972 y FB(j)p Fw(x)2891
+4986 y Fg(N)2954 4972 y FB(j)p FE(])150 5156 y(Analogously)-8
+b(,)32 b(the)f(maxim)m(um)f(absolute)h(v)-5 b(alue)31
+b(of)g Fw(x)f FE(\()p Fz(-y)g(mabs)p FE(\))g(is)890 5340
+y(\026)-48 b Fw(x)939 5354 y Fg(j)999 5340 y FE(=)25
+b(max[)p Fw(\026)1344 5354 y Fu(1)1381 5340 y Fw(m)1461
+5354 y Fu(1)1498 5340 y Fw(w)1563 5354 y Fu(1)1601 5340
+y FB(j)p Fw(x)1678 5354 y Fu(1)1715 5340 y FB(j)p Fw(;)15
+b(\026)1835 5354 y Fu(2)1873 5340 y Fw(m)1953 5354 y
+Fu(2)1990 5340 y Fw(w)2055 5354 y Fu(2)2092 5340 y FB(j)p
+Fw(x)2169 5354 y Fu(2)2207 5340 y FB(j)p Fw(;)g(:)g(:)g(:)i(;)e(\026)
+2489 5354 y Fg(N)2552 5340 y Fw(m)2632 5354 y Fg(N)2695
+5340 y Fw(w)2760 5354 y Fg(N)2823 5340 y FB(j)p Fw(x)2900
+5354 y Fg(N)2963 5340 y FB(j)p FE(])p eop end
+%%Page: 97 103
+TeXDict begin 97 102 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(97)150 299 y(Th)m(us)39
+b(the)h(minim)m(um)g(and)f(maxim)m(um)h(absolute)h(v)-5
+b(alues)41 b(are)f(determined)g(after)h(an)m(y)f(w)m(eigh)m(ts)i(are)
+150 408 y(applied.)f(The)29 b(mean)i(absolute)g(v)-5
+b(alue)31 b(of)f Fw(x)h FE(\()p Fz(-y)f(mebs)p FE(\))f(is)1428
+690 y(\026)-48 b Fw(x)1477 704 y Fg(j)1537 690 y FE(=)1633
+546 y Fd( )1709 564 y(P)1797 585 y Fg(i)p Fu(=)p Fg(N)1797
+651 y(i)p Fu(=1)1949 628 y Fw(\026)2004 642 y Fg(i)2032
+628 y Fw(m)2112 642 y Fg(i)2139 628 y Fw(w)2204 642 y
+Fg(i)2232 628 y FB(j)p Fw(x)2309 642 y Fg(i)2337 628
+y FB(j)p 1709 669 653 4 v 1774 698 a Fd(P)1862 718 y
+Fg(i)p Fu(=)p Fg(N)1862 785 y(i)p Fu(=1)2014 762 y Fw(\026)2069
+776 y Fg(i)2097 762 y Fw(m)2177 776 y Fg(i)2204 762 y
+Fw(w)2269 776 y Fg(i)2372 546 y Fd(!)2438 563 y Fu(2)275
+1004 y FE(The)29 b(square)i(of)f(the)h(mean)f(v)-5 b(alue)31
+b(of)f Fw(x)h FE(\()p Fz(-y)f(sqravg)p FE(\))f(is)1454
+1285 y(\026)-49 b Fw(x)1502 1299 y Fg(j)1563 1285 y FE(=)1659
+1141 y Fd( )1734 1159 y(P)1822 1180 y Fg(i)p Fu(=)p Fg(N)1822
+1247 y(i)p Fu(=1)1974 1224 y Fw(\026)2029 1238 y Fg(i)2057
+1224 y Fw(m)2137 1238 y Fg(i)2164 1224 y Fw(w)2229 1238
+y Fg(i)2257 1224 y Fw(x)2309 1238 y Fg(i)p 1734 1264
+603 4 v 1774 1293 a Fd(P)1862 1314 y Fg(i)p Fu(=)p Fg(N)1862
+1380 y(i)p Fu(=1)2014 1358 y Fw(\026)2069 1372 y Fg(i)2097
+1358 y Fw(m)2177 1372 y Fg(i)2204 1358 y Fw(w)2269 1372
+y Fg(i)2347 1141 y Fd(!)2412 1158 y Fu(2)150 1550 y FE(The)30
+b(mean)g(of)h(the)f(sum)g(of)g(squares)g(of)h Fw(x)f
+FE(\()p Fz(-y)g(avgsqr)p FE(\))f(is)1533 1812 y(\026)-48
+b Fw(x)1582 1826 y Fg(j)1642 1812 y FE(=)1748 1686 y
+Fd(P)1836 1706 y Fg(i)p Fu(=)p Fg(N)1836 1773 y(i)p Fu(=1)1988
+1750 y Fw(\026)2043 1764 y Fg(i)2071 1750 y Fw(m)2151
+1764 y Fg(i)2178 1750 y Fw(w)2243 1764 y Fg(i)2271 1750
+y Fw(x)2323 1717 y Fu(2)2323 1773 y Fg(i)p 1748 1791
+613 4 v 1793 1820 a Fd(P)1880 1840 y Fg(i)p Fu(=)p Fg(N)1880
+1907 y(i)p Fu(=1)2033 1884 y Fw(\026)2088 1898 y Fg(i)2115
+1884 y Fw(m)2195 1898 y Fg(i)2223 1884 y Fw(w)2288 1898
+y Fg(i)150 2069 y FE(If)21 b Fw(x)h FE(represen)m(ts)g(a)g(deviation)h
+(from)e(the)h(mean)g(of)g(another)g(v)-5 b(ariable,)25
+b Fw(x)2601 2083 y Fg(i)2653 2069 y FE(=)g Fw(y)2794
+2083 y Fg(i)2825 2069 y FB(\000)t FE(\026)-46 b Fw(y)24
+b FE(\(p)s(ossibly)d(created)i(b)m(y)150 2179 y Fz(ncbo)28
+b FE(in)g(a)h(previous)f(step\),)i(then)f(applying)f
+Fz(avgsqr)f FE(to)j Fw(x)e FE(computes)h(the)g(appro)m(ximate)h(v)-5
+b(ariance)30 b(of)150 2289 y Fw(y)s FE(.)39 b(Computing)24
+b(the)h(true)g(v)-5 b(ariance)26 b(of)f Fw(y)j FE(requires)c
 (subtracting)h(1)h(from)e(the)h(denominator,)i(discussed)150
-628 y(b)s(elo)m(w.)41 b(F)-8 b(or)31 b(a)g(large)g(sample)g(size)g(ho)m
-(w)m(ev)m(er,)h(the)f(t)m(w)m(o)g(results)f(will)h(b)s(e)f(nearly)g
-(indistinguishable.)275 787 y(The)f(ro)s(ot)i(mean)g(square)f(of)g
-Fv(x)g FD(\()p Fy(-y)h(rms)p FD(\))e(is)1489 1080 y(\026)-48
-b Fv(x)1538 1094 y Fg(j)1598 1080 y FD(=)1694 901 y Ff(v)1694
-947 y(u)1694 997 y(u)1694 1047 y(t)p 1782 901 632 4 v
-1792 954 a(P)1880 974 y Fg(i)p Ft(=)p Fg(N)1880 1041
-y(i)p Ft(=1)2032 1018 y Fv(\026)2087 1032 y Fg(i)2115
-1018 y Fv(m)2195 1032 y Fg(i)2222 1018 y Fv(w)2287 1032
-y Fg(i)2315 1018 y Fv(x)2367 987 y Ft(2)2367 1039 y Fg(i)p
-1792 1059 613 4 v 1836 1088 a Ff(P)1924 1108 y Fg(i)p
-Ft(=)p Fg(N)1924 1175 y(i)p Ft(=1)2077 1152 y Fv(\026)2132
-1166 y Fg(i)2159 1152 y Fv(m)2239 1166 y Fg(i)2267 1152
-y Fv(w)2332 1166 y Fg(i)150 1343 y FD(Th)m(us)29 b Fy(rms)h
-FD(simply)g(computes)g(the)h(squarero)s(ot)f(of)h(the)f(quan)m(tit)m(y)
-i(computed)e(b)m(y)h Fy(avgsqr)p FD(.)275 1503 y(The)37
-b(ro)s(ot)i(mean)f(square)g(of)h Fv(x)f FD(with)g
-(standard-deviation-lik)m(e)j(normalization)f(\()p Fy(-y)30
-b(rmssdn)p FD(\))37 b(is)150 1612 y(implemen)m(ted)f(as)f(follo)m(ws.)
-56 b(When)34 b(w)m(eigh)m(ts)j(are)e(not)g(sp)s(eci\014ed,)h(this)f
-(function)g(is)g(the)g(same)g(as)h(the)150 1722 y(ro)s(ot)31
-b(mean)f(square)g(of)h Fv(x)f FD(except)h(one)g(is)f(subtracted)h(from)
-f(the)g(sum)g(in)g(the)g(denominator)1467 2009 y(\026)-49
-b Fv(x)1515 2023 y Fg(j)1576 2009 y FD(=)1672 1830 y
-Ff(v)1672 1877 y(u)1672 1927 y(u)1672 1976 y(t)p 1759
-1830 678 4 v 1838 1884 a(P)1926 1904 y Fg(i)p Ft(=)p
-Fg(N)1926 1971 y(i)p Ft(=1)2078 1948 y Fv(\026)2133 1962
-y Fg(i)2161 1948 y Fv(m)2241 1962 y Fg(i)2268 1948 y
-Fv(x)2320 1917 y Ft(2)2320 1968 y Fg(i)p 1769 1988 658
-4 v 1769 2082 a FA(\000)p FD(1)21 b(+)1996 2018 y Ff(P)2084
-2038 y Fg(i)p Ft(=)p Fg(N)2084 2105 y(i)p Ft(=1)2237
-2082 y Fv(\026)2292 2096 y Fg(i)2319 2082 y Fv(m)2399
-2096 y Fg(i)150 2273 y FD(If)29 b Fv(x)h FD(represen)m(ts)g(the)g
+2398 y(b)s(elo)m(w.)41 b(F)-8 b(or)31 b(a)g(large)g(sample)g(size)g(ho)
+m(w)m(ev)m(er,)h(the)f(t)m(w)m(o)g(results)f(will)h(b)s(e)f(nearly)g
+(indistinguishable.)275 2558 y(The)f(ro)s(ot)i(mean)g(square)f(of)g
+Fw(x)g FE(\()p Fz(-y)h(rms)p FE(\))e(is)1489 2860 y(\026)-48
+b Fw(x)1538 2874 y Fg(j)1598 2860 y FE(=)1694 2681 y
+Fd(v)1694 2728 y(u)1694 2778 y(u)1694 2827 y(t)p 1782
+2681 632 4 v 1792 2735 a(P)1880 2755 y Fg(i)p Fu(=)p
+Fg(N)1880 2822 y(i)p Fu(=1)2032 2799 y Fw(\026)2087 2813
+y Fg(i)2115 2799 y Fw(m)2195 2813 y Fg(i)2222 2799 y
+Fw(w)2287 2813 y Fg(i)2315 2799 y Fw(x)2367 2768 y Fu(2)2367
+2819 y Fg(i)p 1792 2839 613 4 v 1836 2869 a Fd(P)1924
+2889 y Fg(i)p Fu(=)p Fg(N)1924 2956 y(i)p Fu(=1)2077
+2933 y Fw(\026)2132 2947 y Fg(i)2159 2933 y Fw(m)2239
+2947 y Fg(i)2267 2933 y Fw(w)2332 2947 y Fg(i)150 3134
+y FE(Th)m(us)29 b Fz(rms)h FE(simply)g(computes)g(the)h(squarero)s(ot)f
+(of)h(the)f(quan)m(tit)m(y)i(computed)e(b)m(y)h Fz(avgsqr)p
+FE(.)275 3294 y(The)37 b(ro)s(ot)i(mean)f(square)g(of)h
+Fw(x)f FE(with)g(standard-deviation-lik)m(e)j(normalization)f(\()p
+Fz(-y)30 b(rmssdn)p FE(\))37 b(is)150 3403 y(implemen)m(ted)f(as)f
+(follo)m(ws.)56 b(When)34 b(w)m(eigh)m(ts)j(are)e(not)g(sp)s
+(eci\014ed,)h(this)f(function)g(is)g(the)g(same)g(as)h(the)150
+3513 y(ro)s(ot)31 b(mean)f(square)g(of)h Fw(x)f FE(except)h(one)g(is)f
+(subtracted)h(from)f(the)g(sum)g(in)g(the)g(denominator)1467
+3811 y(\026)-49 b Fw(x)1515 3825 y Fg(j)1576 3811 y FE(=)1672
+3632 y Fd(v)1672 3678 y(u)1672 3728 y(u)1672 3778 y(t)p
+1759 3632 678 4 v 1838 3685 a(P)1926 3706 y Fg(i)p Fu(=)p
+Fg(N)1926 3772 y(i)p Fu(=1)2078 3749 y Fw(\026)2133 3763
+y Fg(i)2161 3749 y Fw(m)2241 3763 y Fg(i)2268 3749 y
+Fw(x)2320 3718 y Fu(2)2320 3770 y Fg(i)p 1769 3790 658
+4 v 1769 3883 a FB(\000)p FE(1)21 b(+)1996 3819 y Fd(P)2084
+3839 y Fg(i)p Fu(=)p Fg(N)2084 3906 y(i)p Fu(=1)2237
+3883 y Fw(\026)2292 3897 y Fg(i)2319 3883 y Fw(m)2399
+3897 y Fg(i)150 4085 y FE(If)29 b Fw(x)h FE(represen)m(ts)g(the)g
 (deviation)h(from)f(the)g(mean)g(of)g(another)g(v)-5
-b(ariable,)31 b Fv(x)2769 2287 y Fg(i)2822 2273 y FD(=)25
-b Fv(y)2963 2287 y Fg(i)3009 2273 y FA(\000)c FD(\026)-47
-b Fv(y)s FD(,)30 b(then)g(applying)150 2383 y Fy(rmssdn)e
-FD(to)i Fv(x)f FD(computes)h(the)g(standard)e(deviation)j(of)f
-Fv(y)s FD(.)40 b(In)29 b(this)g(case)i(the)e FA(\000)p
-FD(1)h(in)f(the)h(denominator)150 2492 y(comp)s(ensates)45
+b(ariable,)31 b Fw(x)2769 4099 y Fg(i)2822 4085 y FE(=)25
+b Fw(y)2963 4099 y Fg(i)3009 4085 y FB(\000)c FE(\026)-47
+b Fw(y)s FE(,)30 b(then)g(applying)150 4194 y Fz(rmssdn)e
+FE(to)i Fw(x)f FE(computes)h(the)g(standard)e(deviation)j(of)f
+Fw(y)s FE(.)40 b(In)29 b(this)g(case)i(the)e FB(\000)p
+FE(1)h(in)f(the)h(denominator)150 4304 y(comp)s(ensates)45
 b(for)f(the)g(degree)h(of)g(freedom)f(already)g(used)g(in)g(computing)h
-(\026)-46 b Fv(y)47 b FD(in)d(the)h(n)m(umerator.)150
-2602 y(Consult)30 b(a)h(statistics)h(b)s(o)s(ok)e(for)g(more)g
-(details.)275 2761 y(When)42 b(w)m(eigh)m(ts)h(are)g(sp)s(eci\014ed)e
+(\026)-46 b Fw(y)47 b FE(in)d(the)h(n)m(umerator.)150
+4413 y(Consult)30 b(a)h(statistics)h(b)s(o)s(ok)e(for)g(more)g
+(details.)275 4573 y(When)42 b(w)m(eigh)m(ts)h(are)g(sp)s(eci\014ed)e
 (it)i(is)f(unclear)h(ho)m(w)f(to)h(comp)s(ensate)g(for)f(this)g(extra)h
-(degree)g(of)150 2871 y(freedom.)59 b(W)-8 b(eigh)m(ting)39
+(degree)g(of)150 4682 y(freedom.)59 b(W)-8 b(eigh)m(ting)39
 b(the)e(n)m(umerator)f(and)g(denominator)h(of)g(the)f(ab)s(o)m(v)m(e)i
-(b)m(y)f Fv(w)3053 2885 y Fg(i)3117 2871 y FD(and)f(subtracting)150
-2980 y(one)21 b(from)f(the)g(denominator)h(is)f(only)h(appropriate)f
+(b)m(y)f Fw(w)3053 4696 y Fg(i)3117 4682 y FE(and)f(subtracting)150
+4792 y(one)21 b(from)f(the)g(denominator)h(is)f(only)h(appropriate)f
 (when)g(all)h(the)g(w)m(eigh)m(ts)g(are)g(1.0.)39 b(When)20
-b(the)h(w)m(eigh)m(ts)150 3090 y(are)38 b(arbitrary)e(\(e.g.,)41
+b(the)h(w)m(eigh)m(ts)150 4902 y(are)38 b(arbitrary)e(\(e.g.,)41
 b(Gaussian)d(w)m(eigh)m(ts\),)i(subtracting)e(one)f(from)g(the)g(sum)g
-(in)f(the)i(denominator)150 3200 y(do)s(es)28 b(not)g(necessarily)h
+(in)f(the)i(denominator)150 5011 y(do)s(es)28 b(not)g(necessarily)h
 (remo)m(v)m(e)h(one)e(degree)h(of)f(freedom.)40 b(Therefore)28
-b(when)f Fy(-y)i(rmssdn)e FD(is)h(requested)150 3309
-y(and)37 b(w)m(eigh)m(ts)i(are)f(sp)s(eci\014ed,)h Fy(ncwa)e
-FD(actually)i(implemen)m(ts)f(the)g Fy(rms)f FD(pro)s(cedure.)61
-b Fy(nces)37 b FD(and)g Fy(ncra)p FD(,)150 3419 y(whic)m(h)32
+b(when)f Fz(-y)i(rmssdn)e FE(is)h(requested)150 5121
+y(and)37 b(w)m(eigh)m(ts)i(are)f(sp)s(eci\014ed,)h Fz(ncwa)e
+FE(actually)i(implemen)m(ts)f(the)g Fz(rms)f FE(pro)s(cedure.)61
+b Fz(nces)37 b FE(and)g Fz(ncra)p FE(,)150 5230 y(whic)m(h)32
 b(do)g(not)h(allo)m(w)h(w)m(eigh)m(ts)f(to)h(b)s(e)d(sp)s(eci\014ed,)i
-(alw)m(a)m(ys)h(implemen)m(t)f(the)f Fy(rmssdn)f FD(pro)s(cedure)g
-(when)150 3528 y(ask)m(ed.)275 3688 y(2)-43 b(\030)s(0130827:)48
+(alw)m(a)m(ys)h(implemen)m(t)f(the)f Fz(rmssdn)f FE(pro)s(cedure)g
+(when)150 5340 y(ask)m(ed.)p eop end
+%%Page: 98 104
+TeXDict begin 98 103 bop 150 -116 a FE(98)2627 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(2)-43 b(\030)s(0130827:)48
 b(F)-8 b(edora)34 b(Core)e(19)i(\(F)m(C19\))g(brok)m(e)f(here)f(with)h
-("./nco.texi:6394:)49 b(Missing)33 b(dollarsign)150 3797
+("./nco.texi:6394:)49 b(Missing)33 b(dollarsign)150 408
 y(inserted.")27 b(U)-54 b(\030)14 b(bun)m(tu)25 b(alw)m(a)m(ys)j(built)
 e(nco.texi)h(\014ne)f(A)-54 b(\030)14 b(dding)25 b(a)i(dollarsign)g(c)m
-(haracter)g(righ)m(t)g(here)f(breaks)150 3907 y(Ubun)m(tu)33
+(haracter)g(righ)m(t)g(here)f(breaks)150 518 y(Ubun)m(tu)33
 b(builds)f(to)s(o)j(H)-54 b(\030)14 b(ence)35 b(I)e(m)m(ust)h
 (carefully)g(sp)s(ell-out)g(the)g(w)m(ord)g(dollarsign)g(instead)g(2)
--42 b(\030)s(0130829:)150 4017 y(Making)40 b(man)m(y)g(smaller)g(T)-8
+-42 b(\030)s(0130829:)150 628 y(Making)40 b(man)m(y)g(smaller)g(T)-8
 b(eX)40 b(en)m(vironmen)m(ts)g(do)s(es)f(not)h(solv)m(e)g(problem)f(2)
--42 b(\030)s(0130910:)62 b(Using)39 b(latest)150 4126
+-42 b(\030)s(0130910:)62 b(Using)39 b(latest)150 737
 y(texinfo.tex)k(from)d(GNU)i(do)s(es)e(not)i(solv)m(e)g(problem)e(2)-42
 b(\030)s(0130910:)65 b(Karl)41 b(Berry)g(solv)m(ed)h(problem)e(b)m(y)
-150 4236 y(\014xing)i(bug)g(in)h(texinfo.tex)h(B)-52
-b(\030)12 b(ug)43 b(w)m(as)g(triggered)g(in)g(F)-8 b(edora)43
-b(b)m(y)g(ap)s(ostrophe)f(in)g("User's)i(Guide")150 4345
-y(\(man)m(ual)28 b(title\))i(B)-52 b(\030)12 b(ug)27
-b(not)h(presen)m(t)g(in)f(texinfo.tex)i(v)m(ersion)f(2008-04-18.10)33
-b(\(used)27 b(b)m(y)g(Ubun)m(tu)g(13.04\))150 4455 y(B)-52
-b(\030)12 b(ug)22 b(presen)m(t)g(in)g(texinfo.tex)h(v)m(ersion)f
-(2013-02-01.11)28 b(\(used)21 b(b)m(y)h(F)m(C19\))h(B)-52
-b(\030)13 b(ug)21 b(just)h(\014xed)f(in)g(texinfo.tex)150
-4565 y(v)m(ersion)k(2013-09-11)30 b(\(committed)c(b)m(y)f(Karl\))30
-b(\030)-45 b(nco/autobld/texinfo.tex)28 b(no)m(w)d(con)m(tains)h
-(\014xed)e(v)m(ersion)150 4674 y(B)-52 b(\030)12 b(reak)-5
-b(age)32 b(alw)m(a)m(ys)g(o)s(ccurs)e(near)h(here)f(The)g(square)g(ro)s
-(ot)h(of)f(the)h(mean)f(of)h Fv(x)f FD(\()p Fy(-y)g(sqrt)p
-FD(\))g(is)1494 4967 y(\026)-48 b Fv(x)1543 4981 y Fg(j)1603
-4967 y FD(=)1699 4788 y Ff(v)1699 4834 y(u)1699 4884
-y(u)1699 4934 y(t)p 1787 4788 623 4 v 1797 4841 a(P)1884
-4862 y Fg(i)p Ft(=)p Fg(N)1884 4928 y(i)p Ft(=1)2037
-4905 y Fv(\026)2092 4919 y Fg(i)2119 4905 y Fv(m)2199
-4919 y Fg(i)2227 4905 y Fv(w)2292 4919 y Fg(i)2319 4905
-y Fv(x)2371 4919 y Fg(i)p 1797 4946 603 4 v 1836 4975
-a Ff(P)1924 4995 y Fg(i)p Ft(=)p Fg(N)1924 5062 y(i)p
-Ft(=1)2077 5039 y Fv(\026)2132 5053 y Fg(i)2159 5039
-y Fv(m)2239 5053 y Fg(i)2267 5039 y Fv(w)2332 5053 y
-Fg(i)150 5230 y FD(The)37 b(de\014nitions)g(of)h(some)g(of)g(these)g
-(op)s(erations)g(are)g(not)f(univ)m(ersally)h(useful.)62
-b(Mostly)39 b(they)e(w)m(ere)150 5340 y(c)m(hosen)d(to)h(facilitate)h
-(standard)d(statistical)k(computations)d(within)f(the)h
-FC(NCO)g FD(framew)m(ork.)51 b(W)-8 b(e)35 b(are)p eop
-end
-%%Page: 88 94
-TeXDict begin 88 93 bop 150 -116 a FD(88)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(op)s(en)20 b(to)h(rede\014ning)f
-(and)g(or)g(adding)h(to)g(the)g(ab)s(o)m(v)m(e.)38 b(If)20
-b(y)m(ou)h(are)g(in)m(terested)h(in)e(ha)m(ving)h(other)g(statistical)
-150 408 y(quan)m(tities)34 b(de\014ned)e(in)g FC(NCO)g
-FD(please)i(con)m(tact)h(the)e FC(NCO)f FD(pro)5 b(ject)33
-b(\(see)h(Section)g(1.7)f([Help)h(Requests)150 518 y(and)c(Bug)g(Rep)s
-(orts],)h(page)g(13\).)150 693 y(EXAMPLES)150 869 y(Supp)s(ose)d(y)m
-(ou)j(wish)e(to)i(examine)g(the)f(v)-5 b(ariable)31 b
-Fy(prs_sfc\(time,lat,lon\))24 b FD(whic)m(h)30 b(con)m(tains)i(a)e
-(time)150 978 y(series)35 b(of)f(the)g(surface)h(pressure)d(as)j(a)g
-(function)f(of)g(latitude)h(and)f(longitude.)53 b(Find)34
-b(the)g(minimium)150 1088 y(v)-5 b(alue)31 b(of)f Fy(prs_sfc)f
-FD(o)m(v)m(er)i(all)h(dimensions:)390 1263 y Fy(ncwa)47
-b(-y)g(min)g(-v)g(prs_sfc)f(in.nc)g(foo.nc)150 1439 y
-FD(Find)30 b(the)g(maxim)m(um)h(v)-5 b(alue)31 b(of)f
-Fy(prs_sfc)e FD(at)k(eac)m(h)f(time)g(in)m(terv)-5 b(al)32
-b(for)e(eac)m(h)h(latitude:)390 1614 y Fy(ncwa)47 b(-y)g(max)g(-v)g
-(prs_sfc)f(-a)h(lon)g(in.nc)f(foo.nc)150 1789 y FD(Find)30
-b(the)g(ro)s(ot-mean-square)i(v)-5 b(alue)31 b(of)f(the)h(time-series)g
-(of)g Fy(prs_sfc)d FD(at)j(ev)m(ery)h(gridp)s(oin)m(t:)390
-1965 y Fy(ncra)47 b(-y)g(rms)g(-v)g(prs_sfc)f(in.nc)g(foo.nc)390
-2074 y(ncwa)h(-y)g(rms)g(-v)g(prs_sfc)f(-a)h(time)g(in.nc)f(foo.nc)150
-2250 y FD(The)34 b(previous)f(t)m(w)m(o)j(commands)d(giv)m(e)j(the)e
-(same)h(answ)m(er)f(but)f Fy(ncra)g FD(is)h(preferred)f(b)s(ecause)h
-(it)h(has)f(a)150 2359 y(smaller)i(memory)g(fo)s(otprin)m(t.)58
+150 847 y(\014xing)i(bug)g(in)h(texinfo.tex)h(B)-52 b(\030)12
+b(ug)43 b(w)m(as)g(triggered)g(in)g(F)-8 b(edora)43 b(b)m(y)g(ap)s
+(ostrophe)f(in)g("User's)i(Guide")150 956 y(\(man)m(ual)28
+b(title\))i(B)-52 b(\030)12 b(ug)27 b(not)h(presen)m(t)g(in)f
+(texinfo.tex)i(v)m(ersion)f(2008-04-18.10)33 b(\(used)27
+b(b)m(y)g(Ubun)m(tu)g(13.04\))150 1066 y(B)-52 b(\030)12
+b(ug)22 b(presen)m(t)g(in)g(texinfo.tex)h(v)m(ersion)f(2013-02-01.11)28
+b(\(used)21 b(b)m(y)h(F)m(C19\))h(B)-52 b(\030)13 b(ug)21
+b(just)h(\014xed)f(in)g(texinfo.tex)150 1176 y(v)m(ersion)k(2013-09-11)
+30 b(\(committed)c(b)m(y)f(Karl\))30 b(\030)-45 b
+(nco/autobld/texinfo.tex)28 b(no)m(w)d(con)m(tains)h(\014xed)e(v)m
+(ersion)150 1285 y(B)-52 b(\030)12 b(reak)-5 b(age)32
+b(alw)m(a)m(ys)g(o)s(ccurs)e(near)h(here)f(The)g(square)g(ro)s(ot)h(of)
+f(the)h(mean)f(of)h Fw(x)f FE(\()p Fz(-y)g(sqrt)p FE(\))g(is)1494
+1612 y(\026)-48 b Fw(x)1543 1626 y Fg(j)1603 1612 y FE(=)1699
+1432 y Fd(v)1699 1479 y(u)1699 1529 y(u)1699 1579 y(t)p
+1787 1432 623 4 v 1797 1486 a(P)1884 1506 y Fg(i)p Fu(=)p
+Fg(N)1884 1573 y(i)p Fu(=1)2037 1550 y Fw(\026)2092 1564
+y Fg(i)2119 1550 y Fw(m)2199 1564 y Fg(i)2227 1550 y
+Fw(w)2292 1564 y Fg(i)2319 1550 y Fw(x)2371 1564 y Fg(i)p
+1797 1591 603 4 v 1836 1620 a Fd(P)1924 1640 y Fg(i)p
+Fu(=)p Fg(N)1924 1707 y(i)p Fu(=1)2077 1684 y Fw(\026)2132
+1698 y Fg(i)2159 1684 y Fw(m)2239 1698 y Fg(i)2267 1684
+y Fw(w)2332 1698 y Fg(i)150 1909 y FE(The)37 b(de\014nitions)g(of)h
+(some)g(of)g(these)g(op)s(erations)g(are)g(not)f(univ)m(ersally)h
+(useful.)62 b(Mostly)39 b(they)e(w)m(ere)150 2019 y(c)m(hosen)d(to)h
+(facilitate)h(standard)d(statistical)k(computations)d(within)f(the)h
+FD(NCO)g FE(framew)m(ork.)51 b(W)-8 b(e)35 b(are)150
+2128 y(op)s(en)20 b(to)h(rede\014ning)f(and)g(or)g(adding)h(to)g(the)g
+(ab)s(o)m(v)m(e.)38 b(If)20 b(y)m(ou)h(are)g(in)m(terested)h(in)e(ha)m
+(ving)h(other)g(statistical)150 2238 y(quan)m(tities)34
+b(de\014ned)e(in)g FD(NCO)g FE(please)i(con)m(tact)h(the)e
+FD(NCO)f FE(pro)5 b(ject)33 b(\(see)h(Section)g(1.7)f([Help)h(Requests)
+150 2347 y(and)c(Bug)g(Rep)s(orts],)h(page)g(13\).)150
+2510 y(EXAMPLES)150 2672 y(Supp)s(ose)d(y)m(ou)j(wish)e(to)i(examine)g
+(the)f(v)-5 b(ariable)31 b Fz(prs_sfc\(time,lat,lon\))24
+b FE(whic)m(h)30 b(con)m(tains)i(a)e(time)150 2782 y(series)36
+b(of)g(the)h(surface)f(pressure)e(as)i(a)h(function)e(of)i(latitude)g
+(and)e(longitude.)58 b(Find)36 b(the)g(minim)m(um)150
+2892 y(v)-5 b(alue)31 b(of)f Fz(prs_sfc)f FE(o)m(v)m(er)i(all)h
+(dimensions:)390 3054 y Fz(ncwa)47 b(-y)g(min)g(-v)g(prs_sfc)f(in.nc)g
+(foo.nc)150 3216 y FE(Find)30 b(the)g(maxim)m(um)h(v)-5
+b(alue)31 b(of)f Fz(prs_sfc)e FE(at)k(eac)m(h)f(time)g(in)m(terv)-5
+b(al)32 b(for)e(eac)m(h)h(latitude:)390 3379 y Fz(ncwa)47
+b(-y)g(max)g(-v)g(prs_sfc)f(-a)h(lon)g(in.nc)f(foo.nc)150
+3541 y FE(Find)30 b(the)g(ro)s(ot-mean-square)i(v)-5
+b(alue)31 b(of)f(the)h(time-series)g(of)g Fz(prs_sfc)d
+FE(at)j(ev)m(ery)h(gridp)s(oin)m(t:)390 3704 y Fz(ncra)47
+b(-y)g(rms)g(-v)g(prs_sfc)f(in.nc)g(foo.nc)390 3813 y(ncwa)h(-y)g(rms)g
+(-v)g(prs_sfc)f(-a)h(time)g(in.nc)f(foo.nc)150 3976 y
+FE(The)34 b(previous)f(t)m(w)m(o)j(commands)d(giv)m(e)j(the)e(same)h
+(answ)m(er)f(but)f Fz(ncra)g FE(is)h(preferred)f(b)s(ecause)h(it)h(has)
+f(a)150 4085 y(smaller)i(memory)g(fo)s(otprin)m(t.)58
 b(A)36 b(dimension)f(of)h(size)h(one)f(is)g(said)g(to)h(b)s(e)e
-Fz(degenerate)p FD(.)59 b(By)36 b(default,)150 2469 y
-Fy(ncra)i FD(lea)m(v)m(es)j(the)f(\(degenerate\))h Fy(time)d
-FD(dimension)h(in)g(the)g(output)g(\014le)g(\(whic)m(h)g(is)g(usually)g
-(useful\))150 2578 y(whereas)30 b Fy(ncwa)f FD(remo)m(v)m(es)j(the)f
-Fy(time)e FD(dimension)h(\(unless)g(`)p Fy(-b)p FD(')g(is)g(giv)m
-(en\).)150 2754 y(These)g(op)s(erations)h(w)m(ork)f(as)g(exp)s(ected)h
+FA(degenerate)p FE(.)59 b(By)36 b(default,)150 4195 y
+Fz(ncra)i FE(lea)m(v)m(es)j(the)f(\(degenerate\))h Fz(time)d
+FE(dimension)h(in)g(the)g(output)g(\014le)g(\(whic)m(h)g(is)g(usually)g
+(useful\))150 4305 y(whereas)30 b Fz(ncwa)f FE(remo)m(v)m(es)j(the)f
+Fz(time)e FE(dimension)h(\(unless)g(`)p Fz(-b)p FE(')g(is)g(giv)m
+(en\).)150 4467 y(These)g(op)s(erations)h(w)m(ork)f(as)g(exp)s(ected)h
 (in)f(m)m(ulti-\014le)h(op)s(erators.)41 b(Supp)s(ose)28
-b(that)j Fy(prs_sfc)e FD(is)h(stored)150 2863 y(in)h(m)m(ultiple)h
+b(that)j Fz(prs_sfc)e FE(is)h(stored)150 4577 y(in)h(m)m(ultiple)h
 (timesteps)g(p)s(er)e(\014le)h(across)h(m)m(ultiple)g(\014les,)f(sa)m
-(y)h Fy(jan.nc)p FD(,)e Fy(feb.nc)p FD(,)g Fy(march.nc)p
-FD(.)41 b(W)-8 b(e)33 b(can)150 2973 y(no)m(w)d(\014nd)f(the)i(three)f
-(mon)m(th)h(maximium)f(surface)g(pressure)f(at)i(ev)m(ery)g(p)s(oin)m
-(t.)390 3148 y Fy(nces)47 b(-y)g(max)g(-v)g(prs_sfc)f(jan.nc)g(feb.nc)g
-(march.nc)f(out.nc)150 3324 y FD(It)24 b(is)h(p)s(ossible)f(to)h(use)f
+(y)h Fz(jan.nc)p FE(,)e Fz(feb.nc)p FE(,)g Fz(march.nc)p
+FE(.)41 b(W)-8 b(e)33 b(can)150 4686 y(no)m(w)d(\014nd)f(the)i(three)f
+(mon)m(th)h(maxim)m(um)f(surface)g(pressure)f(at)i(ev)m(ery)h(p)s(oin)m
+(t.)390 4849 y Fz(nces)47 b(-y)g(max)g(-v)g(prs_sfc)f(jan.nc)g(feb.nc)g
+(march.nc)f(out.nc)150 5011 y FE(It)24 b(is)h(p)s(ossible)f(to)h(use)f
 (a)g(com)m(bination)i(of)e(these)h(op)s(erations)g(to)g(compute)f(the)h
-(v)-5 b(ariance)25 b(and)f(standard)150 3433 y(deviation)29
+(v)-5 b(ariance)25 b(and)f(standard)150 5121 y(deviation)29
 b(of)f(a)g(\014eld)f(stored)h(in)g(a)g(single)g(\014le)g(or)g(across)g
 (m)m(ultiple)g(\014les.)40 b(The)28 b(pro)s(cedure)e(to)j(compute)150
-3543 y(the)j(temp)s(oral)h(standard)e(deviation)j(of)e(the)h(surface)f
+5230 y(the)j(temp)s(oral)h(standard)e(deviation)j(of)e(the)h(surface)f
 (pressure)f(at)i(all)g(p)s(oin)m(ts)f(in)g(a)h(single)g(\014le)f
-Fy(in.nc)150 3652 y FD(in)m(v)m(olv)m(es)g(three)f(steps.)390
-3828 y Fy(ncwa)47 b(-O)g(-v)g(prs_sfc)f(-a)h(time)g(in.nc)f(out.nc)390
-3937 y(ncbo)h(-O)g(-v)g(prs_sfc)f(in.nc)g(out.nc)g(out.nc)390
-4047 y(ncra)h(-O)g(-y)g(rmssdn)f(out.nc)g(out.nc)275
-4222 y FD(First)25 b(construct)g(the)g(temp)s(oral)h(mean)f(of)g
-Fy(prs_sfc)e FD(in)i(the)g(\014le)g Fy(out.nc)p FD(.)37
-b(Next)26 b(o)m(v)m(erwrite)h Fy(out.nc)150 4332 y FD(with)d(the)g
+Fz(in.nc)150 5340 y FE(in)m(v)m(olv)m(es)g(three)f(steps.)p
+eop end
+%%Page: 99 105
+TeXDict begin 99 104 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2407 b(99)390 299 y Fz(ncwa)47
+b(-O)g(-v)g(prs_sfc)f(-a)h(time)g(in.nc)f(out.nc)390
+408 y(ncbo)h(-O)g(-v)g(prs_sfc)f(in.nc)g(out.nc)g(out.nc)390
+518 y(ncra)h(-O)g(-y)g(rmssdn)f(out.nc)g(out.nc)275 679
+y FE(First)25 b(construct)g(the)g(temp)s(oral)h(mean)f(of)g
+Fz(prs_sfc)e FE(in)i(the)g(\014le)g Fz(out.nc)p FE(.)37
+b(Next)26 b(o)m(v)m(erwrite)h Fz(out.nc)150 788 y FE(with)d(the)g
 (anomaly)h(\(deviation)h(from)e(the)g(mean\).)39 b(Finally)25
-b(o)m(v)m(erwrite)h Fy(out.nc)d FD(with)g(the)i(ro)s(ot-mean-)150
-4441 y(square)33 b(of)g(itself.)49 b(Note)35 b(the)e(use)f(of)i(`)p
-Fy(-y)c(rmssdn)p FD(')h(\(rather)i(than)g(`)p Fy(-y)d(rms)p
-FD('\))j(in)f(the)i(\014nal)e(step.)49 b(This)150 4551
+b(o)m(v)m(erwrite)h Fz(out.nc)d FE(with)g(the)i(ro)s(ot-mean-)150
+898 y(square)33 b(of)g(itself.)49 b(Note)35 b(the)e(use)f(of)i(`)p
+Fz(-y)c(rmssdn)p FE(')h(\(rather)i(than)g(`)p Fz(-y)d(rms)p
+FE('\))j(in)f(the)i(\014nal)e(step.)49 b(This)150 1008
 y(ensures)38 b(the)h(standard)f(deviation)i(is)f(correctly)i
 (normalized)e(b)m(y)g(one)g(few)m(er)g(than)g(the)g(n)m(um)m(b)s(er)f
-(of)150 4661 y(time)31 b(samples.)40 b(The)30 b(pro)s(cedure)f(to)i
+(of)150 1117 y(time)31 b(samples.)40 b(The)30 b(pro)s(cedure)f(to)i
 (compute)f(the)h(v)-5 b(ariance)31 b(is)f(iden)m(tical)i(except)f(for)f
-(the)g(use)g(of)g(`)p Fy(-y)150 4770 y(var)p FD(')g(instead)g(of)h(`)p
-Fy(-y)f(rmssdn)p FD(')f(in)h(the)g(\014nal)g(step.)275
-4945 y Fy(ncap2)e FD(can)j(also)g(compute)g(statistics)h(lik)m(e)g
+(the)g(use)g(of)g(`)p Fz(-y)150 1227 y(var)p FE(')g(instead)g(of)h(`)p
+Fz(-y)f(rmssdn)p FE(')f(in)h(the)g(\014nal)g(step.)275
+1387 y Fz(ncap2)e FE(can)j(also)g(compute)g(statistics)h(lik)m(e)g
 (standard)d(deviations.)42 b(Brute-force)31 b(implemen)m(tation)150
-5055 y(of)g(form)m(ulae)g(is)f(one)h(option,)g(e.g.,)390
-5230 y Fy(ncap2)46 b(-s)i('prs_sfc_sdn=sqrt\(\(prs_)o(sfc)o(-prs)o
+1497 y(of)g(form)m(ulae)g(is)f(one)h(option,)g(e.g.,)390
+1658 y Fz(ncap2)46 b(-s)i('prs_sfc_sdn=sqrt\(\(prs_)o(sfc)o(-prs)o
 (_sfc)o(.av)o(g\($t)o(ime\))o(^2\))o(.tot)o(al\($)o(tim)o(e\)/\()o
-($tim)o(e.s)o(ize-)o(1\)\))o(')676 5340 y(in.nc)f(out.nc)p
-eop end
-%%Page: 89 95
-TeXDict begin 89 94 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(89)275 299 y(The)27
-b(op)s(eration)i(ma)m(y)-8 b(,)30 b(of)f(course,)g(b)s(e)e(brok)m(en)i
-(in)m(to)g(m)m(ultiple)g(steps)f(in)g(order)g(to)h(arc)m(hiv)m(e)h(in)m
-(terme-)150 408 y(diate)h(quan)m(tities,)h(suc)m(h)e(as)h(the)f
-(time-anomalies)390 604 y Fy(ncap2)46 b(-s)i('prs_sfc_anm=prs_sfc-pr)o
-(s_s)o(fc.a)o(vg\($)o(tim)o(e\)')41 b(\\)676 714 y(-s)48
-b('prs_sfc_sdn=sqrt\(\(prs_)o(sfc)o(_anm)o(^2\).)o(tot)o(al\($)o(time)o
-(\)/\()o($tim)o(e.si)o(ze-)o(1\)\)')41 b(\\)676 823 y(in.nc)47
-b(out.nc)275 1019 y(ncap2)j FD(supp)s(orts)g(in)m(trinsic)j(standard)e
-(deviation)i(functions)f(\(see)h(Section)f(3.32)i([Op)s(eration)150
-1129 y(T)m(yp)s(es],)30 b(page)h(84\))h(whic)m(h)e(simplify)g(the)h(ab)
-s(o)m(v)m(e)g(expression)f(to)390 1324 y Fy(ncap2)46
-b(-s)i('prs_sfc_sdn=\(prs_sfc-p)o(rs_)o(sfc.)o(avg\()o($ti)o(me\)\))o
-(.rms)o(sdn)o(\($ti)o(me\)')41 b(in.nc)46 b(out.nc)275
-1520 y FD(These)30 b(instrinsic)g(functions)g(compute)g(the)h(answ)m
-(er)f(quic)m(kly)h(and)f(concisely)-8 b(.)275 1716 y(The)27
+($tim)o(e.s)o(ize-)o(1\)\))o(')676 1767 y(in.nc)f(out.nc)275
+1928 y FE(The)27 b(op)s(eration)i(ma)m(y)-8 b(,)30 b(of)f(course,)g(b)s
+(e)e(brok)m(en)i(in)m(to)g(m)m(ultiple)g(steps)f(in)g(order)g(to)h(arc)
+m(hiv)m(e)h(in)m(terme-)150 2038 y(diate)h(quan)m(tities,)h(suc)m(h)e
+(as)h(the)f(time-anomalies)390 2198 y Fz(ncap2)46 b(-s)i
+('prs_sfc_anm=prs_sfc-pr)o(s_s)o(fc.a)o(vg\($)o(tim)o(e\)')41
+b(\\)676 2308 y(-s)48 b('prs_sfc_sdn=sqrt\(\(prs_)o(sfc)o(_anm)o(^2\).)
+o(tot)o(al\($)o(time)o(\)/\()o($tim)o(e.si)o(ze-)o(1\)\)')41
+b(\\)676 2418 y(in.nc)47 b(out.nc)275 2578 y(ncap2)j
+FE(supp)s(orts)g(in)m(trinsic)j(standard)e(deviation)i(functions)f
+(\(see)h(Section)f(3.33)i([Op)s(eration)150 2688 y(T)m(yp)s(es],)30
+b(page)h(94\))h(whic)m(h)e(simplify)g(the)h(ab)s(o)m(v)m(e)g
+(expression)f(to)390 2849 y Fz(ncap2)46 b(-s)i
+('prs_sfc_sdn=\(prs_sfc-p)o(rs_)o(sfc.)o(avg\()o($ti)o(me\)\))o(.rms)o
+(sdn)o(\($ti)o(me\)')41 b(in.nc)46 b(out.nc)275 3009
+y FE(These)30 b(instrinsic)g(functions)g(compute)g(the)h(answ)m(er)f
+(quic)m(kly)h(and)f(concisely)-8 b(.)275 3170 y(The)27
 b(pro)s(cedure)g(to)i(compute)f(the)g(spatial)h(standard)e(deviation)i
-(of)g(a)f(\014eld)g(in)f(a)i(single)f(\014le)g Fy(in.nc)150
-1825 y FD(in)m(v)m(olv)m(es)k(three)f(steps.)390 2021
-y Fy(ncwa)47 b(-O)g(-v)g(prs_sfc,gw)e(-a)i(lat,lon)f(-w)h(gw)g(in.nc)g
-(out.nc)390 2131 y(ncbo)g(-O)g(-v)g(prs_sfc,gw)e(in.nc)h(out.nc)g
-(out.nc)390 2240 y(ncwa)h(-O)g(-y)g(rmssdn)f(-v)h(prs_sfc)f(-a)h
-(lat,lon)f(-w)h(gw)g(out.nc)g(out.nc)275 2436 y FD(First)35
+(of)g(a)f(\014eld)g(in)f(a)i(single)f(\014le)g Fz(in.nc)150
+3280 y FE(in)m(v)m(olv)m(es)k(three)f(steps.)390 3440
+y Fz(ncwa)47 b(-O)g(-v)g(prs_sfc,gw)e(-a)i(lat,lon)f(-w)h(gw)g(in.nc)g
+(out.nc)390 3550 y(ncbo)g(-O)g(-v)g(prs_sfc,gw)e(in.nc)h(out.nc)g
+(out.nc)390 3660 y(ncwa)h(-O)g(-y)g(rmssdn)f(-v)h(prs_sfc)f(-a)h
+(lat,lon)f(-w)h(gw)g(out.nc)g(out.nc)275 3820 y FE(First)35
 b(the)h(appropriately)g(w)m(eigh)m(ted)h(\(with)e(`)p
-Fy(-w)30 b(gw)p FD('\))35 b(spatial)i(mean)e(v)-5 b(alues)36
-b(are)g(written)g(to)g(the)150 2546 y(output)i(\014le.)66
+Fz(-w)30 b(gw)p FE('\))35 b(spatial)i(mean)e(v)-5 b(alues)36
+b(are)g(written)g(to)g(the)150 3930 y(output)i(\014le.)66
 b(This)38 b(example)h(includes)f(the)h(use)f(of)h(a)g(w)m(eigh)m(ted)h
-(v)-5 b(ariable)40 b(sp)s(eci\014ed)e(with)g(`)p Fy(-w)30
-b(gw)p FD('.)150 2655 y(When)40 b(using)f(w)m(eigh)m(ts)i(to)g(compute)
+(v)-5 b(ariable)40 b(sp)s(eci\014ed)e(with)g(`)p Fz(-w)30
+b(gw)p FE('.)150 4040 y(When)40 b(using)f(w)m(eigh)m(ts)i(to)g(compute)
 f(standard)f(deviations)i(one)f(m)m(ust)g(remem)m(b)s(er)f(to)i
-(include)f(the)150 2765 y(w)m(eigh)m(ts)f(in)e(the)h(initial)h(output)e
+(include)f(the)150 4149 y(w)m(eigh)m(ts)f(in)e(the)h(initial)h(output)e
 (\014les)h(so)g(that)g(they)g(ma)m(y)g(b)s(e)f(used)g(again)h(in)g(the)
-g(\014nal)f(step.)62 b(The)150 2874 y(initial)33 b(output)f(\014le)f
+g(\014nal)f(step.)62 b(The)150 4259 y(initial)33 b(output)f(\014le)f
 (is)h(then)g(o)m(v)m(erwritten)h(with)f(the)g(gridp)s(oin)m(t)f
-(deviations)i(from)f(the)g(spatial)h(mean.)150 2984 y(Finally)e(the)g
+(deviations)i(from)f(the)g(spatial)h(mean.)150 4368 y(Finally)e(the)g
 (ro)s(ot-mean-square)g(of)g(the)f(appropriately)h(w)m(eigh)m(ted)h
-(spatial)f(deviations)g(is)g(tak)m(en.)275 3180 y(The)e
-Fy(ncap2)g FD(solution)i(to)g(the)g(spatially-w)m(eigh)m(ted)i
-(standard)d(deviation)h(problem)f(is)390 3375 y Fy(ncap2)46
+(spatial)f(deviations)g(is)g(tak)m(en.)275 4529 y(The)e
+Fz(ncap2)g FE(solution)i(to)g(the)g(spatially-w)m(eigh)m(ted)i
+(standard)d(deviation)h(problem)f(is)390 4690 y Fz(ncap2)46
 b(-s)i('prs_sfc_sdn=\(prs_sfc*g)o(w-p)o(rs_s)o(fc*g)o(w.a)o(vg\($)o
 (lat,)o($lo)o(n\)\).)o(rmss)o(dn\()o($lat)o(,$lo)o(n\)')41
-b(\\)676 3485 y(in.nc)47 b(out.nc)275 3681 y FD(Be)27
+b(\\)676 4799 y(in.nc)47 b(out.nc)275 4960 y FE(Be)27
 b(sure)f(to)h(m)m(ultiply)g(the)f(v)-5 b(ariable)28 b(b)m(y)e(the)h(w)m
 (eigh)m(t)h(prior)d(to)j(computing)e(the)h(the)g(anomalies)h(and)150
-3790 y(the)j(standard)e(deviation.)275 3986 y(The)k(pro)s(cedure)g(to)i
+5070 y(the)j(standard)e(deviation.)275 5230 y(The)k(pro)s(cedure)g(to)i
 (compute)g(the)g(standard)e(deviation)i(of)g(a)f(time-series)i(across)f
-(m)m(ultiple)g(\014les)150 4096 y(in)m(v)m(olv)m(es)d(one)f(extra)g
+(m)m(ultiple)g(\014les)150 5340 y(in)m(v)m(olv)m(es)d(one)f(extra)g
 (step)g(since)f(all)i(the)e(input)g(m)m(ust)g(\014rst)f(b)s(e)h
-(collected)j(in)m(to)e(one)g(\014le.)390 4291 y Fy(ncrcat)46
-b(-O)h(-v)g(tpt)g(in.nc)g(in.nc)f(foo1.nc)390 4401 y(ncwa)h(-O)g(-a)g
-(time)g(foo1.nc)e(foo2.nc)390 4511 y(ncbo)i(-O)g(-v)g(tpt)g(foo1.nc)f
-(foo2.nc)g(foo3.nc)390 4620 y(ncra)h(-O)g(-y)g(rmssdn)f(foo3.nc)g
-(out.nc)275 4816 y FD(The)32 b(\014rst)g(step)h(assem)m(bles)h(all)g
-(the)f(data)h(in)m(to)g(a)f(single)h(\014le.)48 b(Though)32
-b(this)h(ma)m(y)h(consume)f(a)g(lot)150 4925 y(of)28
-b(temp)s(orary)g(disk)f(space,)i(it)g(is)f(more)g(or)g(less)g(required)
-f(b)m(y)h(the)g Fy(ncbo)f FD(op)s(eration)i(in)e(the)i(third)e(step.)
-150 5267 y FB(3.33)68 b(T)l(yp)t(e)45 b(Con)l(v)l(ersion)p
-eop end
-%%Page: 90 96
-TeXDict begin 90 95 bop 150 -116 a FD(90)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 51 y Fk(\013)p 200 51 3554
-4 v 3553 w(\010)p 150 766 4 666 v 178 193 a FD(Av)-5
-b(ailabilit)m(y)33 b(\(automatic)g(t)m(yp)s(e)d(con)m(v)m(ersion\):)43
-b Fy(ncap2)p FD(,)29 b Fy(ncbo)p FD(,)g Fy(nces)p FD(,)h
-Fy(ncflint)p FD(,)e Fy(ncra)p FD(,)i Fy(ncwa)178 302
-y FD(Short)g(options:)41 b(None)31 b(\(it's)g Fo(automatic)5
-b FD(\))178 412 y(Av)-5 b(ailabilit)m(y)33 b(\(man)m(ual)e(t)m(yp)s(e)g
-(con)m(v)m(ersion\):)42 b Fy(nces)p FD(,)30 b Fy(ncra)p
-FD(,)f Fy(ncwa)178 521 y FD(Short)h(options:)41 b(None)178
-631 y(Long)31 b(options:)41 b(`)p Fy(--dbl)p FD(',)29
-b(`)p Fy(--flt)p FD(',)h(`)p Fy(--rth_dbl)p FD(',)f(`)p
-Fy(--rth_flt)p FD(')p 3803 766 V 150 817 a Fk(\012)p
-200 817 3554 4 v 3553 w(\011)275 987 y FD(T)m(yp)s(e)39
-b(con)m(v)m(ersion)j(refers)d(to)i(the)f(casting)i(or)e(co)s(ercion)h
-(of)f(one)g(fundamen)m(tal)g(or)h(atomic)g(data)150 1097
-y(t)m(yp)s(e)34 b(to)h(another,)h(e.g.,)g(con)m(v)m(erting)g
-Fy(NC_SHORT)c FD(\(t)m(w)m(o)k(b)m(ytes\))f(to)g Fy(NC_DOUBLE)d
-FD(\(eigh)m(t)k(b)m(ytes\).)52 b(T)m(yp)s(e)150 1206
-y(con)m(v)m(ersion)31 b(alw)m(a)m(ys)h Fz(promotes)i
-FD(or)c Fz(demotes)k FD(the)c(range)g(and/or)g(precision)g(of)g(the)h
-(v)-5 b(alues)30 b(a)g(v)-5 b(ariable)150 1316 y(can)44
+(collected)j(in)m(to)e(one)g(\014le.)p eop end
+%%Page: 100 106
+TeXDict begin 100 105 bop 150 -116 a FE(100)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(ncrcat)46 b(-O)h(-v)g(tpt)g
+(in.nc)g(in.nc)f(foo1.nc)390 408 y(ncwa)h(-O)g(-a)g(time)g(foo1.nc)e
+(foo2.nc)390 518 y(ncbo)i(-O)g(-v)g(tpt)g(foo1.nc)f(foo2.nc)g(foo3.nc)
+390 628 y(ncra)h(-O)g(-y)g(rmssdn)f(foo3.nc)g(out.nc)275
+794 y FE(The)32 b(\014rst)g(step)h(assem)m(bles)h(all)g(the)f(data)h
+(in)m(to)g(a)f(single)h(\014le.)48 b(Though)32 b(this)h(ma)m(y)h
+(consume)f(a)g(lot)150 904 y(of)28 b(temp)s(orary)g(disk)f(space,)i(it)
+g(is)f(more)g(or)g(less)g(required)f(b)m(y)h(the)g Fz(ncbo)f
+FE(op)s(eration)i(in)e(the)i(third)e(step.)150 1158 y
+FC(3.34)68 b(T)l(yp)t(e)45 b(Con)l(v)l(ersion)150 1292
+y Fl(\013)p 200 1292 3554 4 v 3553 w(\010)p 150 2006
+4 666 v 178 1433 a FE(Av)-5 b(ailabilit)m(y)33 b(\(automatic)g(t)m(yp)s
+(e)d(con)m(v)m(ersion\):)43 b Fz(ncap2)p FE(,)29 b Fz(ncbo)p
+FE(,)g Fz(nces)p FE(,)h Fz(ncflint)p FE(,)e Fz(ncra)p
+FE(,)i Fz(ncwa)178 1543 y FE(Short)g(options:)41 b(None)31
+b(\(it's)g Fp(automatic)5 b FE(\))178 1652 y(Av)-5 b(ailabilit)m(y)33
+b(\(man)m(ual)e(t)m(yp)s(e)g(con)m(v)m(ersion\):)42 b
+Fz(nces)p FE(,)30 b Fz(ncra)p FE(,)f Fz(ncwa)178 1762
+y FE(Short)h(options:)41 b(None)178 1871 y(Long)31 b(options:)41
+b(`)p Fz(--dbl)p FE(',)29 b(`)p Fz(--flt)p FE(',)h(`)p
+Fz(--rth_dbl)p FE(',)f(`)p Fz(--rth_flt)p FE(')p 3803
+2006 V 150 2057 a Fl(\012)p 200 2057 3554 4 v 3553 w(\011)275
+2235 y FE(T)m(yp)s(e)39 b(con)m(v)m(ersion)j(refers)d(to)i(the)f
+(casting)i(or)e(co)s(ercion)h(of)f(one)g(fundamen)m(tal)g(or)h(atomic)g
+(data)150 2345 y(t)m(yp)s(e)34 b(to)h(another,)h(e.g.,)g(con)m(v)m
+(erting)g Fz(NC_SHORT)c FE(\(t)m(w)m(o)k(b)m(ytes\))f(to)g
+Fz(NC_DOUBLE)d FE(\(eigh)m(t)k(b)m(ytes\).)52 b(T)m(yp)s(e)150
+2454 y(con)m(v)m(ersion)31 b(alw)m(a)m(ys)h FA(promotes)i
+FE(or)c FA(demotes)k FE(the)c(range)g(and/or)g(precision)g(of)g(the)h
+(v)-5 b(alues)30 b(a)g(v)-5 b(ariable)150 2564 y(can)44
 b(hold.)81 b(T)m(yp)s(e)43 b(con)m(v)m(ersion)i(is)f(automatic)i(when)c
 (the)i(language)i(carries)e(out)g(this)g(promotion)150
-1426 y(according)30 b(to)f(an)g(in)m(ternal)g(set)h(of)f(rules)f
+2673 y(according)30 b(to)f(an)g(in)m(ternal)g(set)h(of)f(rules)f
 (without)h(explicit)h(user)e(in)m(terv)m(en)m(tion.)42
-b(In)28 b(con)m(trast,)j(man)m(ual)150 1535 y(t)m(yp)s(e)20
+b(In)28 b(con)m(trast,)j(man)m(ual)150 2783 y(t)m(yp)s(e)20
 b(con)m(v)m(ersion)i(refers)e(to)h(explicit)h(user)d(commands)h(to)h(c)
 m(hange)h(the)e(t)m(yp)s(e)g(of)h(a)g(v)-5 b(ariable)21
-b(or)f(attribute.)150 1645 y(Most)28 b(t)m(yp)s(e)g(con)m(v)m(ersion)g
+b(or)f(attribute.)150 2892 y(Most)28 b(t)m(yp)s(e)g(con)m(v)m(ersion)g
 (happ)s(ens)e(automatically)-8 b(,)31 b(y)m(et)d(there)g(are)f
 (situations)h(in)f(whic)m(h)g(man)m(ual)h(t)m(yp)s(e)150
-1754 y(con)m(v)m(ersion)k(is)e(adv)-5 b(an)m(tageous.)150
-1941 y Fu(3.33.1)63 b(Automatic)40 b(t)m(yp)s(e)h(con)m(v)m(ersion)150
-2088 y FD(There)27 b(are)g(at)h(least)g(t)m(w)m(o)h(reasons)e(to)h(a)m
+3002 y(con)m(v)m(ersion)k(is)e(adv)-5 b(an)m(tageous.)150
+3216 y Fv(3.34.1)63 b(Automatic)40 b(t)m(yp)s(e)h(con)m(v)m(ersion)150
+3363 y FE(There)27 b(are)g(at)h(least)g(t)m(w)m(o)h(reasons)e(to)h(a)m
 (v)m(oid)g(t)m(yp)s(e)f(con)m(v)m(ersions.)41 b(First,)28
 b(t)m(yp)s(e)g(con)m(v)m(ersions)g(are)f(exp)s(en-)150
-2198 y(siv)m(e)32 b(since)g(they)g(require)f(creating)h(\(temp)s
+3472 y(siv)m(e)32 b(since)g(they)g(require)f(creating)h(\(temp)s
 (orary\))g(bu\013ers)e(and)h(casting)h(eac)m(h)h(elemen)m(t)g(of)e(a)h
-(v)-5 b(ariable)150 2307 y(from)38 b(its)g(storage)h(t)m(yp)s(e)g(to)f
+(v)-5 b(ariable)150 3582 y(from)38 b(its)g(storage)h(t)m(yp)s(e)g(to)f
 (some)h(other)f(t)m(yp)s(e)g(and)g(then,)h(often,)i(con)m(v)m(erting)f
-(it)e(bac)m(k.)65 b(Second,)40 b(a)150 2417 y(dataset's)31
+(it)e(bac)m(k.)65 b(Second,)40 b(a)150 3692 y(dataset's)31
 b(creator)f(p)s(erhaps)d(had)i(a)g(go)s(o)s(d)g(reason)h(for)e(storing)
-i(data)g(as,)g(sa)m(y)-8 b(,)30 b Fy(NC_FLOAT)d FD(rather)i(than)150
-2526 y Fy(NC_DOUBLE)p FD(.)45 b(In)32 b(a)h(scien)m(ti\014c)h(framew)m
+i(data)g(as,)g(sa)m(y)-8 b(,)30 b Fz(NC_FLOAT)d FE(rather)i(than)150
+3801 y Fz(NC_DOUBLE)p FE(.)45 b(In)32 b(a)h(scien)m(ti\014c)h(framew)m
 (ork)f(there)g(is)g(no)f(reason)h(to)h(store)f(data)g(with)g(more)g
-(precision)150 2636 y(than)e(the)g(observ)-5 b(ations)32
+(precision)150 3911 y(than)e(the)g(observ)-5 b(ations)32
 b(merit.)44 b(Normally)32 b(this)f(is)g(single-precision,)i(whic)m(h)e
-(guaran)m(tees)i(6{9)f(digits)150 2746 y(of)38 b(precision.)63
+(guaran)m(tees)i(6{9)f(digits)150 4020 y(of)38 b(precision.)63
 b(Reasons)39 b(to)f(engage)i(in)d(t)m(yp)s(e)h(con)m(v)m(ersion)h
 (include)f(a)m(v)m(oiding)i(rounding)c(errors)i(and)150
-2855 y(out-of-range)25 b(limitations)g(of)f(less-precise)g(t)m(yp)s
+4130 y(out-of-range)25 b(limitations)g(of)f(less-precise)g(t)m(yp)s
 (es.)39 b(This)22 b(is)i(the)g(case)g(with)f(most)h(in)m(tegers.)40
-b(Th)m(us)22 b FC(NCO)150 2965 y FD(defaults)31 b(to)g(automatically)i
+b(Th)m(us)22 b FD(NCO)150 4240 y FE(defaults)31 b(to)g(automatically)i
 (promote)e(in)m(teger)h(t)m(yp)s(es)f(to)g(\015oating)h(p)s(oin)m(t)e
-(when)g(p)s(erforming)f(length)m(y)150 3074 y(arithmetic,)j(y)m(et)f
-FC(NCO)g FD(defaults)f(to)h(not)g(promoting)f(single)h(to)g
-(double-precision)g(\015oats.)275 3234 y(Before)g(discussing)g(the)g
+(when)g(p)s(erforming)f(length)m(y)150 4349 y(arithmetic,)j(y)m(et)f
+FD(NCO)g FE(defaults)f(to)h(not)g(promoting)f(single)h(to)g
+(double-precision)g(\015oats.)275 4516 y(Before)g(discussing)g(the)g
 (more)g(subtle)g(\015oating)h(p)s(oin)m(t)e(issues,)h(w)m(e)h(\014rst)e
-(examine)i(in)m(teger)g(promo-)150 3343 y(tion.)69 b(W)-8
+(examine)i(in)m(teger)g(promo-)150 4625 y(tion.)69 b(W)-8
 b(e)41 b(will)f(sho)m(w)g(ho)m(w)g(follo)m(wing)h(parsimonious)e(con)m
 (v)m(ersion)i(rules)e(dogmatically)j(can)e(cause)150
-3453 y(problems,)27 b(and)g(what)g FC(NCO)g FD(do)s(es)f(ab)s(out)h
+4735 y(problems,)27 b(and)g(what)g FD(NCO)g FE(do)s(es)f(ab)s(out)h
 (that.)41 b(That)27 b(said,)h(there)f(are)g(situations)h(in)f(whic)m(h)
-g(implicit)150 3563 y(con)m(v)m(ersion)35 b(of)f(single-)g(to)h
+g(implicit)150 4845 y(con)m(v)m(ersion)35 b(of)f(single-)g(to)h
 (double-precision)e(is)h(also)g(w)m(arran)m(ted.)51 b(Understanding)33
-b(the)h(narro)m(wness)150 3672 y(of)j(these)h(situations)g(tak)m(es)g
+b(the)h(narro)m(wness)150 4954 y(of)j(these)h(situations)g(tak)m(es)g
 (time,)i(and)c(w)m(e)i(hop)s(e)e(the)i(reader)f(appreciates)h(the)f
-(follo)m(wing)i(detailed)150 3782 y(discussion.)275 3941
+(follo)m(wing)i(detailed)150 5064 y(discussion.)275 5230
 y(Consider)k(the)h(a)m(v)m(erage)j(of)e(the)f(t)m(w)m(o)h
-Fy(NC_SHORT)p FD(s)d Fy(17000s)h FD(and)g Fy(17000s)p
-FD(.)81 b(A)44 b(straigh)m(tforw)m(ard)150 4051 y(a)m(v)m(erage)28
+Fz(NC_SHORT)p FE(s)d Fz(17000s)h FE(and)g Fz(17000s)p
+FE(.)81 b(A)44 b(straigh)m(tforw)m(ard)150 5340 y(a)m(v)m(erage)28
 b(without)d(promotion)g(results)f(in)h(garbage)h(since)g(the)f(in)m
-(termediate)h(v)-5 b(alue)26 b(whic)m(h)e(holds)h(their)150
-4160 y(sum)32 b(is)h(also)h(of)g(t)m(yp)s(e)f Fy(NC_SHORT)e
-FD(and)h(th)m(us)h(o)m(v)m(er\015o)m(ws)h(on)g(\(i.e.,)h(cannot)f
-(represen)m(t\))f(v)-5 b(alues)34 b(greater)150 4270
-y(than)27 b(32,767)609 4237 y Ft(23)681 4270 y FD(.)40
-b(There)26 b(are)i(v)-5 b(alid)27 b(reasons)g(for)f(exp)s(ecting)i
-(this)f(op)s(eration)g(to)h(succeed)f(and)f(the)h FC(NCO)150
-4380 y FD(philosoph)m(y)h(is)g(to)i(mak)m(e)f(op)s(erators)f(do)h(what)
-f(y)m(ou)h(w)m(an)m(t,)g(not)g(what)f(is)h(purest.)39
-b(Th)m(us,)28 b(unlik)m(e)h(C)f(and)150 4489 y(F)-8 b(ortran,)32
-b(but)e(lik)m(e)i(man)m(y)f(other)g(higher)f(lev)m(el)j(in)m(terpreted)
-e(languages,)h FC(NCO)f FD(arithmetic)h(op)s(erators)150
-4599 y(will)38 b(p)s(erform)e(automatic)j(t)m(yp)s(e)f(con)m(v)m
-(ersion)g(on)g(in)m(tegers)g(when)f(all)h(the)g(follo)m(wing)h
-(conditions)f(are)150 4708 y(met)301 4675 y Ft(24)372
-4708 y FD(:)199 4868 y(1.)61 b(The)35 b(requested)h(op)s(eration)g(is)f
+(termediate)h(v)-5 b(alue)26 b(whic)m(h)e(holds)h(their)p
+eop end
+%%Page: 101 107
+TeXDict begin 101 106 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2362 b(101)150 299 y(sum)32
+b(is)h(also)h(of)g(t)m(yp)s(e)f Fz(NC_SHORT)e FE(and)h(th)m(us)h(o)m(v)
+m(er\015o)m(ws)h(on)g(\(i.e.,)h(cannot)f(represen)m(t\))f(v)-5
+b(alues)34 b(greater)150 408 y(than)27 b(32,767)609 375
+y Fu(26)681 408 y FE(.)40 b(There)26 b(are)i(v)-5 b(alid)27
+b(reasons)g(for)f(exp)s(ecting)i(this)f(op)s(eration)g(to)h(succeed)f
+(and)f(the)h FD(NCO)150 518 y FE(philosoph)m(y)h(is)g(to)i(mak)m(e)f
+(op)s(erators)f(do)h(what)f(y)m(ou)h(w)m(an)m(t,)g(not)g(what)f(is)h
+(purest.)39 b(Th)m(us,)28 b(unlik)m(e)h(C)f(and)150 628
+y(F)-8 b(ortran,)32 b(but)e(lik)m(e)i(man)m(y)f(other)g(higher)f(lev)m
+(el)j(in)m(terpreted)e(languages,)h FD(NCO)f FE(arithmetic)h(op)s
+(erators)150 737 y(will)38 b(p)s(erform)e(automatic)j(t)m(yp)s(e)f(con)
+m(v)m(ersion)g(on)g(in)m(tegers)g(when)f(all)h(the)g(follo)m(wing)h
+(conditions)f(are)150 847 y(met)301 814 y Fu(27)372 847
+y FE(:)199 1008 y(1.)61 b(The)35 b(requested)h(op)s(eration)g(is)f
 (arithmetic.)58 b(This)34 b(is)i(wh)m(y)f(t)m(yp)s(e)h(con)m(v)m
-(ersion)h(is)e(limited)h(to)h(the)330 4977 y(op)s(erators)31
-b Fy(ncap2)p FD(,)e Fy(ncbo)p FD(,)g Fy(nces)p FD(,)h
-Fy(ncflint)p FD(,)e Fy(ncra)p FD(,)i(and)g Fy(ncwa)p
-FD(.)p 150 5051 1200 4 v 166 5118 a Ft(23)300 5150 y
-Fs(32767)23 b(=)f(2)633 5118 y Ft(15)720 5150 y Fe(\000)17
-b Fs(1)166 5221 y Ft(24)275 5253 y Fs(Op)r(erators)27
-b(b)r(egan)g(p)r(erforming)h(automatic)g(t)n(yp)r(e)e(con)n(v)n
-(ersions)h(b)r(efore)h(arithmetic)g(in)e Fp(NCO)h Fs(v)n(ersion)f(1.2)q
-(,)h(August,)275 5340 y(2000.)36 b(Previous)26 b(v)n(ersions)g(nev)n
-(er)f(p)r(erformed)h(unnecessary)g(t)n(yp)r(e)f(con)n(v)n(ersion)h(for)
-g(arithmetic.)p eop end
-%%Page: 91 97
-TeXDict begin 91 96 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(91)199 299 y(2.)61 b(The)36
-b(arithmetic)h(op)s(eration)g(could)f(b)s(ene\014t)f(from)h(t)m(yp)s(e)
-g(con)m(v)m(ersion.)59 b(Op)s(erations)36 b(that)h(could)330
-408 y(b)s(ene\014t)27 b(include)i(a)m(v)m(eraging,)i(summation,)e(or)f
-(an)m(y)h(\\hard")f(arithmetic)i(that)f(could)f(o)m(v)m(er\015o)m(w)i
-(or)330 518 y(under\015o)m(w.)39 b(Larger)29 b(represen)m(table)g(sums)
-e(help)i(a)m(v)m(oid)h(o)m(v)m(er\015o)m(w,)g(and)f(more)f(precision)h
-(helps)f(to)330 628 y(a)m(v)m(oid)34 b(under\015o)m(w.)45
-b(T)m(yp)s(e)32 b(con)m(v)m(ersion)i(do)s(es)e(not)g(b)s(ene\014t)g
-(searc)m(hing)h(for)f(minima)h(and)e(maxima)330 737 y(\(`)p
-Fy(-y)f(min)p FD(',)g(or)h(`)p Fy(-y)f(max)p FD('\).)199
-879 y(3.)61 b(The)37 b(v)-5 b(ariable)39 b(on)f(disk)f(is)h(of)g(t)m
-(yp)s(e)g Fy(NC_BYTE)p FD(,)g Fy(NC_CHAR)p FD(,)g Fy(NC_SHORT)p
-FD(,)g(or)g Fy(NC_INT)p FD(.)61 b(T)m(yp)s(e)38 b Fy(NC_)330
-988 y(DOUBLE)22 b FD(is)h(not)h(promoted)f(b)s(ecause)h(there)f(is)h
+(ersion)h(is)e(limited)h(to)h(the)330 1118 y(op)s(erators)31
+b Fz(ncap2)p FE(,)e Fz(ncbo)p FE(,)g Fz(nces)p FE(,)h
+Fz(ncflint)p FE(,)e Fz(ncra)p FE(,)i(and)g Fz(ncwa)p
+FE(.)199 1255 y(2.)61 b(The)36 b(arithmetic)h(op)s(eration)g(could)f(b)
+s(ene\014t)f(from)h(t)m(yp)s(e)g(con)m(v)m(ersion.)59
+b(Op)s(erations)36 b(that)h(could)330 1364 y(b)s(ene\014t)27
+b(include)i(a)m(v)m(eraging,)i(summation,)e(or)f(an)m(y)h(\\hard")f
+(arithmetic)i(that)f(could)f(o)m(v)m(er\015o)m(w)i(or)330
+1474 y(under\015o)m(w.)39 b(Larger)29 b(represen)m(table)g(sums)e(help)
+i(a)m(v)m(oid)h(o)m(v)m(er\015o)m(w,)g(and)f(more)f(precision)h(helps)f
+(to)330 1584 y(a)m(v)m(oid)34 b(under\015o)m(w.)45 b(T)m(yp)s(e)32
+b(con)m(v)m(ersion)i(do)s(es)e(not)g(b)s(ene\014t)g(searc)m(hing)h(for)
+f(minima)h(and)e(maxima)330 1693 y(\(`)p Fz(-y)f(min)p
+FE(',)g(or)h(`)p Fz(-y)f(max)p FE('\).)199 1830 y(3.)61
+b(The)37 b(v)-5 b(ariable)39 b(on)f(disk)f(is)h(of)g(t)m(yp)s(e)g
+Fz(NC_BYTE)p FE(,)g Fz(NC_CHAR)p FE(,)g Fz(NC_SHORT)p
+FE(,)g(or)g Fz(NC_INT)p FE(.)61 b(T)m(yp)s(e)38 b Fz(NC_)330
+1940 y(DOUBLE)22 b FE(is)h(not)h(promoted)f(b)s(ecause)h(there)f(is)h
 (no)f(t)m(yp)s(e)h(of)f(higher)h(precision.)38 b(Con)m(v)m(ersion)24
-b(of)g(t)m(yp)s(e)330 1098 y Fy(NC_FLOAT)31 b FD(is)i(discussed)f(in)h
+b(of)g(t)m(yp)s(e)330 2049 y Fz(NC_FLOAT)31 b FE(is)i(discussed)f(in)h
 (detail)h(b)s(elo)m(w.)49 b(When)33 b(it)h(o)s(ccurs,)f(it)h(follo)m
-(ws)g(the)g(same)f(pro)s(cedure)330 1207 y(\(promotion)e(then)f
+(ws)g(the)g(same)f(pro)s(cedure)330 2159 y(\(promotion)e(then)f
 (arithmetic)i(then)e(demotion\))h(as)g(con)m(v)m(ersion)g(of)g(in)m
-(teger)h(t)m(yp)s(es.)275 1406 y(When)e(these)i(criteria)g(are)g(all)g
+(teger)h(t)m(yp)s(es.)275 2348 y(When)e(these)i(criteria)g(are)g(all)g
 (met,)g(the)f(op)s(erator)g(promotes)h(the)f(v)-5 b(ariable)32
-b(in)f(question)g(to)h(t)m(yp)s(e)150 1515 y Fy(NC_DOUBLE)p
-FD(,)h(p)s(erforms)g(all)i(the)g(arithmetic)h(op)s(erations,)g(casts)f
-(the)g Fy(NC_DOUBLE)d FD(t)m(yp)s(e)i(bac)m(k)i(to)f(the)150
-1625 y(original)g(t)m(yp)s(e,)g(and)e(\014nally)h(writes)g(the)g
+b(in)f(question)g(to)h(t)m(yp)s(e)150 2457 y Fz(NC_DOUBLE)p
+FE(,)h(p)s(erforms)g(all)i(the)g(arithmetic)h(op)s(erations,)g(casts)f
+(the)g Fz(NC_DOUBLE)d FE(t)m(yp)s(e)i(bac)m(k)i(to)f(the)150
+2567 y(original)g(t)m(yp)s(e,)g(and)e(\014nally)h(writes)g(the)g
 (result)g(to)g(disk.)51 b(The)33 b(result)h(written)g(to)h(disk)e(ma)m
-(y)h(not)h(b)s(e)150 1734 y(what)40 b(y)m(ou)f(exp)s(ect,)k(b)s(ecause)
+(y)h(not)h(b)s(e)150 2676 y(what)40 b(y)m(ou)f(exp)s(ect,)k(b)s(ecause)
 d(of)g(incommensurate)f(ranges)h(represen)m(ted)g(b)m(y)f(di\013eren)m
-(t)h(t)m(yp)s(es,)j(and)150 1844 y(b)s(ecause)34 b(of)g(\(lac)m(k)i(of)
+(t)h(t)m(yp)s(es,)j(and)150 2786 y(b)s(ecause)34 b(of)g(\(lac)m(k)i(of)
 7 b(\))34 b(rounding.)50 b(First,)35 b(con)m(tin)m(uing)g(the)f(ab)s(o)
 m(v)m(e)h(example,)h(the)e(a)m(v)m(erage)j(\(e.g.,)f(`)p
-Fy(-y)150 1954 y(avg)p FD('\))20 b(of)h Fy(17000s)d FD(and)i
-Fy(17000s)f FD(is)h(written)h(to)g(disk)f(as)h Fy(17000s)p
-FD(.)35 b(The)20 b(t)m(yp)s(e)h(con)m(v)m(ersion)h(feature)f(of)f
-FC(NCO)150 2063 y FD(mak)m(es)30 b(this)f(p)s(ossible)g(since)g(the)h
+Fz(-y)150 2895 y(avg)p FE('\))20 b(of)h Fz(17000s)d FE(and)i
+Fz(17000s)f FE(is)h(written)h(to)g(disk)f(as)h Fz(17000s)p
+FE(.)35 b(The)20 b(t)m(yp)s(e)h(con)m(v)m(ersion)h(feature)f(of)f
+FD(NCO)150 3005 y FE(mak)m(es)30 b(this)f(p)s(ossible)g(since)g(the)h
 (arithmetic)g(and)f(in)m(termediate)i(v)-5 b(alues)29
-b(are)h(stored)f(as)g Fy(NC_DOUBLE)p FD(s,)150 2173 y(i.e.,)k
-Fy(34000.0d)c FD(and)i(only)h(the)f(\014nal)h(result)f(m)m(ust)g(b)s(e)
-g(represen)m(ted)h(as)f(an)h Fy(NC_SHORT)p FD(.)41 b(Without)33
-b(the)150 2282 y(t)m(yp)s(e)i(con)m(v)m(ersion)i(feature)f(of)f
-FC(NCO)p FD(,)i(the)e(a)m(v)m(erage)j(w)m(ould)d(ha)m(v)m(e)i(b)s(een)d
-(garbage)j(\(alb)s(eit)f(predictable)150 2392 y(garbage)25
-b(near)f Fy(-15768s)p FD(\).)37 b(Similarly)-8 b(,)25
-b(the)f(total)i(\(e.g.,)h(`)p Fy(-y)j(ttl)p FD('\))23
-b(of)h Fy(17000s)e FD(and)h Fy(17000s)f FD(written)i(to)150
-2502 y(disk)29 b(is)h(garbage)h(\(actually)h Fy(-31536s)p
-FD(\))c(since)j(the)f(\014nal)f(result)h(\(the)g(true)g(total\))i(of)e
-(34000)i(is)e(outside)150 2611 y(the)h(range)f(of)h(t)m(yp)s(e)f
-Fy(NC_SHORT)p FD(.)275 2778 y(After)20 b(arithmetic)i(is)f(computed)f
+b(are)h(stored)f(as)g Fz(NC_DOUBLE)p FE(s,)150 3115 y(i.e.,)k
+Fz(34000.0d)c FE(and)i(only)h(the)f(\014nal)h(result)f(m)m(ust)g(b)s(e)
+g(represen)m(ted)h(as)f(an)h Fz(NC_SHORT)p FE(.)41 b(Without)33
+b(the)150 3224 y(t)m(yp)s(e)i(con)m(v)m(ersion)i(feature)f(of)f
+FD(NCO)p FE(,)i(the)e(a)m(v)m(erage)j(w)m(ould)d(ha)m(v)m(e)i(b)s(een)d
+(garbage)j(\(alb)s(eit)f(predictable)150 3334 y(garbage)25
+b(near)f Fz(-15768s)p FE(\).)37 b(Similarly)-8 b(,)25
+b(the)f(total)i(\(e.g.,)h(`)p Fz(-y)j(ttl)p FE('\))23
+b(of)h Fz(17000s)e FE(and)h Fz(17000s)f FE(written)i(to)150
+3443 y(disk)29 b(is)h(garbage)h(\(actually)h Fz(-31536s)p
+FE(\))c(since)j(the)f(\014nal)f(result)h(\(the)g(true)g(total\))i(of)e
+(34000)i(is)e(outside)150 3553 y(the)h(range)f(of)h(t)m(yp)s(e)f
+Fz(NC_SHORT)p FE(.)275 3715 y(After)20 b(arithmetic)i(is)f(computed)f
 (in)g(double-precision)h(for)g(promoted)f(v)-5 b(ariables,)24
-b(the)c(in)m(termediate)150 2887 y(double-precision)31
+b(the)c(in)m(termediate)150 3824 y(double-precision)31
 b(v)-5 b(alues)32 b(m)m(ust)f(b)s(e)g(demoted)g(to)h(the)f(v)-5
 b(ariables')33 b(original)f(storage)h(t)m(yp)s(e)e(\(e.g.,)i(from)150
-2997 y Fy(NC_DOUBLE)39 b FD(to)j Fy(NC_SHORT)p FD(\).)71
-b FC(NCO)41 b FD(has)g(handled)f(this)h(demotion)h(in)f(three)g(w)m(a)m
-(ys)h(in)f(its)g(history)-8 b(.)150 3106 y(Prior)44 b(to)h(Octob)s(er,)
-k(2011)d(\(v)m(ersion)f(4.0.8\),)50 b FC(NCO)45 b FD(emplo)m(y)m(ed)g
-(the)g(C)30 b(library)44 b(truncate)h(function,)150 3216
-y Fy(trunc\(\))486 3183 y Ft(25)554 3216 y FD(.)60 b(T)-8
-b(runcation)37 b(rounds)e Fz(x)43 b FD(to)38 b(the)f(nearest)g(in)m
+3934 y Fz(NC_DOUBLE)39 b FE(to)j Fz(NC_SHORT)p FE(\).)71
+b FD(NCO)41 b FE(has)g(handled)f(this)h(demotion)h(in)f(three)g(w)m(a)m
+(ys)h(in)f(its)g(history)-8 b(.)150 4043 y(Prior)44 b(to)h(Octob)s(er,)
+k(2011)d(\(v)m(ersion)f(4.0.8\),)50 b FD(NCO)45 b FE(emplo)m(y)m(ed)g
+(the)g(C)30 b(library)44 b(truncate)h(function,)150 4153
+y Fz(trunc\(\))486 4120 y Fu(28)554 4153 y FE(.)60 b(T)-8
+b(runcation)37 b(rounds)e FA(x)43 b FE(to)38 b(the)f(nearest)g(in)m
 (teger)h(not)f(larger)h(in)e(absolute)i(v)-5 b(alue.)60
-b(F)-8 b(or)150 3325 y(example,)26 b(truncation)d(rounds)f
-Fy(1.0d)p FD(,)i Fy(1.5d)p FD(,)f(and)g Fy(1.8d)f FD(to)i(the)g(same)g
-(v)-5 b(alue,)25 b Fy(1s)p FD(.)38 b(Clearly)-8 b(,)26
-b(truncation)150 3435 y(do)s(es)36 b(not)h(round)f(\015oating)h(p)s
+b(F)-8 b(or)150 4263 y(example,)26 b(truncation)d(rounds)f
+Fz(1.0d)p FE(,)i Fz(1.5d)p FE(,)f(and)g Fz(1.8d)f FE(to)i(the)g(same)g
+(v)-5 b(alue,)25 b Fz(1s)p FE(.)38 b(Clearly)-8 b(,)26
+b(truncation)150 4372 y(do)s(es)36 b(not)h(round)f(\015oating)h(p)s
 (oin)m(t)g(n)m(um)m(b)s(ers)e(to)j(the)f(nearest)g(in)m(teger!)61
-b(Y)-8 b(et)38 b(truncation)f(is)g(ho)m(w)g(the)150 3545
+b(Y)-8 b(et)38 b(truncation)f(is)g(ho)m(w)g(the)150 4482
 y(C)30 b(language)i(p)s(erforms)d(implicit)i(con)m(v)m(ersion)h(of)e
-(real)h(n)m(um)m(b)s(ers)e(to)i(in)m(tegers.)275 3711
-y FC(NCO)k FD(stopp)s(ed)g(using)g(truncation)h(for)g(demotion)g(when)f
+(real)h(n)m(um)m(b)s(ers)e(to)i(in)m(tegers.)275 4643
+y FD(NCO)k FE(stopp)s(ed)g(using)g(truncation)h(for)g(demotion)g(when)f
 (an)g(alert)i(user)e(\(Neil)i(Da)m(vis\))h(informed)150
-3821 y(us)32 b(that)h(this)f(caused)h(a)f(small)h(bias)g(in)f(the)h
-(pac)m(king)g(algorithm)h(emplo)m(y)m(ed)f(b)m(y)f Fy(ncpdq)p
-FD(.)46 b(This)32 b(led)g(to)150 3930 y FC(NCO)h FD(adopting)h
-(rounding)f(functions)g(for)g(demotion.)51 b(Rounding)33
-b(functions)g(eliminated)i(the)e(small)150 4040 y(bias)d(in)g(the)h
-(pac)m(king)g(algorithm.)275 4206 y(F)-8 b(rom)42 b(F)-8
-b(ebruary)g(,)44 b(2012)f(through)e(Marc)m(h,)k(2013)f(\(v)m(ersions)e
-(4.0.9{4.2.6\),)49 b FC(NCO)41 b FD(emplo)m(y)m(ed)i(the)150
-4316 y(C)30 b(library)i(family)g(of)g(rounding)f(functions,)h
-Fy(lround\(\))p FD(.)44 b(These)32 b(functions)f(round)g
-Fz(x)38 b FD(to)33 b(the)f(nearest)150 4425 y(in)m(teger,)d(halfw)m(a)m
-(y)e(cases)g(a)m(w)m(a)m(y)h(from)d(zero.)41 b(The)25
-b(problem)h(with)f Fy(lround\(\))f FD(is)j(that)f(it)h(alw)m(a)m(ys)h
-(rounds)150 4535 y(real)35 b(v)-5 b(alues)35 b(ending)g(in)f
-Fy(.5)g FD(a)m(w)m(a)m(y)j(from)d(zero.)54 b(This)34
-b(rounds,)h(for)f(example,)j Fy(1.5d)c FD(and)i Fy(2.5d)e
-FD(to)j Fy(2s)150 4644 y FD(and)30 b Fy(3s)p FD(,)g(resp)s(ectiv)m(ely)
--8 b(.)275 4811 y(Since)25 b(April,)h(2013)g(\(v)m(ersion)g(4.3.0\),)j
-FC(NCO)c FD(has)f(emplo)m(y)m(ed)i(the)g(other)f(C)30
-b(library)25 b(family)g(of)g(round-)150 4920 y(ing)33
-b(functions,)g Fy(lrint\(\))p FD(.)46 b(This)33 b(algorithm)g(rounds)f
-Fz(x)39 b FD(to)33 b(the)g(nearest)h(in)m(teger,)h(using)d(the)h
-(curren)m(t)150 5030 y(rounding)i(direction.)58 b(Halfw)m(a)m(y)38
+4753 y(us)32 b(that)h(this)f(caused)h(a)f(small)h(bias)g(in)f(the)h
+(pac)m(king)g(algorithm)h(emplo)m(y)m(ed)f(b)m(y)f Fz(ncpdq)p
+FE(.)46 b(This)32 b(led)g(to)p 150 4860 1200 4 v 166
+4928 a Fu(26)300 4960 y Ft(32767)23 b(=)f(2)633 4928
+y Fu(15)720 4960 y Fe(\000)17 b Ft(1)166 5031 y Fu(27)275
+5063 y Ft(Op)r(erators)27 b(b)r(egan)g(p)r(erforming)h(automatic)g(t)n
+(yp)r(e)e(con)n(v)n(ersions)h(b)r(efore)h(arithmetic)g(in)e
+Fq(NCO)h Ft(v)n(ersion)f(1.2)q(,)h(August,)275 5150 y(2000.)36
+b(Previous)26 b(v)n(ersions)g(nev)n(er)f(p)r(erformed)h(unnecessary)g
+(t)n(yp)r(e)f(con)n(v)n(ersion)h(for)g(arithmetic.)166
+5221 y Fu(28)302 5253 y Ft(The)i(actual)h(t)n(yp)r(e)e(con)n(v)n
+(ersions)h(with)g(trunction)f(w)n(ere)i(handled)e(b)n(y)g(in)n(trinsic)
+h(t)n(yp)r(e)f(con)n(v)n(ersion,)i(so)f(the)f Fs(trunc\(\))275
+5340 y Ft(function)e(w)n(as)i(nev)n(er)e(explicitly)h(called,)h
+(although)f(the)f(results)h(w)n(ould)g(b)r(e)g(the)f(same)h(if)h(it)f
+(w)n(ere.)p eop end
+%%Page: 102 108
+TeXDict begin 102 107 bop 150 -116 a FE(102)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FD(NCO)j FE(adopting)h(rounding)f
+(functions)g(for)g(demotion.)51 b(Rounding)33 b(functions)g(eliminated)
+i(the)e(small)150 408 y(bias)d(in)g(the)h(pac)m(king)g(algorithm.)275
+583 y(F)-8 b(rom)42 b(F)-8 b(ebruary)g(,)44 b(2012)f(through)e(Marc)m
+(h,)k(2013)f(\(v)m(ersions)e(4.0.9{4.2.6\),)49 b FD(NCO)41
+b FE(emplo)m(y)m(ed)i(the)150 692 y(C)30 b(library)i(family)g(of)g
+(rounding)f(functions,)h Fz(lround\(\))p FE(.)44 b(These)32
+b(functions)f(round)g FA(x)38 b FE(to)33 b(the)f(nearest)150
+802 y(in)m(teger,)d(halfw)m(a)m(y)e(cases)g(a)m(w)m(a)m(y)h(from)d
+(zero.)41 b(The)25 b(problem)h(with)f Fz(lround\(\))f
+FE(is)j(that)f(it)h(alw)m(a)m(ys)h(rounds)150 911 y(real)35
+b(v)-5 b(alues)35 b(ending)g(in)f Fz(.5)g FE(a)m(w)m(a)m(y)j(from)d
+(zero.)54 b(This)34 b(rounds,)h(for)f(example,)j Fz(1.5d)c
+FE(and)i Fz(2.5d)e FE(to)j Fz(2s)150 1021 y FE(and)30
+b Fz(3s)p FE(,)g(resp)s(ectiv)m(ely)-8 b(.)275 1195 y(Since)25
+b(April,)h(2013)g(\(v)m(ersion)g(4.3.0\),)j FD(NCO)c
+FE(has)f(emplo)m(y)m(ed)i(the)g(other)f(C)30 b(library)25
+b(family)g(of)g(round-)150 1305 y(ing)33 b(functions,)g
+Fz(lrint\(\))p FE(.)46 b(This)33 b(algorithm)g(rounds)f
+FA(x)39 b FE(to)33 b(the)g(nearest)h(in)m(teger,)h(using)d(the)h
+(curren)m(t)150 1414 y(rounding)i(direction.)58 b(Halfw)m(a)m(y)38
 b(cases)f(are)f(rounded)f(to)h(the)h(nearest)f(ev)m(en)h(in)m(teger.)59
-b(This)35 b(rounds,)p 150 5154 1200 4 v 166 5221 a Ft(25)302
-5253 y Fs(The)28 b(actual)h(t)n(yp)r(e)e(con)n(v)n(ersions)h(with)g
-(trunction)f(w)n(ere)i(handled)e(b)n(y)g(in)n(trinsic)h(t)n(yp)r(e)f
-(con)n(v)n(ersion,)i(so)f(the)f Fr(trunc\(\))275 5340
-y Fs(function)e(w)n(as)i(nev)n(er)e(explicitly)h(called,)h(although)f
-(the)f(results)h(w)n(ould)g(b)r(e)g(the)f(same)h(if)h(it)f(w)n(ere.)p
-eop end
-%%Page: 92 98
-TeXDict begin 92 97 bop 150 -116 a FD(92)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(for)39 b(example,)k(b)s(oth)c
-Fy(1.5d)f FD(and)h Fy(2.5d)f FD(to)j(the)e(same)h(v)-5
-b(alue,)43 b Fy(2s)p FD(,)e(as)f(recommended)f(b)m(y)h(the)f
-FC(IEEE)p FD(.)150 408 y(This)30 b(rounding)f(is)i(symmetric:)41
+b(This)35 b(rounds,)150 1524 y(for)k(example,)k(b)s(oth)c
+Fz(1.5d)f FE(and)h Fz(2.5d)f FE(to)j(the)e(same)h(v)-5
+b(alue,)43 b Fz(2s)p FE(,)e(as)f(recommended)f(b)m(y)h(the)f
+FD(IEEE)p FE(.)150 1634 y(This)30 b(rounding)f(is)i(symmetric:)41
 b(up)29 b(half)i(the)g(time,)g(do)m(wn)f(half)h(the)f(time.)42
-b(This)30 b(is)g(the)h(curren)m(t)g(and)150 518 y(hop)s(efully)e
+b(This)30 b(is)g(the)h(curren)m(t)g(and)150 1743 y(hop)s(efully)e
 (\014nal)h(demotion)h(algorithm)h(emplo)m(y)m(ed)f(b)m(y)g
-FC(NCO)p FD(.)275 691 y(Hence)h(b)s(ecause)g(of)g(automatic)i(con)m(v)m
-(ersion,)f FC(NCO)f FD(will)g(compute)g(the)g(a)m(v)m(erage)j(of)d
-Fy(2s)f FD(and)g Fy(3s)g FD(in)150 801 y(double-precision)23
-b(arithmetic)i(as)e(\()p Fy(2)p Fv(:)p Fy(0d)6 b FD(+)g
-Fy(3)p Fv(:)p Fy(0d)o FD(\))p Fv(=)p Fy(2)p Fv(:)p Fy(0d)p
-FD(\))26 b(=)e Fy(2)p Fv(:)p Fy(5d)p FD(.)38 b(It)23
-b(then)g(demotes)h(this)f(in)m(termediate)150 910 y(result)34
-b(bac)m(k)h(to)f Fy(NC_SHORT)e FD(and)h(stores)i(it)f(on)g(disk)g(as)g
-Fy(trunc)p FD(\()p Fy(2)p Fv(:)p Fy(5d)p FD(\))c(=)h
-Fy(2s)i FD(\(v)m(ersions)i(up)e(to)i(4.0.8\),)150 1020
-y Fy(lround)p FD(\()p Fy(2)p Fv(:)p Fy(5d)p FD(\))24
-b(=)h Fy(3s)k FD(\(v)m(ersions)j(4.0.9{4.2.6\),)j(and)29
-b Fy(lrint)p FD(\()p Fy(2)p Fv(:)p Fy(5d)p FD(\))24 b(=)h
-Fy(2s)30 b FD(\(v)m(ersions)h(4.3.0)h(and)e(later\).)150
-1246 y Fu(3.33.2)63 b(Promoting)42 b(Single-precision)h(to)e(Double)150
-1393 y FD(Promotion)k(of)f(real)h(n)m(um)m(b)s(ers)d(from)i(single-)h
+FD(NCO)p FE(.)275 1917 y(Hence)h(b)s(ecause)g(of)g(automatic)i(con)m(v)
+m(ersion,)f FD(NCO)f FE(will)g(compute)g(the)g(a)m(v)m(erage)j(of)d
+Fz(2s)f FE(and)g Fz(3s)g FE(in)150 2027 y(double-precision)23
+b(arithmetic)i(as)e(\()p Fz(2)p Fw(:)p Fz(0d)6 b FE(+)g
+Fz(3)p Fw(:)p Fz(0d)o FE(\))p Fw(=)p Fz(2)p Fw(:)p Fz(0d)p
+FE(\))26 b(=)e Fz(2)p Fw(:)p Fz(5d)p FE(.)38 b(It)23
+b(then)g(demotes)h(this)f(in)m(termediate)150 2137 y(result)34
+b(bac)m(k)h(to)f Fz(NC_SHORT)e FE(and)h(stores)i(it)f(on)g(disk)g(as)g
+Fz(trunc)p FE(\()p Fz(2)p Fw(:)p Fz(5d)p FE(\))c(=)h
+Fz(2s)i FE(\(v)m(ersions)i(up)e(to)i(4.0.8\),)150 2246
+y Fz(lround)p FE(\()p Fz(2)p Fw(:)p Fz(5d)p FE(\))24
+b(=)h Fz(3s)k FE(\(v)m(ersions)j(4.0.9{4.2.6\),)j(and)29
+b Fz(lrint)p FE(\()p Fz(2)p Fw(:)p Fz(5d)p FE(\))24 b(=)h
+Fz(2s)30 b FE(\(v)m(ersions)h(4.3.0)h(and)e(later\).)150
+2475 y Fv(3.34.2)63 b(Promoting)42 b(Single-precision)h(to)e(Double)150
+2622 y FE(Promotion)k(of)f(real)h(n)m(um)m(b)s(ers)d(from)i(single-)h
 (to)g(double-precision)f(is)g(fundamen)m(tal)g(to)h(scien)m(ti\014c)150
-1503 y(computing.)j(When)33 b(it)g(should)f(o)s(ccur)h(dep)s(ends)e(on)
+2732 y(computing.)j(When)33 b(it)g(should)f(o)s(ccur)h(dep)s(ends)e(on)
 h(the)h(precision)g(of)g(the)g(inputs)f(and)g(the)h(n)m(um)m(b)s(er)150
-1612 y(of)e(op)s(erations.)41 b(Single-precision)32 b(\(four-b)m(yte\))
+2841 y(of)e(op)s(erations.)41 b(Single-precision)32 b(\(four-b)m(yte\))
 f(n)m(um)m(b)s(ers)f(con)m(tain)h(ab)s(out)g(sev)m(en)g(signi\014can)m
-(t)g(\014gures,)150 1722 y(while)26 b(double-precision)g(con)m(tain)i
+(t)g(\014gures,)150 2951 y(while)26 b(double-precision)g(con)m(tain)i
 (ab)s(out)d(sixteen.)40 b(More,)28 b(err,)f(precisely)-8
-b(,)28 b(the)e FC(IEEE)f FD(single-precision)150 1831
+b(,)28 b(the)e FD(IEEE)f FE(single-precision)150 3060
 y(represen)m(tation)f(giv)m(es)h(from)e(6)31 b(to)g(9)24
 b(signi\014can)m(t)g(decimal)g(digits)g(precision)2758
-1798 y Ft(26)2829 1831 y FD(.)38 b(And)23 b(the)g FC(IEEE)f
-FD(double-)150 1941 y(precision)39 b(represen)m(tation)h(giv)m(es)h
+3027 y Fu(29)2829 3060 y FE(.)38 b(And)23 b(the)g FD(IEEE)f
+FE(double-)150 3170 y(precision)39 b(represen)m(tation)h(giv)m(es)h
 (from)e(15)31 b(to)g(17)40 b(signi\014can)m(t)g(decimal)g(digits)g
-(precision)3348 1908 y Ft(27)3418 1941 y FD(.)67 b(Hence)150
-2051 y(double-precision)35 b(n)m(um)m(b)s(ers)f(represen)m(t)h(ab)s
+(precision)3348 3137 y Fu(30)3418 3170 y FE(.)67 b(Hence)150
+3279 y(double-precision)35 b(n)m(um)m(b)s(ers)f(represen)m(t)h(ab)s
 (out)f(nine)h(digits)h(more)f(precision)g(than)g(single-precision)150
-2160 y(n)m(um)m(b)s(ers.)275 2333 y(Giv)m(en)40 b(these)f(prop)s
+3389 y(n)m(um)m(b)s(ers.)275 3563 y(Giv)m(en)40 b(these)f(prop)s
 (erties,)j(there)d(are)h(at)g(least)g(t)m(w)m(o)h(p)s(ossible)e
-(arithmetic)h(con)m(v)m(en)m(tions)i(for)d(the)150 2443
+(arithmetic)h(con)m(v)m(en)m(tions)i(for)d(the)150 3673
 y(treatmen)m(t)32 b(of)f(real)g(n)m(um)m(b)s(ers:)199
-2616 y(1.)61 b(Conserv)-5 b(ativ)m(e,)30 b(ak)-5 b(a)29
+3847 y(1.)61 b(Conserv)-5 b(ativ)m(e,)30 b(ak)-5 b(a)29
 b(F)-8 b(ortran)29 b(Con)m(v)m(en)m(tion)g(Automatic)h(t)m(yp)s(e)e
-(con)m(v)m(ersion)h(during)e(arithmetic)i(in)330 2725
+(con)m(v)m(ersion)h(during)e(arithmetic)i(in)330 3957
 y(the)35 b(F)-8 b(ortran)36 b(language)g(is,)h(b)m(y)d(default,)j(p)s
 (erformed)c(only)j(when)e(necessary)-8 b(.)55 b(All)36
-b(op)s(erands)d(in)330 2835 y(an)44 b(op)s(eration)h(are)g(con)m(v)m
+b(op)s(erands)d(in)330 4066 y(an)44 b(op)s(eration)h(are)g(con)m(v)m
 (erted)h(to)f(the)f(most)h(precise)g(t)m(yp)s(e)f(in)m(v)m(olv)m(ed)i
-(the)f(op)s(eration)f(b)s(efore)330 2945 y(the)i(arithmetic)h(op)s
+(the)f(op)s(eration)f(b)s(efore)330 4176 y(the)i(arithmetic)h(op)s
 (eration.)86 b(Expressions)45 b(whic)m(h)g(in)m(v)m(olv)m(e)j(only)e
-(single-precision)g(n)m(um)m(b)s(ers)330 3054 y(are)31
+(single-precision)g(n)m(um)m(b)s(ers)330 4285 y(are)31
 b(computed)f(en)m(tirely)i(in)e(single-precision.)43
-b(Expressions)30 b(in)m(v)m(olving)i(mixed)e(precision)h(t)m(yp)s(es)
-330 3164 y(are)42 b(computed)f(in)g(the)h(t)m(yp)s(e)g(of)f(higher)h
-(precision.)74 b FC(NCO)41 b FD(b)m(y)g(default)h(emplo)m(ys)g(the)g(F)
--8 b(ortan)330 3273 y(Con)m(v)m(en)m(tion)32 b(for)e(promotion.)199
-3421 y(2.)61 b(Aggressiv)m(e,)50 b(ak)-5 b(a)45 b(C)f(Con)m(v)m(en)m
+b(Expressions)30 b(in)m(v)m(olving)i(mixed)e(precision)h(t)m(yp)s(es)p
+150 4440 1200 4 v 166 4508 a Fu(29)275 4540 y Ft(According)22
+b(to)h(Wikip)r(edia's)g(summary)g(of)g Fq(IEEE)g Ft(standard)i(754)r(,)
+e(\\If)g(a)g(decimal)g(string)g(with)g(at)f(most)h(6)j(signi\014can)n
+(t)275 4627 y(digits)19 b(is)h(con)n(v)n(erted)e(to)h
+Fq(IEEE)26 b Ft(754)21 b(single-precision)f(and)f(then)f(con)n(v)n
+(erted)g(bac)n(k)h(to)g(the)g(same)h(n)n(um)n(b)r(er)e(of)h
+(signi\014can)n(t)275 4714 y(decimal,)25 b(then)e(the)h(\014nal)f
+(string)i(should)e(matc)n(h)h(the)f(original;)k(and)d(if)g(an)g
+Fq(IEEE)i Ft(754)f(single-precision)g(is)g(con)n(v)n(erted)275
+4801 y(to)f(a)h(decimal)h(string)f(with)g(at)g(leastn)h(9)f
+(signi\014can)n(t)g(decimal)h(and)e(then)g(con)n(v)n(erted)g(bac)n(k)h
+(to)f(single,)j(then)d(the)g(\014nal)275 4888 y(n)n(um)n(b)r(er)g(m)n
+(ust)h(matc)n(h)h(the)f(original".)166 4960 y Fu(30)275
+4991 y Ft(According)19 b(to)h(Wikip)r(edia's)h(summary)f(of)g
+Fq(IEEE)g Ft(standard)26 b(754)q(,)21 b(\\If)f(a)g(decimal)h(string)f
+(with)g(at)g(most)g(15)26 b(signi\014can)n(t)275 5078
+y(digits)d(is)h(con)n(v)n(erted)e(to)i Fq(IEEE)i Ft(754)e
+(double-precision)g(represen)n(tation)f(and)g(then)f(con)n(v)n(erted)h
+(bac)n(k)f(to)i(a)f(string)h(with)275 5166 y(the)e(same)h(n)n(um)n(b)r
+(er)e(of)j(signi\014can)n(t)f(digits,)h(then)e(the)g(\014nal)g(string)h
+(should)g(matc)n(h)f(the)g(original;)k(and)c(if)h(an)g
+Fq(IEEE)j Ft(754)275 5253 y(double)j(precision)h(is)f(con)n(v)n(erted)g
+(to)g(a)h(decimal)g(string)f(with)h(at)f(least)h(17)d(signi\014can)n(t)
+i(digits)h(and)f(then)g(con)n(v)n(erted)275 5340 y(bac)n(k)c(to)h
+(double,)f(then)g(the)h(\014nal)f(n)n(um)n(b)r(er)g(m)n(ust)g(matc)n(h)
+h(the)f(original".)p eop end
+%%Page: 103 109
+TeXDict begin 103 108 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2362 b(103)330 299 y(are)42
+b(computed)f(in)g(the)h(t)m(yp)s(e)g(of)f(higher)h(precision.)74
+b FD(NCO)41 b FE(b)m(y)g(default)h(emplo)m(ys)g(the)g(F)-8
+b(ortan)330 408 y(Con)m(v)m(en)m(tion)32 b(for)e(promotion.)199
+541 y(2.)61 b(Aggressiv)m(e,)50 b(ak)-5 b(a)45 b(C)f(Con)m(v)m(en)m
 (tion)i(The)d(C)30 b(language)46 b(is)e(b)m(y)h(default)f(m)m(uc)m(h)g
-(more)h(aggressiv)m(e)330 3531 y(\(and)30 b(th)m(us)g(w)m(asteful\))h
+(more)h(aggressiv)m(e)330 651 y(\(and)30 b(th)m(us)g(w)m(asteful\))h
 (than)f(F)-8 b(ortran,)31 b(and)e(will)i(alw)m(a)m(ys)g(implicitly)g
-(con)m(v)m(ert)h(single-)f(to)g(double-)330 3641 y(precision)37
+(con)m(v)m(ert)h(single-)f(to)g(double-)330 760 y(precision)37
 b(n)m(um)m(b)s(ers)e(for)i(no)f(go)s(o)s(d)h(reason.)60
 b(All)38 b(real-n)m(um)m(b)s(er)e(standard)g(C)30 b(library)36
-b(functions)330 3750 y(are)g(double-precision,)g(and)f(C)30
+b(functions)330 870 y(are)g(double-precision,)g(and)f(C)30
 b(programmers)35 b(m)m(ust)g(tak)m(e)h(extra)g(steps)f(to)h(only)g
-(utilize)g(single)330 3860 y(precision)d(arithmetic.)48
+(utilize)g(single)330 979 y(precision)d(arithmetic.)48
 b(The)32 b(high)h(lev)m(el)h(in)m(terpreted)f(data)g(analysis)g
-(languages)h FC(IDL)p FD(,)f(Matlab,)330 3969 y(and)d
-FC(NCL)g FD(all)h(adopt)g(the)g(C)f(Con)m(v)m(en)m(tion)q(.)275
-4181 y FC(NCO)i FD(do)s(es)g(not)g(automatically)k(promote)d
-Fy(NC_FLOAT)d FD(b)s(ecause,)j(in)f(our)g(judgemen)m(t,)h(the)g(p)s
-(erfor-)150 4290 y(mance)i(p)s(enalt)m(y)f(of)g(alw)m(a)m(ys)i(doing)e
+(languages)h FD(IDL)p FE(,)f(Matlab,)330 1089 y(and)d
+FD(NCL)g FE(all)h(adopt)g(the)g(C)f(Con)m(v)m(en)m(tion)q(.)275
+1271 y FD(NCO)i FE(do)s(es)g(not)g(automatically)k(promote)d
+Fz(NC_FLOAT)d FE(b)s(ecause,)j(in)f(our)g(judgemen)m(t,)h(the)g(p)s
+(erfor-)150 1381 y(mance)i(p)s(enalt)m(y)f(of)g(alw)m(a)m(ys)i(doing)e
 (so)g(w)m(ould)g(out)m(w)m(eigh)i(the)e(p)s(oten)m(tial)i(b)s
-(ene\014ts.)51 b(The)33 b(no)m(w-classic)p 150 4440 1200
-4 v 166 4508 a Ft(26)275 4540 y Fs(According)23 b(to)g(Wikip)r(edia's)h
-(summary)e(of)i Fp(IEEE)f Fs(standard)g(754,)i(\\If)e(a)g(decimal)h
-(string)g(with)f(at)g(most)g(6)g(signi\014can)n(t)275
-4627 y(digits)d(is)g(con)n(v)n(erted)e(to)i Fp(IEEE)g
-Fs(754)g(single-precision)h(and)f(then)e(con)n(v)n(erted)h(bac)n(k)g
-(to)h(the)f(same)h(n)n(um)n(b)r(er)e(of)i(signi\014can)n(t)275
-4714 y(decimal,)25 b(then)e(the)h(\014nal)g(string)g(should)g(matc)n(h)
-g(the)f(original;)k(and)d(if)g(an)g Fp(IEEE)g Fs(754)i
-(single-precision)f(is)g(con)n(v)n(erted)275 4801 y(to)i(a)g(decimal)h
-(string)g(with)f(at)g(least)i(9)e(signi\014can)n(t)h(decimal)g(and)e
-(then)h(con)n(v)n(erted)f(bac)n(k)h(to)g(single,)i(then)d(the)h
-(\014nal)275 4888 y(n)n(um)n(b)r(er)d(m)n(ust)h(matc)n(h)h(the)f
-(original".)166 4960 y Ft(27)275 4991 y Fs(According)20
-b(to)h(Wikip)r(edia's)g(summary)g(of)g Fp(IEEE)g Fs(standard)f(754,)j
-(\\If)e(a)g(decimal)g(string)g(with)g(at)f(most)h(15)g(signi\014can)n
-(t)275 5078 y(digits)j(is)f(con)n(v)n(erted)g(to)g Fp(IEEE)h
-Fs(754)g(double-precision)g(represen)n(tation)g(and)f(then)f(con)n(v)n
-(erted)h(bac)n(k)g(to)g(a)h(string)g(with)275 5166 y(the)e(same)h(n)n
-(um)n(b)r(er)f(of)h(signi\014can)n(t)h(digits,)g(then)e(the)g(\014nal)h
-(string)g(should)g(matc)n(h)f(the)h(original;)i(and)e(if)g(an)g
-Fp(IEEE)g Fs(754)275 5253 y(double)28 b(precision)i(is)g(con)n(v)n
-(erted)e(to)h(a)g(decimal)h(string)g(with)f(at)g(least)h(17)g
-(signi\014can)n(t)f(digits)h(and)e(then)h(con)n(v)n(erted)275
-5340 y(bac)n(k)c(to)h(double,)f(then)g(the)h(\014nal)f(n)n(um)n(b)r(er)
-g(m)n(ust)g(matc)n(h)h(the)f(original".)p eop end
-%%Page: 93 99
-TeXDict begin 93 98 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(93)150 299 y(text)32
-b(\\Numerical)h(Recip)s(es)e(in)f(C")i(discusses)f(this)g(p)s(oin)m(t)g
-(under)f(the)i(section)g(\\Implicit)g(Con)m(v)m(ersion)150
-408 y(of)f(Float)h(to)f(Double")932 375 y Ft(28)1003
-408 y FD(.)41 b(That)30 b(said,)h(suc)m(h)f(promotion)g(is)h(w)m(arran)
-m(ted)g(in)f(some)g(circumstances.)275 568 y(F)-8 b(or)28
-b(example,)h(rounding)d(errors)h(can)h(accum)m(ulate)i(to)e(w)m
-(orrisome)g(lev)m(els)h(during)e(arithmetic)i(p)s(er-)150
-677 y(formed)i(on)g(large)h(arra)m(ys)f(of)h(single-precision)g
-(\015oats.)43 b(This)31 b(use-case)h(o)s(ccurs)f(often)g(in)g(geoscien)
-m(ti\014c)150 787 y(studies)f(of)h(climate)h(where)e
-(thousands-to-millions)i(of)f(gridp)s(oin)m(ts)f(ma)m(y)h(con)m
-(tribute)g(to)h(a)f(single)g(a)m(v-)150 897 y(erage.)67
+(ene\014ts.)51 b(The)33 b(no)m(w-classic)150 1491 y(text)f(\\Numerical)
+h(Recip)s(es)e(in)f(C")i(discusses)f(this)g(p)s(oin)m(t)g(under)f(the)i
+(section)g(\\Implicit)g(Con)m(v)m(ersion)150 1600 y(of)f(Float)h(to)f
+(Double")932 1567 y Fu(31)1003 1600 y FE(.)41 b(That)30
+b(said,)h(suc)m(h)f(promotion)g(is)h(w)m(arran)m(ted)g(in)f(some)g
+(circumstances.)275 1760 y(F)-8 b(or)28 b(example,)h(rounding)d(errors)
+h(can)h(accum)m(ulate)i(to)e(w)m(orrisome)g(lev)m(els)h(during)e
+(arithmetic)i(p)s(er-)150 1869 y(formed)i(on)g(large)h(arra)m(ys)f(of)h
+(single-precision)g(\015oats.)43 b(This)31 b(use-case)h(o)s(ccurs)f
+(often)g(in)g(geoscien)m(ti\014c)150 1979 y(studies)f(of)h(climate)h
+(where)e(thousands-to-millions)i(of)f(gridp)s(oin)m(ts)f(ma)m(y)h(con)m
+(tribute)g(to)h(a)f(single)g(a)m(v-)150 2088 y(erage.)67
 b(If)38 b(the)h(inputs)f(are)h(all)g(single-precision,)k(then)38
 b(so)h(should)f(b)s(e)g(the)h(output.)65 b(Ho)m(w)m(ev)m(er)41
-b(the)150 1006 y(in)m(termediate)28 b(results)e(where)g(running)f(sums)
+b(the)150 2198 y(in)m(termediate)28 b(results)e(where)g(running)f(sums)
 g(are)h(accum)m(ulated)i(ma)m(y)f(su\013er)f(from)g(to)s(o)h(m)m(uc)m
-(h)f(round-)150 1116 y(ing)31 b(or)f(from)g(under\015o)m(w)f(unless)g
-(computed)i(in)f(double-precision.)275 1275 y(The)i(order)g(of)g(op)s
+(h)f(round-)150 2307 y(ing)31 b(or)f(from)g(under\015o)m(w)f(unless)g
+(computed)i(in)f(double-precision.)275 2467 y(The)i(order)g(of)g(op)s
 (erations)h(matters)g(to)h(\015oating)f(p)s(oin)m(t)g(math)f(ev)m(en)i
-(when)d(the)i(analytic)h(expres-)150 1385 y(sions)40
+(when)d(the)i(analytic)h(expres-)150 2576 y(sions)40
 b(are)h(equal.)71 b(Cautious)40 b(users)g(feel)h(disquieted)f(when)g
 (results)g(from)f(equally)j(v)-5 b(alid)40 b(analyses)150
-1494 y(di\013er)i(in)h(the)g(\014nal)f(bits)h(instead)g(of)g(agreeing)h
+2686 y(di\013er)i(in)h(the)g(\014nal)f(bits)h(instead)g(of)g(agreeing)h
 (bit-for-bit.)79 b(F)-8 b(or)43 b(example,)k(a)m(v)m(eraging)e(arra)m
-(ys)e(in)150 1604 y(m)m(ultiple)33 b(stages)g(pro)s(duces)e(di\013eren)
+(ys)e(in)150 2796 y(m)m(ultiple)33 b(stages)g(pro)s(duces)e(di\013eren)
 m(t)i(answ)m(ers)f(than)f(a)m(v)m(eraging)k(them)d(in)g(one)g(step.)46
-b(This)32 b(is)g(easily)150 1714 y(seen)40 b(in)g(the)h(computation)g
+b(This)32 b(is)g(easily)150 2905 y(seen)40 b(in)g(the)h(computation)g
 (of)f(ensem)m(ble)h(a)m(v)m(erages)i(b)m(y)d(t)m(w)m(o)h(di\013eren)m
-(t)g(metho)s(ds.)69 b(The)40 b FC(NCO)g FD(test)150 1823
-y(\014le)f Fy(in.nc)f FD(con)m(tains)j(single-)f(and)f
+(t)g(metho)s(ds.)69 b(The)40 b FD(NCO)g FE(test)150 3015
+y(\014le)f Fz(in.nc)f FE(con)m(tains)j(single-)f(and)f
 (double-precision)g(represen)m(tations)h(of)g(the)f(same)h(temp)s
-(erature)150 1933 y(timeseries)30 b(as)g Fy(tpt_flt)d
-FD(and)h Fy(tpt_dbl)p FD(.)39 b(Pretend)28 b(eac)m(h)j(datap)s(oin)m(t)
-e(in)g(this)g(timeseries)i(represen)m(ts)e(a)150 2042
+(erature)150 3124 y(timeseries)30 b(as)g Fz(tpt_flt)d
+FE(and)h Fz(tpt_dbl)p FE(.)39 b(Pretend)28 b(eac)m(h)j(datap)s(oin)m(t)
+e(in)g(this)g(timeseries)i(represen)m(ts)e(a)150 3234
 y(mon)m(thly-mean)j(temp)s(erature.)43 b(W)-8 b(e)32
 b(will)g(mimic)f(the)h(deriv)-5 b(ation)32 b(of)f(a)h(\014fteen-y)m
-(ear)g(ensem)m(ble-mean)150 2152 y(Jan)m(uary)40 b(temp)s(erature)h(b)m
+(ear)g(ensem)m(ble-mean)150 3344 y(Jan)m(uary)40 b(temp)s(erature)h(b)m
 (y)g(concatenating)i(the)e(input)f(\014le)h(\014v)m(e)g(times,)j(and)c
-(then)h(a)m(v)m(eraging)i(the)150 2262 y(datap)s(oin)m(ts)e(represen)m
+(then)h(a)m(v)m(eraging)i(the)150 3453 y(datap)s(oin)m(ts)e(represen)m
 (ting)f(Jan)m(uary)g(t)m(w)m(o)h(di\013eren)m(t)g(w)m(a)m(ys.)70
 b(In)40 b(Metho)s(d)30 b(1)40 b(w)m(e)h(deriv)m(e)g(the)f(15-y)m(ear)
-150 2371 y(ensem)m(ble)g(Jan)m(uary)f(a)m(v)m(erage)j(in)d(t)m(w)m(o)i
+150 3563 y(ensem)m(ble)g(Jan)m(uary)f(a)m(v)m(erage)j(in)d(t)m(w)m(o)i
 (steps,)g(as)f(the)g(a)m(v)m(erage)i(of)d(three)h(\014v)m(e-y)m(ear)h
-(a)m(v)m(erages.)70 b(This)150 2481 y(metho)s(d)34 b(is)h(naturally)g
+(a)m(v)m(erages.)70 b(This)150 3672 y(metho)s(d)34 b(is)h(naturally)g
 (used)f(when)g(eac)m(h)i(input)e(\014le)g(con)m(tains)i(m)m(ultiple)g
-(y)m(ears)f(and)f(m)m(ultiple)i(input)150 2590 y(\014les)j(are)g
-(needed)774 2557 y Ft(29)844 2590 y FD(.)66 b(In)38 b(Metho)s(d)31
+(y)m(ears)f(and)f(m)m(ultiple)i(input)150 3782 y(\014les)j(are)g
+(needed)774 3749 y Fu(32)844 3782 y FE(.)66 b(In)38 b(Metho)s(d)31
 b(2)39 b(w)m(e)g(obtain)g(15-y)m(ear)i(ensem)m(ble)f(Jan)m(uary)e(a)m
-(v)m(erage)k(in)c(a)h(single)150 2700 y(step,)31 b(b)m(y)f(a)m(v)m
+(v)m(erage)k(in)c(a)h(single)150 3892 y(step,)31 b(b)m(y)f(a)m(v)m
 (eraging)j(all)e(15)g(Jan)m(uaries)g(at)g(one)g(time:)390
-2859 y Fy(#)47 b(tpt_flt)f(and)h(tpt_dbl)f(are)h(identical)e(except)h
-(for)h(precision)390 2969 y(ncks)g(--cdl)f(-C)h(-v)g(tpt_flt,tpt_dbl)d
-(~/nco/data/in.nc)390 3078 y(#)j(tpt_dbl)f(=)i(273.1,)e(273.2,)g
+4051 y Fz(#)47 b(tpt_flt)f(and)h(tpt_dbl)f(are)h(identical)e(except)h
+(for)h(precision)390 4161 y(ncks)g(--cdl)f(-C)h(-v)g(tpt_flt,tpt_dbl)d
+(~/nco/data/in.nc)390 4270 y(#)j(tpt_dbl)f(=)i(273.1,)e(273.2,)g
 (273.3,)g(273.4,)g(273.5,)g(273.6,)g(273.7,)g(273.8,)g(273.9,)h(274)390
-3188 y(#)g(tpt_flt)f(=)i(273.1,)e(273.2,)g(273.3,)g(273.4,)g(273.5,)g
-(273.6,)g(273.7,)g(273.8,)g(273.9,)h(274)390 3298 y(#)g(Create)g(file)f
+4380 y(#)g(tpt_flt)f(=)i(273.1,)e(273.2,)g(273.3,)g(273.4,)g(273.5,)g
+(273.6,)g(273.7,)g(273.8,)g(273.9,)h(274)390 4489 y(#)g(Create)g(file)f
 (with)h(five)f("ten-month)f(years")i(\(i.e.,)f(50)h(timesteps\))e(of)i
-(temperature)e(data)390 3407 y(ncrcat)h(-O)h(-v)g(tpt_flt,tpt_dbl)d(-p)
-j(~/nco/data)e(in.nc)i(in.nc)f(in.nc)g(in.nc)h(in.nc)f(~/foo.nc)390
-3517 y(#)h(Average)f(1st)h(five)g("Januaries")e(\(elements)g(1,)i(11,)g
-(21,)g(31,)g(41\))390 3626 y(ncra)g(--flt)f(-O)h(-F)g(-d)h(time,1,,10)d
-(~/foo.nc)g(~/foo_avg1.nc)390 3736 y(#)i(Average)f(2nd)h(five)g
-("Januaries")e(\(elements)g(2,)i(12,)g(22,)g(32,)g(42\))390
-3846 y(ncra)g(--flt)f(-O)h(-F)g(-d)h(time,2,,10)d(~/foo.nc)g
-(~/foo_avg2.nc)390 3955 y(#)i(Average)f(3rd)h(five)g("Januaries")e
-(\(elements)g(3,)i(13,)g(23,)g(33,)g(43\))390 4065 y(ncra)g(--flt)f(-O)
-h(-F)g(-d)h(time,3,,10)d(~/foo.nc)g(~/foo_avg3.nc)390
-4174 y(#)i(Method)g(1:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
-(averaging)e(the)i(averages)390 4284 y(ncra)g(--flt)f(-O)h
-(~/foo_avg1.nc)d(~/foo_avg2.nc)h(~/foo_avg3.nc)f(~/foo_avg_mth1.nc)390
-4394 y(#)j(Method)g(2:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
-(averaging)e(the)i(raw)g(data)390 4503 y(#)g(Employ)g(ncra's)f
-("subcycle")f(feature)g(\(http://nco.sf.net/nco.htm)o(l#ss)o(c\))390
-4613 y(ncra)i(--flt)f(-O)h(-F)g(-d)h(time,1,,10,3)c(~/foo.nc)i
-(~/foo_avg_mth2.nc)p 150 4689 1200 4 v 166 4757 a Ft(28)275
-4789 y Fs(See)25 b(page)h(21)h(in)e(Section)h(1.2)h(of)f(the)g(First)g
-(edition)g(for)g(this)g(gem:)390 4926 y(One)35 b(do)r(es)g(not)g(need)g
-(m)n(uc)n(h)f(exp)r(erience)i(in)f(scien)n(ti\014c)g(computing)g(to)h
-(recognize)g(that)f(the)g(implicit)390 5013 y(con)n(v)n(ersion)j(rules)
-h(are,)j(in)37 b(fact,)43 b(sheer)38 b(madness!)72 b(In)37
-b(e\013ect,)k(they)d(mak)n(e)f(it)h(imp)r(ossible)i(to)e(write)390
-5100 y(e\016cien)n(t)26 b(n)n(umerical)g(programs.)166
-5308 y Ft(29)275 5340 y Fs(F)-6 b(or)25 b(example,)h(the)g
-Fp(CMIP5)g Fs(arc)n(hiv)n(e)f(tends)g(to)h(distribute)g(mon)n(thly)f(a)
-n(v)n(erage)h(timeseries)h(in)f(50-y)n(ear)g(c)n(h)n(unks.)p
-eop end
-%%Page: 94 100
-TeXDict begin 94 99 bop 150 -116 a FD(94)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(#)47 b(Difference)e(the)i(two)g
-(methods)390 408 y(ncbo)g(-O)g(~/foo_avg_mth1.nc)c(~/foo_avg_mth2.nc)g
-(~/foo_avg_dff.nc)390 518 y(ncks)k(--cdl)f(~/foo_avg_dff.nc)390
-628 y(#)h(tpt_dbl)f(=)i(5.6843418860808e-14)42 b(;)390
-737 y(#)47 b(tpt_flt)f(=)i(-3.051758e-05)c(;)275 956
-y FD(Although)29 b(the)g(t)m(w)m(o)i(metho)s(ds)d(are)i(arithmetically)
-h(equiv)-5 b(alen)m(t,)32 b(they)d(pro)s(duce)f(sligh)m(tly)i
-(di\013eren)m(t)150 1066 y(answ)m(ers)j(due)g(to)h(the)g(di\013eren)m
-(t)g(order)f(of)g(op)s(erations.)50 b(Moreo)m(v)m(er,)37
-b(it)d(app)s(ears)f(at)h(\014rst)e(glance)j(that)150
-1176 y(the)29 b(single-precision)h(answ)m(ers)f(su\013er)f(from)g
-(greater)j(error)d(than)h(the)g(double-precision)g(answ)m(ers.)40
-b(In)150 1285 y(fact)34 b(b)s(oth)d(precisions)i(su\013er)f(from)g
-(non-zero)h(rounding)f(errors.)47 b(The)32 b(answ)m(ers)g(di\013er)g
-(negligibly)i(to)150 1395 y(mac)m(hine)f(precision,)g(whic)m(h)f(is)g
-(ab)s(out)g(sev)m(en)h(signi\014can)m(t)g(\014gures)f(for)g(single)h
-(precision)f(\015oats)h(\()p Fy(tpt_)150 1504 y(flt)p
-FD(\),)40 b(and)d(sixteen)i(signi\014can)m(t)g(\014gures)e(for)h
-(double)f(precision)i(\()p Fy(tpt_dbl)p FD(\).)62 b(The)38
-b(input)f(precision)150 1614 y(determines)30 b(the)h(answ)m(er)f
-(precision.)275 1833 y FC(IEEE)f FD(arithmetic)j(guaran)m(tees)g(that)g
-(t)m(w)m(o)g(metho)s(ds)e(will)h(pro)s(duce)f(bit-for-bit)i(iden)m
-(tical)g(answ)m(ers)150 1943 y(only)h(if)h(they)f(compute)h(the)f(same)
-h(op)s(erations)g(in)f(the)g(same)h(order.)49 b(Bit-for-bit)35
-b(iden)m(tical)g(answ)m(ers)150 2052 y(ma)m(y)40 b(also)g(o)s(ccur)f(b)
-m(y)h(happ)s(enstance)e(when)h(rounding)f(errors)h(exactly)i(comp)s
-(ensate)f(one)f(another.)150 2162 y(This)h(is)g(demonstrated)h(b)m(y)f
-(rep)s(eating)h(the)g(example)g(ab)s(o)m(v)m(e)h(with)e(the)h(`)p
-Fy(--dbl)p FD(')e(\(or)i(`)p Fy(--rth_dbl)p FD(')150
-2271 y(for)35 b(clarit)m(y\))i(option)e(whic)m(h)f(forces)i(con)m(v)m
-(ersion)g(of)f(single-precision)h(n)m(um)m(b)s(ers)d(to)j
-(double-precision)150 2381 y(prior)51 b(to)h(arithmetic.)106
-b(No)m(w)53 b Fy(ncra)d FD(will)i(treat)h(the)f(\014rst)f(v)-5
-b(alue)52 b(of)g Fy(tpt_flt)p FD(,)j Fy(273.1000f)p FD(,)g(as)150
-2491 y Fy(273.1000000000000d)p FD(.)42 b(Arithmetic)34
-b(on)e Fy(tpt_flt)f FD(then)h(pro)s(ceeds)g(in)g(double-precision)h(un)
-m(til)g(the)150 2600 y(\014nal)d(answ)m(er,)h(whic)m(h)f(is)g(con)m(v)m
+(temperature)e(data)390 4599 y(ncrcat)h(-O)h(-v)g(tpt_flt,tpt_dbl)d(-p)
+j(~/nco/data)e(in.nc)i(in.nc)f(in.nc)g(in.nc)h(in.nc)f(~/foo.nc)p
+150 4689 1200 4 v 166 4757 a Fu(31)275 4789 y Ft(See)25
+b(page)h(21)h(in)e(Section)h(1.2)h(of)f(the)g(First)g(edition)g(for)g
+(this)g(gem:)390 4926 y(One)35 b(do)r(es)g(not)g(need)g(m)n(uc)n(h)f
+(exp)r(erience)i(in)f(scien)n(ti\014c)g(computing)g(to)h(recognize)g
+(that)f(the)g(implicit)390 5013 y(con)n(v)n(ersion)j(rules)h(are,)j(in)
+37 b(fact,)43 b(sheer)38 b(madness!)72 b(In)37 b(e\013ect,)k(they)d
+(mak)n(e)f(it)h(imp)r(ossible)i(to)e(write)390 5100 y(e\016cien)n(t)26
+b(n)n(umerical)g(programs.)166 5308 y Fu(32)275 5340
+y Ft(F)-6 b(or)25 b(example,)h(the)g Fq(CMIP5)g Ft(arc)n(hiv)n(e)f
+(tends)g(to)h(distribute)g(mon)n(thly)f(a)n(v)n(erage)h(timeseries)h
+(in)f(50-y)n(ear)g(c)n(h)n(unks.)p eop end
+%%Page: 104 110
+TeXDict begin 104 109 bop 150 -116 a FE(104)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(#)47 b(Average)f(1st)h(five)g
+("Januaries")e(\(elements)g(1,)i(11,)g(21,)g(31,)g(41\))390
+408 y(ncra)g(--flt)f(-O)h(-F)g(-d)h(time,1,,10)d(~/foo.nc)g
+(~/foo_avg1.nc)390 518 y(#)i(Average)f(2nd)h(five)g("Januaries")e
+(\(elements)g(2,)i(12,)g(22,)g(32,)g(42\))390 628 y(ncra)g(--flt)f(-O)h
+(-F)g(-d)h(time,2,,10)d(~/foo.nc)g(~/foo_avg2.nc)390
+737 y(#)i(Average)f(3rd)h(five)g("Januaries")e(\(elements)g(3,)i(13,)g
+(23,)g(33,)g(43\))390 847 y(ncra)g(--flt)f(-O)h(-F)g(-d)h(time,3,,10)d
+(~/foo.nc)g(~/foo_avg3.nc)390 956 y(#)i(Method)g(1:)g(Obtain)f
+(ensemble)f(January)h(average)g(by)h(averaging)e(the)i(averages)390
+1066 y(ncra)g(--flt)f(-O)h(~/foo_avg1.nc)d(~/foo_avg2.nc)h
+(~/foo_avg3.nc)f(~/foo_avg_mth1.nc)390 1176 y(#)j(Method)g(2:)g(Obtain)
+f(ensemble)f(January)h(average)g(by)h(averaging)e(the)i(raw)g(data)390
+1285 y(#)g(Employ)g(ncra's)f("subcycle")f(feature)g
+(\(http://nco.sf.net/nco.htm)o(l#ss)o(c\))390 1395 y(ncra)i(--flt)f(-O)
+h(-F)g(-d)h(time,1,,10,3)c(~/foo.nc)i(~/foo_avg_mth2.nc)390
+1504 y(#)h(Difference)e(the)i(two)g(methods)390 1614
+y(ncbo)g(-O)g(~/foo_avg_mth1.nc)c(~/foo_avg_mth2.nc)g(~/foo_avg_dff.nc)
+390 1724 y(ncks)k(--cdl)f(~/foo_avg_dff.nc)390 1833 y(#)h(tpt_dbl)f(=)i
+(5.6843418860808e-14)42 b(;)390 1943 y(#)47 b(tpt_flt)f(=)i
+(-3.051758e-05)c(;)275 2125 y FE(Although)29 b(the)g(t)m(w)m(o)i(metho)
+s(ds)d(are)i(arithmetically)h(equiv)-5 b(alen)m(t,)32
+b(they)d(pro)s(duce)f(sligh)m(tly)i(di\013eren)m(t)150
+2235 y(answ)m(ers)j(due)g(to)h(the)g(di\013eren)m(t)g(order)f(of)g(op)s
+(erations.)50 b(Moreo)m(v)m(er,)37 b(it)d(app)s(ears)f(at)h(\014rst)e
+(glance)j(that)150 2345 y(the)29 b(single-precision)h(answ)m(ers)f
+(su\013er)f(from)g(greater)j(error)d(than)h(the)g(double-precision)g
+(answ)m(ers.)40 b(In)150 2454 y(fact)34 b(b)s(oth)d(precisions)i
+(su\013er)f(from)g(non-zero)h(rounding)f(errors.)47 b(The)32
+b(answ)m(ers)g(di\013er)g(negligibly)i(to)150 2564 y(mac)m(hine)f
+(precision,)g(whic)m(h)f(is)g(ab)s(out)g(sev)m(en)h(signi\014can)m(t)g
+(\014gures)f(for)g(single)h(precision)f(\015oats)h(\()p
+Fz(tpt_)150 2673 y(flt)p FE(\),)40 b(and)d(sixteen)i(signi\014can)m(t)g
+(\014gures)e(for)h(double)f(precision)i(\()p Fz(tpt_dbl)p
+FE(\).)62 b(The)38 b(input)f(precision)150 2783 y(determines)30
+b(the)h(answ)m(er)f(precision.)275 2966 y FD(IEEE)f FE(arithmetic)j
+(guaran)m(tees)g(that)g(t)m(w)m(o)g(metho)s(ds)e(will)h(pro)s(duce)f
+(bit-for-bit)i(iden)m(tical)g(answ)m(ers)150 3075 y(only)h(if)h(they)f
+(compute)h(the)f(same)h(op)s(erations)g(in)f(the)g(same)h(order.)49
+b(Bit-for-bit)35 b(iden)m(tical)g(answ)m(ers)150 3185
+y(ma)m(y)40 b(also)g(o)s(ccur)f(b)m(y)h(happ)s(enstance)e(when)h
+(rounding)f(errors)h(exactly)i(comp)s(ensate)f(one)f(another.)150
+3294 y(This)h(is)g(demonstrated)h(b)m(y)f(rep)s(eating)h(the)g(example)
+g(ab)s(o)m(v)m(e)h(with)e(the)h(`)p Fz(--dbl)p FE(')e(\(or)i(`)p
+Fz(--rth_dbl)p FE(')150 3404 y(for)35 b(clarit)m(y\))i(option)e(whic)m
+(h)f(forces)i(con)m(v)m(ersion)g(of)f(single-precision)h(n)m(um)m(b)s
+(ers)d(to)j(double-precision)150 3513 y(prior)51 b(to)h(arithmetic.)106
+b(No)m(w)53 b Fz(ncra)d FE(will)i(treat)h(the)f(\014rst)f(v)-5
+b(alue)52 b(of)g Fz(tpt_flt)p FE(,)j Fz(273.1000f)p FE(,)g(as)150
+3623 y Fz(273.1000000000000d)p FE(.)42 b(Arithmetic)34
+b(on)e Fz(tpt_flt)f FE(then)h(pro)s(ceeds)g(in)g(double-precision)h(un)
+m(til)g(the)150 3733 y(\014nal)d(answ)m(er,)h(whic)m(h)f(is)g(con)m(v)m
 (erted)i(bac)m(k)f(to)g(single-precision)h(for)e(\014nal)g(storage.)390
-2819 y Fy(#)47 b(Average)f(1st)h(five)g("Januaries")e(\(elements)g(1,)i
-(11,)g(21,)g(31,)g(41\))390 2929 y(ncra)g(--dbl)f(-O)h(-F)g(-d)h
-(time,1,,10)d(~/foo.nc)g(~/foo_avg1.nc)390 3039 y(#)i(Average)f(2nd)h
+3915 y Fz(#)47 b(Average)f(1st)h(five)g("Januaries")e(\(elements)g(1,)i
+(11,)g(21,)g(31,)g(41\))390 4025 y(ncra)g(--dbl)f(-O)h(-F)g(-d)h
+(time,1,,10)d(~/foo.nc)g(~/foo_avg1.nc)390 4134 y(#)i(Average)f(2nd)h
 (five)g("Januaries")e(\(elements)g(2,)i(12,)g(22,)g(32,)g(42\))390
-3148 y(ncra)g(--dbl)f(-O)h(-F)g(-d)h(time,2,,10)d(~/foo.nc)g
-(~/foo_avg2.nc)390 3258 y(#)i(Average)f(3rd)h(five)g("Januaries")e
-(\(elements)g(3,)i(13,)g(23,)g(33,)g(43\))390 3367 y(ncra)g(--dbl)f(-O)
+4244 y(ncra)g(--dbl)f(-O)h(-F)g(-d)h(time,2,,10)d(~/foo.nc)g
+(~/foo_avg2.nc)390 4354 y(#)i(Average)f(3rd)h(five)g("Januaries")e
+(\(elements)g(3,)i(13,)g(23,)g(33,)g(43\))390 4463 y(ncra)g(--dbl)f(-O)
 h(-F)g(-d)h(time,3,,10)d(~/foo.nc)g(~/foo_avg3.nc)390
-3477 y(#)i(Method)g(1:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
-(averaging)e(the)i(averages)390 3587 y(ncra)g(--dbl)f(-O)h
+4573 y(#)i(Method)g(1:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
+(averaging)e(the)i(averages)390 4682 y(ncra)g(--dbl)f(-O)h
 (~/foo_avg1.nc)d(~/foo_avg2.nc)h(~/foo_avg3.nc)f(~/foo_avg_mth1.nc)390
-3696 y(#)j(Method)g(2:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
-(averaging)e(the)i(raw)g(data)390 3806 y(#)g(Employ)g(ncra's)f
+4792 y(#)j(Method)g(2:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
+(averaging)e(the)i(raw)g(data)390 4902 y(#)g(Employ)g(ncra's)f
 ("subcycle")f(feature)g(\(http://nco.sf.net/nco.htm)o(l#ss)o(c\))390
-3915 y(ncra)i(--dbl)f(-O)h(-F)g(-d)h(time,1,,10,3)c(~/foo.nc)i
-(~/foo_avg_mth2.nc)390 4025 y(#)h(Difference)e(the)i(two)g(methods)390
-4134 y(ncbo)g(-O)g(~/foo_avg_mth1.nc)c(~/foo_avg_mth2.nc)g
-(~/foo_avg_dff.nc)390 4244 y(#)k(Show)g(differences)390
-4354 y(ncks)g(--cdl)f(~/foo_avg_dff.nc)390 4463 y(#)h(tpt_dbl)f(=)i
-(5.6843418860808e-14)42 b(;)390 4573 y(#)47 b(tpt_flt)f(=)i(0)f(;)275
-4792 y FD(The)30 b(`)p Fy(--dbl)p FD(')g(switc)m(h)i(has)f(no)f
+5011 y(ncra)i(--dbl)f(-O)h(-F)g(-d)h(time,1,,10,3)c(~/foo.nc)i
+(~/foo_avg_mth2.nc)390 5121 y(#)h(Difference)e(the)i(two)g(methods)390
+5230 y(ncbo)g(-O)g(~/foo_avg_mth1.nc)c(~/foo_avg_mth2.nc)g
+(~/foo_avg_dff.nc)390 5340 y(#)k(Show)g(differences)p
+eop end
+%%Page: 105 111
+TeXDict begin 105 110 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2362 b(105)390 299 y Fz(ncks)47
+b(--cdl)f(~/foo_avg_dff.nc)390 408 y(#)h(tpt_dbl)f(=)i
+(5.6843418860808e-14)42 b(;)390 518 y(#)47 b(tpt_flt)f(=)i(0)f(;)275
+690 y FE(The)30 b(`)p Fz(--dbl)p FE(')g(switc)m(h)i(has)f(no)f
 (e\013ect)j(on)e(the)g(results)g(computed)g(from)g(double-precision)g
-(inputs.)150 4902 y(But)43 b(no)m(w)g(the)g(t)m(w)m(o)h(metho)s(ds)f
+(inputs.)150 800 y(But)43 b(no)m(w)g(the)g(t)m(w)m(o)h(metho)s(ds)f
 (pro)s(duce)e(bit-for-bit)j(iden)m(tical)h(results)d(from)h(the)g
-(single-precision)150 5011 y(inputs!)50 b(This)33 b(is)h(due)g(to)g
-(the)h(happ)s(enstance)e(of)h(rounding)f(along)i(with)e(the)h
-(e\013ects)i(of)e(the)g(`)p Fy(--dbl)p FD(')150 5121
-y(switc)m(h.)61 b(The)37 b(`)p Fy(--flt)p FD(')f(and)g(`)p
-Fy(--rth_flt)p FD(')f(switc)m(hes)j(are)g(pro)m(vided)e(for)h(symmetry)
--8 b(.)61 b(They)36 b(enforce)150 5230 y(the)26 b(traditional)i
-FC(NCO)d FD(and)h(F)-8 b(ortran)26 b(con)m(v)m(en)m(tion)j(of)d(k)m
+(single-precision)150 909 y(inputs!)50 b(This)33 b(is)h(due)g(to)g(the)
+h(happ)s(enstance)e(of)h(rounding)f(along)i(with)e(the)h(e\013ects)i
+(of)e(the)g(`)p Fz(--dbl)p FE(')150 1019 y(switc)m(h.)61
+b(The)37 b(`)p Fz(--flt)p FE(')f(and)g(`)p Fz(--rth_flt)p
+FE(')f(switc)m(hes)j(are)g(pro)m(vided)e(for)h(symmetry)-8
+b(.)61 b(They)36 b(enforce)150 1129 y(the)26 b(traditional)i
+FD(NCO)d FE(and)h(F)-8 b(ortran)26 b(con)m(v)m(en)m(tion)j(of)d(k)m
 (eeping)h(single-precision)g(arithmetic)g(in)f(single-)150
-5340 y(precision)31 b(unless)e(a)i(double-precision)f(n)m(um)m(b)s(er)g
-(is)g(explicitly)i(in)m(v)m(olv)m(ed.)p eop end
-%%Page: 95 101
-TeXDict begin 95 100 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(95)275 299 y(W)-8 b(e)48
-b(ha)m(v)m(e)g(sho)m(wn)e(that)i(forced)f(promotion)g(of)h(single-)g
-(to)f(double-precision)g(prior)g(to)h(arith-)150 408
-y(metic)38 b(has)e(adv)-5 b(an)m(tages)38 b(and)e(disadv)-5
+1238 y(precision)31 b(unless)e(a)i(double-precision)f(n)m(um)m(b)s(er)g
+(is)g(explicitly)i(in)m(v)m(olv)m(ed.)275 1410 y(W)-8
+b(e)48 b(ha)m(v)m(e)g(sho)m(wn)e(that)i(forced)f(promotion)g(of)h
+(single-)g(to)f(double-precision)g(prior)g(to)h(arith-)150
+1520 y(metic)38 b(has)e(adv)-5 b(an)m(tages)38 b(and)e(disadv)-5
 b(an)m(tages.)61 b(The)36 b(primary)f(disadv)-5 b(an)m(tages)38
-b(are)f(sp)s(eed)f(and)g(size.)150 518 y(Double-precision)24
+b(are)f(sp)s(eed)f(and)g(size.)150 1630 y(Double-precision)24
 b(arithmetic)h(is)e(10{60\045)i(slo)m(w)m(er)f(than,)h(and)e(requires)f
-(t)m(wice)j(the)f(memory)f(of)g(single-)150 628 y(precision)j
+(t)m(wice)j(the)f(memory)f(of)g(single-)150 1739 y(precision)j
 (arithmetic.)40 b(The)25 b(primary)g(adv)-5 b(an)m(tage)28
 b(is)e(that)g(rounding)e(errors)h(in)h(double-precision)g(are)150
-737 y(m)m(uc)m(h)37 b(less)f(lik)m(ely)i(to)f(accum)m(ulate)i(to)e(v)-5
-b(alues)37 b(near)f(the)h(precision)f(of)h(the)g(underlying)e(geoph)m
-(ysical)150 847 y(v)-5 b(ariable.)275 1008 y(F)d(or)31
+1849 y(m)m(uc)m(h)37 b(less)f(lik)m(ely)i(to)f(accum)m(ulate)i(to)e(v)
+-5 b(alues)37 b(near)f(the)h(precision)f(of)h(the)g(underlying)e(geoph)
+m(ysical)150 1958 y(v)-5 b(ariable.)275 2131 y(F)d(or)31
 b(example,)i(if)e(w)m(e)h(kno)m(w)f(temp)s(erature)g(to)h(\014v)m(e)f
 (signi\014can)m(t)h(digits,)h(then)d(a)i(rounding)e(error)h(of)150
-1117 y(1-bit)g(could)f(a\013ect)i(the)e(least)h(precise)g(digit)g(of)f
+2240 y(1-bit)g(could)f(a\013ect)i(the)e(least)h(precise)g(digit)g(of)f
 (temp)s(erature)g(after)g(1,000{10,000)35 b(consecutiv)m(e)d(one-)150
-1227 y(sided)c(rounding)f(errors)h(under)f(the)h(w)m(orst)h(p)s
+2350 y(sided)c(rounding)f(errors)h(under)f(the)h(w)m(orst)h(p)s
 (ossible)f(scenario.)41 b(Man)m(y)29 b(geoph)m(ysical)h(grids)e(ha)m(v)
-m(e)i(tens-)150 1336 y(of-thousands)e(to)h(millions)g(of)g(p)s(oin)m
+m(e)i(tens-)150 2459 y(of-thousands)e(to)h(millions)g(of)g(p)s(oin)m
 (ts)f(that)h(m)m(ust)f(b)s(e)g(summed)f(prior)h(to)h(normalization)h
-(to)g(compute)150 1446 y(an)40 b(a)m(v)m(erage.)74 b(It)41
+(to)g(compute)150 2569 y(an)40 b(a)m(v)m(erage.)74 b(It)41
 b(is)g(p)s(ossible)f(for)g(single-precision)i(rouding)e(errors)g(to)h
-(accum)m(ulate)i(and)d(degrade)150 1556 y(the)c(precision)g(in)g(suc)m
+(accum)m(ulate)i(and)d(degrade)150 2679 y(the)c(precision)g(in)g(suc)m
 (h)g(situtations.)58 b(Double-precision)37 b(arithmetic)g(mititgates)i
-(this)d(problem,)h(so)150 1665 y(`)p Fy(--dbl)p FD(')29
-b(w)m(ould)i(b)s(e)e(w)m(arran)m(ted.)275 1826 y(This)39
+(this)d(problem,)h(so)150 2788 y(`)p Fz(--dbl)p FE(')29
+b(w)m(ould)i(b)s(e)e(w)m(arran)m(ted.)275 2960 y(This)39
 b(can)h(b)s(e)f(seen)h(with)g(another)g(example,)j(a)m(v)m(eraging)f(a)
-f(global)g(surface)f(temp)s(erature)f(\014eld)150 1936
-y(with)23 b Fy(ncwa)p FD(.)38 b(The)23 b(input)f(con)m(tains)j(a)f
+f(global)g(surface)f(temp)s(erature)f(\014eld)150 3070
+y(with)23 b Fz(ncwa)p FE(.)38 b(The)23 b(input)f(con)m(tains)j(a)f
 (single-precision)h(global)g(temp)s(erature)e(\014eld)g(\(stored)h(in)f
-Fy(TREFHT)p FD(\))150 2045 y(pro)s(duced)c(b)m(y)i(the)h
-FC(CAM3)e FD(general)i(circulation)h(mo)s(del)e(\()p
-FC(GCM)p FD(\))h(run)d(and)i(stored)g(at)h(1.9)31 b(b)m(y)f(2.5)22
-b(degrees)150 2155 y(resolution.)39 b(This)23 b(requires)g(94)31
+Fz(TREFHT)p FE(\))150 3180 y(pro)s(duced)c(b)m(y)i(the)h
+FD(CAM3)e FE(general)i(circulation)h(mo)s(del)e(\()p
+FD(GCM)p FE(\))h(run)d(and)i(stored)g(at)h(1.9)31 b(b)m(y)f(2.5)22
+b(degrees)150 3289 y(resolution.)39 b(This)23 b(requires)g(94)31
 b(latitudes)25 b(and)e(144)31 b(longitudes)q(,)25 b(or)f(13)p
-Fv(;)15 b FD(824)26 b(total)f(surface)f(gridp)s(oin)m(ts,)150
-2265 y(a)j(t)m(ypical)g(GCM)g(resolution)f(these)h(da)m(ys.)40
+Fw(;)15 b FE(824)26 b(total)f(surface)f(gridp)s(oin)m(ts,)150
+3399 y(a)j(t)m(ypical)g(GCM)g(resolution)f(these)h(da)m(ys.)40
 b(These)26 b(input)f(c)m(haracteristics)k(are)d(pro)m(vided)g(only)g
-(to)h(sho)m(w)150 2374 y(the)33 b(con)m(text)i(to)e(the)g(in)m
+(to)h(sho)m(w)150 3508 y(the)33 b(con)m(text)i(to)e(the)g(in)m
 (terested)h(reader,)g(equiv)-5 b(alen)m(t)34 b(results)f(w)m(ould)f(b)s
-(e)h(found)e(in)i(statistics)i(of)e(an)m(y)150 2484 y(dataset)g(of)f
+(e)h(found)e(in)i(statistics)i(of)e(an)m(y)150 3618 y(dataset)g(of)f
 (comparable)h(size.)45 b(Mo)s(dels)32 b(often)h(represen)m(t)e(Earth)h
-(on)g(a)g(spherical)g(grid)f(where)h(global)150 2593
+(on)g(a)g(spherical)g(grid)f(where)h(global)150 3727
 y(a)m(v)m(erages)i(m)m(ust)e(b)s(e)f(created)i(b)m(y)f(w)m(eigh)m(ting)
 h(eac)m(h)g(gridcell)g(b)m(y)f(its)g(latitude-dep)s(enden)m(t)g(w)m
-(eigh)m(t)h(\(i.e.,)150 2703 y(the)38 b(Gaussian)h(w)m(eigh)m(t)g
-(stored)g(in)f Fy(gw)p FD(\),)i(or)e(b)m(y)g(the)g(surface)h(area)g(of)
-f(eac)m(h)h(con)m(tributing)g(gridp)s(oin)m(t)150 2812
-y(\(stored)31 b(in)f Fy(area)p FD(\).)275 2973 y(Lik)m(e)51
+(eigh)m(t)h(\(i.e.,)150 3837 y(the)38 b(Gaussian)h(w)m(eigh)m(t)g
+(stored)g(in)f Fz(gw)p FE(\),)i(or)e(b)m(y)g(the)g(surface)h(area)g(of)
+f(eac)m(h)h(con)m(tributing)g(gridp)s(oin)m(t)150 3947
+y(\(stored)31 b(in)f Fz(area)p FE(\).)275 4119 y(Lik)m(e)51
 b(man)m(y)f(geoph)m(ysical)i(mo)s(dels)e(and)f(most)i
-FC(GCM)p FD(s,)k FC(CAM3)50 b FD(runs)e(completely)k(in)e(double-)150
-3083 y(precision)60 b(y)m(et)g(stores)g(its)g(arc)m(hiv)-5
+FD(GCM)p FE(s,)k FD(CAM3)50 b FE(runs)e(completely)k(in)e(double-)150
+4228 y(precision)60 b(y)m(et)g(stores)g(its)g(arc)m(hiv)-5
 b(al)61 b(output)e(in)g(single-precision)i(to)f(sa)m(v)m(e)h(space.)129
-b(In)59 b(prac-)150 3193 y(tice)54 b(suc)m(h)e(mo)s(dels)g(usually)g
+b(In)59 b(prac-)150 4338 y(tice)54 b(suc)m(h)e(mo)s(dels)g(usually)g
 (sa)m(v)m(e)i(m)m(ulti-dimensional)f(prognostic)g(and)f(diagnostic)i
-(\014elds)d(\(lik)m(e)150 3302 y Fy(TREFHT\(lat,lon\))19
-b FD(and)j Fy(area\(lat,lon\))p FD(\))e(as)j(single-precision,)j(while)
-d(sa)m(ving)h(all)g(one-dimensional)150 3412 y(co)s(ordinates)31
-b(and)e(w)m(eigh)m(ts)j(\(here)e Fy(lat)p FD(,)f Fy(lon)p
-FD(,)h(and)f Fy(gw\(lon\))p FD(\))g(as)h(double-precision.)41
-b(T)-8 b(o)30 b(obtain)h(pure)150 3521 y(double-precision)25
-b(arithmetic)i Fo(and)36 b FD(storage)27 b(of)e(the)h(globla)g(mean)g
+(\014elds)d(\(lik)m(e)150 4448 y Fz(TREFHT\(lat,lon\))19
+b FE(and)j Fz(area\(lat,lon\))p FE(\))e(as)j(single-precision,)j(while)
+d(sa)m(ving)h(all)g(one-dimensional)150 4557 y(co)s(ordinates)31
+b(and)e(w)m(eigh)m(ts)j(\(here)e Fz(lat)p FE(,)f Fz(lon)p
+FE(,)h(and)f Fz(gw\(lon\))p FE(\))g(as)h(double-precision.)41
+b(T)-8 b(o)30 b(obtain)h(pure)150 4667 y(double-precision)25
+b(arithmetic)i Fp(and)36 b FE(storage)27 b(of)e(the)h(globla)g(mean)g
 (temp)s(erature,)g(w)m(e)g(\014rst)f(create)i(and)150
-3631 y(store)k(double-precision)f(v)m(ersions)h(of)g(the)f
-(single-precision)i(\014elds:)390 3792 y Fy(ncap2)46
+4776 y(store)k(double-precision)f(v)m(ersions)h(of)g(the)f
+(single-precision)i(\014elds:)390 4949 y Fz(ncap2)46
 b(-O)i(-s)f('TREFHT_dbl=double\(TREF)o(HT\);)o(area)o(_db)o(l=do)o
-(uble)o(\(ar)o(ea\)')41 b(in.nc)46 b(in.nc)275 3953 y
-FD(The)26 b(single-)i(and)e(double-precision)h(temp)s(eratures)g(ma)m
+(uble)o(\(ar)o(ea\)')41 b(in.nc)46 b(in.nc)275 5121 y
+FE(The)26 b(single-)i(and)e(double-precision)h(temp)s(eratures)g(ma)m
 (y)g(eac)m(h)h(b)s(e)f(a)m(v)m(eraged)i(globally)f(using)f(four)150
-4062 y(p)s(erm)m(utations)h(for)h(the)g(precision)f(of)h(the)g(w)m
+5230 y(p)s(erm)m(utations)h(for)h(the)g(precision)f(of)h(the)g(w)m
 (eigh)m(t)h(and)e(of)g(the)h(in)m(termediate)h(arithmetic)g(represen)m
-(ta-)150 4172 y(tion:)199 4333 y(1.)61 b(Single-precision)31
-b(w)m(eigh)m(t)h(\()p Fy(area)p FD(\),)e(single-precision)i(arithmetic)
-199 4469 y(2.)61 b(Double-precision)31 b(w)m(eigh)m(t)h(\()p
-Fy(gw)p FD(\),)f(single-precision)h(arithmetic)199 4605
-y(3.)61 b(Single-precision)31 b(w)m(eigh)m(t)h(\()p Fy(area)p
-FD(\),)e(double-precision)h(arithmetic)199 4741 y(4.)61
-b(Double-precision)31 b(w)m(eigh)m(t)h(\()p Fy(gw)p FD(\),)f
-(double-precision)f(arithmetic)390 4902 y Fy(#)47 b(NB:)g(Values)f
+(ta-)150 5340 y(tion:)p eop end
+%%Page: 106 112
+TeXDict begin 106 111 bop 150 -116 a FE(106)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)199 299 y(1.)61 b(Single-precision)31
+b(w)m(eigh)m(t)h(\()p Fz(area)p FE(\),)e(single-precision)i(arithmetic)
+199 432 y(2.)61 b(Double-precision)31 b(w)m(eigh)m(t)h(\()p
+Fz(gw)p FE(\),)f(single-precision)h(arithmetic)199 564
+y(3.)61 b(Single-precision)31 b(w)m(eigh)m(t)h(\()p Fz(area)p
+FE(\),)e(double-precision)h(arithmetic)199 697 y(4.)61
+b(Double-precision)31 b(w)m(eigh)m(t)h(\()p Fz(gw)p FE(\),)f
+(double-precision)f(arithmetic)390 856 y Fz(#)47 b(NB:)g(Values)f
 (below)h(are)g(printed)f(with)g(C-format)g(\0455.6f)g(using)390
-5011 y(#)h(ncks)g(-H)g(-C)g(-s)h('\0455.6f')d(-v)j(TREFHT,TREFHT_dbl)43
-b(out.nc)390 5121 y(#)k(Single-precision)d(weight)i(\(area\),)g
-(single-precision)d(arithmetic)390 5230 y(ncwa)k(--flt)f(-O)h(-a)g
-(lat,lon)f(-w)h(area)g(in.nc)f(out.nc)390 5340 y(#)h(TREFHT)237
-b(=)48 b(289.246735)p eop end
-%%Page: 96 102
-TeXDict begin 96 101 bop 150 -116 a FD(96)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(#)47 b(TREFHT_dbl)e(=)j
-(289.239964)390 408 y(#)f(Double-precision)d(weight)i(\(gw\),)142
-b(single-precision)43 b(arithmetic)390 518 y(ncwa)k(--flt)f(-O)h(-a)g
-(lat,lon)f(-w)h(gw)143 b(in.nc)46 b(out.nc)390 628 y(#)h(TREFHT)237
-b(=)48 b(289.226135)390 737 y(#)f(TREFHT_dbl)e(=)j(289.239964)390
-847 y(#)f(Single-precision)d(weight)i(\(area\),)g(double-precision)d
-(arithmetic)390 956 y(ncwa)k(--dbl)f(-O)h(-a)g(lat,lon)f(-w)h(area)g
-(in.nc)f(out.nc)390 1066 y(#)h(TREFHT)237 b(=)48 b(289.239960)390
-1176 y(#)f(TREFHT_dbl)e(=)j(289.239964)390 1285 y(#)f(Double-precision)
+966 y(#)h(ncks)g(-H)g(-C)g(-s)h('\0455.6f')d(-v)j(TREFHT,TREFHT_dbl)43
+b(out.nc)390 1075 y(#)k(Single-precision)d(weight)i(\(area\),)g
+(single-precision)d(arithmetic)390 1185 y(ncwa)k(--flt)f(-O)h(-a)g
+(lat,lon)f(-w)h(area)g(in.nc)f(out.nc)390 1295 y(#)h(TREFHT)237
+b(=)48 b(289.246735)390 1404 y(#)f(TREFHT_dbl)e(=)j(289.239964)390
+1514 y(#)f(Double-precision)d(weight)i(\(gw\),)142 b(single-precision)
+43 b(arithmetic)390 1623 y(ncwa)k(--flt)f(-O)h(-a)g(lat,lon)f(-w)h(gw)
+143 b(in.nc)46 b(out.nc)390 1733 y(#)h(TREFHT)237 b(=)48
+b(289.226135)390 1843 y(#)f(TREFHT_dbl)e(=)j(289.239964)390
+1952 y(#)f(Single-precision)d(weight)i(\(area\),)g(double-precision)d
+(arithmetic)390 2062 y(ncwa)k(--dbl)f(-O)h(-a)g(lat,lon)f(-w)h(area)g
+(in.nc)f(out.nc)390 2171 y(#)h(TREFHT)237 b(=)48 b(289.239960)390
+2281 y(#)f(TREFHT_dbl)e(=)j(289.239964)390 2391 y(#)f(Double-precision)
 d(weight)i(\(gw\),)142 b(double-precision)43 b(arithmetic)390
-1395 y(ncwa)k(--dbl)f(-O)h(-a)g(lat,lon)f(-w)h(gw)143
-b(in.nc)46 b(out.nc)390 1504 y(#)h(TREFHT)237 b(=)48
-b(289.239960)390 1614 y(#)f(TREFHT_dbl)e(=)j(289.239964)275
-1778 y FD(First)35 b(note)h(that)f(the)h Fy(TREFHT_dbl)c
-FD(a)m(v)m(erage)38 b(nev)m(er)d(c)m(hanges)h(b)s(ecause)f
-Fy(TREFHT_dbl\(lat,lon\))150 1888 y FD(is)h(double-precision)h(in)f
+2500 y(ncwa)k(--dbl)f(-O)h(-a)g(lat,lon)f(-w)h(gw)143
+b(in.nc)46 b(out.nc)390 2610 y(#)h(TREFHT)237 b(=)48
+b(289.239960)390 2719 y(#)f(TREFHT_dbl)e(=)j(289.239964)275
+2879 y FE(First)35 b(note)h(that)f(the)h Fz(TREFHT_dbl)c
+FE(a)m(v)m(erage)38 b(nev)m(er)d(c)m(hanges)h(b)s(ecause)f
+Fz(TREFHT_dbl\(lat,lon\))150 2988 y FE(is)h(double-precision)h(in)f
 (the)h(input)e(\014le.)59 b(As)37 b(describ)s(ed)e(ab)s(o)m(v)m(e,)40
-b FC(NCO)c FD(automatically)j(con)m(v)m(erts)f(all)150
-1997 y(op)s(erands)26 b(in)m(v)m(olving)j(to)f(the)f(highest)h
+b FD(NCO)c FE(automatically)j(con)m(v)m(erts)f(all)150
+3098 y(op)s(erands)26 b(in)m(v)m(olving)j(to)f(the)f(highest)h
 (precision)f(in)m(v)m(olv)m(ed)i(in)e(the)g(op)s(eration.)41
-b(So)27 b(sp)s(ecifying)g(`)p Fy(--dbl)p FD(')150 2107
+b(So)27 b(sp)s(ecifying)g(`)p Fz(--dbl)p FE(')150 3207
 y(is)j(redundan)m(t)g(for)g(double-precision)g(inputs.)275
-2271 y(Second,)47 b(the)e(single-precision)h(arithmetic)f(a)m(v)m
-(erages)i(of)e(the)g(single-precision)g(input)f Fy(TREFHT)150
-2381 y FD(di\013er)33 b(b)m(y)h(289)p Fv(:)p FD(246735)26
-b FA(\000)c FD(289)p Fv(:)p FD(226135)35 b(=)30 b(0)p
-Fv(:)p FD(0206)36 b(from)d(eac)m(hother,)j(and,)e(more)g(imp)s(ortan)m
-(tly)-8 b(,)35 b(b)m(y)f(as)150 2490 y(m)m(uc)m(h)h(as)h(289)p
-Fv(:)p FD(239964)28 b FA(\000)23 b FD(289)p Fv(:)p FD(226135)37
-b(=)d(0)p Fv(:)p FD(013829)k(from)d(the)g(correct)i
-(\(double-precision\))f(answ)m(er.)150 2600 y(These)26
+3367 y(Second,)47 b(the)e(single-precision)h(arithmetic)f(a)m(v)m
+(erages)i(of)e(the)g(single-precision)g(input)f Fz(TREFHT)150
+3476 y FE(di\013er)33 b(b)m(y)h(289)p Fw(:)p FE(246735)26
+b FB(\000)c FE(289)p Fw(:)p FE(226135)35 b(=)30 b(0)p
+Fw(:)p FE(0206)36 b(from)d(eac)m(hother,)j(and,)e(more)g(imp)s(ortan)m
+(tly)-8 b(,)35 b(b)m(y)f(as)150 3586 y(m)m(uc)m(h)h(as)h(289)p
+Fw(:)p FE(239964)28 b FB(\000)23 b FE(289)p Fw(:)p FE(226135)37
+b(=)d(0)p Fw(:)p FE(013829)k(from)d(the)g(correct)i
+(\(double-precision\))f(answ)m(er.)150 3696 y(These)26
 b(a)m(v)m(erages)j(di\013er)d(in)g(the)g(\014fth)f(digit,)j(i.e.,)h
 (they)d(agree)i(only)e(to)h(four)e(signi\014can)m(t)i(\014gures!)39
-b(Giv)m(en)150 2710 y(that)f(climate)h(scien)m(tists)g(are)e(concerned)
+b(Giv)m(en)150 3805 y(that)f(climate)h(scien)m(tists)g(are)e(concerned)
 h(ab)s(out)f(global)h(temp)s(erature)f(v)-5 b(ariations)38
-b(of)g(a)f(ten)m(th)h(of)g(a)150 2819 y(degree)32 b(or)f(less,)h(this)f
+b(of)g(a)f(ten)m(th)h(of)g(a)150 3915 y(degree)32 b(or)f(less,)h(this)f
 (di\013erence)h(is)g(large.)44 b(It)31 b(means)h(that)f(the)h(global)h
-(mean)e(temp)s(erature)g(c)m(hanges)150 2929 y(scien)m(tists)h(are)e
+(mean)e(temp)s(erature)g(c)m(hanges)150 4024 y(scien)m(tists)h(are)e
 (lo)s(oking)h(for)f(are)h(comparable)g(in)f(size)h(to)f(the)h(n)m
 (umerical)g(artifacts)g(pro)s(duced)e(b)m(y)h(the)150
-3038 y(a)m(v)m(eraging)j(pro)s(cedure.)275 3203 y(Wh)m(y)39
+4134 y(a)m(v)m(eraging)j(pro)s(cedure.)275 4293 y(Wh)m(y)39
 b(are)g(the)g(single-precision)g(n)m(umerical)h(artifacts)g(so)f
 (large?)66 b(Eac)m(h)40 b(global)g(a)m(v)m(erage)h(is)e(the)150
-3312 y(result)33 b(of)g(m)m(ultiplying)g(almost)h(15,000)h(elemen)m(ts)
+4403 y(result)33 b(of)g(m)m(ultiplying)g(almost)h(15,000)h(elemen)m(ts)
 g(eac)m(h)f(b)m(y)e(its)i(w)m(eigh)m(t,)h(summing)d(those,)i(and)e
-(then)150 3422 y(dividing)g(b)m(y)g(the)h(summed)e(w)m(eigh)m(ts.)48
+(then)150 4513 y(dividing)g(b)m(y)g(the)h(summed)e(w)m(eigh)m(ts.)48
 b(Th)m(us)31 b(ab)s(out)i(50,000)h(single-precision)g(\015oating)f(p)s
-(oin)m(t)g(op)s(era-)150 3531 y(tions)c(caused)g(the)h(loss)f(of)g(t)m
+(oin)m(t)g(op)s(era-)150 4622 y(tions)c(caused)g(the)h(loss)f(of)g(t)m
 (w)m(o)i(to)e(three)h(signi\014can)m(t)f(digits)h(of)f(precision.)41
-b(The)28 b(net)h(error)g(of)g(a)h(series)150 3641 y(of)g(indep)s(enden)
+b(The)28 b(net)h(error)g(of)g(a)h(series)150 4732 y(of)g(indep)s(enden)
 m(t)e(rounding)g(errors)i(is)f(a)h(random)f(w)m(alk)h(phenomena)2568
-3608 y Ft(30)2638 3641 y FD(.)41 b(Successiv)m(e)30 b(rounding)e
-(errors)150 3751 y(displace)j(the)f(answ)m(er)g(further)f(from)h(the)g
+4699 y Fu(33)2638 4732 y FE(.)41 b(Successiv)m(e)30 b(rounding)e
+(errors)150 4841 y(displace)j(the)f(answ)m(er)g(further)f(from)h(the)g
 (truth.)40 b(An)30 b(ensem)m(ble)g(of)h(suc)m(h)f(a)m(v)m(erages)i
-(will,)f(on)f(a)m(v)m(erage,)150 3860 y(ha)m(v)m(e)h(no)f(net)h(bias.)
+(will,)f(on)f(a)m(v)m(erage,)150 4951 y(ha)m(v)m(e)h(no)f(net)h(bias.)
 41 b(In)29 b(other)h(w)m(ords,)g(the)h(exp)s(ectation)h(v)-5
-b(alue)30 b(of)h(a)f(series)h(of)f FC(IEEE)f FD(rounding)f(errors)150
-3970 y(is)36 b(zero.)60 b(And)36 b(the)g(error)g(of)h(an)m(y)g(giv)m
+b(alue)30 b(of)h(a)f(series)h(of)f FD(IEEE)f FE(rounding)f(errors)150
+5060 y(is)36 b(zero.)60 b(And)36 b(the)g(error)g(of)h(an)m(y)g(giv)m
 (en)g(sequence)g(of)f(rounding)g(errors)f(ob)s(eys,)j(for)f(large)g
-(series,)i(a)150 4079 y(Gaussian)31 b(distribution)e(cen)m(tered)j(on)e
-(zero.)275 4244 y(Single-precision)d(n)m(um)m(b)s(ers)d(use)i(three)h
-(of)f(their)g(four)g(eigh)m(t-bit)i(b)m(ytes)e(to)h(represen)m(t)g(the)
-f(man)m(tissa)150 4353 y(so)j(the)g(smallest)h(represen)m(table)f
-(single-precision)h(man)m(tissa)g(is)f Fv(\017)c FA(\021)g
-FD(2)2615 4320 y Fd(\000)p Ft(23)2763 4353 y FD(=)g(1)p
-Fv(:)p FD(19209)20 b FA(\002)d FD(10)3352 4320 y Fd(\000)p
-Ft(7)3442 4353 y FD(.)40 b(This)28 b Fv(\017)150 4463
-y FD(is)f(the)g(smallest)g Fz(x)33 b FD(suc)m(h)27 b(that)g(1)p
-Fv(:)p FD(0)13 b(+)g Fv(x)25 b FA(6)p FD(=)g(1)p Fv(:)p
-FD(0.)41 b(This)26 b(is)h(the)f(rounding)g(error)g(for)g(non-exact)i
-(precision-)150 4572 y(n)m(um)m(b)s(ers.)58 b(Applying)36
-b(random)f(w)m(alk)i(theory)g(to)g(rounding,)g(it)g(can)g(b)s(e)f(sho)m
-(wn)g(that)h(the)g(exp)s(ected)150 4682 y(rounding)d(error)g(after)i
-Fz(n)e FD(inexact)j(op)s(erations)e(is)1935 4609 y Ff(p)p
-2018 4609 201 4 v 73 x FD(2)p Fv(n=\031)k FD(for)34 b(large)e
-Fz(n)o FD(.)55 b(The)35 b(exp)s(ected)g(\(i.e.,)j(mean)150
-4792 y(absolute\))e(rounding)e(error)h(in)g(our)f(example)i(with)f(13)p
-Fv(;)15 b FD(824)38 b(additions)d(is)g(ab)s(out)3079
-4719 y Ff(p)p 3162 4719 485 4 v 73 x FD(2)20 b FA(\002)g
-FD(13824)p Fv(=\031)39 b FD(=)150 4901 y(91)p Fv(:)p
-FD(96.)j(Hence,)30 b(addition)e(alone)h(of)g(ab)s(out)f(\014fteen)g
-(thousand)f(single-precision)j(\015oats)e(is)h(exp)s(ected)f(to)150
-5011 y(consume)k(ab)s(out)g(t)m(w)m(o)h(signi\014can)m(t)g(digits)g(of)
+(series,)i(a)150 5170 y(Gaussian)31 b(distribution)e(cen)m(tered)j(on)e
+(zero.)p 150 5241 1200 4 v 166 5308 a Fu(33)300 5340
+y Ft(Thanks)c(to)g(Mic)n(hael)g(J.)h(Prather)f(for)g(explaining)g(this)
+g(to)g(me.)p eop end
+%%Page: 107 113
+TeXDict begin 107 112 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2362 b(107)275 299 y(Single-precision)27
+b(n)m(um)m(b)s(ers)d(use)i(three)h(of)f(their)g(four)g(eigh)m(t-bit)i
+(b)m(ytes)e(to)h(represen)m(t)g(the)f(man)m(tissa)150
+408 y(so)j(the)g(smallest)h(represen)m(table)f(single-precision)h(man)m
+(tissa)g(is)f Fw(\017)c FB(\021)g FE(2)2615 375 y Fc(\000)p
+Fu(23)2763 408 y FE(=)g(1)p Fw(:)p FE(19209)20 b FB(\002)d
+FE(10)3352 375 y Fc(\000)p Fu(7)3442 408 y FE(.)40 b(This)28
+b Fw(\017)150 518 y FE(is)f(the)g(smallest)g FA(x)33
+b FE(suc)m(h)27 b(that)g(1)p Fw(:)p FE(0)13 b(+)g Fw(x)25
+b FB(6)p FE(=)g(1)p Fw(:)p FE(0.)41 b(This)26 b(is)h(the)f(rounding)g
+(error)g(for)g(non-exact)i(precision-)150 628 y(n)m(um)m(b)s(ers.)58
+b(Applying)36 b(random)f(w)m(alk)i(theory)g(to)g(rounding,)g(it)g(can)g
+(b)s(e)f(sho)m(wn)g(that)h(the)g(exp)s(ected)150 737
+y(rounding)d(error)g(after)i FA(n)e FE(inexact)j(op)s(erations)e(is)
+1935 664 y Fd(p)p 2018 664 201 4 v 73 x FE(2)p Fw(n=\031)k
+FE(for)34 b(large)e FA(n)o FE(.)55 b(The)35 b(exp)s(ected)g(\(i.e.,)j
+(mean)150 847 y(absolute\))e(rounding)e(error)h(in)g(our)f(example)i
+(with)f(13)p Fw(;)15 b FE(824)38 b(additions)d(is)g(ab)s(out)3079
+774 y Fd(p)p 3162 774 485 4 v 73 x FE(2)20 b FB(\002)g
+FE(13824)p Fw(=\031)39 b FE(=)150 956 y(91)p Fw(:)p FE(96.)j(Hence,)30
+b(addition)e(alone)h(of)g(ab)s(out)f(\014fteen)g(thousand)f
+(single-precision)j(\015oats)e(is)h(exp)s(ected)f(to)150
+1066 y(consume)k(ab)s(out)g(t)m(w)m(o)h(signi\014can)m(t)g(digits)g(of)
 f(precision.)46 b(This)32 b(neglects)h(the)f(error)g(due)g(to)g(the)h
-(inner)150 5120 y(pro)s(duct)d(\(w)m(eigh)m(ts)j(times)f(v)-5
+(inner)150 1176 y(pro)s(duct)d(\(w)m(eigh)m(ts)j(times)f(v)-5
 b(alues\))32 b(and)e(normalization)j(\(division)f(b)m(y)f(tally\))i
-(asp)s(ects)e(of)h(a)g(w)m(eigh)m(ted)p 150 5241 1200
-4 v 166 5308 a Ft(30)300 5340 y Fs(Thanks)26 b(to)g(Mic)n(hael)g(J.)h
-(Prather)f(for)g(explaining)g(this)g(to)g(me.)p eop end
-%%Page: 97 103
-TeXDict begin 97 102 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(97)150 299 y(a)m(v)m(erage.)43
+(asp)s(ects)e(of)h(a)g(w)m(eigh)m(ted)150 1285 y(a)m(v)m(erage.)43
 b(the)29 b(ratio)h(of)f(t)m(w)m(o)h(n)m(um)m(b)s(ers)e(eac)m(h)i(con)m
 (taining)g(a)f(n)m(umerical)h(bias)f(can)g(magnify)g(the)g(size)h(of)
-150 408 y(the)g(bias.)41 b(In)29 b(summary)-8 b(,)29
+150 1395 y(the)g(bias.)41 b(In)29 b(summary)-8 b(,)29
 b(a)i(global)g(mean)f(n)m(um)m(b)s(er)e(computed)i(from)f(ab)s(out)h
-(15,000)i(gridp)s(oin)m(ts)e(eac)m(h)150 518 y(with)35
+(15,000)i(gridp)s(oin)m(ts)e(eac)m(h)150 1504 y(with)35
 b(w)m(eigh)m(ts)j(can)e(b)s(e)f(exp)s(ected)h(to)h(lose)f(up)f(to)i
 (three)f(signi\014can)m(t)g(digits.)58 b(Since)36 b(single-precision)
-150 628 y(starts)h(with)f(ab)s(out)g(sev)m(en)h(signi\014can)m(t)g
+150 1614 y(starts)h(with)f(ab)s(out)g(sev)m(en)h(signi\014can)m(t)g
 (digits,)i(w)m(e)e(should)e(not)i(exp)s(ect)g(to)g(retain)g(more)g
-(than)f(four)150 737 y(signi\014can)m(t)28 b(digits)g(after)g
+(than)f(four)150 1724 y(signi\014can)m(t)28 b(digits)g(after)g
 (computing)f(w)m(eigh)m(ted)i(a)m(v)m(erages)g(in)e(single-precision.)
-41 b(The)27 b(ab)s(o)m(v)m(e)h(example)150 847 y(with)i
-Fy(TREFHT)f FD(sho)m(ws)h(the)g(exp)s(ected)h(four)f(digits)h(of)f
-(agreemen)m(t.)275 1044 y(The)25 b FC(NCO)h FD(results)g(ha)m(v)m(e)h
+41 b(The)27 b(ab)s(o)m(v)m(e)h(example)150 1833 y(with)i
+Fz(TREFHT)f FE(sho)m(ws)h(the)g(exp)s(ected)h(four)f(digits)h(of)f
+(agreemen)m(t.)275 1998 y(The)25 b FD(NCO)h FE(results)g(ha)m(v)m(e)h
 (b)s(een)f(indep)s(enden)m(tly)f(v)-5 b(alidated)27 b(to)g(the)f(exten)
-m(t)i(p)s(ossible)e(in)f(three)i(other)150 1154 y(languages:)55
-b(C,)38 b(Matlab,)i(and)d FC(NCL)p FD(.)60 b(C)36 b(and)g
-FC(NCO)h FD(are)g(the)g(only)g(languages)h(that)g(p)s(ermit)e(single-)
-150 1263 y(precision)31 b(n)m(um)m(b)s(ers)d(to)k(b)s(e)d(treated)j
-(with)e(single)h(precision)f(arithmetic:)390 1461 y Fy(#)47
+m(t)i(p)s(ossible)e(in)f(three)i(other)150 2107 y(languages:)55
+b(C,)38 b(Matlab,)i(and)d FD(NCL)p FE(.)60 b(C)36 b(and)g
+FD(NCO)h FE(are)g(the)g(only)g(languages)h(that)g(p)s(ermit)e(single-)
+150 2217 y(precision)31 b(n)m(um)m(b)s(ers)d(to)k(b)s(e)d(treated)j
+(with)e(single)h(precision)f(arithmetic:)390 2381 y Fz(#)47
 b(Double-precision)d(weight)i(\(gw\),)142 b(single-precision)43
-b(arithmetic)i(\(C\))390 1570 y(ncwa_3528514.exe)390
-1680 y(#)i(TREFHT)237 b(=)48 b(289.240112)390 1789 y(#)f
+b(arithmetic)i(\(C\))390 2491 y(ncwa_3528514.exe)390
+2600 y(#)i(TREFHT)237 b(=)48 b(289.240112)390 2710 y(#)f
 (Double-precision)d(weight)i(\(gw\),)142 b(double-precision)43
-b(arithmetic)i(\(C\))390 1899 y(#)i(TREFHT)237 b(=)48
-b(289.239964)390 2008 y(#)f(Single-precision)d(weight)i(\(area\),)g
-(double-precision)d(arithmetic)i(\(Matlab\))390 2118
-y(#)i(TREFHT)237 b(=)48 b(289.239964)390 2228 y(#)f(Double-precision)d
+b(arithmetic)i(\(C\))390 2819 y(#)i(TREFHT)237 b(=)48
+b(289.239964)390 2929 y(#)f(Single-precision)d(weight)i(\(area\),)g
+(double-precision)d(arithmetic)i(\(Matlab\))390 3039
+y(#)i(TREFHT)237 b(=)48 b(289.239964)390 3148 y(#)f(Double-precision)d
 (weight)i(\(gw\),)142 b(double-precision)43 b(arithmetic)i(\(Matlab\))
-390 2337 y(#)i(TREFHT)237 b(=)48 b(289.239964)390 2447
+390 3258 y(#)i(TREFHT)237 b(=)48 b(289.239964)390 3367
 y(#)f(Single-precision)d(weight)i(\(area\),)g(double-precision)d
-(arithmetic)i(\(NCL\))390 2556 y(ncl)i(<)g(ncwa_3528514.ncl)390
-2666 y(#)g(TREFHT)237 b(=)48 b(289.239960)390 2776 y(#)f(TREFHT_dbl)e
-(=)j(289.239964)390 2885 y(#)f(Double-precision)d(weight)i(\(gw\),)142
-b(double-precision)43 b(arithmetic)i(\(NCL\))390 2995
-y(#)i(TREFHT)237 b(=)48 b(289.239960)390 3104 y(#)f(TREFHT_dbl)e(=)j
-(289.239964)275 3302 y FD(All)23 b(languages)h(tested)f(\(C,)g(Matlab,)
-j FC(NCL)p FD(,)e(and)e FC(NCO)p FD(\))h(agree)h(to)g(mac)m(hine)f
-(precision)g(with)f(double-)150 3411 y(precision)38 b(arithmetic.)66
+(arithmetic)i(\(NCL\))390 3477 y(ncl)i(<)g(ncwa_3528514.ncl)390
+3587 y(#)g(TREFHT)237 b(=)48 b(289.239960)390 3696 y(#)f(TREFHT_dbl)e
+(=)j(289.239964)390 3806 y(#)f(Double-precision)d(weight)i(\(gw\),)142
+b(double-precision)43 b(arithmetic)i(\(NCL\))390 3915
+y(#)i(TREFHT)237 b(=)48 b(289.239960)390 4025 y(#)f(TREFHT_dbl)e(=)j
+(289.239964)275 4189 y FE(All)23 b(languages)h(tested)f(\(C,)g(Matlab,)
+j FD(NCL)p FE(,)e(and)e FD(NCO)p FE(\))h(agree)h(to)g(mac)m(hine)f
+(precision)g(with)f(double-)150 4299 y(precision)38 b(arithmetic.)66
 b(Users)38 b(are)h(fortunate)g(to)g(ha)m(v)m(e)g(a)g(v)-5
 b(ariet)m(y)40 b(of)e(high)g(qualit)m(y)i(soft)m(w)m(are)f(that)150
-3521 y(lib)s(erates)29 b(them)f(from)f(the)i(drudgery)d(of)j(co)s(ding)
+4408 y(lib)s(erates)29 b(them)f(from)f(the)i(drudgery)d(of)j(co)s(ding)
 f(their)g(o)m(wn.)40 b(Man)m(y)29 b(pac)m(k)-5 b(ages)30
-b(are)e(free)g(\(as)h(in)f(b)s(eer\)!)150 3630 y(As)34
-b(sho)m(wn)f(ab)s(o)m(v)m(e)h FC(NCO)g FD(p)s(ermits)e(one)i(to)h
+b(are)e(free)g(\(as)h(in)f(b)s(eer\)!)150 4518 y(As)34
+b(sho)m(wn)f(ab)s(o)m(v)m(e)h FD(NCO)g FE(p)s(ermits)e(one)i(to)h
 (shift)e(to)h(their)g(\015oat-promotion)h(preferences)e(as)h(desired.)
-150 3740 y(No)d(other)g(language)g(allo)m(ws)h(this)e(with)g(a)h
-(simple)f(switc)m(h.)275 3937 y(T)-8 b(o)22 b(summarize,)h(un)m(til)f
+150 4628 y(No)d(other)g(language)g(allo)m(ws)h(this)e(with)g(a)h
+(simple)f(switc)m(h.)275 4792 y(T)-8 b(o)22 b(summarize,)h(un)m(til)f
 (v)m(ersion)g(4.3.6)h(\(Septem)m(b)s(er,)g(2013\),)j(the)c(default)f
-(arithmetic)i(con)m(v)m(en)m(tion)h(of)150 4047 y FC(NCO)31
-b FD(adhered)f(to)h(F)-8 b(ortran)32 b(b)s(eha)m(vior,)f(and)g
+(arithmetic)i(con)m(v)m(en)m(tion)h(of)150 4902 y FD(NCO)31
+b FE(adhered)f(to)h(F)-8 b(ortran)32 b(b)s(eha)m(vior,)f(and)g
 (automatically)i(promoted)e(single-precision)h(to)g(double-)150
-4156 y(precision)26 b(in)f(all)h(mixed-precision)g(expressions,)g(and)f
+5011 y(precision)26 b(in)f(all)h(mixed-precision)g(expressions,)g(and)f
 (left-alone)j(pure)c(single-precision)j(expressions.)150
-4266 y(This)39 b(is)g(faster)h(and)f(more)h(memory)g(e\016cien)m(t)h
+5121 y(This)39 b(is)g(faster)h(and)f(more)h(memory)g(e\016cien)m(t)h
 (than)e(other)h(con)m(v)m(en)m(tions.)70 b(Ho)m(w)m(ev)m(er,)44
-b(pure)39 b(single-)150 4376 y(precision)k(arithmetic)i(can)e(lose)h
+b(pure)39 b(single-)150 5230 y(precision)k(arithmetic)i(can)e(lose)h
 (to)s(o)g(m)m(uc)m(h)g(precision)f(when)f(used)h(to)g(condense)h
-(\(e.g.,)k(a)m(v)m(erage\))150 4485 y(large)35 b(arra)m(ys.)54
-b(Statistics)35 b(in)m(v)m(olving)h(ab)s(out)e Fv(n)e
-FD(=)f(10)p Fv(;)15 b FD(000)37 b(single-precision)f(inputs)d(will)i
-(lose)g(ab)s(out)150 4595 y(2{3)c(digits)f(if)g(not)g(promoted)g(to)h
-(double-precision)e(prior)h(to)g(arithmetic.)42 b(The)29
-b(loss)h(scales)h(with)f(the)150 4704 y(squarero)s(ot)k(of)d
-Fz(n)o FD(.)52 b(F)-8 b(or)35 b(larger)g Fz(n)p FD(,)f(users)g(should)f
-(promote)h(\015oats)h(with)f(the)g(`)p Fy(--dbl)p FD(')f(option)i(if)f
-(they)150 4814 y(w)m(an)m(t)d(to)g(preserv)m(e)g(more)f(than)h(four)e
+(\(e.g.,)k(a)m(v)m(erage\))150 5340 y(large)35 b(arra)m(ys.)54
+b(Statistics)35 b(in)m(v)m(olving)h(ab)s(out)e Fw(n)e
+FE(=)f(10)p Fw(;)15 b FE(000)37 b(single-precision)f(inputs)d(will)i
+(lose)g(ab)s(out)p eop end
+%%Page: 108 114
+TeXDict begin 108 113 bop 150 -116 a FE(108)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(2{3)h(digits)f(if)g(not)g(promoted)
+g(to)h(double-precision)e(prior)h(to)g(arithmetic.)42
+b(The)29 b(loss)h(scales)h(with)f(the)150 408 y(squarero)s(ot)k(of)d
+FA(n)o FE(.)52 b(F)-8 b(or)35 b(larger)g FA(n)p FE(,)f(users)g(should)f
+(promote)h(\015oats)h(with)f(the)g(`)p Fz(--dbl)p FE(')f(option)i(if)f
+(they)150 518 y(w)m(an)m(t)d(to)g(preserv)m(e)g(more)f(than)h(four)e
 (signi\014can)m(t)i(digits)g(in)g(their)f(results.)275
-5011 y(The)f(`)p Fy(--dbl)p FD(')h(and)f(`)p Fy(--flt)p
-FD(')g(switc)m(hes)i(are)g(only)f(a)m(v)-5 b(ailable)33
-b(with)d(the)g FC(NCO)g FD(arithmetic)i(op)s(erators)150
-5121 y(that)23 b(could)g(p)s(oten)m(tially)i(p)s(erform)c(more)i(than)g
+691 y(The)f(`)p Fz(--dbl)p FE(')h(and)f(`)p Fz(--flt)p
+FE(')g(switc)m(hes)i(are)g(only)f(a)m(v)-5 b(ailable)33
+b(with)d(the)g FD(NCO)g FE(arithmetic)i(op)s(erators)150
+801 y(that)23 b(could)g(p)s(oten)m(tially)i(p)s(erform)c(more)i(than)g
 (a)g(few)g(single-precision)h(\015oating)g(p)s(oin)m(t)f(op)s(erations)
-g(p)s(er)150 5230 y(result.)46 b(These)31 b(are)i Fy(nces)p
-FD(,)e Fy(ncra)p FD(,)h(and)f Fy(ncwa)p FD(.)45 b(Eac)m(h)32
+g(p)s(er)150 910 y(result.)46 b(These)31 b(are)i Fz(nces)p
+FE(,)e Fz(ncra)p FE(,)h(and)f Fz(ncwa)p FE(.)45 b(Eac)m(h)32
 b(is)g(capable)h(of)g(thousands)d(to)j(millions)g(or)f(more)150
-5340 y(op)s(erations)f(p)s(er)f(result.)41 b(By)31 b(con)m(trast,)h
-(the)f(arithmetic)h(op)s(erators)f Fy(ncbo)e FD(and)h
-Fy(ncflint)f FD(p)s(erform)g(at)p eop end
-%%Page: 98 104
-TeXDict begin 98 103 bop 150 -116 a FD(98)2627 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(most)j(one)g(\015oating)g(p)s(oin)m
-(t)f(op)s(eration)h(p)s(er)f(result.)47 b(Pro)m(viding)32
-b(the)h(`)p Fy(--dbl)p FD(')f(option)g(for)h(suc)m(h)f(trivial)150
-408 y(op)s(erations)f(mak)m(es)g(little)h(sense,)f(so)f(the)h(option)g
+1020 y(op)s(erations)f(p)s(er)f(result.)41 b(By)31 b(con)m(trast,)h
+(the)f(arithmetic)h(op)s(erators)f Fz(ncbo)e FE(and)h
+Fz(ncflint)f FE(p)s(erform)g(at)150 1129 y(most)k(one)g(\015oating)g(p)
+s(oin)m(t)f(op)s(eration)h(p)s(er)f(result.)47 b(Pro)m(viding)32
+b(the)h(`)p Fz(--dbl)p FE(')f(option)g(for)h(suc)m(h)f(trivial)150
+1239 y(op)s(erations)f(mak)m(es)g(little)h(sense,)f(so)f(the)h(option)g
 (is)f(not)h(curren)m(tly)f(made)h(a)m(v)-5 b(ailable.)275
-568 y(W)d(e)26 b(are)h(in)m(terested)f(in)g(users')f(opinions)g(on)h
+1412 y(W)d(e)26 b(are)h(in)m(terested)f(in)g(users')f(opinions)g(on)h
 (these)g(matters.)40 b(The)25 b(default)h(b)s(eha)m(vior)g(w)m(as)g(c)m
-(hanged)150 678 y(from)20 b(`)p Fy(--flt)p FD(')g(to)i(`)p
-Fy(--dbl)p FD(')e(with)g(the)h(release)h(of)f FC(NCO)g
-FD(v)m(ersion)g(4.3.6)i(\(Octob)s(er)e(2013\).)40 b(W)-8
-b(e)22 b(will)f(c)m(hange)150 787 y(the)35 b(default)g(bac)m(k)h(to)f
-(`)p Fy(--flt)p FD(')f(if)h(users)f(prefer.)53 b(Or)34
-b(w)m(e)h(could)g(set)h(a)f(threshold)f(\(e.g.,)k Fv(n)32
-b FA(\025)g FD(10000\))150 897 y(after)39 b(whic)m(h)f(single-)i(to)f
+(hanged)150 1522 y(from)20 b(`)p Fz(--flt)p FE(')g(to)i(`)p
+Fz(--dbl)p FE(')e(with)g(the)h(release)h(of)f FD(NCO)g
+FE(v)m(ersion)g(4.3.6)i(\(Octob)s(er)e(2013\).)40 b(W)-8
+b(e)22 b(will)f(c)m(hange)150 1631 y(the)35 b(default)g(bac)m(k)h(to)f
+(`)p Fz(--flt)p FE(')f(if)h(users)f(prefer.)53 b(Or)34
+b(w)m(e)h(could)g(set)h(a)f(threshold)f(\(e.g.,)k Fw(n)32
+b FB(\025)g FE(10000\))150 1741 y(after)39 b(whic)m(h)f(single-)i(to)f
 (double-precision)f(promotion)h(is)g(automatically)i(in)m(v)m(ok)m(ed.)
-66 b(Or)38 b(w)m(e)h(could)150 1006 y(mak)m(e)27 b(the)f(default)g
+66 b(Or)38 b(w)m(e)h(could)150 1850 y(mak)m(e)27 b(the)f(default)g
 (promotion)h(con)m(v)m(en)m(tion)h(settable)f(via)g(an)f(en)m(vironmen)
-m(t)g(v)-5 b(ariable)27 b(\()p FC(GSL)f FD(do)s(es)g(this)150
-1116 y(a)31 b(lot\).)42 b(Please)31 b(let)h(us)d(kno)m(w)i(what)f(y)m
+m(t)g(v)-5 b(ariable)27 b(\()p FD(GSL)f FE(do)s(es)g(this)150
+1960 y(a)31 b(lot\).)42 b(Please)31 b(let)h(us)d(kno)m(w)i(what)f(y)m
 (ou)h(think)f(of)g(the)h(selected)h(defaults)e(and)g(options.)150
-1316 y Fu(3.33.3)63 b(Man)m(ual)41 b(t)m(yp)s(e)f(con)m(v)m(ersion)150
-1463 y Fy(ncap2)26 b FD(pro)m(vides)i(in)m(trinsic)g(functions)f(for)h
+2186 y Fv(3.34.3)63 b(Man)m(ual)41 b(t)m(yp)s(e)f(con)m(v)m(ersion)150
+2333 y Fz(ncap2)26 b FE(pro)m(vides)i(in)m(trinsic)g(functions)f(for)h
 (p)s(erforming)e(man)m(ual)i(t)m(yp)s(e)g(con)m(v)m(ersions.)41
-b(This,)28 b(for)f(exam-)150 1572 y(ple,)i(con)m(v)m(erts)g(v)-5
-b(ariable)28 b Fy(tpt)f FD(to)i(external)f(t)m(yp)s(e)g
-Fy(NC_SHORT)e FD(\(a)i(C-t)m(yp)s(e)g Fy(short)p FD(\),)g(and)f(v)-5
-b(ariable)28 b Fy(prs)f FD(to)150 1682 y(external)k(t)m(yp)s(e)g
-Fy(NC_DOUBLE)d FD(\(a)j(C-t)m(yp)s(e)f Fy(double)p FD(\).)390
-1841 y Fy(ncap2)46 b(-s)i('tpt=short\(tpt\);prs=dou)o(ble)o(\(prs)o
-(\)')42 b(in.nc)k(out.nc)275 2001 y FD(See)30 b(Section)h(4.1)h([ncap2)
-f(netCDF)g(Arithmetic)g(Pro)s(cessor],)g(page)g(104,)h(for)e(more)h
-(details.)150 2234 y FB(3.34)68 b(Batc)l(h)45 b(Mo)t(de)150
-2344 y Fk(\013)p 200 2344 3554 4 v 3553 w(\010)p 150
-2834 4 442 v 178 2481 a FD(Av)-5 b(ailabilit)m(y:)43
-b(All)31 b(op)s(erators)178 2590 y(Short)f(options:)41
-b(`)p Fy(-O)p FD(',)31 b(`)p Fy(-A)p FD(')178 2700 y(Long)g(options:)41
-b(`)p Fy(--ovr)p FD(',)29 b(`)p Fy(--overwrite)p FD(',)g(`)p
-Fy(--apn)p FD(',)g(`)p Fy(--append)p FD(')p 3803 2834
-V 150 2886 a Fk(\012)p 200 2886 3554 4 v 3553 w(\011)275
-3056 y FD(If)35 b(the)h Fz(output-\014le)41 b FD(sp)s(eci\014ed)35
+b(This,)28 b(for)f(exam-)150 2443 y(ple,)i(con)m(v)m(erts)g(v)-5
+b(ariable)28 b Fz(tpt)f FE(to)i(external)f(t)m(yp)s(e)g
+Fz(NC_SHORT)e FE(\(a)i(C-t)m(yp)s(e)g Fz(short)p FE(\),)g(and)f(v)-5
+b(ariable)28 b Fz(prs)f FE(to)150 2553 y(external)k(t)m(yp)s(e)g
+Fz(NC_DOUBLE)d FE(\(a)j(C-t)m(yp)s(e)f Fz(double)p FE(\).)390
+2726 y Fz(ncap2)46 b(-s)i('tpt=short\(tpt\);prs=dou)o(ble)o(\(prs)o
+(\)')42 b(in.nc)k(out.nc)275 2899 y FE(See)30 b(Section)h(4.1)h([ncap2)
+f(netCDF)g(Arithmetic)g(Pro)s(cessor],)g(page)g(116,)h(for)e(more)h
+(details.)150 3172 y FC(3.35)68 b(Batc)l(h)45 b(Mo)t(de)150
+3282 y Fl(\013)p 200 3282 3554 4 v 3553 w(\010)p 150
+3772 4 442 v 178 3418 a FE(Av)-5 b(ailabilit)m(y:)43
+b(All)31 b(op)s(erators)178 3528 y(Short)f(options:)41
+b(`)p Fz(-O)p FE(',)31 b(`)p Fz(-A)p FE(')178 3638 y(Long)g(options:)41
+b(`)p Fz(--ovr)p FE(',)29 b(`)p Fz(--overwrite)p FE(',)g(`)p
+Fz(--apn)p FE(',)g(`)p Fz(--append)p FE(')p 3803 3772
+V 150 3824 a Fl(\012)p 200 3824 3554 4 v 3553 w(\011)275
+4007 y FE(If)35 b(the)h FA(output-\014le)41 b FE(sp)s(eci\014ed)35
 b(for)h(a)g(command)g(is)g(a)g(pre-existing)h(\014le,)h(then)d(the)h
-(op)s(erator)h(will)150 3166 y(prompt)d(the)i(user)e(whether)h(to)h(o)m
-(v)m(erwrite)g(\(erase\))h(the)e(existing)i Fz(output-\014le)p
-FD(,)f(attempt)h(to)f(app)s(end)150 3275 y(to)43 b(it,)k(or)42
+(op)s(erator)h(will)150 4117 y(prompt)d(the)i(user)e(whether)h(to)h(o)m
+(v)m(erwrite)g(\(erase\))h(the)e(existing)i FA(output-\014le)p
+FE(,)f(attempt)h(to)f(app)s(end)150 4227 y(to)43 b(it,)k(or)42
 b(ab)s(ort)h(the)g(op)s(eration.)78 b(Ho)m(w)m(ev)m(er,)48
 b(in)m(teractiv)m(e)d(questions)e(reduce)f(pro)s(ductivit)m(y)h(when)
-150 3385 y(pro)s(cessing)38 b(large)i(amoun)m(ts)f(of)f(data.)66
-b(Therefore)38 b FC(NCO)g FD(also)i(implemen)m(ts)f(t)m(w)m(o)g(w)m(a)m
-(ys)h(to)f(o)m(v)m(erride)150 3494 y(its)i(o)m(wn)g(safet)m(y)h
-(features,)i(the)d(`)p Fy(-O)p FD(')f(and)g(`)p Fy(-A)p
-FD(')h(switc)m(hes.)73 b(Sp)s(ecifying)40 b(`)p Fy(-O)p
-FD(')g(tells)i(the)f(op)s(erator)g(to)150 3604 y(o)m(v)m(erwrite)30
-b(an)m(y)f(existing)g Fz(output-\014le)34 b FD(without)28
+150 4336 y(pro)s(cessing)38 b(large)i(amoun)m(ts)f(of)f(data.)66
+b(Therefore)38 b FD(NCO)g FE(also)i(implemen)m(ts)f(t)m(w)m(o)g(w)m(a)m
+(ys)h(to)f(o)m(v)m(erride)150 4446 y(its)i(o)m(wn)g(safet)m(y)h
+(features,)i(the)d(`)p Fz(-O)p FE(')f(and)g(`)p Fz(-A)p
+FE(')h(switc)m(hes.)73 b(Sp)s(ecifying)40 b(`)p Fz(-O)p
+FE(')g(tells)i(the)f(op)s(erator)g(to)150 4555 y(o)m(v)m(erwrite)30
+b(an)m(y)f(existing)g FA(output-\014le)34 b FE(without)28
 b(prompting)g(the)h(user)f(in)m(teractiv)m(ely)-8 b(.)43
-b(Sp)s(ecifying)28 b(`)p Fy(-A)p FD(')150 3714 y(tells)33
+b(Sp)s(ecifying)28 b(`)p Fz(-A)p FE(')150 4665 y(tells)33
 b(the)e(op)s(erator)h(to)g(attempt)h(to)f(app)s(end)e(to)i(an)m(y)g
-(existing)h Fz(output-\014le)j FD(without)c(prompting)f(the)150
-3823 y(user)h(in)m(teractiv)m(ely)-8 b(.)53 b(These)33
+(existing)h FA(output-\014le)j FE(without)c(prompting)f(the)150
+4774 y(user)h(in)m(teractiv)m(ely)-8 b(.)53 b(These)33
 b(switc)m(hes)h(are)f(useful)f(in)h(batc)m(h)h(en)m(vironmen)m(ts)g(b)s
-(ecause)f(they)g(suppress)150 3933 y(in)m(teractiv)m(e)39
+(ecause)f(they)g(suppress)150 4884 y(in)m(teractiv)m(e)39
 b(k)m(eyb)s(oard)d(input.)56 b(NB:)37 b(As)f(of)g(20120515,)41
-b Fy(ncap2)34 b FD(is)i(unable)g(to)h(app)s(end)d(to)i(\014les)g(that)
-150 4042 y(already)31 b(con)m(tain)h(the)e(app)s(ended)f(dimensions.)
-150 4275 y FB(3.35)68 b(History)46 b(A)l(ttribute)150
-4409 y Fk(\013)p 200 4409 V 3553 w(\010)p 150 4899 4
-442 v 178 4545 a FD(Av)-5 b(ailabilit)m(y:)43 b(All)31
-b(op)s(erators)178 4655 y(Short)f(options:)41 b(`)p Fy(-h)p
-FD(')178 4764 y(Long)31 b(options:)41 b(`)p Fy(--hst)p
-FD(',)29 b(`)p Fy(--history)p FD(')p 3803 4899 V 150
-4950 a Fk(\012)p 200 4950 3554 4 v 3553 w(\011)275 5121
-y FD(All)e(op)s(erators)g(automatically)j(app)s(end)25
-b(a)j Fy(history)c FD(global)29 b(attribute)e(to)h(an)m(y)f(\014le)g
-(they)g(create)i(or)150 5230 y(mo)s(dify)-8 b(.)39 b(The)26
-b Fy(history)e FD(attribute)j(consists)g(of)g(a)g(timestamp)g(and)f
-(the)g(full)g(string)h(of)f(the)h(in)m(v)m(o)s(cation)150
-5340 y(command)e(to)i(the)f(op)s(erator,)h(e.g.,)h(`)p
-Fy(Mon)i(May)f(26)h(20:10:24)e(1997:)h(ncks)g(in.nc)g(foo.nc)p
-FD('.)38 b(The)25 b(full)p eop end
-%%Page: 99 105
-TeXDict begin 99 104 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2475 b(99)150 299 y(con)m(ten)m(ts)30
-b(of)f(an)f(existing)i Fy(history)c FD(attribute)j(are)g(copied)g(from)
-f(the)g(\014rst)g Fz(input-\014le)33 b FD(to)c(the)g
-Fz(output-)150 408 y(\014le)p FD(.)39 b(The)25 b(timestamps)h(app)s
+b Fz(ncap2)34 b FE(is)i(unable)g(to)h(app)s(end)d(to)i(\014les)g(that)
+150 4994 y(already)31 b(con)m(tain)h(the)e(app)s(ended)f(dimensions.)
+150 5267 y FC(3.36)68 b(History)46 b(A)l(ttribute)p eop
+end
+%%Page: 109 115
+TeXDict begin 109 114 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2362 b(109)150 51 y Fl(\013)p
+200 51 3554 4 v 3553 w(\010)p 150 541 4 442 v 178 188
+a FE(Av)-5 b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)178
+297 y(Short)f(options:)41 b(`)p Fz(-h)p FE(')178 407
+y(Long)31 b(options:)41 b(`)p Fz(--hst)p FE(',)29 b(`)p
+Fz(--history)p FE(')p 3803 541 V 150 593 a Fl(\012)p
+200 593 3554 4 v 3553 w(\011)275 782 y FE(All)e(op)s(erators)g
+(automatically)j(app)s(end)25 b(a)j Fz(history)c FE(global)29
+b(attribute)e(to)h(an)m(y)f(\014le)g(they)g(create)i(or)150
+892 y(mo)s(dify)-8 b(.)39 b(The)26 b Fz(history)e FE(attribute)j
+(consists)g(of)g(a)g(timestamp)g(and)f(the)g(full)g(string)h(of)f(the)h
+(in)m(v)m(o)s(cation)150 1002 y(command)e(to)i(the)f(op)s(erator,)h
+(e.g.,)h(`)p Fz(Mon)i(May)f(26)h(20:10:24)e(1997:)h(ncks)g(in.nc)g
+(foo.nc)p FE('.)38 b(The)25 b(full)150 1111 y(con)m(ten)m(ts)30
+b(of)f(an)f(existing)i Fz(history)c FE(attribute)j(are)g(copied)g(from)
+f(the)g(\014rst)g FA(input-\014le)33 b FE(to)c(the)g
+FA(output-)150 1221 y(\014le)p FE(.)39 b(The)25 b(timestamps)h(app)s
 (ear)f(in)h(rev)m(erse)g(c)m(hronological)i(order,)f(with)e(the)h(most)
-g(recen)m(t)g(timestamp)150 518 y(app)s(earing)37 b(\014rst)h(in)f(the)
-h Fy(history)e FD(attribute.)64 b(Since)38 b FC(NCO)f
-FD(and)g(man)m(y)h(other)g(netCDF)h(op)s(erators)150
-628 y(adhere)33 b(to)h(the)g Fy(history)d FD(con)m(v)m(en)m(tion,)36
+g(recen)m(t)g(timestamp)150 1330 y(app)s(earing)37 b(\014rst)h(in)f
+(the)h Fz(history)e FE(attribute.)64 b(Since)38 b FD(NCO)f
+FE(and)g(man)m(y)h(other)g(netCDF)h(op)s(erators)150
+1440 y(adhere)33 b(to)h(the)g Fz(history)d FE(con)m(v)m(en)m(tion,)36
 b(the)e(en)m(tire)g(data)g(pro)s(cessing)f(path)g(of)h(a)g(giv)m(en)g
-(netCDF)g(\014le)150 737 y(ma)m(y)h(often)g(b)s(e)e(deduced)h(from)g
-(examination)h(of)g(its)f Fy(history)f FD(attribute.)53
-b(As)34 b(of)h(Ma)m(y)-8 b(,)37 b(2002,)g FC(NCO)150
-847 y FD(is)f(case-insensitiv)m(e)i(to)f(the)f(sp)s(elling)g(of)g(the)g
-Fy(history)e FD(attribute)j(name.)57 b(Th)m(us)35 b(attributes)h(named)
-150 956 y Fy(History)20 b FD(or)j Fy(HISTORY)d FD(\(whic)m(h)j(are)g
-(non-standard)e(and)h(not)h(recommended\))f(will)h(b)s(e)e(treated)j
-(as)f(v)-5 b(alid)150 1066 y(history)40 b(attributes.)71
-b(When)40 b(more)g(than)g(one)h(global)g(attribute)g(\014ts)f(the)h
-(case-insensitiv)m(e)h(searc)m(h)150 1176 y(for)e(\\history",)k(the)c
-(\014rst)f(one)i(found)e(will)h(b)s(e)g(used.)69 b Fy(history)38
-b FD(attribute)j(T)-8 b(o)41 b(a)m(v)m(oid)h(information)150
-1285 y(o)m(v)m(erkill,)g(all)c(op)s(erators)g(ha)m(v)m(e)h(an)e
-(optional)i(switc)m(h)f(\(`)p Fy(-h)p FD(',)h(`)p Fy(--hst)p
-FD(',)g(or)f(`)p Fy(--history)p FD('\))e(to)i(o)m(v)m(erride)150
-1395 y(automatically)29 b(app)s(ending)24 b(the)i Fy(history)e
-FD(attribute)i(\(see)h(Section)g(4.2)g([ncatted)g(netCDF)f(A)m
-(ttribute)150 1504 y(Editor],)35 b(page)f(156\).)53 b(Note)35
-b(that)f(the)g(`)p Fy(-h)p FD(')f(switc)m(h)h(also)h(turns)d(o\013)j
-(writing)e(the)h Fy(nco_input_file_)150 1614 y(list)29
-b FD(attribute)i(for)f(m)m(ulti-\014le)i(op)s(erators)e(\(see)i
-(Section)f(3.36)h([File)g(List)e(A)m(ttributes],)i(page)f(99\).)150
-1989 y FB(3.36)68 b(File)46 b(List)f(A)l(ttributes)150
-2099 y Fk(\013)p 200 2099 3554 4 v 3553 w(\010)p 150
-2589 4 442 v 178 2235 a FD(Av)-5 b(ailabilit)m(y:)43
-b Fy(nces)p FD(,)30 b Fy(ncecat)p FD(,)f Fy(ncra)p FD(,)g
-Fy(ncrcat)178 2345 y FD(Short)h(options:)41 b(`)p Fy(-H)p
-FD(')178 2454 y(Long)31 b(options:)41 b(`)p Fy(--fl_lst_in)p
-FD(',)28 b(`)p Fy(--file_list)p FD(')p 3803 2589 V 150
-2640 a Fk(\012)p 200 2640 3554 4 v 3553 w(\011)275 2858
-y FD(Man)m(y)41 b(metho)s(ds)g(of)g(sp)s(ecifying)g(large)h(n)m(um)m(b)
-s(ers)e(of)h(input)g(\014le)g(names)g(pass)g(these)g(names)g(via)150
-2968 y(pip)s(es,)29 b(enco)s(dings,)g(or)h(argumen)m(t)g(transfer)e
-(programs)h(\(see)i(Section)f(2.7)g([Large)h(Num)m(b)s(ers)d(of)h
-(Files],)150 3077 y(page)34 b(19\).)52 b(When)34 b(these)g(metho)s(ds)f
-(are)h(used,)g(the)g(input)f(\014le)h(list)g(is)g(not)g(explicitly)h
-(passed)e(on)h(the)150 3187 y(command)e(line.)48 b(This)32
-b(results)g(in)g(a)h(loss)g(of)g(information)f(since)h(the)g
-Fy(history)e FD(attribute)i(no)f(longer)150 3296 y(con)m(tains)g(the)e
+(netCDF)g(\014le)150 1549 y(ma)m(y)h(often)g(b)s(e)e(deduced)h(from)g
+(examination)h(of)g(its)f Fz(history)f FE(attribute.)53
+b(As)34 b(of)h(Ma)m(y)-8 b(,)37 b(2002,)g FD(NCO)150
+1659 y FE(is)f(case-insensitiv)m(e)i(to)f(the)f(sp)s(elling)g(of)g(the)
+g Fz(history)e FE(attribute)j(name.)57 b(Th)m(us)35 b(attributes)h
+(named)150 1769 y Fz(History)20 b FE(or)j Fz(HISTORY)d
+FE(\(whic)m(h)j(are)g(non-standard)e(and)h(not)h(recommended\))f(will)h
+(b)s(e)e(treated)j(as)f(v)-5 b(alid)150 1878 y(history)40
+b(attributes.)71 b(When)40 b(more)g(than)g(one)h(global)g(attribute)g
+(\014ts)f(the)h(case-insensitiv)m(e)h(searc)m(h)150 1988
+y(for)e(\\history",)k(the)c(\014rst)f(one)i(found)e(will)h(b)s(e)g
+(used.)69 b Fz(history)38 b FE(attribute)j(T)-8 b(o)41
+b(a)m(v)m(oid)h(information)150 2097 y(o)m(v)m(erkill,)g(all)c(op)s
+(erators)g(ha)m(v)m(e)h(an)e(optional)i(switc)m(h)f(\(`)p
+Fz(-h)p FE(',)h(`)p Fz(--hst)p FE(',)g(or)f(`)p Fz(--history)p
+FE('\))e(to)i(o)m(v)m(erride)150 2207 y(automatically)29
+b(app)s(ending)24 b(the)i Fz(history)e FE(attribute)i(\(see)h(Section)g
+(4.2)g([ncatted)g(netCDF)f(A)m(ttribute)150 2317 y(Editor],)35
+b(page)f(168\).)53 b(Note)35 b(that)f(the)g(`)p Fz(-h)p
+FE(')f(switc)m(h)h(also)h(turns)d(o\013)j(writing)e(the)h
+Fz(nco_input_file_)150 2426 y(list)29 b FE(attribute)i(for)f(m)m
+(ulti-\014le)i(op)s(erators)e(\(see)i(Section)f(3.37)h([File)g(List)e
+(A)m(ttributes],)i(page)f(109\).)150 2717 y FC(3.37)68
+b(File)46 b(List)f(A)l(ttributes)150 2827 y Fl(\013)p
+200 2827 V 3553 w(\010)p 150 3317 4 442 v 178 2963 a
+FE(Av)-5 b(ailabilit)m(y:)43 b Fz(nces)p FE(,)30 b Fz(ncecat)p
+FE(,)f Fz(ncra)p FE(,)g Fz(ncrcat)178 3073 y FE(Short)h(options:)41
+b(`)p Fz(-H)p FE(')178 3182 y(Long)31 b(options:)41 b(`)p
+Fz(--fl_lst_in)p FE(',)28 b(`)p Fz(--file_list)p FE(')p
+3803 3317 V 150 3368 a Fl(\012)p 200 3368 3554 4 v 3553
+w(\011)275 3558 y FE(Man)m(y)41 b(metho)s(ds)g(of)g(sp)s(ecifying)g
+(large)h(n)m(um)m(b)s(ers)e(of)h(input)g(\014le)g(names)g(pass)g(these)
+g(names)g(via)150 3667 y(pip)s(es,)29 b(enco)s(dings,)g(or)h(argumen)m
+(t)g(transfer)e(programs)h(\(see)i(Section)f(2.7)g([Large)h(Num)m(b)s
+(ers)d(of)h(Files],)150 3777 y(page)34 b(19\).)52 b(When)34
+b(these)g(metho)s(ds)f(are)h(used,)g(the)g(input)f(\014le)h(list)g(is)g
+(not)g(explicitly)h(passed)e(on)h(the)150 3887 y(command)e(line.)48
+b(This)32 b(results)g(in)g(a)h(loss)g(of)g(information)f(since)h(the)g
+Fz(history)e FE(attribute)i(no)f(longer)150 3996 y(con)m(tains)g(the)e
 (exact)i(command)e(b)m(y)g(whic)m(h)h(the)f(\014le)h(w)m(as)f(created.)
-275 3503 y FC(NCO)g FD(solv)m(es)i(this)e(dilemma)h(b)m(y)g(arc)m
+275 4175 y FD(NCO)g FE(solv)m(es)i(this)e(dilemma)h(b)m(y)g(arc)m
 (hiving)g(input)f(\014le)h(list)g(attributes.)42 b(When)31
-b(the)g(input)f(\014le)g(list)150 3613 y(to)g(a)g(m)m(ulti-\014le)g(op)
-s(erator)g(is)g(sp)s(eci\014ed)e(via)j Fy(stdin)p FD(,)d(the)i(op)s
+b(the)g(input)f(\014le)g(list)150 4285 y(to)g(a)g(m)m(ulti-\014le)g(op)
+s(erator)g(is)g(sp)s(eci\014ed)e(via)j Fz(stdin)p FE(,)d(the)i(op)s
 (erator,)g(b)m(y)f(default,)h(attac)m(hes)i(t)m(w)m(o)f(global)150
-3722 y(attributes)f(to)h(an)m(y)f(\014le)f(they)h(create)h(or)f(mo)s
-(dify)-8 b(.)40 b(The)29 b Fy(nco_input_file_number)24
-b FD(global)31 b(attribute)150 3832 y(con)m(tains)45
+4394 y(attributes)f(to)h(an)m(y)f(\014le)f(they)h(create)h(or)f(mo)s
+(dify)-8 b(.)40 b(The)29 b Fz(nco_input_file_number)24
+b FE(global)31 b(attribute)150 4504 y(con)m(tains)45
 b(the)g(n)m(um)m(b)s(er)e(of)h(input)f(\014les,)48 b(and)c
-Fy(nco_input_file_list)39 b FD(con)m(tains)45 b(the)f(\014le)h(names,)
-150 3942 y(sp)s(eci\014ed)28 b(as)h(standard)f(input)g(to)h(the)g(m)m
+Fz(nco_input_file_list)39 b FE(con)m(tains)45 b(the)f(\014le)h(names,)
+150 4613 y(sp)s(eci\014ed)28 b(as)h(standard)f(input)g(to)h(the)g(m)m
 (ulti-\014le)h(op)s(erator.)40 b(This)28 b(information)h(helps)g(to)g
-(v)m(erify)g(that)150 4051 y(all)e(input)f(\014les)g(the)h(user)f
-(thinks)g(w)m(ere)h(pip)s(ed)e(through)g Fy(stdin)g FD(actually)k
-(arriv)m(ed.)39 b(Without)27 b(the)g Fy(nco_)150 4161
-y(input_file_list)37 b FD(attribute,)46 b(the)c(information)g(is)f
+(v)m(erify)g(that)150 4723 y(all)e(input)f(\014les)g(the)h(user)f
+(thinks)g(w)m(ere)h(pip)s(ed)e(through)g Fz(stdin)g FE(actually)k
+(arriv)m(ed.)39 b(Without)27 b(the)g Fz(nco_)150 4832
+y(input_file_list)37 b FE(attribute,)46 b(the)c(information)g(is)f
 (lost)i(forev)m(er)f(and)f(the)h(\\c)m(hain)h(of)f(evidence")150
-4270 y(w)m(ould)30 b(b)s(e)g(brok)m(en.)275 4477 y(The)36
-b(`)p Fy(-H)p FD(')g(switc)m(h)h(o)m(v)m(errides)h(\(turns)d(o\013)7
+4942 y(w)m(ould)30 b(b)s(e)g(brok)m(en.)275 5121 y(The)36
+b(`)p Fz(-H)p FE(')g(switc)m(h)h(o)m(v)m(errides)h(\(turns)d(o\013)7
 b(\))38 b(the)e(default)h(b)s(eha)m(vior)g(of)g(writing)f(the)h(input)f
-(\014le)g(list)150 4587 y(global)h(attributes)g(when)e(input)g(is)h
-(from)g Fy(stdin)p FD(.)56 b(The)36 b(`)p Fy(-h)p FD(')g(switc)m(h)g
-(do)s(es)g(this)g(to)s(o,)i(and)e(turns)f(o\013)150 4696
-y(the)e Fy(history)f FD(attribute)i(as)f(w)m(ell)h(\(see)h(Section)f
-(3.35)g([History)h(A)m(ttribute],)g(page)f(98\).)51 b(Hence)34
-b(b)s(oth)150 4806 y(switc)m(hes)25 b(allo)m(ws)h(space-conscious)h
-(users)d(to)h(a)m(v)m(oid)h(storing)g(what)e(ma)m(y)i(amoun)m(t)f(to)g
-(man)m(y)g(thousands)150 4915 y(of)31 b(\014lenames)f(in)g(a)h
-(metadata)h(attribute.)150 5290 y FB(3.37)68 b Fu(CF)45
-b FB(Con)l(v)l(en)l(tions)p eop end
-%%Page: 100 106
-TeXDict begin 100 105 bop 150 -116 a FD(100)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 51 y Fk(\013)p 200 51 3554
-4 v 3553 w(\010)p 150 432 4 333 v 178 188 a FD(Av)-5
-b(ailabilit)m(y:)43 b Fy(ncbo)p FD(,)30 b Fy(nces)p FD(,)f
-Fy(ncecat)p FD(,)g Fy(ncflint)p FD(,)g Fy(ncpdq)p FD(,)g
-Fy(ncra)p FD(,)h Fy(ncwa)178 297 y FD(Short)g(options:)41
-b(None)p 3803 432 V 150 483 a Fk(\012)p 200 483 3554
-4 v 3553 w(\011)275 678 y FC(NCO)i FD(recognizes)i(some)f(Climate)h
-(and)d(F)-8 b(orecast)46 b(\()p FC(CF)p FD(\))f(metadata)g(con)m(v)m
-(en)m(tions,)k(and)43 b(applies)150 787 y(sp)s(ecial)e(rules)g(to)g
-(suc)m(h)f(data.)73 b FC(NCO)40 b FD(w)m(as)h(con)m(temp)s(oraneous)h
-(with)e FC(CO)n(ARDS)h FD(and)f(still)i(con)m(tains)150
-897 y(some)33 b(rules)f(to)h(handle)f(older)h FC(NCAR)g
-FD(mo)s(del)f(datasets,)j(suc)m(h)d(as)h FC(CCM)f FD(and)g(early)h
-FC(CCSM)g FD(datasets,)150 1006 y(that)g(pre-date)g FC(CF)p
-FD(.)46 b(Suc)m(h)32 b(datasets)i(ma)m(y)f(not)f(con)m(tain)i(an)e
-(explicit)i Fy(Conventions)29 b FD(attribute)k(\(e.g.,)150
-1116 y(`)p Fy(CF-1.0)p FD('\).)56 b(Nev)m(ertheless,)39
+(\014le)g(list)150 5230 y(global)h(attributes)g(when)e(input)g(is)h
+(from)g Fz(stdin)p FE(.)56 b(The)36 b(`)p Fz(-h)p FE(')g(switc)m(h)g
+(do)s(es)g(this)g(to)s(o,)i(and)e(turns)f(o\013)150 5340
+y(the)30 b Fz(history)f FE(attribute)i(as)f(w)m(ell)h(\(see)h(Section)f
+(3.36)g([History)h(A)m(ttribute],)f(page)g(108\).)43
+b(Hence)31 b(b)s(oth)p eop end
+%%Page: 110 116
+TeXDict begin 110 115 bop 150 -116 a FE(110)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(switc)m(hes)25 b(allo)m(ws)h
+(space-conscious)h(users)d(to)h(a)m(v)m(oid)h(storing)g(what)e(ma)m(y)i
+(amoun)m(t)f(to)g(man)m(y)g(thousands)150 408 y(of)31
+b(\014lenames)f(in)g(a)h(metadata)h(attribute.)150 661
+y FC(3.38)68 b Fv(CF)45 b FC(Con)l(v)l(en)l(tions)150
+771 y Fl(\013)p 200 771 3554 4 v 3553 w(\010)p 150 1151
+4 333 v 178 907 a FE(Av)-5 b(ailabilit)m(y:)43 b Fz(ncbo)p
+FE(,)30 b Fz(nces)p FE(,)f Fz(ncecat)p FE(,)g Fz(ncflint)p
+FE(,)g Fz(ncpdq)p FE(,)g Fz(ncra)p FE(,)h Fz(ncwa)178
+1017 y FE(Short)g(options:)41 b(None)p 3803 1151 V 150
+1203 a Fl(\012)p 200 1203 3554 4 v 3553 w(\011)275 1385
+y FD(NCO)i FE(recognizes)i(some)f(Climate)h(and)d(F)-8
+b(orecast)46 b(\()p FD(CF)p FE(\))f(metadata)g(con)m(v)m(en)m(tions,)k
+(and)43 b(applies)150 1494 y(sp)s(ecial)e(rules)g(to)g(suc)m(h)f(data.)
+73 b FD(NCO)40 b FE(w)m(as)h(con)m(temp)s(oraneous)h(with)e
+FD(CO)n(ARDS)h FE(and)f(still)i(con)m(tains)150 1604
+y(some)33 b(rules)f(to)h(handle)f(older)h FD(NCAR)g FE(mo)s(del)f
+(datasets,)j(suc)m(h)d(as)h FD(CCM)f FE(and)g(early)h
+FD(CCSM)g FE(datasets,)150 1713 y(that)g(pre-date)g FD(CF)p
+FE(.)46 b(Suc)m(h)32 b(datasets)i(ma)m(y)f(not)f(con)m(tain)i(an)e
+(explicit)i Fz(Conventions)29 b FE(attribute)k(\(e.g.,)150
+1823 y(`)p Fz(CF-1.0)p FE('\).)56 b(Nev)m(ertheless,)39
 b(w)m(e)d(refer)f(to)h(all)h(suc)m(h)e(metadata)j(collectiv)m(ely)h(as)
-d FC(CF)g FD(metadata.)58 b(Skip)150 1226 y(this)30 b(section)i(if)e(y)
-m(ou)h(nev)m(er)g(w)m(ork)f(with)g FC(CF)h FD(metadata.)275
-1404 y(The)k(latest)j FC(CF)f FD(netCDF)g(con)m(v)m(en)m(tions)h(are)f
-(describ)s(ed)e(here)h(\()p Fy(http:)5 b(/)g(/)t(cfconventions)g(.)t
-(org)t(/)150 1514 y(1)q(.)q(6)q(.)q(html)p FD(\).)44
-b(Most)33 b FC(CF)e FD(netCDF)i(con)m(v)m(en)m(tions)h(are)e
-(transparen)m(t)g(to)h FC(NCO)2807 1481 y Ft(31)2877
-1514 y FD(.)45 b(There)31 b(are)i(no)e(kno)m(wn)150 1623
+d FD(CF)g FE(metadata.)58 b(Skip)150 1933 y(this)30 b(section)i(if)e(y)
+m(ou)h(nev)m(er)g(w)m(ork)f(with)g FD(CF)h FE(metadata.)275
+2099 y(The)k(latest)j FD(CF)f FE(netCDF)g(con)m(v)m(en)m(tions)h(are)f
+(describ)s(ed)e(here)h(\()p Fz(http:)5 b(/)g(/)t(cfconventions)g(.)t
+(org)t(/)150 2208 y(1)q(.)q(6)q(.)q(html)p FE(\).)44
+b(Most)33 b FD(CF)e FE(netCDF)i(con)m(v)m(en)m(tions)h(are)e
+(transparen)m(t)g(to)h FD(NCO)2807 2175 y Fu(34)2877
+2208 y FE(.)45 b(There)31 b(are)i(no)e(kno)m(wn)150 2318
 y(pitfalls)38 b(asso)s(ciated)h(with)e(using)g(an)m(y)g
-FC(NCO)g FD(op)s(erator)h(on)f(\014les)g(adhering)g(to)i(these)e(con)m
-(v)m(en)m(tions)3652 1590 y Ft(32)3725 1623 y FD(.)150
-1733 y(Ho)m(w)m(ev)m(er,)31 b(to)e(facilitate)i(maxim)m(um)e(user)e
-(friendliness,)i FC(NCO)f FD(applies)g(sp)s(ecial)h(rules)f(to)h
-(certain)g(v)-5 b(ari-)150 1842 y(ables)27 b(in)f FC(CF)g
-FD(\014les.)40 b(The)26 b(sp)s(ecial)h(functions)f(are)h(not)f
-(required)g(b)m(y)g(the)h FC(CF)f FD(netCDF)h(con)m(v)m(en)m(tions,)j
-(y)m(et)150 1952 y(exp)s(erience)h(sho)m(ws)f(that)h(they)f(simplify)g
-(data)h(analysis.)275 2130 y(Curren)m(tly)-8 b(,)26 b
-FC(NCO)e FD(determines)h(whether)g(a)g(data\014le)h(is)f(a)h
-FC(CF)f FD(output)g(data\014le)h(simply)e(b)m(y)h(c)m(hec)m(king)150
-2240 y(\(case-insensitiv)m(ely\))38 b(whether)c(the)g(v)-5
-b(alue)35 b(of)g(the)f(global)i(attribute)f Fy(Conventions)d
-FD(\(if)i(an)m(y\))i(equals)150 2350 y(`)p Fy(CF-1.0)p
-FD(')e(or)i(`)p Fy(NCAR-CSM)p FD(')e(Should)g Fy(Conventions)e
-FD(equal)k(either)g(of)g(these)g(in)f(the)h(\(\014rst\))f
-Fz(input-\014le)p FD(,)150 2459 y FC(NCO)28 b FD(will)h(apply)f(sp)s
+FD(NCO)g FE(op)s(erator)h(on)f(\014les)g(adhering)g(to)i(these)e(con)m
+(v)m(en)m(tions)3652 2285 y Fu(35)3725 2318 y FE(.)150
+2427 y(Ho)m(w)m(ev)m(er,)31 b(to)e(facilitate)i(maxim)m(um)e(user)e
+(friendliness,)i FD(NCO)f FE(applies)g(sp)s(ecial)h(rules)f(to)h
+(certain)g(v)-5 b(ari-)150 2537 y(ables)27 b(in)f FD(CF)g
+FE(\014les.)40 b(The)26 b(sp)s(ecial)h(functions)f(are)h(not)f
+(required)g(b)m(y)g(the)h FD(CF)f FE(netCDF)h(con)m(v)m(en)m(tions,)j
+(y)m(et)150 2646 y(exp)s(erience)h(sho)m(ws)f(that)h(they)f(simplify)g
+(data)h(analysis.)275 2812 y(Curren)m(tly)-8 b(,)26 b
+FD(NCO)e FE(determines)h(whether)g(a)g(data\014le)h(is)f(a)h
+FD(CF)f FE(output)g(data\014le)h(simply)e(b)m(y)h(c)m(hec)m(king)150
+2922 y(\(case-insensitiv)m(ely\))38 b(whether)c(the)g(v)-5
+b(alue)35 b(of)g(the)f(global)i(attribute)f Fz(Conventions)d
+FE(\(if)i(an)m(y\))i(equals)150 3032 y(`)p Fz(CF-1.0)p
+FE(')e(or)i(`)p Fz(NCAR-CSM)p FE(')e(Should)g Fz(Conventions)e
+FE(equal)k(either)g(of)g(these)g(in)f(the)h(\(\014rst\))f
+FA(input-\014le)p FE(,)150 3141 y FD(NCO)28 b FE(will)h(apply)f(sp)s
 (ecial)h(rules)e(to)j(certain)f(v)-5 b(ariables)29 b(b)s(ecause)f(of)h
-(their)f(usual)g(meaning)g(in)g FC(CF)h FD(\014les.)150
-2569 y FC(NCO)39 b FD(will)h(not)g(a)m(v)m(erage)j(the)c(follo)m(wing)j
-(v)-5 b(ariables)40 b(often)g(found)e(in)i FC(CF)f FD(\014les:)60
-b Fy(ntrm)p FD(,)41 b Fy(ntrn)p FD(,)g Fy(ntrk)p FD(,)150
-2678 y Fy(ndbase)p FD(,)27 b Fy(nsbase)p FD(,)g Fy(nbdate)p
-FD(,)g Fy(nbsec)p FD(,)h Fy(mdt)p FD(,)g Fy(mhisf)p FD(.)38
+(their)f(usual)g(meaning)g(in)g FD(CF)h FE(\014les.)150
+3251 y FD(NCO)39 b FE(will)h(not)g(a)m(v)m(erage)j(the)c(follo)m(wing)j
+(v)-5 b(ariables)40 b(often)g(found)e(in)i FD(CF)f FE(\014les:)60
+b Fz(ntrm)p FE(,)41 b Fz(ntrn)p FE(,)g Fz(ntrk)p FE(,)150
+3360 y Fz(ndbase)p FE(,)27 b Fz(nsbase)p FE(,)g Fz(nbdate)p
+FE(,)g Fz(nbsec)p FE(,)h Fz(mdt)p FE(,)g Fz(mhisf)p FE(.)38
 b(These)28 b(v)-5 b(ariables)29 b(con)m(tain)g(scalar)g(metadata)h(suc)
-m(h)150 2788 y(as)25 b(the)g(resolution)g(of)g(the)g(host)f(geoph)m
+m(h)150 3470 y(as)25 b(the)g(resolution)g(of)g(the)g(host)f(geoph)m
 (ysical)j(mo)s(del)e(and)f(it)h(mak)m(es)g(no)g(sense)f(to)i(c)m(hange)
-g(their)e(v)-5 b(alues.)275 2966 y(F)d(urthermore,)39
-b(the)f Fz(size)g(and)f(rank-preserving)g(arithmetic)h(op)s(erators)k
-FD(try)37 b(not)h(to)g(op)s(erate)g(on)150 3076 y(certain)28
+g(their)e(v)-5 b(alues.)275 3636 y(F)d(urthermore,)39
+b(the)f FA(size)g(and)f(rank-preserving)g(arithmetic)h(op)s(erators)k
+FE(try)37 b(not)h(to)g(op)s(erate)g(on)150 3745 y(certain)28
 b(grid)f(prop)s(erties.)39 b(These)26 b(op)s(erators)h(are)h
-Fy(ncap2)p FD(,)e Fy(ncbo)p FD(,)h Fy(nces)p FD(,)g Fy(ncflint)p
-FD(,)f(and)g Fy(ncpdq)g FD(\(when)150 3186 y(used)f(for)g(pac)m(king,)j
+Fz(ncap2)p FE(,)e Fz(ncbo)p FE(,)h Fz(nces)p FE(,)g Fz(ncflint)p
+FE(,)f(and)g Fz(ncpdq)g FE(\(when)150 3855 y(used)f(for)g(pac)m(king,)j
 (not)d(for)h(p)s(erm)m(utation\).)39 b(These)25 b(op)s(erators)h(do)f
 (not)h(op)s(erate,)i(b)m(y)d(default,)i(on)e(\(i.e.,)150
-3295 y(add,)e(subtract,)g(pac)m(k,)i(etc.\))39 b(the)22
-b(follo)m(wing)h(v)-5 b(ariables:)37 b Fy(ORO)p FD(,)22
-b Fy(area)p FD(,)h Fy(datesec)p FD(,)e Fy(date)p FD(,)i
-Fy(gw)p FD(,)f Fy(hyai)p FD(,)h Fy(hyam)p FD(,)150 3405
-y Fy(hybi)p FD(.)44 b Fy(hybm)p FD(,)31 b Fy(lat_bnds)p
-FD(,)f Fy(lon_bnds)p FD(,)g Fy(msk_*)p FD(.)43 b(These)31
+3965 y(add,)e(subtract,)g(pac)m(k,)i(etc.\))39 b(the)22
+b(follo)m(wing)h(v)-5 b(ariables:)37 b Fz(ORO)p FE(,)22
+b Fz(area)p FE(,)h Fz(datesec)p FE(,)e Fz(date)p FE(,)i
+Fz(gw)p FE(,)f Fz(hyai)p FE(,)h Fz(hyam)p FE(,)150 4074
+y Fz(hybi)p FE(.)44 b Fz(hybm)p FE(,)31 b Fz(lat_bnds)p
+FE(,)f Fz(lon_bnds)p FE(,)g Fz(msk_*)p FE(.)43 b(These)31
 b(v)-5 b(ariables)33 b(represen)m(t)f(the)f(Gaussian)h(w)m(eigh)m(ts,)
-150 3514 y(the)23 b(orograph)m(y)g(\014eld,)h(time)f(\014elds,)h(h)m
+150 4184 y(the)23 b(orograph)m(y)g(\014eld,)h(time)f(\014elds,)h(h)m
 (ybrid)e(pressure)f(co)s(e\016cien)m(ts,)26 b(and)c
-(latititude/longitude)k(b)s(ound-)150 3624 y(aries.)57
+(latititude/longitude)k(b)s(ound-)150 4293 y(aries.)57
 b(W)-8 b(e)37 b(call)g(these)f(\014elds)f(non-co)s(ordinate)i
-Fz(grid)e(prop)s(erties)p FD(.)56 b(Co)s(ordinate)36
-b(grid)f(prop)s(erties)h(are)150 3734 y(easy)31 b(to)g(iden)m(tify)g(b)
+FA(grid)e(prop)s(erties)p FE(.)56 b(Co)s(ordinate)36
+b(grid)f(prop)s(erties)h(are)150 4403 y(easy)31 b(to)g(iden)m(tify)g(b)
 s(ecause)f(they)h(are)g(co)s(ordinate)g(v)-5 b(ariables)31
-b(suc)m(h)f(as)h Fy(latitude)d FD(and)h Fy(longitude)p
-FD(.)275 3912 y(Users)39 b(usually)h(w)m(an)m(t)h Fo(al)5
-b(l)50 b FD(grid)40 b(prop)s(erties)g(to)g(remain)g(unaltered)g(in)g
-(the)g(output)g(\014le.)70 b(T)-8 b(o)41 b(b)s(e)150
-4022 y(treated)31 b(as)f(a)g(grid)f(prop)s(ert)m(y)-8
-b(,)30 b(the)g(v)-5 b(ariable)30 b(name)g(m)m(ust)f Fo(exactly)39
-b FD(matc)m(h)30 b(a)g(name)g(in)f(the)h(ab)s(o)m(v)m(e)h(list,)150
-4131 y(or)41 b(b)s(e)f(a)i(co)s(ordinate)g(v)-5 b(ariable.)73
-b(The)40 b(handling)h(of)g Fy(msk_*)e FD(is)i(exceptional)i(in)e(that)g
-Fo(any)50 b FD(v)-5 b(ariable)150 4241 y(name)36 b(b)s(eginning)f(with)
-g(the)h(string)g Fy(msk_)f FD(is)h(considered)f(to)i(b)s(e)e(a)h
-(\\mask")h(and)e(is)h(th)m(us)f(preserv)m(ed)150 4350
-y(\(not)c(op)s(erated)f(on)h(arithmetically\).)p 150
-4528 1200 4 v 166 4595 a Ft(31)298 4627 y Fs(The)23 b(exception)g(is)h
-(app)r(ending/altering)h(the)e(attributes)g Fr(x_op)p
-Fs(,)i Fr(y_op)p Fs(,)g Fr(z_op)p Fs(,)g(and)e Fr(t_op)h
-Fs(for)g(v)l(ariables)g(whic)n(h)g(ha)n(v)n(e)275 4714
-y(b)r(een)f(a)n(v)n(eraged)g(across)i(space)f(and)f(time)h(dimensions.)
-35 b(This)24 b(feature)g(is)g(sc)n(heduled)f(for)h(future)f(inclusion)h
-(in)g Fp(NCO)p Fs(.)166 4785 y Ft(32)308 4817 y Fs(The)33
-b Fp(CF)g Fs(con)n(v)n(en)n(tions)g(recommend)g Fr(time)h
-Fs(b)r(e)f(stored)g(in)g(the)g(format)h Fm(time)j Fs(since)d
-Fm(base)p 3008 4817 24 4 v 34 w(time)p Fs(,)i(e.g.,)g(the)d
-Fr(units)275 4904 y Fs(attribute)k(of)h Fr(time)h Fs(migh)n(t)e(b)r(e)h
-(`)p Fr(days)27 b(since)f(1992-10-8)i(15:15:42.5)g(-6:00)p
-Fs('.)71 b(A)26 b(problem)37 b(with)h(this)g(format)275
-4991 y(o)r(ccurs)30 b(when)g(using)g Fr(ncrcat)h Fs(to)f(concatenate)h
+b(suc)m(h)f(as)h Fz(latitude)d FE(and)h Fz(longitude)p
+FE(.)p 150 4528 1200 4 v 166 4595 a Fu(34)298 4627 y
+Ft(The)23 b(exception)g(is)h(app)r(ending/altering)h(the)e(attributes)g
+Fs(x_op)p Ft(,)i Fs(y_op)p Ft(,)g Fs(z_op)p Ft(,)g(and)e
+Fs(t_op)h Ft(for)g(v)l(ariables)g(whic)n(h)g(ha)n(v)n(e)275
+4714 y(b)r(een)f(a)n(v)n(eraged)g(across)i(space)f(and)f(time)h
+(dimensions.)35 b(This)24 b(feature)g(is)g(sc)n(heduled)f(for)h(future)
+f(inclusion)h(in)g Fq(NCO)p Ft(.)166 4785 y Fu(35)308
+4817 y Ft(The)33 b Fq(CF)g Ft(con)n(v)n(en)n(tions)g(recommend)g
+Fs(time)h Ft(b)r(e)f(stored)g(in)g(the)g(format)h Fn(time)j
+Ft(since)d Fn(base)p 3008 4817 24 4 v 34 w(time)p Ft(,)i(e.g.,)g(the)d
+Fs(units)275 4904 y Ft(attribute)k(of)h Fs(time)h Ft(migh)n(t)e(b)r(e)h
+(`)p Fs(days)27 b(since)f(1992-10-8)i(15:15:42.5)g(-6:00)p
+Ft('.)71 b(A)26 b(problem)37 b(with)h(this)g(format)275
+4991 y(o)r(ccurs)30 b(when)g(using)g Fs(ncrcat)h Ft(to)f(concatenate)h
 (m)n(ultiple)f(\014les,)i(eac)n(h)e(with)g(a)g(di\013eren)n(t)g
-Fm(base)p 3084 4991 V 34 w(time)p Fs(.)47 b(That)31 b(is,)h(an)n(y)275
-5078 y Fr(time)f Fs(v)l(alues)h(from)f(\014les)h(follo)n(wing)h(the)e
+Fn(base)p 3084 4991 V 34 w(time)p Ft(.)47 b(That)31 b(is,)h(an)n(y)275
+5078 y Fs(time)f Ft(v)l(alues)h(from)f(\014les)h(follo)n(wing)h(the)e
 (\014rst)g(\014le)g(to)g(b)r(e)g(concatenated)h(should)f(b)r(e)g
-(corrected)g(to)g(the)g Fm(base)p 3567 5078 V 34 w(time)275
-5166 y Fs(o\013set)26 b(sp)r(eci\014ed)g(in)g(the)g Fr(units)h
-Fs(attribute)f(of)h Fr(time)g Fs(from)g(the)f(\014rst)g(\014le.)36
+(corrected)g(to)g(the)g Fn(base)p 3567 5078 V 34 w(time)275
+5166 y Ft(o\013set)26 b(sp)r(eci\014ed)g(in)g(the)g Fs(units)h
+Ft(attribute)f(of)h Fs(time)g Ft(from)g(the)f(\014rst)g(\014le.)36
 b(The)26 b(analogous)i(problem)f(has)f(b)r(een)g(\014xed)275
-5253 y(in)h Fp(ARM)g Fs(\014les)h(\(see)g(Section)f(3.38)i([ARM)e(Con)n
-(v)n(en)n(tions],)i(page)f(102\))h(and)e(could)g(b)r(e)h(\014xed)e(for)
-j Fp(CF)e Fs(\014les)h(if)g(there)f(is)275 5340 y(su\016cien)n(t)e
+5253 y(in)h Fq(ARM)g Ft(\014les)h(\(see)g(Section)f(3.39)i([ARM)e(Con)n
+(v)n(en)n(tions],)i(page)f(112\))h(and)e(could)g(b)r(e)h(\014xed)e(for)
+j Fq(CF)e Ft(\014les)h(if)g(there)f(is)275 5340 y(su\016cien)n(t)e
 (lobb)n(ying.)p eop end
-%%Page: 101 107
-TeXDict begin 101 106 bop 150 -116 a FD(Chapter)30 b(3:)41
-b(NCO)30 b(F)-8 b(eatures)2430 b(101)275 299 y(Y)-8 b(ou)40
-b(m)m(ust)f(sp)s(o)s(of)g FC(NCO)h FD(if)f(y)m(ou)h(w)m(ould)g(lik)m(e)
-h(an)m(y)f(grid)f(prop)s(erties)h(or)f(other)h(sp)s(ecial)h
-FC(CF)e FD(\014elds)150 408 y(pro)s(cessed)g(normally)-8
+%%Page: 111 117
+TeXDict begin 111 116 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2362 b(111)275 299 y(Users)39
+b(usually)h(w)m(an)m(t)h Fp(al)5 b(l)50 b FE(grid)40
+b(prop)s(erties)g(to)g(remain)g(unaltered)g(in)g(the)g(output)g
+(\014le.)70 b(T)-8 b(o)41 b(b)s(e)150 408 y(treated)31
+b(as)f(a)g(grid)f(prop)s(ert)m(y)-8 b(,)30 b(the)g(v)-5
+b(ariable)30 b(name)g(m)m(ust)f Fp(exactly)39 b FE(matc)m(h)30
+b(a)g(name)g(in)f(the)h(ab)s(o)m(v)m(e)h(list,)150 518
+y(or)41 b(b)s(e)f(a)i(co)s(ordinate)g(v)-5 b(ariable.)73
+b(The)40 b(handling)h(of)g Fz(msk_*)e FE(is)i(exceptional)i(in)e(that)g
+Fp(any)50 b FE(v)-5 b(ariable)150 628 y(name)36 b(b)s(eginning)f(with)g
+(the)h(string)g Fz(msk_)f FE(is)h(considered)f(to)i(b)s(e)e(a)h
+(\\mask")h(and)e(is)h(th)m(us)f(preserv)m(ed)150 737
+y(\(not)c(op)s(erated)f(on)h(arithmetically\).)275 913
+y(Y)-8 b(ou)40 b(m)m(ust)f(sp)s(o)s(of)g FD(NCO)h FE(if)f(y)m(ou)h(w)m
+(ould)g(lik)m(e)h(an)m(y)f(grid)f(prop)s(erties)h(or)f(other)h(sp)s
+(ecial)h FD(CF)e FE(\014elds)150 1022 y(pro)s(cessed)g(normally)-8
 b(.)69 b(F)-8 b(or)40 b(example)g(rename)f(the)h(v)-5
-b(ariables)40 b(\014rst)f(with)g Fy(ncrename)p FD(,)h(or)f(alter)i(the)
-150 518 y Fy(Conventions)27 b FD(attribute.)275 710 y(As)i(of)h
-FC(NCO)g FD(v)m(ersion)h(4.0.8)g(\(April,)g(2011\),)h
-FC(NCO)e FD(supp)s(orts)e(the)i FC(CF)g Fy(bounds)e FD(con)m(v)m(en)m
-(tion)k(for)e(cell)150 819 y(b)s(oundaries)37 b(describ)s(ed)h(here)g
-(\()p Fy(http:)7 b(/)g(/)e(cfconventions)i(.)e(org)h(/)f(1)i(.)t(6)g(.)
-e(ht)o(ml)i(#)t(cell)o(-bou)o(nda)o(ries)o FD(\).)150
-929 y(This)43 b(con)m(v)m(en)m(tion)i(allo)m(ws)g(co)s(ordinate)f(v)-5
+b(ariables)40 b(\014rst)f(with)g Fz(ncrename)p FE(,)h(or)f(alter)i(the)
+150 1132 y Fz(Conventions)27 b FE(attribute.)275 1307
+y(As)i(of)h FD(NCO)g FE(v)m(ersion)h(4.0.8)g(\(April,)g(2011\),)h
+FD(NCO)e FE(supp)s(orts)e(the)i FD(CF)g Fz(bounds)e FE(con)m(v)m(en)m
+(tion)k(for)e(cell)150 1417 y(b)s(oundaries)37 b(describ)s(ed)h(here)g
+(\()p Fz(http:)7 b(/)g(/)e(cfconventions)i(.)e(org)h(/)f(1)i(.)t(6)g(.)
+e(ht)o(ml)i(#)t(cell)o(-bou)o(nda)o(ries)o FE(\).)150
+1526 y(This)43 b(con)m(v)m(en)m(tion)i(allo)m(ws)g(co)s(ordinate)f(v)-5
 b(ariables)44 b(\(including)g(m)m(ultidimensional)g(co)s(ordinates\))g
-(to)150 1039 y(describ)s(e)31 b(the)h(b)s(oundaries)f(of)h(their)g
+(to)150 1636 y(describ)s(e)31 b(the)h(b)s(oundaries)f(of)h(their)g
 (cells.)47 b(This)31 b(is)h(done)g(b)m(y)f(naming)h(the)g(v)-5
-b(ariable)33 b(whic)m(h)f(con)m(tains)150 1148 y(the)23
-b(b)s(ounds)e(in)i(in)f(the)i Fy(bounds)d FD(attribute.)39
-b(Note)24 b(that)g(co)s(ordinates)g(of)f(rank)f Fv(N)33
-b FD(ha)m(v)m(e)24 b(b)s(ounds)d(of)i(rank)150 1258 y
-Fv(N)34 b FD(+)24 b(1.)59 b(NCO-generated)38 b(subsets)d(of)i
-FC(CF)p FD(-complian)m(t)h(\014les)f(with)f Fy(bounds)e
-FD(attributes)j(will)g(include)150 1367 y(the)28 b(co)s(ordinates)g(sp)
-s(eci\014ed)e(b)m(y)i(the)f Fy(bounds)f FD(attribute,)j(if)e(an)m(y)-8
+b(ariable)33 b(whic)m(h)f(con)m(tains)150 1745 y(the)23
+b(b)s(ounds)e(in)i(in)f(the)i Fz(bounds)d FE(attribute.)39
+b(Note)24 b(that)g(co)s(ordinates)g(of)f(rank)f Fw(N)33
+b FE(ha)m(v)m(e)24 b(b)s(ounds)d(of)i(rank)150 1855 y
+Fw(N)34 b FE(+)24 b(1.)59 b(NCO-generated)38 b(subsets)d(of)i
+FD(CF)p FE(-complian)m(t)h(\014les)f(with)f Fz(bounds)e
+FE(attributes)j(will)g(include)150 1965 y(the)28 b(co)s(ordinates)g(sp)
+s(eci\014ed)e(b)m(y)i(the)f Fz(bounds)f FE(attribute,)j(if)e(an)m(y)-8
 b(.)41 b(Hence)28 b(the)f(subsets)g(will)h(themselv)m(es)150
-1477 y(b)s(e)f FC(CF)p FD(-complian)m(t.)42 b(Bounds)27
+2074 y(b)s(e)f FD(CF)p FE(-complian)m(t.)42 b(Bounds)27
 b(are)h(sub)5 b(ject)28 b(to)g(the)g(user-sp)s(eci\014ed)f(o)m(v)m
-(erride)i(switc)m(hes)f(\(including)g(`)p Fy(-c)p FD(')150
-1587 y(and)i(`)p Fy(-C)p FD('\))g(describ)s(ed)g(in)g(Section)h(3.12)h
+(erride)i(switc)m(hes)f(\(including)g(`)p Fz(-c)p FE(')150
+2184 y(and)i(`)p Fz(-C)p FE('\))g(describ)s(ed)g(in)g(Section)h(3.12)h
 ([Subsetting)e(Co)s(ordinate)h(V)-8 b(ariables],)32 b(page)f(45.)275
-1778 y(As)d(of)g FC(NCO)g FD(v)m(ersion)g(4.4.5)i(\(July)-8
-b(,)29 b(2014\),)i FC(NCO)d FD(supp)s(orts)e(the)i FC(CF)g
-Fy(ancillary_variables)23 b FD(con-)150 1888 y(v)m(en)m(tion)43
-b(for)f(describ)s(ed)e(here)i(\()p Fy(http:)9 b(/)g(/)e(cfconventions)i
+2359 y(As)d(of)g FD(NCO)g FE(v)m(ersion)g(4.4.5)i(\(July)-8
+b(,)29 b(2014\),)i FD(NCO)d FE(supp)s(orts)e(the)i FD(CF)g
+Fz(ancillary_variables)23 b FE(con-)150 2469 y(v)m(en)m(tion)43
+b(for)f(describ)s(ed)e(here)i(\()p Fz(http:)9 b(/)g(/)e(cfconventions)i
 (.)e(org)i(/)e(1)i(.)e(6)i(.)e(html)i(#)e(anc)o(illa)o(ry-)o(data)o
-FD(\).)150 1998 y(This)31 b(con)m(v)m(en)m(tion)i(allo)m(ws)g
+FE(\).)150 2578 y(This)31 b(con)m(v)m(en)m(tion)i(allo)m(ws)g
 (ancillary)f(v)-5 b(ariables)32 b(to)g(b)s(e)f(asso)s(ciated)i(with)e
-(one)g(or)h(more)f(primary)f(v)-5 b(ari-)150 2107 y(ables.)38
-b FC(NCO)23 b FD(attac)m(hes)h(an)m(y)f(suc)m(h)f(v)-5
+(one)g(or)h(more)f(primary)f(v)-5 b(ari-)150 2688 y(ables.)38
+b FD(NCO)23 b FE(attac)m(hes)h(an)m(y)f(suc)m(h)f(v)-5
 b(ariables)23 b(to)g(the)g(extraction)h(list)f(along)h(with)e(the)h
-(primary)e(v)-5 b(ariable)150 2217 y(and)33 b(its)i(usual)f
+(primary)e(v)-5 b(ariable)150 2798 y(and)33 b(its)i(usual)f
 (\(one-dimensional\))h(co)s(ordinates,)h(if)e(an)m(y)-8
 b(.)53 b(Ancillary)35 b(v)-5 b(ariables)35 b(are)f(sub)5
-b(ject)34 b(to)h(the)150 2326 y(user-sp)s(eci\014ed)30
-b(o)m(v)m(erride)i(switc)m(hes)g(\(including)e(`)p Fy(-c)p
-FD(')h(and)g(`)p Fy(-C)p FD('\))g(describ)s(ed)e(in)i(Section)h(3.12)g
-([Subset-)150 2436 y(ting)f(Co)s(ordinate)f(V)-8 b(ariables],)33
-b(page)e(45.)275 2628 y(As)36 b(of)g FC(NCO)g FD(v)m(ersion)g(3.9.6)i
-(\(Jan)m(uary)-8 b(,)39 b(2009\),)h FC(NCO)c FD(supp)s(orts)e(the)i
-FC(CF)g Fy(coordinates)d FD(con)m(v)m(en-)150 2737 y(tion)i(describ)s
-(ed)f(here)g(\()p Fy(http:)s(/)s(/)s(cfconventions)s(.)s(org)s(/)s(1)s
+b(ject)34 b(to)h(the)150 2907 y(user-sp)s(eci\014ed)30
+b(o)m(v)m(erride)i(switc)m(hes)g(\(including)e(`)p Fz(-c)p
+FE(')h(and)g(`)p Fz(-C)p FE('\))g(describ)s(ed)e(in)i(Section)h(3.12)g
+([Subset-)150 3017 y(ting)f(Co)s(ordinate)f(V)-8 b(ariables],)33
+b(page)e(45.)275 3192 y(As)36 b(of)g FD(NCO)g FE(v)m(ersion)g(3.9.6)i
+(\(Jan)m(uary)-8 b(,)39 b(2009\),)h FD(NCO)c FE(supp)s(orts)e(the)i
+FD(CF)g Fz(coordinates)d FE(con)m(v)m(en-)150 3302 y(tion)i(describ)s
+(ed)f(here)g(\()p Fz(http:)s(/)s(/)s(cfconventions)s(.)s(org)s(/)s(1)s
 (.)s(6)s(.)s(ht)o(ml)s(#)s(c)o(oord)o(ina)o(te-s)o(yste)o(m)p
-FD(\).)48 b(This)150 2847 y(con)m(v)m(en)m(tion)41 b(allo)m(ws)e(v)-5
+FE(\).)48 b(This)150 3411 y(con)m(v)m(en)m(tion)41 b(allo)m(ws)e(v)-5
 b(ariables)39 b(to)g(sp)s(ecify)f(additional)i(co)s(ordinates)f
-(\(including)f(m)m(ultidimensional)150 2956 y(co)s(ordinates\))32
+(\(including)f(m)m(ultidimensional)150 3521 y(co)s(ordinates\))32
 b(in)e(a)i(space-separated)g(string)f(attribute)g(named)g
-Fy(coordinates)p FD(.)39 b FC(NCO)31 b FD(attac)m(hes)i(an)m(y)150
-3066 y(suc)m(h)f(co)s(ordinates)h(to)f(the)h(extraction)g(list)g(along)
+Fz(coordinates)p FE(.)39 b FD(NCO)31 b FE(attac)m(hes)i(an)m(y)150
+3630 y(suc)m(h)f(co)s(ordinates)h(to)f(the)h(extraction)g(list)g(along)
 g(with)f(v)-5 b(ariable)33 b(and)e(its)i(usual)e(\(one-dimensional\))
-150 3176 y(co)s(ordinates,)38 b(if)e(an)m(y)-8 b(.)58
+150 3740 y(co)s(ordinates,)38 b(if)e(an)m(y)-8 b(.)58
 b(These)35 b(auxiliary)i(co)s(ordinates)g(are)f(sub)5
 b(ject)35 b(to)i(the)f(user-sp)s(eci\014ed)f(o)m(v)m(erride)150
-3285 y(switc)m(hes)k(\(including)f(`)p Fy(-c)p FD(')g(and)g(`)p
-Fy(-C)p FD('\))g(describ)s(ed)f(in)h(Section)h(3.12)g([Subsetting)g(Co)
-s(ordinate)f(V)-8 b(ari-)150 3395 y(ables],)31 b(page)g(45.)275
-3587 y(As)e(of)g FC(NCO)g FD(v)m(ersion)h(4.4.2)h(\(F)-8
-b(ebruary)g(,)30 b(2014\),)i FC(NCO)d FD(supp)s(orts)e(some)j(of)f(the)
-h FC(CF)f Fy(cell_methods)150 3696 y FD(con)m(v)m(en)m(tion)35
-b(\()p Fy(http:)r(/)r(/)q(cfconventions)r(.)q(org)r(/)q(1)q(.)q(6)r(.)q
-(html)q(#)q(cel)o(l-me)o(tho)o(ds)p FD(\))27 b(to)33
-b(describ)s(e)f(the)h(anal-)150 3806 y(ysis)e(pro)s(cedures)g(that)h
+3850 y(switc)m(hes)k(\(including)f(`)p Fz(-c)p FE(')g(and)g(`)p
+Fz(-C)p FE('\))g(describ)s(ed)f(in)h(Section)h(3.12)g([Subsetting)g(Co)
+s(ordinate)f(V)-8 b(ari-)150 3959 y(ables],)31 b(page)g(45.)275
+4134 y(As)e(of)g FD(NCO)g FE(v)m(ersion)h(4.4.2)h(\(F)-8
+b(ebruary)g(,)30 b(2014\),)i FD(NCO)d FE(supp)s(orts)e(some)j(of)f(the)
+h FD(CF)f Fz(cell_methods)150 4244 y FE(con)m(v)m(en)m(tion)35
+b(\()p Fz(http:)r(/)r(/)q(cfconventions)r(.)q(org)r(/)q(1)q(.)q(6)r(.)q
+(html)q(#)q(cel)o(l-me)o(tho)o(ds)p FE(\))27 b(to)33
+b(describ)s(e)f(the)h(anal-)150 4354 y(ysis)e(pro)s(cedures)g(that)h
 (ha)m(v)m(e)g(b)s(een)f(applied)h(to)g(data.)45 b(The)31
 b(con)m(v)m(en)m(tion)i(creates)g(\(or)f(app)s(ends)e(to)i(an)150
-3915 y(existing\))38 b Fy(cell_methods)c FD(attribute)k(a)f
+4463 y(existing\))38 b Fz(cell_methods)c FE(attribute)k(a)f
 (space-separated)i(list)e(of)h(couplets)f(of)h(the)f(form)f
-Fz(dmn:)53 b(op)150 4025 y FD(where)38 b Fz(dmn)f FD(is)i(a)g
+FA(dmn:)53 b(op)150 4573 y FE(where)38 b FA(dmn)f FE(is)i(a)g
 (comma-separated)h(list)f(of)g(dimensions)f(previously)g(con)m(tained)i
-(in)e(the)h(v)-5 b(ariable)150 4134 y(that)36 b(ha)m(v)m(e)h(b)s(een)e
+(in)e(the)h(v)-5 b(ariable)150 4682 y(that)36 b(ha)m(v)m(e)h(b)s(een)e
 (reduced)g(b)m(y)h(the)f(arithmetic)i(op)s(eration)g
-Fz(op)p FD(.)56 b(F)-8 b(or)36 b(example,)i(the)e Fy(cell_methods)150
-4244 y FD(v)-5 b(alue)29 b Fy(time:)g(mean)e FD(sa)m(ys)h(that)h(the)f
+FA(op)p FE(.)56 b(F)-8 b(or)36 b(example,)i(the)e Fz(cell_methods)150
+4792 y FE(v)-5 b(alue)29 b Fz(time:)g(mean)e FE(sa)m(ys)h(that)h(the)f
 (v)-5 b(ariable)29 b(in)f(question)h(w)m(as)f(a)m(v)m(eraged)i(o)m(v)m
-(er)g(the)e Fy(time)f FD(dimension.)150 4354 y(In)h(suc)m(h)h(cases)h
-Fy(time)d FD(will)j(either)f(b)s(e)f(a)i(scalar)f(v)-5
+(er)g(the)e Fz(time)f FE(dimension.)150 4902 y(In)h(suc)m(h)h(cases)h
+Fz(time)d FE(will)j(either)f(b)s(e)f(a)i(scalar)f(v)-5
 b(ariable)30 b(or)f(a)g(degenerate)i(dimension)d(or)h(co)s(ordinate.)
-150 4463 y(This)34 b(simply)h(means)f(that)i(it)f(has)g(b)s(een)f(a)m
+150 5011 y(This)34 b(simply)h(means)f(that)i(it)f(has)g(b)s(een)f(a)m
 (v)m(eraged-o)m(v)m(er.)58 b(The)35 b(v)-5 b(alue)35
-b Fy(time,)29 b(lon:)g(mean)h(lat:)f(max)150 4573 y FD(sa)m(ys)f(that)f
+b Fz(time,)29 b(lon:)g(mean)h(lat:)f(max)150 5121 y FE(sa)m(ys)f(that)f
 (the)h(v)-5 b(ariable)27 b(in)g(question)h(is)f(the)g(maxim)m(um)g
 (zonal)h(mean)f(of)g(the)h(time)g(a)m(v)m(eraged)h(original)150
-4682 y(v)-5 b(ariable.)41 b(Whic)m(h)31 b(is)f(to)g(sa)m(y)h(that)f
+5230 y(v)-5 b(ariable.)41 b(Whic)m(h)31 b(is)f(to)g(sa)m(y)h(that)f
 (the)g(v)-5 b(ariable)31 b(w)m(as)f(\014rst)g(a)m(v)m(eraged)i(o)m(v)m
-(er)f(time)f(and)g(longitude,)h(and)150 4792 y(then)e(the)h(residual)g
+(er)f(time)f(and)g(longitude,)h(and)150 5340 y(then)e(the)h(residual)g
 (latitudinal)g(arra)m(y)h(w)m(as)f(reduced)f(b)m(y)g(c)m(ho)s(osing)i
-(the)f(maxim)m(um)f(v)-5 b(alue.)41 b(Since)30 b(the)150
-4902 y Fy(cell)f(methods)22 b FD(con)m(v)m(en)m(tion)27
-b(ma)m(y)e(alter)g(metadata)h(in)e(an)g(undesirable)g(\(or)g(p)s
-(ossibly)g(incorrect\))h(fash-)150 5011 y(ion,)k(w)m(e)g(pro)m(vide)f
-(switc)m(hes)h(to)h(ensure)d(it)i(is)f(alw)m(a)m(ys)i(or)f(nev)m(er)f
-(used.)40 b(Use)28 b(long-options)i(`)p Fy(--cll_mth)p
-FD(')150 5121 y(or)25 b(`)p Fy(--cell_methods)p FD(')c(to)k(in)m(v)m
-(ok)m(e)i(the)e(algorithm)h(\(true)e(b)m(y)h(default\),)i(and)d
-(options)h(`)p Fy(--no_cll_mth)p FD(')150 5230 y(or)36
-b(`)p Fy(--no_cell_methods)p FD(')c(to)37 b(turn)e(it)i(o\013.)58
-b(These)36 b(options)g(are)h(only)f(a)m(v)-5 b(ailable)39
-b(in)c(the)i(op)s(erators)150 5340 y Fy(ncwa)29 b FD(and)h
-Fy(ncra)p FD(.)p eop end
-%%Page: 102 108
-TeXDict begin 102 107 bop 150 -116 a FD(102)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(3.38)68 b Fu(ARM)45
-b FB(Con)l(v)l(en)l(tions)150 409 y Fk(\013)p 200 409
-3554 4 v 3553 w(\010)p 150 790 4 333 v 178 545 a FD(Av)-5
-b(ailabilit)m(y:)43 b Fy(ncrcat)178 655 y FD(Short)30
-b(options:)41 b(None)p 3803 790 V 150 841 a Fk(\012)p
-200 841 3554 4 v 3553 w(\011)275 1011 y Fy(ncrcat)19
-b FD(has)i(b)s(een)g(programmed)f(to)i(correctly)h(handle)e(data)h
+(the)f(maxim)m(um)f(v)-5 b(alue.)41 b(Since)30 b(the)p
+eop end
+%%Page: 112 118
+TeXDict begin 112 117 bop 150 -116 a FE(112)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Fz(cell)f(methods)22
+b FE(con)m(v)m(en)m(tion)27 b(ma)m(y)e(alter)g(metadata)h(in)e(an)g
+(undesirable)g(\(or)g(p)s(ossibly)g(incorrect\))h(fash-)150
+408 y(ion,)k(w)m(e)g(pro)m(vide)f(switc)m(hes)h(to)h(ensure)d(it)i(is)f
+(alw)m(a)m(ys)i(or)f(nev)m(er)f(used.)40 b(Use)28 b(long-options)i(`)p
+Fz(--cll_mth)p FE(')150 518 y(or)25 b(`)p Fz(--cell_methods)p
+FE(')c(to)k(in)m(v)m(ok)m(e)i(the)e(algorithm)h(\(true)e(b)m(y)h
+(default\),)i(and)d(options)h(`)p Fz(--no_cll_mth)p FE(')150
+628 y(or)36 b(`)p Fz(--no_cell_methods)p FE(')c(to)37
+b(turn)e(it)i(o\013.)58 b(These)36 b(options)g(are)h(only)f(a)m(v)-5
+b(ailable)39 b(in)c(the)i(op)s(erators)150 737 y Fz(ncwa)29
+b FE(and)h Fz(ncra)p FE(.)150 992 y FC(3.39)68 b Fv(ARM)45
+b FC(Con)l(v)l(en)l(tions)150 1102 y Fl(\013)p 200 1102
+3554 4 v 3553 w(\010)p 150 1483 4 333 v 178 1239 a FE(Av)-5
+b(ailabilit)m(y:)43 b Fz(ncrcat)178 1348 y FE(Short)30
+b(options:)41 b(None)p 3803 1483 V 150 1534 a Fl(\012)p
+200 1534 3554 4 v 3553 w(\011)275 1712 y Fz(ncrcat)19
+b FE(has)i(b)s(een)g(programmed)f(to)i(correctly)h(handle)e(data)h
 (\014les)f(whic)m(h)g(utilize)i(the)e(A)m(tmospheric)150
-1121 y(Radiation)36 b(Measuremen)m(t)h(\()p FC(ARM)p
-FD(\))f(Program)f(con)m(v)m(en)m(tion)j(\()p Fy(http:)t(/)t(/)s(www)t
-(.)s(arm)t(.)s(gov)t(/)s(data)t(/)s(time)s(.)150 1230
-y(stm)p FD(\))31 b(for)g(time)h(and)f(time)h(o\013sets.)44
-b(If)31 b(y)m(ou)h(do)f(not)h(w)m(ork)f(with)h FC(ARM)f
-FD(data)h(then)f(y)m(ou)h(ma)m(y)g(skip)f(this)150 1340
-y(section.)51 b FC(ARM)34 b FD(data)g(\014les)f(store)h(time)h
+1822 y(Radiation)36 b(Measuremen)m(t)h(\()p FD(ARM)p
+FE(\))f(Program)f(con)m(v)m(en)m(tion)j(\()p Fz(http:)t(/)t(/)s(www)t
+(.)s(arm)t(.)s(gov)t(/)s(data)t(/)s(time)s(.)150 1931
+y(stm)p FE(\))31 b(for)g(time)h(and)f(time)h(o\013sets.)44
+b(If)31 b(y)m(ou)h(do)f(not)h(w)m(ork)f(with)h FD(ARM)f
+FE(data)h(then)f(y)m(ou)h(ma)m(y)g(skip)f(this)150 2041
+y(section.)51 b FD(ARM)34 b FE(data)g(\014les)f(store)h(time)h
 (information)e(in)g(t)m(w)m(o)i(v)-5 b(ariables,)35 b(a)f(scalar,)i
-Fy(base_time)p FD(,)c(and)150 1450 y(a)g(record)g(v)-5
-b(ariable,)33 b Fy(time_offset)p FD(.)43 b(Subtle)31
+Fz(base_time)p FE(,)c(and)150 2150 y(a)g(record)g(v)-5
+b(ariable,)33 b Fz(time_offset)p FE(.)43 b(Subtle)31
 b(but)g(serious)h(problems)f(can)h(arise)g(when)f(these)i(t)m(yp)s(e)f
-(of)150 1559 y(\014les)d(are)g(just)g(blindly)f(concatenated.)42
-b(Therefore)29 b Fy(ncrcat)e FD(has)i(b)s(een)g(sp)s(ecially)g
-(programmed)g(to)h(b)s(e)150 1669 y(able)35 b(to)h(c)m(hain)g(together)
-g(consecutiv)m(e)h FC(ARM)e Fz(input-\014les)j FD(and)c(pro)s(duce)g
-(and)g(an)h Fz(output-\014le)40 b FD(whic)m(h)150 1778
+(of)150 2260 y(\014les)d(are)g(just)g(blindly)f(concatenated.)42
+b(Therefore)29 b Fz(ncrcat)e FE(has)i(b)s(een)g(sp)s(ecially)g
+(programmed)g(to)h(b)s(e)150 2369 y(able)35 b(to)h(c)m(hain)g(together)
+g(consecutiv)m(e)h FD(ARM)e FA(input-\014les)j FE(and)c(pro)s(duce)g
+(and)g(an)h FA(output-\014le)40 b FE(whic)m(h)150 2479
 y(con)m(tains)23 b(the)f(correct)h(time)f(information.)38
-b(Curren)m(tly)-8 b(,)24 b Fy(ncrcat)c FD(determines)h(whether)h(a)g
-(data\014le)g(is)g(an)150 1888 y FC(ARM)29 b FD(data\014le)g(simply)f
+b(Curren)m(tly)-8 b(,)24 b Fz(ncrcat)c FE(determines)h(whether)h(a)g
+(data\014le)g(is)g(an)150 2589 y FD(ARM)29 b FE(data\014le)g(simply)f
 (b)m(y)g(testing)i(for)e(the)g(existence)i(of)f(the)f(v)-5
-b(ariables)29 b Fy(base_time)p FD(,)e Fy(time_offset)p
-FD(,)150 1998 y(and)f(the)i(dimension)e Fy(time)p FD(.)38
-b(If)27 b(these)g(are)h(found)d(in)i(the)g Fz(input-\014le)32
-b FD(then)26 b Fy(ncrcat)g FD(will)h(automatically)150
-2107 y(p)s(erform)f(t)m(w)m(o)j(non-standard,)f(but)f(hop)s(efully)g
-(useful,)h(pro)s(cedures.)38 b(First,)29 b Fy(ncrcat)d
-FD(will)i(ensure)f(that)150 2217 y(v)-5 b(alues)26 b(of)g
-Fy(time_offset)c FD(app)s(earing)j(in)g(the)h Fz(output-\014le)31
-b FD(are)26 b(relativ)m(e)h(to)g(the)e Fy(base_time)e
-FD(app)s(earing)150 2326 y(in)i(the)g(\014rst)f Fz(input-\014le)30
-b FD(\(and)24 b(presumably)-8 b(,)26 b(though)f(not)g(necessarily)-8
-b(,)28 b(also)e(app)s(earing)e(in)h(the)g Fz(output-)150
-2436 y(\014le)5 b FD(\).)38 b(Second,)23 b(if)e(a)g(co)s(ordinate)h(v)
--5 b(ariable)22 b(named)e Fy(time)g FD(is)h(not)g(found)f(in)g(the)i
-Fz(input-\014les)p FD(,)g(then)f Fy(ncrcat)150 2546 y
-FD(automatically)28 b(creates)f(the)f Fy(time)e FD(co)s(ordinate)i(in)f
-(the)h Fz(output-\014le)p FD(.)39 b(The)25 b(v)-5 b(alues)26
-b(of)f Fy(time)f FD(are)i(de\014ned)150 2655 y(b)m(y)31
-b(the)g FC(ARM)h FD(con)m(v)m(en)m(tions)h Fz(time)g
-FD(=)26 b Fz(base)p 1645 2655 28 4 v 45 w(time)h FD(+)20
-b Fz(time)p 2160 2655 V 46 w(o\013set)s FD(.)43 b(Th)m(us,)31
-b(if)g Fz(output-\014le)36 b FD(con)m(tains)d(the)150
-2765 y Fy(time_offset)d FD(v)-5 b(ariable,)35 b(it)f(will)g(also)g(con)
-m(tain)h(the)f Fy(time)e FD(co)s(ordinate.)50 b(A)31
-b(short)i(message)h(is)g(added)150 2874 y(to)d(the)g
-Fy(history)d FD(global)k(attribute)f(whenev)m(er)f(these)h
-FC(ARM)p FD(-sp)s(eci\014c)g(pro)s(cedures)e(are)i(executed.)150
-3107 y FB(3.39)68 b(Op)t(erator)46 b(V)-11 b(ersion)150
-3240 y Fk(\013)p 200 3240 3554 4 v 3553 w(\010)p 150
-3730 4 442 v 178 3377 a FD(Av)-5 b(ailabilit)m(y:)43
-b(All)31 b(op)s(erators)178 3486 y(Short)f(options:)41
-b(`)p Fy(-r)p FD(')178 3596 y(Long)31 b(options:)41 b(`)p
-Fy(--revision)p FD(',)28 b(`)p Fy(--version)p FD(',)h(or)h(`)p
-Fy(--vrs)p FD(')p 3803 3730 V 150 3782 a Fk(\012)p 200
-3782 3554 4 v 3553 w(\011)275 3952 y FD(All)36 b(op)s(erators)f(can)h
+b(ariables)29 b Fz(base_time)p FE(,)e Fz(time_offset)p
+FE(,)150 2698 y(and)f(the)i(dimension)e Fz(time)p FE(.)38
+b(If)27 b(these)g(are)h(found)d(in)i(the)g FA(input-\014le)32
+b FE(then)26 b Fz(ncrcat)g FE(will)h(automatically)150
+2808 y(p)s(erform)f(t)m(w)m(o)j(non-standard,)f(but)f(hop)s(efully)g
+(useful,)h(pro)s(cedures.)38 b(First,)29 b Fz(ncrcat)d
+FE(will)i(ensure)f(that)150 2917 y(v)-5 b(alues)26 b(of)g
+Fz(time_offset)c FE(app)s(earing)j(in)g(the)h FA(output-\014le)31
+b FE(are)26 b(relativ)m(e)h(to)g(the)e Fz(base_time)e
+FE(app)s(earing)150 3027 y(in)i(the)g(\014rst)f FA(input-\014le)30
+b FE(\(and)24 b(presumably)-8 b(,)26 b(though)f(not)g(necessarily)-8
+b(,)28 b(also)e(app)s(earing)e(in)h(the)g FA(output-)150
+3137 y(\014le)5 b FE(\).)38 b(Second,)23 b(if)e(a)g(co)s(ordinate)h(v)
+-5 b(ariable)22 b(named)e Fz(time)g FE(is)h(not)g(found)f(in)g(the)i
+FA(input-\014les)p FE(,)g(then)f Fz(ncrcat)150 3246 y
+FE(automatically)28 b(creates)f(the)f Fz(time)e FE(co)s(ordinate)i(in)f
+(the)h FA(output-\014le)p FE(.)39 b(The)25 b(v)-5 b(alues)26
+b(of)f Fz(time)f FE(are)i(de\014ned)150 3356 y(b)m(y)31
+b(the)g FD(ARM)h FE(con)m(v)m(en)m(tions)h FA(time)g
+FE(=)26 b FA(base)p 1645 3356 28 4 v 45 w(time)h FE(+)20
+b FA(time)p 2160 3356 V 46 w(o\013set)s FE(.)43 b(Th)m(us,)31
+b(if)g FA(output-\014le)36 b FE(con)m(tains)d(the)150
+3465 y Fz(time_offset)d FE(v)-5 b(ariable,)35 b(it)f(will)g(also)g(con)
+m(tain)h(the)f Fz(time)e FE(co)s(ordinate.)50 b(A)31
+b(short)i(message)h(is)g(added)150 3575 y(to)d(the)g
+Fz(history)d FE(global)k(attribute)f(whenev)m(er)f(these)h
+FD(ARM)p FE(-sp)s(eci\014c)g(pro)s(cedures)e(are)i(executed.)150
+3830 y FC(3.40)68 b(Op)t(erator)46 b(V)-11 b(ersion)150
+3963 y Fl(\013)p 200 3963 3554 4 v 3553 w(\010)p 150
+4453 4 442 v 178 4100 a FE(Av)-5 b(ailabilit)m(y:)43
+b(All)31 b(op)s(erators)178 4209 y(Short)f(options:)41
+b(`)p Fz(-r)p FE(')178 4319 y(Long)31 b(options:)41 b(`)p
+Fz(--revision)p FE(',)28 b(`)p Fz(--version)p FE(',)h(or)h(`)p
+Fz(--vrs)p FE(')p 3803 4453 V 150 4505 a Fl(\012)p 200
+4505 3554 4 v 3553 w(\011)275 4682 y FE(All)36 b(op)s(erators)f(can)h
 (b)s(e)f(told)h(to)h(prin)m(t)e(their)g(v)m(ersion)h(information,)i
-(library)d(v)m(ersion,)j(cop)m(yrigh)m(t)150 4062 y(notice,)i(and)c
-(compile-time)j(con\014guration)e(with)g(the)g(`)p Fy(-r)p
-FD(')f(switc)m(h,)j(or)e(its)g(long-option)h(equiv)-5
-b(alen)m(t)150 4171 y(`)p Fy(revision)p FD('.)63 b(The)38
-b(`)p Fy(--version)p FD(')f(or)h(`)p Fy(--vrs)p FD(')g(switc)m(hes)h
+(library)d(v)m(ersion,)j(cop)m(yrigh)m(t)150 4792 y(notice,)i(and)c
+(compile-time)j(con\014guration)e(with)g(the)g(`)p Fz(-r)p
+FE(')f(switc)m(h,)j(or)e(its)g(long-option)h(equiv)-5
+b(alen)m(t)150 4902 y(`)p Fz(revision)p FE('.)63 b(The)38
+b(`)p Fz(--version)p FE(')f(or)h(`)p Fz(--vrs)p FE(')g(switc)m(hes)h
 (prin)m(t)f(the)h(op)s(erator)g(v)m(ersion)g(information)150
-4281 y(only)-8 b(.)69 b(The)40 b(in)m(ternal)g(v)m(ersion)g(n)m(um)m(b)
+5011 y(only)-8 b(.)69 b(The)40 b(in)m(ternal)g(v)m(ersion)g(n)m(um)m(b)
 s(er)f(v)-5 b(aries)40 b(b)s(et)m(w)m(een)g(op)s(erators,)j(and)c
-(indicates)i(the)f(most)g(re-)150 4390 y(cen)m(t)c(c)m(hange)g(to)f(a)g
+(indicates)i(the)f(most)g(re-)150 5121 y(cen)m(t)c(c)m(hange)g(to)f(a)g
 (particular)h(op)s(erator's)f(source)g(co)s(de.)54 b(This)34
 b(is)h(useful)f(in)g(making)h(sure)f(y)m(ou)i(are)150
-4500 y(w)m(orking)31 b(with)g(the)h(most)f(recen)m(t)h(op)s(erators.)44
-b(The)30 b(v)m(ersion)i(of)f FC(NCO)g FD(y)m(ou)g(are)h(using)f(migh)m
-(t)g(b)s(e,)g(e.g.,)150 4610 y Fy(3.9.5)p FD(.)39 b(Using)31
-b(`)p Fy(-r)p FD(')f(on,)g(sa)m(y)-8 b(,)31 b Fy(ncks)p
-FD(,)f(pro)s(duces)f(something)h(lik)m(e)i(`)p Fy(NCO)d(netCDF)g
-(Operators)f(version)150 4719 y("3.9.5")g(last)i(modified)e(2008/05/11)
-f(built)i(May)h(12)f(2008)h(on)f(neige)g(by)150 4829
-y(zender)g(Copyright)f(\(C\))h(1995--2008)f(Charlie)g(Zender)h(ncks)g
-(version)f(20090918)p FD('.)64 b(This)38 b(tells)150
-4938 y(y)m(ou)31 b(that)g Fy(ncks)e FD(con)m(tains)i(all)h(patc)m(hes)f
-(up)e(to)i(v)m(ersion)g Fy(3.9.5)p FD(,)e(whic)m(h)i(dates)f(from)g(Ma)
-m(y)i(11)q(,)e(2008.)p eop end
-%%Page: 103 109
-TeXDict begin 103 108 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(103)150
-299 y Fx(4)80 b(Op)t(erator)54 b(Reference)e(Man)l(ual)150
-558 y FD(This)29 b(c)m(hapter)h(presen)m(ts)g(reference)g(pages)g(for)f
-(eac)m(h)i(of)f(the)f(op)s(erators)h(individually)-8
-b(.)41 b(The)29 b(op)s(erators)150 667 y(are)37 b(presen)m(ted)f(in)g
-(alphab)s(etical)i(order.)58 b(All)37 b(v)-5 b(alid)36
-b(command)h(line)f(switc)m(hes)h(are)g(included)f(in)g(the)150
-777 y(syn)m(tax)k(statemen)m(t.)70 b(Recall)41 b(that)f(descriptions)f
-(of)h(man)m(y)g(of)f(these)h(command)g(line)f(switc)m(hes)i(are)150
-887 y(pro)m(vided)25 b(only)h(in)f(Chapter)g(3)h([Common)f(features],)i
-(page)f(25,)i(to)e(a)m(v)m(oid)h(redundancy)-8 b(.)38
-b(Only)25 b(options)150 996 y(sp)s(eci\014c)39 b(to,)k(or)d(most)f
-(useful)g(with,)j(a)e(particular)g(op)s(erator)f(are)h(describ)s(ed)f
-(in)g(an)m(y)h(detail)h(in)e(the)150 1106 y(sections)31
-b(b)s(elo)m(w.)p eop end
-%%Page: 104 110
-TeXDict begin 104 109 bop 150 -116 a FD(104)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.1)68 b Fc(ncap2)43
-b FB(netCDF)i(Arithmetic)g(Pro)t(cessor)150 436 y Fk(\013)p
+5230 y(w)m(orking)31 b(with)g(the)h(most)f(recen)m(t)h(op)s(erators.)44
+b(The)30 b(v)m(ersion)i(of)f FD(NCO)g FE(y)m(ou)g(are)h(using)f(migh)m
+(t)g(b)s(e,)g(e.g.,)150 5340 y Fz(3.9.5)p FE(.)39 b(Using)31
+b(`)p Fz(-r)p FE(')f(on,)g(sa)m(y)-8 b(,)31 b Fz(ncks)p
+FE(,)f(pro)s(duces)f(something)h(lik)m(e)i(`)p Fz(NCO)d(netCDF)g
+(Operators)f(version)p eop end
+%%Page: 113 119
+TeXDict begin 113 118 bop 150 -116 a FE(Chapter)30 b(3:)41
+b(Shared)29 b(F)-8 b(eatures)2362 b(113)150 299 y Fz("3.9.5")28
+b(last)i(modified)e(2008/05/11)f(built)i(May)h(12)f(2008)h(on)f(neige)g
+(by)150 408 y(zender)g(Copyright)f(\(C\))h(1995--2008)f(Charlie)g
+(Zender)h(ncks)g(version)f(20090918)p FE('.)64 b(This)38
+b(tells)150 518 y(y)m(ou)31 b(that)g Fz(ncks)e FE(con)m(tains)i(all)h
+(patc)m(hes)f(up)e(to)i(v)m(ersion)g Fz(3.9.5)p FE(,)e(whic)m(h)i
+(dates)f(from)g(Ma)m(y)i(11)q(,)e(2008.)p eop end
+%%Page: 114 120
+TeXDict begin 114 119 bop eop end
+%%Page: 115 121
+TeXDict begin 115 120 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(115)150 299 y Fy(4)80
+b(Reference)53 b(Man)l(ual)150 558 y FE(This)29 b(c)m(hapter)h(presen)m
+(ts)g(reference)g(pages)g(for)f(eac)m(h)i(of)f(the)f(op)s(erators)h
+(individually)-8 b(.)41 b(The)29 b(op)s(erators)150 667
+y(are)37 b(presen)m(ted)f(in)g(alphab)s(etical)i(order.)58
+b(All)37 b(v)-5 b(alid)36 b(command)h(line)f(switc)m(hes)h(are)g
+(included)f(in)g(the)150 777 y(syn)m(tax)k(statemen)m(t.)70
+b(Recall)41 b(that)f(descriptions)f(of)h(man)m(y)g(of)f(these)h
+(command)g(line)f(switc)m(hes)i(are)150 887 y(pro)m(vided)32
+b(only)g(in)g(Chapter)f(3)i([Shared)e(features],)i(page)g(25,)h(to)f(a)
+m(v)m(oid)g(redundancy)-8 b(.)45 b(Only)32 b(options)150
+996 y(sp)s(eci\014c)39 b(to,)k(or)d(most)f(useful)g(with,)j(a)e
+(particular)g(op)s(erator)f(are)h(describ)s(ed)f(in)g(an)m(y)h(detail)h
+(in)e(the)150 1106 y(sections)31 b(b)s(elo)m(w.)p eop
+end
+%%Page: 116 122
+TeXDict begin 116 121 bop 150 -116 a FE(116)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.1)68 b Fb(ncap2)43
+b FC(netCDF)i(Arithmetic)g(Pro)t(cessor)150 436 y Fl(\013)p
 200 436 3554 4 v 3553 w(\010)p 150 1163 4 679 v 178 572
-a Fy(ncap2)35 b FD(understands)f(a)j(relativ)m(ely)h(full-featured)e
+a Fz(ncap2)35 b FE(understands)f(a)j(relativ)m(ely)h(full-featured)e
 (language)i(of)e(op)s(erations,)i(including)e(lo)s(ops,)i(con-)178
 682 y(ditionals,)h(arra)m(ys,)e(and)f(math)g(functions.)56
-b Fy(ncap2)35 b FD(is)h(the)g(most)g(rapidly)f(c)m(hanging)i
-FC(NCO)f FD(op)s(erator)178 791 y(and)e(its)h(do)s(cumen)m(tation)g(is)
-f(incomplete.)54 b(The)34 b(distribution)g(\014le)h Fy
-(data/ncap2_tst.nco)29 b FD(con)m(tains)178 901 y(an)39
+b Fz(ncap2)35 b FE(is)h(the)g(most)g(rapidly)f(c)m(hanging)i
+FD(NCO)f FE(op)s(erator)178 791 y(and)e(its)h(do)s(cumen)m(tation)g(is)
+f(incomplete.)54 b(The)34 b(distribution)g(\014le)h Fz
+(data/ncap2_tst.nco)29 b FE(con)m(tains)178 901 y(an)39
 b(up-to-date)g(o)m(v)m(erview)h(of)f(its)f(syn)m(tax)h(and)f
-(capabilities.)67 b(The)38 b Fy(data/*.nco)d FD(distribution)j(\014les)
-178 1010 y(\(esp)s(ecially)32 b Fy(bin_cnt.nco)p FD(,)c
-Fy(psd_wrf.nco)p FD(,)f(and)j Fy(rgr.nco)p FD(\))e(con)m(tain)k
-(in-depth)d(examples)i(of)g Fy(ncap2)178 1120 y FD(solutions)g(to)g
-(complex)g(problems.)p 3803 1163 V 150 1214 a Fk(\012)p
-200 1214 3554 4 v 3553 w(\011)150 1393 y FD(SYNT)-8 b(AX)390
-1563 y Fy(ncap2)46 b([-3])h([-4])g([-6])f([-7])h([-A])g([-C])f([-c])390
-1672 y([-D)h Fn(dbg)p Fy(])g([-F])f([-f])h([-h])f([--hdf])g([--hdr_pad)
-f Fn(nbr)p Fy(])i([-L)g Fn(dfl_lvl)p Fy(])e([-l)i Fn(path)p
-Fy(])390 1782 y([--no_tmp_fl])d([-O])j([-o)g Fn(output-file)p
-Fy(])d([-p)j Fn(path)p Fy(])f([-R])h([-r])g([--ram_all])390
-1892 y([-s)g Fn(algebra)p Fy(])e([-S)i Fn(fl.nco)p Fy(])f([-t)h
-Fn(thr_nbr)p Fy(])f([-v])390 2001 y Fn(input-file)f Fy([)p
-Fn(output-file)p Fy(])150 2171 y FD(DESCRIPTION)275 2340
-y Fy(ncap2)25 b FD(arithmetically)k(pro)s(cesses)d(netCDF)i(\014les)
-2009 2307 y Ft(1)2046 2340 y FD(.)39 b(The)27 b(pro)s(cessing)f
+(capabilities.)67 b(The)38 b Fz(data/*.nco)d FE(distribution)j(\014les)
+178 1010 y(\(esp)s(ecially)32 b Fz(bin_cnt.nco)p FE(,)c
+Fz(psd_wrf.nco)p FE(,)f(and)j Fz(rgr.nco)p FE(\))e(con)m(tain)k
+(in-depth)d(examples)i(of)g Fz(ncap2)178 1120 y FE(solutions)g(to)g
+(complex)g(problems.)p 3803 1163 V 150 1214 a Fl(\012)p
+200 1214 3554 4 v 3553 w(\011)150 1393 y FE(SYNT)-8 b(AX)390
+1563 y Fz(ncap2)46 b([-3])h([-4])g([-6])f([-7])h([-A])g([-C])f([-c])390
+1672 y([-D)h Fo(dbg)p Fz(])g([-F])f([-f])h([-h])f([--hdf])g([--hdr_pad)
+f Fo(nbr)p Fz(])i([-L)g Fo(dfl_lvl)p Fz(])e([-l)i Fo(path)p
+Fz(])390 1782 y([--no_tmp_fl])d([-O])j([-o)g Fo(output-file)p
+Fz(])d([-p)j Fo(path)p Fz(])f([-R])h([-r])g([--ram_all])390
+1892 y([-s)g Fo(algebra)p Fz(])e([-S)i Fo(fl.nco)p Fz(])f([-t)h
+Fo(thr_nbr)p Fz(])f([-v])390 2001 y Fo(input-file)f Fz([)p
+Fo(output-file)p Fz(])150 2171 y FE(DESCRIPTION)275 2340
+y Fz(ncap2)25 b FE(arithmetically)k(pro)s(cesses)d(netCDF)i(\014les)
+2009 2307 y Fu(1)2046 2340 y FE(.)39 b(The)27 b(pro)s(cessing)f
 (instructions)h(are)g(con)m(tained)150 2450 y(either)40
-b(in)f(the)g FC(NCO)g FD(script)h(\014le)f Fy(fl.nco)f
-FD(or)h(in)g(a)h(sequence)f(of)h(command)f(line)h(argumen)m(ts.)67
-b(The)150 2559 y(options)40 b(`)p Fy(-s)p FD(')f(\(or)h(long)g(options)
-f(`)p Fy(--spt)p FD(')g(or)g(`)p Fy(--script)p FD('\))f(are)i(used)e
-(for)h(in-line)h(scripts)f(and)g(`)p Fy(-S)p FD(')150
-2669 y(\(or)f(long)g(options)g(`)p Fy(--fl_spt)p FD(')d(or)j(`)p
-Fy(--script-file)p FD('\))d(are)j(used)e(to)i(pro)m(vide)g(the)g
+b(in)f(the)g FD(NCO)g FE(script)h(\014le)f Fz(fl.nco)f
+FE(or)h(in)g(a)h(sequence)f(of)h(command)f(line)h(argumen)m(ts.)67
+b(The)150 2559 y(options)40 b(`)p Fz(-s)p FE(')f(\(or)h(long)g(options)
+f(`)p Fz(--spt)p FE(')g(or)g(`)p Fz(--script)p FE('\))f(are)i(used)e
+(for)h(in-line)h(scripts)f(and)g(`)p Fz(-S)p FE(')150
+2669 y(\(or)f(long)g(options)g(`)p Fz(--fl_spt)p FE(')d(or)j(`)p
+Fz(--script-file)p FE('\))d(are)j(used)e(to)i(pro)m(vide)g(the)g
 (\014lename)f(where)150 2778 y(\(usually)32 b(m)m(ultiple\))g
-(scripting)g(commands)f(are)h(pre-stored.)45 b Fy(ncap2)30
-b FD(w)m(as)i(written)f(to)i(p)s(erform)d(arbi-)150 2888
+(scripting)g(commands)f(are)h(pre-stored.)45 b Fz(ncap2)30
+b FE(w)m(as)i(written)f(to)i(p)s(erform)d(arbi-)150 2888
 y(trary)37 b(algebraic)i(transformations)f(of)f(data)h(and)f(arc)m(hiv)
 m(e)i(the)e(results)g(as)h(easily)g(as)g(p)s(ossible.)61
 b(See)150 2998 y(Section)33 b(3.25)h([Missing)f(V)-8
 b(alues],)35 b(page)e(71,)h(for)f(treatmen)m(t)h(of)e(missing)h(v)-5
 b(alues.)47 b(The)32 b(results)g(of)h(the)150 3107 y(algebraic)f
-(manipulations)f(are)f(called)i Fz(deriv)m(ed)e(\014elds)p
-FD(.)275 3277 y(Unlik)m(e)c(the)g(other)f(op)s(erators,)i
-Fy(ncap2)d FD(do)s(es)h(not)h(accept)h(a)f(list)g(of)g(v)-5
+(manipulations)f(are)f(called)i FA(deriv)m(ed)e(\014elds)p
+FE(.)275 3277 y(Unlik)m(e)c(the)g(other)f(op)s(erators,)i
+Fz(ncap2)d FE(do)s(es)h(not)h(accept)h(a)f(list)g(of)g(v)-5
 b(ariables)26 b(to)g(b)s(e)f(op)s(erated)g(on)h(as)150
-3386 y(an)32 b(argumen)m(t)g(to)h(`)p Fy(-v)p FD(')f(\(see)h(Section)g
+3386 y(an)32 b(argumen)m(t)g(to)h(`)p Fz(-v)p FE(')f(\(see)h(Section)g
 (3.11)h([Subsetting)e(Files],)i(page)e(40\).)47 b(Rather,)33
-b(the)g(`)p Fy(-v)p FD(')e(switc)m(h)150 3496 y(tak)m(es)42
-b(no)e(argumen)m(ts)g(and)g(indicates)h(that)g Fy(ncap2)e
-FD(should)g(output)h Fo(only)49 b FD(user-de\014ned)39
-b(v)-5 b(ariables.)150 3605 y Fy(ncap2)27 b FD(neither)h(accepts)i(nor)
-e(understands)f(the)h Fz(-x)35 b FD(switc)m(h.)41 b(NB:)29
-b(As)g(of)f(20120515,)33 b Fy(ncap2)27 b FD(is)h(unable)150
+b(the)g(`)p Fz(-v)p FE(')e(switc)m(h)150 3496 y(tak)m(es)42
+b(no)e(argumen)m(ts)g(and)g(indicates)h(that)g Fz(ncap2)e
+FE(should)g(output)h Fp(only)49 b FE(user-de\014ned)39
+b(v)-5 b(ariables.)150 3605 y Fz(ncap2)27 b FE(neither)h(accepts)i(nor)
+e(understands)f(the)h FA(-x)35 b FE(switc)m(h.)41 b(NB:)29
+b(As)g(of)f(20120515,)33 b Fz(ncap2)27 b FE(is)h(unable)150
 3715 y(to)j(app)s(end)e(to)i(\014les)f(that)h(already)g(con)m(tain)h
 (the)e(app)s(ended)f(dimensions.)275 3884 y(De\014ning)g(new)f(v)-5
 b(ariables)30 b(in)f(terms)g(of)g(existing)h(v)-5 b(ariables)30
-b(is)f(a)h(p)s(o)m(w)m(erful)e(feature)i(of)f Fy(ncap2)p
-FD(.)39 b(De-)150 3994 y(riv)m(ed)g(\014elds)f(inherit)h(the)g
+b(is)f(a)h(p)s(o)m(w)m(erful)e(feature)i(of)f Fz(ncap2)p
+FE(.)39 b(De-)150 3994 y(riv)m(ed)g(\014elds)f(inherit)h(the)g
 (metadata)h(\(i.e.,)j(attributes\))c(of)g(their)g(ancestors,)j(if)d(an)
 m(y)-8 b(,)42 b(in)c(the)h(script)150 4104 y(or)h(input)f(\014le.)69
 b(When)40 b(the)g(deriv)m(ed)g(\014eld)f(is)h(completely)i(new)d(\(no)h
@@ -20685,109 +21867,109 @@ b(When)40 b(the)g(deriv)m(ed)g(\014eld)f(is)h(completely)i(new)d(\(no)h
 b(then)e(it)g(inherits)g(the)g(metadata)h(\(if)g(an)m(y\))f(of)g(the)h
 (left-most)g(v)-5 b(ariable)28 b(on)f(the)g(righ)m(t)g(hand)f(side)150
 4323 y(of)33 b(the)g(de\014ning)f(expression.)48 b(This)32
-b(metadata)i(inheritance)f(is)g(called)h Fz(attribute)g(propagation)p
-FD(.)49 b(A)m(t-)150 4432 y(tribute)24 b(propagation)h(is)f(in)m
+b(metadata)i(inheritance)f(is)g(called)h FA(attribute)g(propagation)p
+FE(.)49 b(A)m(t-)150 4432 y(tribute)24 b(propagation)h(is)f(in)m
 (tended)g(to)h(facilitate)h(w)m(ell-do)s(cumen)m(ted)g(data)e
 (analysis,)i(and)e(w)m(e)g(w)m(elcome)150 4542 y(suggestions)31
 b(to)g(impro)m(v)m(e)h(this)e(feature.)275 4711 y(The)h(only)h
 (exception)i(to)e(this)g(rule)g(of)g(attribute)h(propagation)g(is)f(in)
 g(cases)h(of)f(left)h(hand)e(casting)150 4821 y(\(see)d(Section)f
-(4.1.4)i([Left)e(hand)f(casting],)j(page)e(110\).)41
+(4.1.4)i([Left)e(hand)f(casting],)j(page)e(122\).)41
 b(The)27 b(user)f(m)m(ust)g(man)m(ually)i(de\014ne)d(the)i(prop)s(er)
 150 4931 y(metadata)32 b(for)e(v)-5 b(ariables)31 b(de\014ned)e(using)h
 (left)h(hand)f(casting.)p 150 5066 1200 4 v 199 5134
-a Ft(1)275 5166 y Fr(ncap2)22 b Fs(is)g(the)f(successor)i(to)f
-Fr(ncap)g Fs(whic)n(h)g(w)n(as)g(put)f(in)n(to)g(main)n(tenance)h(mo)r
+a Fu(1)275 5166 y Fs(ncap2)22 b Ft(is)g(the)f(successor)i(to)f
+Fs(ncap)g Ft(whic)n(h)g(w)n(as)g(put)f(in)n(to)g(main)n(tenance)h(mo)r
 (de)g(in)f(No)n(v)n(em)n(b)r(er,)h(2006.)34 b(This)23
-b(do)r(cumen-)275 5253 y(tation)e(refers)h(to)f Fr(ncap2)p
-Fs(,)i(whic)n(h)e(has)g(a)g(sup)r(erset)g(of)g(the)g
-Fr(ncap)g Fs(functionalit)n(y)-6 b(.)33 b(Ev)n(en)n(tually)21
-b Fr(ncap)g Fs(will)h(b)r(e)f(deprecated)275 5340 y(in)k(fa)n(v)n(or)h
-Fr(ncap2)p Fs(.)36 b Fr(ncap2)27 b Fs(ma)n(y)e(b)r(e)h(renamed)f
-Fr(ncap)i Fs(in)e(2013.)p eop end
-%%Page: 105 111
-TeXDict begin 105 110 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(105)150
-299 y Fu(4.1.1)63 b(Syn)m(tax)39 b(of)j Fl(ncap2)g Fu(statemen)m(ts)150
-446 y FD(Mastering)33 b Fy(ncap2)d FD(is)i(relativ)m(ely)i(simple.)44
-b(Eac)m(h)33 b(v)-5 b(alid)32 b(statemen)m(t)h Fz(statemen)m(t)j
-FD(consists)c(of)g(standard)150 555 y(forw)m(ard)j(algebraic)j
-(expression.)56 b(The)35 b Fy(fl.nco)p FD(,)h(if)g(presen)m(t,)h(is)f
+b(do)r(cumen-)275 5253 y(tation)e(refers)h(to)f Fs(ncap2)p
+Ft(,)i(whic)n(h)e(has)g(a)g(sup)r(erset)g(of)g(the)g
+Fs(ncap)g Ft(functionalit)n(y)-6 b(.)33 b(Ev)n(en)n(tually)21
+b Fs(ncap)g Ft(will)h(b)r(e)f(deprecated)275 5340 y(in)k(fa)n(v)n(or)h
+Fs(ncap2)p Ft(.)36 b Fs(ncap2)27 b Ft(ma)n(y)e(b)r(e)h(renamed)f
+Fs(ncap)i Ft(in)e(2013.)p eop end
+%%Page: 117 123
+TeXDict begin 117 122 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(117)150 299 y Fv(4.1.1)63
+b(Syn)m(tax)39 b(of)j Fm(ncap2)g Fv(statemen)m(ts)150
+446 y FE(Mastering)33 b Fz(ncap2)d FE(is)i(relativ)m(ely)i(simple.)44
+b(Eac)m(h)33 b(v)-5 b(alid)32 b(statemen)m(t)h FA(statemen)m(t)j
+FE(consists)c(of)g(standard)150 555 y(forw)m(ard)j(algebraic)j
+(expression.)56 b(The)35 b Fz(fl.nco)p FE(,)h(if)g(presen)m(t,)h(is)f
 (simply)f(a)h(list)h(of)f(suc)m(h)f(statemen)m(ts,)150
 665 y(whitespace,)26 b(and)d(commen)m(ts.)39 b(The)23
 b(syn)m(tax)h(of)g(statemen)m(ts)i(is)d(most)h(lik)m(e)h(the)f
 (computer)f(language)32 b(C.)150 775 y(The)e(follo)m(wing)i(c)m
 (haracteristics)h(of)d(C)g(are)h(preserv)m(ed:)150 953
 y(Arra)m(y)g(syn)m(tax)630 1063 y(Arra)m(ys)f(elemen)m(ts)i(are)f
-(placed)g(within)f Fy([])f FD(c)m(haracters;)150 1210
+(placed)g(within)f Fz([])f FE(c)m(haracters;)150 1210
 y(Arra)m(y)i(indexing)630 1320 y(Arra)m(ys)f(are)h(0-based;)150
 1467 y(Arra)m(y)g(storage)630 1577 y(Last)g(dimension)f(is)g(most)h
 (rapidly)f(v)-5 b(arying;)150 1724 y(Assignmen)m(t)31
-b(statemen)m(ts)630 1834 y(A)f(semi)q(-colon)h(`)p Fy(;)p
-FD(')g(indicates)g(the)g(end)f(of)g(an)g(assignmen)m(t)i(statemen)m(t.)
+b(statemen)m(ts)630 1834 y(A)f(semi)q(-colon)h(`)p Fz(;)p
+FE(')g(indicates)g(the)g(end)f(of)g(an)g(assignmen)m(t)i(statemen)m(t.)
 150 1982 y(Commen)m(ts)630 2091 y(Multi-line)22 b(commen)m(ts)g(are)f
-(enclosed)h(within)e Fy(/*)30 b(*/)21 b FD(c)m(haracters.)39
+(enclosed)h(within)e Fz(/*)30 b(*/)21 b FE(c)m(haracters.)39
 b(Single)21 b(line)g(commen)m(ts)630 2201 y(are)31 b(preceded)f(b)m(y)g
-Fy(//)g FD(c)m(haracters.)150 2348 y(Nesting)180 b(Files)26
-b(ma)m(y)g(b)s(e)f(nested)g(in)g(scripts)g(using)g Fy(#include)j
-Fn(script)p FD(.)37 b(Note)27 b(that)f(the)f Fy(#include)630
-2458 y FD(command)g(is)h(not)g(follo)m(w)m(ed)h(b)m(y)e(a)h(semi-colon)
+Fz(//)g FE(c)m(haracters.)150 2348 y(Nesting)180 b(Files)26
+b(ma)m(y)g(b)s(e)f(nested)g(in)g(scripts)g(using)g Fz(#include)j
+Fo(script)p FE(.)37 b(Note)27 b(that)f(the)f Fz(#include)630
+2458 y FE(command)g(is)h(not)g(follo)m(w)m(ed)h(b)m(y)e(a)h(semi-colon)
 h(b)s(ecause)f(it)g(is)f(a)h(pre-pro)s(cessor)f(directiv)m(e,)630
 2568 y(not)37 b(an)g(assignmen)m(t)h(statemen)m(t.)63
-b(The)37 b(\014lename)g Fy(script)e FD(is)j(in)m(terpreted)f(relativ)m
+b(The)37 b(\014lename)g Fz(script)e FE(is)j(in)m(terpreted)f(relativ)m
 (e)i(to)630 2677 y(the)31 b(run)d(directory)-8 b(.)150
 2825 y(A)m(ttribute)31 b(syn)m(tax)630 2934 y(The)f(at-sign)h
-Fy(@)f FD(is)h(used)e(to)i(delineate)h(an)f(attribute)g(name)f(from)g
-(a)h(v)-5 b(ariable)31 b(name.)150 3122 y Fu(4.1.2)63
-b(Expressions)150 3269 y FD(Expressions)40 b(are)h(the)f(fundamen)m
-(tal)h(building)e(blo)s(c)m(k)i(of)g Fy(ncap2)p FD(.)70
+Fz(@)f FE(is)h(used)e(to)i(delineate)h(an)f(attribute)g(name)f(from)g
+(a)h(v)-5 b(ariable)31 b(name.)150 3122 y Fv(4.1.2)63
+b(Expressions)150 3269 y FE(Expressions)40 b(are)h(the)f(fundamen)m
+(tal)h(building)e(blo)s(c)m(k)i(of)g Fz(ncap2)p FE(.)70
 b(Expressions)40 b(are)g(comp)s(osed)h(of)150 3378 y(v)-5
 b(ariables,)44 b(n)m(um)m(b)s(ers,)d(literals,)j(and)c(attributes.)71
 b(The)40 b(follo)m(wing)h(C)30 b(op)s(erators)41 b(are)f(\\o)m(v)m
 (erloaded")150 3488 y(and)30 b(w)m(ork)g(with)g(scalars)i(and)d(m)m
-(ulti-dimensional)j(arra)m(ys:)390 3647 y Fy(Arithmetic)45
+(ulti-dimensional)j(arra)m(ys:)390 3647 y Fz(Arithmetic)45
 b(Operators:)g(*)i(/)h(\045)f(+)h(-)f(^)390 3757 y(Binary)f(Operators:)
 236 b(>)47 b(>=)h(<)f(<=)g(==)g(!=)h(==)f(||)g(&&)g(>>)g(<<)390
 3866 y(Unary)f(Operators:)284 b(+)47 b(-)h(++)f(--)g(!)390
 3976 y(Conditional)e(Operator:)g(exp1)i(?)g(exp2)g(:)g(exp3)390
 4086 y(Assign)f(Operators:)236 b(=)47 b(+=)h(-=)f(/=)g(*=)275
-4245 y FD(In)33 b(the)i(follo)m(wing)h(section)g(a)e
-Fz(v)-5 b(ariable)41 b FD(also)35 b(refers)f(to)i(a)e(n)m(um)m(b)s(er)g
+4245 y FE(In)33 b(the)i(follo)m(wing)h(section)g(a)e
+FA(v)-5 b(ariable)41 b FE(also)35 b(refers)f(to)i(a)e(n)m(um)m(b)s(er)g
 (literal)i(whic)m(h)e(is)g(read)h(in)f(as)h(a)150 4355
-y(scalar)c(v)-5 b(ariable:)275 4514 y Fq(Arithmetic)31
-b(and)e(Binary)h(Op)s(erators)275 4673 y FD(Consider)f
-Fo(var1)34 b('op')f(var2)275 4833 y Fq(Precision)225
-4992 y FA(\017)60 b FD(When)30 b(b)s(oth)g(op)s(erands)g(are)h(v)-5
+y(scalar)c(v)-5 b(ariable:)275 4514 y Fr(Arithmetic)31
+b(and)e(Binary)h(Op)s(erators)275 4673 y FE(Consider)f
+Fp(var1)34 b('op')f(var2)275 4833 y Fr(Precision)225
+4992 y FB(\017)60 b FE(When)30 b(b)s(oth)g(op)s(erands)g(are)h(v)-5
 b(ariables,)31 b(the)g(result)g(has)f(the)h(precision)g(of)g(the)f
 (higher)h(precision)330 5102 y(op)s(erand.)225 5230 y
-FA(\017)60 b FD(When)26 b(one)h(op)s(erand)f(is)g(a)h(v)-5
+FB(\017)60 b FE(When)26 b(one)h(op)s(erand)f(is)g(a)h(v)-5
 b(ariable)28 b(and)e(the)h(other)f(an)h(attribute,)h(the)f(result)g
 (has)f(the)h(precision)330 5340 y(of)k(the)f(v)-5 b(ariable.)p
 eop end
-%%Page: 106 112
-TeXDict begin 106 111 bop 150 -116 a FD(106)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)225 299 y FA(\017)60 b FD(When)37
+%%Page: 118 124
+TeXDict begin 118 123 bop 150 -116 a FE(118)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)225 299 y FB(\017)60 b FE(When)37
 b(b)s(oth)g(op)s(erands)f(are)h(attributes,)j(the)e(result)f(has)g(the)
 h(precision)f(of)h(the)f(more)h(precise)330 408 y(attribute.)225
-540 y FA(\017)60 b FD(The)46 b(exp)s(onen)m(tiation)i(op)s(erator)f(\\)
-p Fy(^)p FD(")g(is)f(an)h(exception)h(to)f(the)g(ab)s(o)m(v)m(e)g
+540 y FB(\017)60 b FE(The)46 b(exp)s(onen)m(tiation)i(op)s(erator)f(\\)
+p Fz(^)p FE(")g(is)f(an)h(exception)h(to)f(the)g(ab)s(o)m(v)m(e)g
 (rules.)89 b(When)47 b(b)s(oth)330 649 y(op)s(erands)40
-b(ha)m(v)m(e)j(t)m(yp)s(e)e(less)h(than)f Fy(NC_FLOAT)p
-FD(,)h(the)f(result)g(is)h Fy(NC_FLOAT)p FD(.)71 b(When)41
-b(either)h(t)m(yp)s(e)330 759 y(is)30 b Fy(NC_DOUBLE)p
-FD(,)f(the)h(result)g(is)h(also)g Fy(NC_DOUBLE)p FD(.)275
-940 y Fq(Rank)225 1099 y FA(\017)60 b FD(The)28 b(Rank)g(of)g(the)h
+b(ha)m(v)m(e)j(t)m(yp)s(e)e(less)h(than)f Fz(NC_FLOAT)p
+FE(,)h(the)f(result)g(is)h Fz(NC_FLOAT)p FE(.)71 b(When)41
+b(either)h(t)m(yp)s(e)330 759 y(is)30 b Fz(NC_DOUBLE)p
+FE(,)f(the)h(result)g(is)h(also)g Fz(NC_DOUBLE)p FE(.)275
+940 y Fr(Rank)225 1099 y FB(\017)60 b FE(The)28 b(Rank)g(of)g(the)h
 (result)f(is)h(generally)g(equal)g(to)g(Rank)f(of)h(the)f(op)s(erand)g
 (that)g(has)h(the)f(greatest)330 1209 y(n)m(um)m(b)s(er)h(of)i
-(dimensions.)225 1340 y FA(\017)60 b FD(If)37 b(the)g(dimensions)f(in)h
+(dimensions.)225 1340 y FB(\017)60 b FE(If)37 b(the)g(dimensions)f(in)h
 (v)-5 b(ar2)37 b(are)h(a)f(subset)g(of)g(the)g(dimensions)f(in)h(v)-5
 b(ar1)37 b(then)g(its)h(p)s(ossible)e(to)330 1450 y(mak)m(e)31
 b(v)-5 b(ar2)31 b(conform)f(to)h(v)-5 b(ar1)31 b(through)f
 (broadcasting)h(and)f(or)g(dimension)g(reordering.)225
-1581 y FA(\017)60 b FD(Broadcasting)42 b(a)g(v)-5 b(ariable)41
+1581 y FB(\017)60 b FE(Broadcasting)42 b(a)g(v)-5 b(ariable)41
 b(means)g(creating)h(data)g(in)e(non-existing)i(dimensions)e(b)m(y)h
 (cop)m(ying)330 1690 y(data)31 b(in)f(existing)h(dimensions.)225
-1822 y FA(\017)60 b FD(More)31 b(sp)s(eci\014cally:)41
+1822 y FB(\017)60 b FE(More)31 b(sp)s(eci\014cally:)41
 b(If)30 b(the)h(n)m(um)m(b)s(ers)e(of)h(dimensions)g(in)g(v)-5
 b(ar1)31 b(is)f(greater)h(than)g(or)f(equal)h(to)g(the)330
 1931 y(n)m(um)m(b)s(er)f(of)i(dimensions)f(in)g(v)-5
@@ -20801,7 +21983,7 @@ h(op)s(erators)f(return)e(T)-8 b(rue\(1\))33 b(or)f(F)-8
 b(alse\(0\))35 b(they)d(are)h(treated)g(in)f(the)h(same)150
 2550 y(w)m(a)m(y)e(as)g(the)g(arithmetic)g(op)s(erators)g(with)f
 (regard)g(to)h(precision)g(and)f(rank.)150 2660 y(Examples:)390
-2819 y Fy(dimensions:)45 b(time=10,)g(lat=2,)h(lon=4)390
+2819 y Fz(dimensions:)45 b(time=10,)g(lat=2,)h(lon=4)390
 2929 y(Suppose)g(we)h(have)g(the)g(two)f(variables:)390
 3148 y(double)94 b(P\(time,lat,lon\);)390 3258 y(float)142
 b(PZ0\(lon,lat\);)92 b(//)47 b(PZ0=1,2,3,4,5,6,7,8;)390
@@ -20815,17 +21997,17 @@ b(PZ0\(lon,lat\);)92 b(//)47 b(PZ0=1,2,3,4,5,6,7,8;)390
 5011 y(1,3,5,7,2,4,6,8,)390 5230 y(Once)g(the)g(expression)e(is)i
 (evaluated)e(then)i(PZ)g(will)f(be)i(of)f(type)f(double;)p
 eop end
-%%Page: 107 113
-TeXDict begin 107 112 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(107)390
-299 y Fy(Consider)46 b(now)438 408 y(start=four-att_var at doub)o(le_a)o
-(tt;)89 b(//)47 b(start)g(=-69)94 b(and)47 b(is)g(of)g(type)g(intger;)
-438 518 y(four_pow=four^3.0f)711 b(//)47 b(four_pow=64)e(and)i(is)g(of)
-g(type)g(float)438 628 y(three_nw=three_dmn_var_)o(sht*)o(1.0f)o(;)42
+%%Page: 119 125
+TeXDict begin 119 124 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(119)390 299 y Fz(Consider)46
+b(now)438 408 y(start=four-att_var at doub)o(le_a)o(tt;)89
+b(//)47 b(start)g(=-69)94 b(and)47 b(is)g(of)g(type)g(intger;)438
+518 y(four_pow=four^3.0f)711 b(//)47 b(four_pow=64)e(and)i(is)g(of)g
+(type)g(float)438 628 y(three_nw=three_dmn_var_)o(sht*)o(1.0f)o(;)42
 b(//)47 b(type)g(is)g(now)g(float)438 737 y(start at n1=att_var at short_)o
 (att*)o(att_)o(var)o(@int)o(_att)o(;)2013 847 y(//)g(start at n1=5329)d
-(and)j(is)g(type)g(int)150 1044 y Fq(Binary)30 b(Op)s(erators)150
-1154 y FD(Unlik)m(e)36 b(C)f(the)g(binary)f(op)s(erators)i(return)d(an)
+(and)j(is)g(type)g(int)150 1044 y Fr(Binary)30 b(Op)s(erators)150
+1154 y FE(Unlik)m(e)36 b(C)f(the)g(binary)f(op)s(erators)i(return)d(an)
 i(arra)m(y)h(of)f(v)-5 b(alues.)55 b(There)35 b(is)g(no)g(suc)m(h)g
 (thing)g(as)g(short)150 1263 y(circuiting)i(with)f(the)h(AND/OR)g(op)s
 (erators.)59 b(Missing)37 b(v)-5 b(alues)37 b(are)g(carried)f(in)m(to)i
@@ -20834,7 +22016,7 @@ i(arra)m(y)h(of)f(v)-5 b(alues.)55 b(There)35 b(is)g(no)g(suc)m(h)g
 b(an)g(expression)g(is)g(ev)-5 b(aluated)35 b(in)f(an)150
 1482 y(if\(\))d(the)g(missing)f(v)-5 b(alues)31 b(are)f(treated)i(as)e
 (true.)150 1592 y(The)g(binary)f(op)s(erators)i(are,)g(in)f(order)g(of)
-g(precedence:)390 1899 y Fy(!)143 b(Logical)46 b(Not)390
+g(precedence:)390 1899 y Fz(!)143 b(Logical)46 b(Not)390
 2008 y(------------------------)o(----)390 2118 y(<<)95
 b(Less)47 b(Than)f(Selection)390 2228 y(>>)95 b(Greater)46
 b(Than)g(Selection)390 2337 y(------------------------)o(----)390
@@ -20846,10 +22028,10 @@ b(to)390 3104 y(!=)95 b(Not)47 b(equal)f(to)390 3214
 y(------------------------)o(----)390 3324 y(&&)95 b(Logical)46
 b(AND)390 3433 y(------------------------)o(----)390
 3543 y(||)95 b(Logical)46 b(OR)390 3652 y(------------------------)o
-(----)275 3850 y FD(T)-8 b(o)24 b(see)h(all)g(op)s(erators:)37
+(----)275 3850 y FE(T)-8 b(o)24 b(see)h(all)g(op)s(erators:)37
 b(see)25 b(Section)g(4.1.26)h([Op)s(erator)e(precedence)h(and)e(asso)s
-(ciativit)m(y],)29 b(page)c(153)150 3959 y(Examples:)390
-4156 y Fy(tm1=time>2)45 b(&&)i(time)g(<7;)94 b(//)48
+(ciativit)m(y],)29 b(page)c(165)150 3959 y(Examples:)390
+4156 y Fz(tm1=time>2)45 b(&&)i(time)g(<7;)94 b(//)48
 b(tm1=0,)e(0,)h(1,)g(1,)g(1,)g(1,)h(0,)f(0,)g(0,)g(0)h(double)390
 4266 y(tm2=time==3)d(||)i(time>=6;)e(//)j(tm2=0,)e(0,)h(1,)g(0,)g(0,)g
 (1,)h(1,)f(1,)g(1,)g(1)h(double)390 4376 y(tm3=int\(!tm1\);)473
@@ -20857,8 +22039,8 @@ b(//)48 b(tm3=1,)e(1,)h(0,)g(0,)g(0,)g(0,)h(1,)f(1,)g(1,)g(1)h(int)390
 4485 y(tm4=tm1)e(&&)h(tm2;)428 b(//)48 b(tm4=0,)e(0,)h(1,)g(0,)g(0,)g
 (1,)h(0,)f(0,)g(0,)g(0)h(double)390 4595 y(tm5=!tm4;)713
 b(//)48 b(tm5=1,)e(1,)h(0,)g(1,)g(1,)g(0,)h(1,)f(1,)g(1,)g(1)h(double)
-150 4792 y Fq(Regular)31 b(Assign)f(Op)s(erator)150 4902
-y Fo(var1)k('=')e(exp1)150 5011 y FD(If)38 b(v)-5 b(ar1)38
+150 4792 y Fr(Regular)31 b(Assign)f(Op)s(erator)150 4902
+y Fp(var1)k('=')e(exp1)150 5011 y FE(If)38 b(v)-5 b(ar1)38
 b(do)s(es)g(not)g(already)g(exist)h(in)f(Output)f(then)h(v)-5
 b(ar1)38 b(is)g(written)g(to)h(Output)e(with)g(the)i(v)-5
 b(alues)150 5121 y(and)28 b(dimensions)g(from)g(expr1.)40
@@ -20868,11 +22050,11 @@ h(only)f(requiremen)m(t)h(on)150 5230 y(expr1)g(is)f(that)h(the)g(n)m
 (b)s(er)e(already)j(on)e(disk.)40 b(The)28 b(t)m(yp)s(e)h(of)150
 5340 y(expr1)h(is)h(con)m(v)m(erted)h(if)e(necessary)h(to)g(the)f(disk)
 g(t)m(yp)s(e.)p eop end
-%%Page: 108 114
-TeXDict begin 108 113 bop 150 -116 a FD(108)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)180 299 y Fq(Other)h(Assign)f(Op)s(erators)h
-Fy(+)p Fq(=,-=,*=./=)150 408 y Fo(var1)j('ass)p 511 408
-28 4 v 41 w(op')g(exp1)150 518 y FD(if)j(exp1)h(is)f(a)g(v)-5
+%%Page: 120 126
+TeXDict begin 120 125 bop 150 -116 a FE(120)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)180 299 y Fr(Other)h(Assign)f(Op)s(erators)h
+Fz(+)p Fr(=,-=,*=./=)150 408 y Fp(var1)j('ass)p 511 408
+28 4 v 41 w(op')g(exp1)150 518 y FE(if)j(exp1)h(is)f(a)g(v)-5
 b(ariable)38 b(and)f(it)h(do)s(esn't)f(conform)g(to)h(v)-5
 b(ar1)37 b(then)g(an)g(attempt)i(is)e(made)g(to)h(mak)m(e)g(it)150
 628 y(conform)23 b(to)i(v)-5 b(ar1.)39 b(If)23 b(exp1)g(is)h(an)f
@@ -20881,30 +22063,30 @@ b(ar1)37 b(then)g(an)g(attempt)i(is)e(made)g(to)h(mak)m(e)g(it)150
 b(elemen)m(ts)i(as)e(v)-5 b(ar1.)62 b(If)37 b(expr1)g(has)g(a)g
 (di\013eren)m(t)h(t)m(yp)s(e)g(to)f(v)-5 b(ar1)38 b(the)f(it)h(is)f
 (con)m(v)m(erted)i(to)f(the)g(v)-5 b(ar1)150 847 y(t)m(yp)s(e.)390
-1014 y Fy(z1=four+=one*=10)43 b(//)48 b(z1=14)e(four=14)g(one=10;)390
+1014 y Fz(z1=four+=one*=10)43 b(//)48 b(z1=14)e(four=14)g(one=10;)390
 1124 y(time-=2)475 b(//)48 b(time=)e(-1,0,1,2,3,4,5,6,7,8)150
-1291 y Fq(Incremen)m(t/Decremen)m(t)33 b(Op)s(erators)184
-1401 y FD(These)g(w)m(ork)h(in)f(a)h(similar)g(fashion)f(to)i(their)e
+1291 y Fr(Incremen)m(t/Decremen)m(t)33 b(Op)s(erators)184
+1401 y FE(These)g(w)m(ork)h(in)f(a)h(similar)g(fashion)f(to)i(their)e
 (regular)h(C)f(coun)m(terparts.)51 b(If)34 b(sa)m(y)g(the)g(v)-5
-b(ariable)34 b Fy(four)150 1510 y FD(is)c(input)e(only)i(then)f(the)h
-(statemen)m(t)h Fy(++four)d FD(e\013ectiv)m(ely)k(means)e(read)f
-Fy(four)g FD(from)g(input)f(incremen)m(t)150 1620 y(eac)m(h)k(elemen)m
+b(ariable)34 b Fz(four)150 1510 y FE(is)c(input)e(only)i(then)f(the)h
+(statemen)m(t)h Fz(++four)d FE(e\013ectiv)m(ely)k(means)e(read)f
+Fz(four)g FE(from)g(input)f(incremen)m(t)150 1620 y(eac)m(h)k(elemen)m
 (t)f(b)m(y)g(one,)g(then)f(write)g(the)h(new)f(v)-5 b(alues)30
-b(to)h(Output;)275 1787 y(Example:)390 1955 y Fy(n2=++four;)140
+b(to)h(Output;)275 1787 y(Example:)390 1955 y Fz(n2=++four;)140
 b(n2=5,)47 b(four=5)390 2064 y(n3=one--+20;)d(n3=21)95
 b(one=0;)390 2174 y(n4=--time;)140 b(n4=time=0.,1.,2.,3.,4.,5.,)o(6.,7)
-o(.,8)o(.,9.)o(;)150 2341 y Fq(Conditional)31 b(Op)s(erator)g(?:)150
-2451 y Fo(exp1)i(?)43 b(exp2)33 b(:)42 b(exp3)150 2560
-y FD(The)26 b(conditional)i(op)s(erator)f(\(or)g(ternary)f(Op)s
+o(.,8)o(.,9.)o(;)150 2341 y Fr(Conditional)31 b(Op)s(erator)g(?:)150
+2451 y Fp(exp1)i(?)43 b(exp2)33 b(:)42 b(exp3)150 2560
+y FE(The)26 b(conditional)i(op)s(erator)f(\(or)g(ternary)f(Op)s
 (erator\))g(is)h(a)g(succinct)g(w)m(a)m(y)g(of)g(writing)g(an)f
 (if/then/else.)150 2670 y(If)k(exp1)h(ev)-5 b(aluates)31
 b(to)h(true)e(then)g(exp2)g(is)h(returned)e(else)i(exp3)g(is)f
-(returned.)275 2837 y(Example:)390 3005 y Fy
+(returned.)275 2837 y(Example:)390 3005 y Fz
 (weight_avg=weight.avg\(\);)390 3114 y(weight_avg at units=)43
 b(\(weight_avg)i(==)i(1)g(?)h("kilo")e(:)h("kilos"\);)390
 3224 y(PS_nw=PS-\(PS.min\(\))c(>)k(100000)f(?)i(100000)e(:)h(0\);)150
-3391 y Fq(Clipping)30 b(Op)s(erators)150 3592 y Fy(<<)g
-FD(Less-than)g(Clipping)630 3811 y(F)-8 b(or)28 b(arra)m(ys,)g(the)g
+3391 y Fr(Clipping)30 b(Op)s(erators)150 3592 y Fz(<<)g
+FE(Less-than)g(Clipping)630 3811 y(F)-8 b(or)28 b(arra)m(ys,)g(the)g
 (less-than)f(selection)i(op)s(erator)f(selects)g(all)g(v)-5
 b(alues)28 b(in)f(the)g(left)h(op)s(erand)630 3920 y(that)37
 b(are)g(less)g(than)g(the)g(corresp)s(onding)e(v)-5 b(alue)37
@@ -20913,7 +22095,7 @@ b(alue)630 4030 y(of)32 b(the)g(left)g(side)f(is)h(greater)h(than)e(or)
 h(equal)g(to)g(the)g(corresp)s(onding)f(v)-5 b(alue)32
 b(of)g(the)f(righ)m(t)630 4139 y(side,)g(then)f(the)g(righ)m(t)h(side)f
 (v)-5 b(alue)31 b(is)g(placed)g(in)f(the)g(result)150
-4315 y Fy(>>)g FD(Greater-than)h(Clipping)630 4534 y(F)-8
+4315 y Fz(>>)g FE(Greater-than)h(Clipping)630 4534 y(F)-8
 b(or)46 b(arra)m(ys,)51 b(the)46 b(greater-than)h(selection)g(op)s
 (erator)f(selects)h(all)g(v)-5 b(alues)46 b(in)f(the)h(left)630
 4644 y(op)s(erand)38 b(that)h(are)h(greater)g(than)f(the)g(corresp)s
@@ -20922,4197 +22104,4206 @@ b(or)46 b(arra)m(ys,)51 b(the)46 b(greater-than)h(selection)g(op)s
 (less)g(than)g(or)f(equal)i(to)f(the)g(corresp)s(onding)f(v)-5
 b(alue)34 b(of)630 4863 y(the)d(righ)m(t)g(side,)f(then)g(the)h(righ)m
 (t)g(side)f(v)-5 b(alue)31 b(is)f(placed)h(in)f(the)h(result.)275
-5063 y(Example:)390 5230 y Fy(RDM2=RDM)46 b(>>)h(100.0)f(//)h
+5063 y(Example:)390 5230 y Fz(RDM2=RDM)46 b(>>)h(100.0)f(//)h
 (100,100,100,100,126,126,1)o(00,1)o(00,1)o(00,)o(100)41
 b(double)390 5340 y(RDM2=RDM)46 b(<<)94 b(90s)h(//)47
 b(1,)g(9,)h(36,)f(84,)f(90,)h(90,)g(84,)g(36,)g(9,)g(1)h(int)p
 eop end
-%%Page: 109 115
-TeXDict begin 109 114 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(109)150
-299 y Fu(4.1.3)63 b(Dimensions)150 446 y FD(Dimensions)31
-b(are)f(de\014ned)f(in)i(Output)e(using)h(the)g Fy(defdim\(\))e
-FD(function.)390 616 y Fy(defdim\("cnt",10\);)275 787
-y FD(This)35 b(dimension)g(name)h(m)m(ust)f(then)h(b)s(e)f(pre\014xed)g
-(with)g(a)h(dollar-sign)h(`)p Fy($)p FD(')f(when)f(referred)g(to)h(in)
-150 896 y(metho)s(d)30 b(argumen)m(ts)g(or)h(left-hand-casting,)h
-(e.g.,)390 1067 y Fy(new_var[$cnt]=time;)390 1176 y
-(temperature[$time,$lat,$)o(lon])o(=35.)o(5;)390 1286
-y(temp_avg=temperature.avg)o(\($ti)o(me\);)275 1456 y
-FD(The)d Fy(size)h FD(metho)s(d)f(allo)m(ws)j(the)f(dimension)e(size)j
-(to)f(b)s(e)f(used)f(in)h(an)g(arithmetic)i(expression:)390
-1627 y Fy(time_avg=time.total\(\))42 b(/)47 b($time.size;)275
-1797 y FD(Increase)30 b(the)h(size)g(of)g(a)f(new)g(v)-5
-b(ariable)31 b(b)m(y)g(one)f(and)g(set)h(new)f(mem)m(b)s(er)g(to)h
-(zero:)390 1967 y Fy(defdim\("cnt_new",$cnt.si)o(ze+1)o(\);)390
-2077 y(new_var[$cnt_new]=0.0;)390 2187 y(new_var\(0:\($cnt_new.size)o
-(-2\)\))o(=old)o(_va)o(r;)150 2357 y Fq(Dimension)f(Abbreviations)180
-2467 y FD(It)h(is)f(p)s(ossible)g(to)h(use)f(dimension)g(abbreviations)
-h(as)g(metho)s(d)e(argumen)m(ts:)150 2576 y Fy($0)h FD(is)g(the)h
-(\014rst)e(dimension)h(of)h(a)f(v)-5 b(ariable)150 2686
-y Fy($1)30 b FD(is)g(the)h(second)f(dimension)g(of)h(a)f(v)-5
-b(ariable)150 2795 y Fy($n)30 b FD(is)g(the)h(n)p Fy(+)p
-FD(1)f(dimension)g(of)g(a)h(v)-5 b(ariable)390 3075 y
-Fy(float)46 b(four_dmn_rec_var\(time,lat,)o(lev)o(,lon)o(\);)390
-3185 y(double)g(three_dmn_var_dbl\(time,la)o(t,l)o(on\);)390
-3404 y(four_nw=four_dmn_rev_var)o(.rev)o(erse)o(\($t)o(ime,)o($lon)o
-(\))390 3514 y(four_nw=four_dmn_rec_var)o(.rev)o(erse)o(\($0)o(,$3\))o
-(;)390 3733 y(four_avg=four_dmn_rec_va)o(r.av)o(g\($l)o(at,)o($lev)o
-(\);)390 3842 y(four_avg=four_dmn_rec_va)o(r.av)o(g\($1)o(,$2)o(\);)390
-4062 y(three_mw=three_dmn_var_d)o(bl.p)o(ermu)o(te\()o($tim)o(e,$l)o
-(on,)o($lat)o(\);)390 4171 y(three_mw=three_dmn_var_d)o(bl.p)o(ermu)o
-(te\()o($0,$)o(2,$1)o(\);)150 4342 y Fq(ID)30 b(Quoting)197
-4451 y FD(If)46 b(the)i(dimension)e(name)h(con)m(tains)h(non-regular)f
-(c)m(haracters)i(use)d(ID)i(quoting.)91 b(See)47 b(see)g(Sec-)150
-4561 y(tion)31 b(4.1.27)h([ID)f(Quoting],)g(page)g(153)390
-4731 y Fy(defdim\("a--list.A",10\);)390 4841 y(A1['$a--list.A']=30.0;)
-150 5011 y Fq(GOTCHA)180 5121 y FD(It)g(is)g(not)g(p)s(ossible)f(to)h
-(man)m(ually)g(de\014ne)f(in)g(Output)g(an)m(y)h(dimensions)e(that)j
-(exist)f(in)f(Input.)40 b(When)150 5230 y(a)e(v)-5 b(ariable)39
-b(from)f(Input)f(app)s(ears)g(in)h(an)g(expression)f(or)h(statemen)m(t)
-i(its)f(dimensions)e(in)h(Input)f(are)150 5340 y(automagically)c
-(copied)e(to)g(Output)f(\(if)g(they)h(are)g(not)f(already)h(presen)m
-(t\))p eop end
-%%Page: 110 116
-TeXDict begin 110 115 bop 150 -116 a FD(110)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fu(4.1.4)63 b(Left)41
-b(hand)g(casting)150 446 y FD(The)36 b(follo)m(wing)h(examples)g
-(demonstrate)f(the)h(utilit)m(y)g(of)f(the)h Fz(left)f(hand)f(casting)
-45 b FD(abilit)m(y)38 b(of)e Fy(ncap2)p FD(.)150 555
-y(Consider)25 b(\014rst)f(this)i(simple,)h(arti\014cial,)h(example.)40
-b(If)25 b Fz(lat)j FD(and)d Fz(lon)h FD(are)g(one)g(dimensional)f(co)s
-(ordinates)150 665 y(of)34 b(dimensions)f Fz(lat)j FD(and)d
-Fz(lon)p FD(,)i(resp)s(ectiv)m(ely)-8 b(,)37 b(then)c(addition)h(of)g
-(these)g(t)m(w)m(o)h(one-dimensional)g(arra)m(ys)150
-775 y(is)e(in)m(trinsically)h(ill-de\014ned)e(b)s(ecause)h(whether)f
-Fz(lat)p 1964 775 28 4 v 41 w(lon)h FD(should)e(b)s(e)h(dimensioned)g
-Fz(lat)k FD(b)m(y)c Fz(lon)h FD(or)g Fz(lon)150 884 y
-FD(b)m(y)k Fz(lat)j FD(is)d(am)m(biguous)g(\(assuming)g(that)g
-(addition)g(is)g(to)h(remain)f(a)g Fz(comm)m(utativ)m(e)45
-b FD(pro)s(cedure,)38 b(i.e.,)150 994 y(one)32 b(that)h(do)s(es)f(not)g
-(dep)s(end)e(on)i(the)h(order)e(of)h(its)h(argumen)m(ts\).)46
-b(Di\013ering)33 b(dimensions)f(are)g(said)g(to)150 1103
-y(b)s(e)f Fz(orthogonal)36 b FD(to)d(one)f(another,)g(and)f(sets)h(of)g
+%%Page: 121 127
+TeXDict begin 121 126 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(121)150 299 y Fv(4.1.3)63
+b(Dimensions)150 446 y FE(Dimensions)31 b(are)f(de\014ned)f(in)i
+(Output)e(using)h(the)g Fz(defdim\(\))e FE(function.)390
+622 y Fz(defdim\("cnt",10\);)43 b(#)48 b(Dimension)d(size)h(is)i(fixed)
+e(by)h(default)390 731 y(defdim\("cnt",10,NC_UNLIM)o(ITED)o(\);)42
+b(#)47 b(Dimension)e(is)i(unlimited)f(\(record)g(dimension\))390
+841 y(defdim\("cnt",10,0\);)d(#)k(Dimension)e(is)i(unlimited)f
+(\(record)g(dimension\))390 951 y(defdim\("cnt",10,1\);)d(#)k
+(Dimension)e(size)i(is)g(fixed)390 1060 y(defdim\("cnt",10,737\);)42
+b(#)47 b(All)g(non-zero)f(values)g(indicate)g(dimension)f(size)h(is)i
+(fixed)275 1236 y FE(This)35 b(dimension)g(name)h(m)m(ust)f(then)h(b)s
+(e)f(pre\014xed)g(with)g(a)h(dollar-sign)h(`)p Fz($)p
+FE(')f(when)f(referred)g(to)h(in)150 1346 y(metho)s(d)30
+b(argumen)m(ts)g(or)h(left-hand-casting,)h(e.g.,)390
+1522 y Fz(new_var[$cnt]=time;)390 1631 y(temperature[$time,$lat,$)o
+(lon])o(=35.)o(5;)390 1741 y(temp_avg=temperature.avg)o(\($ti)o(me\);)
+275 1917 y FE(The)d Fz(size)h FE(metho)s(d)f(allo)m(ws)j(the)f
+(dimension)e(size)j(to)f(b)s(e)f(used)f(in)h(an)g(arithmetic)i
+(expression:)390 2093 y Fz(time_avg=time.total\(\))42
+b(/)47 b($time.size;)275 2269 y FE(Increase)30 b(the)h(size)g(of)g(a)f
+(new)g(v)-5 b(ariable)31 b(b)m(y)g(one)f(and)g(set)h(new)f(mem)m(b)s
+(er)g(to)h(zero:)390 2444 y Fz(defdim\("cnt_new",$cnt.si)o(ze+1)o(\);)
+390 2554 y(new_var[$cnt_new]=0.0;)390 2664 y
+(new_var\(0:\($cnt_new.size)o(-2\)\))o(=old)o(_va)o(r;)150
+2840 y Fr(Dimension)f(Abbreviations)180 2949 y FE(It)h(is)f(p)s
+(ossible)g(to)h(use)f(dimension)g(abbreviations)h(as)g(metho)s(d)e
+(argumen)m(ts:)150 3059 y Fz($0)h FE(is)g(the)h(\014rst)e(dimension)h
+(of)h(a)f(v)-5 b(ariable)150 3168 y Fz($1)30 b FE(is)g(the)h(second)f
+(dimension)g(of)h(a)f(v)-5 b(ariable)150 3278 y Fz($n)30
+b FE(is)g(the)h(n)p Fz(+)p FE(1)f(dimension)g(of)g(a)h(v)-5
+b(ariable)390 3563 y Fz(float)46 b(four_dmn_rec_var\(time,lat,)o(lev)o
+(,lon)o(\);)390 3673 y(double)g(three_dmn_var_dbl\(time,la)o(t,l)o
+(on\);)390 3892 y(four_nw=four_dmn_rev_var)o(.rev)o(erse)o(\($t)o(ime,)
+o($lon)o(\))390 4002 y(four_nw=four_dmn_rec_var)o(.rev)o(erse)o(\($0)o
+(,$3\))o(;)390 4221 y(four_avg=four_dmn_rec_va)o(r.av)o(g\($l)o(at,)o
+($lev)o(\);)390 4331 y(four_avg=four_dmn_rec_va)o(r.av)o(g\($1)o(,$2)o
+(\);)390 4550 y(three_mw=three_dmn_var_d)o(bl.p)o(ermu)o(te\()o($tim)o
+(e,$l)o(on,)o($lat)o(\);)390 4659 y(three_mw=three_dmn_var_d)o(bl.p)o
+(ermu)o(te\()o($0,$)o(2,$1)o(\);)150 4835 y Fr(ID)30
+b(Quoting)197 4945 y FE(If)46 b(the)i(dimension)e(name)h(con)m(tains)h
+(non-regular)f(c)m(haracters)i(use)d(ID)i(quoting.)91
+b(See)47 b(see)g(Sec-)150 5054 y(tion)31 b(4.1.27)h([ID)f(Quoting],)g
+(page)g(166)390 5230 y Fz(defdim\("a--list.A",10\);)390
+5340 y(A1['$a--list.A']=30.0;)p eop end
+%%Page: 122 128
+TeXDict begin 122 127 bop 150 -116 a FE(122)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Fr(GOTCHA)180 408
+y FE(It)h(is)g(not)g(p)s(ossible)f(to)h(man)m(ually)g(de\014ne)f(in)g
+(Output)g(an)m(y)h(dimensions)e(that)j(exist)f(in)f(Input.)40
+b(When)150 518 y(a)e(v)-5 b(ariable)39 b(from)f(Input)f(app)s(ears)g
+(in)h(an)g(expression)f(or)h(statemen)m(t)i(its)f(dimensions)e(in)h
+(Input)f(are)150 628 y(automagically)c(copied)e(to)g(Output)f(\(if)g
+(they)h(are)g(not)f(already)h(presen)m(t\))150 837 y
+Fv(4.1.4)63 b(Left)41 b(hand)g(casting)150 984 y FE(The)36
+b(follo)m(wing)h(examples)g(demonstrate)f(the)h(utilit)m(y)g(of)f(the)h
+FA(left)f(hand)f(casting)45 b FE(abilit)m(y)38 b(of)e
+Fz(ncap2)p FE(.)150 1093 y(Consider)25 b(\014rst)f(this)i(simple,)h
+(arti\014cial,)h(example.)40 b(If)25 b FA(lat)j FE(and)d
+FA(lon)h FE(are)g(one)g(dimensional)f(co)s(ordinates)150
+1203 y(of)34 b(dimensions)f FA(lat)j FE(and)d FA(lon)p
+FE(,)i(resp)s(ectiv)m(ely)-8 b(,)37 b(then)c(addition)h(of)g(these)g(t)
+m(w)m(o)h(one-dimensional)g(arra)m(ys)150 1313 y(is)e(in)m(trinsically)
+h(ill-de\014ned)e(b)s(ecause)h(whether)f FA(lat)p 1964
+1313 28 4 v 41 w(lon)h FE(should)e(b)s(e)h(dimensioned)g
+FA(lat)k FE(b)m(y)c FA(lon)h FE(or)g FA(lon)150 1422
+y FE(b)m(y)k FA(lat)j FE(is)d(am)m(biguous)g(\(assuming)g(that)g
+(addition)g(is)g(to)h(remain)f(a)g FA(comm)m(utativ)m(e)45
+b FE(pro)s(cedure,)38 b(i.e.,)150 1532 y(one)32 b(that)h(do)s(es)f(not)
+g(dep)s(end)e(on)i(the)h(order)e(of)h(its)h(argumen)m(ts\).)46
+b(Di\013ering)33 b(dimensions)f(are)g(said)g(to)150 1641
+y(b)s(e)f FA(orthogonal)36 b FE(to)d(one)f(another,)g(and)f(sets)h(of)g
 (dimensions)e(whic)m(h)i(are)g(m)m(utually)g(exclusiv)m(e)h(are)f(or-)
-150 1213 y(thogonal)27 b(as)f(a)g(set)g(and)f(an)m(y)h(arithmetic)h(op)
+150 1751 y(thogonal)27 b(as)f(a)g(set)g(and)f(an)m(y)h(arithmetic)h(op)
 s(eration)f(b)s(et)m(w)m(een)g(v)-5 b(ariables)26 b(in)g(orthogonal)h
-(dimensional)150 1323 y(spaces)k(is)f(am)m(biguous)h(without)f(further)
-f(information.)275 1482 y(The)34 b(am)m(biguit)m(y)j(ma)m(y)f(b)s(e)e
+(dimensional)150 1861 y(spaces)k(is)f(am)m(biguous)h(without)f(further)
+f(information.)275 2025 y(The)34 b(am)m(biguit)m(y)j(ma)m(y)f(b)s(e)e
 (resolv)m(ed)j(b)m(y)e(en)m(umerating)h(the)f(desired)g(dimension)f
-(ordering)h(of)h(the)150 1592 y(output)24 b(expression)g(inside)g
+(ordering)h(of)h(the)150 2134 y(output)24 b(expression)g(inside)g
 (square)g(brac)m(k)m(ets)i(on)e(the)h(left)g(hand)e(side)i(\()p
-FC(LHS)p FD(\))g(of)g(the)f(equals)h(sign.)39 b(This)150
-1701 y(is)29 b(called)h Fz(left)g(hand)e(casting)38 b
-FD(b)s(ecause)29 b(the)g(user)f(resolv)m(es)i(the)f(dimensional)g
-(ordering)g(of)g(the)g FC(RHS)h FD(of)150 1811 y(the)h(expression)f(b)m
+FD(LHS)p FE(\))g(of)g(the)f(equals)h(sign.)39 b(This)150
+2244 y(is)29 b(called)h FA(left)g(hand)e(casting)38 b
+FE(b)s(ecause)29 b(the)g(user)f(resolv)m(es)i(the)f(dimensional)g
+(ordering)g(of)g(the)g FD(RHS)h FE(of)150 2354 y(the)h(expression)f(b)m
 (y)g(sp)s(ecifying)g(the)h(desired)f(ordering)g(on)g(the)h
-FC(LHS)p FD(.)390 1970 y Fy(ncap2)46 b(-s)i('lat_lon[lat,lon]=lat+l)o
-(on')41 b(in.nc)47 b(out.nc)390 2080 y(ncap2)f(-s)i
+FD(LHS)p FE(.)390 2518 y Fz(ncap2)46 b(-s)i('lat_lon[lat,lon]=lat+l)o
+(on')41 b(in.nc)47 b(out.nc)390 2628 y(ncap2)f(-s)i
 ('lon_lat[lon,lat]=lat+l)o(on')41 b(in.nc)47 b(out.nc)275
-2239 y FD(The)27 b(explicit)i(list)f(of)g(dimensions)g(on)f(the)h
-FC(LHS)p FD(,)h Fy([lat,lon])c FD(resolv)m(es)k(the)g(otherwise)f(am)m
-(biguous)150 2349 y(ordering)41 b(of)h(dimensions)f(in)h
-Fz(lat)p 1341 2349 V 41 w(lon)p FD(.)75 b(In)41 b(e\013ect,)46
-b(the)c FC(LHS)g Fz(casts)k FD(its)c(rank)g(prop)s(erties)f(on)m(to)i
-(the)150 2458 y FC(RHS)p FD(.)58 b(Without)37 b FC(LHS)g
-FD(casting,)i(the)d(dimensional)g(ordering)g(of)h Fz(lat)p
-2566 2458 V 41 w(lon)f FD(w)m(ould)g(b)s(e)f(unde\014ned)f(and,)150
-2568 y(hop)s(efully)-8 b(,)30 b Fy(ncap2)f FD(w)m(ould)h(prin)m(t)g(an)
-g(error)g(message.)275 2727 y(Consider)38 b(no)m(w)h(a)h(sligh)m(tly)h
+2792 y FE(The)27 b(explicit)i(list)f(of)g(dimensions)g(on)f(the)h
+FD(LHS)p FE(,)h Fz([lat,lon])c FE(resolv)m(es)k(the)g(otherwise)f(am)m
+(biguous)150 2902 y(ordering)41 b(of)h(dimensions)f(in)h
+FA(lat)p 1341 2902 V 41 w(lon)p FE(.)75 b(In)41 b(e\013ect,)46
+b(the)c FD(LHS)g FA(casts)k FE(its)c(rank)g(prop)s(erties)f(on)m(to)i
+(the)150 3011 y FD(RHS)p FE(.)58 b(Without)37 b FD(LHS)g
+FE(casting,)i(the)d(dimensional)g(ordering)g(of)h FA(lat)p
+2566 3011 V 41 w(lon)f FE(w)m(ould)g(b)s(e)f(unde\014ned)f(and,)150
+3121 y(hop)s(efully)-8 b(,)30 b Fz(ncap2)f FE(w)m(ould)h(prin)m(t)g(an)
+g(error)g(message.)275 3285 y(Consider)38 b(no)m(w)h(a)h(sligh)m(tly)h
 (more)e(complex)h(example.)69 b(In)38 b(geoph)m(ysical)k(mo)s(dels,)f
-(a)f(co)s(ordinate)150 2837 y(system)24 b(based)f(on)g(a)h(blend)f(of)h
+(a)f(co)s(ordinate)150 3395 y(system)24 b(based)f(on)g(a)h(blend)f(of)h
 (terrain-follo)m(wing)h(and)e(densit)m(y-follo)m(wing)j(surfaces)d(is)h
-(called)g(a)g Fz(h)m(ybrid)150 2946 y(co)s(ordinate)i(system)p
-FD(.)40 b(In)25 b(this)g(co)s(ordinate)h(system,)h(four)e(v)-5
+(called)g(a)g FA(h)m(ybrid)150 3504 y(co)s(ordinate)i(system)p
+FE(.)40 b(In)25 b(this)g(co)s(ordinate)h(system,)h(four)e(v)-5
 b(ariables)26 b(m)m(ust)g(b)s(e)f(manipulated)g(to)h(obtain)150
-3056 y(the)44 b(pressure)e(of)h(the)h(v)m(ertical)h(co)s(ordinate:)68
-b Fz(PO)48 b FD(is)43 b(the)h(domain-mean)f(surface)h(pressure)e
-(o\013set)150 3166 y(\(a)c(scalar\),)j Fz(PS)h FD(is)c(the)g(lo)s(cal)h
+3614 y(the)44 b(pressure)e(of)h(the)h(v)m(ertical)h(co)s(ordinate:)68
+b FA(PO)48 b FE(is)43 b(the)h(domain-mean)f(surface)h(pressure)e
+(o\013set)150 3724 y(\(a)c(scalar\),)j FA(PS)h FE(is)c(the)g(lo)s(cal)h
 (\(time-v)-5 b(arying\))39 b(surface)f(pressure)e(\(usually)i(t)m(w)m
-(o)h(horizon)m(tal)g(spatial)150 3275 y(dimensions,)g(i.e.)65
-b(latitude)38 b(b)m(y)g(longitude\),)j Fz(h)m(y)m(am)e
-FD(is)f(the)g(w)m(eigh)m(t)h(giv)m(en)g(to)g(surfaces)f(of)g(constan)m
-(t)150 3385 y(densit)m(y)27 b(\(one)g(spatial)g(dimension,)g(pressure,)
+(o)h(horizon)m(tal)g(spatial)150 3833 y(dimensions,)g(i.e.)65
+b(latitude)38 b(b)m(y)g(longitude\),)j FA(h)m(y)m(am)e
+FE(is)f(the)g(w)m(eigh)m(t)h(giv)m(en)g(to)g(surfaces)f(of)g(constan)m
+(t)150 3943 y(densit)m(y)27 b(\(one)g(spatial)g(dimension,)g(pressure,)
 f(whic)m(h)h(is)f(orthogonal)i(to)f(the)g(horizon)m(tal)h
-(dimensions\),)150 3494 y(and)f Fz(h)m(ybm)f FD(is)h(the)g(w)m(eigh)m
+(dimensions\),)150 4052 y(and)f FA(h)m(ybm)f FE(is)h(the)g(w)m(eigh)m
 (t)i(giv)m(en)f(to)g(surfaces)f(of)g(constan)m(t)i(elev)-5
 b(ation)29 b(\(also)f(one)g(spatial)g(dimension\).)150
-3604 y(This)21 b(command)h(constructs)g(a)g(four-dimensional)g
-(pressure)f Fy(prs_mdp)f FD(from)h(the)h(four)f(input)g(v)-5
-b(ariables)150 3714 y(of)31 b(mixed)f(rank)g(and)f(orthogonalit)m(y:)
-390 3873 y Fy(ncap2)46 b(-s)i('prs_mdp[time,lat,lon,l)o(ev])o(=P0*)o
-(hyam)o(+PS)o(*hyb)o(m')42 b(in.nc)k(out.nc)275 4032
-y FD(Manipulating)32 b(the)g(four)f(\014elds)h(whic)m(h)f(de\014ne)g
+4162 y(This)21 b(command)h(constructs)g(a)g(four-dimensional)g
+(pressure)f Fz(prs_mdp)f FE(from)h(the)h(four)f(input)g(v)-5
+b(ariables)150 4271 y(of)31 b(mixed)f(rank)g(and)f(orthogonalit)m(y:)
+390 4436 y Fz(ncap2)46 b(-s)i('prs_mdp[time,lat,lon,l)o(ev])o(=P0*)o
+(hyam)o(+PS)o(*hyb)o(m')42 b(in.nc)k(out.nc)275 4600
+y FE(Manipulating)32 b(the)g(four)f(\014elds)h(whic)m(h)f(de\014ne)g
 (the)h(pressure)f(in)g(a)i(h)m(ybrid)d(co)s(ordinate)j(system)f(is)150
-4142 y(easy)f(with)f(left)h(hand)e(casting.)150 4326
-y Fu(4.1.5)63 b(Arra)m(ys)40 b(and)h(h)m(yp)s(erslabs)150
-4473 y FD(Generating)25 b(a)g(regularly)f(spaced)h(one-dimensional)f
-(arra)m(y)h(with)f Fy(ncap2)f FD(is)h(simple)g(with)g(the)g
-Fy(array\(\))150 4583 y FD(function.)40 b(The)30 b(syn)m(tax)h(is)390
-4742 y Fy(var_out=array\(val_srt,va)o(l_nc)o(r,$d)o(mn_)o(nm\);)41
-b(//)47 b(One-dimensional)d(output)390 4852 y
-(var_out=array\(val_srt,va)o(l_nc)o(r,va)o(r_t)o(pl\);)d(//)47
-b(Multi-dimensional)c(output)150 5011 y FD(where)g(the)g(argumen)m(ts)h
-(are)g(the)f(starting)h(v)-5 b(alue)44 b Fz(v)-5 b(al)p
-2104 5011 V 41 w(srt)p FD(,)47 b(incremen)m(tal)d(v)-5
-b(alue)44 b Fz(v)-5 b(al)p 3190 5011 V 41 w(ncr)p FD(,)46
-b(and,)g(for)150 5121 y(one-dimensional)39 b(output,)g(the)f(single)g
-(dimension)f Fy($dmn_nm)p FD(,)h(or,)i(for)d(m)m(ulti-dimensional)i
-(output,)150 5230 y(a)f(template)i(v)-5 b(ariable)38
-b Fy(var_tpl)p FD(,)g(i.e.,)j(a)e(v)-5 b(ariable)38 b(with)g(the)g
-(same)g(shap)s(e)f(as)i(the)f(desired)f(output.)150 5340
-y(The)44 b(t)m(yp)s(e)g(of)h Fy(var_out)d FD(will)j(b)s(e)f(the)g(same)
-h(as)g Fy(val_srt)p FD(.)80 b(Be)45 b(sure)f(to)h(enco)s(de)f(this)h(t)
-m(yp)s(e)f(with)p eop end
-%%Page: 111 117
-TeXDict begin 111 116 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(111)150
-299 y(the)26 b(appropriate)g(decimal)h(p)s(oin)m(t)e(and)h(\015oating)g
-(p)s(oin)m(t)g(su\016x)f(when)g Fy(val_srt)f FD(is)h(a)i(\\nak)m(ed)f
-(constan)m(t")150 408 y(rather)20 b(than)h(a)f(v)-5 b(ariable.)39
-b(F)-8 b(or)21 b(example,)i(to)e(pro)s(duce)f(an)g(arra)m(y)h(of)g
-(shorts)f(\(signed)g(t)m(w)m(o-b)m(yte)j(in)m(tegers\),)150
-518 y(in)m(tegers)32 b(\(signed)e(four-b)m(yte)h(in)m(tegers\),)h
-(unsigned)d(64-bit)j(in)m(tegers,)g(\015oats,)f(or)f(doubles)g(use)390
-678 y Fy(var_out=array\(1s,val_ncr)o(,$dm)o(n_nm)o(\);)41
-b(//)48 b(NC_SHORT)d(array)390 788 y(var_out=array\(1,val_ncr,)o($dmn)o
-(_nm\))o(;)d(//)47 b(NC_INT)f(array)390 897 y
+4710 y(easy)f(with)f(left)h(hand)e(casting.)150 4919
+y Fv(4.1.5)63 b(Arra)m(ys)40 b(and)h(h)m(yp)s(erslabs)150
+5066 y FE(Generating)25 b(a)g(regularly)f(spaced)h(one-dimensional)f
+(arra)m(y)h(with)f Fz(ncap2)f FE(is)h(simple)g(with)g(the)g
+Fz(array\(\))150 5176 y FE(function.)40 b(The)30 b(syn)m(tax)h(is)390
+5340 y Fz(var_out=array\(val_srt,va)o(l_nc)o(r,$d)o(mn_)o(nm\);)41
+b(//)47 b(One-dimensional)d(output)p eop end
+%%Page: 123 129
+TeXDict begin 123 128 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(123)390 299 y Fz
+(var_out=array\(val_srt,va)o(l_nc)o(r,va)o(r_t)o(pl\);)41
+b(//)47 b(Multi-dimensional)c(output)150 459 y FE(where)g(the)g
+(argumen)m(ts)h(are)g(the)f(starting)h(v)-5 b(alue)44
+b FA(v)-5 b(al)p 2104 459 28 4 v 41 w(srt)p FE(,)47 b(incremen)m(tal)d
+(v)-5 b(alue)44 b FA(v)-5 b(al)p 3190 459 V 41 w(ncr)p
+FE(,)46 b(and,)g(for)150 569 y(one-dimensional)39 b(output,)g(the)f
+(single)g(dimension)f Fz($dmn_nm)p FE(,)h(or,)i(for)d(m)m
+(ulti-dimensional)i(output,)150 678 y(a)f(template)i(v)-5
+b(ariable)38 b Fz(var_tpl)p FE(,)g(i.e.,)j(a)e(v)-5 b(ariable)38
+b(with)g(the)g(same)g(shap)s(e)f(as)i(the)f(desired)f(output.)150
+788 y(The)44 b(t)m(yp)s(e)g(of)h Fz(var_out)d FE(will)j(b)s(e)f(the)g
+(same)h(as)g Fz(val_srt)p FE(.)80 b(Be)45 b(sure)f(to)h(enco)s(de)f
+(this)h(t)m(yp)s(e)f(with)150 897 y(the)26 b(appropriate)g(decimal)h(p)
+s(oin)m(t)e(and)h(\015oating)g(p)s(oin)m(t)g(su\016x)f(when)g
+Fz(val_srt)f FE(is)h(a)i(\\nak)m(ed)f(constan)m(t")150
+1007 y(rather)20 b(than)h(a)f(v)-5 b(ariable.)39 b(F)-8
+b(or)21 b(example,)i(to)e(pro)s(duce)f(an)g(arra)m(y)h(of)g(shorts)f
+(\(signed)g(t)m(w)m(o-b)m(yte)j(in)m(tegers\),)150 1117
+y(in)m(tegers)32 b(\(signed)e(four-b)m(yte)h(in)m(tegers\),)h(unsigned)
+d(64-bit)j(in)m(tegers,)g(\015oats,)f(or)f(doubles)g(use)390
+1277 y Fz(var_out=array\(1s,val_ncr)o(,$dm)o(n_nm)o(\);)41
+b(//)48 b(NC_SHORT)d(array)390 1386 y(var_out=array\(1,val_ncr,)o($dmn)
+o(_nm\))o(;)d(//)47 b(NC_INT)f(array)390 1496 y
 (var_out=array\(1ull,val_n)o(cr,$)o(dmn_)o(nm\))o(;)c(//)47
-b(NC_UINT64)e(array)390 1007 y(var_out=array\(1f,val_ncr)o(,$dm)o(n_nm)
-o(\);)c(//)48 b(NC_FLOAT)d(array)390 1117 y(var_out=array\(1.,val_ncr)o
-(,$dm)o(n_nm)o(\);)c(//)48 b(NC_DOUBLE)d(array)275 1277
-y FD(Once)33 b(the)i(asso)s(ciated)g(dimensions)e(ha)m(v)m(e)i(b)s(een)
+b(NC_UINT64)e(array)390 1606 y(var_out=array\(1f,val_ncr)o(,$dm)o(n_nm)
+o(\);)c(//)48 b(NC_FLOAT)d(array)390 1715 y(var_out=array\(1.,val_ncr)o
+(,$dm)o(n_nm)o(\);)c(//)48 b(NC_DOUBLE)d(array)275 1875
+y FE(Once)33 b(the)i(asso)s(ciated)g(dimensions)e(ha)m(v)m(e)i(b)s(een)
 e(de\014ned,)h(the)g(start)h(and)e(incremen)m(t)i(argumen)m(ts)150
-1386 y(ma)m(y)c(b)s(e)f(supplied)f(as)h(v)-5 b(alues,)31
+1985 y(ma)m(y)c(b)s(e)f(supplied)f(as)h(v)-5 b(alues,)31
 b(mathmatical)i(expressions,)d(or)g(v)-5 b(ariables:)390
-1547 y Fy(var_out=array\(1,1,$time\))o(;)42 b(//)47 b
-(1,2,3,4,5,6,7,8,9,10)390 1656 y(var_out=array\(1+2-2,one,)o($tim)o
-(e\);)41 b(//)47 b(1,2,3,4,5,6,7,8,9,10)390 1766 y
+2145 y Fz(var_out=array\(1,1,$time\))o(;)42 b(//)47 b
+(1,2,3,4,5,6,7,8,9,10)390 2255 y(var_out=array\(1+2-2,one,)o($tim)o
+(e\);)41 b(//)47 b(1,2,3,4,5,6,7,8,9,10)390 2364 y
 (var_out=array\(1,2,three_)o(dmn_)o(rec_)o(var)o(\);)42
-b(//)47 b(1,3,5,...155,157,159)275 1926 y FD(Hyp)s(erslabs)35
-b(in)g Fy(ncap2)g FD(are)i(more)f(limited)h(than)e(h)m(yp)s(erslabs)g
-(with)h(the)g(other)h FC(NCO)f FD(op)s(erators.)150 2035
-y Fy(ncap2)44 b FD(do)s(es)i(not)g(understand)e(the)i(shell)g
+b(//)47 b(1,3,5,...155,157,159)275 2524 y FE(Hyp)s(erslabs)35
+b(in)g Fz(ncap2)g FE(are)i(more)f(limited)h(than)e(h)m(yp)s(erslabs)g
+(with)h(the)g(other)h FD(NCO)f FE(op)s(erators.)150 2634
+y Fz(ncap2)44 b FE(do)s(es)i(not)g(understand)e(the)i(shell)g
 (command-line)g(syn)m(tax)h(used)e(to)h(sp)s(ecify)g(m)m(ulti-slabs,)
-150 2145 y(wrapp)s(ed)38 b(co-ordinates,)44 b(negativ)m(e)e(stride)e
+150 2744 y(wrapp)s(ed)38 b(co-ordinates,)44 b(negativ)m(e)e(stride)e
 (or)f(co)s(ordinate)i(v)-5 b(alue)40 b(limits.)70 b(Ho)m(w)m(ev)m(er)42
-b(with)e(a)g(bit)g(of)150 2255 y(syn)m(tactic)c(magic)g(they)e(are)h
-(all)g(are)g(p)s(ossible.)51 b Fy(ncap2)33 b FD(accepts)j(\(in)e(fact,)
-j(it)d(requires\))g Fz(N)p FD(-h)m(yp)s(erslab)150 2364
+b(with)e(a)g(bit)g(of)150 2853 y(syn)m(tactic)c(magic)g(they)e(are)h
+(all)g(are)g(p)s(ossible.)51 b Fz(ncap2)33 b FE(accepts)j(\(in)e(fact,)
+j(it)d(requires\))g FA(N)p FE(-h)m(yp)s(erslab)150 2963
 y(argumen)m(ts)d(for)f(a)h(v)-5 b(ariable)31 b(of)f(rank)g
-Fz(N)10 b FD(:)390 2524 y Fy(var1\(arg1,arg2)44 b(...)j(argN\);)275
-2685 y FD(where)29 b(eac)m(h)j(h)m(yp)s(erslab)d(argumen)m(t)i(is)g(of)
-f(the)h(form)390 2845 y Fy(start:end:stride)275 3005
-y FD(and)23 b(the)i(argumen)m(ts)g(for)f(di\013eren)m(t)h(dimensions)f
-(are)h(separated)g(b)m(y)g(commas.)39 b(If)24 b Fz(start)j
-FD(is)e(omitted,)150 3114 y(it)35 b(defaults)f(to)h(zero.)54
-b(If)34 b Fz(end)j FD(is)d(omitted,)j(it)e(defaults)f(to)h(dimension)f
-(size)h(min)m(us)f(one.)53 b(If)34 b Fz(stride)39 b FD(is)150
-3224 y(omitted,)32 b(it)f(defaults)f(to)h(one.)150 3494
+FA(N)10 b FE(:)390 3123 y Fz(var1\(arg1,arg2)44 b(...)j(argN\);)275
+3283 y FE(where)29 b(eac)m(h)j(h)m(yp)s(erslab)d(argumen)m(t)i(is)g(of)
+f(the)h(form)390 3443 y Fz(start:end:stride)275 3603
+y FE(and)23 b(the)i(argumen)m(ts)g(for)f(di\013eren)m(t)h(dimensions)f
+(are)h(separated)g(b)m(y)g(commas.)39 b(If)24 b FA(start)j
+FE(is)e(omitted,)150 3713 y(it)35 b(defaults)f(to)h(zero.)54
+b(If)34 b FA(end)j FE(is)d(omitted,)j(it)e(defaults)f(to)h(dimension)f
+(size)h(min)m(us)f(one.)53 b(If)34 b FA(stride)39 b FE(is)150
+3823 y(omitted,)32 b(it)f(defaults)f(to)h(one.)150 4092
 y(If)26 b(a)i(single)f(v)-5 b(alue)28 b(is)f(presen)m(t)f(then)h(it)g
 (is)g(assumed)g(that)g(that)g(dimension)g(collapses)h(to)g(a)f(single)g
-(v)-5 b(alue)150 3603 y(\(i.e.,)28 b(a)d(cross-section\).)41
+(v)-5 b(alue)150 4202 y(\(i.e.,)28 b(a)d(cross-section\).)41
 b(The)25 b(n)m(um)m(b)s(er)f(of)h(h)m(yp)s(erslab)f(argumen)m(ts)i
 (MUST)e(equal)i(the)f(v)-5 b(ariable's)26 b(rank.)150
-3873 y Fq(Hyp)s(erslabs)k(on)g(the)g(Righ)m(t)i(Hand)e(Side)g(of)g(an)g
-(assign)275 4143 y FD(A)g(simple)g(1D)i(example:)390
-4303 y Fy(\($time.size=10\))390 4413 y(od[$time]={20,22,24,26,2)o(8,30)
-o(,32,)o(34,)o(36,3)o(8};)390 4632 y(od\(7\);)237 b(//)47
-b(34)390 4741 y(od\(7:\);)189 b(//)47 b(34,36,38)390
-4851 y(od\(:7\);)189 b(//)47 b(20,22,24,26,28,30,32,34)390
-4961 y(od\(::4\);)141 b(//)47 b(20,28,36)390 5070 y(od\(1:6:2\))93
-b(//)47 b(22,26,30)390 5180 y(od\(:\))285 b(//)47 b
-(20,22,24,26,28,30,32,34,3)o(6,38)275 5340 y FD(A)30
-b(more)h(complex)g(three)f(dimensional)h(example:)p eop
+4472 y Fr(Hyp)s(erslabs)k(on)g(the)g(Righ)m(t)i(Hand)e(Side)g(of)g(an)g
+(assign)275 4741 y FE(A)g(simple)g(1D)i(example:)390
+4902 y Fz(\($time.size=10\))390 5011 y(od[$time]={20,22,24,26,2)o(8,30)
+o(,32,)o(34,)o(36,3)o(8};)390 5230 y(od\(7\);)237 b(//)47
+b(34)390 5340 y(od\(7:\);)189 b(//)47 b(34,36,38)p eop
 end
-%%Page: 112 118
-TeXDict begin 112 117 bop 150 -116 a FD(112)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(\($lat.size=2,$lon.size=4)o(\))
-390 408 y(th[$time,$lat,$lon]=)1631 518 y({1,)47 b(2,)g(3,)g(4,)g(5,)h
-(6,)f(7,)g(8,)1631 628 y(9,10,11,12,13,14,15,16,)1631
-737 y(17,18,19,20,21,22,23,24,)1631 847 y(-99,-99,-99,-99,-99,-99,)o
-(-99,)o(-99)o(,)1631 956 y(33,34,35,36,37,38,39,40,)1631
-1066 y(41,42,43,44,45,46,47,48,)1631 1176 y(49,50,51,52,53,54,55,56,)
-1631 1285 y(-99,58,59,60,61,62,63,64)o(,)1631 1395 y
-(65,66,67,68,69,70,71,72,)1631 1504 y(-99,74,75,76,77,78,79,-9)o(9)42
-b(};)390 1724 y(th\(1,1,3\);)379 b(//)47 b(16)390 1833
+%%Page: 124 130
+TeXDict begin 124 129 bop 150 -116 a FE(124)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(od\(:7\);)189
+b(//)47 b(20,22,24,26,28,30,32,34)390 408 y(od\(::4\);)141
+b(//)47 b(20,28,36)390 518 y(od\(1:6:2\))93 b(//)47 b(22,26,30)390
+628 y(od\(:\))285 b(//)47 b(20,22,24,26,28,30,32,34,3)o(6,38)275
+792 y FE(A)30 b(more)h(complex)g(three)f(dimensional)h(example:)390
+956 y Fz(\($lat.size=2,$lon.size=4)o(\))390 1066 y
+(th[$time,$lat,$lon]=)1631 1176 y({1,)47 b(2,)g(3,)g(4,)g(5,)h(6,)f(7,)
+g(8,)1631 1285 y(9,10,11,12,13,14,15,16,)1631 1395 y
+(17,18,19,20,21,22,23,24,)1631 1504 y(-99,-99,-99,-99,-99,-99,)o(-99,)o
+(-99)o(,)1631 1614 y(33,34,35,36,37,38,39,40,)1631 1724
+y(41,42,43,44,45,46,47,48,)1631 1833 y(49,50,51,52,53,54,55,56,)1631
+1943 y(-99,58,59,60,61,62,63,64)o(,)1631 2052 y
+(65,66,67,68,69,70,71,72,)1631 2162 y(-99,74,75,76,77,78,79,-9)o(9)42
+b(};)390 2381 y(th\(1,1,3\);)379 b(//)47 b(16)390 2491
 y(th\(2,0,:\);)379 b(//)47 b(17,)g(18,)g(19,)g(20)390
-1943 y(th\(:,1,3\);)379 b(//)47 b(8,)g(16,)g(24,)g(-99,)g(40,)g(48,)g
-(56,)g(64,)g(72,)f(-99)390 2052 y(th\(::5,:,0:3:2\);)d(//)48
-b(1,)f(3,)g(5,)g(7,)g(41,)g(43,)g(45,)g(47)275 2212 y
-FD(If)38 b(h)m(yp)s(erslab)g(argumen)m(ts)h(collapse)i(to)f(a)f(single)
+2600 y(th\(:,1,3\);)379 b(//)47 b(8,)g(16,)g(24,)g(-99,)g(40,)g(48,)g
+(56,)g(64,)g(72,)f(-99)390 2710 y(th\(::5,:,0:3:2\);)d(//)48
+b(1,)f(3,)g(5,)g(7,)g(41,)g(43,)g(45,)g(47)275 2874 y
+FE(If)38 b(h)m(yp)s(erslab)g(argumen)m(ts)h(collapse)i(to)f(a)f(single)
 h(v)-5 b(alue)39 b(\(a)h(cross-section)h(has)e(b)s(een)f(sp)s
-(eci\014ed\),)150 2322 y(then)32 b(that)i(dimension)e(is)g(remo)m(v)m
+(eci\014ed\),)150 2984 y(then)32 b(that)i(dimension)e(is)g(remo)m(v)m
 (ed)i(from)e(the)h(returned)e(v)-5 b(ariable.)49 b(If)32
-b(all)h(the)g(v)-5 b(alues)33 b(collapse)h(then)150 2432
+b(all)h(the)g(v)-5 b(alues)33 b(collapse)h(then)150 3093
 y(a)d(scalar)g(v)-5 b(ariable)31 b(is)g(returned.)39
 b(So,)31 b(for)f(example,)h(the)g(follo)m(wing)h(is)e(v)-5
-b(alid:)390 2592 y Fy(th_nw=th\(0,:,:\)+th\(9,:,:)o(\);)390
-2701 y(//)47 b(th_nw)g(has)f(dimensions)f($lon,$lat)390
-2811 y(//)i(NB:)g(the)g(time)g(dimension)e(has)i(become)f(degenerate)
-275 2971 y FD(The)29 b(follo)m(wing)j(is)f(in)m(v)-5
-b(alid:)390 3131 y Fy(th_nw=th\(0,:,0:1\)+th\(9,:)o(,0:1)o(\);)275
-3292 y FD(b)s(ecause)34 b(the)i Fy($lon)d FD(dimension)i(no)m(w)f(only)
+b(alid:)390 3258 y Fz(th_nw=th\(0,:,:\)+th\(9,:,:)o(\);)390
+3367 y(//)47 b(th_nw)g(has)f(dimensions)f($lon,$lat)390
+3477 y(//)i(NB:)g(the)g(time)g(dimension)e(has)i(become)f(degenerate)
+275 3641 y FE(The)29 b(follo)m(wing)j(is)f(in)m(v)-5
+b(alid:)390 3806 y Fz(th_nw=th\(0,:,0:1\)+th\(9,:)o(,0:1)o(\);)275
+3970 y FE(b)s(ecause)34 b(the)i Fz($lon)d FE(dimension)i(no)m(w)f(only)
 i(has)e(t)m(w)m(o)i(elemen)m(ts.)56 b(The)34 b(ab)s(o)m(v)m(e)j(can)e
-(b)s(e)f(calculated)150 3401 y(b)m(y)c(using)g(a)h(LHS)f(cast)h(with)f
-Fy($lon_nw)f FD(as)h(replacemen)m(t)i(dim)e(for)g Fy($lon)p
-FD(:)390 3561 y Fy(defdim\("lon_nw",2\);)390 3671 y
+(b)s(e)f(calculated)150 4080 y(b)m(y)c(using)g(a)h(LHS)f(cast)h(with)f
+Fz($lon_nw)f FE(as)h(replacemen)m(t)i(dim)e(for)g Fz($lon)p
+FE(:)390 4244 y Fz(defdim\("lon_nw",2\);)390 4354 y
 (th_nw[$lat,$lon_nw]=th\(0)o(,:,0)o(:1\))41 b(+th\(9,:,0:1\);)150
-3831 y Fq(Hyp)s(erslabs)30 b(on)g(the)g(Left)h(Hand)f(Side)g(of)g(an)g
-(assign)179 3941 y FD(When)f(h)m(yp)s(erslabing)g(on)g(the)g(LHS,)g
+4518 y Fr(Hyp)s(erslabs)30 b(on)g(the)g(Left)h(Hand)f(Side)g(of)g(an)g
+(assign)179 4628 y FE(When)f(h)m(yp)s(erslabing)g(on)g(the)g(LHS,)g
 (the)g(expression)g(on)g(the)h(RHS)f(m)m(ust)g(ev)-5
-b(aluate)31 b(to)f(a)f(scalar)h(or)g(a)150 4050 y(v)-5
+b(aluate)31 b(to)f(a)f(scalar)h(or)g(a)150 4737 y(v)-5
 b(ariable/attribute)26 b(with)d(the)h(same)g(n)m(um)m(b)s(er)e(of)i
 (elemen)m(ts)g(as)g(the)g(LHS)f(h)m(yp)s(erslab.)37 b(Set)24
-b(all)h(elemen)m(ts)150 4160 y(of)31 b(the)f(last)h(record)g(to)g
-(zero:)390 4320 y Fy(th\(9,:,:\)=0.0;)275 4480 y FD(Set)f(\014rst)g
+b(all)h(elemen)m(ts)150 4847 y(of)31 b(the)f(last)h(record)g(to)g
+(zero:)390 5011 y Fz(th\(9,:,:\)=0.0;)275 5176 y FE(Set)f(\014rst)g
 (elemen)m(t)i(of)e(eac)m(h)i(lon)e(elemen)m(t)i(to)f(1.0:)390
-4640 y Fy(th\(:,:,0\)=1.0;)275 4800 y FD(One)e(ma)m(y)i(h)m(yp)s
-(erslab)e(on)g(b)s(oth)h(sides)f(of)i(an)e(assign.)41
-b(F)-8 b(or)31 b(example,)g(this)f(sets)g(the)g(last)h(record)f(to)150
-4910 y(the)h(\014rst)e(record:)390 5070 y Fy(th\(9,:,:\)=th\(0,:,:\);)
-275 5230 y FD(Sa)m(y)f Fz(th0)36 b FD(represen)m(ts)28
-b(pressure)f(at)i(heigh)m(t=0)g(and)e Fz(th1)36 b FD(represen)m(ts)28
-b(pressure)f(at)i(heigh)m(t=1.)41 b(Then)150 5340 y(it)31
-b(is)f(p)s(ossible)g(to)h(insert)g(these)f(h)m(yp)s(erslabs)g(in)m(to)h
-(the)g(records)p eop end
-%%Page: 113 119
-TeXDict begin 113 118 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(113)390
-299 y Fy(prs[$time,$height,$lat,$)o(lon])o(=0.0)o(;)390
-408 y(prs\(:,0,:,:\)=th0;)390 518 y(prs\(:,1,:,:\)=th1)150
-691 y Fq(Rev)m(erse)32 b(metho)s(d)150 800 y FD(Use)26
-b(the)h Fy(reverse\(\))c FD(metho)s(d)i(to)i(rev)m(erse)g(a)f
+5340 y Fz(th\(:,:,0\)=1.0;)p eop end
+%%Page: 125 131
+TeXDict begin 125 130 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(125)275 299 y(One)29
+b(ma)m(y)i(h)m(yp)s(erslab)e(on)g(b)s(oth)h(sides)f(of)i(an)e(assign.)
+41 b(F)-8 b(or)31 b(example,)g(this)f(sets)g(the)g(last)h(record)f(to)
+150 408 y(the)h(\014rst)e(record:)390 575 y Fz
+(th\(9,:,:\)=th\(0,:,:\);)275 742 y FE(Sa)m(y)f FA(th0)36
+b FE(represen)m(ts)28 b(pressure)f(at)i(heigh)m(t=0)g(and)e
+FA(th1)36 b FE(represen)m(ts)28 b(pressure)f(at)i(heigh)m(t=1.)41
+b(Then)150 852 y(it)31 b(is)f(p)s(ossible)g(to)h(insert)g(these)f(h)m
+(yp)s(erslabs)g(in)m(to)h(the)g(records)390 1019 y Fz
+(prs[$time,$height,$lat,$)o(lon])o(=0.0)o(;)390 1128
+y(prs\(:,0,:,:\)=th0;)390 1238 y(prs\(:,1,:,:\)=th1)150
+1405 y Fr(Rev)m(erse)h(metho)s(d)150 1514 y FE(Use)26
+b(the)h Fz(reverse\(\))c FE(metho)s(d)i(to)i(rev)m(erse)g(a)f
 (dimension's)g(elemen)m(ts)h(in)f(a)g(v)-5 b(ariable)27
-b(with)f(at)g(least)i(one)150 910 y(dimension.)40 b(This)30
+b(with)f(at)g(least)i(one)150 1624 y(dimension.)40 b(This)30
 b(is)g(equiv)-5 b(alen)m(t)32 b(to)f(a)g(negativ)m(e)h(stride,)f(e.g.,)
-390 1082 y Fy(th_rv=th\(1)45 b(,:,:\).reverse\($lon\);)d(//)47
-b({12,11,10,9)e(},)i({16,15,14,13})390 1192 y
+390 1791 y Fz(th_rv=th\(1)45 b(,:,:\).reverse\($lon\);)d(//)47
+b({12,11,10,9)e(},)i({16,15,14,13})390 1900 y
 (od_rv=od.reverse\($time\);)375 b(//)47 b({38,36,34,32,30,28,26,24,2)o
-(2,20)o(})150 1365 y Fq(P)m(erm)m(ute)32 b(metho)s(d)p
-FD(p)150 1474 y(Use)g(the)g Fy(permute\(\))d FD(metho)s(d)i(to)i(sw)m
+(2,20)o(})150 2067 y Fr(P)m(erm)m(ute)32 b(metho)s(d)p
+FE(p)150 2177 y(Use)g(the)g Fz(permute\(\))d FE(metho)s(d)i(to)i(sw)m
 (ap)e(the)h(dimensions)f(of)h(a)g(v)-5 b(ariable.)45
-b(The)32 b(n)m(um)m(b)s(er)e(and)h(names)150 1584 y(of)h(dimension)g
+b(The)32 b(n)m(um)m(b)s(er)e(and)h(names)150 2286 y(of)h(dimension)g
 (argumen)m(ts)h(m)m(ust)f(matc)m(h)h(the)f(dimensions)g(in)f(the)i(v)-5
 b(ariable.)47 b(If)32 b(the)g(\014rst)g(dimension)150
-1693 y(in)g(the)g(v)-5 b(ariable)33 b(is)f(of)g(record)g(t)m(yp)s(e)g
+2396 y(in)g(the)g(v)-5 b(ariable)33 b(is)f(of)g(record)g(t)m(yp)s(e)g
 (then)g(this)f(m)m(ust)h(remain)g(the)g(\014rst)g(dimension.)45
-b(If)31 b(y)m(ou)h(w)m(an)m(t)h(to)150 1803 y(c)m(hange)f(the)e(record)
-g(dimension)g(then)g(consider)h(using)e Fy(ncpdq)p FD(.)275
-1976 y(Consider)g(the)i(v)-5 b(ariable:)390 2148 y Fy(float)46
-b(three_dmn_var\(lat,lev,lon\))o(;)390 2258 y(three_dmn_var_prm=three_)
+b(If)31 b(y)m(ou)h(w)m(an)m(t)h(to)150 2506 y(c)m(hange)f(the)e(record)
+g(dimension)g(then)g(consider)h(using)e Fz(ncpdq)p FE(.)275
+2672 y(Consider)g(the)i(v)-5 b(ariable:)390 2839 y Fz(float)46
+b(three_dmn_var\(lat,lev,lon\))o(;)390 2949 y(three_dmn_var_prm=three_)
 o(dmn_)o(var.)o(per)o(mute)o(\($lo)o(n,$)o(lat,)o($lev)o(\);)390
-2367 y(//)h(The)g(permuted)f(values)g(are)390 2477 y
-(three_dmn_var_prm=)485 2587 y(0,4,8,)485 2696 y(12,16,20,)485
-2806 y(1,5,9,)485 2915 y(13,17,21,)485 3025 y(2,6,10,)485
-3134 y(14,18,22,)485 3244 y(3,7,11,)485 3354 y(15,19,23;)150
-3579 y Fu(4.1.6)63 b(A)m(ttributes)150 3726 y FD(A)m(ttributes)31
-b(are)g(referred)f(to)h(b)m(y)f Fo(var)p 1449 3726 28
-4 v 41 w(nm at att)p 1791 3726 V 42 w(nm)150 3836 y FD(All)h(the)g(follo)m
-(wing)g(are)g(v)-5 b(alid)31 b(statemen)m(ts:)390 4008
-y Fy(global at text="Test)43 b(Attributes";)i(/*)i(Assign)f(a)h(global)f
-(variable)g(attribute)f(*/)390 4118 y(a1[$time]=time*20;)390
-4228 y(a1 at long_name="Kelvin";)390 4337 y(a1 at min=a1.min\(\);)390
-4447 y(a1 at max=a1.max\(\);)390 4556 y(a1 at min++;)390 4666
-y(--a1 at max;)g(q)390 4776 y(a1\(0\)=a1 at min;)390 4885 y
-(a1\($time.size-1\)=a1 at max;)275 5058 y FD(A)30 b Fo(value)j(list)39
-b FD(can)31 b(b)s(e)e(used)h(on)g(the)h(RHS)f(of)g(an)h(assign...)390
-5230 y Fy(a1 at trip1={1,2,3})43 b(;)390 5340 y(a1 at triplet={a1 at min,\(a1 at m)
-o(in+a)o(1 at ma)o(x\)/)o(2,a1)o(@max)o(};)p eop end
-%%Page: 114 120
-TeXDict begin 114 119 bop 150 -116 a FD(114)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(The)c(netCDF)h(sp)s(eci\014cation)g
-(allo)m(ws)h(all)g(attribute)f(t)m(yp)s(es)g(to)g(ha)m(v)m(e)h(a)f
-(size)g(greater)h(than)f(one.)39 b(The)150 408 y(maxim)m(um)g(is)g
-(de\014ned)e(b)m(y)i Fy(NC_MAX_ATTRS)p FD(.)63 b(The)39
-b(follo)m(wing)h(is)f(an)g Fy(ncdump)e FD(of)i(the)h(metadata)g(for)150
-518 y(v)-5 b(ariable)31 b Fz(a1)390 692 y Fy(double)46
-b(a1\(time\))g(;)485 801 y(a1:long_name)f(=)i("Kelvin")f(;)485
-911 y(a1:max)h(=)g(199.)g(;)485 1021 y(a1:min)g(=)g(21.)g(;)485
-1130 y(a1:trip1)f(=)h(1,)h(2,)f(3)g(;)485 1240 y(a1:triplet)e(=)j(21.,)
-f(110.,)f(199.)h(;)275 1414 y FD(The)26 b Fy(size\(\))g
-FD(metho)s(d)h(can)h(b)s(e)e(used)h(with)g(attributes.)40
-b(F)-8 b(or)28 b(example,)h(to)g(sa)m(v)m(e)g(an)e(attribute)h(text)150
-1523 y(string)i(in)g(a)h(v)-5 b(ariable,)390 1697 y Fy
-(defdim\("sng_len",)43 b(a1 at long_name.size\(\)\);)390
-1807 y(sng_arr[$sng_len]=a1 at lon)o(g_na)o(me;)e(//)47
-b(sng_arr)f(now)h(contains)f("Kelvin")275 1980 y FD(A)m(ttributes)41
-b(de\014ned)e(in)h(a)g(script)g(are)h(stored)f(in)g(memory)h(and)e(are)
-i(written)f(to)h(Output)e(after)150 2090 y(script)30
-b(completion.)42 b(T)-8 b(o)31 b(stop)f(the)h(attribute)g(b)s(eing)f
-(written)g(use)g(the)g(ram)p 2814 2090 28 4 v 40 w(delete\(\))i(metho)s
-(d)e(or)g(use)150 2200 y(a)h(b)s(ogus)e(v)-5 b(ariable)32
-b(name.)150 2373 y Fq(A)m(ttribute)f(Propagation)h(and)e(Inheritance)
-225 2547 y FA(\017)60 b FD(A)m(ttribute)27 b(propagation)g(o)s(ccurs)f
-(in)g(a)h(regular)f(assign)h(statemen)m(t.)41 b(The)25
-b(v)-5 b(ariable)27 b(b)s(eing)f(de\014ned)330 2657 y(on)k(the)h(LHS)f
-(gets)h(copies)g(of)g(the)f(attributes)h(from)f(the)h(leftermost)g(v)-5
-b(ariable)31 b(on)g(the)f(RHS.)225 2806 y FA(\017)60
-b FD(A)m(ttribute)34 b(Inheritance:)46 b(The)32 b(LHS)g(v)-5
+3059 y(//)h(The)g(permuted)f(values)g(are)390 3168 y
+(three_dmn_var_prm=)485 3278 y(0,4,8,)485 3387 y(12,16,20,)485
+3497 y(1,5,9,)485 3606 y(13,17,21,)485 3716 y(2,6,10,)485
+3826 y(14,18,22,)485 3935 y(3,7,11,)485 4045 y(15,19,23;)150
+4259 y Fv(4.1.6)63 b(A)m(ttributes)150 4406 y FE(A)m(ttributes)31
+b(are)g(referred)f(to)h(b)m(y)f Fp(var)p 1449 4406 28
+4 v 41 w(nm at att)p 1791 4406 V 42 w(nm)150 4516 y FE(All)h(the)g(follo)m
+(wing)g(are)g(v)-5 b(alid)31 b(statemen)m(ts:)390 4682
+y Fz(global at text="Test)43 b(Attributes";)i(/*)i(Assign)f(a)h(global)f
+(variable)g(attribute)f(*/)390 4792 y(a1[$time]=time*20;)390
+4902 y(a1 at long_name="Kelvin";)390 5011 y(a1 at min=a1.min\(\);)390
+5121 y(a1 at max=a1.max\(\);)390 5230 y(a1 at min++;)390 5340
+y(--a1 at max;)g(q)p eop end
+%%Page: 126 132
+TeXDict begin 126 131 bop 150 -116 a FE(126)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(a1\(0\)=a1 at min;)390
+408 y(a1\($time.size-1\)=a1 at max;)275 574 y FE(A)g Fp(value)j(list)39
+b FE(can)31 b(b)s(e)e(used)h(on)g(the)h(RHS)f(of)g(an)h(assign...)390
+740 y Fz(a1 at trip1={1,2,3})43 b(;)390 850 y(a1 at triplet={a1 at min,\(a1 at m)o
+(in+a)o(1 at ma)o(x\)/)o(2,a1)o(@max)o(};)275 1015 y FE(The)26
+b(netCDF)h(sp)s(eci\014cation)g(allo)m(ws)h(all)g(attribute)f(t)m(yp)s
+(es)g(to)g(ha)m(v)m(e)h(a)f(size)g(greater)h(than)f(one.)39
+b(The)150 1125 y(maxim)m(um)g(is)g(de\014ned)e(b)m(y)i
+Fz(NC_MAX_ATTRS)p FE(.)63 b(The)39 b(follo)m(wing)h(is)f(an)g
+Fz(ncdump)e FE(of)i(the)h(metadata)g(for)150 1235 y(v)-5
+b(ariable)31 b FA(a1)390 1400 y Fz(double)46 b(a1\(time\))g(;)485
+1510 y(a1:long_name)f(=)i("Kelvin")f(;)485 1620 y(a1:max)h(=)g(199.)g
+(;)485 1729 y(a1:min)g(=)g(21.)g(;)485 1839 y(a1:trip1)f(=)h(1,)h(2,)f
+(3)g(;)485 1948 y(a1:triplet)e(=)j(21.,)f(110.,)f(199.)h(;)275
+2114 y FE(The)26 b Fz(size\(\))g FE(metho)s(d)h(can)h(b)s(e)e(used)h
+(with)g(attributes.)40 b(F)-8 b(or)28 b(example,)h(to)g(sa)m(v)m(e)g
+(an)e(attribute)h(text)150 2224 y(string)i(in)g(a)h(v)-5
+b(ariable,)390 2389 y Fz(defdim\("sng_len",)43 b
+(a1 at long_name.size\(\)\);)390 2499 y(sng_arr[$sng_len]=a1 at lon)o(g_na)o
+(me;)e(//)47 b(sng_arr)f(now)h(contains)f("Kelvin")275
+2665 y FE(A)m(ttributes)41 b(de\014ned)e(in)h(a)g(script)g(are)h
+(stored)f(in)g(memory)h(and)e(are)i(written)f(to)h(Output)e(after)150
+2774 y(script)30 b(completion.)42 b(T)-8 b(o)31 b(stop)f(the)h
+(attribute)g(b)s(eing)f(written)g(use)g(the)g(ram)p 2814
+2774 28 4 v 40 w(delete\(\))i(metho)s(d)e(or)g(use)150
+2884 y(a)h(b)s(ogus)e(v)-5 b(ariable)32 b(name.)150 3050
+y Fr(A)m(ttribute)f(Propagation)h(and)e(Inheritance)225
+3216 y FB(\017)60 b FE(A)m(ttribute)27 b(propagation)g(o)s(ccurs)f(in)g
+(a)h(regular)f(assign)h(statemen)m(t.)41 b(The)25 b(v)-5
+b(ariable)27 b(b)s(eing)f(de\014ned)330 3325 y(on)k(the)h(LHS)f(gets)h
+(copies)g(of)g(the)f(attributes)h(from)f(the)h(leftermost)g(v)-5
+b(ariable)31 b(on)g(the)f(RHS.)225 3466 y FB(\017)60
+b FE(A)m(ttribute)34 b(Inheritance:)46 b(The)32 b(LHS)g(v)-5
 b(ariable)34 b(\\inherits")f(attributes)h(from)e(an)h(Input)e(v)-5
-b(ariable)330 2915 y(with)30 b(the)h(same)f(name)225
-3064 y FA(\017)60 b FD(It)28 b(is)g(p)s(ossible)f(to)i(ha)m(v)m(e)g(a)f
+b(ariable)330 3576 y(with)30 b(the)h(same)f(name)225
+3717 y FB(\017)60 b FE(It)28 b(is)g(p)s(ossible)f(to)i(ha)m(v)m(e)g(a)f
 (regular)g(assign)g(statemen)m(t)h(for)f(whic)m(h)f(b)s(oth)h
-(propagation)g(and)f(inher-)330 3174 y(itance)32 b(o)s(ccur.)390
-3348 y Fy(//)47 b(prs_mdp)f(inherits)g(attributes)f(from)h(P0:)390
-3457 y(prs_mdp[time,lat,lon,lev)o(]=P0)o(*hya)o(m+h)o(ybm*)o(PS;)390
-3567 y(//)h(th_min)f(inherits)g(attributes)f(from)h(three_dmn_var_dbl:)
-390 3676 y(th_min=1.0)f(+)i(2*three_dmn_var_dbl.min\($t)o(ime\))o(;)275
-3850 y FD(If)d(the)h(attribute)g(name)g(con)m(tains)h(non-regular)e(c)m
+(propagation)g(and)f(inher-)330 3826 y(itance)32 b(o)s(ccur.)390
+3992 y Fz(//)47 b(prs_mdp)f(inherits)g(attributes)f(from)h(P0:)390
+4101 y(prs_mdp[time,lat,lon,lev)o(]=P0)o(*hya)o(m+h)o(ybm*)o(PS;)390
+4211 y(//)h(th_min)f(inherits)g(attributes)f(from)h(three_dmn_var_dbl:)
+390 4321 y(th_min=1.0)f(+)i(2*three_dmn_var_dbl.min\($t)o(ime\))o(;)275
+4486 y FE(If)d(the)h(attribute)g(name)g(con)m(tains)h(non-regular)e(c)m
 (haracters)j(use)d(ID)h(quoting.)84 b(See)45 b(see)g(Sec-)150
-3960 y(tion)31 b(4.1.27)h([ID)f(Quoting],)g(page)g(153)390
-4134 y Fy('b..m1 at c--lost'=23;)150 4362 y Fu(4.1.7)63
-b(Num)m(b)s(er)41 b(literals)150 4509 y FD(The)31 b(table)h(b)s(elo)m
+4596 y(tion)31 b(4.1.27)h([ID)f(Quoting],)g(page)g(166)390
+4762 y Fz('b..m1 at c--lost'=23;)150 4974 y Fv(4.1.7)63
+b(Num)m(b)s(er)41 b(literals)150 5121 y FE(The)31 b(table)h(b)s(elo)m
 (w)f(lists)g(the)h(p)s(ost\014x)e(c)m(haracter\(s\))j(to)f(add)e(to)i
 (a)g(n)m(um)m(b)s(er)d(literal)k(for)e(t)m(yp)s(e)g(cohesion.)150
-4618 y(T)-8 b(o)30 b(use)f(the)h(new)f(netCDF4)i(t)m(yp)s(es)f
-FC(NCO)f FD(m)m(ust)h(b)s(e)f(compiled/link)m(ed)h(to)h(the)f(netCDF4)g
-(library)g(and)150 4728 y(the)h(output)f(\014le)g(m)m(ust)g(b)s(e)g
-FC(HDF5)p FD(.)390 4902 y Fy(n1[$time]=1UL;)44 b(//)j(n1)g(will)g(now)g
-(by)g(type)g(@code{NC_UINT})390 5011 y(n2[$lon]=4b;)140
-b(//)47 b(n2)g(will)g(be)g(of)g(type)g(@code{NC_BYTE})390
-5121 y(n3[$lat]=5ull;)d(//)j(n3)g(will)g(be)g(of)g(type)g
-(@code{NC_UINT64})390 5230 y(n3 at a1=6.0d;)140 b(//)47
+5230 y(T)-8 b(o)30 b(use)f(the)h(new)f(netCDF4)i(t)m(yp)s(es)f
+FD(NCO)f FE(m)m(ust)h(b)s(e)f(compiled/link)m(ed)h(to)h(the)f(netCDF4)g
+(library)g(and)150 5340 y(the)h(output)f(\014le)g(m)m(ust)g(b)s(e)g
+FD(HDF5)p FE(.)p eop end
+%%Page: 127 133
+TeXDict begin 127 132 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(127)390 299 y Fz(n1[$time]=1UL;)44
+b(//)j(n1)g(will)g(now)g(by)g(type)g(@code{NC_UINT})390
+408 y(n2[$lon]=4b;)140 b(//)47 b(n2)g(will)g(be)g(of)g(type)g
+(@code{NC_BYTE})390 518 y(n3[$lat]=5ull;)d(//)j(n3)g(will)g(be)g(of)g
+(type)g(@code{NC_UINT64})390 628 y(n3 at a1=6.0d;)140 b(//)47
 b(attribute)f(will)g(be)h(type)g(@code{NC_DOUBLE})390
-5340 y(n3 at a2=-666L;)92 b(//)47 b(attribute)f(will)g(be)h(type)g
-(@code{NC_INT})p eop end
-%%Page: 115 121
-TeXDict begin 115 120 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(115)275
-299 y(A)24 b(\015oating)h(p)s(oin)m(t)g(n)m(um)m(b)s(er)e(without)h(a)h
-(p)s(ost\014x)e(will)i(default)g(to)g Fy(NC_DOUBLE)p
-FD(.)36 b(An)24 b(in)m(teger)i(without)150 408 y(a)h(p)s(ost\014x)f
-(will)h(default)f(to)i(t)m(yp)s(e)f Fy(NC_INT)p FD(.)37
-b(There)27 b(is)f(no)h(p)s(ost\014x)e(for)i(c)m(haracters,)i(use)d(a)h
-(quoted)g(string)150 518 y(instead.)390 677 y Fy(n4[$rlev]=0.1)283
-b(//)47 b(n4)g(will)g(be)g(of)g(type)g(@code{NC_DOUBLE})390
-787 y(n5[$lon_grd]=2.0)139 b(//)47 b(n5)g(will)g(be)g(of)g(type)g
-(@code{NC_DOUBLE})390 897 y(n6[$gds_crd]=2e3;)91 b(//)47
-b(n6)g(will)g(be)g(of)g(type)g(@code{NC_DOUBLE})390 1006
-y(n7[$gds_crd]=2e3f;)91 b(//)47 b(n7)g(will)g(be)g(of)g(type)g
-(@code{NC_FLOAT})390 1116 y(n6 at a1=41;)427 b(//)47 b(attribute)f(will)g
-(be)h(type)g(@code{NC_INT})390 1225 y(n6 at a2=-21;)379
-b(//)47 b(attribute)f(will)g(be)h(type)g(@code{NC_INT})390
-1335 y(n6 at units="kelvin")c(//)k(attribute)f(will)g(be)h(type)g
-(@code{NC_CHAR})150 1518 y Fq(netCDF3/4)32 b(T)m(yp)s(es)150
-1627 y FD(b)p Fy(|)p FD(B)317 b Fy(NC_BYTE)p FD(,)29
-b(a)h(signed)h(1-b)m(yte)g(in)m(teger)150 1784 y(none)293
-b Fy(NC_CHAR)p FD(,)29 b(an)h(ISO/ASCI)s(I)e(c)m(haracter)150
-1941 y(s)p Fy(|)p FD(S)345 b Fy(NC_SHORT)p FD(,)28 b(a)j(signed)f(2-b)m
-(yte)i(in)m(teger)150 2097 y(l)p Fy(|)p FD(L)350 b Fy(NC_INT)p
-FD(,)29 b(a)i(signed)f(4-b)m(yte)i(in)m(teger)150 2254
-y(f)p Fy(|)p FD(F)345 b Fy(NC_FLOAT)p FD(,)28 b(a)j(single-precision)h
-(\(4-b)m(yte\))g(\015oating)f(p)s(oin)m(t)g(n)m(um)m(b)s(er)150
-2410 y(d)p Fy(|)p FD(D)312 b Fy(NC_DOUBLE)p FD(,)28 b(a)j
-(double-precision)f(\(8-b)m(yte\))j(\015oating)e(p)s(oin)m(t)f(n)m(um)m
-(b)s(er)150 2567 y Fq(netCDF4)h(T)m(yp)s(es)150 2677
-y FD(ub)p Fy(|)p FD(UB)198 b Fy(NC_UBYTE)p FD(,)28 b(an)j(unsigned)e
-(1-b)m(yte)j(in)m(teger)150 2833 y(us)p Fy(|)p FD(US)226
-b Fy(NC_USHORT)p FD(,)28 b(an)i(unsigned)g(2-b)m(yte)h(in)m(teger)150
-2990 y(u)p Fy(|)p FD(U)p Fy(|)p FD(ul)p Fy(|)p FD(UL)630
-3099 y Fy(NC_UINT)p FD(,)e(an)h(unsigned)f(4-b)m(yte)j(in)m(teger)150
-3256 y(ll)p Fy(|)p FD(LL)268 b Fy(NC_INT64)p FD(,)28
-b(a)j(signed)f(8-b)m(yte)i(in)m(teger)150 3413 y(ull)p
-Fy(|)p FD(ULL)149 b Fy(NC_UINT64)p FD(,)28 b(an)i(unsigned)g(8-b)m(yte)
-h(in)m(teger)150 3609 y Fu(4.1.8)63 b(if)41 b(statemen)m(t)150
-3756 y FD(The)35 b(syn)m(tax)g(of)g(the)g(if)g(statemen)m(t)i(is)e
+737 y(n3 at a2=-666L;)92 b(//)47 b(attribute)f(will)g(be)h(type)g
+(@code{NC_INT})275 898 y FE(A)24 b(\015oating)h(p)s(oin)m(t)g(n)m(um)m
+(b)s(er)e(without)h(a)h(p)s(ost\014x)e(will)i(default)g(to)g
+Fz(NC_DOUBLE)p FE(.)36 b(An)24 b(in)m(teger)i(without)150
+1007 y(a)h(p)s(ost\014x)f(will)h(default)f(to)i(t)m(yp)s(e)f
+Fz(NC_INT)p FE(.)37 b(There)27 b(is)f(no)h(p)s(ost\014x)e(for)i(c)m
+(haracters,)i(use)d(a)h(quoted)g(string)150 1117 y(instead.)390
+1277 y Fz(n4[$rlev]=0.1)283 b(//)47 b(n4)g(will)g(be)g(of)g(type)g
+(@code{NC_DOUBLE})390 1387 y(n5[$lon_grd]=2.0)139 b(//)47
+b(n5)g(will)g(be)g(of)g(type)g(@code{NC_DOUBLE})390 1496
+y(n6[$gds_crd]=2e3;)91 b(//)47 b(n6)g(will)g(be)g(of)g(type)g
+(@code{NC_DOUBLE})390 1606 y(n7[$gds_crd]=2e3f;)91 b(//)47
+b(n7)g(will)g(be)g(of)g(type)g(@code{NC_FLOAT})390 1716
+y(n6 at a1=41;)427 b(//)47 b(attribute)f(will)g(be)h(type)g(@code{NC_INT})
+390 1825 y(n6 at a2=-21;)379 b(//)47 b(attribute)f(will)g(be)h(type)g
+(@code{NC_INT})390 1935 y(n6 at units="kelvin")c(//)k(attribute)f(will)g
+(be)h(type)g(@code{NC_CHAR})150 2121 y Fr(netCDF3/4)32
+b(T)m(yp)s(es)150 2231 y FE(b)p Fz(|)p FE(B)317 b Fz(NC_BYTE)p
+FE(,)29 b(a)h(signed)h(1-b)m(yte)g(in)m(teger)150 2392
+y(none)293 b Fz(NC_CHAR)p FE(,)29 b(an)h(ISO/ASCI)s(I)e(c)m(haracter)
+150 2554 y(s)p Fz(|)p FE(S)345 b Fz(NC_SHORT)p FE(,)28
+b(a)j(signed)f(2-b)m(yte)i(in)m(teger)150 2715 y(l)p
+Fz(|)p FE(L)350 b Fz(NC_INT)p FE(,)29 b(a)i(signed)f(4-b)m(yte)i(in)m
+(teger)150 2876 y(f)p Fz(|)p FE(F)345 b Fz(NC_FLOAT)p
+FE(,)28 b(a)j(single-precision)h(\(4-b)m(yte\))g(\015oating)f(p)s(oin)m
+(t)g(n)m(um)m(b)s(er)150 3038 y(d)p Fz(|)p FE(D)312 b
+Fz(NC_DOUBLE)p FE(,)28 b(a)j(double-precision)f(\(8-b)m(yte\))j
+(\015oating)e(p)s(oin)m(t)f(n)m(um)m(b)s(er)150 3199
+y Fr(netCDF4)h(T)m(yp)s(es)150 3309 y FE(ub)p Fz(|)p
+FE(UB)198 b Fz(NC_UBYTE)p FE(,)28 b(an)j(unsigned)e(1-b)m(yte)j(in)m
+(teger)150 3470 y(us)p Fz(|)p FE(US)226 b Fz(NC_USHORT)p
+FE(,)28 b(an)i(unsigned)g(2-b)m(yte)h(in)m(teger)150
+3632 y(u)p Fz(|)p FE(U)p Fz(|)p FE(ul)p Fz(|)p FE(UL)630
+3741 y Fz(NC_UINT)p FE(,)e(an)h(unsigned)f(4-b)m(yte)j(in)m(teger)150
+3903 y(ll)p Fz(|)p FE(LL)268 b Fz(NC_INT64)p FE(,)28
+b(a)j(signed)f(8-b)m(yte)i(in)m(teger)150 4064 y(ull)p
+Fz(|)p FE(ULL)149 b Fz(NC_UINT64)p FE(,)28 b(an)i(unsigned)g(8-b)m(yte)
+h(in)m(teger)150 4265 y Fv(4.1.8)63 b(if)41 b(statemen)m(t)150
+4412 y FE(The)35 b(syn)m(tax)g(of)g(the)g(if)g(statemen)m(t)i(is)e
 (similar)h(to)g(its)f(C)g(coun)m(terpart.)55 b(The)34
-b Fo(Conditional)40 b(Op)-5 b(er)g(ator)150 3866 y(\(ternary)34
-b(op)-5 b(er)g(ator\))37 b FD(has)30 b(also)i(b)s(een)d(implemen)m
-(ted.)390 4025 y Fy(if\(exp1\))533 4134 y(stmt1;)390
-4244 y(else)47 b(if\(exp2\))533 4354 y(stmt2;)390 4463
-y(else)533 4573 y(stmt3;)390 4792 y(#)g(Can)g(use)g(code)g(blocks)f(as)
-h(well:)390 4902 y(if\(exp1\){)533 5011 y(stmt1;)533
-5121 y(stmt1a;)533 5230 y(stmt1b;)390 5340 y(}else)f(if\(exp2\))p
-eop end
-%%Page: 116 122
-TeXDict begin 116 121 bop 150 -116 a FD(116)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)533 299 y Fy(stmt2;)390 408
-y(else{)533 518 y(stmt3;)533 628 y(stmt3a;)533 737 y(stmt3b;)390
-847 y(})150 1066 y FD(F)-8 b(or)29 b(a)g(v)-5 b(ariable)29
-b(or)g(attribute)g(expression)f(to)h(b)s(e)f(logically)j(true)d(all)i
-(its)f(non-missing)f(v)-5 b(alue)29 b(elemen)m(ts)150
-1176 y(m)m(ust)h(b)s(e)f(logically)k(true,)d(i.e.,)i(non-zero.)41
-b(The)30 b(expression)f(can)i(b)s(e)e(of)h(an)m(y)h(t)m(yp)s(e.)41
-b(Unlik)m(e)31 b(C)f(there)g(is)150 1285 y(no)f(short-circuiting)g(of)g
-(an)g(expression)g(with)f(the)h(OR)g(\()p Fy(||)p FD(\))f(and)h(AND)g
-(\()p Fy(&&)p FD(\))g(op)s(erators.)40 b(The)29 b(whole)150
-1395 y(expression)h(is)h(ev)-5 b(aluated)31 b(regardless)g(if)f(one)h
-(of)f(the)h(AND/OR)g(op)s(erands)e(are)i(T)-8 b(rue/F)g(alse.)390
-1614 y Fy(#)47 b(Simple)g(example)390 1724 y(if\(time>0\))485
-1833 y(print\("All)e(values)i(of)g(time)f(are)h(greater)f(than)h
-(zero\\n"\);)390 1943 y(else)g(if\()g(time<0\))485 2052
-y(print\("All)e(values)i(of)g(time)f(are)h(less)g(than)g(zero\\n"\);)
-390 2162 y(else)g({)485 2271 y(time_max=time.max\(\);)485
-2381 y(time_min=time.min\(\);)485 2491 y(print\("min)e(value)i(of)g
-(time="\);print\(time_min,")o(\045f"\))o(;)485 2600 y(print\("max)e
+b Fp(Conditional)40 b(Op)-5 b(er)g(ator)150 4522 y(\(ternary)34
+b(op)-5 b(er)g(ator\))37 b FE(has)30 b(also)i(b)s(een)d(implemen)m
+(ted.)390 4682 y Fz(if\(exp1\))533 4792 y(stmt1;)390
+4902 y(else)47 b(if\(exp2\))533 5011 y(stmt2;)390 5121
+y(else)533 5230 y(stmt3;)p eop end
+%%Page: 128 134
+TeXDict begin 128 133 bop 150 -116 a FE(128)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(#)47 b(Can)g(use)g(code)g
+(blocks)f(as)h(well:)390 408 y(if\(exp1\){)533 518 y(stmt1;)533
+628 y(stmt1a;)533 737 y(stmt1b;)390 847 y(}else)f(if\(exp2\))533
+956 y(stmt2;)390 1066 y(else{)533 1176 y(stmt3;)533 1285
+y(stmt3a;)533 1395 y(stmt3b;)390 1504 y(})150 1778 y
+FE(F)-8 b(or)29 b(a)g(v)-5 b(ariable)29 b(or)g(attribute)g(expression)f
+(to)h(b)s(e)f(logically)j(true)d(all)i(its)f(non-missing)f(v)-5
+b(alue)29 b(elemen)m(ts)150 1888 y(m)m(ust)h(b)s(e)f(logically)k(true,)
+d(i.e.,)i(non-zero.)41 b(The)30 b(expression)f(can)i(b)s(e)e(of)h(an)m
+(y)h(t)m(yp)s(e.)41 b(Unlik)m(e)31 b(C)f(there)g(is)150
+1998 y(no)f(short-circuiting)g(of)g(an)g(expression)g(with)f(the)h(OR)g
+(\()p Fz(||)p FE(\))f(and)h(AND)g(\()p Fz(&&)p FE(\))g(op)s(erators.)40
+b(The)29 b(whole)150 2107 y(expression)h(is)h(ev)-5 b(aluated)31
+b(regardless)g(if)f(one)h(of)f(the)h(AND/OR)g(op)s(erands)e(are)i(T)-8
+b(rue/F)g(alse.)390 2381 y Fz(#)47 b(Simple)g(example)390
+2491 y(if\(time>0\))485 2600 y(print\("All)e(values)i(of)g(time)f(are)h
+(greater)f(than)h(zero\\n"\);)390 2710 y(else)g(if\()g(time<0\))485
+2819 y(print\("All)e(values)i(of)g(time)f(are)h(less)g(than)g
+(zero\\n"\);)390 2929 y(else)g({)485 3039 y(time_max=time.max\(\);)485
+3148 y(time_min=time.min\(\);)485 3258 y(print\("min)e(value)i(of)g
+(time="\);print\(time_min,")o(\045f"\))o(;)485 3367 y(print\("max)e
 (value)i(of)g(time="\);print\(time_max,")o(\045f"\))o(;)390
-2710 y(})390 2929 y(#)g(Example)f(from)h(ddra.nco)390
-3039 y(if\(fl_typ==fl_typ_gcm\){)485 3148 y(var_nbr_apx=32;)485
-3258 y(lmn_nbr=1.0*var_nbr_apx*va)o(rsz_)o(gcm)o(_4D;)41
-b(/*)47 b([nbr])g(Variable)e(size)i(*/)485 3367 y
-(if\(nco_op_typ==nco_op_typ_)o(avg\))o({)581 3477 y
-(lmn_nbr_avg=1.0*var_nbr_)o(apx*)o(var)o(sz_g)o(cm_4)o(D;)41
-b(//)48 b(Block)e(size)581 3587 y(lmn_nbr_wgt=dmnsz_gcm_la)o(t;)c(/*)47
-b([nbr])f(Weight)g(size)h(*/)485 3696 y(})h(//)f(!nco_op_typ_avg)390
-3806 y(}else)f(if\(fl_typ==fl_typ_stl\){)485 3915 y(var_nbr_apx=8;)485
-4025 y(lmn_nbr=1.0*var_nbr_apx*va)o(rsz_)o(stl)o(_2D;)41
+3477 y(})390 3696 y(#)g(Example)f(from)h(ddra.nco)390
+3806 y(if\(fl_typ==fl_typ_gcm\){)485 3915 y(var_nbr_apx=32;)485
+4025 y(lmn_nbr=1.0*var_nbr_apx*va)o(rsz_)o(gcm)o(_4D;)41
 b(/*)47 b([nbr])g(Variable)e(size)i(*/)485 4134 y
 (if\(nco_op_typ==nco_op_typ_)o(avg\))o({)581 4244 y
-(lmn_nbr_avg=1.0*var_nbr_)o(apx*)o(var)o(sz_s)o(tl_2)o(D;)41
-b(//)48 b(Block)e(size)581 4354 y(lmn_nbr_wgt=dmnsz_stl_la)o(t;)c(/*)47
+(lmn_nbr_avg=1.0*var_nbr_)o(apx*)o(var)o(sz_g)o(cm_4)o(D;)41
+b(//)48 b(Block)e(size)581 4354 y(lmn_nbr_wgt=dmnsz_gcm_la)o(t;)c(/*)47
 b([nbr])f(Weight)g(size)h(*/)485 4463 y(})h(//)f(!nco_op_typ_avg)390
-4573 y(})g(//)h(!fl_typ)150 4792 y Fq(Conditional)31
-b(Op)s(erator)390 5121 y Fy(//)47 b(netCDF4)f(needed)g(for)h(this)g
-(example)390 5230 y(th_nw=\(three_dmn_var_sht)41 b(>=)47
+4573 y(}else)f(if\(fl_typ==fl_typ_stl\){)485 4682 y(var_nbr_apx=8;)485
+4792 y(lmn_nbr=1.0*var_nbr_apx*va)o(rsz_)o(stl)o(_2D;)41
+b(/*)47 b([nbr])g(Variable)e(size)i(*/)485 4902 y
+(if\(nco_op_typ==nco_op_typ_)o(avg\))o({)581 5011 y
+(lmn_nbr_avg=1.0*var_nbr_)o(apx*)o(var)o(sz_s)o(tl_2)o(D;)41
+b(//)48 b(Block)e(size)581 5121 y(lmn_nbr_wgt=dmnsz_stl_la)o(t;)c(/*)47
+b([nbr])f(Weight)g(size)h(*/)485 5230 y(})h(//)f(!nco_op_typ_avg)390
+5340 y(})g(//)h(!fl_typ)p eop end
+%%Page: 129 135
+TeXDict begin 129 134 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(129)150 299 y Fr(Conditional)31
+b(Op)s(erator)390 568 y Fz(//)47 b(netCDF4)f(needed)g(for)h(this)g
+(example)390 677 y(th_nw=\(three_dmn_var_sht)41 b(>=)47
 b(0)h(?)f(three_dmn_var_sht.uint\(\))41 b(:)48 b(\\)724
-5340 y(three_dmn_var_sht.int\(\)\);)p eop end
-%%Page: 117 123
-TeXDict begin 117 122 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(117)150
-299 y Fu(4.1.9)63 b(prin)m(t)40 b(statemen)m(t)390 446
-y Fy(print\(variable_name/attr)o(ibut)o(e)i(name/string,)i(format)i
-(string\);)150 616 y FD(The)33 b(prin)m(t)g(function)h(tak)m(es)h(a)f
-(v)-5 b(ariable)34 b(name)g(or)f(attribute)i(name)e(or)h(a)g(quoted)g
-(string)f(and)g(prin)m(ts)150 725 y(the)40 b(con)m(ten)m(ts)h(in)e(a)h
-(in)g(a)g(similar)f(fashion)h(to)g Fy(ncks)29 b(-H)p
-FD(.)68 b(There)39 b(is)h(also)g(an)g(optional)h(C-language)150
-835 y(st)m(yle)34 b(format)e(string)h(argumen)m(t.)47
+787 y(three_dmn_var_sht.int\(\)\);)150 984 y Fv(4.1.9)63
+b(prin)m(t)40 b(statemen)m(t)390 1131 y Fz(print\(variable_name/attr)o
+(ibut)o(e)i(name/string,)i(format)i(string\);)150 1290
+y FE(The)33 b(prin)m(t)g(function)h(tak)m(es)h(a)f(v)-5
+b(ariable)34 b(name)g(or)f(attribute)i(name)e(or)h(a)g(quoted)g(string)
+f(and)g(prin)m(ts)150 1400 y(the)40 b(con)m(ten)m(ts)h(in)e(a)h(in)g(a)
+g(similar)f(fashion)h(to)g Fz(ncks)29 b(-H)p FE(.)68
+b(There)39 b(is)h(also)g(an)g(optional)h(C-language)150
+1509 y(st)m(yle)34 b(format)e(string)h(argumen)m(t.)47
 b(Curren)m(tly)32 b(the)g(prin)m(t)g(function)g(cannot)h(prin)m(t)f
-FC(RAM)h FD(v)-5 b(ariables)33 b(or)150 945 y(expressions)g(suc)m(h)h
-(as)g Fy('print\(var_msk*3+4\)')p FD(.)45 b(T)-8 b(o)35
+FD(RAM)h FE(v)-5 b(ariables)33 b(or)150 1619 y(expressions)g(suc)m(h)h
+(as)g Fz('print\(var_msk*3+4\)')p FE(.)45 b(T)-8 b(o)35
 b(prin)m(t)e(an)h(expression,)h(\014rst)e(ev)-5 b(aluate)35
-b(it)f(as)h(a)150 1054 y(non-)p FC(RAM)c FD(v)-5 b(ariable)31
+b(it)f(as)h(a)150 1729 y(non-)p FD(RAM)c FE(v)-5 b(ariable)31
 b(\(so)g(it)g(will)f(b)s(e)g(sa)m(v)m(ed)i(and)d(can)i(b)s(e)f(prin)m
 (ted\),)g(and)g(then)g(prin)m(t)g(the)h(v)-5 b(ariable.)150
-1224 y(examples)390 1394 y Fy(print\(lon\);)390 1504
-y(lon[0]=0)390 1613 y(lon[1]=90)390 1723 y(lon[2]=180)390
-1833 y(lon[3]=270)390 2052 y(print\(lon_2D_rrg,"\0453.2f,)o("\);)390
-2161 y(0.00,0.00,180.00,0.00,18)o(0.00)o(,0.0)o(0,1)o(80.0)o(0,0.)o
-(00,)390 2380 y(print\(mss_val_fst at _FillV)o(alue)o(\);)390
-2490 y(mss_val_fst at _FillValue,)41 b(size)47 b(=)h(1)f(NC_FLOAT,)e
-(value)i(=)g(-999)390 2709 y(print\("This)e(function)g(\\t)i(is)h
-(monotonic\\n"\);)390 2819 y(This)f(function)e(is)477
-b(monotonic)150 3039 y Fu(4.1.10)63 b(Missing)43 b(v)-7
-b(alues)41 b(ncap2)150 3186 y FD(Missing)27 b(v)-5 b(alues)27
+1888 y(examples)390 2047 y Fz(print\(lon\);)390 2157
+y(lon[0]=0)390 2267 y(lon[1]=90)390 2376 y(lon[2]=180)390
+2486 y(lon[3]=270)390 2705 y(print\(lon_2D_rrg,"\0453.2f,)o("\);)390
+2814 y(0.00,0.00,180.00,0.00,18)o(0.00)o(,0.0)o(0,1)o(80.0)o(0,0.)o
+(00,)390 3034 y(print\(mss_val_fst at _FillV)o(alue)o(\);)390
+3143 y(mss_val_fst at _FillValue,)41 b(size)47 b(=)h(1)f(NC_FLOAT,)e
+(value)i(=)g(-999)390 3362 y(print\("This)e(function)g(\\t)i(is)h
+(monotonic\\n"\);)390 3472 y(This)f(function)e(is)477
+b(monotonic)150 3669 y Fv(4.1.10)63 b(Missing)43 b(v)-7
+b(alues)41 b(ncap2)150 3816 y FE(Missing)27 b(v)-5 b(alues)27
 b(op)s(erate)g(sligh)m(tly)h(di\013eren)m(tly)f(in)f
-Fy(ncap2)f FD(Consider)h(the)g(expression)h(where)f(op)g(is)h(an)m(y)
-150 3296 y(of)k(the)f(follo)m(wing)i(op)s(erators)e(\(excluding)h
-('='\))390 3466 y Fy(Arithmetic)45 b(operators)g(\()j(*)f(/)h(\045)f(+)
-h(-)f(^)g(\))390 3575 y(Binary)f(Operators)236 b(\()48
+Fz(ncap2)f FE(Consider)h(the)g(expression)h(where)f(op)g(is)h(an)m(y)
+150 3925 y(of)k(the)f(follo)m(wing)i(op)s(erators)e(\(excluding)h
+('='\))390 4085 y Fz(Arithmetic)45 b(operators)g(\()j(*)f(/)h(\045)f(+)
+h(-)f(^)g(\))390 4194 y(Binary)f(Operators)236 b(\()48
 b(>,)f(>=)g(<,)g(<=)g(==,)g(!=,==,||,&&,)e(>>,<<)h(\))390
-3685 y(Assign)g(Operators)236 b(\()48 b(+=,-=,/=,)d(*=)i(\))390
-3904 y(var1)g('op')f(var2)150 4074 y FD(If)23 b(v)-5
+4304 y(Assign)g(Operators)236 b(\()48 b(+=,-=,/=,)d(*=)i(\))390
+4523 y(var1)g('op')f(var2)150 4682 y FE(If)23 b(v)-5
 b(ar1)24 b(has)g(a)g(missing)f(v)-5 b(alue)24 b(then)g(this)f(is)h(the)
 g(v)-5 b(alue)24 b(used)f(in)g(the)h(op)s(eration,)i(otherwise)e(the)g
-(missing)150 4184 y(v)-5 b(alue)34 b(for)f(v)-5 b(ar2)34
+(missing)150 4792 y(v)-5 b(alue)34 b(for)f(v)-5 b(ar2)34
 b(is)g(used.)49 b(If)33 b(during)f(the)i(elemen)m(t-b)m(y-elemen)m(t)j
-(op)s(eration)d(an)f(elemen)m(t)i(from)e(either)150 4293
+(op)s(eration)d(an)f(elemen)m(t)i(from)e(either)150 4902
 y(op)s(erand)26 b(is)h(equal)h(to)f(the)h(missing)f(v)-5
 b(alue)27 b(then)g(the)g(missing)g(v)-5 b(alue)27 b(is)h(carried)f
-(through.)39 b(In)26 b(this)h(w)m(a)m(y)150 4403 y(missing)j(v)-5
+(through.)39 b(In)26 b(this)h(w)m(a)m(y)150 5011 y(missing)j(v)-5
 b(alues)31 b('p)s(ercolate')h(or)e(propagate)i(through)e(an)g
-(expression.)150 4512 y(Missing)k(v)-5 b(alues)35 b(asso)s(ciated)g
+(expression.)150 5121 y(Missing)k(v)-5 b(alues)35 b(asso)s(ciated)g
 (with)f(Output)f(v)-5 b(ariables)34 b(are)h(stored)f(in)g(memory)f(and)
-h(are)g(written)g(to)150 4622 y(disk)26 b(after)h(the)f(script)g
+h(are)g(written)g(to)150 5230 y(disk)26 b(after)h(the)f(script)g
 (\014nishes.)39 b(During)26 b(script)g(execution)h(its)g(p)s(ossible)f
-(\(and)g(legal\))i(for)f(the)f(missing)150 4732 y(v)-5
+(\(and)g(legal\))i(for)f(the)f(missing)150 5340 y(v)-5
 b(alue)31 b(of)f(a)h(v)-5 b(ariable)31 b(to)g(tak)m(e)h(on)f(sev)m
-(eral)g(di\013eren)m(t)g(v)-5 b(alues.)390 4902 y Fy(#)47
-b(Consider)f(the)h(variable:)390 5011 y(int)g
-(rec_var_int_mss_val_int\()o(time)o(\);)41 b
-(=-999,2,3,4,5,6,7,8,-999,-)o(999;)390 5121 y(rec_var_int_mss_val_int:)
-o(_Fil)o(lVal)o(ue)g(=)48 b(-999;)390 5340 y(n2=rec_var_int_mss_val_i)o
-(nt)42 b(+)47 b(rec_var_int_mss_val_int.r)o(eve)o(rse\()o($tim)o(e\);)p
+(eral)g(di\013eren)m(t)g(v)-5 b(alues.)p eop end
+%%Page: 130 136
+TeXDict begin 130 135 bop 150 -116 a FE(130)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(#)47 b(Consider)f(the)h
+(variable:)390 408 y(int)g(rec_var_int_mss_val_int\()o(time)o(\);)41
+b(=-999,2,3,4,5,6,7,8,-999,-)o(999;)390 518 y(rec_var_int_mss_val_int:)
+o(_Fil)o(lVal)o(ue)g(=)48 b(-999;)390 737 y(n2=rec_var_int_mss_val_i)o
+(nt)42 b(+)47 b(rec_var_int_mss_val_int.r)o(eve)o(rse\()o($tim)o(e\);)
+390 956 y(n2=-999,-999,11,11,11,11)o(,11,)o(11,9)o(99,)o(-999)o(;)275
+1116 y FE(The)25 b(follo)m(wing)j(metho)s(ds)e(manipulate)h(missing)f
+(v)-5 b(alue)27 b(information)f(asso)s(ciated)i(with)e(a)h(v)-5
+b(ariable.)150 1225 y(They)30 b(only)g(w)m(ork)h(on)f(v)-5
+b(ariables)31 b(in)f(Output.)150 1405 y Fz(set_miss\(expr\))630
+1514 y FE(The)37 b(n)m(umeric)h(argumen)m(t)g FA(expr)44
+b FE(b)s(ecomes)38 b(the)g(new)f(missing)g(v)-5 b(alue,)41
+b(o)m(v)m(erwriting)e(the)630 1624 y(old)33 b(missing)g(v)-5
+b(alue,)35 b(if)e(an)m(y)-8 b(.)50 b(The)33 b(argumen)m(t)h(giv)m(en)g
+(is)f(con)m(v)m(erted)i(if)e(necessary)h(to)g(the)630
+1733 y(v)-5 b(ariable)31 b(t)m(yp)s(e.)41 b(NB:)30 b(This)g(only)g(c)m
+(hanges)h(the)f(missing)g(v)-5 b(alue)30 b(attribute.)42
+b(Missing)30 b(v)-5 b(al-)630 1843 y(ues)29 b(in)f(the)h(original)i(v)
+-5 b(ariable)29 b(remain)g(unc)m(hanged,)g(and)g(th)m(us)f(are)i(no)f
+(long)g(considered)630 1953 y(missing)g(v)-5 b(alues.)41
+b(They)28 b(are)i(\\orphaned".)40 b(Th)m(us)28 b Fz(set_miss\(\))f
+FE(is)i(normally)g(used)g(only)630 2062 y(when)23 b(creating)i(new)e(v)
+-5 b(ariables.)39 b(The)23 b(in)m(trinsic)h(function)g
+Fz(change_miss\(\))c FE(\(see)k(b)s(elo)m(w\))630 2172
+y(is)30 b(t)m(ypically)j(used)c(to)i(edit)g(v)-5 b(alues)31
+b(of)f(existing)i(v)-5 b(ariables.)150 2321 y Fz(change_miss\(expr\))
+630 2431 y FE(Sets)43 b(or)f(c)m(hanges)i(\(an)m(y)g(pre-existing\))f
+(missing)g(v)-5 b(alue)43 b(attribute)h(and)e(missing)g(data)630
+2540 y(v)-5 b(alues)43 b(to)g FA(expr)p FE(.)76 b(NB:)43
+b(This)f(is)g(an)h(exp)s(ensiv)m(e)f(function)g(since)h(all)h(v)-5
+b(alues)42 b(m)m(ust)h(b)s(e)630 2650 y(examined.)83
+b(Use)45 b(this)f(function)g(when)g(c)m(hanging)h(missing)f(v)-5
+b(alues)45 b(for)f(pre-existing)630 2760 y(v)-5 b(ariables.)150
+2909 y Fz(get_miss\(\))630 3019 y FE(Returns)40 b(the)h(missing)g(v)-5
+b(alue)42 b(of)f(a)h(v)-5 b(ariable.)73 b(If)41 b(the)g(v)-5
+b(ariable)42 b(exists)g(in)f(Input)f(and)630 3128 y(Output)e(then)h
+(the)g(missing)g(v)-5 b(alue)39 b(of)h(the)f(v)-5 b(ariable)40
+b(in)e(Output)g(is)i(returned.)65 b(If)39 b(the)630 3238
+y(v)-5 b(ariable)31 b(has)f(no)h(missing)f(v)-5 b(alue)31
+b(then)f(an)g(error)g(is)g(returned.)150 3387 y Fz(delete_miss\(\))630
+3497 y FE(Delete)j(the)d(missing)g(v)-5 b(alue)31 b(asso)s(ciated)h
+(with)e(a)h(v)-5 b(ariable.)150 3646 y Fz(number_miss\(\))630
+3756 y FE(Coun)m(t)30 b(the)h(n)m(um)m(b)s(er)e(of)h(missing)h(v)-5
+b(alues)30 b(a)h(v)-5 b(ariable)31 b(con)m(tains.)390
+3915 y Fz(th=three_dmn_var_dbl;)390 4025 y(th.change_miss\(-1e10d\);)
+390 4134 y(/*)47 b(Set)g(values)f(less)h(than)f(0)i(or)f(greater)f
+(than)h(50)g(to)g(missing)f(value)g(*/)390 4244 y(where\(th)g(<)h(0.0)g
+(||)g(th)g(>)h(50.0\))e(th=th.get_miss\(\);)390 4463
+y(#)h(Another)f(example:)390 4573 y(new[$time,$lat,$lon]=1.0)o(;)390
+4682 y(new.set_miss\(-997.0\);)390 4902 y(//)h(Extract)f(only)h
+(elements)e(divisible)g(by)j(3)390 5011 y(where)e
+(\(three_dmn_var_dbl\0453)d(==)k(0\))629 5121 y(new=three_dmn_var_dbl;)
+390 5230 y(elsewhere)629 5340 y(new=new.get_miss\(\);)p
 eop end
-%%Page: 118 124
-TeXDict begin 118 123 bop 150 -116 a FD(118)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 408 y Fy(n2=-999,-999,11,11,11,11)o(,11,)
-o(11,9)o(99,)o(-999)o(;)275 568 y FD(The)25 b(follo)m(wing)j(metho)s
-(ds)e(manipulate)h(missing)f(v)-5 b(alue)27 b(information)f(asso)s
-(ciated)i(with)e(a)h(v)-5 b(ariable.)150 677 y(They)30
-b(only)g(w)m(ork)h(on)f(v)-5 b(ariables)31 b(in)f(Output.)150
-857 y Fy(set_miss\(expr\))630 966 y FD(The)37 b(n)m(umeric)h(argumen)m
-(t)g Fz(expr)44 b FD(b)s(ecomes)38 b(the)g(new)f(missing)g(v)-5
-b(alue,)41 b(o)m(v)m(erwriting)e(the)630 1076 y(old)33
-b(missing)g(v)-5 b(alue,)35 b(if)e(an)m(y)-8 b(.)50 b(The)33
-b(argumen)m(t)h(giv)m(en)g(is)f(con)m(v)m(erted)i(if)e(necessary)h(to)g
-(the)630 1186 y(v)-5 b(ariable)31 b(t)m(yp)s(e.)41 b(NB:)30
-b(This)g(only)g(c)m(hanges)h(the)f(missing)g(v)-5 b(alue)30
-b(attribute.)42 b(Missing)30 b(v)-5 b(al-)630 1295 y(ues)29
-b(in)f(the)h(original)i(v)-5 b(ariable)29 b(remain)g(unc)m(hanged,)g
-(and)g(th)m(us)f(are)i(no)f(long)g(considered)630 1405
-y(missing)g(v)-5 b(alues.)41 b(They)28 b(are)i(\\orphaned".)40
-b(Th)m(us)28 b Fy(set_miss\(\))f FD(is)i(normally)g(used)g(only)630
-1514 y(when)23 b(creating)i(new)e(v)-5 b(ariables.)39
-b(The)23 b(in)m(trinsic)h(function)g Fy(change_miss\(\))c
-FD(\(see)k(b)s(elo)m(w\))630 1624 y(is)30 b(t)m(ypically)j(used)c(to)i
-(edit)g(v)-5 b(alues)31 b(of)f(existing)i(v)-5 b(ariables.)150
-1773 y Fy(change_miss\(expr\))630 1883 y FD(Sets)43 b(or)f(c)m(hanges)i
-(\(an)m(y)g(pre-existing\))f(missing)g(v)-5 b(alue)43
-b(attribute)h(and)e(missing)g(data)630 1993 y(v)-5 b(alues)43
-b(to)g Fz(expr)p FD(.)76 b(NB:)43 b(This)f(is)g(an)h(exp)s(ensiv)m(e)f
-(function)g(since)h(all)h(v)-5 b(alues)42 b(m)m(ust)h(b)s(e)630
-2102 y(examined.)83 b(Use)45 b(this)f(function)g(when)g(c)m(hanging)h
-(missing)f(v)-5 b(alues)45 b(for)f(pre-existing)630 2212
-y(v)-5 b(ariables.)150 2361 y Fy(get_miss\(\))630 2471
-y FD(Returns)40 b(the)h(missing)g(v)-5 b(alue)42 b(of)f(a)h(v)-5
-b(ariable.)73 b(If)41 b(the)g(v)-5 b(ariable)42 b(exists)g(in)f(Input)f
-(and)630 2580 y(Output)e(then)h(the)g(missing)g(v)-5
-b(alue)39 b(of)h(the)f(v)-5 b(ariable)40 b(in)e(Output)g(is)i
-(returned.)65 b(If)39 b(the)630 2690 y(v)-5 b(ariable)31
-b(has)f(no)h(missing)f(v)-5 b(alue)31 b(then)f(an)g(error)g(is)g
-(returned.)150 2839 y Fy(delete_miss\(\))630 2949 y FD(Delete)j(the)d
-(missing)g(v)-5 b(alue)31 b(asso)s(ciated)h(with)e(a)h(v)-5
-b(ariable.)150 3098 y Fy(number_miss\(\))630 3208 y FD(Coun)m(t)30
-b(the)h(n)m(um)m(b)s(er)e(of)h(missing)h(v)-5 b(alues)30
-b(a)h(v)-5 b(ariable)31 b(con)m(tains.)390 3367 y Fy
-(th=three_dmn_var_dbl;)390 3477 y(th.change_miss\(-1e10d\);)390
-3587 y(/*)47 b(Set)g(values)f(less)h(than)f(0)i(or)f(greater)f(than)h
-(50)g(to)g(missing)f(value)g(*/)390 3696 y(where\(th)g(<)h(0.0)g(||)g
-(th)g(>)h(50.0\))e(th=th.get_miss\(\);)390 3915 y(#)h(Another)f
-(example:)390 4025 y(new[$time,$lat,$lon]=1.0)o(;)390
-4134 y(new.set_miss\(-997.0\);)390 4354 y(//)h(Extract)f(only)h
-(elements)e(divisible)g(by)j(3)390 4463 y(where)e
-(\(three_dmn_var_dbl\0453)d(==)k(0\))629 4573 y(new=three_dmn_var_dbl;)
-390 4682 y(elsewhere)629 4792 y(new=new.get_miss\(\);)390
-5011 y(//)g(Print)g(missing)e(value)i(and)g(variable)e(summary)390
-5121 y(mss_val_nbr=three_dmn_va)o(r_db)o(l.nu)o(mbe)o(r_mi)o(ss\(\))o
-(;)390 5230 y(print\(three_dmn_var_dbl@)o(_Fil)o(lVal)o(ue\))o(;)390
-5340 y(print\("Number)f(of)j(missing)f(values)g(in)h
-(three_dmn_var_dbl:)c("\);)p eop end
-%%Page: 119 125
-TeXDict begin 119 124 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(119)390
-299 y Fy(print\(mss_val_nbr,"\045d"\);)390 408 y
-(print\(three_dmn_var_dbl\))o(;)150 602 y Fu(4.1.11)63
-b(Metho)s(ds)43 b(and)e(functions)150 749 y FD(The)32
+%%Page: 131 137
+TeXDict begin 131 136 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(131)390 408 y Fz(//)47
+b(Print)g(missing)e(value)i(and)g(variable)e(summary)390
+518 y(mss_val_nbr=three_dmn_va)o(r_db)o(l.nu)o(mbe)o(r_mi)o(ss\(\))o(;)
+390 628 y(print\(three_dmn_var_dbl@)o(_Fil)o(lVal)o(ue\))o(;)390
+737 y(print\("Number)f(of)j(missing)f(values)g(in)h(three_dmn_var_dbl:)
+c("\);)390 847 y(print\(mss_val_nbr,"\045d"\);)390 956
+y(print\(three_dmn_var_dbl\))o(;)150 1162 y Fv(4.1.11)63
+b(Metho)s(ds)43 b(and)e(functions)150 1309 y FE(The)32
 b(con)m(v)m(en)m(tion)i(within)d(this)h(do)s(cumen)m(t)g(is)h(that)f
 (metho)s(ds)g(can)g(b)s(e)g(used)f(as)h(functions.)46
-b(Ho)m(w)m(ev)m(er,)150 859 y(functions)37 b(are)h(not)g(and)f(cannot)i
-(b)s(e)e(used)g(as)g(metho)s(ds.)62 b(Metho)s(ds)38 b(can)g(b)s(e)f
-(daisy-c)m(hained)h(d)g(and)150 969 y(their)f(syn)m(tax)g(is)f(cleaner)
-h(than)g(functions.)58 b(Metho)s(d)37 b(names)f(are)h(reserv)m(ed)g(w)m
-(ords)f(and)f(CANNOT)150 1078 y(b)s(e)i(used)g(as)i(v)-5
-b(ariable)38 b(names.)64 b(The)37 b(command)h Fy(ncap2)29
-b(-f)37 b FD(sho)m(ws)h(the)g(complete)h(list)g(of)f(metho)s(ds)150
-1188 y(a)m(v)-5 b(ailable)33 b(on)d(y)m(our)g(build.)390
-1347 y Fy(n2=sin\(theta\))390 1457 y(n2=theta.sin\(\))390
-1566 y(n2=sin\(theta\)^2)44 b(+)j(cos\(theta\)^2)390
-1676 y(n2=theta.sin\(\).pow\(2\))42 b(+)47 b(theta.cos\(\)^2)275
-1835 y FD(This)33 b(statemen)m(t)j(c)m(hains)e(together)h(metho)s(ds)f
-(to)g(con)m(v)m(ert)i(three)p 2571 1835 28 4 v 40 w(dmn)p
-2789 1835 V 39 w(v)-5 b(ar)p 2952 1835 V 40 w(sh)m(t)34
-b(to)h(t)m(yp)s(e)f(double,)150 1945 y(a)m(v)m(erage)f(it,)e(then)f
-(con)m(v)m(ert)i(this)e(bac)m(k)i(to)f(t)m(yp)s(e)f(short:)390
-2104 y Fy(three_avg=three_dmn_var_)o(sht.)o(doub)o(le\()o(\).av)o
-(g\(\).)o(sho)o(rt\(\))o(;)150 2373 y Fq(Aggregate)j(Metho)s(ds)171
-2483 y FD(These)22 b(metho)s(ds)f(mirror)f(the)i(a)m(v)m(eraging)i(t)m
-(yp)s(es)e(a)m(v)-5 b(ailable)24 b(in)d Fy(ncwa)p FD(.)37
-b(The)21 b(argumen)m(ts)h(to)g(the)g(metho)s(ds)150 2593
-y(are)29 b(the)g(dimensions)f(to)h(a)m(v)m(erage)i(o)m(v)m(er.)41
-b(Sp)s(ecifying)28 b(no)h(dimensions)f(is)g(equiv)-5
-b(alen)m(t)30 b(to)g(sp)s(ecifying)e(all)150 2702 y(dimensions)f(i.e.,)
-i(a)m(v)m(eraging)g(o)m(v)m(er)g(all)f(dimensions.)39
-b(A)27 b(masking)h(v)-5 b(ariable)28 b(and)f(a)g(w)m(eigh)m(ting)i(v)-5
-b(ariable)150 2812 y(can)31 b(b)s(e)e(man)m(ually)i(created)h(and)e
-(applied)g(as)g(needed.)150 2993 y Fy(avg\(\))240 b FD(Mean)31
-b(v)-5 b(alue)150 3148 y Fy(sqravg\(\))96 b FD(Square)30
-b(of)g(the)h(mean)150 3302 y Fy(avgsqr\(\))96 b FD(Mean)31
-b(of)g(sum)e(of)h(squares)150 3456 y Fy(max\(\))240 b
-FD(Maxim)m(um)31 b(v)-5 b(alue)150 3610 y Fy(min\(\))240
-b FD(Minim)m(um)30 b(v)-5 b(alue)150 3764 y Fy(rms\(\))240
-b FD(Ro)s(ot-mean-square)32 b(\(normalize)f(b)m(y)g Fz(N)10
-b FD(\))150 3918 y Fy(rmssdn\(\))96 b FD(Ro)s(ot-mean)31
-b(square)g(\(normalize)g(b)m(y)g Fz(N-1)7 b FD(\))150
-4072 y Fy(ttl\(\))29 b(or)h(total\(\))630 4182 y FD(Sum)f(of)i(v)-5
-b(alues)390 4341 y Fy(//)47 b(Average)f(a)h(variable)f(over)h(time)390
-4451 y(four_time_avg=four_dmn_r)o(ec_v)o(ar\($)o(tim)o(e\);)180
-4720 y Fq(P)m(ac)m(king)32 b(Metho)s(ds)174 4830 y FD(F)-8
-b(or)25 b(more)f(information)h(see)f(see)h(Section)g(3.31)g([P)m(ac)m
-(k)m(ed)i(data],)f(page)f(82)g(and)f(see)g(Section)h(4.8)g([ncp)s(dq)
-150 4939 y(netCDF)31 b(P)m(erm)m(ute)g(Dimensions)g(Quic)m(kly],)g
-(page)g(190)150 5230 y Fy(pack\(\))e(&)h(pack_short\(\))630
-5340 y FD(The)g(default)g(pac)m(king)i(algorithm)f(is)g(applied)f(and)g
-(v)-5 b(ariable)31 b(is)f(pac)m(k)m(ed)i(to)f Fy(NC_SHORT)p
-eop end
-%%Page: 120 126
-TeXDict begin 120 125 bop 150 -116 a FD(120)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fy(pack_byte\(\))630
-408 y FD(V)-8 b(ariable)32 b(is)e(pac)m(k)m(ed)i(to)f
-Fy(NC_BYTE)150 559 y(pack_short\(\))630 669 y FD(V)-8
-b(ariable)32 b(is)e(pac)m(k)m(ed)i(to)f Fy(NC_SHORT)150
-820 y(pack_int\(\))630 929 y FD(V)-8 b(ariable)32 b(is)e(pac)m(k)m(ed)i
-(to)f Fy(NC_INT)150 1080 y(unpack\(\))96 b FD(The)30
-b(standard)f(unpac)m(king)i(algorithm)g(is)g(applied.)150
-1260 y Fq(Basic)g(Metho)s(ds)180 1370 y FD(These)f(metho)s(ds)g(w)m
-(ork)h(with)f(v)-5 b(ariables)31 b(and)e(attributes.)42
-b(They)30 b(ha)m(v)m(e)h(no)f(argumen)m(ts)150 1550 y
-Fy(size\(\))192 b FD(T)-8 b(otal)32 b(n)m(um)m(b)s(er)d(of)h(elemen)m
-(ts)150 1701 y Fy(ndims\(\))144 b FD(Num)m(b)s(er)29
-b(of)i(dimensions)e(in)i(v)-5 b(ariable)150 1852 y Fy(type\(\))192
-b FD(Returns)29 b(the)i(netcdf)f(t)m(yp)s(e)h(\(see)g(previous)f
-(section\))150 2141 y Fq(Utilit)m(y)i(Metho)s(ds)197
-2251 y FD(These)46 b(functions)h(are)g(used)f(to)i(manipulate)f
-(missing)g(v)-5 b(alues)47 b(and)f FC(RAM)h FD(v)-5 b(ariables.)91
-b(see)47 b(Sec-)150 2360 y(tion)31 b(4.1.10)h([Missing)g(v)-5
-b(alues)30 b(ncap2],)h(page)h(117)150 2540 y Fy(set_miss\(expr\))630
-2650 y FD(T)-8 b(ak)m(es)33 b(one)f(argumen)m(t)g(the)g(missing)f(v)-5
+b(Ho)m(w)m(ev)m(er,)150 1418 y(functions)37 b(are)h(not)g(and)f(cannot)
+i(b)s(e)e(used)g(as)g(metho)s(ds.)62 b(Metho)s(ds)38
+b(can)g(b)s(e)f(daisy-c)m(hained)h(d)g(and)150 1528 y(their)f(syn)m
+(tax)g(is)f(cleaner)h(than)g(functions.)58 b(Metho)s(d)37
+b(names)f(are)h(reserv)m(ed)g(w)m(ords)f(and)f(CANNOT)150
+1638 y(b)s(e)i(used)g(as)i(v)-5 b(ariable)38 b(names.)64
+b(The)37 b(command)h Fz(ncap2)29 b(-f)37 b FE(sho)m(ws)h(the)g
+(complete)h(list)g(of)f(metho)s(ds)150 1747 y(a)m(v)-5
+b(ailable)33 b(on)d(y)m(our)g(build.)390 1910 y Fz(n2=sin\(theta\))390
+2019 y(n2=theta.sin\(\))390 2129 y(n2=sin\(theta\)^2)44
+b(+)j(cos\(theta\)^2)390 2238 y(n2=theta.sin\(\).pow\(2\))42
+b(+)47 b(theta.cos\(\)^2)275 2401 y FE(This)33 b(statemen)m(t)j(c)m
+(hains)e(together)h(metho)s(ds)f(to)g(con)m(v)m(ert)i(three)p
+2571 2401 28 4 v 40 w(dmn)p 2789 2401 V 39 w(v)-5 b(ar)p
+2952 2401 V 40 w(sh)m(t)34 b(to)h(t)m(yp)s(e)f(double,)150
+2511 y(a)m(v)m(erage)f(it,)e(then)f(con)m(v)m(ert)i(this)e(bac)m(k)i
+(to)f(t)m(yp)s(e)f(short:)390 2673 y Fz(three_avg=three_dmn_var_)o
+(sht.)o(doub)o(le\()o(\).av)o(g\(\).)o(sho)o(rt\(\))o(;)150
+2945 y Fr(Aggregate)j(Metho)s(ds)171 3055 y FE(These)22
+b(metho)s(ds)f(mirror)f(the)i(a)m(v)m(eraging)i(t)m(yp)s(es)e(a)m(v)-5
+b(ailable)24 b(in)d Fz(ncwa)p FE(.)37 b(The)21 b(argumen)m(ts)h(to)g
+(the)g(metho)s(ds)150 3164 y(are)29 b(the)g(dimensions)f(to)h(a)m(v)m
+(erage)i(o)m(v)m(er.)41 b(Sp)s(ecifying)28 b(no)h(dimensions)f(is)g
+(equiv)-5 b(alen)m(t)30 b(to)g(sp)s(ecifying)e(all)150
+3274 y(dimensions)f(i.e.,)i(a)m(v)m(eraging)g(o)m(v)m(er)g(all)f
+(dimensions.)39 b(A)27 b(masking)h(v)-5 b(ariable)28
+b(and)f(a)g(w)m(eigh)m(ting)i(v)-5 b(ariable)150 3384
+y(can)31 b(b)s(e)e(man)m(ually)i(created)h(and)e(applied)g(as)g
+(needed.)150 3574 y Fz(avg\(\))240 b FE(Mean)31 b(v)-5
+b(alue)150 3740 y Fz(sqravg\(\))96 b FE(Square)30 b(of)g(the)h(mean)150
+3905 y Fz(avgsqr\(\))96 b FE(Mean)31 b(of)g(sum)e(of)h(squares)150
+4071 y Fz(max\(\))240 b FE(Maxim)m(um)31 b(v)-5 b(alue)150
+4237 y Fz(min\(\))240 b FE(Minim)m(um)30 b(v)-5 b(alue)150
+4402 y Fz(mabs\(\))192 b FE(Maxim)m(um)31 b(absolute)g(v)-5
+b(alue)150 4568 y Fz(mebs\(\))192 b FE(Mean)31 b(absolute)g(v)-5
+b(alue)150 4733 y Fz(mibs\(\))192 b FE(Minim)m(um)30
+b(absolute)h(v)-5 b(alue)150 4899 y Fz(rms\(\))240 b
+FE(Ro)s(ot-mean-square)32 b(\(normalize)f(b)m(y)g FA(N)10
+b FE(\))150 5065 y Fz(rmssdn\(\))96 b FE(Ro)s(ot-mean)31
+b(square)g(\(normalize)g(b)m(y)g FA(N-1)7 b FE(\))150
+5230 y Fz(ttl\(\))29 b(or)h(total\(\))630 5340 y FE(Sum)f(of)i(v)-5
+b(alues)p eop end
+%%Page: 132 138
+TeXDict begin 132 137 bop 150 -116 a FE(132)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(//)47 b(Average)f(a)h(variable)f
+(over)h(time)390 408 y(four_time_avg=four_dmn_r)o(ec_v)o(ar\($)o(tim)o
+(e\);)180 677 y Fr(P)m(ac)m(king)32 b(Metho)s(ds)174
+787 y FE(F)-8 b(or)25 b(more)f(information)h(see)f(see)h(Section)g
+(3.32)g([P)m(ac)m(k)m(ed)i(data],)f(page)f(92)g(and)f(see)g(Section)h
+(4.8)g([ncp)s(dq)150 897 y(netCDF)31 b(P)m(erm)m(ute)g(Dimensions)g
+(Quic)m(kly],)g(page)g(202)150 1187 y Fz(pack\(\))e(&)h(pack_short\(\))
+630 1297 y FE(The)g(default)g(pac)m(king)i(algorithm)f(is)g(applied)f
+(and)g(v)-5 b(ariable)31 b(is)f(pac)m(k)m(ed)i(to)f Fz(NC_SHORT)150
+1449 y(pack_byte\(\))630 1559 y FE(V)-8 b(ariable)32
+b(is)e(pac)m(k)m(ed)i(to)f Fz(NC_BYTE)150 1711 y(pack_short\(\))630
+1821 y FE(V)-8 b(ariable)32 b(is)e(pac)m(k)m(ed)i(to)f
+Fz(NC_SHORT)150 1973 y(pack_int\(\))630 2083 y FE(V)-8
+b(ariable)32 b(is)e(pac)m(k)m(ed)i(to)f Fz(NC_INT)150
+2235 y(unpack\(\))96 b FE(The)30 b(standard)f(unpac)m(king)i(algorithm)
+g(is)g(applied.)150 2416 y Fr(Basic)g(Metho)s(ds)180
+2525 y FE(These)f(metho)s(ds)g(w)m(ork)h(with)f(v)-5
+b(ariables)31 b(and)e(attributes.)42 b(They)30 b(ha)m(v)m(e)h(no)f
+(argumen)m(ts)150 2706 y Fz(size\(\))192 b FE(T)-8 b(otal)32
+b(n)m(um)m(b)s(er)d(of)h(elemen)m(ts)150 2859 y Fz(ndims\(\))144
+b FE(Num)m(b)s(er)29 b(of)i(dimensions)e(in)i(v)-5 b(ariable)150
+3011 y Fz(type\(\))192 b FE(Returns)29 b(the)i(netcdf)f(t)m(yp)s(e)h
+(\(see)g(previous)f(section\))150 3301 y Fr(Utilit)m(y)i(Metho)s(ds)197
+3411 y FE(These)46 b(functions)h(are)g(used)f(to)i(manipulate)f
+(missing)g(v)-5 b(alues)47 b(and)f FD(RAM)h FE(v)-5 b(ariables.)91
+b(see)47 b(Sec-)150 3521 y(tion)31 b(4.1.10)h([Missing)g(v)-5
+b(alues)30 b(ncap2],)h(page)h(129)150 3701 y Fz(set_miss\(expr\))630
+3811 y FE(T)-8 b(ak)m(es)33 b(one)f(argumen)m(t)g(the)g(missing)f(v)-5
 b(alue.)45 b(Sets)32 b(or)g(o)m(v)m(erwrites)h(the)e(existing)i
-(missing)630 2760 y(v)-5 b(alue.)41 b(The)30 b(argumen)m(t)h(giv)m(en)g
+(missing)630 3920 y(v)-5 b(alue.)41 b(The)30 b(argumen)m(t)h(giv)m(en)g
 (is)g(con)m(v)m(erted)h(if)e(necessary)h(to)g(the)f(v)-5
-b(ariable)31 b(t)m(yp)s(e)150 2911 y Fy(change_miss\(expr\))630
-3020 y FD(Changes)37 b(the)h(missing)f(v)-5 b(alue)38
+b(ariable)31 b(t)m(yp)s(e)150 4073 y Fz(change_miss\(expr\))630
+4182 y FE(Changes)37 b(the)h(missing)f(v)-5 b(alue)38
 b(elemen)m(ts)g(of)g(the)g(v)-5 b(ariable)38 b(to)g(the)f(new)g
-(missing)g(v)-5 b(alue)630 3130 y(\(n.b.)40 b(an)31 b(exp)s(ensiv)m(e)f
-(function\).)150 3281 y Fy(get_miss\(\))630 3390 y FD(Returns)f(the)i
+(missing)g(v)-5 b(alue)630 4292 y(\(n.b.)40 b(an)31 b(exp)s(ensiv)m(e)f
+(function\).)150 4444 y Fz(get_miss\(\))630 4554 y FE(Returns)f(the)i
 (missing)f(v)-5 b(alue)31 b(of)g(a)f(v)-5 b(ariable)32
-b(in)e(Input)f(or)h(Output)150 3541 y Fy(delete_miss\(\))630
-3651 y FD(Deletes)i(the)f(missing)f(v)-5 b(alue)31 b(asso)s(ciated)h
-(with)e(a)h(v)-5 b(ariable.)150 3801 y Fy(ram_write\(\))630
-3911 y FD(W)d(rites)32 b(a)e FC(RAM)h FD(v)-5 b(ariable)31
+b(in)e(Input)f(or)h(Output)150 4706 y Fz(delete_miss\(\))630
+4816 y FE(Deletes)i(the)f(missing)f(v)-5 b(alue)31 b(asso)s(ciated)h
+(with)e(a)h(v)-5 b(ariable.)150 4968 y Fz(ram_write\(\))630
+5078 y FE(W)d(rites)32 b(a)e FD(RAM)h FE(v)-5 b(ariable)31
 b(to)g(disk)f(i.e.,)i(con)m(v)m(erts)g(it)f(to)g(a)g(regular)f(disk)g
-(t)m(yp)s(e)h(v)-5 b(ariable)150 4062 y Fy(ram_delete\(\))630
-4171 y FD(Deletes)32 b(a)f FC(RAM)g FD(v)-5 b(ariable)31
-b(or)f(an)h(attribute)150 4461 y Fq(PDQ)f(Metho)s(ds)180
-4571 y FD(See)h(see)g(Section)g(4.8)h([ncp)s(dq)d(netCDF)i(P)m(erm)m
-(ute)g(Dimensions)f(Quic)m(kly],)i(page)f(190)150 4751
-y Fy(reverse\(dim)c(args\))630 4860 y FD(Rev)m(erses)k(the)g(dimension)
-f(ordering)g(of)g(elemen)m(ts)i(in)e(a)h(v)-5 b(ariable.)150
-5011 y Fy(permute\(dim)27 b(args\))630 5121 y FD(Re-shap)s(es)g(v)-5
-b(ariables)28 b(b)m(y)g(re-ordering)f(the)h(dimensions.)39
-b(All)28 b(the)g(dims)f(of)g(the)h(v)-5 b(ariable)630
-5230 y(m)m(ust)24 b(b)s(e)f(sp)s(eci\014ed)g(in)g(the)h(argumen)m(ts.)
-39 b(A)24 b(limitation)i(of)e(this)f(p)s(erm)m(ute)h(\(unlik)m(e)g(ncp)
-s(dq\))630 5340 y(is)30 b(that)h(the)g(record)f(dimension)g(cannot)h(b)
-s(e)f(re-assigned.)p eop end
-%%Page: 121 127
-TeXDict begin 121 126 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(121)275
-299 y(//)31 b(Sw)m(ap)f(dimensions)f(ab)s(out)h(and)g(reorder)g(along)h
-(lon)390 459 y Fy(lat_2D_rrg_new=lat_2D_rr)o(g.pe)o(rmut)o(e\($)o(lon,)
-o($lat)o(\).r)o(ever)o(se\($)o(lon)o(\);)390 568 y
-(lat_2D_rrg_new=0,90,-30,)o(30,-)o(30,3)o(0,-)o(90,0)150
-838 y Fq(T)m(yp)s(e)f(Con)m(v)m(ersion)i(Metho)s(ds)173
-947 y FD(These)22 b(metho)s(ds)g(allo)m(w)i Fy(ncap2)e
-FD(to)h(con)m(v)m(ert)i(v)-5 b(ariables)23 b(and)f(attributes)h(to)h
-(the)f(di\013eren)m(t)g(netcdf)g(t)m(yp)s(es.)150 1057
-y(F)-8 b(or)43 b(more)f(details)h(on)f(automatic)i(and)d(man)m(ual)i(t)
-m(yp)s(e)f(con)m(v)m(ersion)h(see)g(\(see)g(Section)g(3.33)g([T)m(yp)s
-(e)150 1166 y(Con)m(v)m(ersion],)28 b(page)e(89\).)41
-b(Y)-8 b(ou)26 b(can)g(only)g(use)f(the)h(new)f(netCDF4)i(t)m(yp)s(es)f
-(if)f(y)m(ou)h(ha)m(v)m(e)h(compiled/links)150 1276 y
-FC(NCO)j FD(with)g(the)h(netCDF4)g(library)f(and)g(the)g(Output)g
-(\014le)g(is)h(HDF5.)150 1461 y Fq(netCDF3/4)h(T)m(yp)s(es)150
-1571 y Fy(byte\(\))192 b FD(con)m(v)m(ert)32 b(to)f Fy(NC_BYTE)p
-FD(,)e(a)h(signed)h(1-b)m(yte)h(in)m(teger)150 1731 y
-Fy(char\(\))192 b FD(con)m(v)m(ert)32 b(to)f Fy(NC_CHAR)p
-FD(,)e(an)h(ISO/ASCI)s(I)e(c)m(haracter)150 1891 y Fy(short\(\))144
-b FD(con)m(v)m(ert)32 b(to)f Fy(NC_SHORT)p FD(,)d(a)j(signed)f(2-b)m
-(yte)i(in)m(teger)150 2051 y Fy(int\(\))240 b FD(con)m(v)m(ert)32
-b(to)f Fy(NC_INT)p FD(,)e(a)i(signed)f(4-b)m(yte)i(in)m(teger)150
-2212 y Fy(float\(\))144 b FD(con)m(v)m(ert)32 b(to)f
-Fy(NC_FLOAT)p FD(,)d(a)j(single-precision)h(\(4-b)m(yte\))g(\015oating)
-g(p)s(oin)m(t)e(n)m(um)m(b)s(er)150 2372 y Fy(double\(\))96
-b FD(con)m(v)m(ert)32 b(to)f Fy(NC_DOUBLE)p FD(,)d(a)j
-(double-precision)f(\(8-b)m(yte\))j(\015oating)e(p)s(oin)m(t)g(n)m(um)m
-(b)s(er)150 2532 y Fq(netCDF4)g(T)m(yp)s(es)150 2642
-y Fy(ubyte\(\))144 b FD(con)m(v)m(ert)32 b(to)f Fy(NC_UBYTE)p
-FD(,)d(an)j(unsigned)e(1-b)m(yte)j(in)m(teger)150 2802
-y Fy(ushort\(\))96 b FD(con)m(v)m(ert)32 b(to)f Fy(NC_USHORT)p
-FD(,)d(an)i(unsigned)g(2-b)m(yte)i(in)m(teger)150 2962
-y Fy(uint\(\))192 b FD(con)m(v)m(ert)32 b(to)f Fy(NC_UINT)p
-FD(,)e(an)h(unsigned)f(4-b)m(yte)j(in)m(teger)150 3122
-y Fy(int64\(\))144 b FD(con)m(v)m(ert)32 b(to)f Fy(NC_INT64)p
-FD(,)d(a)j(signed)f(8-b)m(yte)i(in)m(teger)150 3283 y
-Fy(uint64\(\))96 b FD(con)m(v)m(ert)32 b(to)f Fy(NC_UINT64)p
-FD(,)d(an)i(unsigned)g(8-b)m(yte)i(in)m(teger)150 3468
-y Fq(In)m(trinsic)f(Mathematical)i(Metho)s(ds)180 3577
-y FD(The)c(list)h(of)g(mathematical)i(metho)s(ds)c(is)i(system)g(dep)s
+(t)m(yp)s(e)h(v)-5 b(ariable)150 5230 y Fz(ram_delete\(\))630
+5340 y FE(Deletes)32 b(a)f FD(RAM)g FE(v)-5 b(ariable)31
+b(or)f(an)h(attribute)p eop end
+%%Page: 133 139
+TeXDict begin 133 138 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(133)150 299 y Fr(PDQ)30
+b(Metho)s(ds)180 408 y FE(See)h(see)g(Section)g(4.8)h([ncp)s(dq)d
+(netCDF)i(P)m(erm)m(ute)g(Dimensions)f(Quic)m(kly],)i(page)f(202)150
+599 y Fz(reverse\(dim)c(args\))630 708 y FE(Rev)m(erses)k(the)g
+(dimension)f(ordering)g(of)g(elemen)m(ts)i(in)e(a)h(v)-5
+b(ariable.)150 874 y Fz(permute\(dim)27 b(args\))630
+983 y FE(Re-shap)s(es)g(v)-5 b(ariables)28 b(b)m(y)g(re-ordering)f(the)
+h(dimensions.)39 b(All)28 b(the)g(dims)f(of)g(the)h(v)-5
+b(ariable)630 1093 y(m)m(ust)24 b(b)s(e)f(sp)s(eci\014ed)g(in)g(the)h
+(argumen)m(ts.)39 b(A)24 b(limitation)i(of)e(this)f(p)s(erm)m(ute)h
+(\(unlik)m(e)g(ncp)s(dq\))630 1203 y(is)30 b(that)h(the)g(record)f
+(dimension)g(cannot)h(b)s(e)f(re-assigned.)275 1393 y(//)h(Sw)m(ap)f
+(dimensions)f(ab)s(out)h(and)g(reorder)g(along)h(lon)390
+1555 y Fz(lat_2D_rrg_new=lat_2D_rr)o(g.pe)o(rmut)o(e\($)o(lon,)o($lat)o
+(\).r)o(ever)o(se\($)o(lon)o(\);)390 1665 y(lat_2D_rrg_new=0,90,-30,)o
+(30,-)o(30,3)o(0,-)o(90,0)150 1937 y Fr(T)m(yp)s(e)f(Con)m(v)m(ersion)i
+(Metho)s(ds)193 2047 y FE(These)42 b(metho)s(ds)g(allo)m(w)i
+Fz(ncap2)d FE(to)i(con)m(v)m(ert)h(v)-5 b(ariables)44
+b(and)e(attributes)h(to)g(the)g(di\013eren)m(t)g(netcdf)150
+2156 y(t)m(yp)s(es.)68 b(F)-8 b(or)40 b(more)g(details)g(on)f
+(automatic)j(and)d(man)m(ual)g(t)m(yp)s(e)h(con)m(v)m(ersion)h(see)f
+(\(see)g(Section)g(3.34)150 2266 y([T)m(yp)s(e)j(Con)m(v)m(ersion],)49
+b(page)44 b(100\).)82 b(Y)-8 b(ou)45 b(ma)m(y)f(only)g(use)f(the)h(new)
+f(netCDF4)i(t)m(yp)s(es)f(if)g(y)m(ou)g(ha)m(v)m(e)150
+2375 y(compiled/links)31 b FD(NCO)f FE(with)g(the)h(netCDF4)g(library)f
+(and)g(the)h(Output)e(\014le)h(is)h(HDF5.)150 2566 y
+Fr(netCDF3/4)h(T)m(yp)s(es)150 2675 y Fz(byte\(\))192
+b FE(con)m(v)m(ert)32 b(to)f Fz(NC_BYTE)p FE(,)e(a)h(signed)h(1-b)m
+(yte)h(in)m(teger)150 2841 y Fz(char\(\))192 b FE(con)m(v)m(ert)32
+b(to)f Fz(NC_CHAR)p FE(,)e(an)h(ISO/ASCI)s(I)e(c)m(haracter)150
+3006 y Fz(short\(\))144 b FE(con)m(v)m(ert)32 b(to)f
+Fz(NC_SHORT)p FE(,)d(a)j(signed)f(2-b)m(yte)i(in)m(teger)150
+3172 y Fz(int\(\))240 b FE(con)m(v)m(ert)32 b(to)f Fz(NC_INT)p
+FE(,)e(a)i(signed)f(4-b)m(yte)i(in)m(teger)150 3337 y
+Fz(float\(\))144 b FE(con)m(v)m(ert)32 b(to)f Fz(NC_FLOAT)p
+FE(,)d(a)j(single-precision)h(\(4-b)m(yte\))g(\015oating)g(p)s(oin)m(t)
+e(n)m(um)m(b)s(er)150 3502 y Fz(double\(\))96 b FE(con)m(v)m(ert)32
+b(to)f Fz(NC_DOUBLE)p FE(,)d(a)j(double-precision)f(\(8-b)m(yte\))j
+(\015oating)e(p)s(oin)m(t)g(n)m(um)m(b)s(er)150 3668
+y Fr(netCDF4)g(T)m(yp)s(es)150 3778 y Fz(ubyte\(\))144
+b FE(con)m(v)m(ert)32 b(to)f Fz(NC_UBYTE)p FE(,)d(an)j(unsigned)e(1-b)m
+(yte)j(in)m(teger)150 3943 y Fz(ushort\(\))96 b FE(con)m(v)m(ert)32
+b(to)f Fz(NC_USHORT)p FE(,)d(an)i(unsigned)g(2-b)m(yte)i(in)m(teger)150
+4108 y Fz(uint\(\))192 b FE(con)m(v)m(ert)32 b(to)f Fz(NC_UINT)p
+FE(,)e(an)h(unsigned)f(4-b)m(yte)j(in)m(teger)150 4274
+y Fz(int64\(\))144 b FE(con)m(v)m(ert)32 b(to)f Fz(NC_INT64)p
+FE(,)d(a)j(signed)f(8-b)m(yte)i(in)m(teger)150 4439 y
+Fz(uint64\(\))96 b FE(con)m(v)m(ert)32 b(to)f Fz(NC_UINT64)p
+FE(,)d(an)i(unsigned)g(8-b)m(yte)i(in)m(teger)150 4630
+y Fr(In)m(trinsic)f(Mathematical)i(Metho)s(ds)180 4739
+y FE(The)c(list)h(of)g(mathematical)i(metho)s(ds)c(is)i(system)g(dep)s
 (endan)m(t.)39 b(F)-8 b(or)31 b(the)f(full)f(list)h(see)g(Section)h
-(4.1.25)150 3687 y([In)m(trinsic)g(mathematical)h(metho)s(ds],)e(page)i
-(151)275 3847 y(All)c(the)h(mathematical)h(metho)s(ds)e(tak)m(e)i(a)f
-(single)f(argumen)m(t)h(except)g Fy(atan2\(\))e FD(and)g
-Fy(pow\(\))g FD(whic)m(h)150 3956 y(tak)m(e)33 b(t)m(w)m(o.)45
+(4.1.25)150 4849 y([In)m(trinsic)g(mathematical)h(metho)s(ds],)e(page)i
+(163)275 5011 y(All)c(the)h(mathematical)h(metho)s(ds)e(tak)m(e)i(a)f
+(single)f(argumen)m(t)h(except)g Fz(atan2\(\))e FE(and)g
+Fz(pow\(\))g FE(whic)m(h)150 5121 y(tak)m(e)33 b(t)m(w)m(o.)45
 b(If)31 b(the)h(op)s(erand)e(t)m(yp)s(e)i(is)f(less)h(than)f
-Fo(\015o)-5 b(at)42 b FD(then)31 b(the)g(result)h(will)f(b)s(e)g(of)h
-(t)m(yp)s(e)f Fo(\015o)-5 b(at)p FD(.)46 b(Argu-)150
-4066 y(men)m(ts)33 b(of)g(t)m(yp)s(e)g Fo(double)41 b
-FD(yield)33 b(results)g(of)g(t)m(yp)s(e)g Fo(double)p
-FD(.)48 b(Lik)m(e)34 b(the)f(other)h(metho)s(ds,)f(y)m(ou)g(are)g(free)
-g(to)150 4176 y(use)d(the)h(mathematical)h(metho)s(ds)e(as)h
-(functions.)390 4335 y Fy(n1=pow\(2,3.0f\))187 b(//)47
-b(n1)g(type)g(float)390 4445 y(n2=atan2\(2,3.0\))139
-b(//)47 b(n2)g(type)g(double)390 4555 y(n3=1/\(three_dmn_var_dbl.)o
+Fp(\015o)-5 b(at)42 b FE(then)31 b(the)g(result)h(will)f(b)s(e)g(of)h
+(t)m(yp)s(e)f Fp(\015o)-5 b(at)p FE(.)46 b(Argu-)150
+5230 y(men)m(ts)33 b(of)g(t)m(yp)s(e)g Fp(double)41 b
+FE(yield)33 b(results)g(of)g(t)m(yp)s(e)g Fp(double)p
+FE(.)48 b(Lik)m(e)34 b(the)f(other)h(metho)s(ds,)f(y)m(ou)g(are)g(free)
+g(to)150 5340 y(use)d(the)h(mathematical)h(metho)s(ds)e(as)h
+(functions.)p eop end
+%%Page: 134 140
+TeXDict begin 134 139 bop 150 -116 a FE(134)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(n1=pow\(2,3.0f\))187
+b(//)47 b(n1)g(type)g(float)390 408 y(n2=atan2\(2,3.0\))139
+b(//)47 b(n2)g(type)g(double)390 518 y(n3=1/\(three_dmn_var_dbl.)o
 (cos\()o(\).po)o(w\(2)o(\)\)-t)o(an\(t)o(hre)o(e_dm)o(n_va)o(r_d)o
-(bl\)^)o(2;)42 b(//)47 b(n3)g(type)g(double)150 4755
-y Fu(4.1.12)63 b Fq(RAM)41 b Fu(v)-7 b(ariables)150 4902
-y FD(Unlik)m(e)33 b(regular)g(v)-5 b(ariables,)34 b FC(RAM)e
-FD(v)-5 b(ariables)33 b(are)g(nev)m(er)g(written)f(to)h(disk.)47
-b(Hence)33 b(using)f FC(RAM)g FD(v)-5 b(ari-)150 5011
+(bl\)^)o(2;)42 b(//)47 b(n3)g(type)g(double)150 727 y
+Fv(4.1.12)63 b Fr(RAM)41 b Fv(v)-7 b(ariables)150 874
+y FE(Unlik)m(e)33 b(regular)g(v)-5 b(ariables,)34 b FD(RAM)e
+FE(v)-5 b(ariables)33 b(are)g(nev)m(er)g(written)f(to)h(disk.)47
+b(Hence)33 b(using)f FD(RAM)g FE(v)-5 b(ari-)150 984
 y(ables)29 b(in)g(place)h(of)f(regular)g(v)-5 b(ariables)30
 b(\(esp)s(ecially)g(within)f(lo)s(ops\))g(signi\014can)m(tly)h
-(increases)g(execution)150 5121 y(sp)s(eed.)38 b(V)-8
+(increases)g(execution)150 1093 y(sp)s(eed.)38 b(V)-8
 b(ariables)26 b(that)f(are)g(frequen)m(tly)g(accessed)g(within)f
-Fy(for)g FD(or)h Fy(where)e FD(clauses)i(pro)m(vide)g(the)f(great-)150
-5230 y(est)30 b(opp)s(ortunities)g(for)f(optimization.)43
-b(T)-8 b(o)30 b(declare)h(and)e(de\014ne)g(a)i FC(RAM)f
-FD(v)-5 b(ariable)31 b(simply)e(pre\014x)g(the)150 5340
+Fz(for)g FE(or)h Fz(where)e FE(clauses)i(pro)m(vide)g(the)f(great-)150
+1203 y(est)30 b(opp)s(ortunities)g(for)f(optimization.)43
+b(T)-8 b(o)30 b(declare)h(and)e(de\014ne)g(a)i FD(RAM)f
+FE(v)-5 b(ariable)31 b(simply)e(pre\014x)g(the)150 1313
 y(v)-5 b(ariable)38 b(name)g(with)f(an)g(asterisk)h(\()p
-Fy(*)p FD(\))g(when)e(the)i(v)-5 b(ariable)38 b(is)f
-(declared/initialized.)65 b(T)-8 b(o)38 b(delete)h(a)p
-eop end
-%%Page: 122 128
-TeXDict begin 122 127 bop 150 -116 a FD(122)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FC(RAM)c FD(v)-5
-b(ariables)26 b(\(and)g(reco)m(v)m(er)h(their)f(memory\))g(use)f(the)h
-Fy(ram_delete\(\))c FD(metho)s(d.)39 b(T)-8 b(o)26 b(write)g(a)g
-FC(RAM)150 408 y FD(v)-5 b(ariable)31 b(to)g(disk)f(\(lik)m(e)i(a)f
-(regular)g(v)-5 b(ariable\))31 b(use)f Fy(ram_write\(\))p
-FD(.)390 568 y Fy(*temp[$time,$lat,$lon]=1)o(0.0;)232
-b(//)47 b(Cast)390 677 y(*temp_avg=temp.avg\($time)o(\);)280
-b(//)47 b(Regular)f(assign)390 787 y(temp.ram_delete\(\);)663
-b(//)47 b(Delete)g(RAM)f(variable)390 897 y(temp_avg.ram_write\(\);)519
-b(//)47 b(Write)g(Variable)e(to)j(output)390 1116 y(//)f(Create)f(and)h
-(increment)e(a)j(RAM)f(variable)e(from)i("one")f(in)i(Input)390
-1225 y(*one++;)390 1335 y(//)f(Create)f(RAM)h(variables)e(from)i(the)g
-(variables)e(three)i(and)g(four)f(in)h(Input.)390 1445
-y(//)g(Multiply)f(three)g(by)h(10)g(and)g(add)g(it)g(to)h(four.)390
-1554 y(*four+=*three*=10;)43 b(//)k(three=30,)e(four=34)150
-1744 y Fu(4.1.13)63 b(Where)41 b(statemen)m(t)150 1891
-y FD(A)30 b Fy(where\(\))d FD(com)m(bines)k(the)e(de\014nition)h(and)f
-(application)i(of)e(a)h(mask)g(all)g(in)g(one)g(go)g(and)f(can)h(lead)g
-(to)150 2001 y(succinct)h(co)s(de.)41 b(The)30 b(full)g(syn)m(tax)h(of)
-f(a)h Fy(where\(\))d FD(statemen)m(t)33 b(is)d(as)h(follo)m(ws:)390
-2160 y Fy(//)47 b(Single)f(assign)g(\(the)h('elsewhere')e(block)h(is)h
-(optional\))390 2270 y(where\(mask\))533 2380 y(var1=expr1;)390
-2489 y(elsewhere)533 2599 y(var1=expr2;)390 2818 y(//)g(Multiple)f
-(assigns)390 2928 y(where\(mask\){)581 3037 y(var1=expr1;)581
-3147 y(var2=expr2;)581 3256 y(...)390 3366 y(}elsewhere{)581
-3475 y(var1=expr3)581 3585 y(var2=expr4)581 3695 y(var3=expr5;)581
-3804 y(...)390 3914 y(})225 4073 y FA(\017)60 b FD(The)26
+Fz(*)p FE(\))g(when)e(the)i(v)-5 b(ariable)38 b(is)f
+(declared/initialized.)65 b(T)-8 b(o)38 b(delete)h(a)150
+1422 y FD(RAM)26 b FE(v)-5 b(ariables)26 b(\(and)g(reco)m(v)m(er)h
+(their)f(memory\))g(use)f(the)h Fz(ram_delete\(\))c FE(metho)s(d.)39
+b(T)-8 b(o)26 b(write)g(a)g FD(RAM)150 1532 y FE(v)-5
+b(ariable)31 b(to)g(disk)f(\(lik)m(e)i(a)f(regular)g(v)-5
+b(ariable\))31 b(use)f Fz(ram_write\(\))p FE(.)390 1696
+y Fz(*temp[$time,$lat,$lon]=1)o(0.0;)232 b(//)47 b(Cast)390
+1806 y(*temp_avg=temp.avg\($time)o(\);)280 b(//)47 b(Regular)f(assign)
+390 1915 y(temp.ram_delete\(\);)663 b(//)47 b(Delete)g(RAM)f(variable)
+390 2025 y(temp_avg.ram_write\(\);)519 b(//)47 b(Write)g(Variable)e(to)
+j(output)390 2244 y(//)f(Create)f(and)h(increment)e(a)j(RAM)f(variable)
+e(from)i("one")f(in)i(Input)390 2354 y(*one++;)390 2463
+y(//)f(Create)f(RAM)h(variables)e(from)i(the)g(variables)e(three)i(and)
+g(four)f(in)h(Input.)390 2573 y(//)g(Multiply)f(three)g(by)h(10)g(and)g
+(add)g(it)g(to)h(four.)390 2682 y(*four+=*three*=10;)43
+b(//)k(three=30,)e(four=34)150 2892 y Fv(4.1.13)63 b(Where)41
+b(statemen)m(t)150 3039 y FE(A)30 b Fz(where\(\))d FE(com)m(bines)k
+(the)e(de\014nition)h(and)f(application)i(of)e(a)h(mask)g(all)g(in)g
+(one)g(go)g(and)f(can)h(lead)g(to)150 3148 y(succinct)h(co)s(de.)41
+b(The)30 b(full)g(syn)m(tax)h(of)f(a)h Fz(where\(\))d
+FE(statemen)m(t)33 b(is)d(as)h(follo)m(ws:)390 3313 y
+Fz(//)47 b(Single)f(assign)g(\(the)h('elsewhere')e(block)h(is)h
+(optional\))390 3422 y(where\(mask\))533 3532 y(var1=expr1;)390
+3641 y(elsewhere)533 3751 y(var1=expr2;)390 3970 y(//)g(Multiple)f
+(assigns)390 4080 y(where\(mask\){)581 4189 y(var1=expr1;)581
+4299 y(var2=expr2;)581 4408 y(...)390 4518 y(}elsewhere{)581
+4628 y(var1=expr3)581 4737 y(var2=expr4)581 4847 y(var3=expr5;)581
+4956 y(...)390 5066 y(})225 5230 y FB(\017)60 b FE(The)26
 b(only)h(expression)g(allo)m(w)m(ed)h(in)f(the)g(predicate)g(of)g(a)h
 (where)e(is)h(assign,)h(i.e.,)h('v)-5 b(ar=expr'.)39
-b(This)330 4183 y(assign)28 b(di\013ers)f(from)h(a)g(regular)g
-Fy(ncap2)e FD(assign.)40 b(The)28 b(LHS)f(v)-5 b(ar)28
-b(m)m(ust)f(already)i(exist)f(in)g(Input)e(or)330 4292
-y(Output.)47 b(The)32 b(RHS)h(expression)f(m)m(ust)h(ev)-5
-b(aluate)34 b(to)g(a)f(scalar)h(or)f(a)g(v)-5 b(ariable/attribute)35
-b(of)e(the)330 4402 y(same)e(size)g(as)g(the)f(LHS)g(v)-5
-b(ariable.)225 4532 y FA(\017)60 b FD(Consider)34 b(when)g(b)s(oth)g
+b(This)330 5340 y(assign)28 b(di\013ers)f(from)h(a)g(regular)g
+Fz(ncap2)e FE(assign.)40 b(The)28 b(LHS)f(v)-5 b(ar)28
+b(m)m(ust)f(already)i(exist)f(in)g(Input)e(or)p eop end
+%%Page: 135 141
+TeXDict begin 135 140 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(135)330 299 y(Output.)47
+b(The)32 b(RHS)h(expression)f(m)m(ust)h(ev)-5 b(aluate)34
+b(to)g(a)f(scalar)h(or)f(a)g(v)-5 b(ariable/attribute)35
+b(of)e(the)330 408 y(same)e(size)g(as)g(the)f(LHS)g(v)-5
+b(ariable.)225 547 y FB(\017)60 b FE(Consider)34 b(when)g(b)s(oth)g
 (the)h(LHS)f(and)g(RHS)h(are)g(v)-5 b(ariables:)50 b(F)-8
-b(or)36 b(ev)m(ery)f(elemen)m(t)i(where)d(mask)330 4642
+b(or)36 b(ev)m(ery)f(elemen)m(t)i(where)d(mask)330 657
 y(condition)29 b(is)g(T)-8 b(rue,)28 b(the)h(corresp)s(onding)e(LHS)h
 (v)-5 b(ariable)29 b(elemen)m(t)h(is)f(re-assigned)g(to)g(its)g
-(partner)330 4751 y(elemen)m(t)e(on)e(the)h(RHS.)f(In)g(the)g
-(elsewhere)h(part)f(the)h(mask)f(is)h(logically)i(in)m(v)m(erted)e(and)
-f(the)h(assign)330 4861 y(pro)s(cess)k(pro)s(ceeds)g(as)h(b)s(efore.)
-225 4991 y FA(\017)60 b FD(If)30 b(the)h(mask)g(dimensions)f(are)h(a)g
+(partner)330 766 y(elemen)m(t)e(on)e(the)h(RHS.)f(In)g(the)g(elsewhere)
+h(part)f(the)h(mask)f(is)h(logically)i(in)m(v)m(erted)e(and)f(the)h
+(assign)330 876 y(pro)s(cess)k(pro)s(ceeds)g(as)h(b)s(efore.)225
+1015 y FB(\017)60 b FE(If)30 b(the)h(mask)g(dimensions)f(are)h(a)g
 (subset)f(of)h(the)g(LHS)f(v)-5 b(ariable's)31 b(dimensions,)g(then)f
-(it)h(is)g(made)330 5100 y(to)g(conform;)g(if)f(it)h(cannot)g(b)s(e)f
+(it)h(is)g(made)330 1124 y(to)g(conform;)g(if)f(it)h(cannot)g(b)s(e)f
 (made)g(to)h(conform)f(then)g(script)h(execution)g(halts.)225
-5230 y FA(\017)60 b FD(Missing)36 b(v)-5 b(alues)35 b(in)g(the)h(mask)f
+1263 y FB(\017)60 b FE(Missing)36 b(v)-5 b(alues)35 b(in)g(the)h(mask)f
 (ev)-5 b(aluate)37 b(to)f(F)-8 b(alse)37 b(in)e(the)h(where)f(co)s
-(de/blo)s(c)m(k)h(statemen)m(t)i(and)330 5340 y(to)32
+(de/blo)s(c)m(k)h(statemen)m(t)i(and)330 1373 y(to)32
 b(T)-8 b(rue)31 b(in)g(the)g(elsewhere)h(blo)s(c)m(k/statemen)m(t.)47
 b(LHS)31 b(v)-5 b(ariable)32 b(elemen)m(ts)g(set)g(to)g(missing)f(v)-5
-b(alue)p eop end
-%%Page: 123 129
-TeXDict begin 123 128 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(123)330
-299 y(are)40 b(not)g(re-assigned.)68 b(F)-8 b(or)41 b(these)f(reasons,)
-i(do)d(not)h(explicitly)h(reference)f(missing)f(v)-5
-b(alues)40 b(in)330 408 y(the)27 b(masking)f(condition,)i(e.g.,)h
-Fy(where\(foo=foo.get_missing)o(\(\)\))24 b(foo=1;)h
-FD(will)h(not)h(w)m(ork)g(as)330 518 y(exp)s(ected.)275
-707 y(Example:)114 b(Consider)67 b(the)h(v)-5 b(ariables)68
-b Fy(float)29 b(lon_2D_rct\(lat,lon\);)61 b FD(and)67
-b Fy(float)29 b(var_)150 816 y(msk\(lat,lon\);)p FD(.)76
+b(alue)330 1482 y(are)40 b(not)g(re-assigned.)68 b(F)-8
+b(or)41 b(these)f(reasons,)i(do)d(not)h(explicitly)h(reference)f
+(missing)f(v)-5 b(alues)40 b(in)330 1592 y(the)27 b(masking)f
+(condition,)i(e.g.,)h Fz(where\(foo=foo.get_missing)o(\(\)\))24
+b(foo=1;)h FE(will)h(not)h(w)m(ork)g(as)330 1701 y(exp)s(ected.)275
+1894 y(Example:)114 b(Consider)67 b(the)h(v)-5 b(ariables)68
+b Fz(float)29 b(lon_2D_rct\(lat,lon\);)61 b FE(and)67
+b Fz(float)29 b(var_)150 2004 y(msk\(lat,lon\);)p FE(.)76
 b(Supp)s(ose)42 b(w)m(e)h(wish)g(to)h(m)m(ultiply)g(b)m(y)f(t)m(w)m(o)i
-(the)e(elemen)m(ts)i(for)e(whic)m(h)g Fy(var_msk)150
-926 y FD(equals)31 b(1:)390 1088 y Fy(where\(var_msk==1\))43
-b(lon_2D_rct=2*lon_2D_rct;)275 1249 y FD(Supp)s(ose)23
+(the)e(elemen)m(ts)i(for)e(whic)m(h)g Fz(var_msk)150
+2114 y FE(equals)31 b(1:)390 2277 y Fz(where\(var_msk==1\))43
+b(lon_2D_rct=2*lon_2D_rct;)275 2441 y FE(Supp)s(ose)23
 b(that)k(w)m(e)f(ha)m(v)m(e)h(the)f(v)-5 b(ariable)26
-b Fy(int)k(RDM\(time\))23 b FD(and)i(that)h(w)m(e)g(w)m(an)m(t)h(to)f
-(set)h(its)f(v)-5 b(alues)26 b(less)150 1359 y(than)k(8)h(or)f(greater)
-i(than)e(80)h(to)g(0)q(:)390 1521 y Fy(where\(RDM)45
-b(<)j(8)f(||)g(RDM)g(>)h(80\))f(RDM=0;)275 1682 y FD(Consider)2862
-b(irregu-)150 1792 y(larly)39 b(gridded)e(data,)42 b(describ)s(ed)37
-b(using)h(rank)30 b(2)39 b(co)s(ordinates:)57 b Fy(double)29
-b(lat\(south_north,east_)150 1902 y(west\))p FD(,)c Fy(double)k
-(lon\(south_north,east_wes)o(t\))p FD(,)20 b Fy(double)29
-b(temperature\(south_north,)o(east)o(_)150 2011 y(west\))p
-FD(.)59 b(This)36 b(t)m(yp)s(e)h(of)g(structure)f(is)h(often)h(found)d
+b Fz(int)k(RDM\(time\))23 b FE(and)i(that)h(w)m(e)g(w)m(an)m(t)h(to)f
+(set)h(its)f(v)-5 b(alues)26 b(less)150 2550 y(than)k(8)h(or)f(greater)
+i(than)e(80)h(to)g(0)q(:)390 2714 y Fz(where\(RDM)45
+b(<)j(8)f(||)g(RDM)g(>)h(80\))f(RDM=0;)275 2878 y FE(Consider)2862
+b(irregu-)150 2987 y(larly)39 b(gridded)e(data,)42 b(describ)s(ed)37
+b(using)h(rank)30 b(2)39 b(co)s(ordinates:)57 b Fz(double)29
+b(lat\(south_north,east_)150 3097 y(west\))p FE(,)c Fz(double)k
+(lon\(south_north,east_wes)o(t\))p FE(,)20 b Fz(double)29
+b(temperature\(south_north,)o(east)o(_)150 3207 y(west\))p
+FE(.)59 b(This)36 b(t)m(yp)s(e)h(of)g(structure)f(is)h(often)h(found)d
 (in)i(regional)h(w)m(eather/climate)i(mo)s(del)d(\(suc)m(h)g(as)150
-2121 y FC(WRF)p FD(\))h(output,)i(and)d(in)g(satellite)j(sw)m(ath)e
+3316 y FD(WRF)p FE(\))h(output,)i(and)d(in)g(satellite)j(sw)m(ath)e
 (data.)63 b(F)-8 b(or)38 b(this)f(reason)h(w)m(e)g(call)h(it)f(\\Sw)m
-(ath-lik)m(e)i(Data",)150 2230 y(or)e FC(SLD)p FD(.)66
+(ath-lik)m(e)i(Data",)150 3426 y(or)e FD(SLD)p FE(.)66
 b(T)-8 b(o)39 b(\014nd)e(the)h(a)m(v)m(erage)j(temp)s(erature)e(in)f(a)
-h(region)g(b)s(ounded)d(b)m(y)i([)p Fz(lat)p 3006 2230
-28 4 v 42 w(min)p FD(,)p Fz(lat)p 3330 2230 V 40 w(max)6
-b FD(])40 b(and)150 2340 y([)p Fz(lon)p 302 2340 V 40
-w(min)p FD(,)p Fz(lon)p 640 2340 V 40 w(max)6 b FD(]:)390
-2502 y Fy(temperature_msk[$south_n)o(orth)o(,$ea)o(st_)o(west)o(]=0.)o
-(0;)390 2611 y(where\(\(lat)45 b(>=)i(lat_min)f(&&)h(lat)g(<=)g
+h(region)g(b)s(ounded)d(b)m(y)i([)p FA(lat)p 3006 3426
+28 4 v 42 w(min)p FE(,)p FA(lat)p 3330 3426 V 40 w(max)6
+b FE(])40 b(and)150 3535 y([)p FA(lon)p 302 3535 V 40
+w(min)p FE(,)p FA(lon)p 640 3535 V 40 w(max)6 b FE(]:)390
+3699 y Fz(temperature_msk[$south_n)o(orth)o(,$ea)o(st_)o(west)o(]=0.)o
+(0;)390 3809 y(where\(\(lat)45 b(>=)i(lat_min)f(&&)h(lat)g(<=)g
 (lat_max\))f(&&)h(\(lon)g(>=)g(lon_min)f(&&)h(lon)g(<=)g(lon_max\)\))
-485 2721 y(temperature_msk=temperatur)o(e;)390 2830 y(elsewhere)485
-2940 y(temperature_msk=temperatur)o(e at _F)o(ill)o(Valu)o(e;)390
-3159 y(temp_avg=temperature_msk)o(.avg)o(\(\);)390 3269
-y(temp_max=temperature.max)o(\(\);)275 3430 y FD(F)-8
+485 3918 y(temperature_msk=temperatur)o(e;)390 4028 y(elsewhere)485
+4137 y(temperature_msk=temperatur)o(e at _F)o(ill)o(Valu)o(e;)390
+4357 y(temp_avg=temperature_msk)o(.avg)o(\(\);)390 4466
+y(temp_max=temperature.max)o(\(\);)275 4630 y FE(F)-8
 b(or)24 b(North)f(American)h(Regional)h(Reanalysis)g(\()p
-FC(NARR)p FD(\))f(data)h(\(example)f(dataset)h(\()p Fy(http://dust.)150
-3540 y(ess.uci.edu/diwg/narr_uw)o(nd.1)o(9960)o(5.n)o(c)p
-FD(\)\))g(the)31 b(pro)s(cedure)e(lo)s(oks)i(lik)m(e)g(this)390
-3702 y Fy(ncap2)46 b(-O)i(-v)f(-S)g(~/narr.nco)e
+FD(NARR)p FE(\))f(data)h(\(example)f(dataset)h(\()p Fz(http://dust.)150
+4739 y(ess.uci.edu/diwg/narr_uw)o(nd.1)o(9960)o(5.n)o(c)p
+FE(\)\))g(the)31 b(pro)s(cedure)e(lo)s(oks)i(lik)m(e)g(this)390
+4903 y Fz(ncap2)46 b(-O)i(-v)f(-S)g(~/narr.nco)e
 (${DATA}/hdf/narr_uwnd.19)o(9605)o(.nc)c(~/foo.nc)275
-3863 y FD(where)29 b Fy(narr.nco)g FD(is)h(an)g Fy(ncap2)f
-FD(script)h(lik)m(e)i(this:)390 4025 y Fy(/*)47 b(North)g(American)e
-(Regional)h(Reanalysis)f(\(NARR\))h(Statistics)533 4134
+5067 y FE(where)29 b Fz(narr.nco)g FE(is)h(an)g Fz(ncap2)f
+FE(script)h(lik)m(e)i(this:)390 5230 y Fz(/*)47 b(North)g(American)e
+(Regional)h(Reanalysis)f(\(NARR\))h(Statistics)533 5340
 y(NARR)h(stores)f(grids)g(with)h(2-D)g(latitude)e(and)i(longitude,)e
-(aka)i(Swath-like)e(Data)i(\(SLD\))533 4244 y(Here)g(we)g(work)g(with)f
-(three)h(variables:)533 4354 y(lat\(y,x\),)e(lon\(y,x\),)h(and)h
-(uwnd\(time,level,y,x\);)533 4463 y(To)g(study)g(sub-regions)d(of)k
-(SLD,)e(we)h(use)g(masking)f(techniques:)533 4573 y(1.)h(Define)f(mask)
-h(as)g(zero)g(times)f(variable)g(to)h(be)g(masked)676
-4682 y(Then)g(mask)g(automatically)d(inherits)h(variable)h(attributes)
-676 4792 y(And)h(average)f(below)g(will)h(inherit)f(mask)h(attributes)
-533 4902 y(2.)g(Optionally,)e(create)h(mask)h(as)g(RAM)g(variable)e
-(\(as)i(below)g(with)f(asterisk)g(*\))676 5011 y(NCO)h(does)g(not)g
-(write)f(RAM)h(variable)f(to)h(output)676 5121 y(Masks)g(are)g(often)f
+(aka)i(Swath-like)e(Data)i(\(SLD\))p eop end
+%%Page: 136 142
+TeXDict begin 136 141 bop 150 -116 a FE(136)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)533 299 y Fz(Here)47 b(we)g(work)g(with)f
+(three)h(variables:)533 408 y(lat\(y,x\),)e(lon\(y,x\),)h(and)h
+(uwnd\(time,level,y,x\);)533 518 y(To)g(study)g(sub-regions)d(of)k
+(SLD,)e(we)h(use)g(masking)f(techniques:)533 628 y(1.)h(Define)f(mask)h
+(as)g(zero)g(times)f(variable)g(to)h(be)g(masked)676
+737 y(Then)g(mask)g(automatically)d(inherits)h(variable)h(attributes)
+676 847 y(And)h(average)f(below)g(will)h(inherit)f(mask)h(attributes)
+533 956 y(2.)g(Optionally,)e(create)h(mask)h(as)g(RAM)g(variable)e
+(\(as)i(below)g(with)f(asterisk)g(*\))676 1066 y(NCO)h(does)g(not)g
+(write)f(RAM)h(variable)f(to)h(output)676 1176 y(Masks)g(are)g(often)f
 (unwanted,)f(and)i(can)g(be)g(big,)g(so)g(this)g(speeds)f(execution)533
-5230 y(3.)h(Example)f(could)h(be)g(extended)e(to)i(preserve)f(mean)h
-(lat)g(and)f(lon)h(of)h(sub-region)676 5340 y(Follow)e(uwnd)h(example)f
+1285 y(3.)h(Example)f(could)h(be)g(extended)e(to)i(preserve)f(mean)h
+(lat)g(and)f(lon)h(of)h(sub-region)676 1395 y(Follow)e(uwnd)h(example)f
 (to)h(do)g(this:)g(lat_msk=0.0*lat)c(...)k(lat_avg=lat.avg\($y,$x\))42
-b(*/)p eop end
-%%Page: 124 130
-TeXDict begin 124 129 bop 150 -116 a FD(124)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(*uwnd_msk=0.0*uwnd;)390
-408 y(where\(\(lat)45 b(>=)i(35.6)g(&&)g(lat)g(<=)g(37.0\))f(&&)i
-(\(lon)e(>=)h(-100.5)g(&&)g(lon)g(<=)g(-99.0\)\))485
-518 y(uwnd_msk=uwnd;)390 628 y(elsewhere)485 737 y
-(uwnd_msk=uwnd at _FillValue;)390 956 y(//)g(Average)f(only)h(over)f
-(horizontal)f(dimensions)g(x)j(and)f(y)g(\(preserve)e(level)i(and)g
-(time\))390 1066 y(uwnd_avg=uwnd_msk.avg\($y)o(,$x\))o(;)275
-1225 y FD(Stripp)s(ed)25 b(of)i(commen)m(ts)h(and)e(formatting,)j(this)
+b(*/)390 1504 y(*uwnd_msk=0.0*uwnd;)390 1614 y(where\(\(lat)j(>=)i
+(35.6)g(&&)g(lat)g(<=)g(37.0\))f(&&)i(\(lon)e(>=)h(-100.5)g(&&)g(lon)g
+(<=)g(-99.0\)\))485 1724 y(uwnd_msk=uwnd;)390 1833 y(elsewhere)485
+1943 y(uwnd_msk=uwnd at _FillValue;)390 2162 y(//)g(Average)f(only)h(over)
+f(horizontal)f(dimensions)g(x)j(and)f(y)g(\(preserve)e(level)i(and)g
+(time\))390 2271 y(uwnd_avg=uwnd_msk.avg\($y)o(,$x\))o(;)275
+2431 y FE(Stripp)s(ed)25 b(of)i(commen)m(ts)h(and)e(formatting,)j(this)
 e(example)h(is)f(a)h(three-statemen)m(t)h(script)e(executed)150
-1335 y(b)m(y)32 b(a)h(one-line)g(command.)46 b FC(NCO)32
-b FD(needs)f(only)i(this)f(meagre)h(input)e(to)i(unpac)m(k)f(and)g(cop)
-m(y)h(the)f(input)150 1445 y(data)45 b(and)f(attributes,)k(compute)d
+2540 y(b)m(y)32 b(a)h(one-line)g(command.)46 b FD(NCO)32
+b FE(needs)f(only)i(this)f(meagre)h(input)e(to)i(unpac)m(k)f(and)g(cop)
+m(y)h(the)f(input)150 2650 y(data)45 b(and)f(attributes,)k(compute)d
 (the)g(statistics,)50 b(and)43 b(then)h(de\014ne)g(and)g(write)g(the)h
-(output)f(\014le.)150 1554 y(Unless)32 b(the)g(commen)m(ts)h(p)s(oin)m
-(ted)f(out)g(that)h(wind)e(v)-5 b(ariable)33 b(\()p Fy(uwnd)p
-FD(\))e(w)m(as)i(four-dimensional)e(and)h(the)150 1664
+(output)f(\014le.)150 2760 y(Unless)32 b(the)g(commen)m(ts)h(p)s(oin)m
+(ted)f(out)g(that)h(wind)e(v)-5 b(ariable)33 b(\()p Fz(uwnd)p
+FE(\))e(w)m(as)i(four-dimensional)e(and)h(the)150 2869
 y(latitude/longitude)e(grid)d(v)-5 b(ariables)28 b(w)m(ere)g(b)s(oth)f
 (t)m(w)m(o-dimensional,)j(there)e(w)m(ould)f(b)s(e)g(no)h(w)m(a)m(y)g
-(to)g(tell.)150 1773 y(This)37 b(sho)m(ws)h(ho)m(w)f
-FC(NCO)h FD(hides)f(from)g(the)h(user)f(the)h(complexit)m(y)i(of)e
-(analyzing)h(m)m(ulti-dimensional)150 1883 y FC(SLD)p
-FD(.)i(W)-8 b(e)32 b(plan)e(to)h(extend)f(suc)m(h)g FC(SLD)h
-FD(features)g(to)g(more)f(op)s(erators)h(so)s(on.)150
-2075 y Fu(4.1.14)63 b(Lo)s(ops)150 2222 y Fy(ncap2)34
-b FD(supplies)g Fy(for\(\))g FD(lo)s(ops)h(and)g Fy(while\(\))e
-FD(lo)s(ops.)55 b(They)35 b(are)h(completely)h(unoptimized)e(so)g(use)
-150 2331 y(them)30 b(only)g(with)g FC(RAM)g FD(v)-5 b(ariables)30
+(to)g(tell.)150 2979 y(This)37 b(sho)m(ws)h(ho)m(w)f
+FD(NCO)h FE(hides)f(from)g(the)h(user)f(the)h(complexit)m(y)i(of)e
+(analyzing)h(m)m(ulti-dimensional)150 3088 y FD(SLD)p
+FE(.)i(W)-8 b(e)32 b(plan)e(to)h(extend)f(suc)m(h)g FD(SLD)h
+FE(features)g(to)g(more)f(op)s(erators)h(so)s(on.)150
+3280 y Fv(4.1.14)63 b(Lo)s(ops)150 3427 y Fz(ncap2)34
+b FE(supplies)g Fz(for\(\))g FE(lo)s(ops)h(and)g Fz(while\(\))e
+FE(lo)s(ops.)55 b(They)35 b(are)h(completely)h(unoptimized)e(so)g(use)
+150 3537 y(them)30 b(only)g(with)g FD(RAM)g FE(v)-5 b(ariables)30
 b(unless)g(y)m(ou)g(w)m(an)m(t)h(thrash)e(y)m(our)h(disk)f(to)i(death.)
-40 b(T)-8 b(o)31 b(break)f(out)g(of)150 2441 y(a)h(lo)s(op)f(use)g(the)
-h Fy(break)e FD(command.)40 b(T)-8 b(o)31 b(iterate)h(to)f(the)g(next)g
-(cycle)g(use)f(the)h Fy(continue)d FD(command.)390 2600
-y Fy(//)47 b(Set)g(elements)f(in)h(variable)e(double)h
-(temp\(time,lat\))390 2710 y(//)h(If)g(element)f(<)i(0)f(set)g(to)g(0,)
-g(if)h(element)d(>)j(100)f(set)g(to)g(100)390 2819 y
-(*sz_idx=$time.size;)390 2929 y(*sz_jdx=$lat.size;)390
-3148 y(for\(*idx=0;idx<sz_idx;id)o(x++\))485 3258 y
-(for\(*jdx=0;jdx<sz_jdx;jdx+)o(+\))581 3367 y(if\(temp\(idx,jdx\))c(>)
-48 b(100\))e(temp\(idx,jdx\)=100.0;)676 3477 y(else)h
+40 b(T)-8 b(o)31 b(break)f(out)g(of)150 3646 y(a)h(lo)s(op)f(use)g(the)
+h Fz(break)e FE(command.)40 b(T)-8 b(o)31 b(iterate)h(to)f(the)g(next)g
+(cycle)g(use)f(the)h Fz(continue)d FE(command.)390 3806
+y Fz(//)47 b(Set)g(elements)f(in)h(variable)e(double)h
+(temp\(time,lat\))390 3915 y(//)h(If)g(element)f(<)i(0)f(set)g(to)g(0,)
+g(if)h(element)d(>)j(100)f(set)g(to)g(100)390 4025 y
+(*sz_idx=$time.size;)390 4134 y(*sz_jdx=$lat.size;)390
+4354 y(for\(*idx=0;idx<sz_idx;id)o(x++\))485 4463 y
+(for\(*jdx=0;jdx<sz_jdx;jdx+)o(+\))581 4573 y(if\(temp\(idx,jdx\))c(>)
+48 b(100\))e(temp\(idx,jdx\)=100.0;)676 4682 y(else)h
 (if\(temp\(idx,jdx\))c(<)48 b(0\))f(temp\(idx,jdx\)=0.0;)390
-3696 y(//)g(Are)g(values)f(of)h(co-ordinate)e(variable)h(double)g
-(lat\(lat\))f(monotonic?)390 3806 y(*sz=$lat.size;)390
-4025 y(for\(*idx=1;idx<sz;idx++\))485 4134 y
-(if\(lat\(idx\)-lat\(idx-1\))d(<)48 b(0.0\))e(break;)390
-4354 y(if\(idx)g(==)h(sz\))g(print\("lat)e(co-ordinate)g(is)i
-(monotonic\\n"\);)533 4463 y(else)g(print\("lat)e(co-ordinate)g(is)i
-(NOT)g(monotonic\\n"\);)390 4682 y(//)g(Sum)g(odd)g(elements)390
-4792 y(*idx=0;)390 4902 y(*sz=$lat_nw.size;)390 5011
-y(*sum=0.0;)390 5230 y(while\(idx<sz\){)485 5340 y
-(if\(lat\(idx\)\0452\))d(sum+=lat\(idx\);)p eop end
-%%Page: 125 131
-TeXDict begin 125 130 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(125)485
-299 y Fy(idx++;)390 408 y(})390 628 y(ram_write\(sum\);)390
-737 y(print\("Total)44 b(of)k(odd)f(elements)e
-("\);print\(sum\);print\("\\n"\))o(;)150 956 y Fu(4.1.15)63
-b(Include)41 b(\014les)150 1103 y FD(The)30 b(syn)m(tax)h(of)f(an)h
-Fz(include-\014le)k FD(is:)390 1271 y Fy(#include)46
-b("script.nco")275 1440 y FD(The)24 b(script)i(\014lename)f(is)g(searc)
+4902 y(//)g(Are)g(values)f(of)h(co-ordinate)e(variable)h(double)g
+(lat\(lat\))f(monotonic?)390 5011 y(*sz=$lat.size;)390
+5230 y(for\(*idx=1;idx<sz;idx++\))485 5340 y
+(if\(lat\(idx\)-lat\(idx-1\))d(<)48 b(0.0\))e(break;)p
+eop end
+%%Page: 137 143
+TeXDict begin 137 142 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(137)390 408 y Fz(if\(idx)46
+b(==)h(sz\))g(print\("lat)e(co-ordinate)g(is)i(monotonic\\n"\);)533
+518 y(else)g(print\("lat)e(co-ordinate)g(is)i(NOT)g(monotonic\\n"\);)
+390 737 y(//)g(Sum)g(odd)g(elements)390 847 y(*idx=0;)390
+956 y(*sz=$lat_nw.size;)390 1066 y(*sum=0.0;)390 1285
+y(while\(idx<sz\){)485 1395 y(if\(lat\(idx\)\0452\))d(sum+=lat\(idx\);)
+485 1504 y(idx++;)390 1614 y(})390 1833 y(ram_write\(sum\);)390
+1943 y(print\("Total)g(of)k(odd)f(elements)e
+("\);print\(sum\);print\("\\n"\))o(;)150 2139 y Fv(4.1.15)63
+b(Include)41 b(\014les)150 2286 y FE(The)30 b(syn)m(tax)h(of)f(an)h
+FA(include-\014le)k FE(is:)390 2446 y Fz(#include)46
+b("script.nco")275 2605 y FE(The)24 b(script)i(\014lename)f(is)g(searc)
 m(hed)h(relativ)m(e)i(to)e(the)f(run)f(directory)-8 b(.)40
 b(It)26 b(is)f(p)s(ossible)g(to)h(nest)f(include)150
-1550 y(\014les)36 b(to)i(an)e(arbitrary)g(depth.)59 b(A)36
+2715 y(\014les)36 b(to)i(an)e(arbitrary)g(depth.)59 b(A)36
 b(handy)g(use)g(of)g(inlcude)h(\014les)f(is)h(to)g(store)g(often)g
-(used)f(constan)m(ts.)150 1660 y(Use)31 b FC(RAM)g FD(v)-5
+(used)f(constan)m(ts.)150 2824 y(Use)31 b FD(RAM)g FE(v)-5
 b(ariables)31 b(if)f(y)m(ou)h(do)f(not)g(w)m(an)m(t)i(these)f(constan)m
-(ts)g(written)f(to)i Fz(output-\014le)p FD(.)390 1829
-y Fy(//)47 b(script.nco)390 1938 y(//)g(Sample)f(file)h(to)g(#include)f
-(in)h(ncap2)f(script)390 2048 y(*pi=3.1415926535;)d(//)k(RAM)g
-(variable,)e(not)i(written)f(to)h(output)390 2157 y(*h=6.62607095e-34;)
+(ts)g(written)f(to)i FA(output-\014le)p FE(.)390 2984
+y Fz(//)47 b(script.nco)390 3093 y(//)g(Sample)f(file)h(to)g(#include)f
+(in)h(ncap2)f(script)390 3203 y(*pi=3.1415926535;)d(//)k(RAM)g
+(variable,)e(not)i(written)f(to)h(output)390 3313 y(*h=6.62607095e-34;)
 c(//)k(RAM)g(variable,)e(not)i(written)f(to)h(output)390
-2267 y(e=2.71828;)e(//)i(Regular)f(\(disk\))g(variable,)f(written)h(to)
-h(output)150 2485 y Fu(4.1.16)63 b Fl(sort)41 b Fu(metho)s(ds)150
-2632 y FD(In)35 b FC(ncap2)g FD(there)i(are)f(m)m(ultiple)h(w)m(a)m(ys)
-g(to)f(sort)h(data.)58 b(Beginning)37 b(with)e FC(NCO)h
-FD(4.1.0)i(\(Marc)m(h,)h(2012\),)150 2742 y FC(ncap2)29
-b FD(supp)s(ort)g(six)h(sorting)h(functions:)390 2911
-y Fy(var_out=sort\(var_in,&srt)o(_map)o(\);)42 b(//)47
-b(Ascending)e(sort)390 3020 y(var_out=asort\(var_in,&sr)o(t_ma)o(p\);)c
-(//)47 b(Accending)f(sort)390 3130 y(var_out=dsort\(var_in,&sr)o(t_ma)o
-(p\);)41 b(//)47 b(Desending)f(sort)390 3240 y
+3422 y(e=2.71828;)e(//)i(Regular)f(\(disk\))g(variable,)f(written)h(to)
+h(output)150 3619 y Fv(4.1.16)63 b Fm(sort)41 b Fv(metho)s(ds)150
+3766 y FE(In)35 b FD(ncap2)g FE(there)i(are)f(m)m(ultiple)h(w)m(a)m(ys)
+g(to)f(sort)h(data.)58 b(Beginning)37 b(with)e FD(NCO)h
+FE(4.1.0)i(\(Marc)m(h,)h(2012\),)150 3875 y FD(ncap2)29
+b FE(supp)s(ort)g(six)h(sorting)h(functions:)390 4035
+y Fz(var_out=sort\(var_in,&srt)o(_map)o(\);)42 b(//)47
+b(Ascending)e(sort)390 4144 y(var_out=asort\(var_in,&sr)o(t_ma)o(p\);)c
+(//)47 b(Accending)f(sort)390 4254 y(var_out=dsort\(var_in,&sr)o(t_ma)o
+(p\);)41 b(//)47 b(Desending)f(sort)390 4364 y
 (var_out=remap\(var_in,srt)o(_map)o(\);)c(//)47 b(Apply)f(srt_map)g(to)
-h(var_in)390 3349 y(var_out=unmap\(var_in,srt)o(_map)o(\);)42
+h(var_in)390 4473 y(var_out=unmap\(var_in,srt)o(_map)o(\);)42
 b(//)47 b(Reverse)f(what)g(srt_map)g(did)h(to)g(var_in)390
-3459 y(dsr_map=invert_map\(srt_m)o(ap\);)41 b(//)47 b(Produce)f
-("de-sort")f(map)i(that)g(inverts)f(srt_map)275 3628
-y FD(The)25 b(\014rst)f(t)m(w)m(o)j(functions,)f Fy(sort\(\))e
-FD(and)h Fy(asort\(\))f FD(sort,)j(in)e(ascending)h(order,)g(all)g(the)
-g(elemen)m(ts)h(of)150 3737 y Fz(v)-5 b(ar)p 280 3737
-28 4 v 40 w(in)30 b FD(\(whic)m(h)h(can)g(b)s(e)g(a)g(v)-5
+4583 y(dsr_map=invert_map\(srt_m)o(ap\);)41 b(//)47 b(Produce)f
+("de-sort")f(map)i(that)g(inverts)f(srt_map)275 4742
+y FE(The)25 b(\014rst)f(t)m(w)m(o)j(functions,)f Fz(sort\(\))e
+FE(and)h Fz(asort\(\))f FE(sort,)j(in)e(ascending)h(order,)g(all)g(the)
+g(elemen)m(ts)h(of)150 4852 y FA(v)-5 b(ar)p 280 4852
+28 4 v 40 w(in)30 b FE(\(whic)m(h)h(can)g(b)s(e)g(a)g(v)-5
 b(ariable)31 b(or)g(attribute\))h(without)f(regard)g(to)g(an)m(y)g
-(dimensions.)41 b(The)31 b(third)150 3847 y(function,)g
-Fy(dsort\(\))d FD(do)s(es)i(the)h(same)g(but)f(sorts)h(in)f(descending)
+(dimensions.)41 b(The)31 b(third)150 4961 y(function,)g
+Fz(dsort\(\))d FE(do)s(es)i(the)h(same)g(but)f(sorts)h(in)f(descending)
 g(order.)41 b(Remem)m(b)s(er)30 b(that)i(ascending)150
-3956 y(and)e(descending)g(sorts)g(are)h(sp)s(eci\014ed)f(b)m(y)g
-Fy(asort\(\))e FD(and)i Fy(dsort\(\))p FD(,)f(resp)s(ectiv)m(ely)-8
-b(.)275 4125 y(These)26 b(three)h(functions)f(are)i(o)m(v)m(erloaded)g
+5071 y(and)e(descending)g(sorts)g(are)h(sp)s(eci\014ed)f(b)m(y)g
+Fz(asort\(\))e FE(and)i Fz(dsort\(\))p FE(,)f(resp)s(ectiv)m(ely)-8
+b(.)275 5230 y(These)26 b(three)h(functions)f(are)i(o)m(v)m(erloaded)g
 (to)g(tak)m(e)g(a)g(second,)f(optional)h(argumen)m(t)g(called)g(the)f
-(sort)150 4235 y(map)33 b Fz(srt)p 468 4235 V 40 w(map)p
-FD(,)h(whic)m(h)f(should)f(b)s(e)g(supplied)g(as)i(a)f(call-b)m
-(y-reference)j(v)-5 b(ariable,)35 b(i.e.,)g(preceded)e(with)150
-4345 y(an)g(amp)s(ersand.)46 b(If)32 b(the)h(sort)g(map)g(do)s(es)f
-(not)h(y)m(et)h(exist,)g(then)f(it)g(will)g(b)s(e)f(created)i(and)e
-(returned)g(as)150 4454 y(an)e(in)m(teger)i(t)m(yp)s(e)f(the)f(same)h
-(shap)s(e)e(as)i(the)g(input)e(v)-5 b(ariable.)275 4623
-y(The)34 b(output)g Fz(v)-5 b(ar)p 898 4623 V 40 w(out)37
-b FD(of)e(eac)m(h)h(sort)f(function)g(is)g(a)g(sorted)g(v)m(ersion)g
-(of)g(the)g(input,)h Fz(v)-5 b(ar)p 3405 4623 V 40 w(in)p
-FD(.)53 b(The)150 4733 y(output)33 b Fz(v)-5 b(ar)p 581
-4733 V 40 w(out)36 b FD(of)d(the)h(t)m(w)m(o)h(mapping)d(functions)h
-(the)h(result)f(of)h(applying)f(\(with)h Fy(remap\(\))d
-FD(or)j(un-)150 4842 y(applying)29 b(\(with)g Fy(unmap\(\))p
-FD(\))f(the)h(sort)h(map)f Fz(srt)p 1811 4842 V 40 w(map)i
-FD(to)f(the)g(input)e Fz(v)-5 b(ar)p 2685 4842 V 40 w(in)p
-FD(.)40 b(T)-8 b(o)30 b(apply)e(the)i(sort)f(map)150
-4952 y(with)g Fy(remap\(\))f FD(the)h(size)i(of)e(the)h(v)-5
-b(ariable)30 b(m)m(ust)g(b)s(e)f(exactly)i(divisible)f(b)m(y)f(the)h
-(size)g(of)g(the)f(sort)h(map.)275 5121 y(The)d(\014nal)g(function)h
-Fy(invert_map\(\))d FD(returns)h(the)i(so-called)i(de-sorting)e(map)g
-Fz(dsr)p 3196 5121 V 39 w(map)i FD(whic)m(h)e(is)150
-5230 y(in)m(v)m(erse)j(map)f(of)g(the)h(input)e(map)h
-Fz(srt)p 1470 5230 V 40 w(map)p FD(.)40 b(This)29 b(giv)m(es)j(the)e
-(user)g(access)h(to)g(b)s(oth)f(the)g(forw)m(ard)g(and)150
-5340 y(in)m(v)m(erse)h(sorting)g(maps)f(whic)m(h)g(can)h(b)s(e)e
-(useful)h(in)g(sp)s(ecial)h(situations.)p eop end
-%%Page: 126 132
-TeXDict begin 126 131 bop 150 -116 a FD(126)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(a1[$time]={10,2,3,4,6,5,)o(7,3,)
-o(4,1})o(;)390 408 y(a1_sort=sort\(a1\);)390 518 y(print\(a1_sort\);)
-390 628 y(//)47 b(1,)g(2,)h(3,)f(3,)g(4,)g(4,)g(5,)g(6,)h(7,)f(10;)390
-847 y(a2[$lon]={2,1,4,3};)390 956 y(a2_sort=sort\(a2,&a2_map\))o(;)390
-1066 y(print\(a2\);)390 1176 y(//)g(1,)g(2,)h(3,)f(4)390
-1285 y(print\(a2_map\);)390 1395 y(//)g(1,)g(0,)h(3,)f(2;)275
-1614 y FD(If)30 b(the)i(map)f(v)-5 b(ariable)32 b(do)s(es)f(not)g
-(exist)h(prior)f(to)h(the)f Fy(sort\(\))f FD(call,)j(then)e(it)h(will)f
-(b)s(e)g(created)h(with)150 1724 y(the)i(same)h(shap)s(e)e(as)h(the)h
+(sort)150 5340 y(map)33 b FA(srt)p 468 5340 V 40 w(map)p
+FE(,)h(whic)m(h)f(should)f(b)s(e)g(supplied)g(as)i(a)f(call-b)m
+(y-reference)j(v)-5 b(ariable,)35 b(i.e.,)g(preceded)e(with)p
+eop end
+%%Page: 138 144
+TeXDict begin 138 143 bop 150 -116 a FE(138)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(an)j(amp)s(ersand.)46
+b(If)32 b(the)h(sort)g(map)g(do)s(es)f(not)h(y)m(et)h(exist,)g(then)f
+(it)g(will)g(b)s(e)f(created)i(and)e(returned)g(as)150
+408 y(an)e(in)m(teger)i(t)m(yp)s(e)f(the)f(same)h(shap)s(e)e(as)i(the)g
+(input)e(v)-5 b(ariable.)275 584 y(The)34 b(output)g
+FA(v)-5 b(ar)p 898 584 28 4 v 40 w(out)37 b FE(of)e(eac)m(h)h(sort)f
+(function)g(is)g(a)g(sorted)g(v)m(ersion)g(of)g(the)g(input,)h
+FA(v)-5 b(ar)p 3405 584 V 40 w(in)p FE(.)53 b(The)150
+693 y(output)33 b FA(v)-5 b(ar)p 581 693 V 40 w(out)36
+b FE(of)d(the)h(t)m(w)m(o)h(mapping)d(functions)h(the)h(result)f(of)h
+(applying)f(\(with)h Fz(remap\(\))d FE(or)j(un-)150 803
+y(applying)29 b(\(with)g Fz(unmap\(\))p FE(\))f(the)h(sort)h(map)f
+FA(srt)p 1811 803 V 40 w(map)i FE(to)f(the)g(input)e
+FA(v)-5 b(ar)p 2685 803 V 40 w(in)p FE(.)40 b(T)-8 b(o)30
+b(apply)e(the)i(sort)f(map)150 913 y(with)g Fz(remap\(\))f
+FE(the)h(size)i(of)e(the)h(v)-5 b(ariable)30 b(m)m(ust)g(b)s(e)f
+(exactly)i(divisible)f(b)m(y)f(the)h(size)g(of)g(the)f(sort)h(map.)275
+1088 y(The)d(\014nal)g(function)h Fz(invert_map\(\))d
+FE(returns)h(the)i(so-called)i(de-sorting)e(map)g FA(dsr)p
+3196 1088 V 39 w(map)i FE(whic)m(h)e(is)150 1198 y(in)m(v)m(erse)j(map)
+f(of)g(the)h(input)e(map)h FA(srt)p 1470 1198 V 40 w(map)p
+FE(.)40 b(This)29 b(giv)m(es)j(the)e(user)g(access)h(to)g(b)s(oth)f
+(the)g(forw)m(ard)g(and)150 1307 y(in)m(v)m(erse)h(sorting)g(maps)f
+(whic)m(h)g(can)h(b)s(e)e(useful)h(in)g(sp)s(ecial)h(situations.)390
+1482 y Fz(a1[$time]={10,2,3,4,6,5,)o(7,3,)o(4,1})o(;)390
+1592 y(a1_sort=sort\(a1\);)390 1702 y(print\(a1_sort\);)390
+1811 y(//)47 b(1,)g(2,)h(3,)f(3,)g(4,)g(4,)g(5,)g(6,)h(7,)f(10;)390
+2030 y(a2[$lon]={2,1,4,3};)390 2140 y(a2_sort=sort\(a2,&a2_map\))o(;)
+390 2250 y(print\(a2\);)390 2359 y(//)g(1,)g(2,)h(3,)f(4)390
+2469 y(print\(a2_map\);)390 2578 y(//)g(1,)g(0,)h(3,)f(2;)275
+2754 y FE(If)30 b(the)i(map)f(v)-5 b(ariable)32 b(do)s(es)f(not)g
+(exist)h(prior)f(to)h(the)f Fz(sort\(\))f FE(call,)j(then)e(it)h(will)f
+(b)s(e)g(created)h(with)150 2863 y(the)i(same)h(shap)s(e)e(as)h(the)h
 (input)e(v)-5 b(ariable)34 b(and)g(b)s(e)f(of)i(t)m(yp)s(e)f
-Fy(NC_INT)p FD(.)50 b(If)34 b(the)g(map)f(v)-5 b(ariable)35
-b(already)150 1833 y(exists,)c(then)e(the)i(only)f(restriction)h(is)e
+Fz(NC_INT)p FE(.)50 b(If)34 b(the)g(map)f(v)-5 b(ariable)35
+b(already)150 2973 y(exists,)c(then)e(the)i(only)f(restriction)h(is)e
 (that)i(it)f(b)s(e)g(of)g(at)g(least)i(the)e(same)g(size)h(as)f(the)g
-(input)f(v)-5 b(ariable.)150 1943 y(T)d(o)31 b(apply)f(a)h(map)f(use)g
-Fy(remap\(var_in,srt_map\))p FD(.)390 2162 y Fy(defdim\("nlat",5\);)390
-2381 y(a3[$lon]={2,5,3,7};)390 2491 y(a4[$nlat,$lon]={)438
-2600 y(1,)47 b(2,)g(3,)g(4,)438 2710 y(5,)g(6,)g(7,)g(8,)438
-2819 y(9,10,11,12,)438 2929 y(13,14,15,16,)438 3039 y(17,18,19,20};)390
-3258 y(a3_sort=sort\(a3,&a3_map\))o(;)390 3367 y(print\(a3_map\);)390
-3477 y(//)g(0,)g(2,)h(1,)f(3;)390 3696 y(a4_sort=remap\(a4,a3_map\))o
-(;)390 3806 y(print\(a4_sort\);)390 3915 y(//)g(1,)g(3,)h(2,)f(4,)390
-4025 y(//)g(5,)g(7,)h(6,)f(8,)390 4134 y(//)g(9,11,10,12,)390
-4244 y(//)g(13,15,14,16,)390 4354 y(//)g(17,19,18,20;)390
-4573 y(a3_map2[$nlat]={4,3,0,2,)o(1};)390 4792 y
-(a4_sort2=remap\(a4,a3_map)o(2\);)390 4902 y(print\(a4_sort2\);)390
-5011 y(//)g(3,)g(5,)h(4,)f(2,)g(1)390 5121 y(//)g(8,)g(10,)g(9,7,)g(6,)
-390 5230 y(//)g(13,15,14,12,11,)390 5340 y(//)g(18,20,19,17,16)p
-eop end
-%%Page: 127 133
-TeXDict begin 127 132 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(127)275
-299 y(As)39 b(in)h(the)g(ab)s(o)m(v)m(e)h(example)f(y)m(ou)g(ma)m(y)g
-(create)i(y)m(our)d(o)m(wn)h(sort)g(map.)69 b(T)-8 b(o)40
-b(sort)g(in)f(descending)150 408 y(order,)30 b(apply)g(the)h
-Fy(reverse\(\))d FD(metho)s(d)h(after)i(the)g Fy(sort\(\))p
-FD(.)275 573 y(Here)22 b(is)f(an)g(extended)h(example)g(of)g(ho)m(w)f
-(to)i(use)e Fy(ncap2)f FD(features)i(to)g(h)m(yp)s(erslab)e(an)i
-(irregular)f(region)150 682 y(based)26 b(on)f(the)h(v)-5
-b(alues)27 b(of)f(a)g(v)-5 b(ariable)27 b(not)f(a)g(co)s(ordinate.)40
-b(The)25 b(distinction)i(is)f(crucial:)39 b(h)m(yp)s(erslabbing)150
-792 y(based)c(on)g(dimensional)h(indices)f(or)g(co)s(ordinate)i(v)-5
-b(alues)35 b(is)h(straigh)m(tforw)m(ard.)56 b(Using)36
-b(the)f(v)-5 b(alues)36 b(of)150 902 y(single)31 b(or)f(m)m
-(ulti-dimensional)i(v)-5 b(ariable)31 b(to)g(de\014ne)f(a)g(h)m(yp)s
-(erslab)g(is)g(quite)h(di\013eren)m(t.)390 1066 y Fy(cat)47
-b(>)g(~/ncap2_foo.nco)d(<<)j('EOF')390 1176 y(//)g(Purpose:)f(Save)g
-(irregular)g(1-D)h(regions)e(based)i(on)g(variable)e(values)390
-1395 y(//)i(Included)f(in)h(NCO)g(User)f(Guide)h(at)g
-(http://nco.sf.net/nco.ht)o(ml#s)o(ort)390 1614 y(/*)g(NB:)g(Single)f
-(quotes)g(around)g(EOF)h(above)g(turn)f(off)h(shell)g(parameter)581
-1724 y(expansion)e(in)i("here)g(documents".)d(This)j(in)g(turn)g
-(prevents)e(the)581 1833 y(need)i(for)f(protecting)f(dollarsign)g
-(characters)g(in)j(NCO)f(scripts)e(with)581 1943 y(backslashes)g(when)h
-(the)h(script)f(is)h(cut-and-pasted)d(\(aka)j("moused"\))581
-2052 y(from)g(an)g(editor)f(or)h(e-mail)f(into)h(a)g(shell)g(console)e
-(window)h(*/)390 2271 y(/*)h(Copy)g(coordinates)e(and)h(variable\(s\))f
-(of)i(interest)f(into)h(RAM)f(variable\(s\))533 2381
-y(Benefits:)533 2491 y(1.)h(ncap2)g(defines)f(writes)g(all)h(variables)
-e(on)i(LHS)g(of)g(expression)e(to)i(disk)676 2600 y(Only)g(exception)e
-(is)i(RAM)g(variables,)e(which)i(are)g(stored)f(in)h(RAM)g(only)676
-2710 y(Repeated)f(operations)f(on)i(regular)f(variables)f(takes)i(more)
-f(time,)676 2819 y(because)g(changes)g(are)h(written)f(to)h(disk)g
-(copy)f(after)h(every)f(change.)676 2929 y(RAM)h(variables)f(are)g
-(only)h(changed)f(in)h(RAM)g(so)g(script)f(works)h(faster)676
-3039 y(RAM)g(variables)f(can)g(be)i(written)d(to)j(disk)e(at)h(end)g
-(with)g(ram_write\(\))533 3148 y(2.)g(Script)f(permutes)g(variables)f
-(of)i(interest)f(during)g(processing)676 3258 y(Safer)h(to)g(work)g
-(with)f(copies)g(that)h(have)g(different)e(names)676
-3367 y(This)i(discourages)e(accidental,)f(mistaken)i(use)h(of)g
-(permuted)f(versions)533 3477 y(3.)h(Makes)g(this)f(script)g(a)i(more)f
-(generic)e(template:)676 3587 y(var_in)h(instead)g(of)h(specific)f
-(variable)g(names)g(everywhere)f(*/)390 3696 y
-(*var_in=one_dmn_rec_var;)390 3806 y(*crd_in=time;)390
-3915 y(*dmn_in_sz=$time.size;)d(//)47 b([nbr])f(Size)h(of)g(input)f
-(arrays)390 4134 y(/*)h(Create)f(all)h(other)g("intermediate")c
-(variables)j(as)h(RAM)g(variables)533 4244 y(to)g(prevent)f(them)h
-(from)f(cluttering)f(the)i(output)f(file.)533 4354 y(Mask)h(flag)f(and)
-h(sort)g(map)g(are)g(same)f(size)h(as)g(variable)f(of)h(interest)f(*/)
-390 4463 y(*msk_flg=var_in;)390 4573 y(*srt_map=var_in;)390
-4792 y(/*)h(In)g(this)g(example)f(we)h(mask)g(for)g(all)f(values)h
-(evenly)f(divisible)f(by)i(3)533 4902 y(This)g(is)g(the)g(key,)g
+(input)f(v)-5 b(ariable.)150 3082 y(T)d(o)31 b(apply)f(a)h(map)f(use)g
+Fz(remap\(var_in,srt_map\))p FE(.)390 3258 y Fz(defdim\("nlat",5\);)390
+3477 y(a3[$lon]={2,5,3,7};)390 3587 y(a4[$nlat,$lon]={)438
+3696 y(1,)47 b(2,)g(3,)g(4,)438 3806 y(5,)g(6,)g(7,)g(8,)438
+3915 y(9,10,11,12,)438 4025 y(13,14,15,16,)438 4134 y(17,18,19,20};)390
+4354 y(a3_sort=sort\(a3,&a3_map\))o(;)390 4463 y(print\(a3_map\);)390
+4573 y(//)g(0,)g(2,)h(1,)f(3;)390 4792 y(a4_sort=remap\(a4,a3_map\))o
+(;)390 4902 y(print\(a4_sort\);)390 5011 y(//)g(1,)g(3,)h(2,)f(4,)390
+5121 y(//)g(5,)g(7,)h(6,)f(8,)390 5230 y(//)g(9,11,10,12,)390
+5340 y(//)g(13,15,14,16,)p eop end
+%%Page: 139 145
+TeXDict begin 139 144 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(139)390 299 y Fz(//)47
+b(17,19,18,20;)390 518 y(a3_map2[$nlat]={4,3,0,2,)o(1};)390
+737 y(a4_sort2=remap\(a4,a3_map)o(2\);)390 847 y(print\(a4_sort2\);)390
+956 y(//)g(3,)g(5,)h(4,)f(2,)g(1)390 1066 y(//)g(8,)g(10,)g(9,7,)g(6,)
+390 1176 y(//)g(13,15,14,12,11,)390 1285 y(//)g(18,20,19,17,16)275
+1468 y FE(As)39 b(in)h(the)g(ab)s(o)m(v)m(e)h(example)f(y)m(ou)g(ma)m
+(y)g(create)i(y)m(our)d(o)m(wn)h(sort)g(map.)69 b(T)-8
+b(o)40 b(sort)g(in)f(descending)150 1577 y(order,)30
+b(apply)g(the)h Fz(reverse\(\))d FE(metho)s(d)h(after)i(the)g
+Fz(sort\(\))p FE(.)275 1760 y(Here)22 b(is)f(an)g(extended)h(example)g
+(of)g(ho)m(w)f(to)i(use)e Fz(ncap2)f FE(features)i(to)g(h)m(yp)s
+(erslab)e(an)i(irregular)f(region)150 1870 y(based)26
+b(on)f(the)h(v)-5 b(alues)27 b(of)f(a)g(v)-5 b(ariable)27
+b(not)f(a)g(co)s(ordinate.)40 b(The)25 b(distinction)i(is)f(crucial:)39
+b(h)m(yp)s(erslabbing)150 1979 y(based)c(on)g(dimensional)h(indices)f
+(or)g(co)s(ordinate)i(v)-5 b(alues)35 b(is)h(straigh)m(tforw)m(ard.)56
+b(Using)36 b(the)f(v)-5 b(alues)36 b(of)150 2089 y(single)31
+b(or)f(m)m(ulti-dimensional)i(v)-5 b(ariable)31 b(to)g(de\014ne)f(a)g
+(h)m(yp)s(erslab)g(is)g(quite)h(di\013eren)m(t.)390 2271
+y Fz(cat)47 b(>)g(~/ncap2_foo.nco)d(<<)j('EOF')390 2381
+y(//)g(Purpose:)f(Save)g(irregular)g(1-D)h(regions)e(based)i(on)g
+(variable)e(values)390 2600 y(//)i(Included)f(in)h(NCO)g(User)f(Guide)h
+(at)g(http://nco.sf.net/nco.ht)o(ml#s)o(ort)390 2819
+y(/*)g(NB:)g(Single)f(quotes)g(around)g(EOF)h(above)g(turn)f(off)h
+(shell)g(parameter)581 2929 y(expansion)e(in)i("here)g(documents".)d
+(This)j(in)g(turn)g(prevents)e(the)581 3039 y(need)i(for)f(protecting)f
+(dollarsign)g(characters)g(in)j(NCO)f(scripts)e(with)581
+3148 y(backslashes)g(when)h(the)h(script)f(is)h(cut-and-pasted)d(\(aka)
+j("moused"\))581 3258 y(from)g(an)g(editor)f(or)h(e-mail)f(into)h(a)g
+(shell)g(console)e(window)h(*/)390 3477 y(/*)h(Copy)g(coordinates)e
+(and)h(variable\(s\))f(of)i(interest)f(into)h(RAM)f(variable\(s\))533
+3587 y(Benefits:)533 3696 y(1.)h(ncap2)g(defines)f(writes)g(all)h
+(variables)e(on)i(LHS)g(of)g(expression)e(to)i(disk)676
+3806 y(Only)g(exception)e(is)i(RAM)g(variables,)e(which)i(are)g(stored)
+f(in)h(RAM)g(only)676 3915 y(Repeated)f(operations)f(on)i(regular)f
+(variables)f(takes)i(more)f(time,)676 4025 y(because)g(changes)g(are)h
+(written)f(to)h(disk)g(copy)f(after)h(every)f(change.)676
+4134 y(RAM)h(variables)f(are)g(only)h(changed)f(in)h(RAM)g(so)g(script)
+f(works)h(faster)676 4244 y(RAM)g(variables)f(can)g(be)i(written)d(to)j
+(disk)e(at)h(end)g(with)g(ram_write\(\))533 4354 y(2.)g(Script)f
+(permutes)g(variables)f(of)i(interest)f(during)g(processing)676
+4463 y(Safer)h(to)g(work)g(with)f(copies)g(that)h(have)g(different)e
+(names)676 4573 y(This)i(discourages)e(accidental,)f(mistaken)i(use)h
+(of)g(permuted)f(versions)533 4682 y(3.)h(Makes)g(this)f(script)g(a)i
+(more)f(generic)e(template:)676 4792 y(var_in)h(instead)g(of)h
+(specific)f(variable)g(names)g(everywhere)f(*/)390 4902
+y(*var_in=one_dmn_rec_var;)390 5011 y(*crd_in=time;)390
+5121 y(*dmn_in_sz=$time.size;)d(//)47 b([nbr])f(Size)h(of)g(input)f
+(arrays)390 5340 y(/*)h(Create)f(all)h(other)g("intermediate")c
+(variables)j(as)h(RAM)g(variables)p eop end
+%%Page: 140 146
+TeXDict begin 140 145 bop 150 -116 a FE(140)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)533 299 y Fz(to)47 b(prevent)f(them)h(from)f
+(cluttering)f(the)i(output)f(file.)533 408 y(Mask)h(flag)f(and)h(sort)g
+(map)g(are)g(same)f(size)h(as)g(variable)f(of)h(interest)f(*/)390
+518 y(*msk_flg=var_in;)390 628 y(*srt_map=var_in;)390
+847 y(/*)h(In)g(this)g(example)f(we)h(mask)g(for)g(all)f(values)h
+(evenly)f(divisible)f(by)i(3)533 956 y(This)g(is)g(the)g(key,)g
 (problem-specific)c(portion)j(of)h(the)g(template)533
-5011 y(Replace)f(this)h(where\(\))e(condition)h(by)h(that)g(for)f(your)
-h(problem)533 5121 y(Mask)g(variable)e(is)j(Boolean:)d(1=Meets)h
-(condition,)f(0=Fails)h(condition)f(*/)390 5230 y(where\(var_in)f(\045)
-k(3)f(==)h(0\))f(msk_flg=1;)e(elsewhere)g(msk_flg=0;)p
-eop end
-%%Page: 128 134
-TeXDict begin 128 133 bop 150 -116 a FD(128)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(//)47 b(print\("msk_flg)d(=)k
-("\);print\(msk_flg\);)42 b(//)48 b(For)e(debugging...)390
-518 y(/*)h(The)g(sort\(\))f(routine)g(is)h(overloaded,)e(and)i(takes)f
-(one)h(or)g(two)g(arguments)533 628 y(The)g(second)f(argument)g
-(\(optional\))f(is)i(the)g("sort)f(map")h(\(srt_map)e(below\))533
-737 y(Pass)i(the)g(sort)f(map)h(by)g(reference,)e(i.e.,)i(prefix)f
-(with)h(an)g(ampersand)533 847 y(If)g(the)g(sort)g(map)g(does)f(not)h
-(yet)g(exist,)f(then)h(it)g(will)g(be)g(created)f(and)533
-956 y(returned)g(as)h(an)g(integer)f(type)h(the)f(same)h(shape)f(as)i
-(the)f(input)f(variable.)533 1066 y(The)h(output)f(of)h(sort\(\),)f(on)
-h(the)g(LHS,)g(is)g(a)h(sorted)e(version)f(of)j(the)f(input)533
-1176 y(msk_flg)f(is)h(not)g(needed)f(in)h(its)g(original)f(order)g
-(after)h(sort\(\))533 1285 y(Hence)g(we)g(use)g(msk_flg)e(as)j(both)e
-(input)h(to)g(and)g(output)f(from)g(sort\(\))533 1395
-y(Doing)h(this)f(prevents)g(the)h(need)f(to)h(define)g(a)g(new,)g
-(unneeded)e(variable)h(*/)390 1504 y(msk_flg=sort\(msk_flg,&sr)o(t_ma)o
-(p\);)390 1724 y(//)h(Count)g(number)f(of)h(valid)f(points)g(in)h(mask)
-g(by)g(summing)f(the)h(one's)390 1833 y(*msk_nbr=msk_flg.total\(\))o(;)
-390 2052 y(//)g(Define)f(output)g(dimension)g(equal)g(in)h(size)g(to)g
-(number)f(of)h(valid)g(points)390 2162 y(defdim\("crd_out",msk_nbr)o
-(\);)390 2381 y(/*)g(Now)g(sort)g(the)g(variable)e(of)i(interest)f
-(using)g(the)h(sort)g(map)g(and)g(remap\(\))533 2491
+1066 y(Replace)f(this)h(where\(\))e(condition)h(by)h(that)g(for)f(your)
+h(problem)533 1176 y(Mask)g(variable)e(is)j(Boolean:)d(1=Meets)h
+(condition,)f(0=Fails)h(condition)f(*/)390 1285 y(where\(var_in)f(\045)
+k(3)f(==)h(0\))f(msk_flg=1;)e(elsewhere)g(msk_flg=0;)390
+1504 y(//)i(print\("msk_flg)d(=)k("\);print\(msk_flg\);)42
+b(//)48 b(For)e(debugging...)390 1724 y(/*)h(The)g(sort\(\))f(routine)g
+(is)h(overloaded,)e(and)i(takes)f(one)h(or)g(two)g(arguments)533
+1833 y(The)g(second)f(argument)g(\(optional\))f(is)i(the)g("sort)f
+(map")h(\(srt_map)e(below\))533 1943 y(Pass)i(the)g(sort)f(map)h(by)g
+(reference,)e(i.e.,)i(prefix)f(with)h(an)g(ampersand)533
+2052 y(If)g(the)g(sort)g(map)g(does)f(not)h(yet)g(exist,)f(then)h(it)g
+(will)g(be)g(created)f(and)533 2162 y(returned)g(as)h(an)g(integer)f
+(type)h(the)f(same)h(shape)f(as)i(the)f(input)f(variable.)533
+2271 y(The)h(output)f(of)h(sort\(\),)f(on)h(the)g(LHS,)g(is)g(a)h
+(sorted)e(version)f(of)j(the)f(input)533 2381 y(msk_flg)f(is)h(not)g
+(needed)f(in)h(its)g(original)f(order)g(after)h(sort\(\))533
+2491 y(Hence)g(we)g(use)g(msk_flg)e(as)j(both)e(input)h(to)g(and)g
+(output)f(from)g(sort\(\))533 2600 y(Doing)h(this)f(prevents)g(the)h
+(need)f(to)h(define)g(a)g(new,)g(unneeded)e(variable)h(*/)390
+2710 y(msk_flg=sort\(msk_flg,&sr)o(t_ma)o(p\);)390 2929
+y(//)h(Count)g(number)f(of)h(valid)f(points)g(in)h(mask)g(by)g(summing)
+f(the)h(one's)390 3039 y(*msk_nbr=msk_flg.total\(\))o(;)390
+3258 y(//)g(Define)f(output)g(dimension)g(equal)g(in)h(size)g(to)g
+(number)f(of)h(valid)g(points)390 3367 y(defdim\("crd_out",msk_nbr)o
+(\);)390 3587 y(/*)g(Now)g(sort)g(the)g(variable)e(of)i(interest)f
+(using)g(the)h(sort)g(map)g(and)g(remap\(\))533 3696
 y(The)g(output,)f(on)h(the)g(LHS,)g(is)g(the)g(input)f(re-arranged)f
-(so)i(that)g(all)g(points)533 2600 y(meeting)f(the)h(mask)g(condition)e
+(so)i(that)g(all)g(points)533 3806 y(meeting)f(the)h(mask)g(condition)e
 (are)i(contiguous)e(at)i(the)g(end)g(of)g(the)g(array)533
-2710 y(Use)g(same)g(srt_map)f(to)h(hyperslab)e(multiple)h(variables)f
-(of)i(the)g(same)g(shape)533 2819 y(Remember)f(to)h(apply)f(srt_map)g
-(to)h(the)g(coordinate)e(variables)g(*/)390 2929 y
-(crd_in=remap\(crd_in,srt_)o(map\))o(;)390 3039 y
-(var_in=remap\(var_in,srt_)o(map\))o(;)390 3258 y(/*)i(Hyperslab)e
+3915 y(Use)g(same)g(srt_map)f(to)h(hyperslab)e(multiple)h(variables)f
+(of)i(the)g(same)g(shape)533 4025 y(Remember)f(to)h(apply)f(srt_map)g
+(to)h(the)g(coordinate)e(variables)g(*/)390 4134 y
+(crd_in=remap\(crd_in,srt_)o(map\))o(;)390 4244 y
+(var_in=remap\(var_in,srt_)o(map\))o(;)390 4463 y(/*)i(Hyperslab)e
 (last)i(msk_nbr)f(values)g(of)h(variable\(s\))e(of)i(interest)f(*/)390
-3367 y(crd_out[crd_out]=crd_in\()o(\(dmn)o(_in_)o(sz-)o(msk_)o(nbr\))o
-(:\(d)o(mn_i)o(n_sz)o(-1\))o(\);)390 3477 y(var_out[crd_out]=var_in\()o
+4573 y(crd_out[crd_out]=crd_in\()o(\(dmn)o(_in_)o(sz-)o(msk_)o(nbr\))o
+(:\(d)o(mn_i)o(n_sz)o(-1\))o(\);)390 4682 y(var_out[crd_out]=var_in\()o
 (\(dmn)o(_in_)o(sz-)o(msk_)o(nbr\))o(:\(d)o(mn_i)o(n_sz)o(-1\))o(\);)
-390 3696 y(/*)h(NB:)g(Even)g(though)f(we)h(created)f(all)h(variables)e
-(possible)h(as)h(RAM)g(variables,)533 3806 y(the)g(original)f
+390 4902 y(/*)h(NB:)g(Even)g(though)f(we)h(created)f(all)h(variables)e
+(possible)h(as)h(RAM)g(variables,)533 5011 y(the)g(original)f
 (coordinate)f(of)i(interest,)e(time,)h(is)i(written)d(to)j(the)f
-(ouput.)533 3915 y(I'm)g(not)g(exactly)f(sure)g(why.)h(For)g(now,)g
-(delete)f(it)h(from)g(the)f(output)h(with:)533 4025 y(ncks)g(-O)g(-x)g
-(-v)g(time)g(~/foo.nc)f(~/foo.nc)533 4134 y(*/)390 4244
-y(EOF)390 4354 y(ncap2)g(-O)i(-v)f(-S)g(~/ncap2_foo.nco)d
-(~/nco/data/in.nc)f(~/foo.nc)390 4463 y(ncks)k(-O)g(-x)g(-v)g(time)g
-(~/foo.nc)e(~/foo.nc)390 4573 y(ncks)i(~/foo.nc)275 4737
-y FD(Here)40 b(is)g(an)g(extended)g(example)h(of)f(ho)m(w)g(to)g(use)g
-Fy(ncap2)f FD(features)h(to)h(sort)f(m)m(ulti-dimensional)150
-4847 y(arra)m(ys)31 b(based)f(on)g(the)h(co)s(ordinate)g(v)-5
-b(alues)31 b(along)g(a)g(single)g(dimension.)390 5011
-y Fy(cat)47 b(>)g(~/ncap2_foo.nco)d(<<)j('EOF')390 5121
-y(/*)g(Purpose:)f(Sort)g(multi-dimensional)d(array)k(based)f(on)h
-(coordinate)e(values)533 5230 y(This)i(example)f(sorts)g(the)h
+(ouput.)533 5121 y(I'm)g(not)g(exactly)f(sure)g(why.)h(For)g(now,)g
+(delete)f(it)h(from)g(the)f(output)h(with:)533 5230 y(ncks)g(-O)g(-x)g
+(-v)g(time)g(~/foo.nc)f(~/foo.nc)533 5340 y(*/)p eop
+end
+%%Page: 141 147
+TeXDict begin 141 146 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(141)390 299 y Fz(EOF)390
+408 y(ncap2)46 b(-O)i(-v)f(-S)g(~/ncap2_foo.nco)d(~/nco/data/in.nc)f
+(~/foo.nc)390 518 y(ncks)k(-O)g(-x)g(-v)g(time)g(~/foo.nc)e(~/foo.nc)
+390 628 y(ncks)i(~/foo.nc)275 792 y FE(Here)40 b(is)g(an)g(extended)g
+(example)h(of)f(ho)m(w)g(to)g(use)g Fz(ncap2)f FE(features)h(to)h(sort)
+f(m)m(ulti-dimensional)150 902 y(arra)m(ys)31 b(based)f(on)g(the)h(co)s
+(ordinate)g(v)-5 b(alues)31 b(along)g(a)g(single)g(dimension.)390
+1066 y Fz(cat)47 b(>)g(~/ncap2_foo.nco)d(<<)j('EOF')390
+1176 y(/*)g(Purpose:)f(Sort)g(multi-dimensional)d(array)k(based)f(on)h
+(coordinate)e(values)533 1285 y(This)i(example)f(sorts)g(the)h
 (variable)e(three_dmn_rec_var\(time,lat)o(,lon)o(\))533
-5340 y(based)i(on)g(the)g(values)f(of)h(the)g(time)f(coordinate.)f(*/)p
-eop end
-%%Page: 129 135
-TeXDict begin 129 134 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(129)390
-408 y Fy(//)47 b(Included)f(in)h(NCO)g(User)f(Guide)h(at)g
-(http://nco.sf.net/nco.ht)o(ml#s)o(ort)390 628 y(//)g(Randomize)e(the)i
-(time)g(coordinate)390 737 y(time=10.0*gsl_rng_unifor)o(m\(ti)o(me\);)
-390 847 y(//print\("original)c(randomized)i(time)i
-(=\\n"\);print\(time\);)390 1066 y(/*)g(The)g(sort\(\))f(routine)g(is)h
+1395 y(based)i(on)g(the)g(values)f(of)h(the)g(time)f(coordinate.)f(*/)
+390 1614 y(//)i(Included)f(in)h(NCO)g(User)f(Guide)h(at)g
+(http://nco.sf.net/nco.ht)o(ml#s)o(ort)390 1833 y(//)g(Randomize)e(the)
+i(time)g(coordinate)390 1943 y(time=10.0*gsl_rng_unifor)o(m\(ti)o
+(me\);)390 2052 y(//print\("original)c(randomized)i(time)i
+(=\\n"\);print\(time\);)390 2271 y(/*)g(The)g(sort\(\))f(routine)g(is)h
 (overloaded,)e(and)i(takes)f(one)h(or)g(two)g(arguments)533
-1176 y(The)g(first)f(argument)g(is)h(a)h(one)f(dimensional)d(array)533
-1285 y(The)j(second)f(argument)g(\(optional\))f(is)i(the)g("sort)f
-(map")h(\(srt_map)e(below\))533 1395 y(Pass)i(the)g(sort)f(map)h(by)g
+2381 y(The)g(first)f(argument)g(is)h(a)h(one)f(dimensional)d(array)533
+2491 y(The)j(second)f(argument)g(\(optional\))f(is)i(the)g("sort)f
+(map")h(\(srt_map)e(below\))533 2600 y(Pass)i(the)g(sort)f(map)h(by)g
 (reference,)e(i.e.,)i(prefix)f(with)h(an)g(ampersand)533
-1504 y(If)g(the)g(sort)g(map)g(does)f(not)h(yet)g(exist,)f(then)h(it)g
-(will)g(be)g(created)f(and)533 1614 y(returned)g(as)h(an)g(integer)f
+2710 y(If)g(the)g(sort)g(map)g(does)f(not)h(yet)g(exist,)f(then)h(it)g
+(will)g(be)g(created)f(and)533 2819 y(returned)g(as)h(an)g(integer)f
 (type)h(the)f(same)h(shape)f(as)i(the)f(input)f(variable.)533
-1724 y(The)h(output)f(of)h(sort\(\),)f(on)h(the)g(LHS,)g(is)g(a)h
-(sorted)e(version)f(of)j(the)f(input)f(*/)390 1943 y
-(time=sort\(time,&srt_map\))o(;)390 2052 y(//print\("sorted)e(time)i
+2929 y(The)h(output)f(of)h(sort\(\),)f(on)h(the)g(LHS,)g(is)g(a)h
+(sorted)e(version)f(of)j(the)f(input)f(*/)390 3148 y
+(time=sort\(time,&srt_map\))o(;)390 3258 y(//print\("sorted)e(time)i
 (\(ascending)f(order\))h(and)h(associated)e(sort)i(map)g
 (=\\n"\);print\(time\);print)o(\(srt)o(_map)o(\);)390
-2271 y(/*)g(sort\(\))f(always)g(sorts)h(in)g(ascending)e(order)533
-2381 y(The)i(associated)e(sort)i(map)g(therefore)e(re-arranges)g(the)i
-(original,)533 2491 y(randomized)e(time)i(array)f(into)h(ascending)e
-(order.)533 2600 y(There)i(are)f(two)h(methods)f(to)h(obtain)f(the)h
-(descending)e(order)i(the)g(user)f(wants)533 2710 y(1\))h(We)h(could)e
+3477 y(/*)g(sort\(\))f(always)g(sorts)h(in)g(ascending)e(order)533
+3587 y(The)i(associated)e(sort)i(map)g(therefore)e(re-arranges)g(the)i
+(original,)533 3696 y(randomized)e(time)i(array)f(into)h(ascending)e
+(order.)533 3806 y(There)i(are)f(two)h(methods)f(to)h(obtain)f(the)h
+(descending)e(order)i(the)g(user)f(wants)533 3915 y(1\))h(We)h(could)e
 (solve)g(the)h(problem)f(in)h(ascending)e(order)i(\(the)f(default\))533
-2819 y(and)h(then)g(apply)f(the)h(reverse\(\))e(method)h(to)i
-(re-arrange)d(the)h(results.)533 2929 y(2\))h(We)h(could)e(change)g
+4025 y(and)h(then)g(apply)f(the)h(reverse\(\))e(method)h(to)i
+(re-arrange)d(the)h(results.)533 4134 y(2\))h(We)h(could)e(change)g
 (the)h(sort)g(map)f(to)i(return)e(things)g(in)h(descending)533
-3039 y(order)g(of)g(time)f(and)h(solve)g(the)g(problem)e(directly)h(in)
-h(descending)e(order.)h(*/)390 3258 y(//)h(Following)e(shows)i(how)g
-(to)g(do)g(method)f(one:)390 3477 y(/*)h(Expand)f(the)h(sort)g(map)g
+4244 y(order)g(of)g(time)f(and)h(solve)g(the)g(problem)e(directly)h(in)
+h(descending)e(order.)h(*/)390 4463 y(//)h(Following)e(shows)i(how)g
+(to)g(do)g(method)f(one:)390 4682 y(/*)h(Expand)f(the)h(sort)g(map)g
 (to)g(srt_map_3d,)e(the)i(size)f(of)h(the)g(data)g(array)533
-3587 y(1.)g(Use)g(data)g(array)f(to)h(provide)f(right)h(shape)f(for)h
-(the)g(expanded)e(sort)i(map)533 3696 y(2.)g(Coerce)f(data)h(array)f
+4792 y(1.)g(Use)g(data)g(array)f(to)h(provide)f(right)h(shape)f(for)h
+(the)g(expanded)e(sort)i(map)533 4902 y(2.)g(Coerce)f(data)h(array)f
 (into)h(an)g(integer)f(so)h(srt_map_3d)e(is)i(an)h(integer)533
-3806 y(3.)f(Multiply)f(data)h(array)f(by)h(zero)g(so)g(3-d)g(map)g
-(elements)e(are)i(all)g(zero)533 3915 y(4.)g(Add)g(the)g(1-d)g(sort)g
+5011 y(3.)f(Multiply)f(data)h(array)f(by)h(zero)g(so)g(3-d)g(map)g
+(elements)e(are)i(all)g(zero)533 5121 y(4.)g(Add)g(the)g(1-d)g(sort)g
 (map)g(to)g(the)g(3-d)g(sort)f(map)h(\(NCO)g(automatically)d(resizes\))
-533 4025 y(5.)j(Add)g(the)g(spatial)f(\(lat,lon\))f(offsets)h(to)h
-(each)g(time)g(index)533 4134 y(6.)g(de-sort)f(using)h(the)f
-(srt_map_3d)533 4244 y(7.)h(Use)g(reverse)f(to)h(obtain)f(descending)f
-(in)j(time)e(order)533 4354 y(Loops)h(could)f(accomplish)f(the)i(same)f
-(thing)h(\(exercise)e(left)i(for)g(reader\))533 4463
-y(However,)f(loops)g(are)h(slow)g(for)g(large)f(datasets)f(*/)390
-4682 y(/*)i(Following)e(index)i(manipulation)d(requires)i
-(understanding)e(correspondence)533 4792 y(between)i(1-d)h(\(unrolled,)
-e(memory)h(order)g(of)i(storage\))d(and)i(access)f(into)h(that)533
-4902 y(memory)f(as)h(a)h(multidimensional)43 b(\(3-d,)k(in)g(this)f
-(case\))h(rectangular)e(array.)533 5011 y(Key)i(idea)g(to)g(understand)
+533 5230 y(5.)j(Add)g(the)g(spatial)f(\(lat,lon\))f(offsets)h(to)h
+(each)g(time)g(index)533 5340 y(6.)g(de-sort)f(using)h(the)f
+(srt_map_3d)p eop end
+%%Page: 142 148
+TeXDict begin 142 147 bop 150 -116 a FE(142)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)533 299 y Fz(7.)47 b(Use)g(reverse)f(to)h
+(obtain)f(descending)f(in)j(time)e(order)533 408 y(Loops)h(could)f
+(accomplish)f(the)i(same)f(thing)h(\(exercise)e(left)i(for)g(reader\))
+533 518 y(However,)f(loops)g(are)h(slow)g(for)g(large)f(datasets)f(*/)
+390 737 y(/*)i(Following)e(index)i(manipulation)d(requires)i
+(understanding)e(correspondence)533 847 y(between)i(1-d)h(\(unrolled,)e
+(memory)h(order)g(of)i(storage\))d(and)i(access)f(into)h(that)533
+956 y(memory)f(as)h(a)h(multidimensional)43 b(\(3-d,)k(in)g(this)f
+(case\))h(rectangular)e(array.)533 1066 y(Key)i(idea)g(to)g(understand)
 e(is)i(how)g(dimensionality)d(affects)i(offsets)g(*/)390
-5121 y(//)h(Copy)g(1-d)g(sort)f(map)h(into)g(3-d)g(sort)f(map)390
-5230 y(srt_map_3d=\(0*int\(three_)o(dmn_)o(rec_)o(var)o(\)\)+s)o(rt_m)o
-(ap;)390 5340 y(//)h(Multiply)f(base)g(offset)g(by)i(factorial)d(of)i
-(lesser)f(dimensions)p eop end
-%%Page: 130 136
-TeXDict begin 130 135 bop 150 -116 a FD(130)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(srt_map_3d*=$lat.size*$l)o(on.s)
-o(ize;)390 408 y(lon_idx=array\(0,1,$lon\);)390 518 y
-(lat_idx=array\(0,1,$lat\)*)o($lon)o(.siz)o(e;)390 628
+1176 y(//)h(Copy)g(1-d)g(sort)f(map)h(into)g(3-d)g(sort)f(map)390
+1285 y(srt_map_3d=\(0*int\(three_)o(dmn_)o(rec_)o(var)o(\)\)+s)o(rt_m)o
+(ap;)390 1395 y(//)h(Multiply)f(base)g(offset)g(by)i(factorial)d(of)i
+(lesser)f(dimensions)390 1504 y(srt_map_3d*=$lat.size*$l)o(on.s)o(ize;)
+390 1614 y(lon_idx=array\(0,1,$lon\);)390 1724 y
+(lat_idx=array\(0,1,$lat\)*)o($lon)o(.siz)o(e;)390 1833
 y(lat_lon_idx[$lat,$lon]=l)o(at_i)o(dx+l)o(on_)o(idx;)390
-737 y(srt_map_3d+=lat_lon_idx;)390 956 y(print\("sort)45
-b(map)i(3d)g(=\\n"\);print\(srt_map_3d\);)390 1176 y(//)g(Use)g
-(remap\(\))f(to)h(re-map)f(the)h(data)390 1285 y
-(three_dmn_rec_var=remap\()o(thre)o(e_dm)o(n_r)o(ec_v)o(ar,s)o(rt_)o
-(map_)o(3d\);)390 1504 y(//)g(Finally,)f(reverse)g(data)g(so)h(time)g
-(coordinate)e(is)i(descending)390 1614 y(time=time.reverse\($time\))o
-(;)390 1724 y(//print\("sorted)d(time)i(\(descending)f(order\))h
-(=\\n"\);print\(time\);)390 1833 y(three_dmn_rec_var=three_)o(dmn_)o
-(rec_)o(var)o(.rev)o(erse)o(\($t)o(ime\))o(;)390 2052
+1943 y(srt_map_3d+=lat_lon_idx;)390 2162 y(print\("sort)f(map)i(3d)g
+(=\\n"\);print\(srt_map_3d\);)390 2381 y(//)g(Use)g(remap\(\))f(to)h
+(re-map)f(the)h(data)390 2491 y(three_dmn_rec_var=remap\()o(thre)o
+(e_dm)o(n_r)o(ec_v)o(ar,s)o(rt_)o(map_)o(3d\);)390 2710
+y(//)g(Finally,)f(reverse)g(data)g(so)h(time)g(coordinate)e(is)i
+(descending)390 2819 y(time=time.reverse\($time\))o(;)390
+2929 y(//print\("sorted)d(time)i(\(descending)f(order\))h
+(=\\n"\);print\(time\);)390 3039 y(three_dmn_rec_var=three_)o(dmn_)o
+(rec_)o(var)o(.rev)o(erse)o(\($t)o(ime\))o(;)390 3258
 y(//)h(Method)f(two:)h(Key)g(difference)e(is)i
-(srt_map=$time.size-srt_m)o(ap-1)o(;)390 2162 y(EOF)390
-2271 y(ncap2)f(-O)i(-v)f(-S)g(~/ncap2_foo.nco)d(~/nco/data/in.nc)f
-(~/foo.nc)150 2520 y Fu(4.1.17)63 b(Irregular)41 b(Grids)150
-2667 y FC(NCO)33 b FD(is)g(capable)h(of)f(analyzing)h(datasets)g(for)f
+(srt_map=$time.size-srt_m)o(ap-1)o(;)390 3367 y(EOF)390
+3477 y(ncap2)f(-O)i(-v)f(-S)g(~/ncap2_foo.nco)d(~/nco/data/in.nc)f
+(~/foo.nc)150 3727 y Fv(4.1.17)63 b(Irregular)41 b(Grids)150
+3874 y FD(NCO)33 b FE(is)g(capable)h(of)f(analyzing)h(datasets)g(for)f
 (man)m(y)g(di\013eren)m(t)g(underlying)f(co)s(ordinate)i(grid)f(t)m(yp)
-s(es.)150 2776 y(netCDF)26 b(w)m(as)g(dev)m(elop)s(ed)f(for)g(and)g
+s(es.)150 3984 y(netCDF)26 b(w)m(as)g(dev)m(elop)s(ed)f(for)g(and)g
 (initially)i(used)d(with)h(grids)g(comprised)g(of)h(orthogonal)h
-(dimensions)150 2886 y(forming)33 b(a)g(rectangular)h(co)s(ordinate)f
+(dimensions)150 4093 y(forming)33 b(a)g(rectangular)h(co)s(ordinate)f
 (system.)49 b(W)-8 b(e)34 b(call)g(suc)m(h)f(grids)f
-Fo(standar)-5 b(d)45 b FD(grids.)j(It)33 b(is)g(increas-)150
-2996 y(ingly)h(common)g(for)f(datasets)h(to)h(use)e(metadata)i(to)f
+Fp(standar)-5 b(d)45 b FE(grids.)j(It)33 b(is)g(increas-)150
+4203 y(ingly)h(common)g(for)f(datasets)h(to)h(use)e(metadata)i(to)f
 (describ)s(e)f(m)m(uc)m(h)g(more)h(complex)g(grids.)50
-b(Let)34 b(us)150 3105 y(\014rst)c(de\014ne)f(three)i(imp)s(ortan)m(t)f
+b(Let)34 b(us)150 4313 y(\014rst)c(de\014ne)f(three)i(imp)s(ortan)m(t)f
 (co)s(ordinate)i(grid)e(prop)s(erties:)40 b(rectangularit)m(y)-8
-b(,)33 b(regularit)m(y)-8 b(,)32 b(and)e(fxm.)275 3289
-y(Grids)38 b(are)h Fo(r)-5 b(e)g(gular)50 b FD(if)38
+b(,)33 b(regularit)m(y)-8 b(,)32 b(and)e(fxm.)275 4498
+y(Grids)38 b(are)h Fp(r)-5 b(e)g(gular)50 b FE(if)38
 b(the)h(spacing)g(b)s(et)m(w)m(een)g(adjacen)m(t)h(is)f(constan)m(t.)67
-b(F)-8 b(or)39 b(example,)j(a)d(4-b)m(y-5)150 3399 y(degree)g
+b(F)-8 b(or)39 b(example,)j(a)d(4-b)m(y-5)150 4607 y(degree)g
 (latitude-longitude)i(grid)d(is)h(regular)f(b)s(ecause)h(the)f
 (spacings)h(b)s(et)m(w)m(een)g(adjacen)m(t)h(latitudes)150
-3508 y(\(4)31 b(degrees)q(\))c(are)h(constan)m(t)h(as)f(are)f(the)h
+4717 y(\(4)31 b(degrees)q(\))c(are)h(constan)m(t)h(as)f(are)f(the)h
 (\(5)j(degrees)q(\))c(spacings)h(b)s(et)m(w)m(een)g(adjacen)m(t)h
-(longitudes.)40 b(Spac-)150 3618 y(ing)27 b(in)g Fo(irr)-5
-b(e)g(gular)38 b FD(grids)27 b(dep)s(ends)e(on)i(the)h(lo)s(cation)g
+(longitudes.)40 b(Spac-)150 4826 y(ing)27 b(in)g Fp(irr)-5
+b(e)g(gular)38 b FE(grids)27 b(dep)s(ends)e(on)i(the)h(lo)s(cation)g
 (along)g(the)g(co)s(ordinate.)40 b(Grids)27 b(suc)m(h)f(as)i(Gaussian)
-150 3727 y(grids)f(ha)m(v)m(e)i(unev)m(en)e(spacing)h(in)f(latitude)h
+150 4936 y(grids)f(ha)m(v)m(e)i(unev)m(en)e(spacing)h(in)f(latitude)h
 (\(p)s(oin)m(ts)g(cluster)g(near)f(the)h(equator\))g(and)f(so)h(are)g
-(irregular.)275 3911 y(Grids)35 b(are)h Fo(r)-5 b(e)g(ctangular)48
-b FD(if)36 b(the)g(n)m(um)m(b)s(er)f(of)h(elemen)m(ts)h(in)f(an)m(y)g
-(dimension)g(is)g(not)g(a)g(function)g(of)150 4021 y(an)m(y)f(other)h
+(irregular.)275 5121 y(Grids)35 b(are)h Fp(r)-5 b(e)g(ctangular)48
+b FE(if)36 b(the)g(n)m(um)m(b)s(er)f(of)h(elemen)m(ts)h(in)f(an)m(y)g
+(dimension)g(is)g(not)g(a)g(function)g(of)150 5230 y(an)m(y)f(other)h
 (dimension.)54 b(F)-8 b(or)36 b(example,)h(a)e(T42)h(Gaussian)f
-(latitude-longitude)i(grid)e(is)g(rectangular)150 4131
+(latitude-longitude)i(grid)e(is)g(rectangular)150 5340
 y(b)s(ecause)28 b(there)g(are)g(the)g(same)h(n)m(um)m(b)s(er)d(of)i
 (longitudes)h(\(128\))g(for)f(eac)m(h)h(of)f(the)g(\(64\))i(latitudes.)
-40 b(Grids)150 4240 y(are)33 b Fo(non-r)-5 b(e)g(ctangular)45
-b FD(if)33 b(the)g(elemen)m(ts)h(in)e(an)m(y)h(dimension)g(dep)s(end)e
-(on)h(another)h(dimension.)48 b(Non-)150 4350 y(rectangular)31
-b(grids)f(presen)m(t)h(man)m(y)f(sp)s(ecial)h(c)m(hallenges)h(to)g
-(analysis)e(soft)m(w)m(are)i(lik)m(e)g FC(NCO)p FD(.)275
-4534 y(W)-8 b(rapp)s(ed)29 b(co)s(ordinates)i(\(see)h(Section)f(3.20)h
-([W)-8 b(rapp)s(ed)29 b(Co)s(ordinates],)i(page)g(63\),)h(suc)m(h)e(as)
-h(longi-)150 4643 y(tude,)f(are)h(indep)s(enden)m(t)e(of)i(these)g
-(grid)f(prop)s(erties)g(\(regularit)m(y)-8 b(,)32 b(rectangularit)m
-(y\).)275 4827 y(The)38 b(preferred)g FC(NCO)h FD(tec)m(hnique)h(to)g
-(analyze)h(data)f(on)f(non-standard)f(co)s(ordinate)i(grids)f(is)g(to)
-150 4937 y(create)24 b(a)f(region)g(mask)g(with)f Fy(ncap2)p
-FD(,)h(and)f(then)g(to)i(use)e(the)h(mask)f(within)g
-Fy(ncap2)g FD(for)g(v)-5 b(ariable-sp)s(eci\014c)150
-5046 y(pro)s(cessing,)30 b(and/or)h(with)f(other)g(op)s(erators)h
-(\(e.g.,)h Fy(ncwa)p FD(,)e Fy(ncdiff)p FD(\))f(for)h(en)m(tire)h
-(\014le)g(pro)s(cessing.)275 5230 y(Before)i(describing)f(the)h
+40 b(Grids)p eop end
+%%Page: 143 149
+TeXDict begin 143 148 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(143)150 299 y(are)33
+b Fp(non-r)-5 b(e)g(ctangular)45 b FE(if)33 b(the)g(elemen)m(ts)h(in)e
+(an)m(y)h(dimension)g(dep)s(end)e(on)h(another)h(dimension.)48
+b(Non-)150 408 y(rectangular)31 b(grids)f(presen)m(t)h(man)m(y)f(sp)s
+(ecial)h(c)m(hallenges)h(to)g(analysis)e(soft)m(w)m(are)i(lik)m(e)g
+FD(NCO)p FE(.)275 570 y(W)-8 b(rapp)s(ed)29 b(co)s(ordinates)i(\(see)h
+(Section)f(3.20)h([W)-8 b(rapp)s(ed)29 b(Co)s(ordinates],)i(page)g
+(63\),)h(suc)m(h)e(as)h(longi-)150 679 y(tude,)f(are)h(indep)s(enden)m
+(t)e(of)i(these)g(grid)f(prop)s(erties)g(\(regularit)m(y)-8
+b(,)32 b(rectangularit)m(y\).)275 840 y(The)38 b(preferred)g
+FD(NCO)h FE(tec)m(hnique)h(to)g(analyze)h(data)f(on)f(non-standard)f
+(co)s(ordinate)i(grids)f(is)g(to)150 950 y(create)24
+b(a)f(region)g(mask)g(with)f Fz(ncap2)p FE(,)h(and)f(then)g(to)i(use)e
+(the)h(mask)f(within)g Fz(ncap2)g FE(for)g(v)-5 b(ariable-sp)s
+(eci\014c)150 1060 y(pro)s(cessing,)30 b(and/or)h(with)f(other)g(op)s
+(erators)h(\(e.g.,)h Fz(ncwa)p FE(,)e Fz(ncdiff)p FE(\))f(for)h(en)m
+(tire)h(\014le)g(pro)s(cessing.)275 1221 y(Before)i(describing)f(the)h
 (construction)h(of)e(masks,)i(let)f(us)f(review)h(ho)m(w)g(irregularly)
-g(gridded)e(geo-)150 5340 y(science)40 b(data)f(are)g(describ)s(ed.)63
+g(gridded)e(geo-)150 1330 y(science)40 b(data)f(are)g(describ)s(ed.)63
 b(Sa)m(y)39 b(that)g(latitude)h(and)d(longitude)j(are)e(stored)h(as)g
-Fz(R)p FD(-dimensional)p eop end
-%%Page: 131 137
-TeXDict begin 131 136 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(131)150
-299 y(arra)m(ys)26 b(and)e(the)i(pro)s(duct)e(of)h(the)h(dimension)f
-(sizes)h(is)f(the)h(total)h(n)m(um)m(b)s(er)d(of)h(elemen)m(ts)i(N)e
-(in)g(the)h(other)150 408 y(v)-5 b(ariables.)41 b(Geoscience)33
-b(applications)f(tend)e(to)h(use)f Fz(R)25 b FD(=)g(1,)31
-b Fz(R)25 b FD(=)g(2,)31 b(and)f Fz(R)25 b FD(=)g(3.)275
-577 y(If)34 b(the)i(grid)f(is)g(has)g(no)g(simple)g(represen)m(tation)h
-(\(e.g.,)j(discon)m(tin)m(uous\))c(then)g(it)h(mak)m(es)g(sense)f(to)
-150 686 y(store)e(all)h(co)s(ordinates)f(as)g(1D)h(arra)m(ys)f(with)f
-(the)h(same)g(size)h(as)f(the)g(n)m(um)m(b)s(er)e(of)i(grid)g(p)s(oin)m
-(ts.)47 b(These)150 796 y(gridp)s(oin)m(ts)30 b(can)h(b)s(e)e
-(completely)k(indep)s(enden)m(t)c(of)h(all)h(the)g(other)g(\(o)m(wn)f
-(w)m(eigh)m(t,)j(area,)e(etc.\).)275 964 y Fz(R)p FD(=1:)40
-b(lat\(n)m(um)m(b)s(er)p 971 964 28 4 v 40 w(of)p 1084
-964 V 41 w(gridp)s(oin)m(ts\))30 b(and)g(lon\(n)m(um)m(b)s(er)p
-2225 964 V 39 w(of)p 2337 964 V 40 w(gridp)s(oin)m(ts\))275
-1132 y(If)f(the)i(horizon)m(tal)h(grid)e(is)h(time-in)m(v)-5
-b(arian)m(t)32 b(then)e Fz(R)p FD(=2)h(is)f(common:)275
-1300 y Fz(R)p FD(=2:)40 b(lat\(south)p 887 1300 V 41
-w(north,east)p 1327 1300 V 41 w(w)m(est\))32 b(and)d(lon\(south)p
-2159 1300 V 41 w(north,east)p 2599 1300 V 40 w(w)m(est\))275
-1468 y(The)g(W)-8 b(eather)32 b(and)e(Researc)m(h)h(F)-8
-b(orecast)33 b(\()p FC(WRF)p FD(\))f(mo)s(del)e(uses)g
-Fz(R)p FD(=3:)275 1636 y Fz(R)p FD(=3:)40 b(lat\(time,south)p
-1088 1636 V 42 w(north,east)p 1529 1636 V 41 w(w)m(est\),)32
-b(lon\(time,south)p 2411 1636 V 41 w(north,east)p 2851
-1636 V 41 w(w)m(est\))275 1804 y(and)d(so)i(supp)s(orts)d(grids)i(that)
-h(c)m(hange)h(with)e(time.)275 1972 y(Grids)41 b(with)g
-Fz(R)h Fy(>)f FD(1)h(often)g(use)g(missing)f(v)-5 b(alues)42
-b(to)h(indicated)f(empt)m(y)g(p)s(oin)m(ts.)75 b(F)-8
-b(or)42 b(example,)150 2082 y(so-called)e(\\staggered)h(grids")d(will)h
-(use)f(few)m(er)h(east)p 2015 2082 V 41 w(w)m(est)g(p)s(oin)m(ts)f
-(near)h(the)f(p)s(oles)h(and)e(more)i(near)150 2191 y(the)e(equator.)61
-b(netCDF)38 b(only)f(accepts)h(rectangular)g(arra)m(ys)f(so)g(space)h
-(m)m(ust)f(b)s(e)f(allo)s(cated)j(for)e(the)150 2301
-y(maxim)m(um)30 b(n)m(um)m(b)s(er)e(of)i(east)p 1169
-2301 V 41 w(w)m(est)g(p)s(oin)m(ts)g(at)h(all)f(latitudes.)42
+FA(R)p FE(-dimensional)150 1440 y(arra)m(ys)26 b(and)e(the)i(pro)s
+(duct)e(of)h(the)h(dimension)f(sizes)h(is)f(the)h(total)h(n)m(um)m(b)s
+(er)d(of)h(elemen)m(ts)i(N)e(in)g(the)h(other)150 1549
+y(v)-5 b(ariables.)41 b(Geoscience)33 b(applications)f(tend)e(to)h(use)
+f FA(R)25 b FE(=)g(1,)31 b FA(R)25 b FE(=)g(2,)31 b(and)f
+FA(R)25 b FE(=)g(3.)275 1711 y(If)34 b(the)i(grid)f(is)g(has)g(no)g
+(simple)g(represen)m(tation)h(\(e.g.,)j(discon)m(tin)m(uous\))c(then)g
+(it)h(mak)m(es)g(sense)f(to)150 1820 y(store)e(all)h(co)s(ordinates)f
+(as)g(1D)h(arra)m(ys)f(with)f(the)h(same)g(size)h(as)f(the)g(n)m(um)m
+(b)s(er)e(of)i(grid)g(p)s(oin)m(ts.)47 b(These)150 1930
+y(gridp)s(oin)m(ts)30 b(can)h(b)s(e)e(completely)k(indep)s(enden)m(t)c
+(of)h(all)h(the)g(other)g(\(o)m(wn)f(w)m(eigh)m(t,)j(area,)e(etc.\).)
+275 2091 y FA(R)p FE(=1:)40 b(lat\(n)m(um)m(b)s(er)p
+971 2091 28 4 v 40 w(of)p 1084 2091 V 41 w(gridp)s(oin)m(ts\))30
+b(and)g(lon\(n)m(um)m(b)s(er)p 2225 2091 V 39 w(of)p
+2337 2091 V 40 w(gridp)s(oin)m(ts\))275 2252 y(If)f(the)i(horizon)m
+(tal)h(grid)e(is)h(time-in)m(v)-5 b(arian)m(t)32 b(then)e
+FA(R)p FE(=2)h(is)f(common:)275 2413 y FA(R)p FE(=2:)40
+b(lat\(south)p 887 2413 V 41 w(north,east)p 1327 2413
+V 41 w(w)m(est\))32 b(and)d(lon\(south)p 2159 2413 V
+41 w(north,east)p 2599 2413 V 40 w(w)m(est\))275 2574
+y(The)g(W)-8 b(eather)32 b(and)e(Researc)m(h)h(F)-8 b(orecast)33
+b(\()p FD(WRF)p FE(\))f(mo)s(del)e(uses)g FA(R)p FE(=3:)275
+2736 y FA(R)p FE(=3:)40 b(lat\(time,south)p 1088 2736
+V 42 w(north,east)p 1529 2736 V 41 w(w)m(est\),)32 b(lon\(time,south)p
+2411 2736 V 41 w(north,east)p 2851 2736 V 41 w(w)m(est\))275
+2897 y(and)d(so)i(supp)s(orts)d(grids)i(that)h(c)m(hange)h(with)e
+(time.)275 3058 y(Grids)41 b(with)g FA(R)h Fz(>)f FE(1)h(often)g(use)g
+(missing)f(v)-5 b(alues)42 b(to)h(indicated)f(empt)m(y)g(p)s(oin)m(ts.)
+75 b(F)-8 b(or)42 b(example,)150 3168 y(so-called)e(\\staggered)h
+(grids")d(will)h(use)f(few)m(er)h(east)p 2015 3168 V
+41 w(w)m(est)g(p)s(oin)m(ts)f(near)h(the)f(p)s(oles)h(and)e(more)i
+(near)150 3277 y(the)e(equator.)61 b(netCDF)38 b(only)f(accepts)h
+(rectangular)g(arra)m(ys)f(so)g(space)h(m)m(ust)f(b)s(e)f(allo)s(cated)
+j(for)e(the)150 3387 y(maxim)m(um)30 b(n)m(um)m(b)s(er)e(of)i(east)p
+1169 3387 V 41 w(w)m(est)g(p)s(oin)m(ts)g(at)h(all)f(latitudes.)42
 b(Then)28 b(the)i(application)h(writes)f(missing)150
-2410 y(v)-5 b(alues)31 b(in)m(to)g(the)g(un)m(used)e(p)s(oin)m(ts)h
-(near)g(the)h(p)s(oles.)275 2578 y(W)-8 b(e)41 b(demonstrate)g(the)g
-Fy(ncap2)e FD(analysis)i(tec)m(hnique)g(for)g(irregular)f(regions)h(b)m
-(y)f(constructing)i(a)150 2688 y(mask)24 b(for)f(an)g
-Fz(R)p FD(=2)h(grid.)38 b(W)-8 b(e)25 b(wish)d(to)j(\014nd,)e(sa)m(y)-8
-b(,)27 b(the)c(mean)h(temp)s(erature)f(within)g([)p Fz(lat)p
-3191 2688 V 41 w(min)p FD(,)p Fz(lat)p 3514 2688 V 41
-w(max)6 b FD(])150 2798 y(and)30 b([)p Fz(lon)p 479 2798
-V 40 w(min)p FD(,)p Fz(lon)p 817 2798 V 40 w(max)6 b
-FD(]:)390 2966 y Fy(ncap2)46 b(-s)i('mask_var=)d(\(lat)h(>=)h(lat_min)f
-(&&)h(lat)g(<=)g(lat_max\))f(&&)h(\\)1345 3075 y(\(lon)f(>=)h(lon_min)f
-(&&)h(lon)g(<=)g(lon_max\);')e(in.nc)i(out.nc)275 3243
-y FD(Arbitrarily)22 b(shap)s(ed)g(regions)h(can)g(b)s(e)f(de\014ned)g
+3496 y(v)-5 b(alues)31 b(in)m(to)g(the)g(un)m(used)e(p)s(oin)m(ts)h
+(near)g(the)h(p)s(oles.)275 3657 y(W)-8 b(e)41 b(demonstrate)g(the)g
+Fz(ncap2)e FE(analysis)i(tec)m(hnique)g(for)g(irregular)f(regions)h(b)m
+(y)f(constructing)i(a)150 3767 y(mask)24 b(for)f(an)g
+FA(R)p FE(=2)h(grid.)38 b(W)-8 b(e)25 b(wish)d(to)j(\014nd,)e(sa)m(y)-8
+b(,)27 b(the)c(mean)h(temp)s(erature)f(within)g([)p FA(lat)p
+3191 3767 V 41 w(min)p FE(,)p FA(lat)p 3514 3767 V 41
+w(max)6 b FE(])150 3877 y(and)30 b([)p FA(lon)p 479 3877
+V 40 w(min)p FE(,)p FA(lon)p 817 3877 V 40 w(max)6 b
+FE(]:)390 4038 y Fz(ncap2)46 b(-s)i('mask_var=)d(\(lat)h(>=)h(lat_min)f
+(&&)h(lat)g(<=)g(lat_max\))f(&&)h(\\)1345 4147 y(\(lon)f(>=)h(lon_min)f
+(&&)h(lon)g(<=)g(lon_max\);')e(in.nc)i(out.nc)275 4309
+y FE(Arbitrarily)22 b(shap)s(ed)g(regions)h(can)g(b)s(e)f(de\014ned)g
 (b)m(y)h(more)f(complex)i(conditional)g(statemen)m(ts.)40
-b(Once)150 3353 y(de\014ned,)29 b(masks)i(can)f(b)s(e)g(applied)g(to)h
+b(Once)150 4418 y(de\014ned,)29 b(masks)i(can)f(b)s(e)g(applied)g(to)h
 (sp)s(eci\014c)f(v)-5 b(ariables,)32 b(and)d(to)j(en)m(tire)f(\014les:)
-390 3521 y Fy(ncap2)46 b(-s)i('temperature_avg=\(tempe)o(rat)o(ure*)o
+390 4579 y Fz(ncap2)46 b(-s)i('temperature_avg=\(tempe)o(rat)o(ure*)o
 (mask)o(_va)o(r\).a)o(vg\(\))o(')42 b(in.nc)k(out.nc)390
-3630 y(ncwa)h(-a)g(lat,lon)f(-m)h(mask_var)e(-w)j(area)e(in.nc)h
-(out.nc)275 3798 y FD(Crafting)41 b(suc)m(h)f(commands)h(on)g(the)g
+4689 y(ncwa)h(-a)g(lat,lon)f(-m)h(mask_var)e(-w)j(area)e(in.nc)h
+(out.nc)275 4850 y FE(Crafting)41 b(suc)m(h)f(commands)h(on)g(the)g
 (command)g(line)g(is)g(p)s(ossible)g(though)f(un)m(wieldy)-8
-b(.)73 b(In)40 b(suc)m(h)150 3908 y(cases,)32 b(a)e(script)h(is)f
+b(.)73 b(In)40 b(suc)m(h)150 4960 y(cases,)32 b(a)e(script)h(is)f
 (often)h(cleaner)g(and)f(allo)m(ws)i(y)m(ou)e(to)h(do)s(cumen)m(t)g
-(the)f(pro)s(cedure:)390 4076 y Fy(cat)47 b(>)g(ncap2.in)f(<<)h('EOF')
-390 4186 y(mask_var)f(=)h(\(lat)g(>=)g(lat_min)f(&&)h(lat)g(<=)g
+(the)f(pro)s(cedure:)390 5121 y Fz(cat)47 b(>)g(ncap2.in)f(<<)h('EOF')
+390 5230 y(mask_var)f(=)h(\(lat)g(>=)g(lat_min)f(&&)h(lat)g(<=)g
 (lat_max\))e(&&)j(\(lon)e(>=)h(lon_min)f(&&)h(>)h(lon)f(<=)g
-(lon_max\);)390 4295 y(if\(mask_var.total\(\))c(>)k(0\){)g(//)g(Check)f
-(that)h(mask)g(contains)e(some)i(valid)f(values)485 4405
-y(temperature_avg=\(temperatu)o(re*m)o(ask)o(_var)o(\).av)o(g\(\))o(;)c
-(//)47 b(Average)f(temperature)485 4514 y(temperature_max=\(temperatu)o
-(re*m)o(ask)o(_var)o(\).ma)o(x\(\))o(;)c(//)47 b(Maximum)f(temperature)
-390 4624 y(})390 4734 y(EOF)390 4843 y(ncap2)g(-S)i(ncap2.in)d(in.nc)h
-(out.nc)275 5011 y FD(Grids)30 b(lik)m(e)j(those)e(pro)s(duced)f(b)m(y)
-h(the)g FC(WRF)h FD(mo)s(del)f(are)g(complex)h(b)s(ecause)f(one)h(m)m
-(ust)f(use)g(global)150 5121 y(metadata)d(to)f(determine)f(the)g(grid)g
-(staggering)i(and)d(o\013sets)i(to)g(translate)g Fy(XLAT)e
-FD(and)h Fy(XLONG)e FD(in)m(to)j(real)150 5230 y(latitudes,)41
+(lon_max\);)390 5340 y(if\(mask_var.total\(\))c(>)k(0\){)g(//)g(Check)f
+(that)h(mask)g(contains)e(some)i(valid)f(values)p eop
+end
+%%Page: 144 150
+TeXDict begin 144 149 bop 150 -116 a FE(144)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)485 299 y Fz(temperature_avg=\(temperatu)o
+(re*m)o(ask)o(_var)o(\).av)o(g\(\))o(;)42 b(//)47 b(Average)f
+(temperature)485 408 y(temperature_max=\(temperatu)o(re*m)o(ask)o(_var)
+o(\).ma)o(x\(\))o(;)c(//)47 b(Maximum)f(temperature)390
+518 y(})390 628 y(EOF)390 737 y(ncap2)g(-S)i(ncap2.in)d(in.nc)h(out.nc)
+275 897 y FE(Grids)30 b(lik)m(e)j(those)e(pro)s(duced)f(b)m(y)h(the)g
+FD(WRF)h FE(mo)s(del)f(are)g(complex)h(b)s(ecause)f(one)h(m)m(ust)f
+(use)g(global)150 1006 y(metadata)d(to)f(determine)f(the)g(grid)g
+(staggering)i(and)d(o\013sets)i(to)g(translate)g Fz(XLAT)e
+FE(and)h Fz(XLONG)e FE(in)m(to)j(real)150 1116 y(latitudes,)41
 b(longitudes,)g(and)c(missing)h(p)s(oin)m(ts.)63 b(The)38
-b FC(WRF)g FD(grid)g(do)s(cumen)m(tation)h(should)e(describ)s(e)150
-5340 y(this.)k(F)-8 b(or)31 b FC(WRF)g FD(\014les)f(creating)i
-(regional)f(masks)g(lo)s(oks,)g(in)f(general,)h(lik)m(e)p
-eop end
-%%Page: 132 138
-TeXDict begin 132 137 bop 150 -116 a FD(132)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(mask_var)46 b(=)h(\(XLAT)f(>=)i
-(lat_min)d(&&)j(XLAT)e(<=)h(lat_max\))f(&&)h(\(XLONG)f(>=)h(lon_min)f
-(&&)h(XLONG)g(<=)g(lon_max\);)275 458 y FD(A)38 b(few)g(notes:)57
-b(Irregular)38 b(regions)g(are)h(the)g(union)e(of)h(arra)m(ys)h
-(lat/lon)p 2798 458 28 4 v 42 w(min/max's.)64 b(The)38
-b(mask)150 568 y(pro)s(cedure)29 b(is)i(iden)m(tical)h(for)e(all)h
-Fz(R)p FD(.)150 767 y Fu(4.1.18)63 b(Bilinear)41 b(in)m(terp)s(olation)
-150 914 y FD(As)32 b(of)g(v)m(ersion)h(4.0.0)h FC(NCO)e
-FD(has)g(in)m(ternal)g(routines)g(to)h(p)s(erform)e(bilinear)h(in)m
-(terp)s(olation)i(on)e(gridded)150 1024 y(data)g(sets.)43
+b FD(WRF)g FE(grid)g(do)s(cumen)m(tation)h(should)e(describ)s(e)150
+1226 y(this.)k(F)-8 b(or)31 b FD(WRF)g FE(\014les)f(creating)i
+(regional)f(masks)g(lo)s(oks,)g(in)f(general,)h(lik)m(e)390
+1385 y Fz(mask_var)46 b(=)h(\(XLAT)f(>=)i(lat_min)d(&&)j(XLAT)e(<=)h
+(lat_max\))f(&&)h(\(XLONG)f(>=)h(lon_min)f(&&)h(XLONG)g(<=)g
+(lon_max\);)275 1545 y FE(A)38 b(few)g(notes:)57 b(Irregular)38
+b(regions)g(are)h(the)g(union)e(of)h(arra)m(ys)h(lat/lon)p
+2798 1545 28 4 v 42 w(min/max's.)64 b(The)38 b(mask)150
+1654 y(pro)s(cedure)29 b(is)i(iden)m(tical)h(for)e(all)h
+FA(R)p FE(.)150 1854 y Fv(4.1.18)63 b(Bilinear)41 b(in)m(terp)s
+(olation)150 2001 y FE(As)32 b(of)g(v)m(ersion)h(4.0.0)h
+FD(NCO)e FE(has)g(in)m(ternal)g(routines)g(to)h(p)s(erform)e(bilinear)h
+(in)m(terp)s(olation)i(on)e(gridded)150 2110 y(data)g(sets.)43
 b(In)30 b(mathematics,)j(bilinear)f(in)m(terp)s(olation)g(is)f(an)g
 (extension)h(of)f(linear)h(in)m(terp)s(olation)g(for)150
-1134 y(in)m(terp)s(olating)40 b(functions)e(of)h(t)m(w)m(o)h(v)-5
+2220 y(in)m(terp)s(olating)40 b(functions)e(of)h(t)m(w)m(o)h(v)-5
 b(ariables)40 b(on)e(a)i(regular)f(grid.)65 b(The)39
-b(idea)g(is)g(to)g(p)s(erform)f(linear)150 1243 y(in)m(terp)s(olation)
+b(idea)g(is)g(to)g(p)s(erform)f(linear)150 2329 y(in)m(terp)s(olation)
 32 b(\014rst)d(in)h(one)h(direction,)g(and)f(then)g(again)i(in)e(the)g
-(other)h(direction.)275 1403 y(Supp)s(ose)22 b(w)m(e)i(ha)m(v)m(e)h(an)
-f(irregular)g(grid)f(of)i(data)f Fy(temperature[lat,lon])p
-FD(,)c(with)k(co-ordinate)h(v)-5 b(ars)150 1512 y Fy(lat[lat],)28
-b(lon[lon])p FD(.)44 b(W)-8 b(e)34 b(wish)d(to)i(\014nd)e(the)h(temp)s
-(erature)h(at)g(an)f(arbitary)g(p)s(oin)m(t)g([)p Fz(X)p
-FD(,)p Fz(Y)13 b FD(])33 b(within)150 1622 y(the)k(grid.)59
-b(If)36 b(w)m(e)h(can)g(lo)s(cate)h(lat)p 1346 1622 V
-41 w(min,lat)p 1669 1622 V 41 w(max)f(and)f(lon)p 2220
-1622 V 40 w(min,lon)p 2558 1622 V 40 w(max)h(suc)m(h)f(that)h
-Fy(lat_min)29 b(<=)g(X)150 1731 y(<=)h(lat_max)i FD(and)h
-Fy(lon_min)c(<=)h(Y)g(<=)f(lon_max)k FD(then)g(w)m(e)i(can)f(in)m(terp)
-s(olate)i(in)e(t)m(w)m(o)h(dimensions)f(the)150 1841
-y(temp)s(erature)c(at)h([)p Fz(X)p FD(,)p Fz(Y)13 b FD(].)275
-2001 y(The)29 b(general)j(form)e(of)g(the)h Fy(ncap2)e
-FD(in)m(terp)s(olation)i(function)f(is)390 2160 y Fy
+(other)h(direction.)275 2489 y(Supp)s(ose)22 b(w)m(e)i(ha)m(v)m(e)h(an)
+f(irregular)g(grid)f(of)i(data)f Fz(temperature[lat,lon])p
+FE(,)c(with)k(co-ordinate)h(v)-5 b(ars)150 2598 y Fz(lat[lat],)28
+b(lon[lon])p FE(.)44 b(W)-8 b(e)34 b(wish)d(to)i(\014nd)e(the)h(temp)s
+(erature)h(at)g(an)f(arbitary)g(p)s(oin)m(t)g([)p FA(X)p
+FE(,)p FA(Y)13 b FE(])33 b(within)150 2708 y(the)k(grid.)59
+b(If)36 b(w)m(e)h(can)g(lo)s(cate)h(lat)p 1346 2708 V
+41 w(min,lat)p 1669 2708 V 41 w(max)f(and)f(lon)p 2220
+2708 V 40 w(min,lon)p 2558 2708 V 40 w(max)h(suc)m(h)f(that)h
+Fz(lat_min)29 b(<=)g(X)150 2818 y(<=)h(lat_max)i FE(and)h
+Fz(lon_min)c(<=)h(Y)g(<=)f(lon_max)k FE(then)g(w)m(e)i(can)f(in)m(terp)
+s(olate)i(in)e(t)m(w)m(o)h(dimensions)f(the)150 2927
+y(temp)s(erature)c(at)h([)p FA(X)p FE(,)p FA(Y)13 b FE(].)275
+3087 y(The)29 b(general)j(form)e(of)g(the)h Fz(ncap2)e
+FE(in)m(terp)s(olation)i(function)f(is)390 3246 y Fz
 (var_out=bilinear_interp\()o(grid)o(_in,)o(gri)o(d_ou)o(t,gr)o(id_)o
 (out_)o(x,gr)o(id_)o(out_)o(y,gr)o(id_)o(in_x)o(,gri)o(d_i)o(n_y\))275
-2320 y FD(where)150 2504 y Fy(grid_in)144 b FD(Input)37
+3406 y FE(where)150 3590 y Fz(grid_in)144 b FE(Input)37
 b(function)h(data.)65 b(Usually)38 b(a)h(t)m(w)m(o)g(dimensional)g(v)-5
 b(ariable.)65 b(It)38 b(m)m(ust)g(b)s(e)g(of)g(size)630
-2614 y Fy(grid_in_x.size\(\)*grid_in)o(_y.s)o(ize\()o(\))150
-2773 y(grid_out)96 b FD(This)32 b(v)-5 b(ariable)34 b(is)f(the)g(shap)s
-(e)g(of)g Fy(var_out)p FD(.)47 b(Usually)33 b(a)h(t)m(w)m(o)g
-(dimensional)f(v)-5 b(ariable.)50 b(It)630 2883 y(m)m(ust)30
-b(b)s(e)g(of)h(size)g Fy(grid_out_x.size\(\)*grid_)o(out_)o(y.si)o
-(ze\()o(\))150 3043 y(grid_out_x)630 3152 y Fz(X)40 b
-FD(output)30 b(v)-5 b(alues)150 3312 y Fy(grid_out_y)630
-3421 y Fz(Y)43 b FD(output)30 b(v)-5 b(alues)150 3581
-y Fy(grid_in_x)630 3691 y Fz(X)40 b FD(input)29 b(v)-5
+3700 y Fz(grid_in_x.size\(\)*grid_in)o(_y.s)o(ize\()o(\))150
+3859 y(grid_out)96 b FE(This)32 b(v)-5 b(ariable)34 b(is)f(the)g(shap)s
+(e)g(of)g Fz(var_out)p FE(.)47 b(Usually)33 b(a)h(t)m(w)m(o)g
+(dimensional)f(v)-5 b(ariable.)50 b(It)630 3969 y(m)m(ust)30
+b(b)s(e)g(of)h(size)g Fz(grid_out_x.size\(\)*grid_)o(out_)o(y.si)o
+(ze\()o(\))150 4129 y(grid_out_x)630 4238 y FA(X)40 b
+FE(output)30 b(v)-5 b(alues)150 4398 y Fz(grid_out_y)630
+4507 y FA(Y)43 b FE(output)30 b(v)-5 b(alues)150 4667
+y Fz(grid_in_x)630 4777 y FA(X)40 b FE(input)29 b(v)-5
 b(alues)31 b(v)-5 b(alues.)41 b(Must)30 b(b)s(e)g(monotonic)h
-(\(increasing)h(or)e(decreasing\).)150 3850 y Fy(grid_in_y)630
-3960 y Fz(Y)43 b FD(input)30 b(v)-5 b(alues)30 b(v)-5
+(\(increasing)h(or)e(decreasing\).)150 4936 y Fz(grid_in_y)630
+5046 y FA(Y)43 b FE(input)30 b(v)-5 b(alues)30 b(v)-5
 b(alues.)41 b(Must)31 b(b)s(e)e(monotonic)j(\(increasing)f(or)g
-(decreasing\).)150 4144 y(Prior)39 b(to)h(calculations)h(all)f(argumen)
-m(ts)f(are)h(con)m(v)m(erted)g(to)g(t)m(yp)s(e)f Fy(NC_DOUBLE)p
-FD(.)65 b(After)39 b(calculations)150 4254 y Fy(var_out)28
-b FD(is)j(con)m(v)m(erted)h(to)f(the)f(input)g(t)m(yp)s(e)g(of)h
-Fy(grid_in)p FD(.)275 4413 y(Supp)s(ose)d(the)j(\014rst)e(part)i(of)f
-(an)g Fy(ncap2)f FD(script)i(is)390 4573 y Fy(defdim\("X",4\);)390
-4682 y(defdim\("Y",5\);)390 4902 y(//)47 b(Temperature)390
-5011 y(T_in[$X,$Y]=)438 5121 y({100,)f(200,)h(300,)f(400,)h(500,)485
-5230 y(101,)g(202,)g(303,)f(404,)h(505,)485 5340 y(102,)g(204,)g(306,)f
-(408,)h(510,)p eop end
-%%Page: 133 139
-TeXDict begin 133 138 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(133)485
-299 y Fy(103,)47 b(206,)g(309,)f(412,)h(515.0)f(};)390
-518 y(//)h(Coordinate)e(variables)390 628 y(x_in[$X]={0.0,1.0,2.0,3.)o
-(01};)390 737 y(y_in[$Y]={1.0,2.0,3.0,4.)o(0,5})o(;)275
-902 y FD(No)m(w)31 b(w)m(e)f(in)m(terp)s(olate)i(with)e(the)h(follo)m
-(wing)h(v)-5 b(ariables:)390 1066 y Fy(defdim\("Xn",3\);)390
-1176 y(defdim\("Yn",4\);)390 1285 y(T_out[$Xn,$Yn]=0.0;)390
-1395 y(x_out[$Xn]={0.0,0.02,3.0)o(1};)390 1504 y
-(y_out[$Yn]={1.1,2.0,3,4})o(;)390 1724 y(var_out=bilinear_interp\()o
+(decreasing\).)150 5230 y(Prior)39 b(to)h(calculations)h(all)f(argumen)
+m(ts)f(are)h(con)m(v)m(erted)g(to)g(t)m(yp)s(e)f Fz(NC_DOUBLE)p
+FE(.)65 b(After)39 b(calculations)150 5340 y Fz(var_out)28
+b FE(is)j(con)m(v)m(erted)h(to)f(the)f(input)g(t)m(yp)s(e)g(of)h
+Fz(grid_in)p FE(.)p eop end
+%%Page: 145 151
+TeXDict begin 145 150 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(145)275 299 y(Supp)s(ose)28
+b(the)j(\014rst)e(part)i(of)f(an)g Fz(ncap2)f FE(script)i(is)390
+471 y Fz(defdim\("X",4\);)390 581 y(defdim\("Y",5\);)390
+800 y(//)47 b(Temperature)390 909 y(T_in[$X,$Y]=)438
+1019 y({100,)f(200,)h(300,)f(400,)h(500,)485 1129 y(101,)g(202,)g(303,)
+f(404,)h(505,)485 1238 y(102,)g(204,)g(306,)f(408,)h(510,)485
+1348 y(103,)g(206,)g(309,)f(412,)h(515.0)f(};)390 1567
+y(//)h(Coordinate)e(variables)390 1677 y(x_in[$X]={0.0,1.0,2.0,3.)o
+(01};)390 1786 y(y_in[$Y]={1.0,2.0,3.0,4.)o(0,5})o(;)275
+1958 y FE(No)m(w)31 b(w)m(e)f(in)m(terp)s(olate)i(with)e(the)h(follo)m
+(wing)h(v)-5 b(ariables:)390 2131 y Fz(defdim\("Xn",3\);)390
+2240 y(defdim\("Yn",4\);)390 2350 y(T_out[$Xn,$Yn]=0.0;)390
+2459 y(x_out[$Xn]={0.0,0.02,3.0)o(1};)390 2569 y
+(y_out[$Yn]={1.1,2.0,3,4})o(;)390 2788 y(var_out=bilinear_interp\()o
 (T_in)o(,T_o)o(ut,)o(x_ou)o(t,y_)o(out)o(,x_i)o(n,y_)o(in\))o(;)390
-1833 y(print\(var_out\);)390 1943 y(//)47 b(110,)g(200,)f(300,)h(400,)
-390 2052 y(//)g(110.022,)f(200.04,)g(300.06,)f(400.08,)390
-2162 y(//)i(113.3,)f(206,)h(309,)g(412)f(;)275 2326 y
-FD(It)30 b(is)g(p)s(ossible)g(to)h(in)m(terp)s(olate)h(a)f(single)g(p)s
-(oin)m(t:)390 2491 y Fy(var_out=bilinear_interp\()o(T_in)o(,0.0)o(,3.)o
-(0,4.)o(99,x)o(_in)o(,y_i)o(n\);)390 2600 y(print\(var_out\);)390
-2710 y(//)47 b(513.920594059406)150 2874 y Fq(W)-8 b(rapping)30
-b(and)f(Extrap)s(olation)150 2984 y FD(The)g(function)g
-Fy(bilinear_interp_wrap\(\))24 b FD(tak)m(es)31 b(the)f(same)g(argumen)
-m(ts)g(as)g Fy(bilinear_interp\(\))150 3093 y FD(but)36
-b(p)s(erforms)f(wrapping)h(\()p Fz(Y)13 b FD(\))37 b(and)f(extrap)s
-(olation)i(\()p Fz(X)9 b FD(\))38 b(for)f(p)s(oin)m(ts)f(o\013)h(the)g
-(edge)h(of)f(the)g(grid.)59 b(If)150 3203 y(the)37 b(giv)m(en)g(range)g
+2898 y(print\(var_out\);)390 3007 y(//)47 b(110,)g(200,)f(300,)h(400,)
+390 3117 y(//)g(110.022,)f(200.04,)g(300.06,)f(400.08,)390
+3226 y(//)i(113.3,)f(206,)h(309,)g(412)f(;)275 3399 y
+FE(It)30 b(is)g(p)s(ossible)g(to)h(in)m(terp)s(olate)h(a)f(single)g(p)s
+(oin)m(t:)390 3571 y Fz(var_out=bilinear_interp\()o(T_in)o(,0.0)o(,3.)o
+(0,4.)o(99,x)o(_in)o(,y_i)o(n\);)390 3680 y(print\(var_out\);)390
+3790 y(//)47 b(513.920594059406)150 3962 y Fr(W)-8 b(rapping)30
+b(and)f(Extrap)s(olation)150 4072 y FE(The)g(function)g
+Fz(bilinear_interp_wrap\(\))24 b FE(tak)m(es)31 b(the)f(same)g(argumen)
+m(ts)g(as)g Fz(bilinear_interp\(\))150 4181 y FE(but)36
+b(p)s(erforms)f(wrapping)h(\()p FA(Y)13 b FE(\))37 b(and)f(extrap)s
+(olation)i(\()p FA(X)9 b FE(\))38 b(for)f(p)s(oin)m(ts)f(o\013)h(the)g
+(edge)h(of)f(the)g(grid.)59 b(If)150 4291 y(the)37 b(giv)m(en)g(range)g
 (of)g(longitude)g(is)f(sa)m(y)i(\(25-335\))h(and)d(w)m(e)h(ha)m(v)m(e)h
 (a)f(p)s(oin)m(t)f(at)h(20)h(degrees,)h(then)d(the)150
-3313 y(endp)s(oin)m(ts)e(of)g(the)h(range)g(are)g(used)f(for)g(the)h
+4401 y(endp)s(oin)m(ts)e(of)g(the)h(range)g(are)g(used)f(for)g(the)h
 (in)m(terp)s(olation.)54 b(This)34 b(is)g(what)h(wrapping)e(means.)53
-b(F)-8 b(or)150 3422 y(wrapping)36 b(to)i(o)s(ccur)g
-Fz(Y)50 b FD(m)m(ust)37 b(b)s(e)g(longitude)h(and)f(m)m(ust)g(b)s(e)g
+b(F)-8 b(or)150 4510 y(wrapping)36 b(to)i(o)s(ccur)g
+FA(Y)50 b FE(m)m(ust)37 b(b)s(e)g(longitude)h(and)f(m)m(ust)g(b)s(e)g
 (in)g(the)g(range)h(\(0,360\))i(or)e(\(-180,180\).)150
-3532 y(There)22 b(are)h(no)g(restrictions)h(on)f(the)f(longitude)i(\()p
-Fz(X)9 b FD(\))24 b(v)-5 b(alues,)25 b(though)d(t)m(ypically)j(these)e
-(are)g(in)g(the)g(range)150 3641 y(\(-90,90\).)44 b(This)29
-b Fy(ncap2)g FD(script)i(illustrates)g(b)s(oth)f(wrapping)f(and)h
-(extrap)s(olation)i(of)e(end)g(p)s(oin)m(ts:)390 3806
-y Fy(defdim\("lat_in",6\);)390 3915 y(defdim\("lon_in",5\);)390
-4134 y(//)47 b(Coordinate)e(input)i(vars)390 4244 y
-(lat_in[$lat_in]={-80,-40)o(,0,3)o(0,60)o(.0,)o(85.0)o(};)390
-4354 y(lon_in[$lon_in]={30,)42 b(110,)47 b(190,)g(270,)f(350.0};)390
-4573 y(T_in[$lat_in,$lon_in]=)485 4682 y({10,40,50,30,15,)581
-4792 y(12,43,52,31,16,)581 4902 y(14,46,54,32,17,)581
-5011 y(16,49,56,33,18,)581 5121 y(18,52,58,34,19,)581
-5230 y(20,55,60,35,20.0)d(};)p eop end
-%%Page: 134 140
-TeXDict begin 134 139 bop 150 -116 a FD(134)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(defdim\("lat_out",4\);)390
-408 y(defdim\("lon_out",3\);)390 628 y(//)47 b(Coordinate)e(variables)
-390 737 y(lat_out[$lat_out]={-90,0)o(,70,)o(88.0)o(};)390
-847 y(lon_out[$lon_out]={0,190)o(,355)o(.0};)390 1066
-y(T_out[$lat_out,$lon_out])o(=0.0)o(;)390 1285 y
-(T_out=bilinear_interp_wr)o(ap\(T)o(_in,)o(T_o)o(ut,l)o(at_o)o(ut,)o
-(lon_)o(out,)o(lat)o(_in,)o(lon_)o(in\))o(;)390 1395
-y(print\(T_out\);)390 1504 y(//)i(13.4375,)f(49.5,)g(14.09375,)390
-1614 y(//)h(16.25,)f(54,)h(16.625,)390 1724 y(//)g(19.25,)f(58.8,)h
-(19.325,)390 1833 y(//)g(20.15,)f(60.24,)g(20.135)g(;)150
-2052 y Fu(4.1.19)63 b(GSL)41 b(sp)s(ecial)h(functions)150
-2199 y FD(As)49 b(of)g(v)m(ersion)g(3.9.6)h(\(released)g(Jan)m(uary)-8
-b(,)54 b(2009\),)i FC(NCO)48 b FD(can)h(link)g(to)h(the)e
-FC(GNU)i FD(Scien)m(ti\014c)g(Li-)150 2308 y(brary)37
-b(\()p FC(GSL)p FD(\).)65 b Fy(ncap2)37 b FD(can)h(access)h(most)g
-FC(GSL)f FD(sp)s(ecial)h(functions)e(including)h(Airy)-8
-b(,)41 b(Bessel,)g(error,)150 2418 y(gamma,)d(b)s(eta,)f(h)m(yp)s
+4620 y(There)22 b(are)h(no)g(restrictions)h(on)f(the)f(longitude)i(\()p
+FA(X)9 b FE(\))24 b(v)-5 b(alues,)25 b(though)d(t)m(ypically)j(these)e
+(are)g(in)g(the)g(range)150 4729 y(\(-90,90\).)44 b(This)29
+b Fz(ncap2)g FE(script)i(illustrates)g(b)s(oth)f(wrapping)f(and)h
+(extrap)s(olation)i(of)e(end)g(p)s(oin)m(ts:)390 4902
+y Fz(defdim\("lat_in",6\);)390 5011 y(defdim\("lon_in",5\);)390
+5230 y(//)47 b(Coordinate)e(input)i(vars)390 5340 y
+(lat_in[$lat_in]={-80,-40)o(,0,3)o(0,60)o(.0,)o(85.0)o(};)p
+eop end
+%%Page: 146 152
+TeXDict begin 146 151 bop 150 -116 a FE(146)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(lon_in[$lon_in]={30,)42
+b(110,)47 b(190,)g(270,)f(350.0};)390 518 y(T_in[$lat_in,$lon_in]=)485
+628 y({10,40,50,30,15,)581 737 y(12,43,52,31,16,)581
+847 y(14,46,54,32,17,)581 956 y(16,49,56,33,18,)581 1066
+y(18,52,58,34,19,)581 1176 y(20,55,60,35,20.0)d(};)390
+1395 y(defdim\("lat_out",4\);)390 1504 y(defdim\("lon_out",3\);)390
+1724 y(//)k(Coordinate)e(variables)390 1833 y(lat_out[$lat_out]={-90,0)
+o(,70,)o(88.0)o(};)390 1943 y(lon_out[$lon_out]={0,190)o(,355)o(.0};)
+390 2162 y(T_out[$lat_out,$lon_out])o(=0.0)o(;)390 2381
+y(T_out=bilinear_interp_wr)o(ap\(T)o(_in,)o(T_o)o(ut,l)o(at_o)o(ut,)o
+(lon_)o(out,)o(lat)o(_in,)o(lon_)o(in\))o(;)390 2491
+y(print\(T_out\);)390 2600 y(//)i(13.4375,)f(49.5,)g(14.09375,)390
+2710 y(//)h(16.25,)f(54,)h(16.625,)390 2819 y(//)g(19.25,)f(58.8,)h
+(19.325,)390 2929 y(//)g(20.15,)f(60.24,)g(20.135)g(;)150
+3126 y Fv(4.1.19)63 b(GSL)41 b(sp)s(ecial)h(functions)150
+3273 y FE(As)49 b(of)g(v)m(ersion)g(3.9.6)h(\(released)g(Jan)m(uary)-8
+b(,)54 b(2009\),)i FD(NCO)48 b FE(can)h(link)g(to)h(the)e
+FD(GNU)i FE(Scien)m(ti\014c)g(Li-)150 3383 y(brary)37
+b(\()p FD(GSL)p FE(\).)65 b Fz(ncap2)37 b FE(can)h(access)h(most)g
+FD(GSL)f FE(sp)s(ecial)h(functions)e(including)h(Airy)-8
+b(,)41 b(Bessel,)g(error,)150 3493 y(gamma,)d(b)s(eta,)f(h)m(yp)s
 (ergeometric,)i(and)c(Legendre)g(functions)g(and)g(elliptical)j(in)m
-(tegrals.)58 b FC(GSL)36 b FD(m)m(ust)150 2527 y(b)s(e)28
+(tegrals.)58 b FD(GSL)36 b FE(m)m(ust)150 3602 y(b)s(e)28
 b(v)m(ersion)j(1.4)f(or)e(later.)41 b(T)-8 b(o)29 b(list)h(the)f
-FC(GSL)f FD(functions)h(a)m(v)-5 b(ailable)31 b(with)d(y)m(our)g
-FC(NCO)h FD(build,)f(use)g Fy(ncap2)150 2637 y(-f)i(|)g(grep)f(^gsl)p
-FD(.)150 2806 y(The)36 b(function)g(names)g(used)g(b)m(y)g
-FC(ncap2)f FD(mirror)h(their)g FC(GSL)h FD(names.)58
-b(The)36 b FC(NCO)g FD(wrapp)s(ers)f(for)h FC(GSL)150
-2916 y FD(functions)26 b(automatically)j(call)e(the)f(error-handling)g
-(v)m(ersion)g(of)h(the)f FC(GSL)g FD(function)g(when)f(a)m(v)-5
-b(ailable)3685 2883 y Ft(2)3725 2916 y FD(.)150 3025
-y(This)26 b(allo)m(ws)j FC(NCO)e FD(to)h(return)e(a)i(missing)f(v)-5
-b(alue)27 b(when)g(the)g FC(GSL)g FD(library)g(encoun)m(ters)h(a)f
-(domain)g(error)150 3135 y(or)35 b(a)h(\015oating)g(p)s(oin)m(t)f
+FD(GSL)f FE(functions)h(a)m(v)-5 b(ailable)31 b(with)d(y)m(our)g
+FD(NCO)h FE(build,)f(use)g Fz(ncap2)150 3712 y(-f)i(|)g(grep)f(^gsl)p
+FE(.)150 3871 y(The)36 b(function)g(names)g(used)g(b)m(y)g
+FD(ncap2)f FE(mirror)h(their)g FD(GSL)h FE(names.)58
+b(The)36 b FD(NCO)g FE(wrapp)s(ers)f(for)h FD(GSL)150
+3981 y FE(functions)26 b(automatically)j(call)e(the)f(error-handling)g
+(v)m(ersion)g(of)h(the)f FD(GSL)g FE(function)g(when)f(a)m(v)-5
+b(ailable)3685 3948 y Fu(2)3725 3981 y FE(.)150 4090
+y(This)26 b(allo)m(ws)j FD(NCO)e FE(to)h(return)e(a)i(missing)f(v)-5
+b(alue)27 b(when)g(the)g FD(GSL)g FE(library)g(encoun)m(ters)h(a)f
+(domain)g(error)150 4200 y(or)35 b(a)h(\015oating)g(p)s(oin)m(t)f
 (exception.)57 b(The)34 b(slo)m(w-do)m(wn)i(due)e(to)i(calling)h(the)f
-(error-handling)e(v)m(ersion)i(of)150 3244 y(the)42 b
-FC(GSL)h FD(n)m(umerical)f(functions)g(w)m(as)h(found)d(to)j(b)s(e)f
+(error-handling)e(v)m(ersion)i(of)150 4309 y(the)42 b
+FD(GSL)h FE(n)m(umerical)f(functions)g(w)m(as)h(found)d(to)j(b)s(e)f
 (negligible)i(\(please)f(let)g(us)f(kno)m(w)g(if)g(y)m(ou)g(\014nd)150
-3354 y(otherwise\).)150 3523 y(Consider)30 b(the)g(gamma)h(function.)
-150 3633 y(The)f FC(GSL)g FD(function)g(protot)m(yp)s(e)h(is)150
-3742 y Fy(int)e(gsl_sf_gamma_e\(const)c(double)k(x,)h(gsl_sf_result)c
-(*)31 b(result\))18 b FD(The)j Fy(ncap2)e FD(script)i(w)m(ould)150
-3852 y(b)s(e:)390 4021 y Fy(lon_in[lon]={-1,0.1,0,2,)o(0.3})o(;)390
-4131 y(lon_out=gsl_sf_gamma\(lon)o(_in\))o(;)390 4240
-y(lon_out=)46 b(_,)h(9.5135,)f(4.5908,)f(2.9915)150 4409
-y FD(The)38 b(\014rst)g(v)-5 b(alue)38 b(is)h(set)g(to)g
-Fy(_FillValue)c FD(since)k(the)g(gamma)g(function)f(is)g(unde\014ned)f
-(for)h(negativ)m(e)150 4519 y(in)m(tegers.)52 b(If)33
-b(the)h(input)f(v)-5 b(ariable)35 b(has)e(a)h(missing)g(v)-5
-b(alue)34 b(then)g(this)f(v)-5 b(alue)34 b(is)g(used.)50
-b(Otherwise,)35 b(the)150 4628 y(default)22 b(double)f(\014ll)h(v)-5
-b(alue)23 b(is)e(used)g(\(de\014ned)g(in)h(the)g(netCDF)g(header)g
-Fy(netcdf.h)e FD(as)i Fy(NC_FILL_DOUBLE)150 4738 y(=)30
-b(9.969e+36)p FD(\).)150 4907 y(Consider)g(a)g(call)i(to)f(a)g(Bessel)g
-(function)f(with)g FC(GSL)h FD(protot)m(yp)s(e)150 5017
-y Fy(int)e(gsl_sf_bessel_Jn_e\(int)c(n,)30 b(double)e(x,)i
-(gsl_sf_result)d(*)j(result\))p 150 5154 1200 4 v 199
-5221 a Ft(2)297 5253 y Fs(These)23 b(are)g(the)e Fp(GSL)i
-Fs(standard)g(function)f(names)h(p)r(ost\014xed)e(with)i
-Fr(_e)p Fs(.)34 b Fp(NCO)22 b Fs(calls)h(these)g(functions)f
-(automatically)-6 b(,)275 5340 y(without)25 b(the)h Fp(NCO)f
-Fs(command)h(ha)n(ving)f(to)h(sp)r(eci\014cally)h(indicate)f(the)f
-Fr(_e)h Fs(function)g(su\016x.)p eop end
-%%Page: 135 141
-TeXDict begin 135 140 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(135)275
-299 y(An)30 b Fy(ncap2)e FD(script)j(w)m(ould)f(b)s(e)390
-459 y Fy(lon_out=gsl_sf_bessel_Jn)o(\(2,l)o(on_i)o(n\);)390
-569 y(lon_out=0.11490,)43 b(0.0012,)j(0.00498,)g(0.011165)275
-729 y FD(This)31 b(computes)i(the)f(Bessel)i(function)e(of)g(order)g
-Fz(n=2)39 b FD(for)32 b(ev)m(ery)h(v)-5 b(alue)33 b(in)f
-Fy(lon_in)p FD(.)45 b(The)32 b(Bessel)150 838 y(order)e(argumen)m(t,)h
+4419 y(otherwise\).)150 4578 y(Consider)30 b(the)g(gamma)h(function.)
+150 4688 y(The)f FD(GSL)g FE(function)g(protot)m(yp)s(e)h(is)150
+4798 y Fz(int)e(gsl_sf_gamma_e\(const)c(double)k(x,)h(gsl_sf_result)c
+(*)31 b(result\))18 b FE(The)j Fz(ncap2)e FE(script)i(w)m(ould)150
+4907 y(b)s(e:)390 5067 y Fz(lon_in[lon]={-1,0.1,0,2,)o(0.3})o(;)p
+150 5154 1200 4 v 199 5221 a Fu(2)297 5253 y Ft(These)i(are)g(the)e
+Fq(GSL)i Ft(standard)g(function)f(names)h(p)r(ost\014xed)e(with)i
+Fs(_e)p Ft(.)34 b Fq(NCO)22 b Ft(calls)h(these)g(functions)f
+(automatically)-6 b(,)275 5340 y(without)25 b(the)h Fq(NCO)f
+Ft(command)h(ha)n(ving)f(to)h(sp)r(eci\014cally)h(indicate)f(the)f
+Fs(_e)h Ft(function)g(su\016x.)p eop end
+%%Page: 147 153
+TeXDict begin 147 152 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(147)390 299 y Fz
+(lon_out=gsl_sf_gamma\(lon)o(_in\))o(;)390 408 y(lon_out=)46
+b(_,)h(9.5135,)f(4.5908,)f(2.9915)150 577 y FE(The)38
+b(\014rst)g(v)-5 b(alue)38 b(is)h(set)g(to)g Fz(_FillValue)c
+FE(since)k(the)g(gamma)g(function)f(is)g(unde\014ned)f(for)h(negativ)m
+(e)150 687 y(in)m(tegers.)52 b(If)33 b(the)h(input)f(v)-5
+b(ariable)35 b(has)e(a)h(missing)g(v)-5 b(alue)34 b(then)g(this)f(v)-5
+b(alue)34 b(is)g(used.)50 b(Otherwise,)35 b(the)150 796
+y(default)22 b(double)f(\014ll)h(v)-5 b(alue)23 b(is)e(used)g
+(\(de\014ned)g(in)h(the)g(netCDF)g(header)g Fz(netcdf.h)e
+FE(as)i Fz(NC_FILL_DOUBLE)150 906 y(=)30 b(9.969e+36)p
+FE(\).)150 1074 y(Consider)g(a)g(call)i(to)f(a)g(Bessel)g(function)f
+(with)g FD(GSL)h FE(protot)m(yp)s(e)150 1184 y Fz(int)e
+(gsl_sf_bessel_Jn_e\(int)c(n,)30 b(double)e(x,)i(gsl_sf_result)d(*)j
+(result\))275 1353 y FE(An)g Fz(ncap2)e FE(script)j(w)m(ould)f(b)s(e)
+390 1521 y Fz(lon_out=gsl_sf_bessel_Jn)o(\(2,l)o(on_i)o(n\);)390
+1631 y(lon_out=0.11490,)43 b(0.0012,)j(0.00498,)g(0.011165)275
+1799 y FE(This)31 b(computes)i(the)f(Bessel)i(function)e(of)g(order)g
+FA(n=2)39 b FE(for)32 b(ev)m(ery)h(v)-5 b(alue)33 b(in)f
+Fz(lon_in)p FE(.)45 b(The)32 b(Bessel)150 1909 y(order)e(argumen)m(t,)h
 (an)f(in)m(teger,)i(can)f(also)g(b)s(e)f(a)h(non-scalar)g(v)-5
-b(ariable,)31 b(i.e.,)h(an)e(arra)m(y)-8 b(.)390 999
-y Fy(n_in[lon]={0,1,2,3};)390 1108 y(lon_out=gsl_sf_bessel_Jn)o(\(n_i)o
-(n,0.)o(5\);)390 1218 y(lon_out=)46 b(0.93846,)f(0.24226,)h(0.03060,)f
-(0.00256)150 1378 y FD(Argumen)m(ts)c(to)h FC(GSL)g FD(wrapp)s(er)d
-(functions)i(in)g Fy(ncap2)f FD(m)m(ust)h(conform)g(to)h(one)g
-(another,)i(i.e.,)i(they)150 1487 y(m)m(ust)c(share)f(the)i(same)f
+b(ariable,)31 b(i.e.,)h(an)e(arra)m(y)-8 b(.)390 2078
+y Fz(n_in[lon]={0,1,2,3};)390 2187 y(lon_out=gsl_sf_bessel_Jn)o(\(n_i)o
+(n,0.)o(5\);)390 2297 y(lon_out=)46 b(0.93846,)f(0.24226,)h(0.03060,)f
+(0.00256)150 2465 y FE(Argumen)m(ts)c(to)h FD(GSL)g FE(wrapp)s(er)d
+(functions)i(in)g Fz(ncap2)f FE(m)m(ust)h(conform)g(to)h(one)g
+(another,)i(i.e.,)i(they)150 2575 y(m)m(ust)c(share)f(the)i(same)f
 (sub-set)g(of)g(dimensions.)74 b(F)-8 b(or)43 b(example:)65
-b Fy(three_out=gsl_sf_bessel)o(_)150 1597 y(Jn\(n_in,three_dmn_var_db)o
-(l\))22 b FD(is)29 b(v)-5 b(alid)29 b(b)s(ecause)f(the)h(v)-5
-b(ariable)29 b Fy(three_dmn_var_dbl)24 b FD(has)k(a)h
-Fz(lon)150 1707 y FD(dimension,)d(so)g Fy(n_in)e FD(in)h(can)h(b)s(e)f
-(broadcast)h(to)g(conform)f(to)i Fy(three_dmn_var_dbl)p
-FD(.)34 b(Ho)m(w)m(ev)m(er)27 b Fy(time_)150 1816 y
-(out=gsl_sf_bessel_Jn\(n_i)o(n,ti)o(me\))d FD(is)30 b(in)m(v)-5
-b(alid.)275 1976 y(Consider)50 b(the)h(elliptical)i(in)m(tegral)g(with)
-d(protot)m(yp)s(e)i Fy(int)29 b(gsl_sf_ellint_RD_e\(double)24
-b(x,)150 2086 y(double)29 b(y,)g(double)g(z,)h(gsl_mode_t)d(mode,)i
-(gsl_sf_result)e(*)j(result\))390 2246 y(three_out=gsl_sf_ellint_)o
+b Fz(three_out=gsl_sf_bessel)o(_)150 2685 y(Jn\(n_in,three_dmn_var_db)o
+(l\))22 b FE(is)29 b(v)-5 b(alid)29 b(b)s(ecause)f(the)h(v)-5
+b(ariable)29 b Fz(three_dmn_var_dbl)24 b FE(has)k(a)h
+FA(lon)150 2794 y FE(dimension,)d(so)g Fz(n_in)e FE(in)h(can)h(b)s(e)f
+(broadcast)h(to)g(conform)f(to)i Fz(three_dmn_var_dbl)p
+FE(.)34 b(Ho)m(w)m(ev)m(er)27 b Fz(time_)150 2904 y
+(out=gsl_sf_bessel_Jn\(n_i)o(n,ti)o(me\))d FE(is)30 b(in)m(v)-5
+b(alid.)275 3072 y(Consider)50 b(the)h(elliptical)i(in)m(tegral)g(with)
+d(protot)m(yp)s(e)i Fz(int)29 b(gsl_sf_ellint_RD_e\(double)24
+b(x,)150 3182 y(double)29 b(y,)g(double)g(z,)h(gsl_mode_t)d(mode,)i
+(gsl_sf_result)e(*)j(result\))390 3351 y(three_out=gsl_sf_ellint_)o
 (RD\(0)o(.5,t)o(ime)o(,thr)o(ee_d)o(mn_)o(var_)o(dbl\))o(;)150
-2406 y FD(The)45 b(three)g(argumen)m(ts)h(are)f(all)h(conformable)g(so)
-g(the)f(ab)s(o)m(v)m(e)h Fy(ncap2)e FD(call)j(is)e(v)-5
-b(alid.)86 b(The)44 b(mo)s(de)150 2516 y(argumen)m(t)h(in)f(the)g
+3519 y FE(The)45 b(three)g(argumen)m(ts)h(are)f(all)h(conformable)g(so)
+g(the)f(ab)s(o)m(v)m(e)h Fz(ncap2)e FE(call)j(is)e(v)-5
+b(alid.)86 b(The)44 b(mo)s(de)150 3629 y(argumen)m(t)h(in)f(the)g
 (function)h(protot)m(yp)s(e)g(con)m(trols)g(the)g(con)m(v)m(ergence)i
-(of)d(the)h(algorithm.)83 b(It)45 b(also)150 2626 y(app)s(ears)25
+(of)d(the)h(algorithm.)83 b(It)45 b(also)150 3738 y(app)s(ears)25
 b(in)g(the)g(Airy)h(F)-8 b(unction)26 b(protot)m(yp)s(es.)39
 b(It)26 b(can)g(b)s(e)f(set)h(b)m(y)f(de\014ning)f(the)i(en)m(vironmen)
-m(t)g(v)-5 b(ariable)150 2735 y Fy(GSL_PREC_MODE)p FD(.)49
+m(t)g(v)-5 b(ariable)150 3848 y Fz(GSL_PREC_MODE)p FE(.)49
 b(If)33 b(unset)h(it)h(defaults)f(to)h(the)g(v)-5 b(alue)34
-b Fy(GSL_PREC_DOUBLE)p FD(.)48 b(See)35 b(the)f FC(GSL)h
-FD(man)m(ual)150 2845 y(for)30 b(more)h(details.)390
-3005 y Fy(export)46 b(GSL_PREC_MODE=0)e(//)j(GSL_PREC_DOUBLE)390
-3114 y(export)f(GSL_PREC_MODE=1)e(//)j(GSL_PREC_SINGLE)390
-3224 y(export)f(GSL_PREC_MODE=2)e(//)j(GSL_PREC_APPROX)150
-3384 y FD(The)37 b Fy(ncap2)f FD(wrapp)s(ers)g(to)i(the)g(arra)m(y)g
+b Fz(GSL_PREC_DOUBLE)p FE(.)48 b(See)35 b(the)f FD(GSL)h
+FE(man)m(ual)150 3957 y(for)30 b(more)h(details.)390
+4126 y Fz(export)46 b(GSL_PREC_MODE=0)e(//)j(GSL_PREC_DOUBLE)390
+4236 y(export)f(GSL_PREC_MODE=1)e(//)j(GSL_PREC_SINGLE)390
+4345 y(export)f(GSL_PREC_MODE=2)e(//)j(GSL_PREC_APPROX)150
+4514 y FE(The)37 b Fz(ncap2)f FE(wrapp)s(ers)g(to)i(the)g(arra)m(y)g
 (functions)f(are)h(sligh)m(tly)g(di\013eren)m(t.)63 b(Consider)37
-b(the)g(follo)m(wing)150 3494 y FC(GSL)30 b FD(protot)m(yp)s(e)150
-3603 y Fy(int)f(gsl_sf_bessel_Jn_array\(int)24 b(nmin,)29
+b(the)g(follo)m(wing)150 4623 y FD(GSL)30 b FE(protot)m(yp)s(e)150
+4733 y Fz(int)f(gsl_sf_bessel_Jn_array\(int)24 b(nmin,)29
 b(int)g(nmax,)g(double)g(x,)g(double)g(*result_array\))390
-3764 y(b1=lon.double\(\);)390 3873 y(x=0.5;)390 3983
+4902 y(b1=lon.double\(\);)390 5011 y(x=0.5;)390 5121
 y(status=gsl_sf_bessel_Jn_)o(arra)o(y\(1,)o(4,x)o(,&b1)o(\);)390
-4092 y(print\(status\);)390 4202 y(b1=0.24226,0.0306,0.0025)o(6,0.)o
-(0001)o(6;)150 4362 y FD(This)35 b(calculates)j(the)d(Bessel)i
-(function)e(of)h Fz(x)6 b FD(=0.5)37 b(for)e Fz(n)p FD(=1)g(to)h(4.)57
-b(The)35 b(\014rst)g(three)h(argumen)m(ts)g(are)150 4472
-y(scalar)28 b(v)-5 b(alues.)40 b(If)27 b(a)g(non-scalar)h(v)-5
-b(ariable)28 b(is)f(supplied)f(as)i(an)f(argumen)m(t)g(then)g(only)g
-(the)h(\014rst)e(v)-5 b(alue)28 b(is)150 4581 y(used.)45
+5230 y(print\(status\);)390 5340 y(b1=0.24226,0.0306,0.0025)o(6,0.)o
+(0001)o(6;)p eop end
+%%Page: 148 154
+TeXDict begin 148 153 bop 150 -116 a FE(148)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(This)35 b(calculates)j(the)d
+(Bessel)i(function)e(of)h FA(x)6 b FE(=0.5)37 b(for)e
+FA(n)p FE(=1)g(to)h(4.)57 b(The)35 b(\014rst)g(three)h(argumen)m(ts)g
+(are)150 408 y(scalar)28 b(v)-5 b(alues.)40 b(If)27 b(a)g(non-scalar)h
+(v)-5 b(ariable)28 b(is)f(supplied)f(as)i(an)f(argumen)m(t)g(then)g
+(only)g(the)h(\014rst)e(v)-5 b(alue)28 b(is)150 518 y(used.)45
 b(The)32 b(\014nal)g(argumen)m(t)h(is)f(the)g(v)-5 b(ariable)33
 b(where)f(the)g(results)g(are)h(stored)f(\(NB:)i(the)e
-Fy(&)g FD(indicates)150 4691 y(this)25 b(is)g(a)h(call)g(b)m(y)f
+Fz(&)g FE(indicates)150 628 y(this)25 b(is)g(a)h(call)g(b)m(y)f
 (reference\).)40 b(This)24 b(\014nal)h(argumen)m(t)g(m)m(ust)g(b)s(e)g
-(of)g(t)m(yp)s(e)g Fy(double)f FD(and)g(m)m(ust)h(b)s(e)f(of)i(least)
-150 4800 y(size)34 b Fz(nmax-nmin)p Fy(+)p Fz(1)p FD(.)50
+(of)g(t)m(yp)s(e)g Fz(double)f FE(and)g(m)m(ust)h(b)s(e)f(of)i(least)
+150 737 y(size)34 b FA(nmax-nmin)p Fz(+)p FA(1)p FE(.)50
 b(If)33 b(either)h(of)g(these)g(conditions)g(is)g(not)f(met)i(then)e
-(then)g(the)h(function)f(returns)150 4910 y(an)d(error)g(message.)42
+(then)g(the)h(function)f(returns)150 847 y(an)d(error)g(message.)42
 b(The)30 b(function/wrapp)s(er)f(returns)g(a)i(status)f(\015ag.)41
-b(Zero)31 b(indicates)g(success.)150 5070 y(Consider)f(another)g(arra)m
-(y)h(function)150 5180 y Fy(int)e(gsl_sf_legendre_Pl_array\()24
+b(Zero)31 b(indicates)g(success.)150 1022 y(Consider)f(another)g(arra)m
+(y)h(function)150 1132 y Fz(int)e(gsl_sf_legendre_Pl_array\()24
 b(int)29 b(lmax,)g(double)g(x,)h(double)e(*result_array\);)390
-5340 y(a1=time.double\(\);)p eop end
-%%Page: 136 142
-TeXDict begin 136 141 bop 150 -116 a FD(136)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(x=0.3;)390 408
+1307 y(a1=time.double\(\);)390 1417 y(x=0.3;)390 1526
 y(status=gsl_sf_legendre_P)o(l_ar)o(ray\()o(a1.)o(size)o(\(\)-1)o(,)42
-b(x,&a1\);)390 518 y(print\(status\);)150 701 y FD(This)25
-b(call)i(calculates)g Fz(P)p 992 701 28 4 v 40 w(l)t
-FD(\(0.3\))g(for)f Fz(l)t FD(=0..9.)40 b(Note)27 b(that)f
-Fy(|)p Fz(x)p Fy(|<)p Fz(=1)p FD(,)g(otherwise)g(there)f(will)h(b)s(e)f
-(a)h(domain)150 810 y(error.)40 b(See)31 b(the)g FC(GSL)f
-FD(do)s(cumen)m(tation)h(for)f(more)h(details.)150 993
-y(The)e FC(GSL)h FD(functions)f(implemen)m(ted)h(in)g
-FC(NCO)f FD(are)h(listed)g(in)g(the)f(table)i(b)s(elo)m(w.)41
-b(This)29 b(table)h(is)g(correct)150 1103 y(for)i FC(GSL)g
-FD(v)m(ersion)h(1.10.)48 b(T)-8 b(o)33 b(see)g(what)f(functions)g(are)h
+b(x,&a1\);)390 1636 y(print\(status\);)150 1811 y FE(This)25
+b(call)i(calculates)g FA(P)p 992 1811 28 4 v 40 w(l)t
+FE(\(0.3\))g(for)f FA(l)t FE(=0..9.)40 b(Note)27 b(that)f
+Fz(|)p FA(x)p Fz(|<)p FA(=1)p FE(,)g(otherwise)g(there)f(will)h(b)s(e)f
+(a)h(domain)150 1921 y(error.)40 b(See)31 b(the)g FD(GSL)f
+FE(do)s(cumen)m(tation)h(for)f(more)h(details.)150 2096
+y(The)e FD(GSL)h FE(functions)f(implemen)m(ted)h(in)g
+FD(NCO)f FE(are)h(listed)g(in)g(the)f(table)i(b)s(elo)m(w.)41
+b(This)29 b(table)h(is)g(correct)150 2206 y(for)i FD(GSL)g
+FE(v)m(ersion)h(1.10.)48 b(T)-8 b(o)33 b(see)g(what)f(functions)g(are)h
 (a)m(v)-5 b(ailable)34 b(on)e(y)m(our)h(build)e(run)g(the)h(command)150
-1212 y Fy(ncap2)d(-f)h(|grep)f(^gsl)e FD(.)41 b(T)-8
-b(o)29 b(see)g(this)g(table)h(along)g(with)f(the)g FC(GSL)g
-FD(C-function)f(protot)m(yp)s(es)i(lo)s(ok)f(at)150 1322
-y(the)i(spreadsheet)f Fq(do)s(c/nco)p 1124 1322 28 5
-v 40 w(gsl.o)s(ds)p FD(.)150 1724 y Fq(GSL)g(NAME)867
-b(I)144 b(NCAP)30 b(FUNCTION)g(CALL)150 1833 y FD(gsl)p
-262 1833 28 4 v 41 w(sf)p 367 1833 V 39 w(airy)p 560
-1833 V 40 w(Ai)p 693 1833 V 41 w(e)742 b(Y)112 b(gsl)p
-1802 1833 V 40 w(sf)p 1906 1833 V 40 w(airy)p 2100 1833
-V 40 w(Ai\(dbl)p 2395 1833 V 40 w(expr\))150 1943 y(gsl)p
-262 1943 V 41 w(sf)p 367 1943 V 39 w(airy)p 560 1943
-V 40 w(Bi)p 689 1943 V 41 w(e)746 b(Y)112 b(gsl)p 1802
-1943 V 40 w(sf)p 1906 1943 V 40 w(airy)p 2100 1943 V
-40 w(Bi\(dbl)p 2391 1943 V 40 w(expr\))150 2052 y(gsl)p
-262 2052 V 41 w(sf)p 367 2052 V 39 w(airy)p 560 2052
-V 40 w(Ai)p 693 2052 V 41 w(scaled)p 971 2052 V 41 w(e)464
-b(Y)112 b(gsl)p 1802 2052 V 40 w(sf)p 1906 2052 V 40
-w(airy)p 2100 2052 V 40 w(Ai)p 2233 2052 V 41 w(scaled\(dbl)p
-2673 2052 V 40 w(expr\))150 2162 y(gsl)p 262 2162 V 41
-w(sf)p 367 2162 V 39 w(airy)p 560 2162 V 40 w(Bi)p 689
-2162 V 41 w(scaled)p 967 2162 V 41 w(e)468 b(Y)112 b(gsl)p
-1802 2162 V 40 w(sf)p 1906 2162 V 40 w(airy)p 2100 2162
-V 40 w(Bi)p 2229 2162 V 41 w(scaled\(dbl)p 2669 2162
-V 40 w(expr\))150 2271 y(gsl)p 262 2271 V 41 w(sf)p 367
-2271 V 39 w(airy)p 560 2271 V 40 w(Ai)p 693 2271 V 41
-w(deriv)p 934 2271 V 40 w(e)502 b(Y)112 b(gsl)p 1802
-2271 V 40 w(sf)p 1906 2271 V 40 w(airy)p 2100 2271 V
-40 w(Ai)p 2233 2271 V 41 w(deriv\(dbl)p 2636 2271 V 39
-w(expr\))150 2381 y(gsl)p 262 2381 V 41 w(sf)p 367 2381
-V 39 w(airy)p 560 2381 V 40 w(Bi)p 689 2381 V 41 w(deriv)p
-930 2381 V 40 w(e)506 b(Y)112 b(gsl)p 1802 2381 V 40
-w(sf)p 1906 2381 V 40 w(airy)p 2100 2381 V 40 w(Bi)p
-2229 2381 V 41 w(deriv\(dbl)p 2632 2381 V 39 w(expr\))150
-2491 y(gsl)p 262 2491 V 41 w(sf)p 367 2491 V 39 w(airy)p
-560 2491 V 40 w(Ai)p 693 2491 V 41 w(deriv)p 934 2491
-V 40 w(scaled)p 1211 2491 V 41 w(e)224 b(Y)112 b(gsl)p
-1802 2491 V 40 w(sf)p 1906 2491 V 40 w(airy)p 2100 2491
-V 40 w(Ai)p 2233 2491 V 41 w(deriv)p 2474 2491 V 39 w(scaled\(dbl)p
-2912 2491 V 41 w(expr\))150 2600 y(gsl)p 262 2600 V 41
-w(sf)p 367 2600 V 39 w(airy)p 560 2600 V 40 w(Bi)p 689
-2600 V 41 w(deriv)p 930 2600 V 40 w(scaled)p 1207 2600
-V 41 w(e)228 b(Y)112 b(gsl)p 1802 2600 V 40 w(sf)p 1906
-2600 V 40 w(airy)p 2100 2600 V 40 w(Bi)p 2229 2600 V
-41 w(deriv)p 2470 2600 V 40 w(scaled\(dbl)p 2909 2600
-V 40 w(expr\))150 2710 y(gsl)p 262 2710 V 41 w(sf)p 367
-2710 V 39 w(airy)p 560 2710 V 40 w(zero)p 761 2710 V
-41 w(Ai)p 895 2710 V 41 w(e)540 b(Y)112 b(gsl)p 1802
-2710 V 40 w(sf)p 1906 2710 V 40 w(airy)p 2100 2710 V
-40 w(zero)p 2301 2710 V 41 w(Ai\(uin)m(t)p 2629 2710
-V 41 w(expr\))150 2819 y(gsl)p 262 2819 V 41 w(sf)p 367
-2819 V 39 w(airy)p 560 2819 V 40 w(zero)p 761 2819 V
-41 w(Bi)p 891 2819 V 41 w(e)544 b(Y)112 b(gsl)p 1802
-2819 V 40 w(sf)p 1906 2819 V 40 w(airy)p 2100 2819 V
-40 w(zero)p 2301 2819 V 41 w(Bi\(uin)m(t)p 2625 2819
-V 41 w(expr\))150 2929 y(gsl)p 262 2929 V 41 w(sf)p 367
-2929 V 39 w(airy)p 560 2929 V 40 w(zero)p 761 2929 V
-41 w(Ai)p 895 2929 V 41 w(deriv)p 1136 2929 V 40 w(e)300
+2315 y Fz(ncap2)d(-f)h(|grep)f(^gsl)e FE(.)41 b(T)-8
+b(o)29 b(see)g(this)g(table)h(along)g(with)f(the)g FD(GSL)g
+FE(C-function)f(protot)m(yp)s(es)i(lo)s(ok)f(at)150 2425
+y(the)i(spreadsheet)f Fr(do)s(c/nco)p 1124 2425 28 5
+v 40 w(gsl.o)s(ds)p FE(.)150 2819 y Fr(GSL)g(NAME)867
+b(I)144 b(NCAP)30 b(FUNCTION)g(CALL)150 2929 y FE(gsl)p
+262 2929 28 4 v 41 w(sf)p 367 2929 V 39 w(airy)p 560
+2929 V 40 w(Ai)p 693 2929 V 41 w(e)742 b(Y)112 b(gsl)p
+1802 2929 V 40 w(sf)p 1906 2929 V 40 w(airy)p 2100 2929
+V 40 w(Ai\(dbl)p 2395 2929 V 40 w(expr\))150 3039 y(gsl)p
+262 3039 V 41 w(sf)p 367 3039 V 39 w(airy)p 560 3039
+V 40 w(Bi)p 689 3039 V 41 w(e)746 b(Y)112 b(gsl)p 1802
+3039 V 40 w(sf)p 1906 3039 V 40 w(airy)p 2100 3039 V
+40 w(Bi\(dbl)p 2391 3039 V 40 w(expr\))150 3148 y(gsl)p
+262 3148 V 41 w(sf)p 367 3148 V 39 w(airy)p 560 3148
+V 40 w(Ai)p 693 3148 V 41 w(scaled)p 971 3148 V 41 w(e)464
+b(Y)112 b(gsl)p 1802 3148 V 40 w(sf)p 1906 3148 V 40
+w(airy)p 2100 3148 V 40 w(Ai)p 2233 3148 V 41 w(scaled\(dbl)p
+2673 3148 V 40 w(expr\))150 3258 y(gsl)p 262 3258 V 41
+w(sf)p 367 3258 V 39 w(airy)p 560 3258 V 40 w(Bi)p 689
+3258 V 41 w(scaled)p 967 3258 V 41 w(e)468 b(Y)112 b(gsl)p
+1802 3258 V 40 w(sf)p 1906 3258 V 40 w(airy)p 2100 3258
+V 40 w(Bi)p 2229 3258 V 41 w(scaled\(dbl)p 2669 3258
+V 40 w(expr\))150 3367 y(gsl)p 262 3367 V 41 w(sf)p 367
+3367 V 39 w(airy)p 560 3367 V 40 w(Ai)p 693 3367 V 41
+w(deriv)p 934 3367 V 40 w(e)502 b(Y)112 b(gsl)p 1802
+3367 V 40 w(sf)p 1906 3367 V 40 w(airy)p 2100 3367 V
+40 w(Ai)p 2233 3367 V 41 w(deriv\(dbl)p 2636 3367 V 39
+w(expr\))150 3477 y(gsl)p 262 3477 V 41 w(sf)p 367 3477
+V 39 w(airy)p 560 3477 V 40 w(Bi)p 689 3477 V 41 w(deriv)p
+930 3477 V 40 w(e)506 b(Y)112 b(gsl)p 1802 3477 V 40
+w(sf)p 1906 3477 V 40 w(airy)p 2100 3477 V 40 w(Bi)p
+2229 3477 V 41 w(deriv\(dbl)p 2632 3477 V 39 w(expr\))150
+3587 y(gsl)p 262 3587 V 41 w(sf)p 367 3587 V 39 w(airy)p
+560 3587 V 40 w(Ai)p 693 3587 V 41 w(deriv)p 934 3587
+V 40 w(scaled)p 1211 3587 V 41 w(e)224 b(Y)112 b(gsl)p
+1802 3587 V 40 w(sf)p 1906 3587 V 40 w(airy)p 2100 3587
+V 40 w(Ai)p 2233 3587 V 41 w(deriv)p 2474 3587 V 39 w(scaled\(dbl)p
+2912 3587 V 41 w(expr\))150 3696 y(gsl)p 262 3696 V 41
+w(sf)p 367 3696 V 39 w(airy)p 560 3696 V 40 w(Bi)p 689
+3696 V 41 w(deriv)p 930 3696 V 40 w(scaled)p 1207 3696
+V 41 w(e)228 b(Y)112 b(gsl)p 1802 3696 V 40 w(sf)p 1906
+3696 V 40 w(airy)p 2100 3696 V 40 w(Bi)p 2229 3696 V
+41 w(deriv)p 2470 3696 V 40 w(scaled\(dbl)p 2909 3696
+V 40 w(expr\))150 3806 y(gsl)p 262 3806 V 41 w(sf)p 367
+3806 V 39 w(airy)p 560 3806 V 40 w(zero)p 761 3806 V
+41 w(Ai)p 895 3806 V 41 w(e)540 b(Y)112 b(gsl)p 1802
+3806 V 40 w(sf)p 1906 3806 V 40 w(airy)p 2100 3806 V
+40 w(zero)p 2301 3806 V 41 w(Ai\(uin)m(t)p 2629 3806
+V 41 w(expr\))150 3915 y(gsl)p 262 3915 V 41 w(sf)p 367
+3915 V 39 w(airy)p 560 3915 V 40 w(zero)p 761 3915 V
+41 w(Bi)p 891 3915 V 41 w(e)544 b(Y)112 b(gsl)p 1802
+3915 V 40 w(sf)p 1906 3915 V 40 w(airy)p 2100 3915 V
+40 w(zero)p 2301 3915 V 41 w(Bi\(uin)m(t)p 2625 3915
+V 41 w(expr\))150 4025 y(gsl)p 262 4025 V 41 w(sf)p 367
+4025 V 39 w(airy)p 560 4025 V 40 w(zero)p 761 4025 V
+41 w(Ai)p 895 4025 V 41 w(deriv)p 1136 4025 V 40 w(e)300
+b(Y)112 b(gsl)p 1802 4025 V 40 w(sf)p 1906 4025 V 40
+w(airy)p 2100 4025 V 40 w(zero)p 2301 4025 V 41 w(Ai)p
+2435 4025 V 40 w(deriv\(uin)m(t)p 2869 4025 V 41 w(expr\))150
+4134 y(gsl)p 262 4134 V 41 w(sf)p 367 4134 V 39 w(airy)p
+560 4134 V 40 w(zero)p 761 4134 V 41 w(Bi)p 891 4134
+V 41 w(deriv)p 1132 4134 V 40 w(e)304 b(Y)112 b(gsl)p
+1802 4134 V 40 w(sf)p 1906 4134 V 40 w(airy)p 2100 4134
+V 40 w(zero)p 2301 4134 V 41 w(Bi)p 2431 4134 V 41 w(deriv\(uin)m(t)p
+2866 4134 V 40 w(expr\))150 4244 y(gsl)p 262 4244 V 41
+w(sf)p 367 4244 V 39 w(b)s(essel)p 637 4244 V 40 w(J0)p
+769 4244 V 40 w(e)667 b(Y)112 b(gsl)p 1802 4244 V 40
+w(sf)p 1906 4244 V 40 w(b)s(essel)p 2177 4244 V 40 w(J0\(dbl)p
+2471 4244 V 39 w(expr\))150 4354 y(gsl)p 262 4354 V 41
+w(sf)p 367 4354 V 39 w(b)s(essel)p 637 4354 V 40 w(J1)p
+769 4354 V 40 w(e)667 b(Y)112 b(gsl)p 1802 4354 V 40
+w(sf)p 1906 4354 V 40 w(b)s(essel)p 2177 4354 V 40 w(J1\(dbl)p
+2471 4354 V 39 w(expr\))150 4463 y(gsl)p 262 4463 V 41
+w(sf)p 367 4463 V 39 w(b)s(essel)p 637 4463 V 40 w(Jn)p
+775 4463 V 39 w(e)662 b(Y)112 b(gsl)p 1802 4463 V 40
+w(sf)p 1906 4463 V 40 w(b)s(essel)p 2177 4463 V 40 w(Jn\(in)m(t)p
+2458 4463 V 40 w(expr,dbl)p 2825 4463 V 39 w(expr\))150
+4573 y(gsl)p 262 4573 V 41 w(sf)p 367 4573 V 39 w(b)s(essel)p
+637 4573 V 40 w(Jn)p 775 4573 V 39 w(arra)m(y)495 b(Y)112
+b(status=gsl)p 2111 4573 V 40 w(sf)p 2215 4573 V 40 w(b)s(essel)p
+2486 4573 V 40 w(Jn)p 2624 4573 V 39 w(arra)m(y\(in)m(t,in)m
+(t,double,&v)-5 b(ar)p 3654 4573 V 42 w(out\))150 4682
+y(gsl)p 262 4682 V 41 w(sf)p 367 4682 V 39 w(b)s(essel)p
+637 4682 V 40 w(Y0)p 790 4682 V 41 w(e)645 b(Y)112 b(gsl)p
+1802 4682 V 40 w(sf)p 1906 4682 V 40 w(b)s(essel)p 2177
+4682 V 40 w(Y0\(dbl)p 2492 4682 V 40 w(expr\))150 4792
+y(gsl)p 262 4792 V 41 w(sf)p 367 4792 V 39 w(b)s(essel)p
+637 4792 V 40 w(Y1)p 790 4792 V 41 w(e)645 b(Y)112 b(gsl)p
+1802 4792 V 40 w(sf)p 1906 4792 V 40 w(b)s(essel)p 2177
+4792 V 40 w(Y1\(dbl)p 2492 4792 V 40 w(expr\))150 4902
+y(gsl)p 262 4902 V 41 w(sf)p 367 4902 V 39 w(b)s(essel)p
+637 4902 V 40 w(Yn)p 796 4902 V 40 w(e)640 b(Y)112 b(gsl)p
+1802 4902 V 40 w(sf)p 1906 4902 V 40 w(b)s(essel)p 2177
+4902 V 40 w(Yn\(in)m(t)p 2479 4902 V 40 w(expr,dbl)p
+2846 4902 V 39 w(expr\))150 5011 y(gsl)p 262 5011 V 41
+w(sf)p 367 5011 V 39 w(b)s(essel)p 637 5011 V 40 w(Yn)p
+796 5011 V 40 w(arra)m(y)473 b(Y)112 b(gsl)p 1802 5011
+V 40 w(sf)p 1906 5011 V 40 w(b)s(essel)p 2177 5011 V
+40 w(Yn)p 2336 5011 V 39 w(arra)m(y)150 5121 y(gsl)p
+262 5121 V 41 w(sf)p 367 5121 V 39 w(b)s(essel)p 637
+5121 V 40 w(I0)p 755 5121 V 40 w(e)681 b(Y)112 b(gsl)p
+1802 5121 V 40 w(sf)p 1906 5121 V 40 w(b)s(essel)p 2177
+5121 V 40 w(I0\(dbl)p 2457 5121 V 40 w(expr\))150 5230
+y(gsl)p 262 5230 V 41 w(sf)p 367 5230 V 39 w(b)s(essel)p
+637 5230 V 40 w(I1)p 755 5230 V 40 w(e)681 b(Y)112 b(gsl)p
+1802 5230 V 40 w(sf)p 1906 5230 V 40 w(b)s(essel)p 2177
+5230 V 40 w(I1\(dbl)p 2457 5230 V 40 w(expr\))150 5340
+y(gsl)p 262 5340 V 41 w(sf)p 367 5340 V 39 w(b)s(essel)p
+637 5340 V 40 w(In)p 761 5340 V 39 w(e)676 b(Y)112 b(gsl)p
+1802 5340 V 40 w(sf)p 1906 5340 V 40 w(b)s(essel)p 2177
+5340 V 40 w(In\(in)m(t)p 2444 5340 V 40 w(expr,dbl)p
+2811 5340 V 39 w(expr\))p eop end
+%%Page: 149 155
+TeXDict begin 149 154 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(149)150 299 y(gsl)p
+262 299 28 4 v 41 w(sf)p 367 299 V 39 w(b)s(essel)p 637
+299 V 40 w(In)p 761 299 V 39 w(arra)m(y)509 b(Y)112 b(status=gsl)p
+2111 299 V 40 w(sf)p 2215 299 V 40 w(b)s(essel)p 2486
+299 V 40 w(In)p 2610 299 V 39 w(arra)m(y\(in)m(t,in)m(t,double,&v)-5
+b(ar)p 3640 299 V 42 w(out\))150 408 y(gsl)p 262 408
+V 41 w(sf)p 367 408 V 39 w(b)s(essel)p 637 408 V 40 w(I0)p
+755 408 V 40 w(scaled)p 1032 408 V 41 w(e)403 b(Y)112
+b(gsl)p 1802 408 V 40 w(sf)p 1906 408 V 40 w(b)s(essel)p
+2177 408 V 40 w(I0)p 2295 408 V 40 w(scaled\(dbl)p 2734
+408 V 40 w(expr\))150 518 y(gsl)p 262 518 V 41 w(sf)p
+367 518 V 39 w(b)s(essel)p 637 518 V 40 w(I1)p 755 518
+V 40 w(scaled)p 1032 518 V 41 w(e)403 b(Y)112 b(gsl)p
+1802 518 V 40 w(sf)p 1906 518 V 40 w(b)s(essel)p 2177
+518 V 40 w(I1)p 2295 518 V 40 w(scaled\(dbl)p 2734 518
+V 40 w(expr\))150 628 y(gsl)p 262 628 V 41 w(sf)p 367
+628 V 39 w(b)s(essel)p 637 628 V 40 w(In)p 761 628 V
+39 w(scaled)p 1037 628 V 41 w(e)398 b(Y)112 b(gsl)p 1802
+628 V 40 w(sf)p 1906 628 V 40 w(b)s(essel)p 2177 628
+V 40 w(In)p 2301 628 V 39 w(scaled\(in)m(t)p 2720 628
+V 42 w(expr,dbl)p 3089 628 V 39 w(expr\))150 737 y(gsl)p
+262 737 V 41 w(sf)p 367 737 V 39 w(b)s(essel)p 637 737
+V 40 w(In)p 761 737 V 39 w(scaled)p 1037 737 V 41 w(arra)m(y)231
+b(Y)112 b(staus=gsl)p 2076 737 V 40 w(sf)p 2180 737 V
+40 w(b)s(essel)p 2451 737 V 39 w(In)p 2574 737 V 40 w(scaled)p
+2851 737 V 41 w(arra)m(y\(in)m(t,in)m(t,double,&v)-5
+b(ar)p 3883 737 V 42 w(out\))150 847 y(gsl)p 262 847
+V 41 w(sf)p 367 847 V 39 w(b)s(essel)p 637 847 V 40 w(K0)p
+793 847 V 40 w(e)643 b(Y)112 b(gsl)p 1802 847 V 40 w(sf)p
+1906 847 V 40 w(b)s(essel)p 2177 847 V 40 w(K0\(dbl)p
+2495 847 V 39 w(expr\))150 956 y(gsl)p 262 956 V 41 w(sf)p
+367 956 V 39 w(b)s(essel)p 637 956 V 40 w(K1)p 793 956
+V 40 w(e)643 b(Y)112 b(gsl)p 1802 956 V 40 w(sf)p 1906
+956 V 40 w(b)s(essel)p 2177 956 V 40 w(K1\(dbl)p 2495
+956 V 39 w(expr\))150 1066 y(gsl)p 262 1066 V 41 w(sf)p
+367 1066 V 39 w(b)s(essel)p 637 1066 V 40 w(Kn)p 799
+1066 V 39 w(e)638 b(Y)112 b(gsl)p 1802 1066 V 40 w(sf)p
+1906 1066 V 40 w(b)s(essel)p 2177 1066 V 40 w(Kn\(in)m(t)p
+2482 1066 V 40 w(expr,dbl)p 2849 1066 V 39 w(expr\))150
+1176 y(gsl)p 262 1176 V 41 w(sf)p 367 1176 V 39 w(b)s(essel)p
+637 1176 V 40 w(Kn)p 799 1176 V 39 w(arra)m(y)471 b(Y)112
+b(status=gsl)p 2111 1176 V 40 w(sf)p 2215 1176 V 40 w(b)s(essel)p
+2486 1176 V 40 w(Kn)p 2648 1176 V 39 w(arra)m(y\(in)m(t,in)m
+(t,double,&v)-5 b(ar)p 3678 1176 V 42 w(out\))150 1285
+y(gsl)p 262 1285 V 41 w(sf)p 367 1285 V 39 w(b)s(essel)p
+637 1285 V 40 w(K0)p 793 1285 V 40 w(scaled)p 1070 1285
+V 41 w(e)365 b(Y)112 b(gsl)p 1802 1285 V 40 w(sf)p 1906
+1285 V 40 w(b)s(essel)p 2177 1285 V 40 w(K0)p 2333 1285
+V 40 w(scaled\(dbl)p 2772 1285 V 40 w(expr\))150 1395
+y(gsl)p 262 1395 V 41 w(sf)p 367 1395 V 39 w(b)s(essel)p
+637 1395 V 40 w(K1)p 793 1395 V 40 w(scaled)p 1070 1395
+V 41 w(e)365 b(Y)112 b(gsl)p 1802 1395 V 40 w(sf)p 1906
+1395 V 40 w(b)s(essel)p 2177 1395 V 40 w(K1)p 2333 1395
+V 40 w(scaled\(dbl)p 2772 1395 V 40 w(expr\))150 1504
+y(gsl)p 262 1504 V 41 w(sf)p 367 1504 V 39 w(b)s(essel)p
+637 1504 V 40 w(Kn)p 799 1504 V 39 w(scaled)p 1075 1504
+V 41 w(e)360 b(Y)112 b(gsl)p 1802 1504 V 40 w(sf)p 1906
+1504 V 40 w(b)s(essel)p 2177 1504 V 40 w(Kn)p 2339 1504
+V 39 w(scaled\(in)m(t)p 2758 1504 V 42 w(expr,dbl)p 3127
+1504 V 39 w(expr\))150 1614 y(gsl)p 262 1614 V 41 w(sf)p
+367 1614 V 39 w(b)s(essel)p 637 1614 V 40 w(Kn)p 799
+1614 V 39 w(scaled)p 1075 1614 V 41 w(arra)m(y)193 b(Y)112
+b(status=gsl)p 2111 1614 V 40 w(sf)p 2215 1614 V 40 w(b)s(essel)p
+2486 1614 V 40 w(Kn)p 2648 1614 V 39 w(scaled)p 2924
+1614 V 41 w(arra)m(y\(in)m(t,in)m(t,double,&v)-5 b(ar)p
+3956 1614 V 42 w(out\))150 1724 y(gsl)p 262 1724 V 41
+w(sf)p 367 1724 V 39 w(b)s(essel)p 637 1724 V 40 w(j0)p
+750 1724 V 40 w(e)686 b(Y)112 b(gsl)p 1802 1724 V 40
+w(sf)p 1906 1724 V 40 w(b)s(essel)p 2177 1724 V 40 w(J0\(dbl)p
+2471 1724 V 39 w(expr\))150 1833 y(gsl)p 262 1833 V 41
+w(sf)p 367 1833 V 39 w(b)s(essel)p 637 1833 V 40 w(j1)p
+750 1833 V 40 w(e)686 b(Y)112 b(gsl)p 1802 1833 V 40
+w(sf)p 1906 1833 V 40 w(b)s(essel)p 2177 1833 V 40 w(J1\(dbl)p
+2471 1833 V 39 w(expr\))150 1943 y(gsl)p 262 1943 V 41
+w(sf)p 367 1943 V 39 w(b)s(essel)p 637 1943 V 40 w(j2)p
+750 1943 V 40 w(e)686 b(Y)112 b(gsl)p 1802 1943 V 40
+w(sf)p 1906 1943 V 40 w(b)s(essel)p 2177 1943 V 40 w(j2\(dbl)p
+2452 1943 V 40 w(expr\))150 2052 y(gsl)p 262 2052 V 41
+w(sf)p 367 2052 V 39 w(b)s(essel)p 637 2052 V 40 w(jl)p
+730 2052 V 40 w(e)706 b(Y)112 b(gsl)p 1802 2052 V 40
+w(sf)p 1906 2052 V 40 w(b)s(essel)p 2177 2052 V 40 w(jl\(in)m(t)p
+2413 2052 V 41 w(expr,dbl)p 2781 2052 V 39 w(expr\))150
+2162 y(gsl)p 262 2162 V 41 w(sf)p 367 2162 V 39 w(b)s(essel)p
+637 2162 V 40 w(jl)p 730 2162 V 40 w(arra)m(y)539 b(Y)112
+b(status=gsl)p 2111 2162 V 40 w(sf)p 2215 2162 V 40 w(b)s(essel)p
+2486 2162 V 40 w(jl)p 2579 2162 V 40 w(arra)m(y\(in)m(t,double,&v)-5
+b(ar)p 3477 2162 V 41 w(out\))150 2271 y(gsl)p 262 2271
+V 41 w(sf)p 367 2271 V 39 w(b)s(essel)p 637 2271 V 40
+w(jl)p 730 2271 V 40 w(steed)p 972 2271 V 41 w(arra)m(y)296
+b(Y)112 b(gsl)p 1802 2271 V 40 w(sf)p 1906 2271 V 40
+w(b)s(essel)p 2177 2271 V 40 w(jl)p 2270 2271 V 40 w(steed)p
+2512 2271 V 40 w(arra)m(y)150 2381 y(gsl)p 262 2381 V
+41 w(sf)p 367 2381 V 39 w(b)s(essel)p 637 2381 V 40 w(y0)p
+770 2381 V 40 w(e)666 b(Y)112 b(gsl)p 1802 2381 V 40
+w(sf)p 1906 2381 V 40 w(b)s(essel)p 2177 2381 V 40 w(Y0\(dbl)p
+2492 2381 V 40 w(expr\))150 2491 y(gsl)p 262 2491 V 41
+w(sf)p 367 2491 V 39 w(b)s(essel)p 637 2491 V 40 w(y1)p
+770 2491 V 40 w(e)666 b(Y)112 b(gsl)p 1802 2491 V 40
+w(sf)p 1906 2491 V 40 w(b)s(essel)p 2177 2491 V 40 w(Y1\(dbl)p
+2492 2491 V 40 w(expr\))150 2600 y(gsl)p 262 2600 V 41
+w(sf)p 367 2600 V 39 w(b)s(essel)p 637 2600 V 40 w(y2)p
+770 2600 V 40 w(e)666 b(Y)112 b(gsl)p 1802 2600 V 40
+w(sf)p 1906 2600 V 40 w(b)s(essel)p 2177 2600 V 40 w(y2\(dbl)p
+2472 2600 V 40 w(expr\))150 2710 y(gsl)p 262 2710 V 41
+w(sf)p 367 2710 V 39 w(b)s(essel)p 637 2710 V 40 w(yl)p
+750 2710 V 40 w(e)686 b(Y)112 b(gsl)p 1802 2710 V 40
+w(sf)p 1906 2710 V 40 w(b)s(essel)p 2177 2710 V 40 w(yl\(in)m(t)p
+2433 2710 V 41 w(expr,dbl)p 2801 2710 V 39 w(expr\))150
+2819 y(gsl)p 262 2819 V 41 w(sf)p 367 2819 V 39 w(b)s(essel)p
+637 2819 V 40 w(yl)p 750 2819 V 40 w(arra)m(y)519 b(Y)112
+b(status=gsl)p 2111 2819 V 40 w(sf)p 2215 2819 V 40 w(b)s(essel)p
+2486 2819 V 40 w(yl)p 2599 2819 V 40 w(arra)m(y\(in)m(t,double,&v)-5
+b(ar)p 3497 2819 V 41 w(out\))150 2929 y(gsl)p 262 2929
+V 41 w(sf)p 367 2929 V 39 w(b)s(essel)p 637 2929 V 40
+w(i0)p 747 2929 V 41 w(scaled)p 1025 2929 V 41 w(e)410
 b(Y)112 b(gsl)p 1802 2929 V 40 w(sf)p 1906 2929 V 40
-w(airy)p 2100 2929 V 40 w(zero)p 2301 2929 V 41 w(Ai)p
-2435 2929 V 40 w(deriv\(uin)m(t)p 2869 2929 V 41 w(expr\))150
-3039 y(gsl)p 262 3039 V 41 w(sf)p 367 3039 V 39 w(airy)p
-560 3039 V 40 w(zero)p 761 3039 V 41 w(Bi)p 891 3039
-V 41 w(deriv)p 1132 3039 V 40 w(e)304 b(Y)112 b(gsl)p
-1802 3039 V 40 w(sf)p 1906 3039 V 40 w(airy)p 2100 3039
-V 40 w(zero)p 2301 3039 V 41 w(Bi)p 2431 3039 V 41 w(deriv\(uin)m(t)p
-2866 3039 V 40 w(expr\))150 3148 y(gsl)p 262 3148 V 41
-w(sf)p 367 3148 V 39 w(b)s(essel)p 637 3148 V 40 w(J0)p
-769 3148 V 40 w(e)667 b(Y)112 b(gsl)p 1802 3148 V 40
-w(sf)p 1906 3148 V 40 w(b)s(essel)p 2177 3148 V 40 w(J0\(dbl)p
-2471 3148 V 39 w(expr\))150 3258 y(gsl)p 262 3258 V 41
-w(sf)p 367 3258 V 39 w(b)s(essel)p 637 3258 V 40 w(J1)p
-769 3258 V 40 w(e)667 b(Y)112 b(gsl)p 1802 3258 V 40
-w(sf)p 1906 3258 V 40 w(b)s(essel)p 2177 3258 V 40 w(J1\(dbl)p
-2471 3258 V 39 w(expr\))150 3367 y(gsl)p 262 3367 V 41
-w(sf)p 367 3367 V 39 w(b)s(essel)p 637 3367 V 40 w(Jn)p
-775 3367 V 39 w(e)662 b(Y)112 b(gsl)p 1802 3367 V 40
-w(sf)p 1906 3367 V 40 w(b)s(essel)p 2177 3367 V 40 w(Jn\(in)m(t)p
-2458 3367 V 40 w(expr,dbl)p 2825 3367 V 39 w(expr\))150
-3477 y(gsl)p 262 3477 V 41 w(sf)p 367 3477 V 39 w(b)s(essel)p
-637 3477 V 40 w(Jn)p 775 3477 V 39 w(arra)m(y)495 b(Y)112
-b(status=gsl)p 2111 3477 V 40 w(sf)p 2215 3477 V 40 w(b)s(essel)p
-2486 3477 V 40 w(Jn)p 2624 3477 V 39 w(arra)m(y\(in)m(t,in)m
-(t,double,&v)-5 b(ar)p 3654 3477 V 42 w(out\))150 3587
+w(b)s(essel)p 2177 2929 V 40 w(I0)p 2295 2929 V 40 w(scaled\(dbl)p
+2734 2929 V 40 w(expr\))150 3039 y(gsl)p 262 3039 V 41
+w(sf)p 367 3039 V 39 w(b)s(essel)p 637 3039 V 40 w(i1)p
+747 3039 V 41 w(scaled)p 1025 3039 V 41 w(e)410 b(Y)112
+b(gsl)p 1802 3039 V 40 w(sf)p 1906 3039 V 40 w(b)s(essel)p
+2177 3039 V 40 w(I1)p 2295 3039 V 40 w(scaled\(dbl)p
+2734 3039 V 40 w(expr\))150 3148 y(gsl)p 262 3148 V 41
+w(sf)p 367 3148 V 39 w(b)s(essel)p 637 3148 V 40 w(i2)p
+747 3148 V 41 w(scaled)p 1025 3148 V 41 w(e)410 b(Y)112
+b(gsl)p 1802 3148 V 40 w(sf)p 1906 3148 V 40 w(b)s(essel)p
+2177 3148 V 40 w(i2)p 2287 3148 V 40 w(scaled\(dbl)p
+2726 3148 V 41 w(expr\))150 3258 y(gsl)p 262 3258 V 41
+w(sf)p 367 3258 V 39 w(b)s(essel)p 637 3258 V 40 w(il)p
+727 3258 V 41 w(scaled)p 1005 3258 V 40 w(e)431 b(Y)112
+b(gsl)p 1802 3258 V 40 w(sf)p 1906 3258 V 40 w(b)s(essel)p
+2177 3258 V 40 w(il)p 2267 3258 V 40 w(scaled\(in)m(t)p
+2687 3258 V 42 w(expr,dbl)p 3056 3258 V 39 w(expr\))150
+3367 y(gsl)p 262 3367 V 41 w(sf)p 367 3367 V 39 w(b)s(essel)p
+637 3367 V 40 w(il)p 727 3367 V 41 w(scaled)p 1005 3367
+V 40 w(arra)m(y)264 b(Y)112 b(status=gsl)p 2111 3367
+V 40 w(sf)p 2215 3367 V 40 w(b)s(essel)p 2486 3367 V
+40 w(il)p 2576 3367 V 40 w(scaled)p 2853 3367 V 41 w(arra)m(y\(in)m
+(t,double,&v)-5 b(ar)p 3752 3367 V 41 w(out\))150 3477
+y(gsl)p 262 3477 V 41 w(sf)p 367 3477 V 39 w(b)s(essel)p
+637 3477 V 40 w(k0)p 770 3477 V 40 w(scaled)p 1047 3477
+V 41 w(e)388 b(Y)112 b(gsl)p 1802 3477 V 40 w(sf)p 1906
+3477 V 40 w(b)s(essel)p 2177 3477 V 40 w(K0)p 2333 3477
+V 40 w(scaled\(dbl)p 2772 3477 V 40 w(expr\))150 3587
 y(gsl)p 262 3587 V 41 w(sf)p 367 3587 V 39 w(b)s(essel)p
-637 3587 V 40 w(Y0)p 790 3587 V 41 w(e)645 b(Y)112 b(gsl)p
-1802 3587 V 40 w(sf)p 1906 3587 V 40 w(b)s(essel)p 2177
-3587 V 40 w(Y0\(dbl)p 2492 3587 V 40 w(expr\))150 3696
+637 3587 V 40 w(k1)p 770 3587 V 40 w(scaled)p 1047 3587
+V 41 w(e)388 b(Y)112 b(gsl)p 1802 3587 V 40 w(sf)p 1906
+3587 V 40 w(b)s(essel)p 2177 3587 V 40 w(K1)p 2333 3587
+V 40 w(scaled\(dbl)p 2772 3587 V 40 w(expr\))150 3696
 y(gsl)p 262 3696 V 41 w(sf)p 367 3696 V 39 w(b)s(essel)p
-637 3696 V 40 w(Y1)p 790 3696 V 41 w(e)645 b(Y)112 b(gsl)p
-1802 3696 V 40 w(sf)p 1906 3696 V 40 w(b)s(essel)p 2177
-3696 V 40 w(Y1\(dbl)p 2492 3696 V 40 w(expr\))150 3806
+637 3696 V 40 w(k2)p 770 3696 V 40 w(scaled)p 1047 3696
+V 41 w(e)388 b(Y)112 b(gsl)p 1802 3696 V 40 w(sf)p 1906
+3696 V 40 w(b)s(essel)p 2177 3696 V 40 w(k2)p 2310 3696
+V 40 w(scaled\(dbl)p 2749 3696 V 41 w(expr\))150 3806
 y(gsl)p 262 3806 V 41 w(sf)p 367 3806 V 39 w(b)s(essel)p
-637 3806 V 40 w(Yn)p 796 3806 V 40 w(e)640 b(Y)112 b(gsl)p
-1802 3806 V 40 w(sf)p 1906 3806 V 40 w(b)s(essel)p 2177
-3806 V 40 w(Yn\(in)m(t)p 2479 3806 V 40 w(expr,dbl)p
-2846 3806 V 39 w(expr\))150 3915 y(gsl)p 262 3915 V 41
-w(sf)p 367 3915 V 39 w(b)s(essel)p 637 3915 V 40 w(Yn)p
-796 3915 V 40 w(arra)m(y)473 b(Y)112 b(gsl)p 1802 3915
-V 40 w(sf)p 1906 3915 V 40 w(b)s(essel)p 2177 3915 V
-40 w(Yn)p 2336 3915 V 39 w(arra)m(y)150 4025 y(gsl)p
-262 4025 V 41 w(sf)p 367 4025 V 39 w(b)s(essel)p 637
-4025 V 40 w(I0)p 755 4025 V 40 w(e)681 b(Y)112 b(gsl)p
-1802 4025 V 40 w(sf)p 1906 4025 V 40 w(b)s(essel)p 2177
-4025 V 40 w(I0\(dbl)p 2457 4025 V 40 w(expr\))150 4134
-y(gsl)p 262 4134 V 41 w(sf)p 367 4134 V 39 w(b)s(essel)p
-637 4134 V 40 w(I1)p 755 4134 V 40 w(e)681 b(Y)112 b(gsl)p
-1802 4134 V 40 w(sf)p 1906 4134 V 40 w(b)s(essel)p 2177
-4134 V 40 w(I1\(dbl)p 2457 4134 V 40 w(expr\))150 4244
-y(gsl)p 262 4244 V 41 w(sf)p 367 4244 V 39 w(b)s(essel)p
-637 4244 V 40 w(In)p 761 4244 V 39 w(e)676 b(Y)112 b(gsl)p
-1802 4244 V 40 w(sf)p 1906 4244 V 40 w(b)s(essel)p 2177
-4244 V 40 w(In\(in)m(t)p 2444 4244 V 40 w(expr,dbl)p
-2811 4244 V 39 w(expr\))150 4354 y(gsl)p 262 4354 V 41
-w(sf)p 367 4354 V 39 w(b)s(essel)p 637 4354 V 40 w(In)p
-761 4354 V 39 w(arra)m(y)509 b(Y)112 b(status=gsl)p 2111
-4354 V 40 w(sf)p 2215 4354 V 40 w(b)s(essel)p 2486 4354
-V 40 w(In)p 2610 4354 V 39 w(arra)m(y\(in)m(t,in)m(t,double,&v)-5
-b(ar)p 3640 4354 V 42 w(out\))150 4463 y(gsl)p 262 4463
-V 41 w(sf)p 367 4463 V 39 w(b)s(essel)p 637 4463 V 40
-w(I0)p 755 4463 V 40 w(scaled)p 1032 4463 V 41 w(e)403
-b(Y)112 b(gsl)p 1802 4463 V 40 w(sf)p 1906 4463 V 40
-w(b)s(essel)p 2177 4463 V 40 w(I0)p 2295 4463 V 40 w(scaled\(dbl)p
-2734 4463 V 40 w(expr\))150 4573 y(gsl)p 262 4573 V 41
-w(sf)p 367 4573 V 39 w(b)s(essel)p 637 4573 V 40 w(I1)p
-755 4573 V 40 w(scaled)p 1032 4573 V 41 w(e)403 b(Y)112
-b(gsl)p 1802 4573 V 40 w(sf)p 1906 4573 V 40 w(b)s(essel)p
-2177 4573 V 40 w(I1)p 2295 4573 V 40 w(scaled\(dbl)p
-2734 4573 V 40 w(expr\))150 4682 y(gsl)p 262 4682 V 41
-w(sf)p 367 4682 V 39 w(b)s(essel)p 637 4682 V 40 w(In)p
-761 4682 V 39 w(scaled)p 1037 4682 V 41 w(e)398 b(Y)112
-b(gsl)p 1802 4682 V 40 w(sf)p 1906 4682 V 40 w(b)s(essel)p
-2177 4682 V 40 w(In)p 2301 4682 V 39 w(scaled\(in)m(t)p
-2720 4682 V 42 w(expr,dbl)p 3089 4682 V 39 w(expr\))150
+637 3806 V 40 w(kl)p 750 3806 V 40 w(scaled)p 1027 3806
+V 41 w(e)408 b(Y)112 b(gsl)p 1802 3806 V 40 w(sf)p 1906
+3806 V 40 w(b)s(essel)p 2177 3806 V 40 w(kl)p 2290 3806
+V 40 w(scaled\(in)m(t)p 2710 3806 V 42 w(expr,dbl)p 3079
+3806 V 39 w(expr\))150 3915 y(gsl)p 262 3915 V 41 w(sf)p
+367 3915 V 39 w(b)s(essel)p 637 3915 V 40 w(kl)p 750
+3915 V 40 w(scaled)p 1027 3915 V 41 w(arra)m(y)241 b(Y)112
+b(status=gsl)p 2111 3915 V 40 w(sf)p 2215 3915 V 40 w(b)s(essel)p
+2486 3915 V 40 w(kl)p 2599 3915 V 40 w(scaled)p 2876
+3915 V 41 w(arra)m(y\(in)m(t,double,&v)-5 b(ar)p 3775
+3915 V 41 w(out\))150 4025 y(gsl)p 262 4025 V 41 w(sf)p
+367 4025 V 39 w(b)s(essel)p 637 4025 V 40 w(Jn)m(u)p
+823 4025 V 39 w(e)614 b(Y)112 b(gsl)p 1802 4025 V 40
+w(sf)p 1906 4025 V 40 w(b)s(essel)p 2177 4025 V 40 w(Jn)m(u\(dbl)p
+2525 4025 V 38 w(expr,dbl)p 2890 4025 V 40 w(expr\))150
+4134 y(gsl)p 262 4134 V 41 w(sf)p 367 4134 V 39 w(b)s(essel)p
+637 4134 V 40 w(Yn)m(u)p 844 4134 V 40 w(e)592 b(Y)112
+b(gsl)p 1802 4134 V 40 w(sf)p 1906 4134 V 40 w(b)s(essel)p
+2177 4134 V 40 w(Yn)m(u\(dbl)p 2546 4134 V 39 w(expr,dbl)p
+2912 4134 V 39 w(expr\))150 4244 y(gsl)p 262 4244 V 41
+w(sf)p 367 4244 V 39 w(b)s(essel)p 637 4244 V 40 w(sequence)p
+1023 4244 V 40 w(Jn)m(u)p 1209 4244 V 40 w(e)227 b(N)112
+b(gsl)p 1802 4244 V 40 w(sf)p 1906 4244 V 40 w(b)s(essel)p
+2177 4244 V 40 w(sequence)p 2563 4244 V 40 w(Jn)m(u)150
+4354 y(gsl)p 262 4354 V 41 w(sf)p 367 4354 V 39 w(b)s(essel)p
+637 4354 V 40 w(In)m(u)p 809 4354 V 39 w(scaled)p 1085
+4354 V 41 w(e)350 b(Y)112 b(gsl)p 1802 4354 V 40 w(sf)p
+1906 4354 V 40 w(b)s(essel)p 2177 4354 V 40 w(In)m(u)p
+2349 4354 V 39 w(scaled\(dbl)p 2787 4354 V 40 w(expr,dbl)p
+3154 4354 V 39 w(expr\))150 4463 y(gsl)p 262 4463 V 41
+w(sf)p 367 4463 V 39 w(b)s(essel)p 637 4463 V 40 w(In)m(u)p
+809 4463 V 39 w(e)628 b(Y)112 b(gsl)p 1802 4463 V 40
+w(sf)p 1906 4463 V 40 w(b)s(essel)p 2177 4463 V 40 w(In)m(u\(dbl)p
+2511 4463 V 39 w(expr,dbl)p 2877 4463 V 39 w(expr\))150
+4573 y(gsl)p 262 4573 V 41 w(sf)p 367 4573 V 39 w(b)s(essel)p
+637 4573 V 40 w(Kn)m(u)p 847 4573 V 39 w(scaled)p 1123
+4573 V 41 w(e)312 b(Y)112 b(gsl)p 1802 4573 V 40 w(sf)p
+1906 4573 V 40 w(b)s(essel)p 2177 4573 V 40 w(Kn)m(u)p
+2387 4573 V 39 w(scaled\(dbl)p 2825 4573 V 40 w(expr,dbl)p
+3192 4573 V 39 w(expr\))150 4682 y(gsl)p 262 4682 V 41
+w(sf)p 367 4682 V 39 w(b)s(essel)p 637 4682 V 40 w(Kn)m(u)p
+847 4682 V 39 w(e)590 b(Y)112 b(gsl)p 1802 4682 V 40
+w(sf)p 1906 4682 V 40 w(b)s(essel)p 2177 4682 V 40 w(Kn)m(u\(dbl)p
+2549 4682 V 38 w(expr,dbl)p 2914 4682 V 39 w(expr\))150
 4792 y(gsl)p 262 4792 V 41 w(sf)p 367 4792 V 39 w(b)s(essel)p
-637 4792 V 40 w(In)p 761 4792 V 39 w(scaled)p 1037 4792
-V 41 w(arra)m(y)231 b(Y)112 b(staus=gsl)p 2076 4792 V
-40 w(sf)p 2180 4792 V 40 w(b)s(essel)p 2451 4792 V 39
-w(In)p 2574 4792 V 40 w(scaled)p 2851 4792 V 41 w(arra)m(y\(in)m(t,in)m
-(t,double,&v)-5 b(ar)p 3883 4792 V 42 w(out\))150 4902
-y(gsl)p 262 4902 V 41 w(sf)p 367 4902 V 39 w(b)s(essel)p
-637 4902 V 40 w(K0)p 793 4902 V 40 w(e)643 b(Y)112 b(gsl)p
+637 4792 V 40 w(lnKn)m(u)p 923 4792 V 39 w(e)514 b(Y)112
+b(gsl)p 1802 4792 V 40 w(sf)p 1906 4792 V 40 w(b)s(essel)p
+2177 4792 V 40 w(lnKn)m(u\(dbl)p 2625 4792 V 38 w(expr,dbl)p
+2990 4792 V 39 w(expr\))150 4902 y(gsl)p 262 4902 V 41
+w(sf)p 367 4902 V 39 w(b)s(essel)p 637 4902 V 40 w(zero)p
+838 4902 V 41 w(J0)p 971 4902 V 40 w(e)465 b(Y)112 b(gsl)p
 1802 4902 V 40 w(sf)p 1906 4902 V 40 w(b)s(essel)p 2177
-4902 V 40 w(K0\(dbl)p 2495 4902 V 39 w(expr\))150 5011
-y(gsl)p 262 5011 V 41 w(sf)p 367 5011 V 39 w(b)s(essel)p
-637 5011 V 40 w(K1)p 793 5011 V 40 w(e)643 b(Y)112 b(gsl)p
+4902 V 40 w(zero)p 2378 4902 V 41 w(J0\(uin)m(t)p 2705
+4902 V 40 w(expr\))150 5011 y(gsl)p 262 5011 V 41 w(sf)p
+367 5011 V 39 w(b)s(essel)p 637 5011 V 40 w(zero)p 838
+5011 V 41 w(J1)p 971 5011 V 40 w(e)465 b(Y)112 b(gsl)p
 1802 5011 V 40 w(sf)p 1906 5011 V 40 w(b)s(essel)p 2177
-5011 V 40 w(K1\(dbl)p 2495 5011 V 39 w(expr\))150 5121
-y(gsl)p 262 5121 V 41 w(sf)p 367 5121 V 39 w(b)s(essel)p
-637 5121 V 40 w(Kn)p 799 5121 V 39 w(e)638 b(Y)112 b(gsl)p
+5011 V 40 w(zero)p 2378 5011 V 41 w(J1\(uin)m(t)p 2705
+5011 V 40 w(expr\))150 5121 y(gsl)p 262 5121 V 41 w(sf)p
+367 5121 V 39 w(b)s(essel)p 637 5121 V 40 w(zero)p 838
+5121 V 41 w(Jn)m(u)p 1025 5121 V 39 w(e)412 b(N)112 b(gsl)p
 1802 5121 V 40 w(sf)p 1906 5121 V 40 w(b)s(essel)p 2177
-5121 V 40 w(Kn\(in)m(t)p 2482 5121 V 40 w(expr,dbl)p
-2849 5121 V 39 w(expr\))150 5230 y(gsl)p 262 5230 V 41
-w(sf)p 367 5230 V 39 w(b)s(essel)p 637 5230 V 40 w(Kn)p
-799 5230 V 39 w(arra)m(y)471 b(Y)112 b(status=gsl)p 2111
-5230 V 40 w(sf)p 2215 5230 V 40 w(b)s(essel)p 2486 5230
-V 40 w(Kn)p 2648 5230 V 39 w(arra)m(y\(in)m(t,in)m(t,double,&v)-5
-b(ar)p 3678 5230 V 42 w(out\))150 5340 y(gsl)p 262 5340
-V 41 w(sf)p 367 5340 V 39 w(b)s(essel)p 637 5340 V 40
-w(K0)p 793 5340 V 40 w(scaled)p 1070 5340 V 41 w(e)365
-b(Y)112 b(gsl)p 1802 5340 V 40 w(sf)p 1906 5340 V 40
-w(b)s(essel)p 2177 5340 V 40 w(K0)p 2333 5340 V 40 w(scaled\(dbl)p
-2772 5340 V 40 w(expr\))p eop end
-%%Page: 137 143
-TeXDict begin 137 142 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(137)150
-299 y(gsl)p 262 299 28 4 v 41 w(sf)p 367 299 V 39 w(b)s(essel)p
-637 299 V 40 w(K1)p 793 299 V 40 w(scaled)p 1070 299
-V 41 w(e)365 b(Y)112 b(gsl)p 1802 299 V 40 w(sf)p 1906
-299 V 40 w(b)s(essel)p 2177 299 V 40 w(K1)p 2333 299
-V 40 w(scaled\(dbl)p 2772 299 V 40 w(expr\))150 408 y(gsl)p
-262 408 V 41 w(sf)p 367 408 V 39 w(b)s(essel)p 637 408
-V 40 w(Kn)p 799 408 V 39 w(scaled)p 1075 408 V 41 w(e)360
-b(Y)112 b(gsl)p 1802 408 V 40 w(sf)p 1906 408 V 40 w(b)s(essel)p
-2177 408 V 40 w(Kn)p 2339 408 V 39 w(scaled\(in)m(t)p
-2758 408 V 42 w(expr,dbl)p 3127 408 V 39 w(expr\))150
-518 y(gsl)p 262 518 V 41 w(sf)p 367 518 V 39 w(b)s(essel)p
-637 518 V 40 w(Kn)p 799 518 V 39 w(scaled)p 1075 518
-V 41 w(arra)m(y)193 b(Y)112 b(status=gsl)p 2111 518 V
-40 w(sf)p 2215 518 V 40 w(b)s(essel)p 2486 518 V 40 w(Kn)p
-2648 518 V 39 w(scaled)p 2924 518 V 41 w(arra)m(y\(in)m(t,in)m
-(t,double,&v)-5 b(ar)p 3956 518 V 42 w(out\))150 628
-y(gsl)p 262 628 V 41 w(sf)p 367 628 V 39 w(b)s(essel)p
-637 628 V 40 w(j0)p 750 628 V 40 w(e)686 b(Y)112 b(gsl)p
-1802 628 V 40 w(sf)p 1906 628 V 40 w(b)s(essel)p 2177
-628 V 40 w(J0\(dbl)p 2471 628 V 39 w(expr\))150 737 y(gsl)p
-262 737 V 41 w(sf)p 367 737 V 39 w(b)s(essel)p 637 737
-V 40 w(j1)p 750 737 V 40 w(e)686 b(Y)112 b(gsl)p 1802
-737 V 40 w(sf)p 1906 737 V 40 w(b)s(essel)p 2177 737
-V 40 w(J1\(dbl)p 2471 737 V 39 w(expr\))150 847 y(gsl)p
-262 847 V 41 w(sf)p 367 847 V 39 w(b)s(essel)p 637 847
-V 40 w(j2)p 750 847 V 40 w(e)686 b(Y)112 b(gsl)p 1802
-847 V 40 w(sf)p 1906 847 V 40 w(b)s(essel)p 2177 847
-V 40 w(j2\(dbl)p 2452 847 V 40 w(expr\))150 956 y(gsl)p
-262 956 V 41 w(sf)p 367 956 V 39 w(b)s(essel)p 637 956
-V 40 w(jl)p 730 956 V 40 w(e)706 b(Y)112 b(gsl)p 1802
-956 V 40 w(sf)p 1906 956 V 40 w(b)s(essel)p 2177 956
-V 40 w(jl\(in)m(t)p 2413 956 V 41 w(expr,dbl)p 2781 956
-V 39 w(expr\))150 1066 y(gsl)p 262 1066 V 41 w(sf)p 367
-1066 V 39 w(b)s(essel)p 637 1066 V 40 w(jl)p 730 1066
-V 40 w(arra)m(y)539 b(Y)112 b(status=gsl)p 2111 1066
-V 40 w(sf)p 2215 1066 V 40 w(b)s(essel)p 2486 1066 V
-40 w(jl)p 2579 1066 V 40 w(arra)m(y\(in)m(t,double,&v)-5
-b(ar)p 3477 1066 V 41 w(out\))150 1176 y(gsl)p 262 1176
-V 41 w(sf)p 367 1176 V 39 w(b)s(essel)p 637 1176 V 40
-w(jl)p 730 1176 V 40 w(steed)p 972 1176 V 41 w(arra)m(y)296
-b(Y)112 b(gsl)p 1802 1176 V 40 w(sf)p 1906 1176 V 40
-w(b)s(essel)p 2177 1176 V 40 w(jl)p 2270 1176 V 40 w(steed)p
-2512 1176 V 40 w(arra)m(y)150 1285 y(gsl)p 262 1285 V
-41 w(sf)p 367 1285 V 39 w(b)s(essel)p 637 1285 V 40 w(y0)p
-770 1285 V 40 w(e)666 b(Y)112 b(gsl)p 1802 1285 V 40
-w(sf)p 1906 1285 V 40 w(b)s(essel)p 2177 1285 V 40 w(Y0\(dbl)p
-2492 1285 V 40 w(expr\))150 1395 y(gsl)p 262 1395 V 41
-w(sf)p 367 1395 V 39 w(b)s(essel)p 637 1395 V 40 w(y1)p
-770 1395 V 40 w(e)666 b(Y)112 b(gsl)p 1802 1395 V 40
-w(sf)p 1906 1395 V 40 w(b)s(essel)p 2177 1395 V 40 w(Y1\(dbl)p
-2492 1395 V 40 w(expr\))150 1504 y(gsl)p 262 1504 V 41
-w(sf)p 367 1504 V 39 w(b)s(essel)p 637 1504 V 40 w(y2)p
-770 1504 V 40 w(e)666 b(Y)112 b(gsl)p 1802 1504 V 40
-w(sf)p 1906 1504 V 40 w(b)s(essel)p 2177 1504 V 40 w(y2\(dbl)p
-2472 1504 V 40 w(expr\))150 1614 y(gsl)p 262 1614 V 41
-w(sf)p 367 1614 V 39 w(b)s(essel)p 637 1614 V 40 w(yl)p
-750 1614 V 40 w(e)686 b(Y)112 b(gsl)p 1802 1614 V 40
-w(sf)p 1906 1614 V 40 w(b)s(essel)p 2177 1614 V 40 w(yl\(in)m(t)p
-2433 1614 V 41 w(expr,dbl)p 2801 1614 V 39 w(expr\))150
-1724 y(gsl)p 262 1724 V 41 w(sf)p 367 1724 V 39 w(b)s(essel)p
-637 1724 V 40 w(yl)p 750 1724 V 40 w(arra)m(y)519 b(Y)112
-b(status=gsl)p 2111 1724 V 40 w(sf)p 2215 1724 V 40 w(b)s(essel)p
-2486 1724 V 40 w(yl)p 2599 1724 V 40 w(arra)m(y\(in)m(t,double,&v)-5
-b(ar)p 3497 1724 V 41 w(out\))150 1833 y(gsl)p 262 1833
-V 41 w(sf)p 367 1833 V 39 w(b)s(essel)p 637 1833 V 40
-w(i0)p 747 1833 V 41 w(scaled)p 1025 1833 V 41 w(e)410
-b(Y)112 b(gsl)p 1802 1833 V 40 w(sf)p 1906 1833 V 40
-w(b)s(essel)p 2177 1833 V 40 w(I0)p 2295 1833 V 40 w(scaled\(dbl)p
-2734 1833 V 40 w(expr\))150 1943 y(gsl)p 262 1943 V 41
-w(sf)p 367 1943 V 39 w(b)s(essel)p 637 1943 V 40 w(i1)p
-747 1943 V 41 w(scaled)p 1025 1943 V 41 w(e)410 b(Y)112
-b(gsl)p 1802 1943 V 40 w(sf)p 1906 1943 V 40 w(b)s(essel)p
-2177 1943 V 40 w(I1)p 2295 1943 V 40 w(scaled\(dbl)p
-2734 1943 V 40 w(expr\))150 2052 y(gsl)p 262 2052 V 41
-w(sf)p 367 2052 V 39 w(b)s(essel)p 637 2052 V 40 w(i2)p
-747 2052 V 41 w(scaled)p 1025 2052 V 41 w(e)410 b(Y)112
-b(gsl)p 1802 2052 V 40 w(sf)p 1906 2052 V 40 w(b)s(essel)p
-2177 2052 V 40 w(i2)p 2287 2052 V 40 w(scaled\(dbl)p
-2726 2052 V 41 w(expr\))150 2162 y(gsl)p 262 2162 V 41
-w(sf)p 367 2162 V 39 w(b)s(essel)p 637 2162 V 40 w(il)p
-727 2162 V 41 w(scaled)p 1005 2162 V 40 w(e)431 b(Y)112
-b(gsl)p 1802 2162 V 40 w(sf)p 1906 2162 V 40 w(b)s(essel)p
-2177 2162 V 40 w(il)p 2267 2162 V 40 w(scaled\(in)m(t)p
-2687 2162 V 42 w(expr,dbl)p 3056 2162 V 39 w(expr\))150
-2271 y(gsl)p 262 2271 V 41 w(sf)p 367 2271 V 39 w(b)s(essel)p
-637 2271 V 40 w(il)p 727 2271 V 41 w(scaled)p 1005 2271
-V 40 w(arra)m(y)264 b(Y)112 b(status=gsl)p 2111 2271
-V 40 w(sf)p 2215 2271 V 40 w(b)s(essel)p 2486 2271 V
-40 w(il)p 2576 2271 V 40 w(scaled)p 2853 2271 V 41 w(arra)m(y\(in)m
-(t,double,&v)-5 b(ar)p 3752 2271 V 41 w(out\))150 2381
-y(gsl)p 262 2381 V 41 w(sf)p 367 2381 V 39 w(b)s(essel)p
-637 2381 V 40 w(k0)p 770 2381 V 40 w(scaled)p 1047 2381
-V 41 w(e)388 b(Y)112 b(gsl)p 1802 2381 V 40 w(sf)p 1906
-2381 V 40 w(b)s(essel)p 2177 2381 V 40 w(K0)p 2333 2381
-V 40 w(scaled\(dbl)p 2772 2381 V 40 w(expr\))150 2491
-y(gsl)p 262 2491 V 41 w(sf)p 367 2491 V 39 w(b)s(essel)p
-637 2491 V 40 w(k1)p 770 2491 V 40 w(scaled)p 1047 2491
-V 41 w(e)388 b(Y)112 b(gsl)p 1802 2491 V 40 w(sf)p 1906
-2491 V 40 w(b)s(essel)p 2177 2491 V 40 w(K1)p 2333 2491
-V 40 w(scaled\(dbl)p 2772 2491 V 40 w(expr\))150 2600
-y(gsl)p 262 2600 V 41 w(sf)p 367 2600 V 39 w(b)s(essel)p
-637 2600 V 40 w(k2)p 770 2600 V 40 w(scaled)p 1047 2600
-V 41 w(e)388 b(Y)112 b(gsl)p 1802 2600 V 40 w(sf)p 1906
-2600 V 40 w(b)s(essel)p 2177 2600 V 40 w(k2)p 2310 2600
-V 40 w(scaled\(dbl)p 2749 2600 V 41 w(expr\))150 2710
-y(gsl)p 262 2710 V 41 w(sf)p 367 2710 V 39 w(b)s(essel)p
-637 2710 V 40 w(kl)p 750 2710 V 40 w(scaled)p 1027 2710
-V 41 w(e)408 b(Y)112 b(gsl)p 1802 2710 V 40 w(sf)p 1906
-2710 V 40 w(b)s(essel)p 2177 2710 V 40 w(kl)p 2290 2710
-V 40 w(scaled\(in)m(t)p 2710 2710 V 42 w(expr,dbl)p 3079
-2710 V 39 w(expr\))150 2819 y(gsl)p 262 2819 V 41 w(sf)p
-367 2819 V 39 w(b)s(essel)p 637 2819 V 40 w(kl)p 750
-2819 V 40 w(scaled)p 1027 2819 V 41 w(arra)m(y)241 b(Y)112
-b(status=gsl)p 2111 2819 V 40 w(sf)p 2215 2819 V 40 w(b)s(essel)p
-2486 2819 V 40 w(kl)p 2599 2819 V 40 w(scaled)p 2876
-2819 V 41 w(arra)m(y\(in)m(t,double,&v)-5 b(ar)p 3775
-2819 V 41 w(out\))150 2929 y(gsl)p 262 2929 V 41 w(sf)p
-367 2929 V 39 w(b)s(essel)p 637 2929 V 40 w(Jn)m(u)p
-823 2929 V 39 w(e)614 b(Y)112 b(gsl)p 1802 2929 V 40
-w(sf)p 1906 2929 V 40 w(b)s(essel)p 2177 2929 V 40 w(Jn)m(u\(dbl)p
-2525 2929 V 38 w(expr,dbl)p 2890 2929 V 40 w(expr\))150
-3039 y(gsl)p 262 3039 V 41 w(sf)p 367 3039 V 39 w(b)s(essel)p
-637 3039 V 40 w(Yn)m(u)p 844 3039 V 40 w(e)592 b(Y)112
-b(gsl)p 1802 3039 V 40 w(sf)p 1906 3039 V 40 w(b)s(essel)p
-2177 3039 V 40 w(Yn)m(u\(dbl)p 2546 3039 V 39 w(expr,dbl)p
-2912 3039 V 39 w(expr\))150 3148 y(gsl)p 262 3148 V 41
-w(sf)p 367 3148 V 39 w(b)s(essel)p 637 3148 V 40 w(sequence)p
-1023 3148 V 40 w(Jn)m(u)p 1209 3148 V 40 w(e)227 b(N)112
-b(gsl)p 1802 3148 V 40 w(sf)p 1906 3148 V 40 w(b)s(essel)p
-2177 3148 V 40 w(sequence)p 2563 3148 V 40 w(Jn)m(u)150
-3258 y(gsl)p 262 3258 V 41 w(sf)p 367 3258 V 39 w(b)s(essel)p
-637 3258 V 40 w(In)m(u)p 809 3258 V 39 w(scaled)p 1085
-3258 V 41 w(e)350 b(Y)112 b(gsl)p 1802 3258 V 40 w(sf)p
-1906 3258 V 40 w(b)s(essel)p 2177 3258 V 40 w(In)m(u)p
-2349 3258 V 39 w(scaled\(dbl)p 2787 3258 V 40 w(expr,dbl)p
-3154 3258 V 39 w(expr\))150 3367 y(gsl)p 262 3367 V 41
-w(sf)p 367 3367 V 39 w(b)s(essel)p 637 3367 V 40 w(In)m(u)p
-809 3367 V 39 w(e)628 b(Y)112 b(gsl)p 1802 3367 V 40
-w(sf)p 1906 3367 V 40 w(b)s(essel)p 2177 3367 V 40 w(In)m(u\(dbl)p
-2511 3367 V 39 w(expr,dbl)p 2877 3367 V 39 w(expr\))150
-3477 y(gsl)p 262 3477 V 41 w(sf)p 367 3477 V 39 w(b)s(essel)p
-637 3477 V 40 w(Kn)m(u)p 847 3477 V 39 w(scaled)p 1123
-3477 V 41 w(e)312 b(Y)112 b(gsl)p 1802 3477 V 40 w(sf)p
-1906 3477 V 40 w(b)s(essel)p 2177 3477 V 40 w(Kn)m(u)p
-2387 3477 V 39 w(scaled\(dbl)p 2825 3477 V 40 w(expr,dbl)p
-3192 3477 V 39 w(expr\))150 3587 y(gsl)p 262 3587 V 41
-w(sf)p 367 3587 V 39 w(b)s(essel)p 637 3587 V 40 w(Kn)m(u)p
-847 3587 V 39 w(e)590 b(Y)112 b(gsl)p 1802 3587 V 40
-w(sf)p 1906 3587 V 40 w(b)s(essel)p 2177 3587 V 40 w(Kn)m(u\(dbl)p
-2549 3587 V 38 w(expr,dbl)p 2914 3587 V 39 w(expr\))150
-3696 y(gsl)p 262 3696 V 41 w(sf)p 367 3696 V 39 w(b)s(essel)p
-637 3696 V 40 w(lnKn)m(u)p 923 3696 V 39 w(e)514 b(Y)112
-b(gsl)p 1802 3696 V 40 w(sf)p 1906 3696 V 40 w(b)s(essel)p
-2177 3696 V 40 w(lnKn)m(u\(dbl)p 2625 3696 V 38 w(expr,dbl)p
-2990 3696 V 39 w(expr\))150 3806 y(gsl)p 262 3806 V 41
-w(sf)p 367 3806 V 39 w(b)s(essel)p 637 3806 V 40 w(zero)p
-838 3806 V 41 w(J0)p 971 3806 V 40 w(e)465 b(Y)112 b(gsl)p
-1802 3806 V 40 w(sf)p 1906 3806 V 40 w(b)s(essel)p 2177
-3806 V 40 w(zero)p 2378 3806 V 41 w(J0\(uin)m(t)p 2705
-3806 V 40 w(expr\))150 3915 y(gsl)p 262 3915 V 41 w(sf)p
-367 3915 V 39 w(b)s(essel)p 637 3915 V 40 w(zero)p 838
-3915 V 41 w(J1)p 971 3915 V 40 w(e)465 b(Y)112 b(gsl)p
-1802 3915 V 40 w(sf)p 1906 3915 V 40 w(b)s(essel)p 2177
-3915 V 40 w(zero)p 2378 3915 V 41 w(J1\(uin)m(t)p 2705
-3915 V 40 w(expr\))150 4025 y(gsl)p 262 4025 V 41 w(sf)p
-367 4025 V 39 w(b)s(essel)p 637 4025 V 40 w(zero)p 838
-4025 V 41 w(Jn)m(u)p 1025 4025 V 39 w(e)412 b(N)112 b(gsl)p
-1802 4025 V 40 w(sf)p 1906 4025 V 40 w(b)s(essel)p 2177
-4025 V 40 w(zero)p 2378 4025 V 41 w(Jn)m(u)150 4134 y(gsl)p
-262 4134 V 41 w(sf)p 367 4134 V 39 w(clausen)p 694 4134
-V 41 w(e)741 b(Y)112 b(gsl)p 1802 4134 V 40 w(sf)p 1906
-4134 V 40 w(clausen\(dbl)p 2396 4134 V 40 w(expr\))150
-4244 y(gsl)p 262 4244 V 41 w(sf)p 367 4244 V 39 w(h)m(ydrogenicR)p
-902 4244 V 41 w(1)p 988 4244 V 40 w(e)448 b(N)112 b(gsl)p
-1802 4244 V 40 w(sf)p 1906 4244 V 40 w(h)m(ydrogenicR)p
-2442 4244 V 40 w(1)150 4354 y(gsl)p 262 4354 V 41 w(sf)p
-367 4354 V 39 w(h)m(ydrogenicR)p 902 4354 V 41 w(e)533
-b(N)112 b(gsl)p 1802 4354 V 40 w(sf)p 1906 4354 V 40
-w(h)m(ydrogenicR)150 4463 y(gsl)p 262 4463 V 41 w(sf)p
-367 4463 V 39 w(coulom)m(b)p 736 4463 V 41 w(w)m(a)m(v)m(e)p
-967 4463 V 42 w(F)m(G)p 1136 4463 V 41 w(e)299 b(N)112
-b(gsl)p 1802 4463 V 40 w(sf)p 1906 4463 V 40 w(coulom)m(b)p
-2276 4463 V 41 w(w)m(a)m(v)m(e)p 2507 4463 V 42 w(F)m(G)150
-4573 y(gsl)p 262 4573 V 41 w(sf)p 367 4573 V 39 w(coulom)m(b)p
-736 4573 V 41 w(w)m(a)m(v)m(e)p 967 4573 V 42 w(F)p 1068
-4573 V 40 w(arra)m(y)201 b(N)112 b(gsl)p 1802 4573 V
-40 w(sf)p 1906 4573 V 40 w(coulom)m(b)p 2276 4573 V 41
-w(w)m(a)m(v)m(e)p 2507 4573 V 42 w(F)p 2608 4573 V 40
-w(arra)m(y)150 4682 y(gsl)p 262 4682 V 41 w(sf)p 367
-4682 V 39 w(coulom)m(b)p 736 4682 V 41 w(w)m(a)m(v)m(e)p
-967 4682 V 42 w(F)m(G)p 1136 4682 V 41 w(arra)m(y)132
-b(N)112 b(gsl)p 1802 4682 V 40 w(sf)p 1906 4682 V 40
-w(coulom)m(b)p 2276 4682 V 41 w(w)m(a)m(v)m(e)p 2507
-4682 V 42 w(F)m(G)p 2676 4682 V 41 w(arra)m(y)150 4792
-y(gsl)p 262 4792 V 41 w(sf)p 367 4792 V 39 w(coulom)m(b)p
-736 4792 V 41 w(w)m(a)m(v)m(e)p 967 4792 V 42 w(F)m(Gp)p
-1187 4792 V 41 w(arra)m(y)81 b(N)112 b(gsl)p 1802 4792
-V 40 w(sf)p 1906 4792 V 40 w(coulom)m(b)p 2276 4792 V
-41 w(w)m(a)m(v)m(e)p 2507 4792 V 42 w(F)m(Gp)p 2727 4792
-V 40 w(arra)m(y)150 4902 y(gsl)p 262 4902 V 41 w(sf)p
-367 4902 V 39 w(coulom)m(b)p 736 4902 V 41 w(w)m(a)m(v)m(e)p
-967 4902 V 42 w(sphF)p 1206 4902 V 39 w(arra)m(y)64 b(N)112
-b(gsl)p 1802 4902 V 40 w(sf)p 1906 4902 V 40 w(coulom)m(b)p
-2276 4902 V 41 w(w)m(a)m(v)m(e)p 2507 4902 V 42 w(sphF)p
-2746 4902 V 39 w(arra)m(y)150 5011 y(gsl)p 262 5011 V
-41 w(sf)p 367 5011 V 39 w(coulom)m(b)p 736 5011 V 41
-w(CL)p 900 5011 V 39 w(e)537 b(N)112 b(gsl)p 1802 5011
-V 40 w(sf)p 1906 5011 V 40 w(coulom)m(b)p 2276 5011 V
-41 w(CL)150 5121 y(gsl)p 262 5121 V 41 w(sf)p 367 5121
-V 39 w(coulom)m(b)p 736 5121 V 41 w(CL)p 900 5121 V 39
-w(arra)m(y)370 b(N)112 b(gsl)p 1802 5121 V 40 w(sf)p
-1906 5121 V 40 w(coulom)m(b)p 2276 5121 V 41 w(CL)p 2440
-5121 V 39 w(arra)m(y)150 5230 y(gsl)p 262 5230 V 41 w(sf)p
-367 5230 V 39 w(coupling)p 739 5230 V 41 w(3j)p 853 5230
-V 40 w(e)583 b(N)112 b(gsl)p 1802 5230 V 40 w(sf)p 1906
-5230 V 40 w(coupling)p 2279 5230 V 40 w(3j)150 5340 y(gsl)p
-262 5340 V 41 w(sf)p 367 5340 V 39 w(coupling)p 739 5340
-V 41 w(6j)p 853 5340 V 40 w(e)583 b(N)112 b(gsl)p 1802
-5340 V 40 w(sf)p 1906 5340 V 40 w(coupling)p 2279 5340
-V 40 w(6j)p eop end
-%%Page: 138 144
-TeXDict begin 138 143 bop 150 -116 a FD(138)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(gsl)p 262 299 28
-4 v 41 w(sf)p 367 299 V 39 w(coupling)p 739 299 V 41
-w(RacahW)p 1121 299 V 41 w(e)314 b(N)112 b(gsl)p 1802
-299 V 40 w(sf)p 1906 299 V 40 w(coupling)p 2279 299 V
-40 w(RacahW)150 408 y(gsl)p 262 408 V 41 w(sf)p 367 408
-V 39 w(coupling)p 739 408 V 41 w(9j)p 853 408 V 40 w(e)583
-b(N)112 b(gsl)p 1802 408 V 40 w(sf)p 1906 408 V 40 w(coupling)p
-2279 408 V 40 w(9j)150 518 y(gsl)p 262 518 V 41 w(sf)p
-367 518 V 39 w(coupling)p 739 518 V 41 w(6j)p 853 518
-V 40 w(INCORRECT)p 1459 518 V 38 w(e)-21 b(N)112 b(gsl)p
-1802 518 V 40 w(sf)p 1906 518 V 40 w(coupling)p 2279
-518 V 40 w(6j)p 2392 518 V 40 w(INCORRECT)150 628 y(gsl)p
-262 628 V 41 w(sf)p 367 628 V 39 w(da)m(wson)p 697 628
-V 40 w(e)739 b(Y)112 b(gsl)p 1802 628 V 40 w(sf)p 1906
-628 V 40 w(da)m(wson\(dbl)p 2399 628 V 39 w(expr\))150
-737 y(gsl)p 262 737 V 41 w(sf)p 367 737 V 39 w(deb)m(y)m(e)p
-630 737 V 41 w(1)p 716 737 V 40 w(e)720 b(Y)112 b(gsl)p
-1802 737 V 40 w(sf)p 1906 737 V 40 w(deb)m(y)m(e)p 2170
-737 V 41 w(1\(dbl)p 2418 737 V 40 w(expr\))150 847 y(gsl)p
-262 847 V 41 w(sf)p 367 847 V 39 w(deb)m(y)m(e)p 630
-847 V 41 w(2)p 716 847 V 40 w(e)720 b(Y)112 b(gsl)p 1802
-847 V 40 w(sf)p 1906 847 V 40 w(deb)m(y)m(e)p 2170 847
-V 41 w(2\(dbl)p 2418 847 V 40 w(expr\))150 956 y(gsl)p
-262 956 V 41 w(sf)p 367 956 V 39 w(deb)m(y)m(e)p 630
-956 V 41 w(3)p 716 956 V 40 w(e)720 b(Y)112 b(gsl)p 1802
-956 V 40 w(sf)p 1906 956 V 40 w(deb)m(y)m(e)p 2170 956
-V 41 w(3\(dbl)p 2418 956 V 40 w(expr\))150 1066 y(gsl)p
-262 1066 V 41 w(sf)p 367 1066 V 39 w(deb)m(y)m(e)p 630
-1066 V 41 w(4)p 716 1066 V 40 w(e)720 b(Y)112 b(gsl)p
-1802 1066 V 40 w(sf)p 1906 1066 V 40 w(deb)m(y)m(e)p
-2170 1066 V 41 w(4\(dbl)p 2418 1066 V 40 w(expr\))150
-1176 y(gsl)p 262 1176 V 41 w(sf)p 367 1176 V 39 w(deb)m(y)m(e)p
-630 1176 V 41 w(5)p 716 1176 V 40 w(e)720 b(Y)112 b(gsl)p
-1802 1176 V 40 w(sf)p 1906 1176 V 40 w(deb)m(y)m(e)p
-2170 1176 V 41 w(5\(dbl)p 2418 1176 V 40 w(expr\))150
-1285 y(gsl)p 262 1285 V 41 w(sf)p 367 1285 V 39 w(deb)m(y)m(e)p
-630 1285 V 41 w(6)p 716 1285 V 40 w(e)720 b(Y)112 b(gsl)p
-1802 1285 V 40 w(sf)p 1906 1285 V 40 w(deb)m(y)m(e)p
-2170 1285 V 41 w(6\(dbl)p 2418 1285 V 40 w(expr\))150
-1395 y(gsl)p 262 1395 V 41 w(sf)p 367 1395 V 39 w(dilog)p
-597 1395 V 41 w(e)838 b(N)112 b(gsl)p 1802 1395 V 40
-w(sf)p 1906 1395 V 40 w(dilog)150 1504 y(gsl)p 262 1504
-V 41 w(sf)p 367 1504 V 39 w(complex)p 731 1504 V 41 w(dilog)p
-963 1504 V 41 w(xy)p 1100 1504 V 40 w(e)336 b(N)112 b(gsl)p
-1802 1504 V 40 w(sf)p 1906 1504 V 40 w(complex)p 2271
-1504 V 41 w(dilog)p 2503 1504 V 41 w(xy)p 2640 1504 V
-40 w(e)150 1614 y(gsl)p 262 1614 V 41 w(sf)p 367 1614
-V 39 w(complex)p 731 1614 V 41 w(dilog)p 963 1614 V 41
-w(e)472 b(N)112 b(gsl)p 1802 1614 V 40 w(sf)p 1906 1614
-V 40 w(complex)p 2271 1614 V 41 w(dilog)150 1724 y(gsl)p
-262 1724 V 41 w(sf)p 367 1724 V 39 w(complex)p 731 1724
-V 41 w(sp)s(ence)p 1033 1724 V 40 w(xy)p 1169 1724 V
-40 w(e)267 b(N)112 b(gsl)p 1802 1724 V 40 w(sf)p 1906
-1724 V 40 w(complex)p 2271 1724 V 41 w(sp)s(ence)p 2573
-1724 V 39 w(xy)p 2708 1724 V 40 w(e)150 1833 y(gsl)p
-262 1833 V 41 w(sf)p 367 1833 V 39 w(m)m(ultiply)p 739
-1833 V 41 w(e)696 b(N)112 b(gsl)p 1802 1833 V 40 w(sf)p
-1906 1833 V 40 w(m)m(ultiply)150 1943 y(gsl)p 262 1943
-V 41 w(sf)p 367 1943 V 39 w(m)m(ultiply)p 739 1943 V
-41 w(err)p 892 1943 V 39 w(e)545 b(N)112 b(gsl)p 1802
-1943 V 40 w(sf)p 1906 1943 V 40 w(m)m(ultiply)p 2279
-1943 V 40 w(err)150 2052 y(gsl)p 262 2052 V 41 w(sf)p
-367 2052 V 39 w(ellin)m(t)p 604 2052 V 42 w(Kcomp)p 929
-2052 V 40 w(e)507 b(Y)112 b(gsl)p 1802 2052 V 40 w(sf)p
-1906 2052 V 40 w(ellin)m(t)p 2144 2052 V 41 w(Kcomp\(dbl)p
-2630 2052 V 40 w(expr\))150 2162 y(gsl)p 262 2162 V 41
-w(sf)p 367 2162 V 39 w(ellin)m(t)p 604 2162 V 42 w(Ecomp)p
-920 2162 V 40 w(e)516 b(Y)112 b(gsl)p 1802 2162 V 40
-w(sf)p 1906 2162 V 40 w(ellin)m(t)p 2144 2162 V 41 w(Ecomp\(dbl)p
-2621 2162 V 40 w(expr\))150 2271 y(gsl)p 262 2271 V 41
-w(sf)p 367 2271 V 39 w(ellin)m(t)p 604 2271 V 42 w(Pcomp)p
-920 2271 V 40 w(e)516 b(Y)112 b(gsl)p 1802 2271 V 40
-w(sf)p 1906 2271 V 40 w(ellin)m(t)p 2144 2271 V 41 w(Pcomp\(dbl)p
-2621 2271 V 40 w(expr,dbl)p 2988 2271 V 39 w(expr\))150
-2381 y(gsl)p 262 2381 V 41 w(sf)p 367 2381 V 39 w(ellin)m(t)p
-604 2381 V 42 w(Dcomp)p 927 2381 V 40 w(e)509 b(Y)112
-b(gsl)p 1802 2381 V 40 w(sf)p 1906 2381 V 40 w(ellin)m(t)p
-2144 2381 V 41 w(Dcomp\(dbl)p 2628 2381 V 41 w(expr\))150
-2491 y(gsl)p 262 2491 V 41 w(sf)p 367 2491 V 39 w(ellin)m(t)p
-604 2491 V 42 w(F)p 705 2491 V 40 w(e)731 b(Y)112 b(gsl)p
-1802 2491 V 40 w(sf)p 1906 2491 V 40 w(ellin)m(t)p 2144
-2491 V 41 w(F\(dbl)p 2406 2491 V 40 w(expr,dbl)p 2773
-2491 V 39 w(expr\))150 2600 y(gsl)p 262 2600 V 41 w(sf)p
-367 2600 V 39 w(ellin)m(t)p 604 2600 V 42 w(E)p 708 2600
-V 40 w(e)728 b(Y)112 b(gsl)p 1802 2600 V 40 w(sf)p 1906
-2600 V 40 w(ellin)m(t)p 2144 2600 V 41 w(E\(dbl)p 2409
-2600 V 40 w(expr,dbl)p 2776 2600 V 39 w(expr\))150 2710
-y(gsl)p 262 2710 V 41 w(sf)p 367 2710 V 39 w(ellin)m(t)p
-604 2710 V 42 w(P)p 708 2710 V 40 w(e)728 b(Y)112 b(gsl)p
-1802 2710 V 40 w(sf)p 1906 2710 V 40 w(ellin)m(t)p 2144
-2710 V 41 w(P\(dbl)p 2409 2710 V 40 w(expr,dbl)p 2776
-2710 V 39 w(expr,dbl)p 3142 2710 V 39 w(expr\))150 2819
-y(gsl)p 262 2819 V 41 w(sf)p 367 2819 V 39 w(ellin)m(t)p
-604 2819 V 42 w(D)p 715 2819 V 40 w(e)721 b(Y)112 b(gsl)p
-1802 2819 V 40 w(sf)p 1906 2819 V 40 w(ellin)m(t)p 2144
-2819 V 41 w(D\(dbl)p 2416 2819 V 40 w(expr,dbl)p 2783
-2819 V 39 w(expr,dbl)p 3149 2819 V 39 w(expr\))150 2929
-y(gsl)p 262 2929 V 41 w(sf)p 367 2929 V 39 w(ellin)m(t)p
-604 2929 V 42 w(R)m(C)p 776 2929 V 40 w(e)660 b(Y)112
-b(gsl)p 1802 2929 V 40 w(sf)p 1906 2929 V 40 w(ellin)m(t)p
-2144 2929 V 41 w(R)m(C\(dbl)p 2477 2929 V 40 w(expr,dbl)p
-2844 2929 V 39 w(expr\))150 3039 y(gsl)p 262 3039 V 41
-w(sf)p 367 3039 V 39 w(ellin)m(t)p 604 3039 V 42 w(RD)p
-782 3039 V 40 w(e)654 b(Y)112 b(gsl)p 1802 3039 V 40
-w(sf)p 1906 3039 V 40 w(ellin)m(t)p 2144 3039 V 41 w(RD\(dbl)p
-2483 3039 V 40 w(expr,dbl)p 2850 3039 V 39 w(expr,dbl)p
-3216 3039 V 39 w(expr\))150 3148 y(gsl)p 262 3148 V 41
-w(sf)p 367 3148 V 39 w(ellin)m(t)p 604 3148 V 42 w(RF)p
-772 3148 V 40 w(e)664 b(Y)112 b(gsl)p 1802 3148 V 40
-w(sf)p 1906 3148 V 40 w(ellin)m(t)p 2144 3148 V 41 w(RF\(dbl)p
-2473 3148 V 40 w(expr,dbl)p 2840 3148 V 39 w(expr,dbl)p
-3206 3148 V 39 w(expr\))150 3258 y(gsl)p 262 3258 V 41
-w(sf)p 367 3258 V 39 w(ellin)m(t)p 604 3258 V 42 w(RJ)p
-760 3258 V 39 w(e)677 b(Y)112 b(gsl)p 1802 3258 V 40
-w(sf)p 1906 3258 V 40 w(ellin)m(t)p 2144 3258 V 41 w(RJ\(dbl)p
-2461 3258 V 40 w(expr,dbl)p 2828 3258 V 39 w(expr,dbl)p
-3194 3258 V 39 w(expr,dbl)p 3560 3258 V 39 w(expr\))150
-3367 y(gsl)p 262 3367 V 41 w(sf)p 367 3367 V 39 w(elljac)p
-609 3367 V 42 w(e)825 b(N)112 b(gsl)p 1802 3367 V 40
-w(sf)p 1906 3367 V 40 w(elljac)150 3477 y(gsl)p 262 3477
-V 41 w(sf)p 367 3477 V 39 w(erfc)p 550 3477 V 40 w(e)886
-b(Y)112 b(gsl)p 1802 3477 V 40 w(sf)p 1906 3477 V 40
-w(erfc\(dbl)p 2252 3477 V 40 w(expr\))150 3587 y(gsl)p
-262 3587 V 41 w(sf)p 367 3587 V 39 w(log)p 521 3587 V
-41 w(erfc)p 706 3587 V 41 w(e)729 b(Y)112 b(gsl)p 1802
-3587 V 40 w(sf)p 1906 3587 V 40 w(log)p 2061 3587 V 41
-w(erfc\(dbl)p 2408 3587 V 40 w(expr\))150 3696 y(gsl)p
-262 3696 V 41 w(sf)p 367 3696 V 39 w(erf)p 510 3696 V
-40 w(e)926 b(Y)112 b(gsl)p 1802 3696 V 40 w(sf)p 1906
-3696 V 40 w(erf\(dbl)p 2212 3696 V 39 w(expr\))150 3806
-y(gsl)p 262 3806 V 41 w(sf)p 367 3806 V 39 w(erf)p 510
-3806 V 40 w(Z)p 606 3806 V 40 w(e)830 b(Y)112 b(gsl)p
-1802 3806 V 40 w(sf)p 1906 3806 V 40 w(erf)p 2050 3806
-V 40 w(Z\(dbl)p 2308 3806 V 39 w(expr\))150 3915 y(gsl)p
-262 3915 V 41 w(sf)p 367 3915 V 39 w(erf)p 510 3915 V
-40 w(Q)p 621 3915 V 40 w(e)815 b(Y)112 b(gsl)p 1802 3915
-V 40 w(sf)p 1906 3915 V 40 w(erf)p 2050 3915 V 40 w(Q\(dbl)p
-2323 3915 V 39 w(expr\))150 4025 y(gsl)p 262 4025 V 41
-w(sf)p 367 4025 V 39 w(hazard)p 674 4025 V 40 w(e)762
-b(Y)112 b(gsl)p 1802 4025 V 40 w(sf)p 1906 4025 V 40
-w(hazard\(dbl)p 2376 4025 V 39 w(expr\))150 4134 y(gsl)p
-262 4134 V 41 w(sf)p 367 4134 V 39 w(exp)p 545 4134 V
-40 w(e)891 b(Y)112 b(gsl)p 1802 4134 V 40 w(sf)p 1906
-4134 V 40 w(exp\(dbl)p 2247 4134 V 39 w(expr\))150 4244
-y(gsl)p 262 4244 V 41 w(sf)p 367 4244 V 39 w(exp)p 545
-4244 V 40 w(e10)p 715 4244 V 41 w(e)720 b(N)112 b(gsl)p
-1802 4244 V 40 w(sf)p 1906 4244 V 40 w(exp)p 2085 4244
-V 40 w(e10)150 4354 y(gsl)p 262 4354 V 41 w(sf)p 367
-4354 V 39 w(exp)p 545 4354 V 40 w(m)m(ult)p 769 4354
-V 40 w(e)667 b(Y)112 b(gsl)p 1802 4354 V 40 w(sf)p 1906
-4354 V 40 w(exp)p 2085 4354 V 40 w(m)m(ult\(dbl)p 2471
-4354 V 40 w(expr,dbl)p 2838 4354 V 39 w(expr\))150 4463
-y(gsl)p 262 4463 V 41 w(sf)p 367 4463 V 39 w(exp)p 545
-4463 V 40 w(m)m(ult)p 769 4463 V 40 w(e10)p 939 4463
-V 42 w(e)495 b(N)112 b(gsl)p 1802 4463 V 40 w(sf)p 1906
-4463 V 40 w(exp)p 2085 4463 V 40 w(m)m(ult)p 2309 4463
-V 40 w(e10)150 4573 y(gsl)p 262 4573 V 41 w(sf)p 367
-4573 V 39 w(expm1)p 666 4573 V 40 w(e)770 b(Y)112 b(gsl)p
-1802 4573 V 40 w(sf)p 1906 4573 V 40 w(expm1\(dbl)p 2368
-4573 V 40 w(expr\))150 4682 y(gsl)p 262 4682 V 41 w(sf)p
-367 4682 V 39 w(exprel)p 646 4682 V 40 w(e)790 b(Y)112
-b(gsl)p 1802 4682 V 40 w(sf)p 1906 4682 V 40 w(exprel\(dbl)p
-2348 4682 V 40 w(expr\))150 4792 y(gsl)p 262 4792 V 41
-w(sf)p 367 4792 V 39 w(exprel)p 646 4792 V 40 w(2)p 731
-4792 V 41 w(e)704 b(Y)112 b(gsl)p 1802 4792 V 40 w(sf)p
-1906 4792 V 40 w(exprel)p 2186 4792 V 40 w(2\(dbl)p 2433
-4792 V 40 w(expr\))150 4902 y(gsl)p 262 4902 V 41 w(sf)p
-367 4902 V 39 w(exprel)p 646 4902 V 40 w(n)p 737 4902
-V 40 w(e)699 b(Y)112 b(gsl)p 1802 4902 V 40 w(sf)p 1906
-4902 V 40 w(exprel)p 2186 4902 V 40 w(n\(in)m(t)p 2420
-4902 V 40 w(expr,dbl)p 2787 4902 V 39 w(expr\))150 5011
-y(gsl)p 262 5011 V 41 w(sf)p 367 5011 V 39 w(exp)p 545
-5011 V 40 w(err)p 697 5011 V 40 w(e)739 b(Y)112 b(gsl)p
-1802 5011 V 40 w(sf)p 1906 5011 V 40 w(exp)p 2085 5011
-V 40 w(err\(dbl)p 2399 5011 V 39 w(expr,dbl)p 2765 5011
-V 39 w(expr\))150 5121 y(gsl)p 262 5121 V 41 w(sf)p 367
-5121 V 39 w(exp)p 545 5121 V 40 w(err)p 697 5121 V 40
-w(e10)p 867 5121 V 41 w(e)568 b(N)112 b(gsl)p 1802 5121
-V 40 w(sf)p 1906 5121 V 40 w(exp)p 2085 5121 V 40 w(err)p
-2237 5121 V 39 w(e10)150 5230 y(gsl)p 262 5230 V 41 w(sf)p
-367 5230 V 39 w(exp)p 545 5230 V 40 w(m)m(ult)p 769 5230
-V 40 w(err)p 921 5230 V 40 w(e)515 b(N)112 b(gsl)p 1802
-5230 V 40 w(sf)p 1906 5230 V 40 w(exp)p 2085 5230 V 40
-w(m)m(ult)p 2309 5230 V 40 w(err)150 5340 y(gsl)p 262
-5340 V 41 w(sf)p 367 5340 V 39 w(exp)p 545 5340 V 40
-w(m)m(ult)p 769 5340 V 40 w(err)p 921 5340 V 40 w(e10)p
-1091 5340 V 41 w(e)344 b(N)112 b(gsl)p 1802 5340 V 40
-w(sf)p 1906 5340 V 40 w(exp)p 2085 5340 V 40 w(m)m(ult)p
-2309 5340 V 40 w(err)p 2461 5340 V 40 w(e10)p eop end
-%%Page: 139 145
-TeXDict begin 139 144 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(139)150
-299 y(gsl)p 262 299 28 4 v 41 w(sf)p 367 299 V 39 w(expin)m(t)p
-653 299 V 41 w(E1)p 801 299 V 40 w(e)635 b(Y)112 b(gsl)p
-1802 299 V 40 w(sf)p 1906 299 V 40 w(expin)m(t)p 2193
-299 V 40 w(E1\(dbl)p 2502 299 V 40 w(expr\))150 408 y(gsl)p
-262 408 V 41 w(sf)p 367 408 V 39 w(expin)m(t)p 653 408
-V 41 w(E2)p 801 408 V 40 w(e)635 b(Y)112 b(gsl)p 1802
-408 V 40 w(sf)p 1906 408 V 40 w(expin)m(t)p 2193 408
-V 40 w(E2\(dbl)p 2502 408 V 40 w(expr\))150 518 y(gsl)p
-262 518 V 41 w(sf)p 367 518 V 39 w(expin)m(t)p 653 518
-V 41 w(En)p 807 518 V 39 w(e)630 b(Y)112 b(gsl)p 1802
-518 V 40 w(sf)p 1906 518 V 40 w(expin)m(t)p 2193 518
-V 40 w(En\(in)m(t)p 2489 518 V 41 w(expr,dbl)p 2857 518
-V 39 w(expr\))150 628 y(gsl)p 262 628 V 41 w(sf)p 367
-628 V 39 w(expin)m(t)p 653 628 V 41 w(E1)p 801 628 V
-40 w(scaled)p 1078 628 V 41 w(e)357 b(Y)112 b(gsl)p 1802
-628 V 40 w(sf)p 1906 628 V 40 w(expin)m(t)p 2193 628
-V 40 w(E1)p 2340 628 V 41 w(scaled\(dbl)p 2780 628 V
-40 w(expr\))150 737 y(gsl)p 262 737 V 41 w(sf)p 367 737
-V 39 w(expin)m(t)p 653 737 V 41 w(E2)p 801 737 V 40 w(scaled)p
-1078 737 V 41 w(e)357 b(Y)112 b(gsl)p 1802 737 V 40 w(sf)p
-1906 737 V 40 w(expin)m(t)p 2193 737 V 40 w(E2)p 2340
-737 V 41 w(scaled\(dbl)p 2780 737 V 40 w(expr\))150 847
-y(gsl)p 262 847 V 41 w(sf)p 367 847 V 39 w(expin)m(t)p
-653 847 V 41 w(En)p 807 847 V 39 w(scaled)p 1083 847
-V 41 w(e)352 b(Y)112 b(gsl)p 1802 847 V 40 w(sf)p 1906
-847 V 40 w(expin)m(t)p 2193 847 V 40 w(En)p 2346 847
-V 40 w(scaled\(in)m(t)p 2766 847 V 42 w(expr,dbl)p 3135
-847 V 39 w(expr\))150 956 y(gsl)p 262 956 V 41 w(sf)p
-367 956 V 39 w(expin)m(t)p 653 956 V 41 w(Ei)p 781 956
-V 40 w(e)655 b(Y)112 b(gsl)p 1802 956 V 40 w(sf)p 1906
-956 V 40 w(expin)m(t)p 2193 956 V 40 w(Ei\(dbl)p 2482
-956 V 40 w(expr\))150 1066 y(gsl)p 262 1066 V 41 w(sf)p
-367 1066 V 39 w(expin)m(t)p 653 1066 V 41 w(Ei)p 781
-1066 V 40 w(scaled)p 1058 1066 V 41 w(e)377 b(Y)112 b(gsl)p
-1802 1066 V 40 w(sf)p 1906 1066 V 40 w(expin)m(t)p 2193
-1066 V 40 w(Ei)p 2320 1066 V 40 w(scaled\(dbl)p 2759
-1066 V 41 w(expr\))150 1176 y(gsl)p 262 1176 V 41 w(sf)p
-367 1176 V 39 w(Shi)p 533 1176 V 39 w(e)904 b(Y)112 b(gsl)p
-1802 1176 V 40 w(sf)p 1906 1176 V 40 w(Shi\(dbl)p 2235
-1176 V 39 w(expr\))150 1285 y(gsl)p 262 1285 V 41 w(sf)p
-367 1285 V 39 w(Chi)p 548 1285 V 40 w(e)888 b(Y)112 b(gsl)p
-1802 1285 V 40 w(sf)p 1906 1285 V 40 w(Chi\(dbl)p 2250
-1285 V 39 w(expr\))150 1395 y(gsl)p 262 1395 V 41 w(sf)p
-367 1395 V 39 w(expin)m(t)p 653 1395 V 41 w(3)p 739 1395
-V 40 w(e)697 b(Y)112 b(gsl)p 1802 1395 V 40 w(sf)p 1906
-1395 V 40 w(expin)m(t)p 2193 1395 V 40 w(3\(dbl)p 2440
-1395 V 40 w(expr\))150 1504 y(gsl)p 262 1504 V 41 w(sf)p
-367 1504 V 39 w(Si)p 482 1504 V 40 w(e)954 b(Y)112 b(gsl)p
-1802 1504 V 40 w(sf)p 1906 1504 V 40 w(Si\(dbl)p 2184
-1504 V 39 w(expr\))150 1614 y(gsl)p 262 1614 V 41 w(sf)p
-367 1614 V 39 w(Ci)p 497 1614 V 40 w(e)939 b(Y)112 b(gsl)p
-1802 1614 V 40 w(sf)p 1906 1614 V 40 w(Ci\(dbl)p 2199
-1614 V 39 w(expr\))150 1724 y(gsl)p 262 1724 V 41 w(sf)p
-367 1724 V 39 w(atanin)m(t)p 690 1724 V 42 w(e)744 b(Y)112
-b(gsl)p 1802 1724 V 40 w(sf)p 1906 1724 V 40 w(atanin)m(t\(dbl)p
-2392 1724 V 41 w(expr\))150 1833 y(gsl)p 262 1833 V 41
-w(sf)p 367 1833 V 39 w(fermi)p 611 1833 V 40 w(dirac)p
-848 1833 V 40 w(m1)p 1009 1833 V 40 w(e)427 b(Y)112 b(gsl)p
-1802 1833 V 40 w(sf)p 1906 1833 V 40 w(fermi)p 2151 1833
-V 40 w(dirac)p 2388 1833 V 40 w(m1\(dbl)p 2711 1833 V
-40 w(expr\))150 1943 y(gsl)p 262 1943 V 41 w(sf)p 367
-1943 V 39 w(fermi)p 611 1943 V 40 w(dirac)p 848 1943
-V 40 w(0)p 933 1943 V 41 w(e)502 b(Y)112 b(gsl)p 1802
-1943 V 40 w(sf)p 1906 1943 V 40 w(fermi)p 2151 1943 V
-40 w(dirac)p 2388 1943 V 40 w(0\(dbl)p 2635 1943 V 40
-w(expr\))150 2052 y(gsl)p 262 2052 V 41 w(sf)p 367 2052
-V 39 w(fermi)p 611 2052 V 40 w(dirac)p 848 2052 V 40
-w(1)p 933 2052 V 41 w(e)502 b(Y)112 b(gsl)p 1802 2052
-V 40 w(sf)p 1906 2052 V 40 w(fermi)p 2151 2052 V 40 w(dirac)p
-2388 2052 V 40 w(1\(dbl)p 2635 2052 V 40 w(expr\))150
-2162 y(gsl)p 262 2162 V 41 w(sf)p 367 2162 V 39 w(fermi)p
-611 2162 V 40 w(dirac)p 848 2162 V 40 w(2)p 933 2162
-V 41 w(e)502 b(Y)112 b(gsl)p 1802 2162 V 40 w(sf)p 1906
-2162 V 40 w(fermi)p 2151 2162 V 40 w(dirac)p 2388 2162
-V 40 w(2\(dbl)p 2635 2162 V 40 w(expr\))150 2271 y(gsl)p
-262 2271 V 41 w(sf)p 367 2271 V 39 w(fermi)p 611 2271
-V 40 w(dirac)p 848 2271 V 40 w(in)m(t)p 996 2271 V 41
-w(e)439 b(Y)112 b(gsl)p 1802 2271 V 40 w(sf)p 1906 2271
-V 40 w(fermi)p 2151 2271 V 40 w(dirac)p 2388 2271 V 40
-w(in)m(t\(in)m(t)p 2679 2271 V 41 w(expr,dbl)p 3047 2271
-V 39 w(expr\))150 2381 y(gsl)p 262 2381 V 41 w(sf)p 367
-2381 V 39 w(fermi)p 611 2381 V 40 w(dirac)p 848 2381
-V 40 w(mhalf)p 1113 2381 V 40 w(e)323 b(Y)112 b(gsl)p
-1802 2381 V 40 w(sf)p 1906 2381 V 40 w(fermi)p 2151 2381
-V 40 w(dirac)p 2388 2381 V 40 w(mhalf\(dbl)p 2815 2381
-V 39 w(expr\))150 2491 y(gsl)p 262 2491 V 41 w(sf)p 367
-2491 V 39 w(fermi)p 611 2491 V 40 w(dirac)p 848 2491
-V 40 w(half)p 1037 2491 V 40 w(e)399 b(Y)112 b(gsl)p
-1802 2491 V 40 w(sf)p 1906 2491 V 40 w(fermi)p 2151 2491
-V 40 w(dirac)p 2388 2491 V 40 w(half\(dbl)p 2739 2491
-V 39 w(expr\))150 2600 y(gsl)p 262 2600 V 41 w(sf)p 367
-2600 V 39 w(fermi)p 611 2600 V 40 w(dirac)p 848 2600
-V 40 w(3half)p 1082 2600 V 41 w(e)353 b(Y)112 b(gsl)p
-1802 2600 V 40 w(sf)p 1906 2600 V 40 w(fermi)p 2151 2600
-V 40 w(dirac)p 2388 2600 V 40 w(3half\(dbl)p 2784 2600
-V 40 w(expr\))150 2710 y(gsl)p 262 2710 V 41 w(sf)p 367
-2710 V 39 w(fermi)p 611 2710 V 40 w(dirac)p 848 2710
-V 40 w(inc)p 1004 2710 V 40 w(0)p 1089 2710 V 41 w(e)346
-b(Y)112 b(gsl)p 1802 2710 V 40 w(sf)p 1906 2710 V 40
-w(fermi)p 2151 2710 V 40 w(dirac)p 2388 2710 V 40 w(inc)p
-2544 2710 V 40 w(0\(dbl)p 2791 2710 V 40 w(expr,dbl)p
-3158 2710 V 39 w(expr\))150 2819 y(gsl)p 262 2819 V 41
-w(sf)p 367 2819 V 39 w(lngamma)p 769 2819 V 41 w(e)666
+5121 V 40 w(zero)p 2378 5121 V 41 w(Jn)m(u)150 5230 y(gsl)p
+262 5230 V 41 w(sf)p 367 5230 V 39 w(clausen)p 694 5230
+V 41 w(e)741 b(Y)112 b(gsl)p 1802 5230 V 40 w(sf)p 1906
+5230 V 40 w(clausen\(dbl)p 2396 5230 V 40 w(expr\))150
+5340 y(gsl)p 262 5340 V 41 w(sf)p 367 5340 V 39 w(h)m(ydrogenicR)p
+902 5340 V 41 w(1)p 988 5340 V 40 w(e)448 b(N)112 b(gsl)p
+1802 5340 V 40 w(sf)p 1906 5340 V 40 w(h)m(ydrogenicR)p
+2442 5340 V 40 w(1)p eop end
+%%Page: 150 156
+TeXDict begin 150 155 bop 150 -116 a FE(150)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(gsl)p 262 299 28
+4 v 41 w(sf)p 367 299 V 39 w(h)m(ydrogenicR)p 902 299
+V 41 w(e)533 b(N)112 b(gsl)p 1802 299 V 40 w(sf)p 1906
+299 V 40 w(h)m(ydrogenicR)150 408 y(gsl)p 262 408 V 41
+w(sf)p 367 408 V 39 w(coulom)m(b)p 736 408 V 41 w(w)m(a)m(v)m(e)p
+967 408 V 42 w(F)m(G)p 1136 408 V 41 w(e)299 b(N)112
+b(gsl)p 1802 408 V 40 w(sf)p 1906 408 V 40 w(coulom)m(b)p
+2276 408 V 41 w(w)m(a)m(v)m(e)p 2507 408 V 42 w(F)m(G)150
+518 y(gsl)p 262 518 V 41 w(sf)p 367 518 V 39 w(coulom)m(b)p
+736 518 V 41 w(w)m(a)m(v)m(e)p 967 518 V 42 w(F)p 1068
+518 V 40 w(arra)m(y)201 b(N)112 b(gsl)p 1802 518 V 40
+w(sf)p 1906 518 V 40 w(coulom)m(b)p 2276 518 V 41 w(w)m(a)m(v)m(e)p
+2507 518 V 42 w(F)p 2608 518 V 40 w(arra)m(y)150 628
+y(gsl)p 262 628 V 41 w(sf)p 367 628 V 39 w(coulom)m(b)p
+736 628 V 41 w(w)m(a)m(v)m(e)p 967 628 V 42 w(F)m(G)p
+1136 628 V 41 w(arra)m(y)132 b(N)112 b(gsl)p 1802 628
+V 40 w(sf)p 1906 628 V 40 w(coulom)m(b)p 2276 628 V 41
+w(w)m(a)m(v)m(e)p 2507 628 V 42 w(F)m(G)p 2676 628 V
+41 w(arra)m(y)150 737 y(gsl)p 262 737 V 41 w(sf)p 367
+737 V 39 w(coulom)m(b)p 736 737 V 41 w(w)m(a)m(v)m(e)p
+967 737 V 42 w(F)m(Gp)p 1187 737 V 41 w(arra)m(y)81 b(N)112
+b(gsl)p 1802 737 V 40 w(sf)p 1906 737 V 40 w(coulom)m(b)p
+2276 737 V 41 w(w)m(a)m(v)m(e)p 2507 737 V 42 w(F)m(Gp)p
+2727 737 V 40 w(arra)m(y)150 847 y(gsl)p 262 847 V 41
+w(sf)p 367 847 V 39 w(coulom)m(b)p 736 847 V 41 w(w)m(a)m(v)m(e)p
+967 847 V 42 w(sphF)p 1206 847 V 39 w(arra)m(y)64 b(N)112
+b(gsl)p 1802 847 V 40 w(sf)p 1906 847 V 40 w(coulom)m(b)p
+2276 847 V 41 w(w)m(a)m(v)m(e)p 2507 847 V 42 w(sphF)p
+2746 847 V 39 w(arra)m(y)150 956 y(gsl)p 262 956 V 41
+w(sf)p 367 956 V 39 w(coulom)m(b)p 736 956 V 41 w(CL)p
+900 956 V 39 w(e)537 b(N)112 b(gsl)p 1802 956 V 40 w(sf)p
+1906 956 V 40 w(coulom)m(b)p 2276 956 V 41 w(CL)150 1066
+y(gsl)p 262 1066 V 41 w(sf)p 367 1066 V 39 w(coulom)m(b)p
+736 1066 V 41 w(CL)p 900 1066 V 39 w(arra)m(y)370 b(N)112
+b(gsl)p 1802 1066 V 40 w(sf)p 1906 1066 V 40 w(coulom)m(b)p
+2276 1066 V 41 w(CL)p 2440 1066 V 39 w(arra)m(y)150 1176
+y(gsl)p 262 1176 V 41 w(sf)p 367 1176 V 39 w(coupling)p
+739 1176 V 41 w(3j)p 853 1176 V 40 w(e)583 b(N)112 b(gsl)p
+1802 1176 V 40 w(sf)p 1906 1176 V 40 w(coupling)p 2279
+1176 V 40 w(3j)150 1285 y(gsl)p 262 1285 V 41 w(sf)p
+367 1285 V 39 w(coupling)p 739 1285 V 41 w(6j)p 853 1285
+V 40 w(e)583 b(N)112 b(gsl)p 1802 1285 V 40 w(sf)p 1906
+1285 V 40 w(coupling)p 2279 1285 V 40 w(6j)150 1395 y(gsl)p
+262 1395 V 41 w(sf)p 367 1395 V 39 w(coupling)p 739 1395
+V 41 w(RacahW)p 1121 1395 V 41 w(e)314 b(N)112 b(gsl)p
+1802 1395 V 40 w(sf)p 1906 1395 V 40 w(coupling)p 2279
+1395 V 40 w(RacahW)150 1504 y(gsl)p 262 1504 V 41 w(sf)p
+367 1504 V 39 w(coupling)p 739 1504 V 41 w(9j)p 853 1504
+V 40 w(e)583 b(N)112 b(gsl)p 1802 1504 V 40 w(sf)p 1906
+1504 V 40 w(coupling)p 2279 1504 V 40 w(9j)150 1614 y(gsl)p
+262 1614 V 41 w(sf)p 367 1614 V 39 w(coupling)p 739 1614
+V 41 w(6j)p 853 1614 V 40 w(INCORRECT)p 1459 1614 V 38
+w(e)-21 b(N)112 b(gsl)p 1802 1614 V 40 w(sf)p 1906 1614
+V 40 w(coupling)p 2279 1614 V 40 w(6j)p 2392 1614 V 40
+w(INCORRECT)150 1724 y(gsl)p 262 1724 V 41 w(sf)p 367
+1724 V 39 w(da)m(wson)p 697 1724 V 40 w(e)739 b(Y)112
+b(gsl)p 1802 1724 V 40 w(sf)p 1906 1724 V 40 w(da)m(wson\(dbl)p
+2399 1724 V 39 w(expr\))150 1833 y(gsl)p 262 1833 V 41
+w(sf)p 367 1833 V 39 w(deb)m(y)m(e)p 630 1833 V 41 w(1)p
+716 1833 V 40 w(e)720 b(Y)112 b(gsl)p 1802 1833 V 40
+w(sf)p 1906 1833 V 40 w(deb)m(y)m(e)p 2170 1833 V 41
+w(1\(dbl)p 2418 1833 V 40 w(expr\))150 1943 y(gsl)p 262
+1943 V 41 w(sf)p 367 1943 V 39 w(deb)m(y)m(e)p 630 1943
+V 41 w(2)p 716 1943 V 40 w(e)720 b(Y)112 b(gsl)p 1802
+1943 V 40 w(sf)p 1906 1943 V 40 w(deb)m(y)m(e)p 2170
+1943 V 41 w(2\(dbl)p 2418 1943 V 40 w(expr\))150 2052
+y(gsl)p 262 2052 V 41 w(sf)p 367 2052 V 39 w(deb)m(y)m(e)p
+630 2052 V 41 w(3)p 716 2052 V 40 w(e)720 b(Y)112 b(gsl)p
+1802 2052 V 40 w(sf)p 1906 2052 V 40 w(deb)m(y)m(e)p
+2170 2052 V 41 w(3\(dbl)p 2418 2052 V 40 w(expr\))150
+2162 y(gsl)p 262 2162 V 41 w(sf)p 367 2162 V 39 w(deb)m(y)m(e)p
+630 2162 V 41 w(4)p 716 2162 V 40 w(e)720 b(Y)112 b(gsl)p
+1802 2162 V 40 w(sf)p 1906 2162 V 40 w(deb)m(y)m(e)p
+2170 2162 V 41 w(4\(dbl)p 2418 2162 V 40 w(expr\))150
+2271 y(gsl)p 262 2271 V 41 w(sf)p 367 2271 V 39 w(deb)m(y)m(e)p
+630 2271 V 41 w(5)p 716 2271 V 40 w(e)720 b(Y)112 b(gsl)p
+1802 2271 V 40 w(sf)p 1906 2271 V 40 w(deb)m(y)m(e)p
+2170 2271 V 41 w(5\(dbl)p 2418 2271 V 40 w(expr\))150
+2381 y(gsl)p 262 2381 V 41 w(sf)p 367 2381 V 39 w(deb)m(y)m(e)p
+630 2381 V 41 w(6)p 716 2381 V 40 w(e)720 b(Y)112 b(gsl)p
+1802 2381 V 40 w(sf)p 1906 2381 V 40 w(deb)m(y)m(e)p
+2170 2381 V 41 w(6\(dbl)p 2418 2381 V 40 w(expr\))150
+2491 y(gsl)p 262 2491 V 41 w(sf)p 367 2491 V 39 w(dilog)p
+597 2491 V 41 w(e)838 b(N)112 b(gsl)p 1802 2491 V 40
+w(sf)p 1906 2491 V 40 w(dilog)150 2600 y(gsl)p 262 2600
+V 41 w(sf)p 367 2600 V 39 w(complex)p 731 2600 V 41 w(dilog)p
+963 2600 V 41 w(xy)p 1100 2600 V 40 w(e)336 b(N)112 b(gsl)p
+1802 2600 V 40 w(sf)p 1906 2600 V 40 w(complex)p 2271
+2600 V 41 w(dilog)p 2503 2600 V 41 w(xy)p 2640 2600 V
+40 w(e)150 2710 y(gsl)p 262 2710 V 41 w(sf)p 367 2710
+V 39 w(complex)p 731 2710 V 41 w(dilog)p 963 2710 V 41
+w(e)472 b(N)112 b(gsl)p 1802 2710 V 40 w(sf)p 1906 2710
+V 40 w(complex)p 2271 2710 V 41 w(dilog)150 2819 y(gsl)p
+262 2819 V 41 w(sf)p 367 2819 V 39 w(complex)p 731 2819
+V 41 w(sp)s(ence)p 1033 2819 V 40 w(xy)p 1169 2819 V
+40 w(e)267 b(N)112 b(gsl)p 1802 2819 V 40 w(sf)p 1906
+2819 V 40 w(complex)p 2271 2819 V 41 w(sp)s(ence)p 2573
+2819 V 39 w(xy)p 2708 2819 V 40 w(e)150 2929 y(gsl)p
+262 2929 V 41 w(sf)p 367 2929 V 39 w(m)m(ultiply)p 739
+2929 V 41 w(e)696 b(N)112 b(gsl)p 1802 2929 V 40 w(sf)p
+1906 2929 V 40 w(m)m(ultiply)150 3039 y(gsl)p 262 3039
+V 41 w(sf)p 367 3039 V 39 w(m)m(ultiply)p 739 3039 V
+41 w(err)p 892 3039 V 39 w(e)545 b(N)112 b(gsl)p 1802
+3039 V 40 w(sf)p 1906 3039 V 40 w(m)m(ultiply)p 2279
+3039 V 40 w(err)150 3148 y(gsl)p 262 3148 V 41 w(sf)p
+367 3148 V 39 w(ellin)m(t)p 604 3148 V 42 w(Kcomp)p 929
+3148 V 40 w(e)507 b(Y)112 b(gsl)p 1802 3148 V 40 w(sf)p
+1906 3148 V 40 w(ellin)m(t)p 2144 3148 V 41 w(Kcomp\(dbl)p
+2630 3148 V 40 w(expr\))150 3258 y(gsl)p 262 3258 V 41
+w(sf)p 367 3258 V 39 w(ellin)m(t)p 604 3258 V 42 w(Ecomp)p
+920 3258 V 40 w(e)516 b(Y)112 b(gsl)p 1802 3258 V 40
+w(sf)p 1906 3258 V 40 w(ellin)m(t)p 2144 3258 V 41 w(Ecomp\(dbl)p
+2621 3258 V 40 w(expr\))150 3367 y(gsl)p 262 3367 V 41
+w(sf)p 367 3367 V 39 w(ellin)m(t)p 604 3367 V 42 w(Pcomp)p
+920 3367 V 40 w(e)516 b(Y)112 b(gsl)p 1802 3367 V 40
+w(sf)p 1906 3367 V 40 w(ellin)m(t)p 2144 3367 V 41 w(Pcomp\(dbl)p
+2621 3367 V 40 w(expr,dbl)p 2988 3367 V 39 w(expr\))150
+3477 y(gsl)p 262 3477 V 41 w(sf)p 367 3477 V 39 w(ellin)m(t)p
+604 3477 V 42 w(Dcomp)p 927 3477 V 40 w(e)509 b(Y)112
+b(gsl)p 1802 3477 V 40 w(sf)p 1906 3477 V 40 w(ellin)m(t)p
+2144 3477 V 41 w(Dcomp\(dbl)p 2628 3477 V 41 w(expr\))150
+3587 y(gsl)p 262 3587 V 41 w(sf)p 367 3587 V 39 w(ellin)m(t)p
+604 3587 V 42 w(F)p 705 3587 V 40 w(e)731 b(Y)112 b(gsl)p
+1802 3587 V 40 w(sf)p 1906 3587 V 40 w(ellin)m(t)p 2144
+3587 V 41 w(F\(dbl)p 2406 3587 V 40 w(expr,dbl)p 2773
+3587 V 39 w(expr\))150 3696 y(gsl)p 262 3696 V 41 w(sf)p
+367 3696 V 39 w(ellin)m(t)p 604 3696 V 42 w(E)p 708 3696
+V 40 w(e)728 b(Y)112 b(gsl)p 1802 3696 V 40 w(sf)p 1906
+3696 V 40 w(ellin)m(t)p 2144 3696 V 41 w(E\(dbl)p 2409
+3696 V 40 w(expr,dbl)p 2776 3696 V 39 w(expr\))150 3806
+y(gsl)p 262 3806 V 41 w(sf)p 367 3806 V 39 w(ellin)m(t)p
+604 3806 V 42 w(P)p 708 3806 V 40 w(e)728 b(Y)112 b(gsl)p
+1802 3806 V 40 w(sf)p 1906 3806 V 40 w(ellin)m(t)p 2144
+3806 V 41 w(P\(dbl)p 2409 3806 V 40 w(expr,dbl)p 2776
+3806 V 39 w(expr,dbl)p 3142 3806 V 39 w(expr\))150 3915
+y(gsl)p 262 3915 V 41 w(sf)p 367 3915 V 39 w(ellin)m(t)p
+604 3915 V 42 w(D)p 715 3915 V 40 w(e)721 b(Y)112 b(gsl)p
+1802 3915 V 40 w(sf)p 1906 3915 V 40 w(ellin)m(t)p 2144
+3915 V 41 w(D\(dbl)p 2416 3915 V 40 w(expr,dbl)p 2783
+3915 V 39 w(expr,dbl)p 3149 3915 V 39 w(expr\))150 4025
+y(gsl)p 262 4025 V 41 w(sf)p 367 4025 V 39 w(ellin)m(t)p
+604 4025 V 42 w(R)m(C)p 776 4025 V 40 w(e)660 b(Y)112
+b(gsl)p 1802 4025 V 40 w(sf)p 1906 4025 V 40 w(ellin)m(t)p
+2144 4025 V 41 w(R)m(C\(dbl)p 2477 4025 V 40 w(expr,dbl)p
+2844 4025 V 39 w(expr\))150 4134 y(gsl)p 262 4134 V 41
+w(sf)p 367 4134 V 39 w(ellin)m(t)p 604 4134 V 42 w(RD)p
+782 4134 V 40 w(e)654 b(Y)112 b(gsl)p 1802 4134 V 40
+w(sf)p 1906 4134 V 40 w(ellin)m(t)p 2144 4134 V 41 w(RD\(dbl)p
+2483 4134 V 40 w(expr,dbl)p 2850 4134 V 39 w(expr,dbl)p
+3216 4134 V 39 w(expr\))150 4244 y(gsl)p 262 4244 V 41
+w(sf)p 367 4244 V 39 w(ellin)m(t)p 604 4244 V 42 w(RF)p
+772 4244 V 40 w(e)664 b(Y)112 b(gsl)p 1802 4244 V 40
+w(sf)p 1906 4244 V 40 w(ellin)m(t)p 2144 4244 V 41 w(RF\(dbl)p
+2473 4244 V 40 w(expr,dbl)p 2840 4244 V 39 w(expr,dbl)p
+3206 4244 V 39 w(expr\))150 4354 y(gsl)p 262 4354 V 41
+w(sf)p 367 4354 V 39 w(ellin)m(t)p 604 4354 V 42 w(RJ)p
+760 4354 V 39 w(e)677 b(Y)112 b(gsl)p 1802 4354 V 40
+w(sf)p 1906 4354 V 40 w(ellin)m(t)p 2144 4354 V 41 w(RJ\(dbl)p
+2461 4354 V 40 w(expr,dbl)p 2828 4354 V 39 w(expr,dbl)p
+3194 4354 V 39 w(expr,dbl)p 3560 4354 V 39 w(expr\))150
+4463 y(gsl)p 262 4463 V 41 w(sf)p 367 4463 V 39 w(elljac)p
+609 4463 V 42 w(e)825 b(N)112 b(gsl)p 1802 4463 V 40
+w(sf)p 1906 4463 V 40 w(elljac)150 4573 y(gsl)p 262 4573
+V 41 w(sf)p 367 4573 V 39 w(erfc)p 550 4573 V 40 w(e)886
+b(Y)112 b(gsl)p 1802 4573 V 40 w(sf)p 1906 4573 V 40
+w(erfc\(dbl)p 2252 4573 V 40 w(expr\))150 4682 y(gsl)p
+262 4682 V 41 w(sf)p 367 4682 V 39 w(log)p 521 4682 V
+41 w(erfc)p 706 4682 V 41 w(e)729 b(Y)112 b(gsl)p 1802
+4682 V 40 w(sf)p 1906 4682 V 40 w(log)p 2061 4682 V 41
+w(erfc\(dbl)p 2408 4682 V 40 w(expr\))150 4792 y(gsl)p
+262 4792 V 41 w(sf)p 367 4792 V 39 w(erf)p 510 4792 V
+40 w(e)926 b(Y)112 b(gsl)p 1802 4792 V 40 w(sf)p 1906
+4792 V 40 w(erf\(dbl)p 2212 4792 V 39 w(expr\))150 4902
+y(gsl)p 262 4902 V 41 w(sf)p 367 4902 V 39 w(erf)p 510
+4902 V 40 w(Z)p 606 4902 V 40 w(e)830 b(Y)112 b(gsl)p
+1802 4902 V 40 w(sf)p 1906 4902 V 40 w(erf)p 2050 4902
+V 40 w(Z\(dbl)p 2308 4902 V 39 w(expr\))150 5011 y(gsl)p
+262 5011 V 41 w(sf)p 367 5011 V 39 w(erf)p 510 5011 V
+40 w(Q)p 621 5011 V 40 w(e)815 b(Y)112 b(gsl)p 1802 5011
+V 40 w(sf)p 1906 5011 V 40 w(erf)p 2050 5011 V 40 w(Q\(dbl)p
+2323 5011 V 39 w(expr\))150 5121 y(gsl)p 262 5121 V 41
+w(sf)p 367 5121 V 39 w(hazard)p 674 5121 V 40 w(e)762
+b(Y)112 b(gsl)p 1802 5121 V 40 w(sf)p 1906 5121 V 40
+w(hazard\(dbl)p 2376 5121 V 39 w(expr\))150 5230 y(gsl)p
+262 5230 V 41 w(sf)p 367 5230 V 39 w(exp)p 545 5230 V
+40 w(e)891 b(Y)112 b(gsl)p 1802 5230 V 40 w(sf)p 1906
+5230 V 40 w(exp\(dbl)p 2247 5230 V 39 w(expr\))150 5340
+y(gsl)p 262 5340 V 41 w(sf)p 367 5340 V 39 w(exp)p 545
+5340 V 40 w(e10)p 715 5340 V 41 w(e)720 b(N)112 b(gsl)p
+1802 5340 V 40 w(sf)p 1906 5340 V 40 w(exp)p 2085 5340
+V 40 w(e10)p eop end
+%%Page: 151 157
+TeXDict begin 151 156 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(151)150 299 y(gsl)p
+262 299 28 4 v 41 w(sf)p 367 299 V 39 w(exp)p 545 299
+V 40 w(m)m(ult)p 769 299 V 40 w(e)667 b(Y)112 b(gsl)p
+1802 299 V 40 w(sf)p 1906 299 V 40 w(exp)p 2085 299 V
+40 w(m)m(ult\(dbl)p 2471 299 V 40 w(expr,dbl)p 2838 299
+V 39 w(expr\))150 408 y(gsl)p 262 408 V 41 w(sf)p 367
+408 V 39 w(exp)p 545 408 V 40 w(m)m(ult)p 769 408 V 40
+w(e10)p 939 408 V 42 w(e)495 b(N)112 b(gsl)p 1802 408
+V 40 w(sf)p 1906 408 V 40 w(exp)p 2085 408 V 40 w(m)m(ult)p
+2309 408 V 40 w(e10)150 518 y(gsl)p 262 518 V 41 w(sf)p
+367 518 V 39 w(expm1)p 666 518 V 40 w(e)770 b(Y)112 b(gsl)p
+1802 518 V 40 w(sf)p 1906 518 V 40 w(expm1\(dbl)p 2368
+518 V 40 w(expr\))150 628 y(gsl)p 262 628 V 41 w(sf)p
+367 628 V 39 w(exprel)p 646 628 V 40 w(e)790 b(Y)112
+b(gsl)p 1802 628 V 40 w(sf)p 1906 628 V 40 w(exprel\(dbl)p
+2348 628 V 40 w(expr\))150 737 y(gsl)p 262 737 V 41 w(sf)p
+367 737 V 39 w(exprel)p 646 737 V 40 w(2)p 731 737 V
+41 w(e)704 b(Y)112 b(gsl)p 1802 737 V 40 w(sf)p 1906
+737 V 40 w(exprel)p 2186 737 V 40 w(2\(dbl)p 2433 737
+V 40 w(expr\))150 847 y(gsl)p 262 847 V 41 w(sf)p 367
+847 V 39 w(exprel)p 646 847 V 40 w(n)p 737 847 V 40 w(e)699
+b(Y)112 b(gsl)p 1802 847 V 40 w(sf)p 1906 847 V 40 w(exprel)p
+2186 847 V 40 w(n\(in)m(t)p 2420 847 V 40 w(expr,dbl)p
+2787 847 V 39 w(expr\))150 956 y(gsl)p 262 956 V 41 w(sf)p
+367 956 V 39 w(exp)p 545 956 V 40 w(err)p 697 956 V 40
+w(e)739 b(Y)112 b(gsl)p 1802 956 V 40 w(sf)p 1906 956
+V 40 w(exp)p 2085 956 V 40 w(err\(dbl)p 2399 956 V 39
+w(expr,dbl)p 2765 956 V 39 w(expr\))150 1066 y(gsl)p
+262 1066 V 41 w(sf)p 367 1066 V 39 w(exp)p 545 1066 V
+40 w(err)p 697 1066 V 40 w(e10)p 867 1066 V 41 w(e)568
+b(N)112 b(gsl)p 1802 1066 V 40 w(sf)p 1906 1066 V 40
+w(exp)p 2085 1066 V 40 w(err)p 2237 1066 V 39 w(e10)150
+1176 y(gsl)p 262 1176 V 41 w(sf)p 367 1176 V 39 w(exp)p
+545 1176 V 40 w(m)m(ult)p 769 1176 V 40 w(err)p 921 1176
+V 40 w(e)515 b(N)112 b(gsl)p 1802 1176 V 40 w(sf)p 1906
+1176 V 40 w(exp)p 2085 1176 V 40 w(m)m(ult)p 2309 1176
+V 40 w(err)150 1285 y(gsl)p 262 1285 V 41 w(sf)p 367
+1285 V 39 w(exp)p 545 1285 V 40 w(m)m(ult)p 769 1285
+V 40 w(err)p 921 1285 V 40 w(e10)p 1091 1285 V 41 w(e)344
+b(N)112 b(gsl)p 1802 1285 V 40 w(sf)p 1906 1285 V 40
+w(exp)p 2085 1285 V 40 w(m)m(ult)p 2309 1285 V 40 w(err)p
+2461 1285 V 40 w(e10)150 1395 y(gsl)p 262 1395 V 41 w(sf)p
+367 1395 V 39 w(expin)m(t)p 653 1395 V 41 w(E1)p 801
+1395 V 40 w(e)635 b(Y)112 b(gsl)p 1802 1395 V 40 w(sf)p
+1906 1395 V 40 w(expin)m(t)p 2193 1395 V 40 w(E1\(dbl)p
+2502 1395 V 40 w(expr\))150 1504 y(gsl)p 262 1504 V 41
+w(sf)p 367 1504 V 39 w(expin)m(t)p 653 1504 V 41 w(E2)p
+801 1504 V 40 w(e)635 b(Y)112 b(gsl)p 1802 1504 V 40
+w(sf)p 1906 1504 V 40 w(expin)m(t)p 2193 1504 V 40 w(E2\(dbl)p
+2502 1504 V 40 w(expr\))150 1614 y(gsl)p 262 1614 V 41
+w(sf)p 367 1614 V 39 w(expin)m(t)p 653 1614 V 41 w(En)p
+807 1614 V 39 w(e)630 b(Y)112 b(gsl)p 1802 1614 V 40
+w(sf)p 1906 1614 V 40 w(expin)m(t)p 2193 1614 V 40 w(En\(in)m(t)p
+2489 1614 V 41 w(expr,dbl)p 2857 1614 V 39 w(expr\))150
+1724 y(gsl)p 262 1724 V 41 w(sf)p 367 1724 V 39 w(expin)m(t)p
+653 1724 V 41 w(E1)p 801 1724 V 40 w(scaled)p 1078 1724
+V 41 w(e)357 b(Y)112 b(gsl)p 1802 1724 V 40 w(sf)p 1906
+1724 V 40 w(expin)m(t)p 2193 1724 V 40 w(E1)p 2340 1724
+V 41 w(scaled\(dbl)p 2780 1724 V 40 w(expr\))150 1833
+y(gsl)p 262 1833 V 41 w(sf)p 367 1833 V 39 w(expin)m(t)p
+653 1833 V 41 w(E2)p 801 1833 V 40 w(scaled)p 1078 1833
+V 41 w(e)357 b(Y)112 b(gsl)p 1802 1833 V 40 w(sf)p 1906
+1833 V 40 w(expin)m(t)p 2193 1833 V 40 w(E2)p 2340 1833
+V 41 w(scaled\(dbl)p 2780 1833 V 40 w(expr\))150 1943
+y(gsl)p 262 1943 V 41 w(sf)p 367 1943 V 39 w(expin)m(t)p
+653 1943 V 41 w(En)p 807 1943 V 39 w(scaled)p 1083 1943
+V 41 w(e)352 b(Y)112 b(gsl)p 1802 1943 V 40 w(sf)p 1906
+1943 V 40 w(expin)m(t)p 2193 1943 V 40 w(En)p 2346 1943
+V 40 w(scaled\(in)m(t)p 2766 1943 V 42 w(expr,dbl)p 3135
+1943 V 39 w(expr\))150 2052 y(gsl)p 262 2052 V 41 w(sf)p
+367 2052 V 39 w(expin)m(t)p 653 2052 V 41 w(Ei)p 781
+2052 V 40 w(e)655 b(Y)112 b(gsl)p 1802 2052 V 40 w(sf)p
+1906 2052 V 40 w(expin)m(t)p 2193 2052 V 40 w(Ei\(dbl)p
+2482 2052 V 40 w(expr\))150 2162 y(gsl)p 262 2162 V 41
+w(sf)p 367 2162 V 39 w(expin)m(t)p 653 2162 V 41 w(Ei)p
+781 2162 V 40 w(scaled)p 1058 2162 V 41 w(e)377 b(Y)112
+b(gsl)p 1802 2162 V 40 w(sf)p 1906 2162 V 40 w(expin)m(t)p
+2193 2162 V 40 w(Ei)p 2320 2162 V 40 w(scaled\(dbl)p
+2759 2162 V 41 w(expr\))150 2271 y(gsl)p 262 2271 V 41
+w(sf)p 367 2271 V 39 w(Shi)p 533 2271 V 39 w(e)904 b(Y)112
+b(gsl)p 1802 2271 V 40 w(sf)p 1906 2271 V 40 w(Shi\(dbl)p
+2235 2271 V 39 w(expr\))150 2381 y(gsl)p 262 2381 V 41
+w(sf)p 367 2381 V 39 w(Chi)p 548 2381 V 40 w(e)888 b(Y)112
+b(gsl)p 1802 2381 V 40 w(sf)p 1906 2381 V 40 w(Chi\(dbl)p
+2250 2381 V 39 w(expr\))150 2491 y(gsl)p 262 2491 V 41
+w(sf)p 367 2491 V 39 w(expin)m(t)p 653 2491 V 41 w(3)p
+739 2491 V 40 w(e)697 b(Y)112 b(gsl)p 1802 2491 V 40
+w(sf)p 1906 2491 V 40 w(expin)m(t)p 2193 2491 V 40 w(3\(dbl)p
+2440 2491 V 40 w(expr\))150 2600 y(gsl)p 262 2600 V 41
+w(sf)p 367 2600 V 39 w(Si)p 482 2600 V 40 w(e)954 b(Y)112
+b(gsl)p 1802 2600 V 40 w(sf)p 1906 2600 V 40 w(Si\(dbl)p
+2184 2600 V 39 w(expr\))150 2710 y(gsl)p 262 2710 V 41
+w(sf)p 367 2710 V 39 w(Ci)p 497 2710 V 40 w(e)939 b(Y)112
+b(gsl)p 1802 2710 V 40 w(sf)p 1906 2710 V 40 w(Ci\(dbl)p
+2199 2710 V 39 w(expr\))150 2819 y(gsl)p 262 2819 V 41
+w(sf)p 367 2819 V 39 w(atanin)m(t)p 690 2819 V 42 w(e)744
 b(Y)112 b(gsl)p 1802 2819 V 40 w(sf)p 1906 2819 V 40
-w(lngamma\(dbl)p 2471 2819 V 40 w(expr\))150 2929 y(gsl)p
-262 2929 V 41 w(sf)p 367 2929 V 39 w(lngamma)p 769 2929
-V 41 w(sgn)p 942 2929 V 40 w(e)494 b(N)112 b(gsl)p 1802
-2929 V 40 w(sf)p 1906 2929 V 40 w(lngamma)p 2309 2929
-V 41 w(sgn)150 3039 y(gsl)p 262 3039 V 41 w(sf)p 367
-3039 V 39 w(gamma)p 693 3039 V 41 w(e)742 b(Y)112 b(gsl)p
-1802 3039 V 40 w(sf)p 1906 3039 V 40 w(gamma\(dbl)p 2395
-3039 V 40 w(expr\))150 3148 y(gsl)p 262 3148 V 41 w(sf)p
-367 3148 V 39 w(gammastar)p 845 3148 V 41 w(e)590 b(Y)112
-b(gsl)p 1802 3148 V 40 w(sf)p 1906 3148 V 40 w(gammastar\(dbl)p
-2547 3148 V 41 w(expr\))150 3258 y(gsl)p 262 3258 V 41
-w(sf)p 367 3258 V 39 w(gammain)m(v)p 814 3258 V 41 w(e)621
-b(Y)112 b(gsl)p 1802 3258 V 40 w(sf)p 1906 3258 V 40
-w(gammain)m(v\(dbl)p 2516 3258 V 41 w(expr\))150 3367
-y(gsl)p 262 3367 V 41 w(sf)p 367 3367 V 39 w(lngamma)p
-769 3367 V 41 w(complex)p 1135 3367 V 41 w(e)300 b(N)112
-b(gsl)p 1802 3367 V 40 w(sf)p 1906 3367 V 40 w(lngamma)p
-2309 3367 V 41 w(complex)150 3477 y(gsl)p 262 3477 V
-41 w(sf)p 367 3477 V 39 w(ta)m(ylorco)s(e\013)p 818 3477
-V 43 w(e)615 b(Y)112 b(gsl)p 1802 3477 V 40 w(sf)p 1906
-3477 V 40 w(ta)m(ylorco)s(e\013\(in)m(t)p 2501 3477 V
-43 w(expr,dbl)p 2871 3477 V 39 w(expr\))150 3587 y(gsl)p
-262 3587 V 41 w(sf)p 367 3587 V 39 w(fact)p 554 3587
-V 41 w(e)881 b(Y)112 b(gsl)p 1802 3587 V 40 w(sf)p 1906
-3587 V 40 w(fact\(uin)m(t)p 2288 3587 V 41 w(expr\))150
-3696 y(gsl)p 262 3696 V 41 w(sf)p 367 3696 V 39 w(doublefact)p
-817 3696 V 41 w(e)618 b(Y)112 b(gsl)p 1802 3696 V 40
-w(sf)p 1906 3696 V 40 w(doublefact\(uin)m(t)p 2551 3696
-V 41 w(expr\))150 3806 y(gsl)p 262 3806 V 41 w(sf)p 367
-3806 V 39 w(lnfact)p 630 3806 V 41 w(e)805 b(Y)112 b(gsl)p
-1802 3806 V 40 w(sf)p 1906 3806 V 40 w(lnfact\(uin)m(t)p
-2364 3806 V 41 w(expr\))150 3915 y(gsl)p 262 3915 V 41
-w(sf)p 367 3915 V 39 w(lndoublefact)p 893 3915 V 41 w(e)542
-b(Y)112 b(gsl)p 1802 3915 V 40 w(sf)p 1906 3915 V 40
-w(lndoublefact\(uin)m(t)p 2627 3915 V 41 w(expr\))150
-4025 y(gsl)p 262 4025 V 41 w(sf)p 367 4025 V 39 w(lnc)m(ho)s(ose)p
-739 4025 V 41 w(e)696 b(N)112 b(gsl)p 1802 4025 V 40
-w(sf)p 1906 4025 V 40 w(lnc)m(ho)s(ose)150 4134 y(gsl)p
-262 4134 V 41 w(sf)p 367 4134 V 39 w(c)m(ho)s(ose)p 663
-4134 V 41 w(e)772 b(N)112 b(gsl)p 1802 4134 V 40 w(sf)p
-1906 4134 V 40 w(c)m(ho)s(ose)150 4244 y(gsl)p 262 4244
-V 41 w(sf)p 367 4244 V 39 w(lnp)s(o)s(c)m(h)p 672 4244
-V 39 w(e)765 b(Y)112 b(gsl)p 1802 4244 V 40 w(sf)p 1906
-4244 V 40 w(lnp)s(o)s(c)m(h\(dbl)p 2374 4244 V 39 w(expr,dbl)p
-2740 4244 V 39 w(expr\))150 4354 y(gsl)p 262 4354 V 41
-w(sf)p 367 4354 V 39 w(lnp)s(o)s(c)m(h)p 672 4354 V 39
-w(sgn)p 843 4354 V 40 w(e)593 b(N)112 b(gsl)p 1802 4354
-V 40 w(sf)p 1906 4354 V 40 w(lnp)s(o)s(c)m(h)p 2212 4354
-V 39 w(sgn)150 4463 y(gsl)p 262 4463 V 41 w(sf)p 367
-4463 V 39 w(p)s(o)s(c)m(h)p 596 4463 V 40 w(e)840 b(Y)112
-b(gsl)p 1802 4463 V 40 w(sf)p 1906 4463 V 40 w(p)s(o)s(c)m(h\(dbl)p
-2298 4463 V 39 w(expr,dbl)p 2664 4463 V 39 w(expr\))150
-4573 y(gsl)p 262 4573 V 41 w(sf)p 367 4573 V 39 w(p)s(o)s(c)m(hrel)p
-697 4573 V 40 w(e)739 b(Y)112 b(gsl)p 1802 4573 V 40
-w(sf)p 1906 4573 V 40 w(p)s(o)s(c)m(hrel\(dbl)p 2399
-4573 V 39 w(expr,dbl)p 2765 4573 V 39 w(expr\))150 4682
-y(gsl)p 262 4682 V 41 w(sf)p 367 4682 V 39 w(gamma)p
-693 4682 V 41 w(inc)p 850 4682 V 40 w(Q)p 961 4682 V
-40 w(e)475 b(Y)112 b(gsl)p 1802 4682 V 40 w(sf)p 1906
-4682 V 40 w(gamma)p 2233 4682 V 41 w(inc)p 2390 4682
-V 40 w(Q\(dbl)p 2663 4682 V 39 w(expr,dbl)p 3029 4682
-V 39 w(expr\))150 4792 y(gsl)p 262 4792 V 41 w(sf)p 367
-4792 V 39 w(gamma)p 693 4792 V 41 w(inc)p 850 4792 V
-40 w(P)p 952 4792 V 40 w(e)484 b(Y)112 b(gsl)p 1802 4792
-V 40 w(sf)p 1906 4792 V 40 w(gamma)p 2233 4792 V 41 w(inc)p
-2390 4792 V 40 w(P\(dbl)p 2654 4792 V 39 w(expr,dbl)p
-3020 4792 V 39 w(expr\))150 4902 y(gsl)p 262 4902 V 41
-w(sf)p 367 4902 V 39 w(gamma)p 693 4902 V 41 w(inc)p
-850 4902 V 40 w(e)586 b(Y)112 b(gsl)p 1802 4902 V 40
-w(sf)p 1906 4902 V 40 w(gamma)p 2233 4902 V 41 w(inc\(dbl)p
-2552 4902 V 40 w(expr,dbl)p 2919 4902 V 39 w(expr\))150
-5011 y(gsl)p 262 5011 V 41 w(sf)p 367 5011 V 39 w(ln)m(b)s(eta)p
-653 5011 V 41 w(e)782 b(Y)112 b(gsl)p 1802 5011 V 40
-w(sf)p 1906 5011 V 40 w(ln)m(b)s(eta\(dbl)p 2355 5011
-V 40 w(expr,dbl)p 2722 5011 V 39 w(expr\))150 5121 y(gsl)p
-262 5121 V 41 w(sf)p 367 5121 V 39 w(ln)m(b)s(eta)p 653
-5121 V 41 w(sgn)p 826 5121 V 40 w(e)610 b(N)112 b(gsl)p
-1802 5121 V 40 w(sf)p 1906 5121 V 40 w(ln)m(b)s(eta)p
-2193 5121 V 40 w(sgn)150 5230 y(gsl)p 262 5230 V 41 w(sf)p
-367 5230 V 39 w(b)s(eta)p 580 5230 V 40 w(e)856 b(Y)112
-b(gsl)p 1802 5230 V 40 w(sf)p 1906 5230 V 40 w(b)s(eta\(dbl)p
-2282 5230 V 40 w(expr,dbl)p 2649 5230 V 39 w(expr\))150
-5340 y(gsl)p 262 5340 V 41 w(sf)p 367 5340 V 39 w(b)s(eta)p
-580 5340 V 40 w(inc)p 736 5340 V 41 w(e)699 b(N)112 b(gsl)p
-1802 5340 V 40 w(sf)p 1906 5340 V 40 w(b)s(eta)p 2120
-5340 V 40 w(inc)p eop end
-%%Page: 140 146
-TeXDict begin 140 145 bop 150 -116 a FD(140)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(gsl)p 262 299 28
-4 v 41 w(sf)p 367 299 V 39 w(gegenp)s(oly)p 799 299 V
-41 w(1)p 885 299 V 41 w(e)550 b(Y)112 b(gsl)p 1802 299
-V 40 w(sf)p 1906 299 V 40 w(gegenp)s(oly)p 2339 299 V
-41 w(1\(dbl)p 2587 299 V 40 w(expr,dbl)p 2954 299 V 39
-w(expr\))150 408 y(gsl)p 262 408 V 41 w(sf)p 367 408
-V 39 w(gegenp)s(oly)p 799 408 V 41 w(2)p 885 408 V 41
-w(e)550 b(Y)112 b(gsl)p 1802 408 V 40 w(sf)p 1906 408
-V 40 w(gegenp)s(oly)p 2339 408 V 41 w(2\(dbl)p 2587 408
-V 40 w(expr,dbl)p 2954 408 V 39 w(expr\))150 518 y(gsl)p
-262 518 V 41 w(sf)p 367 518 V 39 w(gegenp)s(oly)p 799
-518 V 41 w(3)p 885 518 V 41 w(e)550 b(Y)112 b(gsl)p 1802
-518 V 40 w(sf)p 1906 518 V 40 w(gegenp)s(oly)p 2339 518
-V 41 w(3\(dbl)p 2587 518 V 40 w(expr,dbl)p 2954 518 V
-39 w(expr\))150 628 y(gsl)p 262 628 V 41 w(sf)p 367 628
-V 39 w(gegenp)s(oly)p 799 628 V 41 w(n)p 891 628 V 40
-w(e)545 b(N)112 b(gsl)p 1802 628 V 40 w(sf)p 1906 628
-V 40 w(gegenp)s(oly)p 2339 628 V 41 w(n)150 737 y(gsl)p
-262 737 V 41 w(sf)p 367 737 V 39 w(gegenp)s(oly)p 799
-737 V 41 w(arra)m(y)469 b(Y)112 b(gsl)p 1802 737 V 40
-w(sf)p 1906 737 V 40 w(gegenp)s(oly)p 2339 737 V 41 w(arra)m(y)150
-847 y(gsl)p 262 847 V 41 w(sf)p 367 847 V 39 w(h)m(yp)s(erg)p
-677 847 V 40 w(0F1)p 866 847 V 41 w(e)569 b(Y)112 b(gsl)p
-1802 847 V 40 w(sf)p 1906 847 V 40 w(h)m(yp)s(erg)p 2217
-847 V 39 w(0F1\(dbl)p 2567 847 V 41 w(expr,dbl)p 2935
-847 V 39 w(expr\))150 956 y(gsl)p 262 956 V 41 w(sf)p
-367 956 V 39 w(h)m(yp)s(erg)p 677 956 V 40 w(1F1)p 866
-956 V 41 w(in)m(t)p 1015 956 V 41 w(e)420 b(Y)112 b(gsl)p
-1802 956 V 40 w(sf)p 1906 956 V 40 w(h)m(yp)s(erg)p 2217
-956 V 39 w(1F1)p 2405 956 V 42 w(in)m(t\(in)m(t)p 2698
-956 V 41 w(expr,in)m(t)p 3047 956 V 40 w(expr,dbl)p 3414
-956 V 39 w(expr\))150 1066 y(gsl)p 262 1066 V 41 w(sf)p
-367 1066 V 39 w(h)m(yp)s(erg)p 677 1066 V 40 w(1F1)p
-866 1066 V 41 w(e)569 b(Y)112 b(gsl)p 1802 1066 V 40
-w(sf)p 1906 1066 V 40 w(h)m(yp)s(erg)p 2217 1066 V 39
-w(1F1\(dbl)p 2567 1066 V 41 w(expr,dbl)p 2935 1066 V
-39 w(expr,dbl)p 3301 1066 V 39 w(expr\))150 1176 y(gsl)p
-262 1176 V 41 w(sf)p 367 1176 V 39 w(h)m(yp)s(erg)p 677
-1176 V 40 w(U)p 785 1176 V 40 w(in)m(t)p 933 1176 V 40
-w(e)503 b(Y)112 b(gsl)p 1802 1176 V 40 w(sf)p 1906 1176
-V 40 w(h)m(yp)s(erg)p 2217 1176 V 39 w(U)p 2324 1176
-V 41 w(in)m(t\(in)m(t)p 2616 1176 V 41 w(expr,in)m(t)p
-2965 1176 V 40 w(expr,dbl)p 3332 1176 V 39 w(expr\))150
-1285 y(gsl)p 262 1285 V 41 w(sf)p 367 1285 V 39 w(h)m(yp)s(erg)p
-677 1285 V 40 w(U)p 785 1285 V 40 w(in)m(t)p 933 1285
-V 40 w(e10)p 1103 1285 V 42 w(e)331 b(N)112 b(gsl)p 1802
-1285 V 40 w(sf)p 1906 1285 V 40 w(h)m(yp)s(erg)p 2217
-1285 V 39 w(U)p 2324 1285 V 41 w(in)m(t)p 2473 1285 V
-40 w(e10)150 1395 y(gsl)p 262 1395 V 41 w(sf)p 367 1395
-V 39 w(h)m(yp)s(erg)p 677 1395 V 40 w(U)p 785 1395 V
-40 w(e)651 b(Y)112 b(gsl)p 1802 1395 V 40 w(sf)p 1906
-1395 V 40 w(h)m(yp)s(erg)p 2217 1395 V 39 w(U\(dbl)p
-2486 1395 V 40 w(expr,dbl)p 2853 1395 V 39 w(expr,dbl)p
-3219 1395 V 39 w(expr\))150 1504 y(gsl)p 262 1504 V 41
-w(sf)p 367 1504 V 39 w(h)m(yp)s(erg)p 677 1504 V 40 w(U)p
-785 1504 V 40 w(e10)p 955 1504 V 41 w(e)480 b(N)112 b(gsl)p
-1802 1504 V 40 w(sf)p 1906 1504 V 40 w(h)m(yp)s(erg)p
-2217 1504 V 39 w(U)p 2324 1504 V 41 w(e10)150 1614 y(gsl)p
-262 1614 V 41 w(sf)p 367 1614 V 39 w(h)m(yp)s(erg)p 677
-1614 V 40 w(2F1)p 866 1614 V 41 w(e)569 b(Y)112 b(gsl)p
-1802 1614 V 40 w(sf)p 1906 1614 V 40 w(h)m(yp)s(erg)p
-2217 1614 V 39 w(2F1\(dbl)p 2567 1614 V 41 w(expr,dbl)p
-2935 1614 V 39 w(expr,dbl)p 3301 1614 V 39 w(expr,dbl)p
-3667 1614 V 39 w(expr\))150 1724 y(gsl)p 262 1724 V 41
-w(sf)p 367 1724 V 39 w(h)m(yp)s(erg)p 677 1724 V 40 w(2F1)p
-866 1724 V 41 w(conj)p 1071 1724 V 40 w(e)365 b(Y)112
-b(gsl)p 1802 1724 V 40 w(sf)p 1906 1724 V 40 w(h)m(yp)s(erg)p
-2217 1724 V 39 w(2F1)p 2405 1724 V 42 w(conj\(dbl)p 2773
-1724 V 39 w(expr,dbl)p 3139 1724 V 39 w(expr,dbl)p 3505
-1724 V 39 w(expr,dbl)p 3871 1724 V 39 w(expr\))150 1833
-y(gsl)p 262 1833 V 41 w(sf)p 367 1833 V 39 w(h)m(yp)s(erg)p
-677 1833 V 40 w(2F1)p 866 1833 V 41 w(renorm)p 1191 1833
-V 39 w(e)246 b(Y)112 b(gsl)p 1802 1833 V 40 w(sf)p 1906
-1833 V 40 w(h)m(yp)s(erg)p 2217 1833 V 39 w(2F1)p 2405
-1833 V 42 w(renorm\(dbl)p 2893 1833 V 39 w(expr,dbl)p
-3259 1833 V 39 w(expr,dbl)p 3625 1833 V 39 w(expr,dbl)p
-3991 1833 V 39 w(expr\))150 1943 y(gsl)p 262 1943 V 41
-w(sf)p 367 1943 V 39 w(h)m(yp)s(erg)p 677 1943 V 40 w(2F1)p
-866 1943 V 41 w(conj)p 1071 1943 V 40 w(renorm)p 1395
-1943 V 39 w(e)42 b(Y)112 b(gsl)p 1802 1943 V 40 w(sf)p
-1906 1943 V 40 w(h)m(yp)s(erg)p 2217 1943 V 39 w(2F1)p
-2405 1943 V 42 w(conj)p 2611 1943 V 40 w(renorm\(dbl)p
-3097 1943 V 39 w(expr,dbl)p 3463 1943 V 39 w(expr,dbl)p
-3829 1943 V 39 w(expr,dbl)p 4195 1943 V 39 w(expr\))150
-2052 y(gsl)p 262 2052 V 41 w(sf)p 367 2052 V 39 w(h)m(yp)s(erg)p
-677 2052 V 40 w(2F0)p 866 2052 V 41 w(e)569 b(Y)112 b(gsl)p
+w(atanin)m(t\(dbl)p 2392 2819 V 41 w(expr\))150 2929
+y(gsl)p 262 2929 V 41 w(sf)p 367 2929 V 39 w(fermi)p
+611 2929 V 40 w(dirac)p 848 2929 V 40 w(m1)p 1009 2929
+V 40 w(e)427 b(Y)112 b(gsl)p 1802 2929 V 40 w(sf)p 1906
+2929 V 40 w(fermi)p 2151 2929 V 40 w(dirac)p 2388 2929
+V 40 w(m1\(dbl)p 2711 2929 V 40 w(expr\))150 3039 y(gsl)p
+262 3039 V 41 w(sf)p 367 3039 V 39 w(fermi)p 611 3039
+V 40 w(dirac)p 848 3039 V 40 w(0)p 933 3039 V 41 w(e)502
+b(Y)112 b(gsl)p 1802 3039 V 40 w(sf)p 1906 3039 V 40
+w(fermi)p 2151 3039 V 40 w(dirac)p 2388 3039 V 40 w(0\(dbl)p
+2635 3039 V 40 w(expr\))150 3148 y(gsl)p 262 3148 V 41
+w(sf)p 367 3148 V 39 w(fermi)p 611 3148 V 40 w(dirac)p
+848 3148 V 40 w(1)p 933 3148 V 41 w(e)502 b(Y)112 b(gsl)p
+1802 3148 V 40 w(sf)p 1906 3148 V 40 w(fermi)p 2151 3148
+V 40 w(dirac)p 2388 3148 V 40 w(1\(dbl)p 2635 3148 V
+40 w(expr\))150 3258 y(gsl)p 262 3258 V 41 w(sf)p 367
+3258 V 39 w(fermi)p 611 3258 V 40 w(dirac)p 848 3258
+V 40 w(2)p 933 3258 V 41 w(e)502 b(Y)112 b(gsl)p 1802
+3258 V 40 w(sf)p 1906 3258 V 40 w(fermi)p 2151 3258 V
+40 w(dirac)p 2388 3258 V 40 w(2\(dbl)p 2635 3258 V 40
+w(expr\))150 3367 y(gsl)p 262 3367 V 41 w(sf)p 367 3367
+V 39 w(fermi)p 611 3367 V 40 w(dirac)p 848 3367 V 40
+w(in)m(t)p 996 3367 V 41 w(e)439 b(Y)112 b(gsl)p 1802
+3367 V 40 w(sf)p 1906 3367 V 40 w(fermi)p 2151 3367 V
+40 w(dirac)p 2388 3367 V 40 w(in)m(t\(in)m(t)p 2679 3367
+V 41 w(expr,dbl)p 3047 3367 V 39 w(expr\))150 3477 y(gsl)p
+262 3477 V 41 w(sf)p 367 3477 V 39 w(fermi)p 611 3477
+V 40 w(dirac)p 848 3477 V 40 w(mhalf)p 1113 3477 V 40
+w(e)323 b(Y)112 b(gsl)p 1802 3477 V 40 w(sf)p 1906 3477
+V 40 w(fermi)p 2151 3477 V 40 w(dirac)p 2388 3477 V 40
+w(mhalf\(dbl)p 2815 3477 V 39 w(expr\))150 3587 y(gsl)p
+262 3587 V 41 w(sf)p 367 3587 V 39 w(fermi)p 611 3587
+V 40 w(dirac)p 848 3587 V 40 w(half)p 1037 3587 V 40
+w(e)399 b(Y)112 b(gsl)p 1802 3587 V 40 w(sf)p 1906 3587
+V 40 w(fermi)p 2151 3587 V 40 w(dirac)p 2388 3587 V 40
+w(half\(dbl)p 2739 3587 V 39 w(expr\))150 3696 y(gsl)p
+262 3696 V 41 w(sf)p 367 3696 V 39 w(fermi)p 611 3696
+V 40 w(dirac)p 848 3696 V 40 w(3half)p 1082 3696 V 41
+w(e)353 b(Y)112 b(gsl)p 1802 3696 V 40 w(sf)p 1906 3696
+V 40 w(fermi)p 2151 3696 V 40 w(dirac)p 2388 3696 V 40
+w(3half\(dbl)p 2784 3696 V 40 w(expr\))150 3806 y(gsl)p
+262 3806 V 41 w(sf)p 367 3806 V 39 w(fermi)p 611 3806
+V 40 w(dirac)p 848 3806 V 40 w(inc)p 1004 3806 V 40 w(0)p
+1089 3806 V 41 w(e)346 b(Y)112 b(gsl)p 1802 3806 V 40
+w(sf)p 1906 3806 V 40 w(fermi)p 2151 3806 V 40 w(dirac)p
+2388 3806 V 40 w(inc)p 2544 3806 V 40 w(0\(dbl)p 2791
+3806 V 40 w(expr,dbl)p 3158 3806 V 39 w(expr\))150 3915
+y(gsl)p 262 3915 V 41 w(sf)p 367 3915 V 39 w(lngamma)p
+769 3915 V 41 w(e)666 b(Y)112 b(gsl)p 1802 3915 V 40
+w(sf)p 1906 3915 V 40 w(lngamma\(dbl)p 2471 3915 V 40
+w(expr\))150 4025 y(gsl)p 262 4025 V 41 w(sf)p 367 4025
+V 39 w(lngamma)p 769 4025 V 41 w(sgn)p 942 4025 V 40
+w(e)494 b(N)112 b(gsl)p 1802 4025 V 40 w(sf)p 1906 4025
+V 40 w(lngamma)p 2309 4025 V 41 w(sgn)150 4134 y(gsl)p
+262 4134 V 41 w(sf)p 367 4134 V 39 w(gamma)p 693 4134
+V 41 w(e)742 b(Y)112 b(gsl)p 1802 4134 V 40 w(sf)p 1906
+4134 V 40 w(gamma\(dbl)p 2395 4134 V 40 w(expr\))150
+4244 y(gsl)p 262 4244 V 41 w(sf)p 367 4244 V 39 w(gammastar)p
+845 4244 V 41 w(e)590 b(Y)112 b(gsl)p 1802 4244 V 40
+w(sf)p 1906 4244 V 40 w(gammastar\(dbl)p 2547 4244 V
+41 w(expr\))150 4354 y(gsl)p 262 4354 V 41 w(sf)p 367
+4354 V 39 w(gammain)m(v)p 814 4354 V 41 w(e)621 b(Y)112
+b(gsl)p 1802 4354 V 40 w(sf)p 1906 4354 V 40 w(gammain)m(v\(dbl)p
+2516 4354 V 41 w(expr\))150 4463 y(gsl)p 262 4463 V 41
+w(sf)p 367 4463 V 39 w(lngamma)p 769 4463 V 41 w(complex)p
+1135 4463 V 41 w(e)300 b(N)112 b(gsl)p 1802 4463 V 40
+w(sf)p 1906 4463 V 40 w(lngamma)p 2309 4463 V 41 w(complex)150
+4573 y(gsl)p 262 4573 V 41 w(sf)p 367 4573 V 39 w(ta)m(ylorco)s(e\013)p
+818 4573 V 43 w(e)615 b(Y)112 b(gsl)p 1802 4573 V 40
+w(sf)p 1906 4573 V 40 w(ta)m(ylorco)s(e\013\(in)m(t)p
+2501 4573 V 43 w(expr,dbl)p 2871 4573 V 39 w(expr\))150
+4682 y(gsl)p 262 4682 V 41 w(sf)p 367 4682 V 39 w(fact)p
+554 4682 V 41 w(e)881 b(Y)112 b(gsl)p 1802 4682 V 40
+w(sf)p 1906 4682 V 40 w(fact\(uin)m(t)p 2288 4682 V 41
+w(expr\))150 4792 y(gsl)p 262 4792 V 41 w(sf)p 367 4792
+V 39 w(doublefact)p 817 4792 V 41 w(e)618 b(Y)112 b(gsl)p
+1802 4792 V 40 w(sf)p 1906 4792 V 40 w(doublefact\(uin)m(t)p
+2551 4792 V 41 w(expr\))150 4902 y(gsl)p 262 4902 V 41
+w(sf)p 367 4902 V 39 w(lnfact)p 630 4902 V 41 w(e)805
+b(Y)112 b(gsl)p 1802 4902 V 40 w(sf)p 1906 4902 V 40
+w(lnfact\(uin)m(t)p 2364 4902 V 41 w(expr\))150 5011
+y(gsl)p 262 5011 V 41 w(sf)p 367 5011 V 39 w(lndoublefact)p
+893 5011 V 41 w(e)542 b(Y)112 b(gsl)p 1802 5011 V 40
+w(sf)p 1906 5011 V 40 w(lndoublefact\(uin)m(t)p 2627
+5011 V 41 w(expr\))150 5121 y(gsl)p 262 5121 V 41 w(sf)p
+367 5121 V 39 w(lnc)m(ho)s(ose)p 739 5121 V 41 w(e)696
+b(N)112 b(gsl)p 1802 5121 V 40 w(sf)p 1906 5121 V 40
+w(lnc)m(ho)s(ose)150 5230 y(gsl)p 262 5230 V 41 w(sf)p
+367 5230 V 39 w(c)m(ho)s(ose)p 663 5230 V 41 w(e)772
+b(N)112 b(gsl)p 1802 5230 V 40 w(sf)p 1906 5230 V 40
+w(c)m(ho)s(ose)150 5340 y(gsl)p 262 5340 V 41 w(sf)p
+367 5340 V 39 w(lnp)s(o)s(c)m(h)p 672 5340 V 39 w(e)765
+b(Y)112 b(gsl)p 1802 5340 V 40 w(sf)p 1906 5340 V 40
+w(lnp)s(o)s(c)m(h\(dbl)p 2374 5340 V 39 w(expr,dbl)p
+2740 5340 V 39 w(expr\))p eop end
+%%Page: 152 158
+TeXDict begin 152 157 bop 150 -116 a FE(152)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(gsl)p 262 299 28
+4 v 41 w(sf)p 367 299 V 39 w(lnp)s(o)s(c)m(h)p 672 299
+V 39 w(sgn)p 843 299 V 40 w(e)593 b(N)112 b(gsl)p 1802
+299 V 40 w(sf)p 1906 299 V 40 w(lnp)s(o)s(c)m(h)p 2212
+299 V 39 w(sgn)150 408 y(gsl)p 262 408 V 41 w(sf)p 367
+408 V 39 w(p)s(o)s(c)m(h)p 596 408 V 40 w(e)840 b(Y)112
+b(gsl)p 1802 408 V 40 w(sf)p 1906 408 V 40 w(p)s(o)s(c)m(h\(dbl)p
+2298 408 V 39 w(expr,dbl)p 2664 408 V 39 w(expr\))150
+518 y(gsl)p 262 518 V 41 w(sf)p 367 518 V 39 w(p)s(o)s(c)m(hrel)p
+697 518 V 40 w(e)739 b(Y)112 b(gsl)p 1802 518 V 40 w(sf)p
+1906 518 V 40 w(p)s(o)s(c)m(hrel\(dbl)p 2399 518 V 39
+w(expr,dbl)p 2765 518 V 39 w(expr\))150 628 y(gsl)p 262
+628 V 41 w(sf)p 367 628 V 39 w(gamma)p 693 628 V 41 w(inc)p
+850 628 V 40 w(Q)p 961 628 V 40 w(e)475 b(Y)112 b(gsl)p
+1802 628 V 40 w(sf)p 1906 628 V 40 w(gamma)p 2233 628
+V 41 w(inc)p 2390 628 V 40 w(Q\(dbl)p 2663 628 V 39 w(expr,dbl)p
+3029 628 V 39 w(expr\))150 737 y(gsl)p 262 737 V 41 w(sf)p
+367 737 V 39 w(gamma)p 693 737 V 41 w(inc)p 850 737 V
+40 w(P)p 952 737 V 40 w(e)484 b(Y)112 b(gsl)p 1802 737
+V 40 w(sf)p 1906 737 V 40 w(gamma)p 2233 737 V 41 w(inc)p
+2390 737 V 40 w(P\(dbl)p 2654 737 V 39 w(expr,dbl)p 3020
+737 V 39 w(expr\))150 847 y(gsl)p 262 847 V 41 w(sf)p
+367 847 V 39 w(gamma)p 693 847 V 41 w(inc)p 850 847 V
+40 w(e)586 b(Y)112 b(gsl)p 1802 847 V 40 w(sf)p 1906
+847 V 40 w(gamma)p 2233 847 V 41 w(inc\(dbl)p 2552 847
+V 40 w(expr,dbl)p 2919 847 V 39 w(expr\))150 956 y(gsl)p
+262 956 V 41 w(sf)p 367 956 V 39 w(ln)m(b)s(eta)p 653
+956 V 41 w(e)782 b(Y)112 b(gsl)p 1802 956 V 40 w(sf)p
+1906 956 V 40 w(ln)m(b)s(eta\(dbl)p 2355 956 V 40 w(expr,dbl)p
+2722 956 V 39 w(expr\))150 1066 y(gsl)p 262 1066 V 41
+w(sf)p 367 1066 V 39 w(ln)m(b)s(eta)p 653 1066 V 41 w(sgn)p
+826 1066 V 40 w(e)610 b(N)112 b(gsl)p 1802 1066 V 40
+w(sf)p 1906 1066 V 40 w(ln)m(b)s(eta)p 2193 1066 V 40
+w(sgn)150 1176 y(gsl)p 262 1176 V 41 w(sf)p 367 1176
+V 39 w(b)s(eta)p 580 1176 V 40 w(e)856 b(Y)112 b(gsl)p
+1802 1176 V 40 w(sf)p 1906 1176 V 40 w(b)s(eta\(dbl)p
+2282 1176 V 40 w(expr,dbl)p 2649 1176 V 39 w(expr\))150
+1285 y(gsl)p 262 1285 V 41 w(sf)p 367 1285 V 39 w(b)s(eta)p
+580 1285 V 40 w(inc)p 736 1285 V 41 w(e)699 b(N)112 b(gsl)p
+1802 1285 V 40 w(sf)p 1906 1285 V 40 w(b)s(eta)p 2120
+1285 V 40 w(inc)150 1395 y(gsl)p 262 1395 V 41 w(sf)p
+367 1395 V 39 w(gegenp)s(oly)p 799 1395 V 41 w(1)p 885
+1395 V 41 w(e)550 b(Y)112 b(gsl)p 1802 1395 V 40 w(sf)p
+1906 1395 V 40 w(gegenp)s(oly)p 2339 1395 V 41 w(1\(dbl)p
+2587 1395 V 40 w(expr,dbl)p 2954 1395 V 39 w(expr\))150
+1504 y(gsl)p 262 1504 V 41 w(sf)p 367 1504 V 39 w(gegenp)s(oly)p
+799 1504 V 41 w(2)p 885 1504 V 41 w(e)550 b(Y)112 b(gsl)p
+1802 1504 V 40 w(sf)p 1906 1504 V 40 w(gegenp)s(oly)p
+2339 1504 V 41 w(2\(dbl)p 2587 1504 V 40 w(expr,dbl)p
+2954 1504 V 39 w(expr\))150 1614 y(gsl)p 262 1614 V 41
+w(sf)p 367 1614 V 39 w(gegenp)s(oly)p 799 1614 V 41 w(3)p
+885 1614 V 41 w(e)550 b(Y)112 b(gsl)p 1802 1614 V 40
+w(sf)p 1906 1614 V 40 w(gegenp)s(oly)p 2339 1614 V 41
+w(3\(dbl)p 2587 1614 V 40 w(expr,dbl)p 2954 1614 V 39
+w(expr\))150 1724 y(gsl)p 262 1724 V 41 w(sf)p 367 1724
+V 39 w(gegenp)s(oly)p 799 1724 V 41 w(n)p 891 1724 V
+40 w(e)545 b(N)112 b(gsl)p 1802 1724 V 40 w(sf)p 1906
+1724 V 40 w(gegenp)s(oly)p 2339 1724 V 41 w(n)150 1833
+y(gsl)p 262 1833 V 41 w(sf)p 367 1833 V 39 w(gegenp)s(oly)p
+799 1833 V 41 w(arra)m(y)469 b(Y)112 b(gsl)p 1802 1833
+V 40 w(sf)p 1906 1833 V 40 w(gegenp)s(oly)p 2339 1833
+V 41 w(arra)m(y)150 1943 y(gsl)p 262 1943 V 41 w(sf)p
+367 1943 V 39 w(h)m(yp)s(erg)p 677 1943 V 40 w(0F1)p
+866 1943 V 41 w(e)569 b(Y)112 b(gsl)p 1802 1943 V 40
+w(sf)p 1906 1943 V 40 w(h)m(yp)s(erg)p 2217 1943 V 39
+w(0F1\(dbl)p 2567 1943 V 41 w(expr,dbl)p 2935 1943 V
+39 w(expr\))150 2052 y(gsl)p 262 2052 V 41 w(sf)p 367
+2052 V 39 w(h)m(yp)s(erg)p 677 2052 V 40 w(1F1)p 866
+2052 V 41 w(in)m(t)p 1015 2052 V 41 w(e)420 b(Y)112 b(gsl)p
 1802 2052 V 40 w(sf)p 1906 2052 V 40 w(h)m(yp)s(erg)p
-2217 2052 V 39 w(2F0\(dbl)p 2567 2052 V 41 w(expr,dbl)p
-2935 2052 V 39 w(expr,dbl)p 3301 2052 V 39 w(expr\))150
-2162 y(gsl)p 262 2162 V 41 w(sf)p 367 2162 V 39 w(laguerre)p
-724 2162 V 41 w(1)p 810 2162 V 40 w(e)626 b(Y)112 b(gsl)p
-1802 2162 V 40 w(sf)p 1906 2162 V 40 w(laguerre)p 2264
-2162 V 41 w(1\(dbl)p 2512 2162 V 40 w(expr,dbl)p 2879
-2162 V 39 w(expr\))150 2271 y(gsl)p 262 2271 V 41 w(sf)p
-367 2271 V 39 w(laguerre)p 724 2271 V 41 w(2)p 810 2271
-V 40 w(e)626 b(Y)112 b(gsl)p 1802 2271 V 40 w(sf)p 1906
-2271 V 40 w(laguerre)p 2264 2271 V 41 w(2\(dbl)p 2512
-2271 V 40 w(expr,dbl)p 2879 2271 V 39 w(expr\))150 2381
-y(gsl)p 262 2381 V 41 w(sf)p 367 2381 V 39 w(laguerre)p
-724 2381 V 41 w(3)p 810 2381 V 40 w(e)626 b(Y)112 b(gsl)p
-1802 2381 V 40 w(sf)p 1906 2381 V 40 w(laguerre)p 2264
-2381 V 41 w(3\(dbl)p 2512 2381 V 40 w(expr,dbl)p 2879
-2381 V 39 w(expr\))150 2491 y(gsl)p 262 2491 V 41 w(sf)p
-367 2491 V 39 w(laguerre)p 724 2491 V 41 w(n)p 816 2491
-V 39 w(e)621 b(Y)112 b(gsl)p 1802 2491 V 40 w(sf)p 1906
-2491 V 40 w(laguerre)p 2264 2491 V 41 w(n\(in)m(t)p 2499
-2491 V 40 w(expr,dbl)p 2866 2491 V 39 w(expr,dbl)p 3232
-2491 V 39 w(expr\))150 2600 y(gsl)p 262 2600 V 41 w(sf)p
-367 2600 V 39 w(lam)m(b)s(ert)p 714 2600 V 41 w(W0)p
-893 2600 V 40 w(e)543 b(Y)112 b(gsl)p 1802 2600 V 40
-w(sf)p 1906 2600 V 40 w(lam)m(b)s(ert)p 2254 2600 V 40
-w(W0\(dbl)p 2594 2600 V 41 w(expr\))150 2710 y(gsl)p
-262 2710 V 41 w(sf)p 367 2710 V 39 w(lam)m(b)s(ert)p
-714 2710 V 41 w(Wm1)p 969 2710 V 40 w(e)467 b(Y)112 b(gsl)p
-1802 2710 V 40 w(sf)p 1906 2710 V 40 w(lam)m(b)s(ert)p
-2254 2710 V 40 w(Wm1\(dbl)p 2670 2710 V 40 w(expr\))150
-2819 y(gsl)p 262 2819 V 41 w(sf)p 367 2819 V 39 w(legendre)p
-734 2819 V 41 w(Pl)p 862 2819 V 40 w(e)574 b(Y)112 b(gsl)p
-1802 2819 V 40 w(sf)p 1906 2819 V 40 w(legendre)p 2274
-2819 V 40 w(Pl\(in)m(t)p 2544 2819 V 41 w(expr,dbl)p
-2912 2819 V 39 w(expr\))150 2929 y(gsl)p 262 2929 V 41
-w(sf)p 367 2929 V 39 w(legendre)p 734 2929 V 41 w(Pl)p
-862 2929 V 40 w(arra)m(y)407 b(Y)112 b(status=gsl)p 2111
-2929 V 40 w(sf)p 2215 2929 V 40 w(legendre)p 2583 2929
-V 40 w(Pl)p 2710 2929 V 41 w(arra)m(y\(in)m(t,double,&v)-5
-b(ar)p 3609 2929 V 41 w(out\))150 3039 y(gsl)p 262 3039
-V 41 w(sf)p 367 3039 V 39 w(legendre)p 734 3039 V 41
-w(Pl)p 862 3039 V 40 w(deriv)p 1102 3039 V 40 w(arra)m(y)167
-b(N)112 b(gsl)p 1802 3039 V 40 w(sf)p 1906 3039 V 40
-w(legendre)p 2274 3039 V 40 w(Pl)p 2401 3039 V 41 w(deriv)p
-2642 3039 V 39 w(arra)m(y)150 3148 y(gsl)p 262 3148 V
-41 w(sf)p 367 3148 V 39 w(legendre)p 734 3148 V 41 w(P1)p
-882 3148 V 40 w(e)554 b(Y)112 b(gsl)p 1802 3148 V 40
-w(sf)p 1906 3148 V 40 w(legendre)p 2274 3148 V 40 w(P1\(dbl)p
-2583 3148 V 40 w(expr\))150 3258 y(gsl)p 262 3258 V 41
-w(sf)p 367 3258 V 39 w(legendre)p 734 3258 V 41 w(P2)p
-882 3258 V 40 w(e)554 b(Y)112 b(gsl)p 1802 3258 V 40
-w(sf)p 1906 3258 V 40 w(legendre)p 2274 3258 V 40 w(P2\(dbl)p
-2583 3258 V 40 w(expr\))150 3367 y(gsl)p 262 3367 V 41
-w(sf)p 367 3367 V 39 w(legendre)p 734 3367 V 41 w(P3)p
-882 3367 V 40 w(e)554 b(Y)112 b(gsl)p 1802 3367 V 40
-w(sf)p 1906 3367 V 40 w(legendre)p 2274 3367 V 40 w(P3\(dbl)p
-2583 3367 V 40 w(expr\))150 3477 y(gsl)p 262 3477 V 41
-w(sf)p 367 3477 V 39 w(legendre)p 734 3477 V 41 w(Q0)p
-891 3477 V 40 w(e)545 b(Y)112 b(gsl)p 1802 3477 V 40
-w(sf)p 1906 3477 V 40 w(legendre)p 2274 3477 V 40 w(Q0\(dbl)p
-2592 3477 V 40 w(expr\))150 3587 y(gsl)p 262 3587 V 41
-w(sf)p 367 3587 V 39 w(legendre)p 734 3587 V 41 w(Q1)p
-891 3587 V 40 w(e)545 b(Y)112 b(gsl)p 1802 3587 V 40
-w(sf)p 1906 3587 V 40 w(legendre)p 2274 3587 V 40 w(Q1\(dbl)p
-2592 3587 V 40 w(expr\))150 3696 y(gsl)p 262 3696 V 41
-w(sf)p 367 3696 V 39 w(legendre)p 734 3696 V 41 w(Ql)p
-871 3696 V 40 w(e)565 b(Y)112 b(gsl)p 1802 3696 V 40
-w(sf)p 1906 3696 V 40 w(legendre)p 2274 3696 V 40 w(Ql\(in)m(t)p
-2553 3696 V 41 w(expr,dbl)p 2921 3696 V 39 w(expr\))150
-3806 y(gsl)p 262 3806 V 41 w(sf)p 367 3806 V 39 w(legendre)p
-734 3806 V 41 w(Plm)p 938 3806 V 40 w(e)498 b(Y)112 b(gsl)p
-1802 3806 V 40 w(sf)p 1906 3806 V 40 w(legendre)p 2274
-3806 V 40 w(Plm\(in)m(t)p 2620 3806 V 41 w(expr,in)m(t)p
-2969 3806 V 41 w(expr,dbl)p 3337 3806 V 39 w(expr\))150
+2217 2052 V 39 w(1F1)p 2405 2052 V 42 w(in)m(t\(in)m(t)p
+2698 2052 V 41 w(expr,in)m(t)p 3047 2052 V 40 w(expr,dbl)p
+3414 2052 V 39 w(expr\))150 2162 y(gsl)p 262 2162 V 41
+w(sf)p 367 2162 V 39 w(h)m(yp)s(erg)p 677 2162 V 40 w(1F1)p
+866 2162 V 41 w(e)569 b(Y)112 b(gsl)p 1802 2162 V 40
+w(sf)p 1906 2162 V 40 w(h)m(yp)s(erg)p 2217 2162 V 39
+w(1F1\(dbl)p 2567 2162 V 41 w(expr,dbl)p 2935 2162 V
+39 w(expr,dbl)p 3301 2162 V 39 w(expr\))150 2271 y(gsl)p
+262 2271 V 41 w(sf)p 367 2271 V 39 w(h)m(yp)s(erg)p 677
+2271 V 40 w(U)p 785 2271 V 40 w(in)m(t)p 933 2271 V 40
+w(e)503 b(Y)112 b(gsl)p 1802 2271 V 40 w(sf)p 1906 2271
+V 40 w(h)m(yp)s(erg)p 2217 2271 V 39 w(U)p 2324 2271
+V 41 w(in)m(t\(in)m(t)p 2616 2271 V 41 w(expr,in)m(t)p
+2965 2271 V 40 w(expr,dbl)p 3332 2271 V 39 w(expr\))150
+2381 y(gsl)p 262 2381 V 41 w(sf)p 367 2381 V 39 w(h)m(yp)s(erg)p
+677 2381 V 40 w(U)p 785 2381 V 40 w(in)m(t)p 933 2381
+V 40 w(e10)p 1103 2381 V 42 w(e)331 b(N)112 b(gsl)p 1802
+2381 V 40 w(sf)p 1906 2381 V 40 w(h)m(yp)s(erg)p 2217
+2381 V 39 w(U)p 2324 2381 V 41 w(in)m(t)p 2473 2381 V
+40 w(e10)150 2491 y(gsl)p 262 2491 V 41 w(sf)p 367 2491
+V 39 w(h)m(yp)s(erg)p 677 2491 V 40 w(U)p 785 2491 V
+40 w(e)651 b(Y)112 b(gsl)p 1802 2491 V 40 w(sf)p 1906
+2491 V 40 w(h)m(yp)s(erg)p 2217 2491 V 39 w(U\(dbl)p
+2486 2491 V 40 w(expr,dbl)p 2853 2491 V 39 w(expr,dbl)p
+3219 2491 V 39 w(expr\))150 2600 y(gsl)p 262 2600 V 41
+w(sf)p 367 2600 V 39 w(h)m(yp)s(erg)p 677 2600 V 40 w(U)p
+785 2600 V 40 w(e10)p 955 2600 V 41 w(e)480 b(N)112 b(gsl)p
+1802 2600 V 40 w(sf)p 1906 2600 V 40 w(h)m(yp)s(erg)p
+2217 2600 V 39 w(U)p 2324 2600 V 41 w(e10)150 2710 y(gsl)p
+262 2710 V 41 w(sf)p 367 2710 V 39 w(h)m(yp)s(erg)p 677
+2710 V 40 w(2F1)p 866 2710 V 41 w(e)569 b(Y)112 b(gsl)p
+1802 2710 V 40 w(sf)p 1906 2710 V 40 w(h)m(yp)s(erg)p
+2217 2710 V 39 w(2F1\(dbl)p 2567 2710 V 41 w(expr,dbl)p
+2935 2710 V 39 w(expr,dbl)p 3301 2710 V 39 w(expr,dbl)p
+3667 2710 V 39 w(expr\))150 2819 y(gsl)p 262 2819 V 41
+w(sf)p 367 2819 V 39 w(h)m(yp)s(erg)p 677 2819 V 40 w(2F1)p
+866 2819 V 41 w(conj)p 1071 2819 V 40 w(e)365 b(Y)112
+b(gsl)p 1802 2819 V 40 w(sf)p 1906 2819 V 40 w(h)m(yp)s(erg)p
+2217 2819 V 39 w(2F1)p 2405 2819 V 42 w(conj\(dbl)p 2773
+2819 V 39 w(expr,dbl)p 3139 2819 V 39 w(expr,dbl)p 3505
+2819 V 39 w(expr,dbl)p 3871 2819 V 39 w(expr\))150 2929
+y(gsl)p 262 2929 V 41 w(sf)p 367 2929 V 39 w(h)m(yp)s(erg)p
+677 2929 V 40 w(2F1)p 866 2929 V 41 w(renorm)p 1191 2929
+V 39 w(e)246 b(Y)112 b(gsl)p 1802 2929 V 40 w(sf)p 1906
+2929 V 40 w(h)m(yp)s(erg)p 2217 2929 V 39 w(2F1)p 2405
+2929 V 42 w(renorm\(dbl)p 2893 2929 V 39 w(expr,dbl)p
+3259 2929 V 39 w(expr,dbl)p 3625 2929 V 39 w(expr,dbl)p
+3991 2929 V 39 w(expr\))150 3039 y(gsl)p 262 3039 V 41
+w(sf)p 367 3039 V 39 w(h)m(yp)s(erg)p 677 3039 V 40 w(2F1)p
+866 3039 V 41 w(conj)p 1071 3039 V 40 w(renorm)p 1395
+3039 V 39 w(e)42 b(Y)112 b(gsl)p 1802 3039 V 40 w(sf)p
+1906 3039 V 40 w(h)m(yp)s(erg)p 2217 3039 V 39 w(2F1)p
+2405 3039 V 42 w(conj)p 2611 3039 V 40 w(renorm\(dbl)p
+3097 3039 V 39 w(expr,dbl)p 3463 3039 V 39 w(expr,dbl)p
+3829 3039 V 39 w(expr,dbl)p 4195 3039 V 39 w(expr\))150
+3148 y(gsl)p 262 3148 V 41 w(sf)p 367 3148 V 39 w(h)m(yp)s(erg)p
+677 3148 V 40 w(2F0)p 866 3148 V 41 w(e)569 b(Y)112 b(gsl)p
+1802 3148 V 40 w(sf)p 1906 3148 V 40 w(h)m(yp)s(erg)p
+2217 3148 V 39 w(2F0\(dbl)p 2567 3148 V 41 w(expr,dbl)p
+2935 3148 V 39 w(expr,dbl)p 3301 3148 V 39 w(expr\))150
+3258 y(gsl)p 262 3258 V 41 w(sf)p 367 3258 V 39 w(laguerre)p
+724 3258 V 41 w(1)p 810 3258 V 40 w(e)626 b(Y)112 b(gsl)p
+1802 3258 V 40 w(sf)p 1906 3258 V 40 w(laguerre)p 2264
+3258 V 41 w(1\(dbl)p 2512 3258 V 40 w(expr,dbl)p 2879
+3258 V 39 w(expr\))150 3367 y(gsl)p 262 3367 V 41 w(sf)p
+367 3367 V 39 w(laguerre)p 724 3367 V 41 w(2)p 810 3367
+V 40 w(e)626 b(Y)112 b(gsl)p 1802 3367 V 40 w(sf)p 1906
+3367 V 40 w(laguerre)p 2264 3367 V 41 w(2\(dbl)p 2512
+3367 V 40 w(expr,dbl)p 2879 3367 V 39 w(expr\))150 3477
+y(gsl)p 262 3477 V 41 w(sf)p 367 3477 V 39 w(laguerre)p
+724 3477 V 41 w(3)p 810 3477 V 40 w(e)626 b(Y)112 b(gsl)p
+1802 3477 V 40 w(sf)p 1906 3477 V 40 w(laguerre)p 2264
+3477 V 41 w(3\(dbl)p 2512 3477 V 40 w(expr,dbl)p 2879
+3477 V 39 w(expr\))150 3587 y(gsl)p 262 3587 V 41 w(sf)p
+367 3587 V 39 w(laguerre)p 724 3587 V 41 w(n)p 816 3587
+V 39 w(e)621 b(Y)112 b(gsl)p 1802 3587 V 40 w(sf)p 1906
+3587 V 40 w(laguerre)p 2264 3587 V 41 w(n\(in)m(t)p 2499
+3587 V 40 w(expr,dbl)p 2866 3587 V 39 w(expr,dbl)p 3232
+3587 V 39 w(expr\))150 3696 y(gsl)p 262 3696 V 41 w(sf)p
+367 3696 V 39 w(lam)m(b)s(ert)p 714 3696 V 41 w(W0)p
+893 3696 V 40 w(e)543 b(Y)112 b(gsl)p 1802 3696 V 40
+w(sf)p 1906 3696 V 40 w(lam)m(b)s(ert)p 2254 3696 V 40
+w(W0\(dbl)p 2594 3696 V 41 w(expr\))150 3806 y(gsl)p
+262 3806 V 41 w(sf)p 367 3806 V 39 w(lam)m(b)s(ert)p
+714 3806 V 41 w(Wm1)p 969 3806 V 40 w(e)467 b(Y)112 b(gsl)p
+1802 3806 V 40 w(sf)p 1906 3806 V 40 w(lam)m(b)s(ert)p
+2254 3806 V 40 w(Wm1\(dbl)p 2670 3806 V 40 w(expr\))150
 3915 y(gsl)p 262 3915 V 41 w(sf)p 367 3915 V 39 w(legendre)p
-734 3915 V 41 w(Plm)p 938 3915 V 40 w(arra)m(y)331 b(Y)112
-b(status=gsl)p 2111 3915 V 40 w(sf)p 2215 3915 V 40 w(legendre)p
-2583 3915 V 40 w(Plm)p 2786 3915 V 40 w(arra)m(y\(in)m(t,in)m
-(t,double,&v)-5 b(ar)p 3817 3915 V 43 w(out\))150 4025
-y(gsl)p 262 4025 V 41 w(sf)p 367 4025 V 39 w(legendre)p
-734 4025 V 41 w(Plm)p 938 4025 V 40 w(deriv)p 1178 4025
-V 39 w(arra)m(y)92 b(N)112 b(gsl)p 1802 4025 V 40 w(sf)p
-1906 4025 V 40 w(legendre)p 2274 4025 V 40 w(Plm)p 2477
-4025 V 40 w(deriv)p 2717 4025 V 40 w(arra)m(y)150 4134
-y(gsl)p 262 4134 V 41 w(sf)p 367 4134 V 39 w(legendre)p
-734 4134 V 41 w(sphPlm)p 1076 4134 V 38 w(e)362 b(Y)112
-b(gsl)p 1802 4134 V 40 w(sf)p 1906 4134 V 40 w(legendre)p
-2274 4134 V 40 w(sphPlm\(in)m(t)p 2758 4134 V 40 w(expr,in)m(t)p
-3106 4134 V 40 w(expr,dbl)p 3473 4134 V 39 w(expr\))150
-4244 y(gsl)p 262 4244 V 41 w(sf)p 367 4244 V 39 w(legendre)p
-734 4244 V 41 w(sphPlm)p 1076 4244 V 38 w(arra)m(y)195
-b(Y)112 b(status=gsl)p 2111 4244 V 40 w(sf)p 2215 4244
-V 40 w(legendre)p 2583 4244 V 40 w(sphPlm)p 2924 4244
-V 39 w(arra)m(y\(in)m(t,in)m(t,double,&v)-5 b(ar)p 3954
-4244 V 42 w(out\))150 4354 y(gsl)p 262 4354 V 41 w(sf)p
-367 4354 V 39 w(legendre)p 734 4354 V 41 w(sphPlm)p 1076
-4354 V 38 w(deriv)p 1314 4354 V 40 w(arra)m(y)-45 b(N)112
-b(gsl)p 1802 4354 V 40 w(sf)p 1906 4354 V 40 w(legendre)p
-2274 4354 V 40 w(sphPlm)p 2615 4354 V 39 w(deriv)p 2854
-4354 V 40 w(arra)m(y)150 4463 y(gsl)p 262 4463 V 41 w(sf)p
-367 4463 V 39 w(legendre)p 734 4463 V 41 w(arra)m(y)p
-982 4463 V 40 w(size)353 b(N)112 b(gsl)p 1802 4463 V
-40 w(sf)p 1906 4463 V 40 w(legendre)p 2274 4463 V 40
-w(arra)m(y)p 2521 4463 V 41 w(size)150 4573 y(gsl)p 262
-4573 V 41 w(sf)p 367 4573 V 39 w(conicalP)p 739 4573
-V 42 w(half)p 930 4573 V 40 w(e)506 b(Y)112 b(gsl)p 1802
-4573 V 40 w(sf)p 1906 4573 V 40 w(conicalP)p 2279 4573
-V 41 w(half\(dbl)p 2631 4573 V 40 w(expr,dbl)p 2998 4573
-V 39 w(expr\))150 4682 y(gsl)p 262 4682 V 41 w(sf)p 367
-4682 V 39 w(conicalP)p 739 4682 V 42 w(mhalf)p 1006 4682
-V 40 w(e)430 b(Y)112 b(gsl)p 1802 4682 V 40 w(sf)p 1906
-4682 V 40 w(conicalP)p 2279 4682 V 41 w(mhalf\(dbl)p
-2707 4682 V 40 w(expr,dbl)p 3074 4682 V 39 w(expr\))150
-4792 y(gsl)p 262 4792 V 41 w(sf)p 367 4792 V 39 w(conicalP)p
-739 4792 V 42 w(0)p 826 4792 V 40 w(e)610 b(Y)112 b(gsl)p
-1802 4792 V 40 w(sf)p 1906 4792 V 40 w(conicalP)p 2279
-4792 V 41 w(0\(dbl)p 2527 4792 V 41 w(expr,dbl)p 2895
-4792 V 39 w(expr\))150 4902 y(gsl)p 262 4902 V 41 w(sf)p
-367 4902 V 39 w(conicalP)p 739 4902 V 42 w(1)p 826 4902
-V 40 w(e)610 b(Y)112 b(gsl)p 1802 4902 V 40 w(sf)p 1906
-4902 V 40 w(conicalP)p 2279 4902 V 41 w(1\(dbl)p 2527
-4902 V 41 w(expr,dbl)p 2895 4902 V 39 w(expr\))150 5011
-y(gsl)p 262 5011 V 41 w(sf)p 367 5011 V 39 w(conicalP)p
-739 5011 V 42 w(sph)p 919 5011 V 39 w(reg)p 1079 5011
-V 40 w(e)357 b(Y)112 b(gsl)p 1802 5011 V 40 w(sf)p 1906
-5011 V 40 w(conicalP)p 2279 5011 V 41 w(sph)p 2458 5011
-V 39 w(reg\(in)m(t)p 2761 5011 V 42 w(expr,dbl)p 3130
-5011 V 39 w(expr,dbl)p 3496 5011 V 39 w(expr\))150 5121
-y(gsl)p 262 5121 V 41 w(sf)p 367 5121 V 39 w(conicalP)p
-739 5121 V 42 w(cyl)p 894 5121 V 40 w(reg)p 1055 5121
-V 41 w(e)380 b(Y)112 b(gsl)p 1802 5121 V 40 w(sf)p 1906
-5121 V 40 w(conicalP)p 2279 5121 V 41 w(cyl)p 2433 5121
-V 41 w(reg\(in)m(t)p 2738 5121 V 42 w(expr,dbl)p 3107
-5121 V 39 w(expr,dbl)p 3473 5121 V 39 w(expr\))150 5230
+734 3915 V 41 w(Pl)p 862 3915 V 40 w(e)574 b(Y)112 b(gsl)p
+1802 3915 V 40 w(sf)p 1906 3915 V 40 w(legendre)p 2274
+3915 V 40 w(Pl\(in)m(t)p 2544 3915 V 41 w(expr,dbl)p
+2912 3915 V 39 w(expr\))150 4025 y(gsl)p 262 4025 V 41
+w(sf)p 367 4025 V 39 w(legendre)p 734 4025 V 41 w(Pl)p
+862 4025 V 40 w(arra)m(y)407 b(Y)112 b(status=gsl)p 2111
+4025 V 40 w(sf)p 2215 4025 V 40 w(legendre)p 2583 4025
+V 40 w(Pl)p 2710 4025 V 41 w(arra)m(y\(in)m(t,double,&v)-5
+b(ar)p 3609 4025 V 41 w(out\))150 4134 y(gsl)p 262 4134
+V 41 w(sf)p 367 4134 V 39 w(legendre)p 734 4134 V 41
+w(Pl)p 862 4134 V 40 w(deriv)p 1102 4134 V 40 w(arra)m(y)167
+b(N)112 b(gsl)p 1802 4134 V 40 w(sf)p 1906 4134 V 40
+w(legendre)p 2274 4134 V 40 w(Pl)p 2401 4134 V 41 w(deriv)p
+2642 4134 V 39 w(arra)m(y)150 4244 y(gsl)p 262 4244 V
+41 w(sf)p 367 4244 V 39 w(legendre)p 734 4244 V 41 w(P1)p
+882 4244 V 40 w(e)554 b(Y)112 b(gsl)p 1802 4244 V 40
+w(sf)p 1906 4244 V 40 w(legendre)p 2274 4244 V 40 w(P1\(dbl)p
+2583 4244 V 40 w(expr\))150 4354 y(gsl)p 262 4354 V 41
+w(sf)p 367 4354 V 39 w(legendre)p 734 4354 V 41 w(P2)p
+882 4354 V 40 w(e)554 b(Y)112 b(gsl)p 1802 4354 V 40
+w(sf)p 1906 4354 V 40 w(legendre)p 2274 4354 V 40 w(P2\(dbl)p
+2583 4354 V 40 w(expr\))150 4463 y(gsl)p 262 4463 V 41
+w(sf)p 367 4463 V 39 w(legendre)p 734 4463 V 41 w(P3)p
+882 4463 V 40 w(e)554 b(Y)112 b(gsl)p 1802 4463 V 40
+w(sf)p 1906 4463 V 40 w(legendre)p 2274 4463 V 40 w(P3\(dbl)p
+2583 4463 V 40 w(expr\))150 4573 y(gsl)p 262 4573 V 41
+w(sf)p 367 4573 V 39 w(legendre)p 734 4573 V 41 w(Q0)p
+891 4573 V 40 w(e)545 b(Y)112 b(gsl)p 1802 4573 V 40
+w(sf)p 1906 4573 V 40 w(legendre)p 2274 4573 V 40 w(Q0\(dbl)p
+2592 4573 V 40 w(expr\))150 4682 y(gsl)p 262 4682 V 41
+w(sf)p 367 4682 V 39 w(legendre)p 734 4682 V 41 w(Q1)p
+891 4682 V 40 w(e)545 b(Y)112 b(gsl)p 1802 4682 V 40
+w(sf)p 1906 4682 V 40 w(legendre)p 2274 4682 V 40 w(Q1\(dbl)p
+2592 4682 V 40 w(expr\))150 4792 y(gsl)p 262 4792 V 41
+w(sf)p 367 4792 V 39 w(legendre)p 734 4792 V 41 w(Ql)p
+871 4792 V 40 w(e)565 b(Y)112 b(gsl)p 1802 4792 V 40
+w(sf)p 1906 4792 V 40 w(legendre)p 2274 4792 V 40 w(Ql\(in)m(t)p
+2553 4792 V 41 w(expr,dbl)p 2921 4792 V 39 w(expr\))150
+4902 y(gsl)p 262 4902 V 41 w(sf)p 367 4902 V 39 w(legendre)p
+734 4902 V 41 w(Plm)p 938 4902 V 40 w(e)498 b(Y)112 b(gsl)p
+1802 4902 V 40 w(sf)p 1906 4902 V 40 w(legendre)p 2274
+4902 V 40 w(Plm\(in)m(t)p 2620 4902 V 41 w(expr,in)m(t)p
+2969 4902 V 41 w(expr,dbl)p 3337 4902 V 39 w(expr\))150
+5011 y(gsl)p 262 5011 V 41 w(sf)p 367 5011 V 39 w(legendre)p
+734 5011 V 41 w(Plm)p 938 5011 V 40 w(arra)m(y)331 b(Y)112
+b(status=gsl)p 2111 5011 V 40 w(sf)p 2215 5011 V 40 w(legendre)p
+2583 5011 V 40 w(Plm)p 2786 5011 V 40 w(arra)m(y\(in)m(t,in)m
+(t,double,&v)-5 b(ar)p 3817 5011 V 43 w(out\))150 5121
+y(gsl)p 262 5121 V 41 w(sf)p 367 5121 V 39 w(legendre)p
+734 5121 V 41 w(Plm)p 938 5121 V 40 w(deriv)p 1178 5121
+V 39 w(arra)m(y)92 b(N)112 b(gsl)p 1802 5121 V 40 w(sf)p
+1906 5121 V 40 w(legendre)p 2274 5121 V 40 w(Plm)p 2477
+5121 V 40 w(deriv)p 2717 5121 V 40 w(arra)m(y)150 5230
 y(gsl)p 262 5230 V 41 w(sf)p 367 5230 V 39 w(legendre)p
-734 5230 V 41 w(H3d)p 939 5230 V 40 w(0)p 1024 5230 V
-40 w(e)412 b(Y)112 b(gsl)p 1802 5230 V 40 w(sf)p 1906
-5230 V 40 w(legendre)p 2274 5230 V 40 w(H3d)p 2478 5230
-V 41 w(0\(dbl)p 2726 5230 V 40 w(expr,dbl)p 3093 5230
-V 39 w(expr\))150 5340 y(gsl)p 262 5340 V 41 w(sf)p 367
-5340 V 39 w(legendre)p 734 5340 V 41 w(H3d)p 939 5340
-V 40 w(1)p 1024 5340 V 40 w(e)412 b(Y)112 b(gsl)p 1802
-5340 V 40 w(sf)p 1906 5340 V 40 w(legendre)p 2274 5340
-V 40 w(H3d)p 2478 5340 V 41 w(1\(dbl)p 2726 5340 V 40
-w(expr,dbl)p 3093 5340 V 39 w(expr\))p eop end
-%%Page: 141 147
-TeXDict begin 141 146 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(141)150
-299 y(gsl)p 262 299 28 4 v 41 w(sf)p 367 299 V 39 w(legendre)p
-734 299 V 41 w(H3d)p 939 299 V 40 w(e)497 b(Y)112 b(gsl)p
-1802 299 V 40 w(sf)p 1906 299 V 40 w(legendre)p 2274
-299 V 40 w(H3d\(in)m(t)p 2621 299 V 41 w(expr,dbl)p 2989
-299 V 39 w(expr,dbl)p 3355 299 V 40 w(expr\))150 408
-y(gsl)p 262 408 V 41 w(sf)p 367 408 V 39 w(legendre)p
-734 408 V 41 w(H3d)p 939 408 V 40 w(arra)m(y)330 b(N)112
-b(gsl)p 1802 408 V 40 w(sf)p 1906 408 V 40 w(legendre)p
-2274 408 V 40 w(H3d)p 2478 408 V 41 w(arra)m(y)150 518
-y(gsl)p 262 518 V 41 w(sf)p 367 518 V 39 w(legendre)p
-734 518 V 41 w(arra)m(y)p 982 518 V 40 w(size)353 b(N)112
-b(gsl)p 1802 518 V 40 w(sf)p 1906 518 V 40 w(legendre)p
-2274 518 V 40 w(arra)m(y)p 2521 518 V 41 w(size)150 628
-y(gsl)p 262 628 V 41 w(sf)p 367 628 V 39 w(log)p 521
-628 V 41 w(e)914 b(Y)112 b(gsl)p 1802 628 V 40 w(sf)p
-1906 628 V 40 w(log\(dbl)p 2223 628 V 41 w(expr\))150
-737 y(gsl)p 262 737 V 41 w(sf)p 367 737 V 39 w(log)p
-521 737 V 41 w(abs)p 694 737 V 40 w(e)742 b(Y)112 b(gsl)p
-1802 737 V 40 w(sf)p 1906 737 V 40 w(log)p 2061 737 V
-41 w(abs\(dbl)p 2396 737 V 39 w(expr\))150 847 y(gsl)p
-262 847 V 41 w(sf)p 367 847 V 39 w(complex)p 731 847
-V 41 w(log)p 887 847 V 41 w(e)548 b(N)112 b(gsl)p 1802
-847 V 40 w(sf)p 1906 847 V 40 w(complex)p 2271 847 V
-41 w(log)150 956 y(gsl)p 262 956 V 41 w(sf)p 367 956
-V 39 w(log)p 521 956 V 41 w(1plusx)p 818 956 V 40 w(e)618
-b(Y)112 b(gsl)p 1802 956 V 40 w(sf)p 1906 956 V 40 w(log)p
-2061 956 V 41 w(1plusx\(dbl)p 2520 956 V 39 w(expr\))150
-1066 y(gsl)p 262 1066 V 41 w(sf)p 367 1066 V 39 w(log)p
-521 1066 V 41 w(1plusx)p 818 1066 V 40 w(mx)p 982 1066
-V 40 w(e)454 b(Y)112 b(gsl)p 1802 1066 V 40 w(sf)p 1906
-1066 V 40 w(log)p 2061 1066 V 41 w(1plusx)p 2358 1066
-V 40 w(mx\(dbl)p 2684 1066 V 39 w(expr\))150 1176 y(gsl)p
-262 1176 V 41 w(sf)p 367 1176 V 39 w(mathieu)p 729 1176
-V 40 w(a)p 814 1176 V 41 w(arra)m(y)454 b(N)112 b(gsl)p
-1802 1176 V 40 w(sf)p 1906 1176 V 40 w(mathieu)p 2269
-1176 V 40 w(a)p 2354 1176 V 41 w(arra)m(y)150 1285 y(gsl)p
-262 1285 V 41 w(sf)p 367 1285 V 39 w(mathieu)p 729 1285
-V 40 w(b)p 820 1285 V 40 w(arra)m(y)449 b(N)112 b(gsl)p
-1802 1285 V 40 w(sf)p 1906 1285 V 40 w(mathieu)p 2269
-1285 V 40 w(b)p 2360 1285 V 40 w(arra)m(y)150 1395 y(gsl)p
-262 1395 V 41 w(sf)p 367 1395 V 39 w(mathieu)p 729 1395
-V 40 w(a)702 b(N)112 b(gsl)p 1802 1395 V 40 w(sf)p 1906
-1395 V 40 w(mathieu)p 2269 1395 V 40 w(a)150 1504 y(gsl)p
-262 1504 V 41 w(sf)p 367 1504 V 39 w(mathieu)p 729 1504
-V 40 w(b)696 b(N)112 b(gsl)p 1802 1504 V 40 w(sf)p 1906
-1504 V 40 w(mathieu)p 2269 1504 V 40 w(b)150 1614 y(gsl)p
-262 1614 V 41 w(sf)p 367 1614 V 39 w(mathieu)p 729 1614
-V 40 w(a)p 814 1614 V 41 w(co)s(e\013)480 b(N)112 b(gsl)p
-1802 1614 V 40 w(sf)p 1906 1614 V 40 w(mathieu)p 2269
-1614 V 40 w(a)p 2354 1614 V 41 w(co)s(e\013)150 1724
-y(gsl)p 262 1724 V 41 w(sf)p 367 1724 V 39 w(mathieu)p
-729 1724 V 40 w(b)p 820 1724 V 40 w(co)s(e\013)475 b(N)112
-b(gsl)p 1802 1724 V 40 w(sf)p 1906 1724 V 40 w(mathieu)p
-2269 1724 V 40 w(b)p 2360 1724 V 40 w(co)s(e\013)150
-1833 y(gsl)p 262 1833 V 41 w(sf)p 367 1833 V 39 w(mathieu)p
-729 1833 V 40 w(ce)667 b(N)112 b(gsl)p 1802 1833 V 40
-w(sf)p 1906 1833 V 40 w(mathieu)p 2269 1833 V 40 w(ce)150
-1943 y(gsl)p 262 1943 V 41 w(sf)p 367 1943 V 39 w(mathieu)p
-729 1943 V 40 w(se)671 b(N)112 b(gsl)p 1802 1943 V 40
-w(sf)p 1906 1943 V 40 w(mathieu)p 2269 1943 V 40 w(se)150
-2052 y(gsl)p 262 2052 V 41 w(sf)p 367 2052 V 39 w(mathieu)p
-729 2052 V 40 w(ce)p 849 2052 V 41 w(arra)m(y)419 b(N)112
-b(gsl)p 1802 2052 V 40 w(sf)p 1906 2052 V 40 w(mathieu)p
-2269 2052 V 40 w(ce)p 2389 2052 V 41 w(arra)m(y)150 2162
-y(gsl)p 262 2162 V 41 w(sf)p 367 2162 V 39 w(mathieu)p
-729 2162 V 40 w(se)p 845 2162 V 41 w(arra)m(y)423 b(N)112
-b(gsl)p 1802 2162 V 40 w(sf)p 1906 2162 V 40 w(mathieu)p
-2269 2162 V 40 w(se)p 2385 2162 V 40 w(arra)m(y)150 2271
-y(gsl)p 262 2271 V 41 w(sf)p 367 2271 V 39 w(mathieu)p
-729 2271 V 40 w(Mc)624 b(N)112 b(gsl)p 1802 2271 V 40
-w(sf)p 1906 2271 V 40 w(mathieu)p 2269 2271 V 40 w(Mc)150
+734 5230 V 41 w(sphPlm)p 1076 5230 V 38 w(e)362 b(Y)112
+b(gsl)p 1802 5230 V 40 w(sf)p 1906 5230 V 40 w(legendre)p
+2274 5230 V 40 w(sphPlm\(in)m(t)p 2758 5230 V 40 w(expr,in)m(t)p
+3106 5230 V 40 w(expr,dbl)p 3473 5230 V 39 w(expr\))150
+5340 y(gsl)p 262 5340 V 41 w(sf)p 367 5340 V 39 w(legendre)p
+734 5340 V 41 w(sphPlm)p 1076 5340 V 38 w(arra)m(y)195
+b(Y)112 b(status=gsl)p 2111 5340 V 40 w(sf)p 2215 5340
+V 40 w(legendre)p 2583 5340 V 40 w(sphPlm)p 2924 5340
+V 39 w(arra)m(y\(in)m(t,in)m(t,double,&v)-5 b(ar)p 3954
+5340 V 42 w(out\))p eop end
+%%Page: 153 159
+TeXDict begin 153 158 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(153)150 299 y(gsl)p
+262 299 28 4 v 41 w(sf)p 367 299 V 39 w(legendre)p 734
+299 V 41 w(sphPlm)p 1076 299 V 38 w(deriv)p 1314 299
+V 40 w(arra)m(y)-45 b(N)112 b(gsl)p 1802 299 V 40 w(sf)p
+1906 299 V 40 w(legendre)p 2274 299 V 40 w(sphPlm)p 2615
+299 V 39 w(deriv)p 2854 299 V 40 w(arra)m(y)150 408 y(gsl)p
+262 408 V 41 w(sf)p 367 408 V 39 w(legendre)p 734 408
+V 41 w(arra)m(y)p 982 408 V 40 w(size)353 b(N)112 b(gsl)p
+1802 408 V 40 w(sf)p 1906 408 V 40 w(legendre)p 2274
+408 V 40 w(arra)m(y)p 2521 408 V 41 w(size)150 518 y(gsl)p
+262 518 V 41 w(sf)p 367 518 V 39 w(conicalP)p 739 518
+V 42 w(half)p 930 518 V 40 w(e)506 b(Y)112 b(gsl)p 1802
+518 V 40 w(sf)p 1906 518 V 40 w(conicalP)p 2279 518 V
+41 w(half\(dbl)p 2631 518 V 40 w(expr,dbl)p 2998 518
+V 39 w(expr\))150 628 y(gsl)p 262 628 V 41 w(sf)p 367
+628 V 39 w(conicalP)p 739 628 V 42 w(mhalf)p 1006 628
+V 40 w(e)430 b(Y)112 b(gsl)p 1802 628 V 40 w(sf)p 1906
+628 V 40 w(conicalP)p 2279 628 V 41 w(mhalf\(dbl)p 2707
+628 V 40 w(expr,dbl)p 3074 628 V 39 w(expr\))150 737
+y(gsl)p 262 737 V 41 w(sf)p 367 737 V 39 w(conicalP)p
+739 737 V 42 w(0)p 826 737 V 40 w(e)610 b(Y)112 b(gsl)p
+1802 737 V 40 w(sf)p 1906 737 V 40 w(conicalP)p 2279
+737 V 41 w(0\(dbl)p 2527 737 V 41 w(expr,dbl)p 2895 737
+V 39 w(expr\))150 847 y(gsl)p 262 847 V 41 w(sf)p 367
+847 V 39 w(conicalP)p 739 847 V 42 w(1)p 826 847 V 40
+w(e)610 b(Y)112 b(gsl)p 1802 847 V 40 w(sf)p 1906 847
+V 40 w(conicalP)p 2279 847 V 41 w(1\(dbl)p 2527 847 V
+41 w(expr,dbl)p 2895 847 V 39 w(expr\))150 956 y(gsl)p
+262 956 V 41 w(sf)p 367 956 V 39 w(conicalP)p 739 956
+V 42 w(sph)p 919 956 V 39 w(reg)p 1079 956 V 40 w(e)357
+b(Y)112 b(gsl)p 1802 956 V 40 w(sf)p 1906 956 V 40 w(conicalP)p
+2279 956 V 41 w(sph)p 2458 956 V 39 w(reg\(in)m(t)p 2761
+956 V 42 w(expr,dbl)p 3130 956 V 39 w(expr,dbl)p 3496
+956 V 39 w(expr\))150 1066 y(gsl)p 262 1066 V 41 w(sf)p
+367 1066 V 39 w(conicalP)p 739 1066 V 42 w(cyl)p 894
+1066 V 40 w(reg)p 1055 1066 V 41 w(e)380 b(Y)112 b(gsl)p
+1802 1066 V 40 w(sf)p 1906 1066 V 40 w(conicalP)p 2279
+1066 V 41 w(cyl)p 2433 1066 V 41 w(reg\(in)m(t)p 2738
+1066 V 42 w(expr,dbl)p 3107 1066 V 39 w(expr,dbl)p 3473
+1066 V 39 w(expr\))150 1176 y(gsl)p 262 1176 V 41 w(sf)p
+367 1176 V 39 w(legendre)p 734 1176 V 41 w(H3d)p 939
+1176 V 40 w(0)p 1024 1176 V 40 w(e)412 b(Y)112 b(gsl)p
+1802 1176 V 40 w(sf)p 1906 1176 V 40 w(legendre)p 2274
+1176 V 40 w(H3d)p 2478 1176 V 41 w(0\(dbl)p 2726 1176
+V 40 w(expr,dbl)p 3093 1176 V 39 w(expr\))150 1285 y(gsl)p
+262 1285 V 41 w(sf)p 367 1285 V 39 w(legendre)p 734 1285
+V 41 w(H3d)p 939 1285 V 40 w(1)p 1024 1285 V 40 w(e)412
+b(Y)112 b(gsl)p 1802 1285 V 40 w(sf)p 1906 1285 V 40
+w(legendre)p 2274 1285 V 40 w(H3d)p 2478 1285 V 41 w(1\(dbl)p
+2726 1285 V 40 w(expr,dbl)p 3093 1285 V 39 w(expr\))150
+1395 y(gsl)p 262 1395 V 41 w(sf)p 367 1395 V 39 w(legendre)p
+734 1395 V 41 w(H3d)p 939 1395 V 40 w(e)497 b(Y)112 b(gsl)p
+1802 1395 V 40 w(sf)p 1906 1395 V 40 w(legendre)p 2274
+1395 V 40 w(H3d\(in)m(t)p 2621 1395 V 41 w(expr,dbl)p
+2989 1395 V 39 w(expr,dbl)p 3355 1395 V 40 w(expr\))150
+1504 y(gsl)p 262 1504 V 41 w(sf)p 367 1504 V 39 w(legendre)p
+734 1504 V 41 w(H3d)p 939 1504 V 40 w(arra)m(y)330 b(N)112
+b(gsl)p 1802 1504 V 40 w(sf)p 1906 1504 V 40 w(legendre)p
+2274 1504 V 40 w(H3d)p 2478 1504 V 41 w(arra)m(y)150
+1614 y(gsl)p 262 1614 V 41 w(sf)p 367 1614 V 39 w(legendre)p
+734 1614 V 41 w(arra)m(y)p 982 1614 V 40 w(size)353 b(N)112
+b(gsl)p 1802 1614 V 40 w(sf)p 1906 1614 V 40 w(legendre)p
+2274 1614 V 40 w(arra)m(y)p 2521 1614 V 41 w(size)150
+1724 y(gsl)p 262 1724 V 41 w(sf)p 367 1724 V 39 w(log)p
+521 1724 V 41 w(e)914 b(Y)112 b(gsl)p 1802 1724 V 40
+w(sf)p 1906 1724 V 40 w(log\(dbl)p 2223 1724 V 41 w(expr\))150
+1833 y(gsl)p 262 1833 V 41 w(sf)p 367 1833 V 39 w(log)p
+521 1833 V 41 w(abs)p 694 1833 V 40 w(e)742 b(Y)112 b(gsl)p
+1802 1833 V 40 w(sf)p 1906 1833 V 40 w(log)p 2061 1833
+V 41 w(abs\(dbl)p 2396 1833 V 39 w(expr\))150 1943 y(gsl)p
+262 1943 V 41 w(sf)p 367 1943 V 39 w(complex)p 731 1943
+V 41 w(log)p 887 1943 V 41 w(e)548 b(N)112 b(gsl)p 1802
+1943 V 40 w(sf)p 1906 1943 V 40 w(complex)p 2271 1943
+V 41 w(log)150 2052 y(gsl)p 262 2052 V 41 w(sf)p 367
+2052 V 39 w(log)p 521 2052 V 41 w(1plusx)p 818 2052 V
+40 w(e)618 b(Y)112 b(gsl)p 1802 2052 V 40 w(sf)p 1906
+2052 V 40 w(log)p 2061 2052 V 41 w(1plusx\(dbl)p 2520
+2052 V 39 w(expr\))150 2162 y(gsl)p 262 2162 V 41 w(sf)p
+367 2162 V 39 w(log)p 521 2162 V 41 w(1plusx)p 818 2162
+V 40 w(mx)p 982 2162 V 40 w(e)454 b(Y)112 b(gsl)p 1802
+2162 V 40 w(sf)p 1906 2162 V 40 w(log)p 2061 2162 V 41
+w(1plusx)p 2358 2162 V 40 w(mx\(dbl)p 2684 2162 V 39
+w(expr\))150 2271 y(gsl)p 262 2271 V 41 w(sf)p 367 2271
+V 39 w(mathieu)p 729 2271 V 40 w(a)p 814 2271 V 41 w(arra)m(y)454
+b(N)112 b(gsl)p 1802 2271 V 40 w(sf)p 1906 2271 V 40
+w(mathieu)p 2269 2271 V 40 w(a)p 2354 2271 V 41 w(arra)m(y)150
 2381 y(gsl)p 262 2381 V 41 w(sf)p 367 2381 V 39 w(mathieu)p
-729 2381 V 40 w(Ms)628 b(N)112 b(gsl)p 1802 2381 V 40
-w(sf)p 1906 2381 V 40 w(mathieu)p 2269 2381 V 40 w(Ms)150
-2491 y(gsl)p 262 2491 V 41 w(sf)p 367 2491 V 39 w(mathieu)p
-729 2491 V 40 w(Mc)p 892 2491 V 41 w(arra)m(y)376 b(N)112
-b(gsl)p 1802 2491 V 40 w(sf)p 1906 2491 V 40 w(mathieu)p
-2269 2491 V 40 w(Mc)p 2432 2491 V 41 w(arra)m(y)150 2600
-y(gsl)p 262 2600 V 41 w(sf)p 367 2600 V 39 w(mathieu)p
-729 2600 V 40 w(Ms)p 888 2600 V 41 w(arra)m(y)380 b(N)112
-b(gsl)p 1802 2600 V 40 w(sf)p 1906 2600 V 40 w(mathieu)p
-2269 2600 V 40 w(Ms)p 2428 2600 V 40 w(arra)m(y)150 2710
-y(gsl)p 262 2710 V 41 w(sf)p 367 2710 V 39 w(p)s(o)m(w)p
-568 2710 V 40 w(in)m(t)p 716 2710 V 40 w(e)720 b(N)112
-b(gsl)p 1802 2710 V 40 w(sf)p 1906 2710 V 40 w(p)s(o)m(w)p
-2108 2710 V 39 w(in)m(t)150 2819 y(gsl)p 262 2819 V 41
-w(sf)p 367 2819 V 39 w(psi)p 518 2819 V 40 w(in)m(t)p
-666 2819 V 40 w(e)770 b(Y)112 b(gsl)p 1802 2819 V 40
-w(sf)p 1906 2819 V 40 w(psi)p 2058 2819 V 39 w(in)m(t\(in)m(t)p
-2348 2819 V 42 w(expr\))150 2929 y(gsl)p 262 2929 V 41
-w(sf)p 367 2929 V 39 w(psi)p 518 2929 V 40 w(e)918 b(Y)112
-b(gsl)p 1802 2929 V 40 w(sf)p 1906 2929 V 40 w(psi\(dbl)p
-2220 2929 V 39 w(expr\))150 3039 y(gsl)p 262 3039 V 41
-w(sf)p 367 3039 V 39 w(psi)p 518 3039 V 40 w(1piy)p 727
-3039 V 40 w(e)709 b(Y)112 b(gsl)p 1802 3039 V 40 w(sf)p
-1906 3039 V 40 w(psi)p 2058 3039 V 39 w(1piy\(dbl)p 2428
-3039 V 40 w(expr\))150 3148 y(gsl)p 262 3148 V 41 w(sf)p
-367 3148 V 39 w(complex)p 731 3148 V 41 w(psi)p 884 3148
-V 40 w(e)552 b(N)112 b(gsl)p 1802 3148 V 40 w(sf)p 1906
-3148 V 40 w(complex)p 2271 3148 V 41 w(psi)150 3258 y(gsl)p
-262 3258 V 41 w(sf)p 367 3258 V 39 w(psi)p 518 3258 V
-40 w(1)p 603 3258 V 40 w(in)m(t)p 751 3258 V 41 w(e)684
-b(Y)112 b(gsl)p 1802 3258 V 40 w(sf)p 1906 3258 V 40
-w(psi)p 2058 3258 V 39 w(1)p 2142 3258 V 41 w(in)m(t\(in)m(t)p
-2434 3258 V 41 w(expr\))150 3367 y(gsl)p 262 3367 V 41
-w(sf)p 367 3367 V 39 w(psi)p 518 3367 V 40 w(1)p 603
-3367 V 40 w(e)833 b(Y)112 b(gsl)p 1802 3367 V 40 w(sf)p
-1906 3367 V 40 w(psi)p 2058 3367 V 39 w(1\(dbl)p 2304
-3367 V 41 w(expr\))150 3477 y(gsl)p 262 3477 V 41 w(sf)p
-367 3477 V 39 w(psi)p 518 3477 V 40 w(n)p 609 3477 V
-39 w(e)828 b(Y)112 b(gsl)p 1802 3477 V 40 w(sf)p 1906
-3477 V 40 w(psi)p 2058 3477 V 39 w(n\(in)m(t)p 2291 3477
-V 41 w(expr,dbl)p 2659 3477 V 39 w(expr\))150 3587 y(gsl)p
-262 3587 V 41 w(sf)p 367 3587 V 39 w(sync)m(hrotron)p
-877 3587 V 40 w(1)p 962 3587 V 40 w(e)474 b(Y)112 b(gsl)p
-1802 3587 V 40 w(sf)p 1906 3587 V 40 w(sync)m(hrotron)p
-2417 3587 V 40 w(1\(dbl)p 2664 3587 V 40 w(expr\))150
-3696 y(gsl)p 262 3696 V 41 w(sf)p 367 3696 V 39 w(sync)m(hrotron)p
-877 3696 V 40 w(2)p 962 3696 V 40 w(e)474 b(Y)112 b(gsl)p
-1802 3696 V 40 w(sf)p 1906 3696 V 40 w(sync)m(hrotron)p
-2417 3696 V 40 w(2\(dbl)p 2664 3696 V 40 w(expr\))150
-3806 y(gsl)p 262 3806 V 41 w(sf)p 367 3806 V 39 w(transp)s(ort)p
-779 3806 V 39 w(2)p 863 3806 V 41 w(e)572 b(Y)112 b(gsl)p
-1802 3806 V 40 w(sf)p 1906 3806 V 40 w(transp)s(ort)p
-2319 3806 V 39 w(2\(dbl)p 2565 3806 V 40 w(expr\))150
-3915 y(gsl)p 262 3915 V 41 w(sf)p 367 3915 V 39 w(transp)s(ort)p
-779 3915 V 39 w(3)p 863 3915 V 41 w(e)572 b(Y)112 b(gsl)p
-1802 3915 V 40 w(sf)p 1906 3915 V 40 w(transp)s(ort)p
-2319 3915 V 39 w(3\(dbl)p 2565 3915 V 40 w(expr\))150
-4025 y(gsl)p 262 4025 V 41 w(sf)p 367 4025 V 39 w(transp)s(ort)p
-779 4025 V 39 w(4)p 863 4025 V 41 w(e)572 b(Y)112 b(gsl)p
-1802 4025 V 40 w(sf)p 1906 4025 V 40 w(transp)s(ort)p
-2319 4025 V 39 w(4\(dbl)p 2565 4025 V 40 w(expr\))150
-4134 y(gsl)p 262 4134 V 41 w(sf)p 367 4134 V 39 w(transp)s(ort)p
-779 4134 V 39 w(5)p 863 4134 V 41 w(e)572 b(Y)112 b(gsl)p
-1802 4134 V 40 w(sf)p 1906 4134 V 40 w(transp)s(ort)p
-2319 4134 V 39 w(5\(dbl)p 2565 4134 V 40 w(expr\))150
-4244 y(gsl)p 262 4244 V 41 w(sf)p 367 4244 V 39 w(sin)p
-518 4244 V 40 w(e)918 b(N)112 b(gsl)p 1802 4244 V 40
-w(sf)p 1906 4244 V 40 w(sin)150 4354 y(gsl)p 262 4354
-V 41 w(sf)p 367 4354 V 39 w(cos)p 527 4354 V 41 w(e)908
-b(N)112 b(gsl)p 1802 4354 V 40 w(sf)p 1906 4354 V 40
-w(cos)150 4463 y(gsl)p 262 4463 V 41 w(sf)p 367 4463
-V 39 w(h)m(yp)s(ot)p 636 4463 V 40 w(e)800 b(N)112 b(gsl)p
-1802 4463 V 40 w(sf)p 1906 4463 V 40 w(h)m(yp)s(ot)150
-4573 y(gsl)p 262 4573 V 41 w(sf)p 367 4573 V 39 w(complex)p
-731 4573 V 41 w(sin)p 884 4573 V 40 w(e)552 b(N)112 b(gsl)p
-1802 4573 V 40 w(sf)p 1906 4573 V 40 w(complex)p 2271
-4573 V 41 w(sin)150 4682 y(gsl)p 262 4682 V 41 w(sf)p
-367 4682 V 39 w(complex)p 731 4682 V 41 w(cos)p 893 4682
-V 41 w(e)542 b(N)112 b(gsl)p 1802 4682 V 40 w(sf)p 1906
-4682 V 40 w(complex)p 2271 4682 V 41 w(cos)150 4792 y(gsl)p
-262 4792 V 41 w(sf)p 367 4792 V 39 w(complex)p 731 4792
-V 41 w(logsin)p 999 4792 V 41 w(e)436 b(N)112 b(gsl)p
-1802 4792 V 40 w(sf)p 1906 4792 V 40 w(complex)p 2271
-4792 V 41 w(logsin)150 4902 y(gsl)p 262 4902 V 41 w(sf)p
-367 4902 V 39 w(sinc)p 558 4902 V 40 w(e)878 b(N)112
-b(gsl)p 1802 4902 V 40 w(sf)p 1906 4902 V 40 w(sinc)150
-5011 y(gsl)p 262 5011 V 41 w(sf)p 367 5011 V 39 w(lnsinh)p
-645 5011 V 39 w(e)792 b(N)112 b(gsl)p 1802 5011 V 40
-w(sf)p 1906 5011 V 40 w(lnsinh)150 5121 y(gsl)p 262 5121
-V 41 w(sf)p 367 5121 V 39 w(lncosh)p 654 5121 V 40 w(e)782
-b(N)112 b(gsl)p 1802 5121 V 40 w(sf)p 1906 5121 V 40
-w(lncosh)150 5230 y(gsl)p 262 5230 V 41 w(sf)p 367 5230
-V 39 w(p)s(olar)p 611 5230 V 40 w(to)p 731 5230 V 41
-w(rect)593 b(N)112 b(gsl)p 1802 5230 V 40 w(sf)p 1906
-5230 V 40 w(p)s(olar)p 2151 5230 V 40 w(to)p 2271 5230
-V 40 w(rect)150 5340 y(gsl)p 262 5340 V 41 w(sf)p 367
-5340 V 39 w(rect)p 557 5340 V 41 w(to)p 678 5340 V 41
-w(p)s(olar)592 b(N)112 b(gsl)p 1802 5340 V 40 w(sf)p
-1906 5340 V 40 w(rect)p 2097 5340 V 41 w(to)p 2218 5340
-V 40 w(p)s(olar)p eop end
-%%Page: 142 148
-TeXDict begin 142 147 bop 150 -116 a FD(142)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(gsl)p 262 299 28
-4 v 41 w(sf)p 367 299 V 39 w(sin)p 518 299 V 40 w(err)p
-670 299 V 39 w(e)767 b(N)112 b(gsl)p 1802 299 V 40 w(sf)p
-1906 299 V 40 w(sin)p 2058 299 V 39 w(err)150 408 y(gsl)p
-262 408 V 41 w(sf)p 367 408 V 39 w(cos)p 527 408 V 41
-w(err)p 680 408 V 40 w(e)756 b(N)112 b(gsl)p 1802 408
-V 40 w(sf)p 1906 408 V 40 w(cos)p 2067 408 V 41 w(err)150
-518 y(gsl)p 262 518 V 41 w(sf)p 367 518 V 39 w(angle)p
-612 518 V 41 w(restrict)p 936 518 V 41 w(symm)p 1213
-518 V 39 w(e)224 b(N)112 b(gsl)p 1802 518 V 40 w(sf)p
-1906 518 V 40 w(angle)p 2152 518 V 41 w(restrict)p 2476
-518 V 41 w(symm)150 628 y(gsl)p 262 628 V 41 w(sf)p 367
-628 V 39 w(angle)p 612 628 V 41 w(restrict)p 936 628
-V 41 w(p)s(os)p 1112 628 V 39 w(e)325 b(N)112 b(gsl)p
-1802 628 V 40 w(sf)p 1906 628 V 40 w(angle)p 2152 628
-V 41 w(restrict)p 2476 628 V 41 w(p)s(os)150 737 y(gsl)p
-262 737 V 41 w(sf)p 367 737 V 39 w(angle)p 612 737 V
-41 w(restrict)p 936 737 V 41 w(symm)p 1213 737 V 39 w(err)p
-1364 737 V 40 w(e)72 b(N)112 b(gsl)p 1802 737 V 40 w(sf)p
-1906 737 V 40 w(angle)p 2152 737 V 41 w(restrict)p 2476
-737 V 41 w(symm)p 2753 737 V 39 w(err)150 847 y(gsl)p
-262 847 V 41 w(sf)p 367 847 V 39 w(angle)p 612 847 V
-41 w(restrict)p 936 847 V 41 w(p)s(os)p 1112 847 V 39
-w(err)p 1263 847 V 40 w(e)173 b(N)112 b(gsl)p 1802 847
-V 40 w(sf)p 1906 847 V 40 w(angle)p 2152 847 V 41 w(restrict)p
-2476 847 V 41 w(p)s(os)p 2652 847 V 39 w(err)150 956
-y(gsl)p 262 956 V 41 w(sf)p 367 956 V 39 w(zeta)p 566
-956 V 42 w(in)m(t)p 716 956 V 40 w(e)720 b(Y)112 b(gsl)p
-1802 956 V 40 w(sf)p 1906 956 V 40 w(zeta)p 2106 956
-V 41 w(in)m(t\(in)m(t)p 2398 956 V 42 w(expr\))150 1066
-y(gsl)p 262 1066 V 41 w(sf)p 367 1066 V 39 w(zeta)p 566
-1066 V 42 w(e)868 b(Y)112 b(gsl)p 1802 1066 V 40 w(sf)p
-1906 1066 V 40 w(zeta\(dbl)p 2268 1066 V 41 w(expr\))150
-1176 y(gsl)p 262 1176 V 41 w(sf)p 367 1176 V 39 w(zetam1)p
-687 1176 V 42 w(e)747 b(Y)112 b(gsl)p 1802 1176 V 40
-w(sf)p 1906 1176 V 40 w(zetam1\(dbl)p 2389 1176 V 41
-w(expr\))150 1285 y(gsl)p 262 1285 V 41 w(sf)p 367 1285
-V 39 w(zetam1)p 687 1285 V 42 w(in)m(t)p 837 1285 V 41
-w(e)598 b(Y)112 b(gsl)p 1802 1285 V 40 w(sf)p 1906 1285
-V 40 w(zetam1)p 2227 1285 V 42 w(in)m(t\(in)m(t)p 2520
-1285 V 41 w(expr\))150 1395 y(gsl)p 262 1395 V 41 w(sf)p
-367 1395 V 39 w(hzeta)p 617 1395 V 41 w(e)818 b(Y)112
-b(gsl)p 1802 1395 V 40 w(sf)p 1906 1395 V 40 w(hzeta\(dbl)p
-2319 1395 V 41 w(expr,dbl)p 2687 1395 V 39 w(expr\))150
-1504 y(gsl)p 262 1504 V 41 w(sf)p 367 1504 V 39 w(eta)p
-526 1504 V 41 w(in)m(t)p 675 1504 V 41 w(e)760 b(Y)112
-b(gsl)p 1802 1504 V 40 w(sf)p 1906 1504 V 40 w(eta)p
-2066 1504 V 41 w(in)m(t\(in)m(t)p 2358 1504 V 42 w(expr\))150
-1614 y(gsl)p 262 1614 V 41 w(sf)p 367 1614 V 39 w(eta)p
-526 1614 V 41 w(e)909 b(Y)112 b(gsl)p 1802 1614 V 40
-w(sf)p 1906 1614 V 40 w(eta\(dbl)p 2228 1614 V 41 w(expr\))150
-1887 y Fu(4.1.20)63 b(GSL)41 b(in)m(terp)s(olation)150
-2034 y FD(As)30 b(of)g(v)m(ersion)g(3.9.9)i(\(released)f(July)-8
-b(,)30 b(2009\),)i FC(NCO)d FD(has)h(wrapp)s(ers)e(to)i(the)g
-FC(GSL)g FD(in)m(terp)s(olation)i(func-)150 2144 y(tions.)150
-2340 y(Giv)m(en)45 b(a)f(set)g(of)g(data)g(p)s(oin)m(ts)g
-(\(x1,y1\)...\(xn,)49 b(yn\))44 b(the)f FC(GSL)h FD(functions)f
-(computes)h(a)g(con)m(tin)m(uous)150 2450 y(in)m(terp)s(olating)27
-b(function)f FC(Y\(x\))h FD(suc)m(h)e(that)i FC(Y\(xi\))d(=)g(yi)p
-FD(.)39 b(The)25 b(in)m(terp)s(olation)i(is)f(piecewise)i(smo)s(oth,)f
-(and)150 2559 y(its)36 b(b)s(eha)m(vior)g(at)h(the)f(end-p)s(oin)m(ts)f
-(is)h(determined)g(b)m(y)f(the)i(t)m(yp)s(e)f(of)g(in)m(terp)s(olation)
-h(used.)56 b(F)-8 b(or)37 b(more)150 2669 y(information)31
-b(consult)f(the)h FC(GSL)f FD(man)m(ual.)150 2865 y(In)m(terp)s
-(olation)25 b(with)f Fy(ncap2)f FD(is)i(a)g(t)m(w)m(o)g(stage)h(pro)s
-(cess.)38 b(In)24 b(the)h(\014rst)e(stage,)28 b(a)c FC(RAM)h
-FD(v)-5 b(ariable)25 b(is)g(created)150 2975 y(from)c(the)g(c)m(hosen)h
-(in)m(terp)s(olating)h(function)e(and)g(the)g(data)h(set.)39
-b(This)20 b FC(RAM)i FD(v)-5 b(ariable)22 b(holds)f(in)g(memory)150
-3084 y(a)28 b FC(GSL)g FD(in)m(terp)s(olation)h(ob)5
-b(ject.)41 b(In)26 b(the)i(second)g(stage,)i(p)s(oin)m(ts)e(along)g
-(the)g(in)m(terp)s(olating)h(function)f(are)150 3194
-y(calculated.)53 b(If)33 b(y)m(ou)h(ha)m(v)m(e)h(a)f(v)m(ery)g(large)h
-(data)f(set)g(or)g(are)g(in)m(terp)s(olating)h(man)m(y)f(sets)g(then)f
-(consider)150 3303 y(deleting)e(the)g FC(RAM)g FD(v)-5
-b(ariable)31 b(when)e(it)i(is)g(redundan)m(t.)39 b(Use)31
-b(the)f(command)h Fy(ram_delete\(var_nm\))p FD(.)150
-3500 y(A)f(simple)h(example)390 3696 y Fy(x_in[$lon]={1.0,2.0,3.0,)o
-(4.0})o(;)390 3806 y(y_in[$lon]={1.1,1.2,1.5,)o(1.8})o(;)390
-4025 y(//)47 b(Ram)g(variable)f(is)h(declared)e(and)i(defined)f(here)
-390 4134 y(gsl_interp_cspline\(&ram_)o(sp,x)o(_in,)o(y_i)o(n\);)390
-4354 y(x_out[$lon_grd]={1.1,2.0)o(,3.0)o(,3.1)o(,3.)o(99};)390
-4573 y(y_out=gsl_spline_eval\(ra)o(m_sp)o(,x_o)o(ut\))o(;)390
-4682 y(y2=gsl_spline_eval\(ram_s)o(p,1.)o(3\);)390 4792
-y(y3=gsl_spline_eval\(ram_s)o(p,0.)o(0\);)390 4902 y
-(ram_delete\(ram_sp\);)390 5121 y(print\(y_out\);)e(//)j(1.10472,)f
-(1.2,)h(1.4,)f(1.42658,)g(1.69680002)390 5230 y(print\(y2\);)188
-b(//)47 b(1.12454)390 5340 y(print\(y3\);)188 b(//)47
-b('_')p eop end
-%%Page: 143 149
-TeXDict begin 143 148 bop 150 -116 a FD(Chapter)30 b(4:)h(Op)s(erator)f
-(Reference)h(Man)m(ual)1907 b(143)150 299 y(Note)31 b(in)f(the)g(ab)s
-(o)m(v)m(e)h(example)f(y3)g(is)g(set)h(to)f('missing)g(v)-5
-b(alue')31 b(b)s(ecause)f(0.0)h(isn't)f(within)f(the)h(input)f(X)150
-408 y(range.)275 583 y Fb(GSL)h Fq(In)m(terp)s(olation)i(T)m(yp)s(es)
-150 693 y FD(All)f(the)g(in)m(terp)s(olation)g(functions)f(ha)m(v)m(e)i
-(b)s(een)d(implemen)m(ted.)42 b(These)30 b(are:)150 802
-y(gsl)p 262 802 28 4 v 41 w(in)m(terp)p 538 802 V 40
-w(linear\(\))150 912 y(gsl)p 262 912 V 41 w(in)m(terp)p
-538 912 V 40 w(p)s(olynomial\(\))150 1021 y(gsl)p 262
-1021 V 41 w(in)m(terp)p 538 1021 V 40 w(cspline\(\))150
-1131 y(gsl)p 262 1131 V 41 w(in)m(terp)p 538 1131 V 40
-w(cspline)p 846 1131 V 40 w(p)s(erio)s(dic\(\))150 1241
-y(gsl)p 262 1241 V 41 w(in)m(terp)p 538 1241 V 40 w(akima\(\))150
-1350 y(gsl)p 262 1350 V 41 w(in)m(terp)p 538 1350 V 40
-w(akima)p 817 1350 V 41 w(p)s(erio)s(dic\(\))180 1854
-y Fq(Ev)-5 b(aluation)31 b(of)g(In)m(terp)s(olating)g(T)m(yp)s(es)150
-1963 y(Implemen)m(ted)150 2073 y FD(gsl)p 262 2073 V
-41 w(spline)p 531 2073 V 39 w(ev)-5 b(al\(\))150 2182
-y Fq(Unimplemen)m(ted)150 2292 y FD(gsl)p 262 2292 V
-41 w(spline)p 531 2292 V 39 w(deriv\(\))150 2402 y(gsl)p
-262 2402 V 41 w(spline)p 531 2402 V 39 w(deriv2\(\))150
-2511 y(gsl)p 262 2511 V 41 w(spline)p 531 2511 V 39 w(in)m(teg\(\))150
-2851 y Fu(4.1.21)63 b(GSL)41 b(least-squares)h(\014tting)150
-2998 y FD(Least)26 b(Squares)f(\014tting)g(is)h(a)f(metho)s(d)g(of)g
+729 2381 V 40 w(b)p 820 2381 V 40 w(arra)m(y)449 b(N)112
+b(gsl)p 1802 2381 V 40 w(sf)p 1906 2381 V 40 w(mathieu)p
+2269 2381 V 40 w(b)p 2360 2381 V 40 w(arra)m(y)150 2491
+y(gsl)p 262 2491 V 41 w(sf)p 367 2491 V 39 w(mathieu)p
+729 2491 V 40 w(a)702 b(N)112 b(gsl)p 1802 2491 V 40
+w(sf)p 1906 2491 V 40 w(mathieu)p 2269 2491 V 40 w(a)150
+2600 y(gsl)p 262 2600 V 41 w(sf)p 367 2600 V 39 w(mathieu)p
+729 2600 V 40 w(b)696 b(N)112 b(gsl)p 1802 2600 V 40
+w(sf)p 1906 2600 V 40 w(mathieu)p 2269 2600 V 40 w(b)150
+2710 y(gsl)p 262 2710 V 41 w(sf)p 367 2710 V 39 w(mathieu)p
+729 2710 V 40 w(a)p 814 2710 V 41 w(co)s(e\013)480 b(N)112
+b(gsl)p 1802 2710 V 40 w(sf)p 1906 2710 V 40 w(mathieu)p
+2269 2710 V 40 w(a)p 2354 2710 V 41 w(co)s(e\013)150
+2819 y(gsl)p 262 2819 V 41 w(sf)p 367 2819 V 39 w(mathieu)p
+729 2819 V 40 w(b)p 820 2819 V 40 w(co)s(e\013)475 b(N)112
+b(gsl)p 1802 2819 V 40 w(sf)p 1906 2819 V 40 w(mathieu)p
+2269 2819 V 40 w(b)p 2360 2819 V 40 w(co)s(e\013)150
+2929 y(gsl)p 262 2929 V 41 w(sf)p 367 2929 V 39 w(mathieu)p
+729 2929 V 40 w(ce)667 b(N)112 b(gsl)p 1802 2929 V 40
+w(sf)p 1906 2929 V 40 w(mathieu)p 2269 2929 V 40 w(ce)150
+3039 y(gsl)p 262 3039 V 41 w(sf)p 367 3039 V 39 w(mathieu)p
+729 3039 V 40 w(se)671 b(N)112 b(gsl)p 1802 3039 V 40
+w(sf)p 1906 3039 V 40 w(mathieu)p 2269 3039 V 40 w(se)150
+3148 y(gsl)p 262 3148 V 41 w(sf)p 367 3148 V 39 w(mathieu)p
+729 3148 V 40 w(ce)p 849 3148 V 41 w(arra)m(y)419 b(N)112
+b(gsl)p 1802 3148 V 40 w(sf)p 1906 3148 V 40 w(mathieu)p
+2269 3148 V 40 w(ce)p 2389 3148 V 41 w(arra)m(y)150 3258
+y(gsl)p 262 3258 V 41 w(sf)p 367 3258 V 39 w(mathieu)p
+729 3258 V 40 w(se)p 845 3258 V 41 w(arra)m(y)423 b(N)112
+b(gsl)p 1802 3258 V 40 w(sf)p 1906 3258 V 40 w(mathieu)p
+2269 3258 V 40 w(se)p 2385 3258 V 40 w(arra)m(y)150 3367
+y(gsl)p 262 3367 V 41 w(sf)p 367 3367 V 39 w(mathieu)p
+729 3367 V 40 w(Mc)624 b(N)112 b(gsl)p 1802 3367 V 40
+w(sf)p 1906 3367 V 40 w(mathieu)p 2269 3367 V 40 w(Mc)150
+3477 y(gsl)p 262 3477 V 41 w(sf)p 367 3477 V 39 w(mathieu)p
+729 3477 V 40 w(Ms)628 b(N)112 b(gsl)p 1802 3477 V 40
+w(sf)p 1906 3477 V 40 w(mathieu)p 2269 3477 V 40 w(Ms)150
+3587 y(gsl)p 262 3587 V 41 w(sf)p 367 3587 V 39 w(mathieu)p
+729 3587 V 40 w(Mc)p 892 3587 V 41 w(arra)m(y)376 b(N)112
+b(gsl)p 1802 3587 V 40 w(sf)p 1906 3587 V 40 w(mathieu)p
+2269 3587 V 40 w(Mc)p 2432 3587 V 41 w(arra)m(y)150 3696
+y(gsl)p 262 3696 V 41 w(sf)p 367 3696 V 39 w(mathieu)p
+729 3696 V 40 w(Ms)p 888 3696 V 41 w(arra)m(y)380 b(N)112
+b(gsl)p 1802 3696 V 40 w(sf)p 1906 3696 V 40 w(mathieu)p
+2269 3696 V 40 w(Ms)p 2428 3696 V 40 w(arra)m(y)150 3806
+y(gsl)p 262 3806 V 41 w(sf)p 367 3806 V 39 w(p)s(o)m(w)p
+568 3806 V 40 w(in)m(t)p 716 3806 V 40 w(e)720 b(N)112
+b(gsl)p 1802 3806 V 40 w(sf)p 1906 3806 V 40 w(p)s(o)m(w)p
+2108 3806 V 39 w(in)m(t)150 3915 y(gsl)p 262 3915 V 41
+w(sf)p 367 3915 V 39 w(psi)p 518 3915 V 40 w(in)m(t)p
+666 3915 V 40 w(e)770 b(Y)112 b(gsl)p 1802 3915 V 40
+w(sf)p 1906 3915 V 40 w(psi)p 2058 3915 V 39 w(in)m(t\(in)m(t)p
+2348 3915 V 42 w(expr\))150 4025 y(gsl)p 262 4025 V 41
+w(sf)p 367 4025 V 39 w(psi)p 518 4025 V 40 w(e)918 b(Y)112
+b(gsl)p 1802 4025 V 40 w(sf)p 1906 4025 V 40 w(psi\(dbl)p
+2220 4025 V 39 w(expr\))150 4134 y(gsl)p 262 4134 V 41
+w(sf)p 367 4134 V 39 w(psi)p 518 4134 V 40 w(1piy)p 727
+4134 V 40 w(e)709 b(Y)112 b(gsl)p 1802 4134 V 40 w(sf)p
+1906 4134 V 40 w(psi)p 2058 4134 V 39 w(1piy\(dbl)p 2428
+4134 V 40 w(expr\))150 4244 y(gsl)p 262 4244 V 41 w(sf)p
+367 4244 V 39 w(complex)p 731 4244 V 41 w(psi)p 884 4244
+V 40 w(e)552 b(N)112 b(gsl)p 1802 4244 V 40 w(sf)p 1906
+4244 V 40 w(complex)p 2271 4244 V 41 w(psi)150 4354 y(gsl)p
+262 4354 V 41 w(sf)p 367 4354 V 39 w(psi)p 518 4354 V
+40 w(1)p 603 4354 V 40 w(in)m(t)p 751 4354 V 41 w(e)684
+b(Y)112 b(gsl)p 1802 4354 V 40 w(sf)p 1906 4354 V 40
+w(psi)p 2058 4354 V 39 w(1)p 2142 4354 V 41 w(in)m(t\(in)m(t)p
+2434 4354 V 41 w(expr\))150 4463 y(gsl)p 262 4463 V 41
+w(sf)p 367 4463 V 39 w(psi)p 518 4463 V 40 w(1)p 603
+4463 V 40 w(e)833 b(Y)112 b(gsl)p 1802 4463 V 40 w(sf)p
+1906 4463 V 40 w(psi)p 2058 4463 V 39 w(1\(dbl)p 2304
+4463 V 41 w(expr\))150 4573 y(gsl)p 262 4573 V 41 w(sf)p
+367 4573 V 39 w(psi)p 518 4573 V 40 w(n)p 609 4573 V
+39 w(e)828 b(Y)112 b(gsl)p 1802 4573 V 40 w(sf)p 1906
+4573 V 40 w(psi)p 2058 4573 V 39 w(n\(in)m(t)p 2291 4573
+V 41 w(expr,dbl)p 2659 4573 V 39 w(expr\))150 4682 y(gsl)p
+262 4682 V 41 w(sf)p 367 4682 V 39 w(sync)m(hrotron)p
+877 4682 V 40 w(1)p 962 4682 V 40 w(e)474 b(Y)112 b(gsl)p
+1802 4682 V 40 w(sf)p 1906 4682 V 40 w(sync)m(hrotron)p
+2417 4682 V 40 w(1\(dbl)p 2664 4682 V 40 w(expr\))150
+4792 y(gsl)p 262 4792 V 41 w(sf)p 367 4792 V 39 w(sync)m(hrotron)p
+877 4792 V 40 w(2)p 962 4792 V 40 w(e)474 b(Y)112 b(gsl)p
+1802 4792 V 40 w(sf)p 1906 4792 V 40 w(sync)m(hrotron)p
+2417 4792 V 40 w(2\(dbl)p 2664 4792 V 40 w(expr\))150
+4902 y(gsl)p 262 4902 V 41 w(sf)p 367 4902 V 39 w(transp)s(ort)p
+779 4902 V 39 w(2)p 863 4902 V 41 w(e)572 b(Y)112 b(gsl)p
+1802 4902 V 40 w(sf)p 1906 4902 V 40 w(transp)s(ort)p
+2319 4902 V 39 w(2\(dbl)p 2565 4902 V 40 w(expr\))150
+5011 y(gsl)p 262 5011 V 41 w(sf)p 367 5011 V 39 w(transp)s(ort)p
+779 5011 V 39 w(3)p 863 5011 V 41 w(e)572 b(Y)112 b(gsl)p
+1802 5011 V 40 w(sf)p 1906 5011 V 40 w(transp)s(ort)p
+2319 5011 V 39 w(3\(dbl)p 2565 5011 V 40 w(expr\))150
+5121 y(gsl)p 262 5121 V 41 w(sf)p 367 5121 V 39 w(transp)s(ort)p
+779 5121 V 39 w(4)p 863 5121 V 41 w(e)572 b(Y)112 b(gsl)p
+1802 5121 V 40 w(sf)p 1906 5121 V 40 w(transp)s(ort)p
+2319 5121 V 39 w(4\(dbl)p 2565 5121 V 40 w(expr\))150
+5230 y(gsl)p 262 5230 V 41 w(sf)p 367 5230 V 39 w(transp)s(ort)p
+779 5230 V 39 w(5)p 863 5230 V 41 w(e)572 b(Y)112 b(gsl)p
+1802 5230 V 40 w(sf)p 1906 5230 V 40 w(transp)s(ort)p
+2319 5230 V 39 w(5\(dbl)p 2565 5230 V 40 w(expr\))150
+5340 y(gsl)p 262 5340 V 41 w(sf)p 367 5340 V 39 w(sin)p
+518 5340 V 40 w(e)918 b(N)112 b(gsl)p 1802 5340 V 40
+w(sf)p 1906 5340 V 40 w(sin)p eop end
+%%Page: 154 160
+TeXDict begin 154 159 bop 150 -116 a FE(154)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(gsl)p 262 299 28
+4 v 41 w(sf)p 367 299 V 39 w(cos)p 527 299 V 41 w(e)908
+b(N)112 b(gsl)p 1802 299 V 40 w(sf)p 1906 299 V 40 w(cos)150
+408 y(gsl)p 262 408 V 41 w(sf)p 367 408 V 39 w(h)m(yp)s(ot)p
+636 408 V 40 w(e)800 b(N)112 b(gsl)p 1802 408 V 40 w(sf)p
+1906 408 V 40 w(h)m(yp)s(ot)150 518 y(gsl)p 262 518 V
+41 w(sf)p 367 518 V 39 w(complex)p 731 518 V 41 w(sin)p
+884 518 V 40 w(e)552 b(N)112 b(gsl)p 1802 518 V 40 w(sf)p
+1906 518 V 40 w(complex)p 2271 518 V 41 w(sin)150 628
+y(gsl)p 262 628 V 41 w(sf)p 367 628 V 39 w(complex)p
+731 628 V 41 w(cos)p 893 628 V 41 w(e)542 b(N)112 b(gsl)p
+1802 628 V 40 w(sf)p 1906 628 V 40 w(complex)p 2271 628
+V 41 w(cos)150 737 y(gsl)p 262 737 V 41 w(sf)p 367 737
+V 39 w(complex)p 731 737 V 41 w(logsin)p 999 737 V 41
+w(e)436 b(N)112 b(gsl)p 1802 737 V 40 w(sf)p 1906 737
+V 40 w(complex)p 2271 737 V 41 w(logsin)150 847 y(gsl)p
+262 847 V 41 w(sf)p 367 847 V 39 w(sinc)p 558 847 V 40
+w(e)878 b(N)112 b(gsl)p 1802 847 V 40 w(sf)p 1906 847
+V 40 w(sinc)150 956 y(gsl)p 262 956 V 41 w(sf)p 367 956
+V 39 w(lnsinh)p 645 956 V 39 w(e)792 b(N)112 b(gsl)p
+1802 956 V 40 w(sf)p 1906 956 V 40 w(lnsinh)150 1066
+y(gsl)p 262 1066 V 41 w(sf)p 367 1066 V 39 w(lncosh)p
+654 1066 V 40 w(e)782 b(N)112 b(gsl)p 1802 1066 V 40
+w(sf)p 1906 1066 V 40 w(lncosh)150 1176 y(gsl)p 262 1176
+V 41 w(sf)p 367 1176 V 39 w(p)s(olar)p 611 1176 V 40
+w(to)p 731 1176 V 41 w(rect)593 b(N)112 b(gsl)p 1802
+1176 V 40 w(sf)p 1906 1176 V 40 w(p)s(olar)p 2151 1176
+V 40 w(to)p 2271 1176 V 40 w(rect)150 1285 y(gsl)p 262
+1285 V 41 w(sf)p 367 1285 V 39 w(rect)p 557 1285 V 41
+w(to)p 678 1285 V 41 w(p)s(olar)592 b(N)112 b(gsl)p 1802
+1285 V 40 w(sf)p 1906 1285 V 40 w(rect)p 2097 1285 V
+41 w(to)p 2218 1285 V 40 w(p)s(olar)150 1395 y(gsl)p
+262 1395 V 41 w(sf)p 367 1395 V 39 w(sin)p 518 1395 V
+40 w(err)p 670 1395 V 39 w(e)767 b(N)112 b(gsl)p 1802
+1395 V 40 w(sf)p 1906 1395 V 40 w(sin)p 2058 1395 V 39
+w(err)150 1504 y(gsl)p 262 1504 V 41 w(sf)p 367 1504
+V 39 w(cos)p 527 1504 V 41 w(err)p 680 1504 V 40 w(e)756
+b(N)112 b(gsl)p 1802 1504 V 40 w(sf)p 1906 1504 V 40
+w(cos)p 2067 1504 V 41 w(err)150 1614 y(gsl)p 262 1614
+V 41 w(sf)p 367 1614 V 39 w(angle)p 612 1614 V 41 w(restrict)p
+936 1614 V 41 w(symm)p 1213 1614 V 39 w(e)224 b(N)112
+b(gsl)p 1802 1614 V 40 w(sf)p 1906 1614 V 40 w(angle)p
+2152 1614 V 41 w(restrict)p 2476 1614 V 41 w(symm)150
+1724 y(gsl)p 262 1724 V 41 w(sf)p 367 1724 V 39 w(angle)p
+612 1724 V 41 w(restrict)p 936 1724 V 41 w(p)s(os)p 1112
+1724 V 39 w(e)325 b(N)112 b(gsl)p 1802 1724 V 40 w(sf)p
+1906 1724 V 40 w(angle)p 2152 1724 V 41 w(restrict)p
+2476 1724 V 41 w(p)s(os)150 1833 y(gsl)p 262 1833 V 41
+w(sf)p 367 1833 V 39 w(angle)p 612 1833 V 41 w(restrict)p
+936 1833 V 41 w(symm)p 1213 1833 V 39 w(err)p 1364 1833
+V 40 w(e)72 b(N)112 b(gsl)p 1802 1833 V 40 w(sf)p 1906
+1833 V 40 w(angle)p 2152 1833 V 41 w(restrict)p 2476
+1833 V 41 w(symm)p 2753 1833 V 39 w(err)150 1943 y(gsl)p
+262 1943 V 41 w(sf)p 367 1943 V 39 w(angle)p 612 1943
+V 41 w(restrict)p 936 1943 V 41 w(p)s(os)p 1112 1943
+V 39 w(err)p 1263 1943 V 40 w(e)173 b(N)112 b(gsl)p 1802
+1943 V 40 w(sf)p 1906 1943 V 40 w(angle)p 2152 1943 V
+41 w(restrict)p 2476 1943 V 41 w(p)s(os)p 2652 1943 V
+39 w(err)150 2052 y(gsl)p 262 2052 V 41 w(sf)p 367 2052
+V 39 w(zeta)p 566 2052 V 42 w(in)m(t)p 716 2052 V 40
+w(e)720 b(Y)112 b(gsl)p 1802 2052 V 40 w(sf)p 1906 2052
+V 40 w(zeta)p 2106 2052 V 41 w(in)m(t\(in)m(t)p 2398
+2052 V 42 w(expr\))150 2162 y(gsl)p 262 2162 V 41 w(sf)p
+367 2162 V 39 w(zeta)p 566 2162 V 42 w(e)868 b(Y)112
+b(gsl)p 1802 2162 V 40 w(sf)p 1906 2162 V 40 w(zeta\(dbl)p
+2268 2162 V 41 w(expr\))150 2271 y(gsl)p 262 2271 V 41
+w(sf)p 367 2271 V 39 w(zetam1)p 687 2271 V 42 w(e)747
+b(Y)112 b(gsl)p 1802 2271 V 40 w(sf)p 1906 2271 V 40
+w(zetam1\(dbl)p 2389 2271 V 41 w(expr\))150 2381 y(gsl)p
+262 2381 V 41 w(sf)p 367 2381 V 39 w(zetam1)p 687 2381
+V 42 w(in)m(t)p 837 2381 V 41 w(e)598 b(Y)112 b(gsl)p
+1802 2381 V 40 w(sf)p 1906 2381 V 40 w(zetam1)p 2227
+2381 V 42 w(in)m(t\(in)m(t)p 2520 2381 V 41 w(expr\))150
+2491 y(gsl)p 262 2491 V 41 w(sf)p 367 2491 V 39 w(hzeta)p
+617 2491 V 41 w(e)818 b(Y)112 b(gsl)p 1802 2491 V 40
+w(sf)p 1906 2491 V 40 w(hzeta\(dbl)p 2319 2491 V 41 w(expr,dbl)p
+2687 2491 V 39 w(expr\))150 2600 y(gsl)p 262 2600 V 41
+w(sf)p 367 2600 V 39 w(eta)p 526 2600 V 41 w(in)m(t)p
+675 2600 V 41 w(e)760 b(Y)112 b(gsl)p 1802 2600 V 40
+w(sf)p 1906 2600 V 40 w(eta)p 2066 2600 V 41 w(in)m(t\(in)m(t)p
+2358 2600 V 42 w(expr\))150 2710 y(gsl)p 262 2710 V 41
+w(sf)p 367 2710 V 39 w(eta)p 526 2710 V 41 w(e)909 b(Y)112
+b(gsl)p 1802 2710 V 40 w(sf)p 1906 2710 V 40 w(eta\(dbl)p
+2228 2710 V 41 w(expr\))150 2910 y Fv(4.1.20)63 b(GSL)41
+b(in)m(terp)s(olation)150 3057 y FE(As)30 b(of)g(v)m(ersion)g(3.9.9)i
+(\(released)f(July)-8 b(,)30 b(2009\),)i FD(NCO)d FE(has)h(wrapp)s(ers)
+e(to)i(the)g FD(GSL)g FE(in)m(terp)s(olation)i(func-)150
+3166 y(tions.)150 3326 y(Giv)m(en)45 b(a)f(set)g(of)g(data)g(p)s(oin)m
+(ts)g(\(x1,y1\)...\(xn,)49 b(yn\))44 b(the)f FD(GSL)h
+FE(functions)f(computes)h(a)g(con)m(tin)m(uous)150 3436
+y(in)m(terp)s(olating)27 b(function)f FD(Y\(x\))h FE(suc)m(h)e(that)i
+FD(Y\(xi\))d(=)g(yi)p FE(.)39 b(The)25 b(in)m(terp)s(olation)i(is)f
+(piecewise)i(smo)s(oth,)f(and)150 3545 y(its)36 b(b)s(eha)m(vior)g(at)h
+(the)f(end-p)s(oin)m(ts)f(is)h(determined)g(b)m(y)f(the)i(t)m(yp)s(e)f
+(of)g(in)m(terp)s(olation)h(used.)56 b(F)-8 b(or)37 b(more)150
+3655 y(information)31 b(consult)f(the)h FD(GSL)f FE(man)m(ual.)150
+3815 y(In)m(terp)s(olation)25 b(with)f Fz(ncap2)f FE(is)i(a)g(t)m(w)m
+(o)g(stage)h(pro)s(cess.)38 b(In)24 b(the)h(\014rst)e(stage,)28
+b(a)c FD(RAM)h FE(v)-5 b(ariable)25 b(is)g(created)150
+3924 y(from)c(the)g(c)m(hosen)h(in)m(terp)s(olating)h(function)e(and)g
+(the)g(data)h(set.)39 b(This)20 b FD(RAM)i FE(v)-5 b(ariable)22
+b(holds)f(in)g(memory)150 4034 y(a)28 b FD(GSL)g FE(in)m(terp)s
+(olation)h(ob)5 b(ject.)41 b(In)26 b(the)i(second)g(stage,)i(p)s(oin)m
+(ts)e(along)g(the)g(in)m(terp)s(olating)h(function)f(are)150
+4144 y(calculated.)53 b(If)33 b(y)m(ou)h(ha)m(v)m(e)h(a)f(v)m(ery)g
+(large)h(data)f(set)g(or)g(are)g(in)m(terp)s(olating)h(man)m(y)f(sets)g
+(then)f(consider)150 4253 y(deleting)e(the)g FD(RAM)g
+FE(v)-5 b(ariable)31 b(when)e(it)i(is)g(redundan)m(t.)39
+b(Use)31 b(the)f(command)h Fz(ram_delete\(var_nm\))p
+FE(.)150 4413 y(A)f(simple)h(example)390 4573 y Fz
+(x_in[$lon]={1.0,2.0,3.0,)o(4.0})o(;)390 4682 y
+(y_in[$lon]={1.1,1.2,1.5,)o(1.8})o(;)390 4902 y(//)47
+b(Ram)g(variable)f(is)h(declared)e(and)i(defined)f(here)390
+5011 y(gsl_interp_cspline\(&ram_)o(sp,x)o(_in,)o(y_i)o(n\);)390
+5230 y(x_out[$lon_grd]={1.1,2.0)o(,3.0)o(,3.1)o(,3.)o(99};)p
+eop end
+%%Page: 155 161
+TeXDict begin 155 160 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(155)390 299 y Fz
+(y_out=gsl_spline_eval\(ra)o(m_sp)o(,x_o)o(ut\))o(;)390
+408 y(y2=gsl_spline_eval\(ram_s)o(p,1.)o(3\);)390 518
+y(y3=gsl_spline_eval\(ram_s)o(p,0.)o(0\);)390 628 y
+(ram_delete\(ram_sp\);)390 847 y(print\(y_out\);)44 b(//)j(1.10472,)f
+(1.2,)h(1.4,)f(1.42658,)g(1.69680002)390 956 y(print\(y2\);)188
+b(//)47 b(1.12454)390 1066 y(print\(y3\);)188 b(//)47
+b('_')150 1250 y FE(Note)31 b(in)f(the)g(ab)s(o)m(v)m(e)h(example)f(y3)
+g(is)g(set)h(to)f('missing)g(v)-5 b(alue')31 b(b)s(ecause)f(0.0)h
+(isn't)f(within)f(the)h(input)f(X)150 1360 y(range.)275
+1543 y Fa(GSL)h Fr(In)m(terp)s(olation)i(T)m(yp)s(es)150
+1653 y FE(All)f(the)g(in)m(terp)s(olation)g(functions)f(ha)m(v)m(e)i(b)
+s(een)d(implemen)m(ted.)42 b(These)30 b(are:)150 1763
+y(gsl)p 262 1763 28 4 v 41 w(in)m(terp)p 538 1763 V 40
+w(linear\(\))150 1872 y(gsl)p 262 1872 V 41 w(in)m(terp)p
+538 1872 V 40 w(p)s(olynomial\(\))150 1982 y(gsl)p 262
+1982 V 41 w(in)m(terp)p 538 1982 V 40 w(cspline\(\))150
+2091 y(gsl)p 262 2091 V 41 w(in)m(terp)p 538 2091 V 40
+w(cspline)p 846 2091 V 40 w(p)s(erio)s(dic\(\))150 2201
+y(gsl)p 262 2201 V 41 w(in)m(terp)p 538 2201 V 40 w(akima\(\))150
+2311 y(gsl)p 262 2311 V 41 w(in)m(terp)p 538 2311 V 40
+w(akima)p 817 2311 V 41 w(p)s(erio)s(dic\(\))180 2823
+y Fr(Ev)-5 b(aluation)31 b(of)g(In)m(terp)s(olating)g(T)m(yp)s(es)150
+2933 y(Implemen)m(ted)150 3043 y FE(gsl)p 262 3043 V
+41 w(spline)p 531 3043 V 39 w(ev)-5 b(al\(\))150 3152
+y Fr(Unimplemen)m(ted)150 3262 y FE(gsl)p 262 3262 V
+41 w(spline)p 531 3262 V 39 w(deriv\(\))150 3371 y(gsl)p
+262 3371 V 41 w(spline)p 531 3371 V 39 w(deriv2\(\))150
+3481 y(gsl)p 262 3481 V 41 w(spline)p 531 3481 V 39 w(in)m(teg\(\))150
+3839 y Fv(4.1.21)63 b(GSL)41 b(least-squares)h(\014tting)150
+3986 y FE(Least)26 b(Squares)f(\014tting)g(is)h(a)f(metho)s(d)g(of)g
 (calculating)j(a)d(straigh)m(t)i(line)f(through)e(a)i(set)g(of)f(exp)s
-(erimen)m(tal)150 3107 y(data)c(p)s(oin)m(ts)f(in)g(the)h(XY)f(plane.)
+(erimen)m(tal)150 4095 y(data)c(p)s(oin)m(ts)f(in)g(the)h(XY)f(plane.)
 38 b(The)19 b(data)i(ma)m(yb)s(e)g(w)m(eigh)m(ted)h(or)e(un)m(w)m(eigh)
-m(ted.)38 b(F)-8 b(or)21 b(more)g(information)150 3217
-y(please)31 b(refer)f(to)h(the)g FC(GSL)f FD(man)m(ual.)150
-3391 y(These)g FC(GSL)h FD(functions)f(fall)h(in)m(to)g(three)f
-(categories:)150 3501 y Fq(A\))g FD(Fitting)i(data)f(to)g(Y=c0)p
-Fy(+)p FD(c1*X)150 3611 y Fq(B\))f FD(Fitting)i(data)f(\(through)f(the)
-h(origin\))g(Y=c1*X)150 3720 y Fq(C\))f FD(Multi-parameter)i(\014tting)
-f(\(not)g(y)m(et)g(implemen)m(ted\))275 4004 y Fq(Section)g(A)150
-4224 y Fy(status=)p Fq(gsl)p 598 4224 28 5 v 39 w(\014t)p
-723 4224 V 40 w(linear)150 4333 y Fy(\(data_x,stride_x,data_y,)o(stri)o
+m(ted.)38 b(F)-8 b(or)21 b(more)g(information)150 4205
+y(please)31 b(refer)f(to)h(the)g FD(GSL)f FE(man)m(ual.)150
+4389 y(These)g FD(GSL)h FE(functions)f(fall)h(in)m(to)g(three)f
+(categories:)150 4498 y Fr(A\))g FE(Fitting)i(data)f(to)g(Y=c0)p
+Fz(+)p FE(c1*X)150 4608 y Fr(B\))f FE(Fitting)i(data)f(\(through)f(the)
+h(origin\))g(Y=c1*X)150 4718 y Fr(C\))f FE(Multi-parameter)i(\014tting)
+f(\(not)g(y)m(et)g(implemen)m(ted\))275 5011 y Fr(Section)g(A)150
+5230 y Fz(status=)p Fr(gsl)p 598 5230 28 5 v 39 w(\014t)p
+723 5230 V 40 w(linear)150 5340 y Fz(\(data_x,stride_x,data_y,)o(stri)o
 (de_y)o(,n,)o(&co,)o(&c1,)o(&co)o(v00,)o(&cov)o(01,)o(&cov)o(11,&)o
-(sum)o(sq\))150 4508 y Fq(Input)e(v)-5 b(ariables)p FD(:)42
-b(data)p 1001 4508 28 4 v 40 w(x,)31 b(stride)p 1368
-4508 V 40 w(x,)f(data)p 1687 4508 V 41 w(y)-8 b(,)31
-b(stride)p 2047 4508 V 40 w(y)-8 b(,)31 b(n)150 4617
-y(F)-8 b(rom)36 b(the)g(ab)s(o)m(v)m(e)g(v)-5 b(ariables)36
+(sum)o(sq\))p eop end
+%%Page: 156 162
+TeXDict begin 156 161 bop 150 -116 a FE(156)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Fr(Input)f(v)-5 b(ariables)p
+FE(:)42 b(data)p 1001 299 28 4 v 40 w(x,)31 b(stride)p
+1368 299 V 40 w(x,)f(data)p 1687 299 V 41 w(y)-8 b(,)31
+b(stride)p 2047 299 V 40 w(y)-8 b(,)31 b(n)150 408 y(F)-8
+b(rom)36 b(the)g(ab)s(o)m(v)m(e)g(v)-5 b(ariables)36
 b(an)g(X)f(and)g(Y)h(v)m(ector)h(b)s(oth)e(of)g(length)h('n')g(are)g
-(deriv)m(ed.)56 b(If)35 b(data)p 3551 4617 V 41 w(x)g(or)150
-4727 y(data)p 332 4727 V 41 w(y)e(is)g(less)g(than)g(t)m(yp)s(e)g
-(double)g(then)g(it)g(is)g(con)m(v)m(erted)i(to)f(t)m(yp)s(e)f
-Fy(double)p FD(.)47 b(It)33 b(is)g(up)f(to)i(y)m(ou)f(to)h(do)150
-4837 y(b)s(ounds)g(c)m(hec)m(king)39 b(on)e(the)f(input)g(data.)60
-b(F)-8 b(or)38 b(example)f(if)g(stride)p 2501 4837 V
-40 w(x=3)g(and)f(n=8)g(then)g(the)h(size)h(of)150 4946
-y(data)p 332 4946 V 41 w(x)30 b(m)m(ust)g(b)s(e)g(at)h(least)h(24)150
-5121 y Fq(Output)e(v)-5 b(ariables)p FD(:)41 b(c0,)32
-b(c1,)f(co)m(v00,)i(co)m(v01,)f(co)m(v11,sumsq)150 5230
+(deriv)m(ed.)56 b(If)35 b(data)p 3551 408 V 41 w(x)g(or)150
+518 y(data)p 332 518 V 41 w(y)e(is)g(less)g(than)g(t)m(yp)s(e)g(double)
+g(then)g(it)g(is)g(con)m(v)m(erted)i(to)f(t)m(yp)s(e)f
+Fz(double)p FE(.)47 b(It)33 b(is)g(up)f(to)i(y)m(ou)f(to)h(do)150
+628 y(b)s(ounds)g(c)m(hec)m(king)39 b(on)e(the)f(input)g(data.)60
+b(F)-8 b(or)38 b(example)f(if)g(stride)p 2501 628 V 40
+w(x=3)g(and)f(n=8)g(then)g(the)h(size)h(of)150 737 y(data)p
+332 737 V 41 w(x)30 b(m)m(ust)g(b)s(e)g(at)h(least)h(24)150
+902 y Fr(Output)e(v)-5 b(ariables)p FE(:)41 b(c0,)32
+b(c1,)f(co)m(v00,)i(co)m(v01,)f(co)m(v11,sumsq)150 1011
 y(The)41 b('&')h(pre\014x)e(indicates)j(that)f(these)g(are)g(call-b)m
 (y-reference)i(v)-5 b(ariables.)75 b(If)41 b(an)m(y)h(of)g(the)f
-(output)150 5340 y(v)-5 b(ariables)31 b(don't)f(exist)i(prior)d(to)i
+(output)150 1121 y(v)-5 b(ariables)31 b(don't)f(exist)i(prior)d(to)i
 (the)g(call)h(then)e(they)g(are)h(created)g(on)g(the)f(\015y)g(as)g
-(scalar)i(v)-5 b(ariables)31 b(of)p eop end
-%%Page: 144 150
-TeXDict begin 144 149 bop 150 -116 a FD(144)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(t)m(yp)s(e)i Fy(double)p
-FD(.)45 b(If)32 b(they)g(already)h(exist)g(then)f(their)g(existing)h(v)
--5 b(alue)33 b(is)f(o)m(v)m(erwritten.)48 b(If)32 b(the)g(function)150
-408 y(call)g(is)e(successful)g(then)g Fy(status=0)p FD(.)275
-569 y Fy(status=)e Fq(gsl)p 751 569 28 5 v 40 w(\014t)p
-877 569 V 40 w(wlinear)p Fy(\(data_x,stride_x,data_w,str)o(ide)o(_w,d)o
-(ata_)o(y,s)o(trid)o(e_)150 678 y(y,n,&co,&c1,&cov00,&cov0)o(1,&c)o
-(ov11)o(,&c)o(hisq)o(\))150 838 y FD(Similar)f(to)i(the)e(ab)s(o)m(v)m
-(e)i(call)g(except)f(it)g(creates)h(an)e(additional)i(w)m(eigh)m(ting)g
-(v)m(ector)g(from)e(the)g(v)-5 b(ariables)150 948 y(data)p
-332 948 28 4 v 41 w(w,)30 b(stride)p 717 948 V 40 w(w,)g(n)275
-1108 y Fy(data_y_out=)p Fq(gsl)p 915 1108 28 5 v 37 w(\014t)p
-1038 1108 V 40 w(linear)p 1304 1108 V 41 w(est)p Fy
-(\(data_x,c0,c1,cov00,cov01,)o(cov)o(11\))150 1268 y
-FD(This)g(function)g(calculates)i(y)f(v)-5 b(alues)30
-b(along)i(the)e(line)h(Y=c0)p Fy(+)p FD(c1*X)275 1648
-y Fq(Section)g(B)150 1867 y Fy(status=)p Fq(gsl)p 598
-1867 V 39 w(\014t)p 723 1867 V 40 w(m)m(ul)p Fy
+(scalar)i(v)-5 b(ariables)31 b(of)150 1230 y(t)m(yp)s(e)h
+Fz(double)p FE(.)45 b(If)32 b(they)g(already)h(exist)g(then)f(their)g
+(existing)h(v)-5 b(alue)33 b(is)f(o)m(v)m(erwritten.)48
+b(If)32 b(the)g(function)150 1340 y(call)g(is)e(successful)g(then)g
+Fz(status=0)p FE(.)275 1504 y Fz(status=)e Fr(gsl)p 751
+1504 28 5 v 40 w(\014t)p 877 1504 V 40 w(wlinear)p Fz
+(\(data_x,stride_x,data_w,str)o(ide)o(_w,d)o(ata_)o(y,s)o(trid)o(e_)150
+1614 y(y,n,&co,&c1,&cov00,&cov0)o(1,&c)o(ov11)o(,&c)o(hisq)o(\))150
+1778 y FE(Similar)f(to)i(the)e(ab)s(o)m(v)m(e)i(call)g(except)f(it)g
+(creates)h(an)e(additional)i(w)m(eigh)m(ting)g(v)m(ector)g(from)e(the)g
+(v)-5 b(ariables)150 1888 y(data)p 332 1888 28 4 v 41
+w(w,)30 b(stride)p 717 1888 V 40 w(w,)g(n)275 2052 y
+Fz(data_y_out=)p Fr(gsl)p 915 2052 28 5 v 37 w(\014t)p
+1038 2052 V 40 w(linear)p 1304 2052 V 41 w(est)p Fz
+(\(data_x,c0,c1,cov00,cov01,)o(cov)o(11\))150 2217 y
+FE(This)g(function)g(calculates)i(y)f(v)-5 b(alues)30
+b(along)i(the)e(line)h(Y=c0)p Fz(+)p FE(c1*X)275 2600
+y Fr(Section)g(B)150 2819 y Fz(status=)p Fr(gsl)p 598
+2819 V 39 w(\014t)p 723 2819 V 40 w(m)m(ul)p Fz
 (\(data_x,stride_x,data_y)o(,str)o(ide)o(_y,n)o(,&c1)o(,&c)o(ov11)o
-(,&su)o(msq)o(\))150 2027 y Fq(Input)e(v)-5 b(ariables)p
-FD(:)42 b(data)p 1001 2027 28 4 v 40 w(x,)31 b(stride)p
-1368 2027 V 40 w(x,)f(data)p 1687 2027 V 41 w(y)-8 b(,)31
-b(stride)p 2047 2027 V 40 w(y)-8 b(,)31 b(n)150 2137
+(,&su)o(msq)o(\))150 2984 y Fr(Input)e(v)-5 b(ariables)p
+FE(:)42 b(data)p 1001 2984 28 4 v 40 w(x,)31 b(stride)p
+1368 2984 V 40 w(x,)f(data)p 1687 2984 V 41 w(y)-8 b(,)31
+b(stride)p 2047 2984 V 40 w(y)-8 b(,)31 b(n)150 3093
 y(F)-8 b(rom)36 b(the)g(ab)s(o)m(v)m(e)g(v)-5 b(ariables)36
 b(an)g(X)f(and)g(Y)h(v)m(ector)h(b)s(oth)e(of)g(length)h('n')g(are)g
-(deriv)m(ed.)56 b(If)35 b(data)p 3551 2137 V 41 w(x)g(or)150
-2246 y(data)p 332 2246 V 41 w(y)30 b(is)g(less)h(than)f(t)m(yp)s(e)h
-Fy(double)d FD(then)j(it)f(is)h(con)m(v)m(erted)h(to)f(t)m(yp)s(e)f
-Fy(double)p FD(.)150 2516 y Fq(Output)g(v)-5 b(ariables)p
-FD(:)41 b(c1,co)m(v11,sumsq)275 2786 y Fy(status=)28
-b Fq(gsl)p 751 2786 28 5 v 40 w(\014t)p 877 2786 V 40
-w(wm)m(ul)p Fy(\(data_x,stride_x,data_w,s)o(tri)o(de_w)o(,dat)o(a_y)o
-(,str)o(ide_)150 2895 y(y,n,&c1,&cov11,&sumsq\))150 3055
-y FD(Similar)f(to)i(the)e(ab)s(o)m(v)m(e)i(call)g(except)f(it)g
+(deriv)m(ed.)56 b(If)35 b(data)p 3551 3093 V 41 w(x)g(or)150
+3203 y(data)p 332 3203 V 41 w(y)30 b(is)g(less)h(than)f(t)m(yp)s(e)h
+Fz(double)d FE(then)j(it)f(is)h(con)m(v)m(erted)h(to)f(t)m(yp)s(e)f
+Fz(double)p FE(.)150 3477 y Fr(Output)g(v)-5 b(ariables)p
+FE(:)41 b(c1,co)m(v11,sumsq)275 3751 y Fz(status=)28
+b Fr(gsl)p 751 3751 28 5 v 40 w(\014t)p 877 3751 V 40
+w(wm)m(ul)p Fz(\(data_x,stride_x,data_w,s)o(tri)o(de_w)o(,dat)o(a_y)o
+(,str)o(ide_)150 3861 y(y,n,&c1,&cov11,&sumsq\))150 4025
+y FE(Similar)f(to)i(the)e(ab)s(o)m(v)m(e)i(call)g(except)f(it)g
 (creates)h(an)e(additional)i(w)m(eigh)m(ting)g(v)m(ector)g(from)e(the)g
-(v)-5 b(ariables)150 3165 y(data)p 332 3165 28 4 v 41
-w(w,)30 b(stride)p 717 3165 V 40 w(w,)g(n)275 3325 y
-Fy(data_y_out=)p Fq(gsl)p 915 3325 28 5 v 37 w(\014t)p
-1038 3325 V 40 w(m)m(ul)p 1227 3325 V 40 w(est)p Fy
-(\(data_x,c0,c1,cov11\))150 3485 y FD(This)g(function)g(calculates)i(y)
-f(v)-5 b(alues)30 b(along)i(the)e(line)h(Y=c1*X)150 3865
-y(The)f(b)s(elo)m(w)g(example)i(sho)m(ws)e Fq(gsl)p 1324
-3865 V 40 w(\014t)p 1450 3865 V 40 w(linear\(\))i FD(in)e(action)390
-4025 y Fy(defdim\("d1",10\);)390 4134 y(xin[d1]={1,2,3,4,5,6,7,8)o
-(,9,1)o(0.0})o(;)390 4244 y(yin[d1]={3.1,6.2,9.1,12.)o(2,15)o(.1,1)o
-(8.2)o(,21.)o(3,24)o(.0,)o(27.0)o(,30.)o(0};)390 4354
+(v)-5 b(ariables)150 4134 y(data)p 332 4134 28 4 v 41
+w(w,)30 b(stride)p 717 4134 V 40 w(w,)g(n)275 4299 y
+Fz(data_y_out=)p Fr(gsl)p 915 4299 28 5 v 37 w(\014t)p
+1038 4299 V 40 w(m)m(ul)p 1227 4299 V 40 w(est)p Fz
+(\(data_x,c0,c1,cov11\))150 4463 y FE(This)g(function)g(calculates)i(y)
+f(v)-5 b(alues)30 b(along)i(the)e(line)h(Y=c1*X)150 4847
+y(The)f(b)s(elo)m(w)g(example)i(sho)m(ws)e Fr(gsl)p 1324
+4847 V 40 w(\014t)p 1450 4847 V 40 w(linear\(\))i FE(in)e(action)390
+5011 y Fz(defdim\("d1",10\);)390 5121 y(xin[d1]={1,2,3,4,5,6,7,8)o
+(,9,1)o(0.0})o(;)390 5230 y(yin[d1]={3.1,6.2,9.1,12.)o(2,15)o(.1,1)o
+(8.2)o(,21.)o(3,24)o(.0,)o(27.0)o(,30.)o(0};)390 5340
 y(gsl_fit_linear\(xin,1,yin)o(,1,$)o(d1.s)o(ize)o(,&c0)o(,&c1)o(,&c)o
-(ov00)o(,&co)o(v01)o(,&co)o(v11,)o(&su)o(msq\))o(;)390
-4463 y(print\(c0\);)93 b(//)47 b(0.2)390 4573 y(print\(c1\);)93
-b(//)47 b(2.98545454545)390 4902 y(defdim\("e1",4\);)390
-5011 y(xout[e1]={1.0,3.0,4.0,11)o(};)390 5121 y(yout[e1]=0.0;)390
-5340 y(yout=gsl_fit_linear_est\()o(xout)o(,)42 b(c0,c1,)k(cov00,cov01,)
-e(cov11,)i(sumsq\);)p eop end
-%%Page: 145 151
-TeXDict begin 145 150 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(145)390
-408 y Fy(print\(yout\);)92 b(//)47 b(3.18545454545)e(,9.15636363636,)e
-(,12.1418181818)h(,33.04)150 993 y Fu(4.1.22)63 b(GSL)41
-b(statistics)150 1140 y FD(W)-8 b(rapp)s(ers)44 b(for)h(most)g(of)g
-(the)g FC(GSL)g FD(Statistical)i(functions)e(ha)m(v)m(e)h(b)s(een)e
-(implemen)m(ted.)84 b(The)45 b FC(GSL)150 1250 y FD(function)34
+(ov00)o(,&co)o(v01)o(,&co)o(v11,)o(&su)o(msq\))o(;)p
+eop end
+%%Page: 157 163
+TeXDict begin 157 162 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(157)390 299 y Fz(print\(c0\);)93
+b(//)47 b(0.2)390 408 y(print\(c1\);)93 b(//)47 b(2.98545454545)390
+737 y(defdim\("e1",4\);)390 847 y(xout[e1]={1.0,3.0,4.0,11)o(};)390
+956 y(yout[e1]=0.0;)390 1176 y(yout=gsl_fit_linear_est\()o(xout)o(,)42
+b(c0,c1,)k(cov00,cov01,)e(cov11,)i(sumsq\);)390 1395
+y(print\(yout\);)92 b(//)47 b(3.18545454545)e(,9.15636363636,)e
+(,12.1418181818)h(,33.04)150 1979 y Fv(4.1.22)63 b(GSL)41
+b(statistics)150 2126 y FE(W)-8 b(rapp)s(ers)44 b(for)h(most)g(of)g
+(the)g FD(GSL)g FE(Statistical)i(functions)e(ha)m(v)m(e)h(b)s(een)e
+(implemen)m(ted.)84 b(The)45 b FD(GSL)150 2236 y FE(function)34
 b(names)g(include)g(a)h(t)m(yp)s(e)f(sp)s(eci\014er)g(\(except)h(for)f
 (t)m(yp)s(e)g(double)g(functions\).)52 b(T)-8 b(o)35
-b(obtain)g(the)150 1359 y(equiv)-5 b(alen)m(t)36 b FC(NCO)f
-FD(name)g(simply)f(remo)m(v)m(e)j(the)e(t)m(yp)s(e)g(sp)s(eci\014er;)h
+b(obtain)g(the)150 2345 y(equiv)-5 b(alen)m(t)36 b FD(NCO)f
+FE(name)g(simply)f(remo)m(v)m(e)j(the)e(t)m(yp)s(e)g(sp)s(eci\014er;)h
 (then)f(dep)s(ending)e(on)i(the)g(data)h(t)m(yp)s(e)150
-1469 y(the)29 b(appropriate)f FC(GSL)g FD(function)h(is)f(called.)41
+2455 y(the)29 b(appropriate)f FD(GSL)g FE(function)h(is)f(called.)41
 b(The)28 b(w)m(eighed)h(statistical)i(functions)d(e.g.,)61
-b Fy(gsl_stats_)150 1578 y(wvariance\(\))33 b FD(are)j(only)f
-(de\014ned)g(in)g FC(GSL)h FD(for)f(\015oating)i(p)s(oin)m(t)e(t)m(yp)s
+b Fz(gsl_stats_)150 2565 y(wvariance\(\))33 b FE(are)j(only)f
+(de\014ned)g(in)g FD(GSL)h FE(for)f(\015oating)i(p)s(oin)m(t)e(t)m(yp)s
 (es;)k(so)d(y)m(our)f(data)h(m)m(ust)g(of)g(t)m(yp)s(e)150
-1688 y Fy(float)h FD(or)h Fy(double)e FD(otherwise)i(ncap2)h(will)f
+2674 y Fz(float)h FE(or)h Fz(double)e FE(otherwise)i(ncap2)h(will)f
 (emit)h(an)f(error)g(message.)64 b(T)-8 b(o)39 b(view)f(the)g(implemen)
-m(ted)150 1798 y(functions)30 b(use)g(the)h(shell)f(command)g
-Fy(ncap2)f(-f|grep)g(_stats)150 1959 y FC(GSL)h FD(F)-8
-b(unctions)390 2121 y Fy(short)46 b(gsl_stats_max)f(\(short)h(data[],)f
-(size_t)i(stride,)e(size_t)h(n\);)390 2230 y(double)g
+m(ted)150 2784 y(functions)30 b(use)g(the)h(shell)f(command)g
+Fz(ncap2)f(-f|grep)g(_stats)150 2945 y FD(GSL)h FE(F)-8
+b(unctions)390 3107 y Fz(short)46 b(gsl_stats_max)f(\(short)h(data[],)f
+(size_t)i(stride,)e(size_t)h(n\);)390 3217 y(double)g
 (gsl_stats_int_mean)d(\(int)k(data[],)e(size_t)h(stride,)g(size_t)g
-(n\);)390 2340 y(double)g(gsl_stats_short_sd_with_f)o(ixe)o(d_me)o(an)c
+(n\);)390 3326 y(double)g(gsl_stats_short_sd_with_f)o(ixe)o(d_me)o(an)c
 (\(short)k(data[],)f(size_t)i(stride,)e(size_t)h(n,)i(double)e(mean\);)
-390 2450 y(double)g(gsl_stats_wmean)e(\(double)i(w[],)g(size_t)g
+390 3436 y(double)g(gsl_stats_wmean)e(\(double)i(w[],)g(size_t)g
 (wstride,)g(double)g(data[],)g(size_t)g(stride,)g(size_t)g(n\);)390
-2559 y(double)g(gsl_stats_quantile_from_s)o(ort)o(ed_d)o(ata)41
+3545 y(double)g(gsl_stats_quantile_from_s)o(ort)o(ed_d)o(ata)41
 b(\(double)46 b(sorted_data[],)e(size_t)i(stride,)g(size_t)g(n,)h
-(double)f(f\))h(;)150 2721 y FD(Equiv)-5 b(alen)m(t)31
-b(ncap2)g(wrapp)s(er)d(functions)390 2882 y Fy(short)46
+(double)f(f\))h(;)150 3707 y FE(Equiv)-5 b(alen)m(t)31
+b(ncap2)g(wrapp)s(er)d(functions)390 3869 y Fz(short)46
 b(gsl_stats_max)f(\(var_data,)g(data_stride,)f(n\);)390
-2992 y(double)i(gsl_stats_mean)e(\(var_data,)h(data_stride,)f(n\);)390
-3102 y(double)i(gsl_stats_sd_with_fixed_m)o(ean)41 b(\(var_data,)k
-(data_stride,)g(n,)i(var_mean\);)390 3211 y(double)f(gsl_stats_wmean)e
+3978 y(double)i(gsl_stats_mean)e(\(var_data,)h(data_stride,)f(n\);)390
+4088 y(double)i(gsl_stats_sd_with_fixed_m)o(ean)41 b(\(var_data,)k
+(data_stride,)g(n,)i(var_mean\);)390 4198 y(double)f(gsl_stats_wmean)e
 (\(var_weight,)g(weight_stride,)g(var_data,)h(data_stride,)g(n,)i
-(var_mean\);)390 3321 y(double)f(gsl_stats_quantile_from_s)o(ort)o
+(var_mean\);)390 4307 y(double)f(gsl_stats_quantile_from_s)o(ort)o
 (ed_d)o(ata)41 b(\(var_sorted_data,)i(data_stride,)i(n,)i(var_f\))f(;)
-150 3482 y FC(GSL)26 b FD(has)g(no)g(notion)h(of)f(missing)g(v)-5
+150 4469 y FD(GSL)26 b FE(has)g(no)g(notion)h(of)f(missing)g(v)-5
 b(alues)27 b(or)f(dimensionalit)m(y)h(b)s(ey)m(ond)f(one.)39
-b(If)26 b(y)m(our)g(data)h(has)f(missing)150 3592 y(v)-5
+b(If)26 b(y)m(our)g(data)h(has)f(missing)150 4578 y(v)-5
 b(alues)38 b(whic)m(h)f(y)m(ou)h(w)m(an)m(t)h(ignored)f(in)f(the)h
-(calculations)h(then)f(use)f(the)h Fy(ncap2)e FD(built)i(in)f
-(aggregate)150 3702 y(functions\()32 b(Section)h(4.1.11)h([Metho)s(ds)f
-(and)e(functions],)i(page)g(119)g(\).)47 b(The)31 b FC(GSL)i
-FD(functions)e(op)s(erate)150 3811 y(on)36 b(a)h(v)m(ector)g(of)g(v)-5
+(calculations)h(then)f(use)f(the)h Fz(ncap2)e FE(built)i(in)f
+(aggregate)150 4688 y(functions\()32 b(Section)h(4.1.11)h([Metho)s(ds)f
+(and)e(functions],)i(page)g(131)g(\).)47 b(The)31 b FD(GSL)i
+FE(functions)e(op)s(erate)150 4798 y(on)36 b(a)h(v)m(ector)g(of)g(v)-5
 b(alues)36 b(created)h(from)f(the)h(v)-5 b(ar)p 1866
-3811 28 4 v 40 w(data/stride/n)37 b(argumen)m(ts.)58
-b(The)36 b(ncap)g(wrapp)s(ers)150 3921 y(c)m(hec)m(k)29
+4798 28 4 v 40 w(data/stride/n)37 b(argumen)m(ts.)58
+b(The)36 b(ncap)g(wrapp)s(ers)150 4907 y(c)m(hec)m(k)29
 b(that)f(there)f(is)h(no)f(b)s(ounding)f(error)h(with)g(regard)g(to)h
 (the)g(size)g(of)f(the)h(data)g(and)f(the)g(\014nal)g(v)-5
-b(alue)150 4030 y(in)30 b(the)h(v)m(ector.)275 4192 y(Some)f(examples)
-390 4354 y Fy(a1[time]={1,2,3,4,5,6,7,)o(8,9,)o(10};)390
-4573 y(a1_avg=gsl_stats_mean\(a1)o(,1,1)o(0\);)390 4682
-y(print\(a1_avg\);)44 b(//)j(5.5)390 4902 y(a1_var=gsl_stats_varianc)o
-(e\(a1)o(,4,3)o(\);)390 5011 y(print\(a1_var\);)d(//)j(16.0)390
-5230 y(//)g(bounding)f(error,)g(vector)g(attempts)f(to)j(access)e
-(element)g(a1\(10\))390 5340 y(a1_sd=gsl_stats_sd\(a1,5,)o(3\);)p
+b(alue)150 5017 y(in)30 b(the)h(v)m(ector.)275 5178 y(Some)f(examples)
+390 5340 y Fz(a1[time]={1,2,3,4,5,6,7,)o(8,9,)o(10};)p
 eop end
-%%Page: 146 152
-TeXDict begin 146 151 bop 150 -116 a FD(146)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(F)-8 b(or)37 b(functions)f(with)g
-(the)h(signature)f Fq(func)p 1669 299 28 5 v 40 w(nm\(v)-5
-b(ar)p 1997 299 V 39 w(data,data)p 2409 299 V 41 w(stride,n\))p
-FD(,)39 b(one)d(ma)m(y)h(omit)g(the)g(sec-)150 408 y(ond)43
-b(or)h(third)f(argumen)m(ts.)81 b(The)43 b(default)h(v)-5
-b(alue)45 b(for)e Fz(stride)49 b FD(is)44 b Fy(1)p FD(.)81
-b(The)43 b(default)h(v)-5 b(alue)44 b(for)g Fz(n)f FD(is)150
-518 y Fy(1+\(data.size\(\)-1\)/stride)o FD(.)390 688
-y Fy(//)k(Following)e(statements)g(are)i(equvalent)390
-798 y(n2=gsl_stats_max\(a1,1,10)o(\))390 907 y
-(n2=gsl_stats_max\(a1,1\);)390 1017 y(n2=gsl_stats_max\(a1\);)390
-1236 y(//)g(Following)e(statements)g(are)i(equvalent)390
-1345 y(n3=gsl_stats_median_from)o(_sor)o(ted_)o(dat)o(a\(a1)o(,2,5)o
-(\);)390 1455 y(n3=gsl_stats_median_from)o(_sor)o(ted_)o(dat)o(a\(a1)o
-(,2\);)390 1674 y(//)g(Following)e(statements)g(are)i(NOT)g(equvalent)
-390 1784 y(n4=gsl_stats_kurtosis\(a1)o(,3,2)o(\);)390
-1893 y(n4=gsl_stats_kurtosis\(a1)o(,3\);)41 b(//default)k(n=4)275
-2063 y FD(The)22 b(follo)m(wing)i(example)f(illustrates)h(some)f(of)g
+%%Page: 158 164
+TeXDict begin 158 163 bop 150 -116 a FE(158)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 408 y Fz(a1_avg=gsl_stats_mean\(a1)o
+(,1,1)o(0\);)390 518 y(print\(a1_avg\);)44 b(//)j(5.5)390
+737 y(a1_var=gsl_stats_varianc)o(e\(a1)o(,4,3)o(\);)390
+847 y(print\(a1_var\);)d(//)j(16.0)390 1066 y(//)g(bounding)f(error,)g
+(vector)g(attempts)f(to)j(access)e(element)g(a1\(10\))390
+1176 y(a1_sd=gsl_stats_sd\(a1,5,)o(3\);)150 1340 y FE(F)-8
+b(or)37 b(functions)f(with)g(the)h(signature)f Fr(func)p
+1669 1340 28 5 v 40 w(nm\(v)-5 b(ar)p 1997 1340 V 39
+w(data,data)p 2409 1340 V 41 w(stride,n\))p FE(,)39 b(one)d(ma)m(y)h
+(omit)g(the)g(sec-)150 1450 y(ond)43 b(or)h(third)f(argumen)m(ts.)81
+b(The)43 b(default)h(v)-5 b(alue)45 b(for)e FA(stride)49
+b FE(is)44 b Fz(1)p FE(.)81 b(The)43 b(default)h(v)-5
+b(alue)44 b(for)g FA(n)f FE(is)150 1559 y Fz
+(1+\(data.size\(\)-1\)/stride)o FE(.)390 1724 y Fz(//)k(Following)e
+(statements)g(are)i(equvalent)390 1833 y(n2=gsl_stats_max\(a1,1,10)o
+(\))390 1943 y(n2=gsl_stats_max\(a1,1\);)390 2052 y
+(n2=gsl_stats_max\(a1\);)390 2271 y(//)g(Following)e(statements)g(are)i
+(equvalent)390 2381 y(n3=gsl_stats_median_from)o(_sor)o(ted_)o(dat)o
+(a\(a1)o(,2,5)o(\);)390 2491 y(n3=gsl_stats_median_from)o(_sor)o(ted_)o
+(dat)o(a\(a1)o(,2\);)390 2710 y(//)g(Following)e(statements)g(are)i
+(NOT)g(equvalent)390 2819 y(n4=gsl_stats_kurtosis\(a1)o(,3,2)o(\);)390
+2929 y(n4=gsl_stats_kurtosis\(a1)o(,3\);)41 b(//default)k(n=4)275
+3093 y FE(The)22 b(follo)m(wing)i(example)f(illustrates)h(some)f(of)g
 (the)f(w)m(eigh)m(ted)i(functions.)38 b(The)22 b(data)h(are)g(randomly)
-150 2173 y(generated.)42 b(In)29 b(this)i(case)g(the)g(v)-5
+150 3203 y(generated.)42 b(In)29 b(this)i(case)g(the)g(v)-5
 b(alue)30 b(of)h(the)g(w)m(eigh)m(t)g(for)g(eac)m(h)g(datum)f(is)g
-(either)h(0.0)h(or)e(1.0)390 2343 y Fy(defdim\("r1",2000\);)390
-2452 y(data[r1]=1.0;)390 2671 y(//)47 b(Fill)g(with)f(random)h(numbers)
-e([0.0,10.0\))390 2781 y(data=10.0*gsl_rng_unifor)o(m\(da)o(ta\);)390
-3000 y(//)i(Create)f(a)i(weighting)d(variable)390 3110
-y(weight=\(data>4.0\);)390 3329 y(wmean=gsl_stats_wmean\(we)o(ight)o
-(,1,d)o(ata)o(,1,$)o(r1.s)o(ize)o(\);)390 3439 y(print\(wmean\);)390
-3658 y(wsd=gsl_stats_wsd\(weight)o(,1,d)o(ata,)o(1,$)o(r1.s)o(ize\))o
-(;)390 3767 y(print\(wsd\);)390 3987 y(//)i(number)f(of)h(values)g(in)g
-(data)f(that)h(are)g(greater)f(than)g(4)390 4096 y
-(weight_size=weight.total)o(\(\);)390 4206 y(print\(weight_size\);)390
-4425 y(//)h(print)g(min/max)e(of)j(data)390 4534 y
-(dmin=data.gsl_stats_min\()o(\);)390 4644 y(dmax=data.gsl_stats_max\()o
-(\);)390 4754 y(print\(dmin\);print\(dmax\);)150 4974
-y Fu(4.1.23)63 b(GSL)41 b(random)h(n)m(um)m(b)s(er)f(generation)150
-5121 y FD(The)j FC(GSL)h FD(library)f(has)g(a)h(large)h(n)m(um)m(b)s
-(er)e(of)g(random)g(n)m(um)m(b)s(er)f(generators.)85
-b(In)44 b(addition)h(there)150 5230 y(are)27 b(a)h(large)g(set)g(of)f
+(either)h(0.0)h(or)e(1.0)390 3367 y Fz(defdim\("r1",2000\);)390
+3477 y(data[r1]=1.0;)390 3696 y(//)47 b(Fill)g(with)f(random)h(numbers)
+e([0.0,10.0\))390 3806 y(data=10.0*gsl_rng_unifor)o(m\(da)o(ta\);)390
+4025 y(//)i(Create)f(a)i(weighting)d(variable)390 4134
+y(weight=\(data>4.0\);)390 4354 y(wmean=gsl_stats_wmean\(we)o(ight)o
+(,1,d)o(ata)o(,1,$)o(r1.s)o(ize)o(\);)390 4463 y(print\(wmean\);)390
+4682 y(wsd=gsl_stats_wsd\(weight)o(,1,d)o(ata,)o(1,$)o(r1.s)o(ize\))o
+(;)390 4792 y(print\(wsd\);)390 5011 y(//)i(number)f(of)h(values)g(in)g
+(data)f(that)h(are)g(greater)f(than)g(4)390 5121 y
+(weight_size=weight.total)o(\(\);)390 5230 y(print\(weight_size\);)p
+eop end
+%%Page: 159 165
+TeXDict begin 159 164 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(159)390 299 y Fz(//)47
+b(print)g(min/max)e(of)j(data)390 408 y(dmin=data.gsl_stats_min\()o
+(\);)390 518 y(dmax=data.gsl_stats_max\()o(\);)390 628
+y(print\(dmin\);print\(dmax\);)150 831 y Fv(4.1.23)63
+b(GSL)41 b(random)h(n)m(um)m(b)s(er)f(generation)150
+978 y FE(The)j FD(GSL)h FE(library)f(has)g(a)h(large)h(n)m(um)m(b)s(er)
+e(of)g(random)g(n)m(um)m(b)s(er)f(generators.)85 b(In)44
+b(addition)h(there)150 1088 y(are)27 b(a)h(large)g(set)g(of)f
 (functions)g(for)f(turning)h(uniform)e(random)i(n)m(um)m(b)s(ers)e(in)m
-(to)j(discrete)g(or)f(con)m(tin)m(uous)150 5340 y(probabilt)m(y)e
+(to)j(discrete)g(or)f(con)m(tin)m(uous)150 1197 y(probabilt)m(y)e
 (distributions.)39 b(The)24 b(random)h(n)m(um)m(b)s(er)f(generator)i
-(algorithms)g(v)-5 b(ary)25 b(in)g(terms)g(of)h(qualit)m(y)p
-eop end
-%%Page: 147 153
-TeXDict begin 147 152 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(147)150
-299 y(n)m(um)m(b)s(ers)29 b(output,)i(sp)s(eed)e(of)i(execution)h(and)e
-(maximium)g(n)m(um)m(b)s(er)f(output.)42 b(F)-8 b(or)31
-b(more)g(information)150 408 y(see)40 b(the)h FC(GSL)f
-FD(do)s(cumen)m(tation.)70 b(The)39 b(algorithm)i(and)e(seed)h(are)h
+(algorithms)g(v)-5 b(ary)25 b(in)g(terms)g(of)h(qualit)m(y)150
+1307 y(n)m(um)m(b)s(ers)31 b(output,)i(sp)s(eed)f(of)h(execution)h(and)
+e(maxim)m(um)h(n)m(um)m(b)s(er)e(output.)47 b(F)-8 b(or)34
+b(more)f(information)150 1416 y(see)40 b(the)h FD(GSL)f
+FE(do)s(cumen)m(tation.)70 b(The)39 b(algorithm)i(and)e(seed)h(are)h
 (set)f(via)h(en)m(vironmen)m(t)f(v)-5 b(ariables,)150
-518 y(these)31 b(are)g(pic)m(k)m(ed)g(up)e(b)m(y)h(the)h
-Fy(ncap2)e FD(co)s(de.)150 678 y Fq(Setup)150 788 y FD(The)35
-b(n)m(um)m(b)s(er)f(algorithm)i(is)g(set)g(b)m(y)f(the)g(en)m(vironmen)
-m(t)h(v)-5 b(ariable)37 b Fy(GSL_RNG_TYPE)p FD(.)52 b(If)35
-b(this)g(v)-5 b(ariable)150 897 y(isn't)31 b(set)g(then)f(the)h
-(default)f(rng)h(algorithm)g(is)g(gsl)p 1945 897 28 4
-v 40 w(rng)p 2117 897 V 40 w(19937.)43 b(The)30 b(seed)h(is)f(set)i
-(with)e(the)h(en)m(viron-)150 1007 y(men)m(t)22 b(v)-5
-b(ariable)22 b Fy(GSL_RNG_SEED)p FD(.)35 b(The)21 b(follo)m(wing)h
-(wrapp)s(er)e(functions)h(in)g(ncap2)h(pro)m(vide)g(information)150
-1116 y(ab)s(out)30 b(the)h(c)m(hosen)g(algorithm.)150
-1411 y Fy(gsl_rng_min\(\))630 1521 y FD(the)g(minimium)e(v)-5
-b(alue)31 b(returned)e(b)m(y)h(the)h(rng)f(algorithm.)150
-1681 y Fy(gsl_rng_max\(\))630 1791 y FD(the)h(maximium)f(v)-5
-b(alue)30 b(returned)g(b)m(y)g(the)g(rng)g(algorithm.)150
-1976 y Fq(Uniformly)g(Distributed)g(Random)g(Num)m(b)s(ers)150
-2162 y Fy(gsl_rng_get\(var_in\))630 2271 y FD(This)f(function)h
-(returns)f(v)-5 b(ar)p 1637 2271 V 40 w(in)30 b(with)g(in)m(tegers)h
+1526 y(these)31 b(are)g(pic)m(k)m(ed)g(up)e(b)m(y)h(the)h
+Fz(ncap2)e FE(co)s(de.)150 1688 y Fr(Setup)150 1797 y
+FE(The)35 b(n)m(um)m(b)s(er)f(algorithm)i(is)g(set)g(b)m(y)f(the)g(en)m
+(vironmen)m(t)h(v)-5 b(ariable)37 b Fz(GSL_RNG_TYPE)p
+FE(.)52 b(If)35 b(this)g(v)-5 b(ariable)150 1907 y(isn't)31
+b(set)g(then)f(the)h(default)f(rng)h(algorithm)g(is)g(gsl)p
+1945 1907 28 4 v 40 w(rng)p 2117 1907 V 40 w(19937.)43
+b(The)30 b(seed)h(is)f(set)i(with)e(the)h(en)m(viron-)150
+2016 y(men)m(t)22 b(v)-5 b(ariable)22 b Fz(GSL_RNG_SEED)p
+FE(.)35 b(The)21 b(follo)m(wing)h(wrapp)s(er)e(functions)h(in)g(ncap2)h
+(pro)m(vide)g(information)150 2126 y(ab)s(out)30 b(the)h(c)m(hosen)g
+(algorithm.)150 2424 y Fz(gsl_rng_min\(\))630 2534 y
+FE(the)g(minim)m(um)e(v)-5 b(alue)31 b(returned)e(b)m(y)h(the)h(rng)f
+(algorithm.)150 2697 y Fz(gsl_rng_max\(\))630 2807 y
+FE(the)h(maxim)m(um)f(v)-5 b(alue)31 b(returned)e(b)m(y)h(the)h(rng)f
+(algorithm.)150 2995 y Fr(Uniformly)g(Distributed)g(Random)g(Num)m(b)s
+(ers)150 3184 y Fz(gsl_rng_get\(var_in\))630 3294 y FE(This)f(function)
+h(returns)f(v)-5 b(ar)p 1637 3294 V 40 w(in)30 b(with)g(in)m(tegers)h
 (from)f(the)g(c)m(hosen)h(rng)f(algorithm.)41 b(The)630
-2381 y(min)30 b(and)g(max)g(v)-5 b(alues)31 b(dep)s(end)d(uo)s(on)i
-(the)h(c)m(hosen)g(rng)f(algorthm.)150 2541 y Fy
-(gsl_rng_uniform_int\(var_)o(in\))630 2651 y FD(This)i(function)g
-(returns)f(v)-5 b(ar)p 1644 2651 V 40 w(in)32 b(with)g(random)f(in)m
+3403 y(min)30 b(and)g(max)g(v)-5 b(alues)31 b(dep)s(end)d(uo)s(on)i
+(the)h(c)m(hosen)g(rng)f(algorthm.)150 3567 y Fz
+(gsl_rng_uniform_int\(var_)o(in\))630 3676 y FE(This)i(function)g
+(returns)f(v)-5 b(ar)p 1644 3676 V 40 w(in)32 b(with)g(random)f(in)m
 (tegers)j(from)d(0)i(to)g(n-1.)47 b(The)32 b(v)-5 b(alue)32
-b(n)630 2760 y(m)m(ust)c(b)s(e)f(less)h(than)f(or)h(equal)g(to)h(the)f
-(maximium)f(v)-5 b(alue)28 b(of)g(the)g(c)m(hosen)g(rng)g(algorithm.)
-150 2921 y Fy(gsl_rng_uniform\(var_in\))630 3030 y FD(This)c(function)g
-(returns)g(v)-5 b(ar)p 1621 3030 V 40 w(in)24 b(with)g
-(double-precision)h(n)m(um)m(b)s(ers)e(in)h(the)h(range)g([0.0,1\).)630
-3140 y(The)30 b(range)h(includes)f(0.0)h(and)f(excludes)g(1.0.)150
-3301 y Fy(gsl_rng_uniform_pos\(var_)o(in\))630 3410 y
-FD(This)23 b(function)g(returns)g(v)-5 b(ar)p 1618 3410
-V 40 w(in)23 b(with)g(double-precision)h(n)m(um)m(b)s(ers)e(in)h(the)h
-(range)g(\(0.0,1\),)630 3520 y(excluding)31 b(b)s(oth)e(0.0)j(and)d
-(1.0.)150 3705 y(Belo)m(w)j(are)f(examples)g(of)f Fy(gsl_rng_get\(\))d
-FD(and)j Fy(gsl_rng_uniform_int\(\))24 b FD(in)30 b(action.)390
-3865 y Fy(export)46 b(GSL_RNG_TYPE=ranlux)390 3975 y(export)g
-(GSL_RNG_SEED=10)390 4084 y(ncap2)g(-v)i(-O)f(-s)g
+b(n)630 3786 y(m)m(ust)e(b)s(e)f(less)h(than)f(or)h(equal)g(to)h(the)f
+(maxim)m(um)f(v)-5 b(alue)30 b(of)g(the)g(c)m(hosen)g(rng)g(algorithm.)
+150 3950 y Fz(gsl_rng_uniform\(var_in\))630 4059 y FE(This)24
+b(function)g(returns)g(v)-5 b(ar)p 1621 4059 V 40 w(in)24
+b(with)g(double-precision)h(n)m(um)m(b)s(ers)e(in)h(the)h(range)g
+([0.0,1\).)630 4169 y(The)30 b(range)h(includes)f(0.0)h(and)f(excludes)
+g(1.0.)150 4332 y Fz(gsl_rng_uniform_pos\(var_)o(in\))630
+4442 y FE(This)23 b(function)g(returns)g(v)-5 b(ar)p
+1618 4442 V 40 w(in)23 b(with)g(double-precision)h(n)m(um)m(b)s(ers)e
+(in)h(the)h(range)g(\(0.0,1\),)630 4552 y(excluding)31
+b(b)s(oth)e(0.0)j(and)d(1.0.)150 4740 y(Belo)m(w)j(are)f(examples)g(of)
+f Fz(gsl_rng_get\(\))d FE(and)j Fz(gsl_rng_uniform_int\(\))24
+b FE(in)30 b(action.)390 4902 y Fz(export)46 b(GSL_RNG_TYPE=ranlux)390
+5011 y(export)g(GSL_RNG_SEED=10)390 5121 y(ncap2)g(-v)i(-O)f(-s)g
 ('a1[time]=0;a2=gsl_rng_g)o(et\(a)o(1\);)o(')42 b(in.nc)k(foo.nc)390
-4194 y(//)h(10)g(random)f(numbers)g(from)h(the)g(range)f(0)i(-)f
-(16777215)390 4303 y(//)g(a2=9056646,)e(12776696,)g(1011656,)h
+5230 y(//)h(10)g(random)f(numbers)g(from)h(the)g(range)f(0)i(-)f
+(16777215)390 5340 y(//)g(a2=9056646,)e(12776696,)g(1011656,)h
 (13354708,)f(5139066,)h(1388751,)f(11163902,)g(7730127,)h(15531355,)f
-(10387694)h(;)390 4523 y(ncap2)g(-v)i(-O)f(-s)g
+(10387694)h(;)p eop end
+%%Page: 160 166
+TeXDict begin 160 165 bop 150 -116 a FE(160)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 408 y Fz(ncap2)46 b(-v)i(-O)f(-s)g
 ('a1[time]=21;a2=gsl_rng_)o(unif)o(orm)o(_int)o(\(a1\))o(.so)o(rt\(\))o
-(;')42 b(in.nc)k(foo.nc)390 4632 y(//)h(10)g(random)f(numbers)g(from)h
-(the)g(range)f(0)i(-)f(20)390 4742 y(a2)g(=)h(1,)f(1,)g(6,)g(9,)g(11,)g
-(13,)g(13,)g(15,)g(16,)g(19)g(;)150 5011 y FD(The)39
-b(follo)m(wing)h(example)g(pro)s(duces)e(an)h Fy(ncap2)f
-FD(run)m(time)h(error.)67 b(This)38 b(is)i(b)s(ecause)f(the)g(c)m(hose)
-h(rng)150 5121 y(algorithm)46 b(has)f(a)g(maximium)g(v)-5
-b(alue)45 b(greater)h(than)75 b Fy(NC_MAX_INT=2147483647)25
-b FD(;)53 b(the)45 b(wrapp)s(er)150 5230 y(functions)30
-b(to)h Fy(gsl_rng_get\(\))26 b FD(and)k Fy(gsl_rng_uniform_int\(\))24
-b FD(return)29 b(v)-5 b(ariable)31 b(of)f(t)m(yp)s(e)g
-Fy(NC_INT)p FD(.)150 5340 y(Please)36 b(b)s(e)e(a)m(w)m(are)j(of)e
-(this)f(when)g(using)h(random)f(n)m(um)m(b)s(er)f(distribution)i
-(functions)f(functions)g(from)p eop end
-%%Page: 148 154
-TeXDict begin 148 153 bop 150 -116 a FD(148)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(the)f FC(GSL)g FD(library)g(whic)m
-(h)f(return)g Fy(unsigned)g(int)p FD(.)40 b(Examples)28
-b(of)i(these)f(are)g Fy(gsl_ran_geometric\(\))150 408
-y FD(and)h Fy(gsl_ran_pascal\(\))p FD(.)390 573 y Fy(export)46
-b(GSL_RNG_TYPE=mt19937)390 682 y(ncap2)g(-v)i(-O)f(-s)g
+(;')42 b(in.nc)k(foo.nc)390 518 y(//)h(10)g(random)f(numbers)g(from)h
+(the)g(range)f(0)i(-)f(20)390 628 y(a2)g(=)h(1,)f(1,)g(6,)g(9,)g(11,)g
+(13,)g(13,)g(15,)g(16,)g(19)g(;)150 908 y FE(The)23 b(follo)m(wing)i
+(example)g(pro)s(duces)d(an)h Fz(ncap2)g FE(run)m(time)g(error.)38
+b(This)23 b(is)h(b)s(ecause)f(the)h(c)m(hose)h(rng)e(algo-)150
+1017 y(rithm)g(has)h(a)g(maxim)m(um)g(v)-5 b(alue)24
+b(greater)h(than)54 b Fz(NC_MAX_INT=2147483647)24 b FE(;)i(the)e(wrapp)
+s(er)e(functions)150 1127 y(to)29 b Fz(gsl_rng_get\(\))24
+b FE(and)j Fz(gsl_rng_uniform_int\(\))22 b FE(return)27
+b(v)-5 b(ariable)28 b(of)g(t)m(yp)s(e)g Fz(NC_INT)p FE(.)39
+b(Please)29 b(b)s(e)150 1236 y(a)m(w)m(are)41 b(of)e(this)g(when)g
+(using)g(random)f(n)m(um)m(b)s(er)g(distribution)h(functions)g
+(functions)f(from)h(the)h FD(GSL)150 1346 y FE(library)k(whic)m(h)h
+(return)f Fz(unsigned)28 b(int)p FE(.)83 b(Examples)45
+b(of)g(these)h(are)f Fz(gsl_ran_geometric\(\))40 b FE(and)150
+1456 y Fz(gsl_ran_pascal\(\))p FE(.)390 1626 y Fz(export)46
+b(GSL_RNG_TYPE=mt19937)390 1736 y(ncap2)g(-v)i(-O)f(-s)g
 ('a1[time]=0;a2=gsl_rng_g)o(et\(a)o(1\);)o(')42 b(in.nc)k(foo.nc)150
-847 y FD(T)-8 b(o)31 b(\014nd)e(the)h(maximium)g(v)-5
-b(alue)31 b(of)g(the)f(c)m(hosen)h(rng)f(algorithm)h(use)f(the)h(follo)
-m(wing)h(co)s(de)e(snipp)s(et.)390 1011 y Fy(ncap2)46
+1906 y FE(T)-8 b(o)31 b(\014nd)e(the)h(maxim)m(um)g(v)-5
+b(alue)31 b(of)g(the)f(c)m(hosen)h(rng)f(algorithm)i(use)e(the)g(follo)
+m(wing)i(co)s(de)f(snipp)s(et.)390 2077 y Fz(ncap2)46
 b(-v)i(-O)f(-s)g('rng_max=gsl_rng_max\(\);p)o(rint)o(\(rn)o(g_ma)o
-(x\)')41 b(in.nc)47 b(foo.nc)150 1176 y Fq(Random)30
-b(Num)m(b)s(er)f(Distributions)150 1285 y FD(The)34 b
-FC(GSL)i FD(library)e(has)h(a)g(ric)m(h)g(set)h(of)f(random)f(n)m(um)m
+(x\)')41 b(in.nc)47 b(foo.nc)150 2247 y Fr(Random)30
+b(Num)m(b)s(er)f(Distributions)150 2357 y FE(The)34 b
+FD(GSL)i FE(library)e(has)h(a)g(ric)m(h)g(set)h(of)f(random)f(n)m(um)m
 (b)s(er)g(disribution)g(functions.)54 b(The)34 b(library)h(also)150
-1395 y(pro)m(vides)42 b(cum)m(ulativ)m(e)i(distribution)d(functions)h
+2466 y(pro)m(vides)42 b(cum)m(ulativ)m(e)i(distribution)d(functions)h
 (and)f(in)m(v)m(erse)i(cum)m(ulativ)m(e)h(distribution)d(functions)150
-1504 y(sometimes)c(referred)f(to)h(a)f(quan)m(tile)i(functions.)57
+2576 y(sometimes)c(referred)f(to)h(a)f(quan)m(tile)i(functions.)57
 b(T)-8 b(o)37 b(see)g(whats)f(a)m(v)-5 b(ailable)38 b(on)f(y)m(our)f
-(build)f(use)h(the)150 1614 y(shell)31 b(command)f Fy(ncap2)f(-f|grep)f
-(-e)i(_ran)f(-e)h(_cdf)p FD(.)150 1778 y(The)g(follo)m(wing)i(examples)
+(build)f(use)h(the)150 2685 y(shell)31 b(command)f Fz(ncap2)f(-f|grep)f
+(-e)i(_ran)f(-e)h(_cdf)p FE(.)150 2856 y(The)g(follo)m(wing)i(examples)
 f(all)g(return)e(v)-5 b(ariables)31 b(of)g(t)m(yp)s(e)f
-Fy(NC_INT)390 2052 y(defdim\("out",15\);)390 2162 y(a1[$out]=0.5;)390
-2271 y(a2=gsl_ran_binomial\(a1,3)o(0\).s)o(ort\()o(\);)390
-2381 y(//a2)47 b(=)g(10,)g(11,)g(12,)g(12,)g(13,)g(14,)g(14,)f(15,)h
-(15,)g(16,)g(16,)g(16,)g(16,)g(17,)g(22)g(;)390 2491
-y(a3=gsl_ran_geometric\(a2\))o(.sor)o(t\(\);)390 2600
+Fz(NC_INT)390 3136 y(defdim\("out",15\);)390 3246 y(a1[$out]=0.5;)390
+3355 y(a2=gsl_ran_binomial\(a1,3)o(0\).s)o(ort\()o(\);)390
+3465 y(//a2)47 b(=)g(10,)g(11,)g(12,)g(12,)g(13,)g(14,)g(14,)f(15,)h
+(15,)g(16,)g(16,)g(16,)g(16,)g(17,)g(22)g(;)390 3574
+y(a3=gsl_ran_geometric\(a2\))o(.sor)o(t\(\);)390 3684
 y(//a2)g(=)g(1,)g(1,)g(1,)h(1,)f(1,)g(1,)g(1,)g(1,)h(2,)f(2,)g(2,)g(2,)
-g(3,)g(4,)h(5)f(;)390 2710 y(a4=gsl_ran_pascal\(a2,50\))o(;)390
-2819 y(//a5)g(=)g(37,)g(40,)g(40,)g(42,)g(43,)g(45,)g(46,)f(49,)h(52,)g
-(58,)g(60,)g(62,)g(62,)g(65,)g(67)g(;)150 2984 y FD(The)30
+g(3,)g(4,)h(5)f(;)390 3794 y(a4=gsl_ran_pascal\(a2,50\))o(;)390
+3903 y(//a5)g(=)g(37,)g(40,)g(40,)g(42,)g(43,)g(45,)g(46,)f(49,)h(52,)g
+(58,)g(60,)g(62,)g(62,)g(65,)g(67)g(;)150 4074 y FE(The)30
 b(follo)m(wing)i(all)f(return)e(v)-5 b(ariables)31 b(of)g(t)m(yp)s(e)f
-Fy(NC_DOUBLE)p FD(;)390 3148 y Fy(defdim\("b1",1000\);)390
-3258 y(b1[$b1]=0.8;)390 3367 y(b2=gsl_ran_exponential\(b)o(1\);)390
-3477 y(b2_avg=b2.avg\(\);)390 3587 y(print\(b2_avg\);)390
-3696 y(//)47 b(b2_avg)f(=)i(0.756047976787)390 3915 y
-(b3=gsl_ran_gaussian\(b1\);)390 4025 y(b3_avg=b3.avg\(\);)390
-4134 y(b3_rms=b3.rms\(\);)390 4244 y(print\(b3_avg\);)390
-4354 y(//)f(b3_avg)f(=)i(-0.00903446534258;)390 4463
-y(print\(b3_rms\);)390 4573 y(//)f(b3_rms)f(=)i(0.81162979889;)390
-4792 y(b4[$b1]=10.0;)390 4902 y(b5[$b1]=20.0;)390 5011
-y(b6=gsl_ran_flat\(b4,b5\);)390 5121 y(b6_avg=b6.avg\(\);)390
-5230 y(print\(b6_avg\);)390 5340 y(//)f(b6_avg=15.0588129413)p
+Fz(NC_DOUBLE)p FE(;)390 4244 y Fz(defdim\("b1",1000\);)390
+4354 y(b1[$b1]=0.8;)390 4463 y(b2=gsl_ran_exponential\(b)o(1\);)390
+4573 y(b2_avg=b2.avg\(\);)390 4682 y(print\(b2_avg\);)390
+4792 y(//)47 b(b2_avg)f(=)i(0.756047976787)390 5011 y
+(b3=gsl_ran_gaussian\(b1\);)390 5121 y(b3_avg=b3.avg\(\);)390
+5230 y(b3_rms=b3.rms\(\);)390 5340 y(print\(b3_avg\);)p
 eop end
-%%Page: 149 155
-TeXDict begin 149 154 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(149)150
-299 y Fu(4.1.24)63 b(Examples)41 b(ncap2)150 446 y FD(See)23
-b(the)h Fy(ncap.in)d FD(and)h Fy(ncap2.in)f FD(scripts)i(released)h
-(with)f FC(NCO)g FD(for)g(more)g(complete)i(demonstrations)150
-555 y(of)31 b Fy(ncap2)d FD(functionalit)m(y)k(\(script)f(a)m(v)-5
-b(ailable)33 b(on-line)e(at)g Fy(http://nco.sf.net/ncap2)o(.in)p
-FD(\).)275 728 y(De\014ne)i(new)g(attribute)h Fz(new)41
-b FD(for)33 b(existing)h(v)-5 b(ariable)35 b Fz(one)k
-FD(as)33 b(t)m(wice)i(the)f(existing)g(attribute)g Fz(dou-)150
-838 y(ble)p 272 838 28 4 v 40 w(att)g FD(of)c(v)-5 b(ariable)31
-b Fz(att)p 1020 838 V 41 w(v)-5 b(ar)7 b FD(:)390 1011
-y Fy(ncap2)46 b(-s)i('one at new=2*att_var at doub)o(le_)o(att')41
-b(in.nc)46 b(out.nc)275 1184 y FD(Av)m(erage)32 b(v)-5
-b(ariables)31 b(of)f(mixed)h(t)m(yp)s(es)f(\(result)h(is)f(of)h(t)m(yp)
-s(e)f Fy(double)p FD(\):)390 1356 y Fy(ncap2)46 b(-s)i
-('average=\(var_float+var)o(_do)o(uble)o(+var)o(_in)o(t\)/3)o(')42
-b(in.nc)k(out.nc)275 1529 y FD(Multiple)38 b(commands)f(ma)m(y)h(b)s(e)
-e(giv)m(en)j(to)f Fy(ncap2)e FD(in)h(three)g(w)m(a)m(ys.)63
-b(First,)40 b(the)d(commands)g(ma)m(y)150 1639 y(b)s(e)k(placed)g(in)g
-(a)h(script)f(whic)m(h)g(is)h(executed,)j(e.g.,)h Fy(tst.nco)p
-FD(.)71 b(Second,)44 b(the)e(commands)f(ma)m(y)h(b)s(e)150
-1748 y(individually)35 b(sp)s(eci\014ed)f(with)g(m)m(ultiple)i(`)p
-Fy(-s)p FD(')f(argumen)m(ts)g(to)h(the)f(same)g Fy(ncap2)f
-FD(in)m(v)m(o)s(cation.)56 b(Third,)150 1858 y(the)39
+%%Page: 161 167
+TeXDict begin 161 166 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(161)390 299 y Fz(//)47
+b(b3_avg)f(=)i(-0.00903446534258;)390 408 y(print\(b3_rms\);)390
+518 y(//)f(b3_rms)f(=)i(0.81162979889;)390 737 y(b4[$b1]=10.0;)390
+847 y(b5[$b1]=20.0;)390 956 y(b6=gsl_ran_flat\(b4,b5\);)390
+1066 y(b6_avg=b6.avg\(\);)390 1176 y(print\(b6_avg\);)390
+1285 y(//)f(b6_avg=15.0588129413)150 1490 y Fv(4.1.24)63
+b(Examples)41 b(ncap2)150 1637 y FE(See)23 b(the)h Fz(ncap.in)d
+FE(and)h Fz(ncap2.in)f FE(scripts)i(released)h(with)f
+FD(NCO)g FE(for)g(more)g(complete)i(demonstrations)150
+1746 y(of)31 b Fz(ncap2)d FE(functionalit)m(y)k(\(script)f(a)m(v)-5
+b(ailable)33 b(on-line)e(at)g Fz(http://nco.sf.net/ncap2)o(.in)p
+FE(\).)275 1908 y(De\014ne)i(new)g(attribute)h FA(new)41
+b FE(for)33 b(existing)h(v)-5 b(ariable)35 b FA(one)k
+FE(as)33 b(t)m(wice)i(the)f(existing)g(attribute)g FA(dou-)150
+2018 y(ble)p 272 2018 28 4 v 40 w(att)g FE(of)c(v)-5
+b(ariable)31 b FA(att)p 1020 2018 V 41 w(v)-5 b(ar)7
+b FE(:)390 2180 y Fz(ncap2)46 b(-s)i('one at new=2*att_var at doub)o(le_)o
+(att')41 b(in.nc)46 b(out.nc)275 2342 y FE(Av)m(erage)32
+b(v)-5 b(ariables)31 b(of)f(mixed)h(t)m(yp)s(es)f(\(result)h(is)f(of)h
+(t)m(yp)s(e)f Fz(double)p FE(\):)390 2504 y Fz(ncap2)46
+b(-s)i('average=\(var_float+var)o(_do)o(uble)o(+var)o(_in)o(t\)/3)o(')
+42 b(in.nc)k(out.nc)275 2666 y FE(Multiple)38 b(commands)f(ma)m(y)h(b)s
+(e)e(giv)m(en)j(to)f Fz(ncap2)e FE(in)h(three)g(w)m(a)m(ys.)63
+b(First,)40 b(the)d(commands)g(ma)m(y)150 2776 y(b)s(e)k(placed)g(in)g
+(a)h(script)f(whic)m(h)g(is)h(executed,)j(e.g.,)h Fz(tst.nco)p
+FE(.)71 b(Second,)44 b(the)e(commands)f(ma)m(y)h(b)s(e)150
+2886 y(individually)35 b(sp)s(eci\014ed)f(with)g(m)m(ultiple)i(`)p
+Fz(-s)p FE(')f(argumen)m(ts)g(to)h(the)f(same)g Fz(ncap2)f
+FE(in)m(v)m(o)s(cation.)56 b(Third,)150 2995 y(the)39
 b(commands)g(ma)m(y)h(b)s(e)e(c)m(hained)i(in)m(to)g(a)f(single)h(`)p
-Fy(-s)p FD(')f(argumen)m(t)h(to)g Fy(ncap2)p FD(.)65
-b(Assuming)39 b(the)g(\014le)150 1968 y Fy(tst.nco)g
-FD(con)m(tains)j(the)f(commands)f Fy(a=3;b=4;c=sqrt\(a^2+b^2\);)o
-FD(,)e(then)i(the)h(follo)m(wing)h Fy(ncap2)150 2077
-y FD(in)m(v)m(o)s(cations)32 b(pro)s(duce)d(iden)m(tical)k(results:)390
-2250 y Fy(ncap2)46 b(-v)i(-S)f(tst.nco)f(in.nc)g(out.nc)390
-2360 y(ncap2)g(-v)i(-s)f('a=3')f(-s)h('b=4')g(-s)g('c=sqrt\(a^2+b^2\)')
-c(in.nc)j(out.nc)390 2469 y(ncap2)g(-v)i(-s)f('a=3;b=4;c=sqrt\(a^2+b^2)
-o(\)')42 b(in.nc)k(out.nc)275 2642 y FD(The)32 b(second)h(and)f(third)h
-(examples)g(sho)m(w)g(that)g Fy(ncap2)f FD(do)s(es)h(not)g(require)f
-(that)i(a)f(trailing)h(semi-)150 2752 y(colon)26 b(`)p
-Fy(;)p FD(')e(b)s(e)g(placed)h(at)g(the)g(end)f(of)h(a)g(`)p
-Fy(-s)p FD(')f(argumen)m(t,)j(although)d(a)h(trailing)h(semi-colon)g(`)
-p Fy(;)p FD(')f(is)f(alw)m(a)m(ys)150 2861 y(allo)m(w)m(ed.)61
+Fz(-s)p FE(')f(argumen)m(t)h(to)g Fz(ncap2)p FE(.)65
+b(Assuming)39 b(the)g(\014le)150 3105 y Fz(tst.nco)g
+FE(con)m(tains)j(the)f(commands)f Fz(a=3;b=4;c=sqrt\(a^2+b^2\);)o
+FE(,)e(then)i(the)h(follo)m(wing)h Fz(ncap2)150 3214
+y FE(in)m(v)m(o)s(cations)32 b(pro)s(duce)d(iden)m(tical)k(results:)390
+3377 y Fz(ncap2)46 b(-v)i(-S)f(tst.nco)f(in.nc)g(out.nc)390
+3486 y(ncap2)g(-v)i(-s)f('a=3')f(-s)h('b=4')g(-s)g('c=sqrt\(a^2+b^2\)')
+c(in.nc)j(out.nc)390 3596 y(ncap2)g(-v)i(-s)f('a=3;b=4;c=sqrt\(a^2+b^2)
+o(\)')42 b(in.nc)k(out.nc)275 3758 y FE(The)32 b(second)h(and)f(third)h
+(examples)g(sho)m(w)g(that)g Fz(ncap2)f FE(do)s(es)h(not)g(require)f
+(that)i(a)f(trailing)h(semi-)150 3867 y(colon)26 b(`)p
+Fz(;)p FE(')e(b)s(e)g(placed)h(at)g(the)g(end)f(of)h(a)g(`)p
+Fz(-s)p FE(')f(argumen)m(t,)j(although)d(a)h(trailing)h(semi-colon)g(`)
+p Fz(;)p FE(')f(is)f(alw)m(a)m(ys)150 3977 y(allo)m(w)m(ed.)61
 b(Ho)m(w)m(ev)m(er,)40 b(semi-colons)e(are)e(required)g(to)h(separate)g
-(individual)f(assignmen)m(t)h(statemen)m(ts)150 2971
-y(c)m(hained)31 b(together)h(as)e(a)h(single)g(`)p Fy(-s)p
-FD(')f(argumen)m(t.)275 3144 y Fy(ncap2)j FD(ma)m(y)i(b)s(e)g(used)f
+(individual)f(assignmen)m(t)h(statemen)m(ts)150 4087
+y(c)m(hained)31 b(together)h(as)e(a)h(single)g(`)p Fz(-s)p
+FE(')f(argumen)m(t.)275 4249 y Fz(ncap2)j FE(ma)m(y)i(b)s(e)g(used)f
 (to)h(\\gro)m(w")i(dimensions,)e(i.e.,)j(to)d(increase)h(dimension)e
-(sizes)i(without)f(al-)150 3253 y(tering)41 b(existing)g(data.)71
-b(Sa)m(y)40 b Fy(in.nc)f FD(has)h Fy(ORO\(lat,lon\))d
-FD(and)i(the)i(user)e(wishes)h(a)g(new)g(\014le)g(with)150
-3363 y Fy(new_ORO\(new_lat,new_lon\))22 b FD(that)29
+(sizes)i(without)f(al-)150 4358 y(tering)41 b(existing)g(data.)71
+b(Sa)m(y)40 b Fz(in.nc)f FE(has)h Fz(ORO\(lat,lon\))d
+FE(and)i(the)i(user)e(wishes)h(a)g(new)g(\014le)g(with)150
+4468 y Fz(new_ORO\(new_lat,new_lon\))22 b FE(that)29
 b(con)m(tains)h(zeros)f(in)f(the)h(unde\014ned)d(p)s(ortions)i(of)h
-(the)g(new)f(grid.)390 3536 y Fy(defdim\("new_lat",$lat.si)o(ze+1)o
+(the)g(new)f(grid.)390 4630 y Fz(defdim\("new_lat",$lat.si)o(ze+1)o
 (\);)42 b(//)47 b(Define)f(new)h(dimension)e(sizes)390
-3645 y(defdim\("new_lon",$lon.si)o(ze+1)o(\);)390 3755
+4740 y(defdim\("new_lon",$lon.si)o(ze+1)o(\);)390 4849
 y(new_ORO[$new_lat,$new_lo)o(n]=0)o(.0f;)c(//)47 b(Initialize)e(to)i
-(zero)390 3865 y(new_ORO\(0:$lat.size-1,0:)o($lon)o(.siz)o(e-1)o(\)=OR)
-o(O;)42 b(//)47 b(Fill)f(valid)h(data)275 4037 y FD(The)31
+(zero)390 4959 y(new_ORO\(0:$lat.size-1,0:)o($lon)o(.siz)o(e-1)o(\)=OR)
+o(O;)42 b(//)47 b(Fill)f(valid)h(data)275 5121 y FE(The)31
 b(commands)g(to)i(de\014ne)e(new)g(co)s(ordinate)i(v)-5
-b(ariables)33 b Fy(new_lat)d FD(and)h Fy(new_lon)f FD(in)h(the)h
-(output)150 4147 y(\014le)g(follo)m(w)g(a)g(similar)g(pattern.)44
+b(ariables)33 b Fz(new_lat)d FE(and)h Fz(new_lon)f FE(in)h(the)h
+(output)150 5230 y(\014le)g(follo)m(w)g(a)g(similar)g(pattern.)44
 b(One)31 b(w)m(ould)g(migh)m(t)i(store)f(these)g(commands)f(in)g(a)h
-(script)f Fy(grow.nco)150 4257 y FD(and)f(then)g(execute)i(the)e
-(script)g(with)390 4429 y Fy(ncap2)46 b(-v)i(-S)f(grow.nco)e(in.nc)i
-(out.nc)275 4602 y FD(Imagine)28 b(y)m(ou)g(wish)f(to)h(create)h(a)f
-(binary)f(\015ag)h(based)f(on)h(the)g(v)-5 b(alue)28
+(script)f Fz(grow.nco)150 5340 y FE(and)f(then)g(execute)i(the)e
+(script)g(with)p eop end
+%%Page: 162 168
+TeXDict begin 162 167 bop 150 -116 a FE(162)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(ncap2)46 b(-v)i(-S)f(grow.nco)e
+(in.nc)i(out.nc)275 460 y FE(Imagine)28 b(y)m(ou)g(wish)f(to)h(create)h
+(a)f(binary)f(\015ag)h(based)f(on)h(the)g(v)-5 b(alue)28
 b(of)g(an)f(arra)m(y)-8 b(.)41 b(The)27 b(\015ag)h(should)150
-4712 y(ha)m(v)m(e)33 b(v)-5 b(alue)31 b(1.0)i(where)e(the)h(arra)m(y)g
+569 y(ha)m(v)m(e)33 b(v)-5 b(alue)31 b(1.0)i(where)e(the)h(arra)m(y)g
 (exceeds)f(1.0)r(,)h(and)f(v)-5 b(alue)31 b(0.0)i(elsewhere.)45
-b(This)31 b(example)i(creates)150 4821 y(the)e(binary)e(\015ag)i
-Fy(ORO_flg)d FD(in)i Fy(out.nc)f FD(from)h(the)g(con)m(tin)m(uous)i
-(arra)m(y)e(named)g Fy(ORO)g FD(in)g Fy(in.nc)p FD(.)390
-4994 y Fy(ncap2)46 b(-s)i('ORO_flg=\(ORO)c(>)j(1.0\)')g(in.nc)f(out.nc)
-275 5167 y FD(Supp)s(ose)28 b(y)m(our)i(task)h(is)g(to)g(c)m(hange)g
-(all)h(v)-5 b(alues)30 b(of)h Fy(ORO)e FD(whic)m(h)h(equal)h(2.0)h(to)f
-(the)g(new)e(v)-5 b(alue)31 b(3.0)q(:)390 5340 y Fy(ncap2)46
+b(This)31 b(example)i(creates)150 679 y(the)e(binary)e(\015ag)i
+Fz(ORO_flg)d FE(in)i Fz(out.nc)f FE(from)h(the)g(con)m(tin)m(uous)i
+(arra)m(y)e(named)g Fz(ORO)g FE(in)g Fz(in.nc)p FE(.)390
+840 y Fz(ncap2)46 b(-s)i('ORO_flg=\(ORO)c(>)j(1.0\)')g(in.nc)f(out.nc)
+275 1000 y FE(Supp)s(ose)28 b(y)m(our)i(task)h(is)g(to)g(c)m(hange)g
+(all)h(v)-5 b(alues)30 b(of)h Fz(ORO)e FE(whic)m(h)h(equal)h(2.0)h(to)f
+(the)g(new)e(v)-5 b(alue)31 b(3.0)q(:)390 1161 y Fz(ncap2)46
 b(-s)i('ORO_msk=\(ORO==2.0\);ORO)o(=OR)o(O_ms)o(k*3.)o(0+!)o(ORO_)o
-(msk*)o(ORO)o(')42 b(in.nc)k(out.nc)p eop end
-%%Page: 150 156
-TeXDict begin 150 155 bop 150 -116 a FD(150)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(This)g(creates)j(and)e(uses)h
-Fy(ORO_msk)d FD(to)k(mask)e(the)h(subsequen)m(t)f(arithmetic)i(op)s
-(eration.)45 b(V)-8 b(alues)33 b(of)150 408 y Fy(ORO)c
-FD(are)i(only)g(c)m(hanged)g(where)f Fy(ORO_msk)e FD(is)i(true,)h
-(i.e.,)h(where)d Fy(ORO)h FD(equals)h(2.0)150 518 y(Using)g(the)f
-Fy(where)f FD(statemen)m(t)j(the)f(ab)s(o)m(v)m(e)g(co)s(de)g
-(simpli\014es)f(to)h(:)390 682 y Fy(ncap2)46 b(-s)i('where\(ORO==2.0\))
-43 b(ORO=3.0;')i(in.nc)i(foo.nc)275 847 y FD(This)30
-b(example)j(uses)e Fy(ncap2)f FD(to)j(compute)f(the)g(co)m(v)-5
-b(ariance)34 b(of)e(t)m(w)m(o)h(v)-5 b(ariables.)45 b(Let)32
-b(the)g(v)-5 b(ariables)150 956 y Fz(u)42 b FD(and)h
-Fz(v)50 b FD(b)s(e)43 b(the)g(horizon)m(tal)h(wind)e(comp)s(onen)m(ts.)
-79 b(The)42 b Fz(co)m(v)-5 b(ariance)51 b FD(of)43 b
-Fz(u)f FD(and)g Fz(v)51 b FD(is)43 b(de\014ned)f(as)150
-1066 y(the)g(time)h(mean)g(pro)s(duct)e(of)h(the)h(deviations)g(of)f
-Fz(u)g FD(and)f Fz(v)50 b FD(from)42 b(their)g(resp)s(ectiv)m(e)i(time)
-f(means.)150 1176 y(Sym)m(b)s(olically)-8 b(,)36 b(the)e(co)m(v)-5
-b(ariance)35 b([)p Fv(u)1386 1143 y Fd(0)1410 1176 y
-Fv(v)1457 1143 y Fd(0)1481 1176 y FD(])30 b(=)g([)p Fv(uv)s
-FD(])24 b FA(\000)e FD([)p Fv(u)p FD(][)p Fv(v)s FD(])34
-b(where)f([)p Fv(x)p FD(])h(denotes)g(the)g(time-a)m(v)m(erage)j(of)d
-Fv(x)p FD(,)150 1285 y([)p Fv(x)p FD(])28 b FA(\021)390
-1249 y Ft(1)p 388 1264 38 4 v 388 1317 a Fg(\034)451
-1216 y Ff(R)506 1237 y Fg(t)p Ft(=)p Fg(\034)490 1313
-y(t)p Ft(=0)639 1285 y Fv(x)p FD(\()p Fv(t)p FD(\))15
-b(d)p Fv(t)31 b FD(and)h Fv(x)1155 1252 y Fd(0)1209 1285
-y FD(denotes)h(the)f(deviation)g(from)g(the)g(time-mean.)46
-b(The)31 b(co)m(v)-5 b(ariance)34 b(tells)150 1395 y(us)29
+(msk*)o(ORO)o(')42 b(in.nc)k(out.nc)275 1322 y FE(This)30
+b(creates)j(and)e(uses)h Fz(ORO_msk)d FE(to)k(mask)e(the)h(subsequen)m
+(t)f(arithmetic)i(op)s(eration.)45 b(V)-8 b(alues)33
+b(of)150 1431 y Fz(ORO)c FE(are)i(only)g(c)m(hanged)g(where)f
+Fz(ORO_msk)e FE(is)i(true,)h(i.e.,)h(where)d Fz(ORO)h
+FE(equals)h(2.0)150 1541 y(Using)g(the)f Fz(where)f FE(statemen)m(t)j
+(the)f(ab)s(o)m(v)m(e)g(co)s(de)g(simpli\014es)f(to)h(:)390
+1702 y Fz(ncap2)46 b(-s)i('where\(ORO==2.0\))43 b(ORO=3.0;')i(in.nc)i
+(foo.nc)275 1862 y FE(This)30 b(example)j(uses)e Fz(ncap2)f
+FE(to)j(compute)f(the)g(co)m(v)-5 b(ariance)34 b(of)e(t)m(w)m(o)h(v)-5
+b(ariables.)45 b(Let)32 b(the)g(v)-5 b(ariables)150 1972
+y FA(u)42 b FE(and)h FA(v)50 b FE(b)s(e)43 b(the)g(horizon)m(tal)h
+(wind)e(comp)s(onen)m(ts.)79 b(The)42 b FA(co)m(v)-5
+b(ariance)51 b FE(of)43 b FA(u)f FE(and)g FA(v)51 b FE(is)43
+b(de\014ned)f(as)150 2082 y(the)g(time)h(mean)g(pro)s(duct)e(of)h(the)h
+(deviations)g(of)f FA(u)g FE(and)f FA(v)50 b FE(from)42
+b(their)g(resp)s(ectiv)m(e)i(time)f(means.)150 2191 y(Sym)m(b)s
+(olically)-8 b(,)36 b(the)e(co)m(v)-5 b(ariance)35 b([)p
+Fw(u)1386 2158 y Fc(0)1410 2191 y Fw(v)1457 2158 y Fc(0)1481
+2191 y FE(])30 b(=)g([)p Fw(uv)s FE(])24 b FB(\000)e
+FE([)p Fw(u)p FE(][)p Fw(v)s FE(])34 b(where)f([)p Fw(x)p
+FE(])h(denotes)g(the)g(time-a)m(v)m(erage)j(of)d Fw(x)p
+FE(,)150 2301 y([)p Fw(x)p FE(])28 b FB(\021)390 2265
+y Fu(1)p 388 2280 38 4 v 388 2332 a Fg(\034)451 2232
+y Fd(R)506 2252 y Fg(t)p Fu(=)p Fg(\034)490 2328 y(t)p
+Fu(=0)639 2301 y Fw(x)p FE(\()p Fw(t)p FE(\))15 b(d)p
+Fw(t)31 b FE(and)h Fw(x)1155 2268 y Fc(0)1209 2301 y
+FE(denotes)h(the)f(deviation)g(from)g(the)g(time-mean.)46
+b(The)31 b(co)m(v)-5 b(ariance)34 b(tells)150 2410 y(us)29
 b(ho)m(w)h(m)m(uc)m(h)g(of)g(the)g(correlation)i(of)e(t)m(w)m(o)h
 (signals)g(arises)f(from)f(the)i(signal)f(\015uctuations)g(v)m(ersus)g
-(the)150 1504 y(mean)e(signals.)41 b(Sometimes)29 b(this)f(is)g(called)
-h(the)g Fz(eddy)e(co)m(v)-5 b(ariance)p FD(.)43 b(W)-8
+(the)150 2520 y(mean)e(signals.)41 b(Sometimes)29 b(this)f(is)g(called)
+h(the)g FA(eddy)e(co)m(v)-5 b(ariance)p FE(.)43 b(W)-8
 b(e)29 b(will)g(store)f(the)h(co)m(v)-5 b(ariance)30
-b(in)150 1614 y(the)h(v)-5 b(ariable)31 b Fy(uprmvprm)p
-FD(.)390 1778 y Fy(ncwa)47 b(-O)g(-a)g(time)g(-v)g(u,v)g(in.nc)f
-(foo.nc)g(#)i(Compute)d(time)i(mean)g(of)g(u,v)390 1888
+b(in)150 2629 y(the)h(v)-5 b(ariable)31 b Fz(uprmvprm)p
+FE(.)390 2790 y Fz(ncwa)47 b(-O)g(-a)g(time)g(-v)g(u,v)g(in.nc)f
+(foo.nc)g(#)i(Compute)d(time)i(mean)g(of)g(u,v)390 2900
 y(ncrename)f(-O)h(-v)g(u,uavg)f(-v)h(v,vavg)f(foo.nc)g(#)i(Rename)e(to)
-h(avoid)f(conflict)390 1998 y(ncks)h(-A)g(-v)g(uavg,vavg)e(foo.nc)h
+h(avoid)f(conflict)390 3009 y(ncks)h(-A)g(-v)g(uavg,vavg)e(foo.nc)h
 (in.nc)h(#)g(Place)g(time)f(means)h(with)f(originals)390
-2107 y(ncap2)g(-O)i(-s)f('uprmvprm=u*v-uavg*vavg)o(')42
-b(in.nc)k(in.nc)h(#)g(Covariance)390 2217 y(ncra)g(-O)g(-v)g(uprmvprm)f
-(in.nc)g(foo.nc)g(#)h(Time-mean)f(covariance)275 2381
-y FD(The)34 b(mathematically)j(inclined)e(will)g(note)h(that)f(the)g
+3119 y(ncap2)g(-O)i(-s)f('uprmvprm=u*v-uavg*vavg)o(')42
+b(in.nc)k(in.nc)h(#)g(Covariance)390 3229 y(ncra)g(-O)g(-v)g(uprmvprm)f
+(in.nc)g(foo.nc)g(#)h(Time-mean)f(covariance)275 3389
+y FE(The)34 b(mathematically)j(inclined)e(will)g(note)h(that)f(the)g
 (same)g(co)m(v)-5 b(ariance)37 b(w)m(ould)e(b)s(e)f(obtained)h(b)m(y)
-150 2491 y(replacing)c(the)g(step)f(in)m(v)m(olving)i
-Fy(ncap2)d FD(with)390 2655 y Fy(ncap2)46 b(-O)i(-s)f
+150 3499 y(replacing)c(the)g(step)f(in)m(v)m(olving)i
+Fz(ncap2)d FE(with)390 3660 y Fz(ncap2)46 b(-O)i(-s)f
 ('uprmvprm=\(u-uavg\)*\(v-v)o(avg\))o(')42 b(foo.nc)k(foo.nc)g(#)h
-(Covariance)275 2819 y FD(As)34 b(of)g FC(NCO)g FD(v)m(ersion)h(3.1.8)h
-(\(Decem)m(b)s(er,)h(2006\),)g Fy(ncap2)c FD(can)i(compute)f(a)m(v)m
-(erages,)k(and)c(th)m(us)g(co-)150 2929 y(v)-5 b(ariances,)31
-b(b)m(y)g(itself:)390 3093 y Fy(ncap2)46 b(-s)i
+(Covariance)275 3820 y FE(As)34 b(of)g FD(NCO)g FE(v)m(ersion)h(3.1.8)h
+(\(Decem)m(b)s(er,)h(2006\),)g Fz(ncap2)c FE(can)i(compute)f(a)m(v)m
+(erages,)k(and)c(th)m(us)g(co-)150 3930 y(v)-5 b(ariances,)31
+b(b)m(y)g(itself:)390 4091 y Fz(ncap2)46 b(-s)i
 ('uavg=u.avg\($time\);vavg)o(=v.)o(avg\()o($tim)o(e\);)o(uprm)o(vprm)o
-(=u*)o(v-ua)o(vg*v)o(avg)o(')42 b(\\)676 3203 y(-s)48
+(=u*)o(v-ua)o(vg*v)o(avg)o(')42 b(\\)676 4200 y(-s)48
 b('uprmvrpmavg=uprmvprm.a)o(vg\()o($tim)o(e\)')41 b(in.nc)47
-b(foo.nc)275 3367 y FD(W)-8 b(e)44 b(ha)m(v)m(e)g(not)g(seen)f(a)h
+b(foo.nc)275 4361 y FE(W)-8 b(e)44 b(ha)m(v)m(e)g(not)g(seen)f(a)h
 (simpler)f(metho)s(d)f(to)i(script)g(and)e(execute)j(p)s(o)m(w)m(erful)
-e(arithmetic)h(than)150 3477 y Fy(ncap2)p FD(.)275 3641
-y Fy(ncap2)34 b FD(utilizes)j(man)m(y)f(meta-c)m(haracters)i(\(e.g.,)h
-(`)p Fy($)p FD(',)f(`)p Fy(?)p FD(',)g(`)p Fy(;)p FD(',)f(`)p
-Fy(\(\))p FD(',)h(`)p Fy([])p FD('\))e(that)g(can)g(confuse)g(the)150
-3751 y(command-line)h(shell)g(if)g(not)f(quoted)h(prop)s(erly)-8
+e(arithmetic)h(than)150 4471 y Fz(ncap2)p FE(.)275 4631
+y Fz(ncap2)34 b FE(utilizes)j(man)m(y)f(meta-c)m(haracters)i(\(e.g.,)h
+(`)p Fz($)p FE(',)f(`)p Fz(?)p FE(',)g(`)p Fz(;)p FE(',)f(`)p
+Fz(\(\))p FE(',)h(`)p Fz([])p FE('\))e(that)g(can)g(confuse)g(the)150
+4741 y(command-line)h(shell)g(if)g(not)f(quoted)h(prop)s(erly)-8
 b(.)59 b(The)36 b(issues)g(are)h(the)g(same)g(as)g(those)g(whic)m(h)f
-(arise)150 3861 y(in)g(utilizing)i(extended)e(regular)h(expressions)f
+(arise)150 4850 y(in)g(utilizing)i(extended)e(regular)h(expressions)f
 (to)h(subset)f(v)-5 b(ariables)37 b(\(see)h(Section)f(3.11)h
-([Subsetting)150 3970 y(Files],)32 b(page)g(40\).)43
+([Subsetting)150 4960 y(Files],)32 b(page)g(40\).)43
 b(The)31 b(example)g(ab)s(o)m(v)m(e)h(will)f(fail)h(with)e(no)h(quotes)
-g(and)f(with)h(double)f(quotes.)43 b(This)150 4080 y(is)29
-b(b)s(ecause)g(shell)g(globbing)h(tries)f(to)h Fz(in)m(terp)s(olate)36
-b FD(the)29 b(v)-5 b(alue)29 b(of)h Fy($time)d FD(from)i(the)g(shell)g
-(en)m(vironmen)m(t)150 4189 y(unless)h(it)h(is)f(quoted:)390
-4354 y Fy(ncap2)46 b(-s)i('uavg=u.avg\($time\)')90 b(in.nc)46
-b(foo.nc)g(#)i(Correct)e(\(recommended\))390 4463 y(ncap2)g(-s)95
-b(uavg=u.avg\('$time'\))43 b(in.nc)j(foo.nc)g(#)i(Correct)e(\(and)g
-(dangerous\))390 4573 y(ncap2)g(-s)95 b(uavg=u.avg\($time\))139
+g(and)f(with)h(double)f(quotes.)43 b(This)150 5070 y(is)29
+b(b)s(ecause)g(shell)g(globbing)h(tries)f(to)h FA(in)m(terp)s(olate)36
+b FE(the)29 b(v)-5 b(alue)29 b(of)h Fz($time)d FE(from)i(the)g(shell)g
+(en)m(vironmen)m(t)150 5179 y(unless)h(it)h(is)f(quoted:)390
+5340 y Fz(ncap2)46 b(-s)i('uavg=u.avg\($time\)')90 b(in.nc)46
+b(foo.nc)g(#)i(Correct)e(\(recommended\))p eop end
+%%Page: 163 169
+TeXDict begin 163 168 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(163)390 299 y Fz(ncap2)46
+b(-s)95 b(uavg=u.avg\('$time'\))43 b(in.nc)j(foo.nc)g(#)i(Correct)e
+(\(and)g(dangerous\))390 408 y(ncap2)g(-s)95 b(uavg=u.avg\($time\))139
 b(in.nc)46 b(foo.nc)g(#)i(Fails)e(\($time)g(=)i(''\))390
-4682 y(ncap2)e(-s)i("uavg=u.avg\($time\)")90 b(in.nc)46
-b(foo.nc)g(#)i(Fails)e(\($time)g(=)i(''\))275 4847 y
-FD(Without)25 b(the)h(single)f(quotes,)i(the)f(shell)f(replaces)h
-Fy($time)d FD(with)i(an)g(empt)m(y)h(string.)39 b(The)24
-b(command)150 4956 y Fy(ncap2)43 b FD(receiv)m(es)i(from)f(the)g(shell)
-g(is)h Fy(uavg=u.avg\(\))p FD(.)78 b(This)43 b(causes)i
-Fy(ncap2)d FD(to)j(a)m(v)m(erage)i(o)m(v)m(er)e(all)150
-5066 y(dimensions)30 b(rather)g(than)g(just)g(the)g Fz(time)37
-b FD(dimension,)30 b(and)f(unin)m(tended)h(consequence.)275
-5230 y(W)-8 b(e)45 b(recommend)e(using)g(single)i(quotes)f(to)g
-(protect)h Fy(ncap2)e FD(command-line)h(scripts)f(from)h(the)150
-5340 y(shell,)27 b(ev)m(en)f(when)e(suc)m(h)h(protection)i(is)e(not)h
+518 y(ncap2)e(-s)i("uavg=u.avg\($time\)")90 b(in.nc)46
+b(foo.nc)g(#)i(Fails)e(\($time)g(=)i(''\))275 677 y FE(Without)25
+b(the)h(single)f(quotes,)i(the)f(shell)f(replaces)h Fz($time)d
+FE(with)i(an)g(empt)m(y)h(string.)39 b(The)24 b(command)150
+787 y Fz(ncap2)43 b FE(receiv)m(es)i(from)f(the)g(shell)g(is)h
+Fz(uavg=u.avg\(\))p FE(.)78 b(This)43 b(causes)i Fz(ncap2)d
+FE(to)j(a)m(v)m(erage)i(o)m(v)m(er)e(all)150 897 y(dimensions)30
+b(rather)g(than)g(just)g(the)g FA(time)37 b FE(dimension,)30
+b(and)f(unin)m(tended)h(consequence.)275 1056 y(W)-8
+b(e)45 b(recommend)e(using)g(single)i(quotes)f(to)g(protect)h
+Fz(ncap2)e FE(command-line)h(scripts)f(from)h(the)150
+1166 y(shell,)27 b(ev)m(en)f(when)e(suc)m(h)h(protection)i(is)e(not)h
 (strictly)g(necessary)-8 b(.)40 b(Exp)s(ert)24 b(users)h(ma)m(y)h
-(violate)h(this)e(rule)p eop end
-%%Page: 151 157
-TeXDict begin 151 156 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(151)150
-299 y(to)36 b(exploit)g(the)f(abilit)m(y)h(to)g(use)f(shell)g(v)-5
-b(ariables)36 b(in)e Fy(ncap2)g FD(command-line)h(scripts)g(\(see)h
-(Chapter)f(9)150 408 y([CCSM)d(Example],)h(page)g(245\).)48
-b(In)32 b(suc)m(h)g(cases)h(it)g(ma)m(y)g(b)s(e)e(necessary)i(to)g(use)
-f(the)h(shell)f(bac)m(kslash)150 518 y(c)m(haracter)g(`)p
-Fy(\\)p FD(')f(to)g(protect)g(the)g Fy(ncap2)e FD(meta-c)m(haracter.)
-275 677 y(A)c(dimension)f(of)h(size)h(one)f(is)g(said)g(to)h(b)s(e)e
-Fo(de)-5 b(gener)g(ate)p FD(.)41 b(Whether)25 b(a)g(degenerate)i
-(record)e(dimension)150 787 y(is)h(desirable)g(or)g(not)h(dep)s(ends)d
-(on)i(the)g(application.)41 b(Often)25 b(a)i(degenerate)g
-Fz(time)32 b FD(dimension)25 b(is)h(useful,)150 897 y(e.g.,)k(for)e
-(concaten)m(tating,)k(but)27 b(it)i(ma)m(y)g(cause)f(problems)g(with)g
+(violate)h(this)e(rule)150 1275 y(to)36 b(exploit)g(the)f(abilit)m(y)h
+(to)g(use)f(shell)g(v)-5 b(ariables)36 b(in)e Fz(ncap2)g
+FE(command-line)h(scripts)g(\(see)h(Chapter)f(9)150 1385
+y([CCSM)d(Example],)h(page)g(257\).)48 b(In)32 b(suc)m(h)g(cases)h(it)g
+(ma)m(y)g(b)s(e)e(necessary)i(to)g(use)f(the)h(shell)f(bac)m(kslash)150
+1494 y(c)m(haracter)g(`)p Fz(\\)p FE(')f(to)g(protect)g(the)g
+Fz(ncap2)e FE(meta-c)m(haracter.)275 1654 y(A)c(dimension)f(of)h(size)h
+(one)f(is)g(said)g(to)h(b)s(e)e Fp(de)-5 b(gener)g(ate)p
+FE(.)41 b(Whether)25 b(a)g(degenerate)i(record)e(dimension)150
+1763 y(is)h(desirable)g(or)g(not)h(dep)s(ends)d(on)i(the)g
+(application.)41 b(Often)25 b(a)i(degenerate)g FA(time)32
+b FE(dimension)25 b(is)h(useful,)150 1873 y(e.g.,)k(for)e(concaten)m
+(tating,)k(but)27 b(it)i(ma)m(y)g(cause)f(problems)g(with)g
 (arithmetic.)41 b(Suc)m(h)27 b(is)h(the)h(case)g(in)f(the)150
-1006 y(ab)s(o)m(v)m(e)i(example,)g(where)e(the)h(\014rst)g(step)f
-(emplo)m(ys)i Fy(ncwa)e FD(rather)g(than)h Fy(ncra)f
-FD(for)g(the)h(time-a)m(v)m(eraging.)150 1116 y(Of)k(course)h(the)h(n)m
+1983 y(ab)s(o)m(v)m(e)i(example,)g(where)e(the)h(\014rst)g(step)f
+(emplo)m(ys)i Fz(ncwa)e FE(rather)g(than)h Fz(ncra)f
+FE(for)g(the)h(time-a)m(v)m(eraging.)150 2092 y(Of)k(course)h(the)h(n)m
 (umerical)f(results)g(are)g(the)g(same)h(with)e(b)s(oth)h(op)s
 (erators.)51 b(The)34 b(di\013erence)g(is)g(that,)150
-1225 y(unless)23 b(`)p Fy(-b)p FD(')h(is)g(sp)s(eci\014ed,)h
-Fy(ncwa)e FD(writes)h(no)g Fz(time)30 b FD(dimension)23
-b(to)i(the)f(output)f(\014le,)j(while)e Fy(ncra)f FD(defaults)150
-1335 y(to)34 b(k)m(eeping)f Fz(time)39 b FD(as)33 b(a)h(degenerate)g
-(\(size)e(1\))h(dimension.)48 b(App)s(ending)31 b Fy(u)i
-FD(and)f Fy(v)h FD(to)g(the)g(output)g(\014le)150 1445
-y(w)m(ould)27 b(cause)h Fy(ncks)e FD(to)i(try)f(to)h(expand)f(the)g
-(degenerate)i(time)f(axis)g(of)f Fy(uavg)f FD(and)h Fy(vavg)f
-FD(to)i(the)g(size)g(of)150 1554 y(the)g(non-degenerate)i
-Fz(time)j FD(dimension)28 b(in)g(the)g(input)f(\014le.)40
-b(Th)m(us)27 b(the)h(app)s(end)f(\()p Fy(ncks)i(-A)p
-FD(\))f(command)150 1664 y(w)m(ould)k(b)s(e)g(unde\014ned)e(\(and)i
+2202 y(unless)23 b(`)p Fz(-b)p FE(')h(is)g(sp)s(eci\014ed,)h
+Fz(ncwa)e FE(writes)h(no)g FA(time)30 b FE(dimension)23
+b(to)i(the)f(output)f(\014le,)j(while)e Fz(ncra)f FE(defaults)150
+2311 y(to)34 b(k)m(eeping)f FA(time)39 b FE(as)33 b(a)h(degenerate)g
+(\(size)e(1\))h(dimension.)48 b(App)s(ending)31 b Fz(u)i
+FE(and)f Fz(v)h FE(to)g(the)g(output)g(\014le)150 2421
+y(w)m(ould)27 b(cause)h Fz(ncks)e FE(to)i(try)f(to)h(expand)f(the)g
+(degenerate)i(time)f(axis)g(of)f Fz(uavg)f FE(and)h Fz(vavg)f
+FE(to)i(the)g(size)g(of)150 2531 y(the)g(non-degenerate)i
+FA(time)j FE(dimension)28 b(in)g(the)g(input)f(\014le.)40
+b(Th)m(us)27 b(the)h(app)s(end)f(\()p Fz(ncks)i(-A)p
+FE(\))f(command)150 2640 y(w)m(ould)k(b)s(e)g(unde\014ned)e(\(and)i
 (should)f(fail\))j(in)e(this)g(case.)47 b(Equally)33
-b(imp)s(ortan)m(t)f(is)h(the)f(`)p Fy(-C)p FD(')g(argumen)m(t)150
-1773 y(\(see)e(Section)f(3.12)h([Subsetting)e(Co)s(ordinate)h(V)-8
-b(ariables],)31 b(page)e(45\))h(to)f Fy(ncwa)f FD(to)h(prev)m(en)m(t)g
-(an)m(y)g(scalar)150 1883 y Fz(time)43 b FD(v)-5 b(ariable)37
+b(imp)s(ortan)m(t)f(is)h(the)f(`)p Fz(-C)p FE(')g(argumen)m(t)150
+2750 y(\(see)e(Section)f(3.12)h([Subsetting)e(Co)s(ordinate)h(V)-8
+b(ariables],)31 b(page)e(45\))h(to)f Fz(ncwa)f FE(to)h(prev)m(en)m(t)g
+(an)m(y)g(scalar)150 2859 y FA(time)43 b FE(v)-5 b(ariable)37
 b(from)f(b)s(eing)h(written)g(to)g(the)g(output)g(\014le.)60
-b(Kno)m(wing)36 b(when)g(to)i(use)e Fy(ncwa)29 b(-a)h(time)150
-1993 y FD(rather)g(than)g(the)h(default)f Fy(ncra)g FD(for)g(time-a)m
-(v)m(eraging)k(tak)m(es,)e(w)m(ell,)f(time.)150 2184
-y Fu(4.1.25)63 b(In)m(trinsic)41 b(mathematical)e(metho)s(ds)150
-2331 y Fy(ncap2)22 b FD(supp)s(orts)g(the)i(standard)e(mathematical)k
+b(Kno)m(wing)36 b(when)g(to)i(use)e Fz(ncwa)29 b(-a)h(time)150
+2969 y FE(rather)g(than)g(the)h(default)f Fz(ncra)g FE(for)g(time-a)m
+(v)m(eraging)k(tak)m(es,)e(w)m(ell,)f(time.)150 3155
+y Fv(4.1.25)63 b(In)m(trinsic)41 b(mathematical)e(metho)s(ds)150
+3301 y Fz(ncap2)22 b FE(supp)s(orts)g(the)i(standard)e(mathematical)k
 (functions)d(supplied)g(with)g(most)h(op)s(erating)g(systems.)150
-2440 y(Standard)g(calculator)k(notation)f(is)f(used)f(for)g(addition)h
-Fy(+)p FD(,)g(subtraction)g Fn(-)p FD(,)h(m)m(ultiplication)g
-Fn(*)p FD(,)g(division)150 2550 y Fn(/)p FD(,)i(exp)s(onen)m(tiation)h
-Fy(^)p FD(,)f(and)f(mo)s(dulus)f Fn(\045)p FD(.)40 b(The)28
+3411 y(Standard)g(calculator)k(notation)f(is)f(used)f(for)g(addition)h
+Fz(+)p FE(,)g(subtraction)g Fo(-)p FE(,)h(m)m(ultiplication)g
+Fo(*)p FE(,)g(division)150 3521 y Fo(/)p FE(,)i(exp)s(onen)m(tiation)h
+Fz(^)p FE(,)f(and)f(mo)s(dulus)f Fo(\045)p FE(.)40 b(The)28
 b(a)m(v)-5 b(ailable)31 b(elemen)m(tary)f(mathematical)h(functions)d
-(are:)150 2840 y Fy(abs\(x\))192 b Fz(Absolute)31 b(v)-5
-b(alue)36 b FD(Absolute)31 b(v)-5 b(alue)30 b(of)h Fv(x)p
-FD(,)f FA(j)p Fv(x)p FA(j)p FD(.)42 b(Example:)e(abs\()p
-FA(\000)p FD(1\))26 b(=)f(1)150 2991 y Fy(acos\(x\))144
-b Fz(Arc-cosine)28 b FD(Arc-cosine)23 b(of)e Fz(x)28
-b FD(where)21 b Fz(x)28 b FD(is)21 b(sp)s(eci\014ed)g(in)g(radians.)38
-b(Example:)e(acos\(1)p Fv(:)p FD(0\))28 b(=)630 3101
-y(0)p Fv(:)p FD(0)150 3252 y Fy(acosh\(x\))96 b Fz(Hyp)s(erb)s(olic)24
-b(arc-cosine)31 b FD(Hyp)s(erb)s(olic)23 b(arc-cosine)j(of)e
-Fz(x)31 b FD(where)23 b Fz(x)31 b FD(is)24 b(sp)s(eci\014ed)f(in)h
-(radians.)630 3362 y(Example:)41 b(acosh\(1)p Fv(:)p
-FD(0\))28 b(=)d(0)p Fv(:)p FD(0)150 3513 y Fy(asin\(x\))144
-b Fz(Arc-sine)42 b FD(Arc-sine)37 b(of)f Fz(x)43 b FD(where)36
-b Fz(x)42 b FD(is)37 b(sp)s(eci\014ed)f(in)g(radians.)58
-b(Example:)53 b(asin\(1)p Fv(:)p FD(0\))37 b(=)630 3623
-y(1)p Fv(:)p FD(5707963267948)q(96)q(619)q(22)150 3774
-y Fy(asinh\(x\))96 b Fz(Hyp)s(erb)s(olic)39 b(arc-sine)46
-b FD(Hyp)s(erb)s(olic)39 b(arc-sine)i(of)f Fz(x)46 b
-FD(where)39 b Fz(x)46 b FD(is)40 b(sp)s(eci\014ed)f(in)g(radians.)630
-3884 y(Example:)i(asinh\(1)p Fv(:)p FD(0\))27 b(=)e(0)p
-Fv(:)p FD(88137358702)150 4035 y Fy(atan\(x\))144 b Fz(Arc-tangen)m(t)
-30 b FD(Arc-tangen)m(t)d(of)f Fz(x)32 b FD(where)25 b
-Fz(x)32 b FD(is)26 b(sp)s(eci\014ed)f(in)h(radians)f(b)s(et)m(w)m(een)h
-FA(\000)p Fv(\031)s(=)p FD(2)h(and)630 4145 y Fv(\031)s(=)p
-FD(2.)42 b(Example:)f(atan\(1)p Fv(:)p FD(0\))27 b(=)e(0)p
-Fv(:)p FD(785398163397)q(448)q(30)q(96)q(1)150 4296 y
-Fy(atan2\(y,x\))630 4406 y Fz(Arc-tangen)m(t2)40 b FD(Arc-tangen)m(t)32
-b(of)f Fz(y/x)150 4557 y Fy(atanh\(x\))96 b Fz(Hyp)s(erb)s(olic)24
-b(arc-tangen)m(t)29 b FD(Hyp)s(erb)s(olic)24 b(arc-tangen)m(t)j(of)e
-Fz(x)30 b FD(where)24 b Fz(x)31 b FD(is)25 b(sp)s(eci\014ed)f(in)g
-(radi-)630 4667 y(ans)30 b(b)s(et)m(w)m(een)h FA(\000)p
-Fv(\031)s(=)p FD(2)g(and)f Fv(\031)s(=)p FD(2.)42 b(Example:)e
-(atanh\(3)p Fv(:)p FD(14159265358)q(97)q(93)q(238)q(44)q(\))31
-b(=)25 b(1)p Fv(:)p FD(0)150 4818 y Fy(ceil\(x\))144
-b Fz(Ceil)42 b FD(Ceiling)d(of)g Fz(x)p FD(.)64 b(Smallest)39
-b(in)m(tegral)h(v)-5 b(alue)39 b(not)f(less)h(than)f(argumen)m(t.)65
-b(Example:)630 4928 y(ceil\(0)p Fv(:)p FD(1\))28 b(=)d(1)p
-Fv(:)p FD(0)150 5079 y Fy(cos\(x\))192 b Fz(Cosine)36
-b FD(Cosine)30 b(of)g Fz(x)37 b FD(where)30 b Fz(x)36
-b FD(is)31 b(sp)s(eci\014ed)f(in)g(radians.)40 b(Example:)h(cos\(0)p
-Fv(:)p FD(0\))28 b(=)d(1)p Fv(:)p FD(0)150 5230 y Fy(cosh\(x\))144
-b Fz(Hyp)s(erb)s(olic)34 b(cosine)40 b FD(Hyp)s(erb)s(olic)34
-b(cosine)h(of)f Fz(x)41 b FD(where)34 b Fz(x)40 b FD(is)34
-b(sp)s(eci\014ed)g(in)g(radians.)52 b(Ex-)630 5340 y(ample:)41
-b(cosh\(0)p Fv(:)p FD(0\))27 b(=)e(1)p Fv(:)p FD(0)p
-eop end
-%%Page: 152 158
-TeXDict begin 152 157 bop 150 -116 a FD(152)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fy(erf\(x\))192 b
-Fz(Error)43 b(function)h FD(Error)g(function)g(of)g Fz(x)50
-b FD(where)44 b Fz(x)51 b FD(is)44 b(sp)s(eci\014ed)f(b)s(et)m(w)m(een)
-i FA(\000)p FD(1)g(and)e(1.)630 408 y(Example:)e(erf\(1)p
-Fv(:)p FD(0\))27 b(=)e(0)p Fv(:)p FD(842701)150 570 y
-Fy(erfc\(x\))144 b Fz(Complemen)m(tary)35 b(error)f(function)g
-FD(Complemen)m(tary)h(error)g(function)f(of)g Fz(x)41
-b FD(where)34 b Fz(x)41 b FD(is)630 679 y(sp)s(eci\014ed)30
-b(b)s(et)m(w)m(een)h FA(\000)p FD(1)f(and)g(1.)41 b(Example:)g(erfc\(1)
-p Fv(:)p FD(0\))27 b(=)e(0)p Fv(:)p FD(15729920705)150
-840 y Fy(exp\(x\))192 b Fz(Exp)s(onen)m(tial)223 b FD(Exp)s(onen)m
-(tial)d(of)f Fz(x)p FD(,)267 b Fv(e)2703 807 y Fg(x)2745
-840 y FD(.)608 b(Example:)630 950 y(exp\(1)p Fv(:)p FD(0\))27
-b(=)e(2)p Fv(:)p FD(7182818284590)q(452)q(35)q(36)150
-1111 y Fy(floor\(x\))96 b Fz(Flo)s(or)39 b FD(Flo)s(or)32
-b(of)g Fz(x)p FD(.)45 b(Largest)32 b(in)m(tegral)i(v)-5
+(are:)150 3808 y Fz(abs\(x\))192 b FA(Absolute)31 b(v)-5
+b(alue)36 b FE(Absolute)31 b(v)-5 b(alue)30 b(of)h Fw(x)p
+FE(,)f FB(j)p Fw(x)p FB(j)p FE(.)42 b(Example:)e(abs\()p
+FB(\000)p FE(1\))26 b(=)f(1)150 3954 y Fz(acos\(x\))144
+b FA(Arc-cosine)28 b FE(Arc-cosine)23 b(of)e FA(x)28
+b FE(where)21 b FA(x)28 b FE(is)21 b(sp)s(eci\014ed)g(in)g(radians.)38
+b(Example:)e(acos\(1)p Fw(:)p FE(0\))28 b(=)630 4063
+y(0)p Fw(:)p FE(0)150 4209 y Fz(acosh\(x\))96 b FA(Hyp)s(erb)s(olic)24
+b(arc-cosine)31 b FE(Hyp)s(erb)s(olic)23 b(arc-cosine)j(of)e
+FA(x)31 b FE(where)23 b FA(x)31 b FE(is)24 b(sp)s(eci\014ed)f(in)h
+(radians.)630 4318 y(Example:)41 b(acosh\(1)p Fw(:)p
+FE(0\))28 b(=)d(0)p Fw(:)p FE(0)150 4464 y Fz(asin\(x\))144
+b FA(Arc-sine)42 b FE(Arc-sine)37 b(of)f FA(x)43 b FE(where)36
+b FA(x)42 b FE(is)37 b(sp)s(eci\014ed)f(in)g(radians.)58
+b(Example:)53 b(asin\(1)p Fw(:)p FE(0\))37 b(=)630 4574
+y(1)p Fw(:)p FE(5707963267948)q(96)q(619)q(22)150 4720
+y Fz(asinh\(x\))96 b FA(Hyp)s(erb)s(olic)39 b(arc-sine)46
+b FE(Hyp)s(erb)s(olic)39 b(arc-sine)i(of)f FA(x)46 b
+FE(where)39 b FA(x)46 b FE(is)40 b(sp)s(eci\014ed)f(in)g(radians.)630
+4829 y(Example:)i(asinh\(1)p Fw(:)p FE(0\))27 b(=)e(0)p
+Fw(:)p FE(88137358702)150 4975 y Fz(atan\(x\))144 b FA(Arc-tangen)m(t)
+30 b FE(Arc-tangen)m(t)d(of)f FA(x)32 b FE(where)25 b
+FA(x)32 b FE(is)26 b(sp)s(eci\014ed)f(in)h(radians)f(b)s(et)m(w)m(een)h
+FB(\000)p Fw(\031)s(=)p FE(2)h(and)630 5085 y Fw(\031)s(=)p
+FE(2.)42 b(Example:)f(atan\(1)p Fw(:)p FE(0\))27 b(=)e(0)p
+Fw(:)p FE(785398163397)q(448)q(30)q(96)q(1)150 5230 y
+Fz(atan2\(y,x\))630 5340 y FA(Arc-tangen)m(t2)40 b FE(Arc-tangen)m(t)32
+b(of)f FA(y/x)p eop end
+%%Page: 164 170
+TeXDict begin 164 169 bop 150 -116 a FE(164)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Fz(atanh\(x\))96
+b FA(Hyp)s(erb)s(olic)24 b(arc-tangen)m(t)29 b FE(Hyp)s(erb)s(olic)24
+b(arc-tangen)m(t)j(of)e FA(x)30 b FE(where)24 b FA(x)31
+b FE(is)25 b(sp)s(eci\014ed)f(in)g(radi-)630 408 y(ans)30
+b(b)s(et)m(w)m(een)h FB(\000)p Fw(\031)s(=)p FE(2)g(and)f
+Fw(\031)s(=)p FE(2.)42 b(Example:)e(atanh\(3)p Fw(:)p
+FE(14159265358)q(97)q(93)q(238)q(44)q(\))31 b(=)25 b(1)p
+Fw(:)p FE(0)150 570 y Fz(ceil\(x\))144 b FA(Ceil)42 b
+FE(Ceiling)d(of)g FA(x)p FE(.)64 b(Smallest)39 b(in)m(tegral)h(v)-5
+b(alue)39 b(not)f(less)h(than)f(argumen)m(t.)65 b(Example:)630
+679 y(ceil\(0)p Fw(:)p FE(1\))28 b(=)d(1)p Fw(:)p FE(0)150
+840 y Fz(cos\(x\))192 b FA(Cosine)36 b FE(Cosine)30 b(of)g
+FA(x)37 b FE(where)30 b FA(x)36 b FE(is)31 b(sp)s(eci\014ed)f(in)g
+(radians.)40 b(Example:)h(cos\(0)p Fw(:)p FE(0\))28 b(=)d(1)p
+Fw(:)p FE(0)150 1002 y Fz(cosh\(x\))144 b FA(Hyp)s(erb)s(olic)34
+b(cosine)40 b FE(Hyp)s(erb)s(olic)34 b(cosine)h(of)f
+FA(x)41 b FE(where)34 b FA(x)40 b FE(is)34 b(sp)s(eci\014ed)g(in)g
+(radians.)52 b(Ex-)630 1111 y(ample:)41 b(cosh\(0)p Fw(:)p
+FE(0\))27 b(=)e(1)p Fw(:)p FE(0)150 1272 y Fz(erf\(x\))192
+b FA(Error)43 b(function)h FE(Error)g(function)g(of)g
+FA(x)50 b FE(where)44 b FA(x)51 b FE(is)44 b(sp)s(eci\014ed)f(b)s(et)m
+(w)m(een)i FB(\000)p FE(1)g(and)e(1.)630 1382 y(Example:)e(erf\(1)p
+Fw(:)p FE(0\))27 b(=)e(0)p Fw(:)p FE(842701)150 1543
+y Fz(erfc\(x\))144 b FA(Complemen)m(tary)35 b(error)f(function)g
+FE(Complemen)m(tary)h(error)g(function)f(of)g FA(x)41
+b FE(where)34 b FA(x)41 b FE(is)630 1653 y(sp)s(eci\014ed)30
+b(b)s(et)m(w)m(een)h FB(\000)p FE(1)f(and)g(1.)41 b(Example:)g(erfc\(1)
+p Fw(:)p FE(0\))27 b(=)e(0)p Fw(:)p FE(15729920705)150
+1814 y Fz(exp\(x\))192 b FA(Exp)s(onen)m(tial)223 b FE(Exp)s(onen)m
+(tial)d(of)f FA(x)p FE(,)267 b Fw(e)2703 1781 y Fg(x)2745
+1814 y FE(.)608 b(Example:)630 1923 y(exp\(1)p Fw(:)p
+FE(0\))27 b(=)e(2)p Fw(:)p FE(7182818284590)q(452)q(35)q(36)150
+2085 y Fz(floor\(x\))96 b FA(Flo)s(or)39 b FE(Flo)s(or)32
+b(of)g FA(x)p FE(.)45 b(Largest)32 b(in)m(tegral)i(v)-5
 b(alue)32 b(not)g(greater)h(than)e(argumen)m(t.)46 b(Example:)630
-1221 y(\015o)s(or\(1)p Fv(:)p FD(9\))27 b(=)e(1)150 1382
-y Fy(gamma\(x\))96 b Fz(Gamma)33 b(function)g FD(Gamma)g(function)f(of)
-h Fz(x)p FD(,)h(\000\()p Fv(x)p FD(\).)48 b(The)32 b(w)m(ell-kno)m(wn)h
-(and)f(lo)m(v)m(ed)i(con-)630 1491 y(tin)m(uous)c(factorial)j
-(function.)40 b(Example:)h(gamma\(0)p Fv(:)p FD(5\))28
-b(=)2708 1426 y FA(p)p 2784 1426 56 4 v 65 x Fv(\031)150
-1653 y Fy(gamma_inc_P\(x\))630 1762 y Fz(Incomplete)34
-b(Gamma)g(function)f FD(Incomplete)g(Gamma)h(function)f(of)g(parameter)
-h Fz(a)g FD(and)630 1872 y(v)-5 b(ariable)39 b Fz(x)p
-FD(,)h Fv(P)13 b FD(\()p Fv(a;)i(x)p FD(\).)64 b(One)38
+2194 y(\015o)s(or\(1)p Fw(:)p FE(9\))27 b(=)e(1)150 2355
+y Fz(gamma\(x\))96 b FA(Gamma)33 b(function)g FE(Gamma)g(function)f(of)
+h FA(x)p FE(,)h(\000\()p Fw(x)p FE(\).)48 b(The)32 b(w)m(ell-kno)m(wn)h
+(and)f(lo)m(v)m(ed)i(con-)630 2465 y(tin)m(uous)c(factorial)j
+(function.)40 b(Example:)h(gamma\(0)p Fw(:)p FE(5\))28
+b(=)2708 2400 y FB(p)p 2784 2400 56 4 v 65 x Fw(\031)150
+2626 y Fz(gamma_inc_P\(x\))630 2736 y FA(Incomplete)34
+b(Gamma)g(function)f FE(Incomplete)g(Gamma)h(function)f(of)g(parameter)
+h FA(a)g FE(and)630 2845 y(v)-5 b(ariable)39 b FA(x)p
+FE(,)h Fw(P)13 b FE(\()p Fw(a;)i(x)p FE(\).)64 b(One)38
 b(of)g(the)g(four)f(incomplete)j(gamma)e(functions.)64
-b(Example:)630 1981 y(gamma)p 923 1981 28 4 v 41 w(inc)p
-1080 1981 V 40 w(P\(1)p Fv(;)15 b FD(1\))27 b(=)e(1)c
-FA(\000)f FD(e)1696 1948 y Fd(\000)p Ft(1)150 2143 y
-Fy(ln\(x\))240 b Fz(Natural)112 b(Logarithm)f FD(Natural)g(logarithm)h
-(of)f Fz(x)p FD(,)131 b(ln\()p Fv(x)p FD(\).)283 b(Example:)630
-2252 y(ln\(2)p Fv(:)p FD(7182818284590)q(45)q(23)q(536)q(\))32
-b(=)24 b(1)p Fv(:)p FD(0)150 2413 y Fy(log\(x\))192 b
-Fz(Natural)31 b(Logarithm)g FD(Exact)g(synon)m(ym)f(for)g
-Fy(ln\(x\))p FD(.)150 2574 y Fy(log10\(x\))96 b Fz(Base)31
-b(10)h(Logarithm)f FD(Base)g(10)g(logarithm)h(of)e Fz(x)p
-FD(,)h(log)2490 2596 y Ft(10)2560 2574 y FD(\()p Fv(x)p
-FD(\).)42 b(Example:)f(log\(10)p Fv(:)p FD(0\))28 b(=)d(1)p
-Fv(:)p FD(0)150 2736 y Fy(nearbyint\(x\))630 2845 y Fz(Round)31
-b(inexactly)41 b FD(Nearest)34 b(in)m(teger)f(to)g Fz(x)38
-b FD(is)32 b(returned)f(in)h(\015oating)h(p)s(oin)m(t)f(format.)46
-b(No)630 2955 y(exceptions)31 b(are)g(raised)g(for)f
-Fz(inexact)h(con)m(v)m(ersions)p FD(.)42 b(Example:)f(nearb)m(yin)m
-(t\(0)p Fv(:)p FD(1\))28 b(=)d(0)p Fv(:)p FD(0)150 3116
-y Fy(pow\(x,y\))96 b Fz(P)m(o)m(w)m(er)47 b FD(V)-8 b(alue)41
-b(of)e Fz(x)46 b FD(is)39 b(raised)g(to)h(the)g(p)s(o)m(w)m(er)f(of)g
-Fz(y)p FD(.)68 b(Exceptions)40 b(are)f(raised)h(for)f
-Fz(do-)630 3226 y(main)d(errors)p FD(.)59 b(Due)37 b(to)g(t)m(yp)s
-(e-limitations)h(in)f(the)f(C)30 b(language)38 b Fy(pow)e
-FD(function,)i(in)m(teger)630 3335 y(argumen)m(ts)30
-b(are)g(promoted)f(\(see)i(Section)f(3.33)h([T)m(yp)s(e)f(Con)m(v)m
-(ersion],)g(page)h(89\))f(to)h(t)m(yp)s(e)630 3445 y
-Fy(NC_FLOAT)d FD(b)s(efore)i(ev)-5 b(aluation.)42 b(Example:)f(p)s(o)m
-(w\(2)p Fv(;)15 b FD(3\))27 b(=)e(8)150 3606 y Fy(rint\(x\))144
-b Fz(Round)34 b(exactly)46 b FD(Nearest)36 b(in)m(teger)h(to)g
-Fz(x)42 b FD(is)35 b(returned)g(in)g(\015oating)h(p)s(oin)m(t)g
-(format.)57 b(Ex-)630 3715 y(ceptions)31 b(are)g(raised)f(for)g
-Fz(inexact)i(con)m(v)m(ersions)p FD(.)42 b(Example:)f(rin)m(t\(0)p
-Fv(:)p FD(1\))27 b(=)e(0)150 3877 y Fy(round\(x\))96
-b Fz(Round)27 b FD(Nearest)f(in)m(teger)g(to)f Fz(x)30
-b FD(is)25 b(returned)e(in)i(\015oating)g(p)s(oin)m(t)g(format.)39
-b(Round)23 b(halfw)m(a)m(y)630 3986 y(cases)30 b(a)m(w)m(a)m(y)i(from)c
-(zero,)j(regardless)f(of)f(curren)m(t)h FC(IEEE)d FD(rounding)h
-(direction.)42 b(Example:)630 4096 y(round\(0)p Fv(:)p
-FD(5\))26 b(=)f(1)p Fv(:)p FD(0)150 4257 y Fy(sin\(x\))192
-b Fz(Sine)110 b FD(Sine)104 b(of)h Fz(x)111 b FD(where)105
-b Fz(x)111 b FD(is)105 b(sp)s(eci\014ed)f(in)h(radians.)264
-b(Example:)630 4367 y(sin\(1)p Fv(:)p FD(5707963267948)q(966)q(19)q(22)
-q(\))31 b(=)25 b(1)p Fv(:)p FD(0)150 4528 y Fy(sinh\(x\))144
-b Fz(Hyp)s(erb)s(olic)29 b(sine)35 b FD(Hyp)s(erb)s(olic)30
-b(sine)f(of)h Fz(x)36 b FD(where)30 b Fz(x)36 b FD(is)30
-b(sp)s(eci\014ed)f(in)g(radians.)41 b(Example:)630 4637
-y(sinh\(1)p Fv(:)p FD(0\))26 b(=)f(1)p Fv(:)p FD(1752)150
-4798 y Fy(sqrt\(x\))144 b Fz(Square)30 b(Ro)s(ot)j FD(Square)d(Ro)s(ot)
-h(of)f Fz(x)p FD(,)1893 4733 y FA(p)p 1968 4733 52 4
-v 1968 4798 a Fv(x)p FD(.)41 b(Example:)g(sqrt\(4)p Fv(:)p
-FD(0\))27 b(=)e(2)p Fv(:)p FD(0)150 4960 y Fy(tan\(x\))192
-b Fz(T)-8 b(angen)m(t)82 b FD(T)-8 b(angen)m(t)80 b(of)g
-Fz(x)85 b FD(where)79 b Fz(x)85 b FD(is)79 b(sp)s(eci\014ed)f(in)h
-(radians.)187 b(Example:)630 5069 y(tan\(0)p Fv(:)p FD(785398163397)q
-(44)q(83)q(09)q(61\))32 b(=)25 b(1)p Fv(:)p FD(0)150
-5230 y Fy(tanh\(x\))144 b Fz(Hyp)s(erb)s(olic)40 b(tangen)m(t)k
-FD(Hyp)s(erb)s(olic)c(tangen)m(t)j(of)d Fz(x)47 b FD(where)40
-b Fz(x)47 b FD(is)41 b(sp)s(eci\014ed)f(in)g(radians.)630
-5340 y(Example:)h(tanh\(1)p Fv(:)p FD(0\))27 b(=)e(0)p
-Fv(:)p FD(761594155956)p eop end
-%%Page: 153 159
-TeXDict begin 153 158 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(153)150
-299 y Fy(trunc\(x\))96 b Fz(T)-8 b(runcate)32 b FD(Nearest)d(in)m
-(teger)f(to)g Fz(x)34 b FD(is)27 b(returned)f(in)h(\015oating)h(p)s
-(oin)m(t)f(format.)40 b(Round)26 b(half-)630 408 y(w)m(a)m(y)f(cases)h
+b(Example:)630 2955 y(gamma)p 923 2955 28 4 v 41 w(inc)p
+1080 2955 V 40 w(P\(1)p Fw(;)15 b FE(1\))27 b(=)e(1)c
+FB(\000)f FE(e)1696 2922 y Fc(\000)p Fu(1)150 3116 y
+Fz(ln\(x\))240 b FA(Natural)112 b(Logarithm)f FE(Natural)g(logarithm)h
+(of)f FA(x)p FE(,)131 b(ln\()p Fw(x)p FE(\).)283 b(Example:)630
+3226 y(ln\(2)p Fw(:)p FE(7182818284590)q(45)q(23)q(536)q(\))32
+b(=)24 b(1)p Fw(:)p FE(0)150 3387 y Fz(log\(x\))192 b
+FA(Natural)31 b(Logarithm)g FE(Exact)g(synon)m(ym)f(for)g
+Fz(ln\(x\))p FE(.)150 3548 y Fz(log10\(x\))96 b FA(Base)31
+b(10)h(Logarithm)f FE(Base)g(10)g(logarithm)h(of)e FA(x)p
+FE(,)h(log)2490 3570 y Fu(10)2560 3548 y FE(\()p Fw(x)p
+FE(\).)42 b(Example:)f(log\(10)p Fw(:)p FE(0\))28 b(=)d(1)p
+Fw(:)p FE(0)150 3709 y Fz(nearbyint\(x\))630 3819 y FA(Round)31
+b(inexactly)41 b FE(Nearest)34 b(in)m(teger)f(to)g FA(x)38
+b FE(is)32 b(returned)f(in)h(\015oating)h(p)s(oin)m(t)f(format.)46
+b(No)630 3928 y(exceptions)31 b(are)g(raised)g(for)f
+FA(inexact)h(con)m(v)m(ersions)p FE(.)42 b(Example:)f(nearb)m(yin)m
+(t\(0)p Fw(:)p FE(1\))28 b(=)d(0)p Fw(:)p FE(0)150 4089
+y Fz(pow\(x,y\))96 b FA(P)m(o)m(w)m(er)47 b FE(V)-8 b(alue)41
+b(of)e FA(x)46 b FE(is)39 b(raised)g(to)h(the)g(p)s(o)m(w)m(er)f(of)g
+FA(y)p FE(.)68 b(Exceptions)40 b(are)f(raised)h(for)f
+FA(do-)630 4199 y(main)d(errors)p FE(.)59 b(Due)37 b(to)g(t)m(yp)s
+(e-limitations)h(in)f(the)f(C)30 b(language)38 b Fz(pow)e
+FE(function,)i(in)m(teger)630 4309 y(argumen)m(ts)26
+b(are)f(promoted)h(\(see)g(Section)g(3.34)h([T)m(yp)s(e)e(Con)m(v)m
+(ersion],)j(page)e(100\))h(to)f(t)m(yp)s(e)630 4418 y
+Fz(NC_FLOAT)i FE(b)s(efore)i(ev)-5 b(aluation.)42 b(Example:)f(p)s(o)m
+(w\(2)p Fw(;)15 b FE(3\))27 b(=)e(8)150 4579 y Fz(rint\(x\))144
+b FA(Round)34 b(exactly)46 b FE(Nearest)36 b(in)m(teger)h(to)g
+FA(x)42 b FE(is)35 b(returned)g(in)g(\015oating)h(p)s(oin)m(t)g
+(format.)57 b(Ex-)630 4689 y(ceptions)31 b(are)g(raised)f(for)g
+FA(inexact)i(con)m(v)m(ersions)p FE(.)42 b(Example:)f(rin)m(t\(0)p
+Fw(:)p FE(1\))27 b(=)e(0)150 4850 y Fz(round\(x\))96
+b FA(Round)27 b FE(Nearest)f(in)m(teger)g(to)f FA(x)30
+b FE(is)25 b(returned)e(in)i(\015oating)g(p)s(oin)m(t)g(format.)39
+b(Round)23 b(halfw)m(a)m(y)630 4960 y(cases)30 b(a)m(w)m(a)m(y)i(from)c
+(zero,)j(regardless)f(of)f(curren)m(t)h FD(IEEE)d FE(rounding)h
+(direction.)42 b(Example:)630 5069 y(round\(0)p Fw(:)p
+FE(5\))26 b(=)f(1)p Fw(:)p FE(0)150 5230 y Fz(sin\(x\))192
+b FA(Sine)110 b FE(Sine)104 b(of)h FA(x)111 b FE(where)105
+b FA(x)111 b FE(is)105 b(sp)s(eci\014ed)f(in)h(radians.)264
+b(Example:)630 5340 y(sin\(1)p Fw(:)p FE(5707963267948)q(966)q(19)q(22)
+q(\))31 b(=)25 b(1)p Fw(:)p FE(0)p eop end
+%%Page: 165 171
+TeXDict begin 165 170 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(165)150 299 y Fz(sinh\(x\))144
+b FA(Hyp)s(erb)s(olic)29 b(sine)35 b FE(Hyp)s(erb)s(olic)30
+b(sine)f(of)h FA(x)36 b FE(where)30 b FA(x)36 b FE(is)30
+b(sp)s(eci\014ed)f(in)g(radians.)41 b(Example:)630 408
+y(sinh\(1)p Fw(:)p FE(0\))26 b(=)f(1)p Fw(:)p FE(1752)150
+560 y Fz(sqrt\(x\))144 b FA(Square)30 b(Ro)s(ot)j FE(Square)d(Ro)s(ot)h
+(of)f FA(x)p FE(,)1893 495 y FB(p)p 1968 495 52 4 v 1968
+560 a Fw(x)p FE(.)41 b(Example:)g(sqrt\(4)p Fw(:)p FE(0\))27
+b(=)e(2)p Fw(:)p FE(0)150 712 y Fz(tan\(x\))192 b FA(T)-8
+b(angen)m(t)82 b FE(T)-8 b(angen)m(t)80 b(of)g FA(x)85
+b FE(where)79 b FA(x)85 b FE(is)79 b(sp)s(eci\014ed)f(in)h(radians.)187
+b(Example:)630 821 y(tan\(0)p Fw(:)p FE(785398163397)q(44)q(83)q(09)q
+(61\))32 b(=)25 b(1)p Fw(:)p FE(0)150 973 y Fz(tanh\(x\))144
+b FA(Hyp)s(erb)s(olic)40 b(tangen)m(t)k FE(Hyp)s(erb)s(olic)c(tangen)m
+(t)j(of)d FA(x)47 b FE(where)40 b FA(x)47 b FE(is)41
+b(sp)s(eci\014ed)f(in)g(radians.)630 1083 y(Example:)h(tanh\(1)p
+Fw(:)p FE(0\))27 b(=)e(0)p Fw(:)p FE(761594155956)150
+1234 y Fz(trunc\(x\))96 b FA(T)-8 b(runcate)32 b FE(Nearest)d(in)m
+(teger)f(to)g FA(x)34 b FE(is)27 b(returned)f(in)h(\015oating)h(p)s
+(oin)m(t)f(format.)40 b(Round)26 b(half-)630 1344 y(w)m(a)m(y)f(cases)h
 (to)m(w)m(ard)f(zero,)i(regardless)d(of)h(curren)m(t)f
-FC(IEEE)f FD(rounding)g(direction.)40 b(Example:)630
-518 y(trunc\(0)p Fv(:)p FD(5\))26 b(=)f(0)p Fv(:)p FD(0)150
-727 y(The)g(complete)h(list)g(of)f(mathematical)j(functions)d(supp)s
+FD(IEEE)f FE(rounding)g(direction.)40 b(Example:)630
+1453 y(trunc\(0)p Fw(:)p FE(5\))26 b(=)f(0)p Fw(:)p FE(0)150
+1634 y(The)g(complete)h(list)g(of)f(mathematical)j(functions)d(supp)s
 (orted)e(is)i(platform-sp)s(eci\014c.)39 b(F)-8 b(unctions)26
-b(man-)150 836 y(dated)35 b(b)m(y)g(ANSI)30 b(C)k(are)h
-Fo(guar)-5 b(ante)g(e)g(d)47 b FD(to)35 b(b)s(e)g(presen)m(t)g(and)f
-(are)h(indicated)g(with)g(an)g(asterisk)3487 803 y Ft(3)3524
-836 y FD(.)55 b(and)150 946 y(are)27 b(indicated)f(with)g(an)h
-(asterisk.)40 b(Use)26 b(the)h(`)p Fy(-f)p FD(')f(\(or)h(`)p
-Fy(fnc_tbl)p FD(')d(or)j(`)p Fy(prn_fnc_tbl)p FD('\))d(switc)m(h)i(to)h
-(prin)m(t)150 1055 y(a)k(complete)h(list)f(of)f(functions)g(supp)s
-(orted)f(on)h(y)m(our)g(platform.)2425 1022 y Ft(4)150
-1279 y Fu(4.1.26)63 b(Op)s(erator)42 b(precedence)e(and)h(asso)s
-(ciativit)m(y)150 1426 y FD(This)30 b(page)i(lists)g(the)f
-Fy(ncap2)f FD(op)s(erators)h(in)g(order)g(of)g(precedence)h(\(highest)f
-(to)h(lo)m(w)m(est\).)46 b(Their)30 b(asso-)150 1535
+b(man-)150 1743 y(dated)35 b(b)m(y)g(ANSI)30 b(C)k(are)h
+Fp(guar)-5 b(ante)g(e)g(d)47 b FE(to)35 b(b)s(e)g(presen)m(t)g(and)f
+(are)h(indicated)g(with)g(an)g(asterisk)3487 1710 y Fu(3)3524
+1743 y FE(.)55 b(and)150 1853 y(are)27 b(indicated)f(with)g(an)h
+(asterisk.)40 b(Use)26 b(the)h(`)p Fz(-f)p FE(')f(\(or)h(`)p
+Fz(fnc_tbl)p FE(')d(or)j(`)p Fz(prn_fnc_tbl)p FE('\))d(switc)m(h)i(to)h
+(prin)m(t)150 1963 y(a)k(complete)h(list)f(of)f(functions)g(supp)s
+(orted)f(on)h(y)m(our)g(platform.)2425 1930 y Fu(4)150
+2154 y Fv(4.1.26)63 b(Op)s(erator)42 b(precedence)e(and)h(asso)s
+(ciativit)m(y)150 2301 y FE(This)30 b(page)i(lists)g(the)f
+Fz(ncap2)f FE(op)s(erators)h(in)g(order)g(of)g(precedence)h(\(highest)f
+(to)h(lo)m(w)m(est\).)46 b(Their)30 b(asso-)150 2411
 y(ciativit)m(y)f(indicates)f(in)e(what)h(order)f(op)s(erators)h(of)g
 (equal)g(precedence)g(in)g(an)f(expression)h(are)g(applied.)150
-1816 y Fq(Op)s(erator)382 b(Description)1773 b(Asso)s(ciativit)m(y)150
-1926 y Fy(++)30 b(--)526 b FD(P)m(ost\014x)30 b(Incremen)m(t/Decremen)m
-(t)1060 b(Righ)m(t)31 b(to)g(Left)150 2035 y Fy(\(\))652
-b FD(P)m(aren)m(theses)31 b(\(function)f(call\))150 2145
-y Fy(.)700 b FD(Metho)s(d)30 b(call)150 2255 y Fy(++)g(--)526
-b FD(Pre\014x)29 b(Incremen)m(t/Decremen)m(t)1098 b(Righ)m(t)31
-b(to)g(Left)150 2364 y Fy(+)f(-)622 b FD(Unary)30 b(Plus/Min)m(us)150
-2474 y Fy(!)700 b FD(Logical)32 b(Not)150 2583 y Fy(^)700
-b FD(P)m(o)m(w)m(er)31 b(of)g(Op)s(erator)1495 b(Righ)m(t)31
-b(to)g(Left)150 2693 y Fy(*)f(/)g(\045)544 b FD(Multiply/Divide/Mo)s
-(dulus)1196 b(Left)30 b(T)-8 b(o)31 b(Righ)m(t)150 2803
-y Fy(+)f(-)622 b FD(Addition/Subtraction)1371 b(Left)30
-b(T)-8 b(o)31 b(Righ)m(t)150 2912 y Fy(>>)f(<<)526 b
-FD(F)-8 b(ortran)31 b(st)m(yle)g(arra)m(y)g(clipping)1139
-b(Left)30 b(to)h(Righ)m(t)150 3022 y Fy(<)f(<=)574 b
-FD(Less)30 b(than/Less)g(than)g(or)h(equal)g(to)963 b(Left)30
-b(to)h(Righ)m(t)150 3131 y Fy(>)f(>=)574 b FD(Greater)31
-b(than/Greater)h(than)e(or)g(equal)h(to)150 3241 y Fy(==)f(!=)526
-b FD(Equal)30 b(to/Not)j(equal)d(to)1346 b(Left)30 b(to)h(Righ)m(t)150
-3351 y Fy(&&)652 b FD(Logical)32 b(AND)1713 b(Left)30
-b(to)h(Righ)m(t)150 3460 y Fy(||)652 b FD(Logical)32
-b(OR)1780 b(Left)30 b(to)h(Righ)m(t)150 3570 y Fy(?:)652
-b FD(T)-8 b(ernary)30 b(Op)s(erator)1526 b(Righ)m(t)31
-b(to)g(Left)150 3679 y Fy(=)700 b FD(Assignmen)m(t)1772
-b(Righ)m(t)31 b(to)g(Left)150 3789 y Fy(+=)f(-=)526 b
-FD(Addition/subtraction)31 b(assignmen)m(t)150 3898 y
-Fy(*=)f(/=)526 b FD(Multiplication/division)33 b(assignmen)m(t)150
-4122 y Fu(4.1.27)63 b(ID)41 b(Quoting)150 4269 y FD(In)22
+2680 y Fr(Op)s(erator)382 b(Description)1773 b(Asso)s(ciativit)m(y)150
+2789 y Fz(++)30 b(--)526 b FE(P)m(ost\014x)30 b(Incremen)m(t/Decremen)m
+(t)1060 b(Righ)m(t)31 b(to)g(Left)150 2899 y Fz(\(\))652
+b FE(P)m(aren)m(theses)31 b(\(function)f(call\))150 3008
+y Fz(.)700 b FE(Metho)s(d)30 b(call)150 3118 y Fz(++)g(--)526
+b FE(Pre\014x)29 b(Incremen)m(t/Decremen)m(t)1098 b(Righ)m(t)31
+b(to)g(Left)150 3228 y Fz(+)f(-)622 b FE(Unary)30 b(Plus/Min)m(us)150
+3337 y Fz(!)700 b FE(Logical)32 b(Not)150 3447 y Fz(^)700
+b FE(P)m(o)m(w)m(er)31 b(of)g(Op)s(erator)1495 b(Righ)m(t)31
+b(to)g(Left)150 3556 y Fz(*)f(/)g(\045)544 b FE(Multiply/Divide/Mo)s
+(dulus)1196 b(Left)30 b(T)-8 b(o)31 b(Righ)m(t)150 3666
+y Fz(+)f(-)622 b FE(Addition/Subtraction)1371 b(Left)30
+b(T)-8 b(o)31 b(Righ)m(t)150 3775 y Fz(>>)f(<<)526 b
+FE(F)-8 b(ortran)31 b(st)m(yle)g(arra)m(y)g(clipping)1139
+b(Left)30 b(to)h(Righ)m(t)150 3885 y Fz(<)f(<=)574 b
+FE(Less)30 b(than/Less)g(than)g(or)h(equal)g(to)963 b(Left)30
+b(to)h(Righ)m(t)150 3995 y Fz(>)f(>=)574 b FE(Greater)31
+b(than/Greater)h(than)e(or)g(equal)h(to)150 4104 y Fz(==)f(!=)526
+b FE(Equal)30 b(to/Not)j(equal)d(to)1346 b(Left)30 b(to)h(Righ)m(t)150
+4214 y Fz(&&)652 b FE(Logical)32 b(AND)1713 b(Left)30
+b(to)h(Righ)m(t)150 4323 y Fz(||)652 b FE(Logical)32
+b(OR)1780 b(Left)30 b(to)h(Righ)m(t)150 4433 y Fz(?:)652
+b FE(T)-8 b(ernary)30 b(Op)s(erator)1526 b(Righ)m(t)31
+b(to)g(Left)p 150 4528 1200 4 v 199 4595 a Fu(3)301 4627
+y Ft(ANSI)25 b(C)i(compilers)h(are)g(guaran)n(teed)f(to)g(supp)r(ort)f
+(double-precision)i(v)n(ersions)f(of)h(these)f(functions.)39
+b(These)27 b(func-)275 4714 y(tions)36 b(normally)h(op)r(erate)h(on)e
+(netCDF)g(v)l(ariables)i(of)f(t)n(yp)r(e)e Fs(NC_DOUBLE)k
+Ft(without)d(ha)n(ving)h(to)f(p)r(erform)h(in)n(trinsic)275
+4801 y(con)n(v)n(ersions.)58 b(F)-6 b(or)33 b(example,)j
+Fq(ANSI)e Ft(compilers)g(pro)n(vide)f Fs(sin)h Ft(for)g(the)f(sine)h
+(of)g(C-t)n(yp)r(e)f Fs(double)h Ft(v)l(ariables.)59
+b(The)275 4888 y Fq(ANSI)22 b Ft(standard)g(do)r(es)h(not)g(require,)g
+(but)e(man)n(y)h(compilers)i(pro)n(vide,)e(an)h(extended)e(set)i(of)g
+(mathematical)h(functions)275 4975 y(that)33 b(apply)g(to)g(single)i
+(\()p Fs(float)p Ft(\))f(and)f(quadruple)g(\()p Fs(long)26
+b(double)p Ft(\))34 b(precision)h(v)l(ariables.)58 b(Using)34
+b(these)g(functions)275 5063 y(\(e.g.,)25 b Fs(sinf)f
+Ft(for)g Fs(float)p Ft(,)h Fs(sinl)f Ft(for)g Fs(long)j(double)p
+Ft(\),)e(when)e(a)n(v)l(ailable,)i(is)f(\(presumably\))f(more)h
+(e\016cien)n(t)f(than)g(casting)275 5150 y(v)l(ariables)29
+b(to)g(t)n(yp)r(e)f Fs(double)p Ft(,)j(p)r(erforming)f(the)e(op)r
+(eration,)j(and)d(then)g(re-casting.)45 b Fq(NCO)28 b
+Ft(uses)h(the)g(faster)g(in)n(trinsic)275 5237 y(functions)d(when)f
+(they)g(are)h(a)n(v)l(ailable,)h(and)f(uses)g(the)f(casting)i(metho)r
+(d)e(when)h(they)e(are)j(not.)199 5308 y Fu(4)275 5340
+y Ft(Lin)n(ux)d(supp)r(orts)i(more)g(of)g(these)g(in)n(trinsic)g
+(functions)g(than)g(other)f(OSs.)p eop end
+%%Page: 166 172
+TeXDict begin 166 171 bop 150 -116 a FE(166)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Fz(=)700 b FE(Assignmen)m(t)1772
+b(Righ)m(t)31 b(to)g(Left)150 408 y Fz(+=)f(-=)526 b
+FE(Addition/subtraction)31 b(assignmen)m(t)150 518 y
+Fz(*=)f(/=)526 b FE(Multiplication/division)33 b(assignmen)m(t)150
+744 y Fv(4.1.27)63 b(ID)41 b(Quoting)150 891 y FE(In)22
 b(this)g(section)i(when)e(I)g(refer)h(to)g(a)g(name)g(I)f(mean)h(a)g(v)
 -5 b(ariable)23 b(name,)i(attribute)e(name)g(or)f(a)i(dimension)150
-4378 y(name)i(The)f(allo)m(w)m(ed)i(c)m(haracters)g(in)e(a)h(v)-5
+1000 y(name)i(The)f(allo)m(w)m(ed)i(c)m(haracters)g(in)e(a)h(v)-5
 b(alid)26 b(netCDF)g(name)g(v)-5 b(ary)25 b(from)g(release)i(to)f
-(release.)40 b(\(See)27 b(end)p 150 4528 1200 4 v 199
-4595 a Ft(3)301 4627 y Fs(ANSI)e(C)i(compilers)h(are)g(guaran)n(teed)f
-(to)g(supp)r(ort)f(double-precision)i(v)n(ersions)f(of)h(these)f
-(functions.)39 b(These)27 b(func-)275 4714 y(tions)36
-b(normally)h(op)r(erate)h(on)e(netCDF)g(v)l(ariables)i(of)f(t)n(yp)r(e)
-e Fr(NC_DOUBLE)k Fs(without)d(ha)n(ving)h(to)f(p)r(erform)h(in)n
-(trinsic)275 4801 y(con)n(v)n(ersions.)58 b(F)-6 b(or)33
-b(example,)j Fp(ANSI)e Fs(compilers)g(pro)n(vide)f Fr(sin)h
-Fs(for)g(the)f(sine)h(of)g(C-t)n(yp)r(e)f Fr(double)h
-Fs(v)l(ariables.)59 b(The)275 4888 y Fp(ANSI)22 b Fs(standard)g(do)r
-(es)h(not)g(require,)g(but)e(man)n(y)h(compilers)i(pro)n(vide,)e(an)h
-(extended)e(set)i(of)g(mathematical)h(functions)275 4975
-y(that)33 b(apply)g(to)g(single)i(\()p Fr(float)p Fs(\))f(and)f
-(quadruple)g(\()p Fr(long)26 b(double)p Fs(\))34 b(precision)h(v)l
-(ariables.)58 b(Using)34 b(these)g(functions)275 5063
-y(\(e.g.,)25 b Fr(sinf)f Fs(for)g Fr(float)p Fs(,)h Fr(sinl)f
-Fs(for)g Fr(long)j(double)p Fs(\),)e(when)e(a)n(v)l(ailable,)i(is)f
-(\(presumably\))f(more)h(e\016cien)n(t)f(than)g(casting)275
-5150 y(v)l(ariables)29 b(to)g(t)n(yp)r(e)f Fr(double)p
-Fs(,)j(p)r(erforming)f(the)e(op)r(eration,)j(and)d(then)g(re-casting.)
-45 b Fp(NCO)28 b Fs(uses)h(the)g(faster)g(in)n(trinsic)275
-5237 y(functions)d(when)f(they)g(are)h(a)n(v)l(ailable,)h(and)f(uses)g
-(the)f(casting)i(metho)r(d)e(when)h(they)e(are)j(not.)199
-5308 y Ft(4)275 5340 y Fs(Lin)n(ux)d(supp)r(orts)i(more)g(of)g(these)g
-(in)n(trinsic)g(functions)g(than)g(other)f(OSs.)p eop
-end
-%%Page: 154 160
-TeXDict begin 154 159 bop 150 -116 a FD(154)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(section\).)43 b(If)30
-b(y)m(ou)h(w)m(an)m(t)g(to)g(use)g(metac)m(haracters)i(in)d(a)h(name)f
-(or)h(use)f(a)h(metho)s(d)f(name)g(as)h(a)g(v)-5 b(ariable)150
-408 y(name)30 b(then)g(the)h(name)f(has)h(to)g(b)s(e)e(quoted)i(wherev)
-m(er)f(it)h(o)s(ccurs.)150 573 y(The)f(default)g FC(NCO)h
-FD(name)f(is)g(sp)s(eci\014ed)g(b)m(y)g(the)h(regular)f(expressions:)
-390 737 y Fy(DGT:)238 b(\('0'..'9'\);)390 847 y(LPH:)g(\()47
-b('a'..'z')f(|)h('A'..'Z')f(|)h('_')g(\);)390 956 y(name:)190
-b(\(LPH\)\(LPH|DGT\)+)150 1121 y FD(The)30 b(\014rst)g(c)m(haracter)j
-(of)e(a)g(v)-5 b(alid)31 b(name)g(m)m(ust)g(b)s(e)f(alphab)s(etic)i(or)
-e(the)h(underscore.)42 b(An)m(y)31 b(subsequen)m(t)150
-1230 y(c)m(haracters)h(m)m(ust)e(b)s(e)g(alphan)m(umeric)g(or)h
-(underscore.)39 b(\()31 b(e.g.,)h(a1,)p 2476 1230 28
-4 v 41 w(23,)g(hell)p 2805 1230 V 40 w(is)p 2906 1230
-V 40 w(666)g(\))150 1395 y(The)e(v)-5 b(alid)31 b(c)m(haracters)g(in)f
-(a)h(quoted)g(name)f(are)h(sp)s(eci\014ed)f(b)m(y)g(the)g(regular)h
-(expressions:)390 1559 y Fy(LPHDGT:)94 b(\()47 b('a'..'z')f(|)h
-('A'..'Z')f(|)h('_')g(|)g('0'..'9'\);)390 1669 y(name:)190
-b(\(LPHDGT|'-'|'+'|'.'|'\(')o(|'\))o('|':)o(')42 b(\)+)95
-b(;)150 1833 y FD(Quote)31 b(a)f(v)-5 b(ariable:)150
-1943 y('a)m(vg')32 b(,)f('10)p 544 1943 V 41 w Fy(+)p
-FD(10','set)p 909 1943 V 42 w(miss')f(')p Fy(+)p FD(-90\014eld')i(,)e
-('{test'=10.0d)150 2162 y(Quote)h(a)f(attribute:)150
-2271 y('three at 10',)i('set)p 762 2271 V 41 w(mss@)p Fy(+)p
-FD(10',)e('666 at hell',)j('t1@)p Fy(+)p FD(units'=)p Fy(")p
-FD(k)m(elvin)p Fy(")150 2491 y FD(Quote)e(a)f(dimension:)150
-2600 y('$10',)i('$t1{',)h('${o)s(dd',)e(c1['$10','$t1{']=23.)q(0d)275
-2984 y(The)d(follo)m(wing)j(commen)m(ts)g(are)e(from)g(the)h(netCDF)g
+(release.)40 b(\(See)27 b(end)150 1110 y(section\).)43
+b(If)30 b(y)m(ou)h(w)m(an)m(t)g(to)g(use)g(metac)m(haracters)i(in)d(a)h
+(name)f(or)h(use)f(a)h(metho)s(d)f(name)g(as)h(a)g(v)-5
+b(ariable)150 1219 y(name)30 b(then)g(the)h(name)f(has)h(to)g(b)s(e)e
+(quoted)i(wherev)m(er)f(it)h(o)s(ccurs.)150 1392 y(The)f(default)g
+FD(NCO)h FE(name)f(is)g(sp)s(eci\014ed)g(b)m(y)g(the)h(regular)f
+(expressions:)390 1565 y Fz(DGT:)238 b(\('0'..'9'\);)390
+1674 y(LPH:)g(\()47 b('a'..'z')f(|)h('A'..'Z')f(|)h('_')g(\);)390
+1784 y(name:)190 b(\(LPH\)\(LPH|DGT\)+)150 1956 y FE(The)30
+b(\014rst)g(c)m(haracter)j(of)e(a)g(v)-5 b(alid)31 b(name)g(m)m(ust)g
+(b)s(e)f(alphab)s(etic)i(or)e(the)h(underscore.)42 b(An)m(y)31
+b(subsequen)m(t)150 2066 y(c)m(haracters)h(m)m(ust)e(b)s(e)g(alphan)m
+(umeric)g(or)h(underscore.)39 b(\()31 b(e.g.,)h(a1,)p
+2476 2066 28 4 v 41 w(23,)g(hell)p 2805 2066 V 40 w(is)p
+2906 2066 V 40 w(666)g(\))150 2239 y(The)e(v)-5 b(alid)31
+b(c)m(haracters)g(in)f(a)h(quoted)g(name)f(are)h(sp)s(eci\014ed)f(b)m
+(y)g(the)g(regular)h(expressions:)390 2411 y Fz(LPHDGT:)94
+b(\()47 b('a'..'z')f(|)h('A'..'Z')f(|)h('_')g(|)g('0'..'9'\);)390
+2521 y(name:)190 b(\(LPHDGT|'-'|'+'|'.'|'\(')o(|'\))o('|':)o(')42
+b(\)+)95 b(;)150 2693 y FE(Quote)31 b(a)f(v)-5 b(ariable:)150
+2803 y('a)m(vg')32 b(,)f('10)p 544 2803 V 41 w Fz(+)p
+FE(10','set)p 909 2803 V 42 w(miss')f(')p Fz(+)p FE(-90\014eld')i(,)e
+('{test'=10.0d)150 3022 y(Quote)h(a)f(attribute:)150
+3132 y('three at 10',)i('set)p 762 3132 V 41 w(mss@)p Fz(+)p
+FE(10',)e('666 at hell',)j('t1@)p Fz(+)p FE(units'=)p Fz(")p
+FE(k)m(elvin)p Fz(")150 3351 y FE(Quote)e(a)f(dimension:)150
+3461 y('$10',)i('$t1{',)h('${o)s(dd',)e(c1['$10','$t1{']=23.)q(0d)275
+3852 y(The)d(follo)m(wing)j(commen)m(ts)g(are)e(from)g(the)h(netCDF)g
 (library)f(de\014nitions)g(and)g(detail)h(the)g(naming)150
-3093 y(con)m(v)m(en)m(tions)i(for)f(eac)m(h)g(release.)42
-b(netcdf-3.5.1)150 3203 y(netcdf-3.6.0-p1)150 3313 y(netcdf-3.6.1)150
-3422 y(netcdf-3.6.2)390 3696 y Fy(/*)438 3806 y(*)47
+3962 y(con)m(v)m(en)m(tions)i(for)f(eac)m(h)g(release.)42
+b(netcdf-3.5.1)150 4071 y(netcdf-3.6.0-p1)150 4181 y(netcdf-3.6.1)150
+4291 y(netcdf-3.6.2)390 4573 y Fz(/*)438 4682 y(*)47
 b(\()h([a-zA-Z]|[0-9]|'_'|'-'|)o('+'|)o('.')o(|'|')o(:'|')o(@'|)o
-('\('|)o('\)')41 b(\)+)438 3915 y(*)47 b(Verify)f(that)h(name)g(string)
+('\('|)o('\)')41 b(\)+)438 4792 y(*)47 b(Verify)f(that)h(name)g(string)
 f(is)h(valid)f(CDL)h(syntax,)f(i.e.,)g(all)h(characters)e(are)438
-4025 y(*)i(alphanumeric,)d('-',)j('_',)g('+',)f(or)h('.'.)438
-4134 y(*)g(Also)g(permit)f(':',)h('@',)f('\(',)h(or)g('\)')g(in)g
-(names)f(for)h(chemists)f(currently)f(making)438 4244
+4902 y(*)i(alphanumeric,)d('-',)j('_',)g('+',)f(or)h('.'.)438
+5011 y(*)g(Also)g(permit)f(':',)h('@',)f('\(',)h(or)g('\)')g(in)g
+(names)f(for)h(chemists)f(currently)f(making)438 5121
 y(*)i(use)g(of)g(these)g(characters,)d(but)j(don't)g(document)e(until)i
-(ncgen)f(and)h(ncdump)f(can)438 4354 y(*)h(also)g(handle)f(these)g
-(characters)f(in)i(names.)438 4463 y(*/)150 4628 y FD(netcdf-3.6.3)150
-4737 y(netcdf-4.0)32 b(Final)f(2008/08/28)390 5011 y
-Fy(/*)438 5121 y(*)47 b(Verify)f(that)h(a)g(name)g(string)f(is)h(valid)
-g(syntax.)93 b(The)47 b(allowed)f(name)438 5230 y(*)h(syntax)f(\(in)h
-(RE)g(form\))g(is:)438 5340 y(*)p eop end
-%%Page: 155 161
-TeXDict begin 155 160 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(155)438
-299 y Fy(*)47 b(\([a-zA-Z_]|{UTF8}\)\([^\\x00)o(-\\x1)o(F\\x)o(7F/])o
-(|{UT)o(F8})o(\)*)438 408 y(*)438 518 y(*)g(where)g(UTF8)f(represents)f
-(a)j(multibyte)d(UTF-8)h(encoding.)93 b(Also,)47 b(no)438
-628 y(*)g(trailing)f(spaces)g(are)h(permitted)e(in)i(names.)94
-b(This)47 b(definition)438 737 y(*)g(must)g(be)g(consistent)e(with)i
-(the)g(one)f(in)i(ncgen.l.)93 b(We)47 b(do)g(not)g(allow)g('/')438
-847 y(*)g(because)f(HDF5)h(does)f(not)h(permit)f(slashes)g(in)h(names)g
-(as)g(slash)f(is)h(used)g(as)g(a)438 956 y(*)g(group)g(separator.)92
-b(If)47 b(UTF-8)g(is)g(supported,)e(then)i(a)g(multi-byte)e(UTF-8)438
-1066 y(*)i(character)e(can)i(occur)g(anywhere)e(within)h(an)i
-(identifier.)92 b(We)47 b(later)438 1176 y(*)g(normalize)e(UTF-8)i
-(strings)f(to)h(NFC)g(to)g(facilitate)e(matching)g(and)i(queries.)438
-1285 y(*/)p eop end
-%%Page: 156 162
-TeXDict begin 156 161 bop 150 -116 a FD(156)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.2)68 b Fc(ncatted)42
-b FB(netCDF)j(A)l(ttribute)g(Editor)150 458 y FD(SYNT)-8
-b(AX)390 625 y Fy(ncatted)46 b([-a)h Fn(att_dsc)p Fy(])e([-a)i(...)o(])
-h([-D)f Fn(dbg)p Fy(])f([-h])h([--hdr_pad)e Fn(nbr)p
-Fy(])390 734 y([-l)i Fn(path)p Fy(])f([-O])h([-o)g Fn(output-file)p
-Fy(])d([-p)j Fn(path)p Fy(])g([-R])f([-r])h([--ram_all])390
-844 y Fn(input-file)e Fy([[)p Fn(output-file)p Fy(]])150
-1010 y FD(DESCRIPTION)275 1177 y Fy(ncatted)35 b FD(edits)k(attributes)
+(ncgen)f(and)h(ncdump)f(can)438 5230 y(*)h(also)g(handle)f(these)g
+(characters)f(in)i(names.)438 5340 y(*/)p eop end
+%%Page: 167 173
+TeXDict begin 167 172 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(167)150 299 y(netcdf-3.6.3)150
+408 y(netcdf-4.0)32 b(Final)f(2008/08/28)390 677 y Fz(/*)438
+787 y(*)47 b(Verify)f(that)h(a)g(name)g(string)f(is)h(valid)g(syntax.)
+93 b(The)47 b(allowed)f(name)438 897 y(*)h(syntax)f(\(in)h(RE)g(form\))
+g(is:)438 1006 y(*)438 1116 y(*)g(\([a-zA-Z_]|{UTF8}\)\([^\\x00)o
+(-\\x1)o(F\\x)o(7F/])o(|{UT)o(F8})o(\)*)438 1225 y(*)438
+1335 y(*)g(where)g(UTF8)f(represents)f(a)j(multibyte)d(UTF-8)h
+(encoding.)93 b(Also,)47 b(no)438 1445 y(*)g(trailing)f(spaces)g(are)h
+(permitted)e(in)i(names.)94 b(This)47 b(definition)438
+1554 y(*)g(must)g(be)g(consistent)e(with)i(the)g(one)f(in)i(ncgen.l.)93
+b(We)47 b(do)g(not)g(allow)g('/')438 1664 y(*)g(because)f(HDF5)h(does)f
+(not)h(permit)f(slashes)g(in)h(names)g(as)g(slash)f(is)h(used)g(as)g(a)
+438 1773 y(*)g(group)g(separator.)92 b(If)47 b(UTF-8)g(is)g(supported,)
+e(then)i(a)g(multi-byte)e(UTF-8)438 1883 y(*)i(character)e(can)i(occur)
+g(anywhere)e(within)h(an)i(identifier.)92 b(We)47 b(later)438
+1993 y(*)g(normalize)e(UTF-8)i(strings)f(to)h(NFC)g(to)g(facilitate)e
+(matching)g(and)i(queries.)438 2102 y(*/)p eop end
+%%Page: 168 174
+TeXDict begin 168 173 bop 150 -116 a FE(168)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.2)68 b Fb(ncatted)42
+b FC(netCDF)j(A)l(ttribute)g(Editor)150 458 y FE(SYNT)-8
+b(AX)390 631 y Fz(ncatted)46 b([-a)h Fo(att_dsc)p Fz(])e([-a)i(...)o(])
+h([-D)f Fo(dbg)p Fz(])f([-h])h([--hdr_pad)e Fo(nbr)p
+Fz(])390 741 y([-l)i Fo(path)p Fz(])f([-O])h([-o)g Fo(output-file)p
+Fz(])d([-p)j Fo(path)p Fz(])g([-R])f([-r])h([--ram_all])390
+850 y Fo(input-file)e Fz([[)p Fo(output-file)p Fz(]])150
+1023 y FE(DESCRIPTION)275 1196 y Fz(ncatted)35 b FE(edits)k(attributes)
 f(in)g(a)g(netCDF)h(\014le.)63 b(If)38 b(y)m(ou)g(are)g(editing)h
-(attributes)g(then)e(y)m(ou)i(are)150 1286 y(sp)s(ending)e(to)s(o)i(m)m
+(attributes)g(then)e(y)m(ou)i(are)150 1306 y(sp)s(ending)e(to)s(o)i(m)m
 (uc)m(h)g(time)g(in)g(the)f(w)m(orld)h(of)g(metadata,)j(and)c
-Fy(ncatted)f FD(w)m(as)i(written)f(to)i(get)g(y)m(ou)150
-1396 y(bac)m(k)28 b(out)g(as)f(quic)m(kly)h(and)f(painlessly)h(as)f(p)s
-(ossible.)40 b Fy(ncatted)25 b FD(can)j Fz(app)s(end)p
-FD(,)e Fz(create)p FD(,)k Fz(delete)p FD(,)f Fz(mo)s(dify)p
-FD(,)150 1506 y(and)35 b Fz(o)m(v)m(erwrite)43 b FD(attributes)37
-b(\(all)g(explained)g(b)s(elo)m(w\).)58 b Fy(ncatted)34
-b FD(allo)m(ws)k(eac)m(h)f(editing)g(op)s(eration)f(to)150
-1615 y(b)s(e)29 b(applied)h(to)h(ev)m(ery)f(v)-5 b(ariable)31
+Fz(ncatted)f FE(w)m(as)i(written)f(to)i(get)g(y)m(ou)150
+1415 y(bac)m(k)28 b(out)g(as)f(quic)m(kly)h(and)f(painlessly)h(as)f(p)s
+(ossible.)40 b Fz(ncatted)25 b FE(can)j FA(app)s(end)p
+FE(,)e FA(create)p FE(,)k FA(delete)p FE(,)f FA(mo)s(dify)p
+FE(,)150 1525 y(and)35 b FA(o)m(v)m(erwrite)43 b FE(attributes)37
+b(\(all)g(explained)g(b)s(elo)m(w\).)58 b Fz(ncatted)34
+b FE(allo)m(ws)k(eac)m(h)f(editing)g(op)s(eration)f(to)150
+1634 y(b)s(e)29 b(applied)h(to)h(ev)m(ery)f(v)-5 b(ariable)31
 b(in)f(a)g(\014le.)41 b(This)29 b(sa)m(v)m(es)i(time)g(when)d(c)m
-(hanging)j(attribute)g(con)m(v)m(en)m(tions)150 1725
-y(throughout)e(a)h(\014le.)41 b Fy(ncatted)28 b FD(is)h(for)h
-Fo(writing)38 b FD(attributes.)j(T)-8 b(o)30 b Fo(r)-5
-b(e)g(ad)41 b FD(attribute)31 b(v)-5 b(alues)30 b(in)f(plain)h(text,)
-150 1834 y(use)35 b Fy(ncks)29 b(-m)h(-M)p FD(,)35 b(or)g(de\014ne)g
-(something)g(lik)m(e)h Fy(ncattget)d FD(as)i(a)h(shell)f(command)f
-(\(see)i(Section)g(4.7.2)150 1944 y([Filters)c(for)e
-Fy(ncks)p FD(],)f(page)j(184\).)275 2110 y(Because)46
-b(rep)s(eated)f(use)f(of)h Fy(ncatted)e FD(can)i(considerably)g
-(increase)h(the)f(size)h(of)f(the)g Fy(history)150 2220
-y FD(global)32 b(attribute)g(\(see)g(Section)g(3.35)h([History)e(A)m
-(ttribute],)i(page)f(98\),)h(the)e(`)p Fy(-h)p FD(')g(switc)m(h)g(is)g
-(pro)m(vided)150 2330 y(to)j(o)m(v)m(erride)h(automatically)i(app)s
-(ending)32 b(the)i(command)g(to)g(the)g Fy(history)e
-FD(global)j(attribute)f(in)g(the)150 2439 y Fz(output-\014le)p
-FD(.)275 2606 y(According)29 b(to)g(the)f Fz(netCDF)h(User)g(Guide)p
-FD(,)g(altering)g(metadata)h(in)f(netCDF)g(\014les)f(do)s(es)g(not)h
-(incur)150 2715 y(the)e(p)s(enalt)m(y)h(of)f(recop)m(ying)h(the)f(en)m
+(hanging)j(attribute)g(con)m(v)m(en)m(tions)150 1744
+y(throughout)e(a)h(\014le.)41 b Fz(ncatted)28 b FE(is)h(for)h
+Fp(writing)38 b FE(attributes.)j(T)-8 b(o)30 b Fp(r)-5
+b(e)g(ad)41 b FE(attribute)31 b(v)-5 b(alues)30 b(in)f(plain)h(text,)
+150 1854 y(use)35 b Fz(ncks)29 b(-m)h(-M)p FE(,)35 b(or)g(de\014ne)g
+(something)g(lik)m(e)h Fz(ncattget)d FE(as)i(a)h(shell)f(command)f
+(\(see)i(Section)g(4.7.2)150 1963 y([Filters)c(for)e
+Fz(ncks)p FE(],)f(page)j(196\).)275 2136 y(Because)46
+b(rep)s(eated)f(use)f(of)h Fz(ncatted)e FE(can)i(considerably)g
+(increase)h(the)f(size)h(of)f(the)g Fz(history)150 2246
+y FE(global)29 b(attribute)f(\(see)g(Section)h(3.36)g([History)f(A)m
+(ttribute],)i(page)e(108\),)i(the)d(`)p Fz(-h)p FE(')h(switc)m(h)g(is)f
+(pro)m(vided)150 2355 y(to)34 b(o)m(v)m(erride)h(automatically)i(app)s
+(ending)32 b(the)i(command)g(to)g(the)g Fz(history)e
+FE(global)j(attribute)f(in)g(the)150 2465 y FA(output-\014le)p
+FE(.)275 2638 y(According)29 b(to)g(the)f FA(netCDF)h(User)g(Guide)p
+FE(,)g(altering)g(metadata)h(in)f(netCDF)g(\014les)f(do)s(es)g(not)h
+(incur)150 2747 y(the)e(p)s(enalt)m(y)h(of)f(recop)m(ying)h(the)f(en)m
 (tire)h(\014le)g(when)e(the)h(new)g(metadata)h(o)s(ccupies)g(less)f
-(space)h(than)f(the)150 2825 y(old)32 b(metadata.)47
-b(Th)m(us)30 b Fy(ncatted)g FD(ma)m(y)j(run)d(m)m(uc)m(h)i(faster)g
+(space)h(than)f(the)150 2857 y(old)32 b(metadata.)47
+b(Th)m(us)30 b Fz(ncatted)g FE(ma)m(y)j(run)d(m)m(uc)m(h)i(faster)g
 (\(at)h(least)g(on)f(netCDF3)h(\014les\))f(if)f(judicious)150
-2934 y(use)g(of)h(header)f(padding)g(\(see)h(Section)h(3.2)f([Metadata)
+2966 y(use)g(of)h(header)f(padding)g(\(see)h(Section)h(3.2)f([Metadata)
 i(Optimization],)g(page)e(25\))h(w)m(as)e(made)h(when)150
-3044 y(pro)s(ducing)23 b(the)i Fz(input-\014le)p FD(.)39
-b(Similarly)-8 b(,)26 b(using)f(the)g(`)p Fy(--hdr_pad)p
-FD(')d(option)j(with)g Fy(ncatted)e FD(helps)h(ensure)150
-3154 y(that)31 b(future)e(metadata)j(c)m(hanges)g(to)f
-Fz(output-\014le)k FD(o)s(ccur)c(as)f(swiftly)h(as)f(p)s(ossible.)275
-3320 y(When)36 b Fy(ncatted)e FD(is)j(used)f(to)h(c)m(hange)h(the)e
-Fy(_FillValue)e FD(attribute,)39 b(it)e(c)m(hanges)h(the)e(asso)s
-(ciated)150 3430 y(missing)22 b(data)h(self-consisten)m(tly)-8
+3076 y(pro)s(ducing)23 b(the)i FA(input-\014le)p FE(.)39
+b(Similarly)-8 b(,)26 b(using)f(the)g(`)p Fz(--hdr_pad)p
+FE(')d(option)j(with)g Fz(ncatted)e FE(helps)h(ensure)150
+3186 y(that)31 b(future)e(metadata)j(c)m(hanges)g(to)f
+FA(output-\014le)k FE(o)s(ccur)c(as)f(swiftly)h(as)f(p)s(ossible.)275
+3358 y(When)36 b Fz(ncatted)e FE(is)j(used)f(to)h(c)m(hange)h(the)e
+Fz(_FillValue)e FE(attribute,)39 b(it)e(c)m(hanges)h(the)e(asso)s
+(ciated)150 3468 y(missing)22 b(data)h(self-consisten)m(tly)-8
 b(.)41 b(If)22 b(the)g(in)m(ternal)h(\015oating)g(p)s(oin)m(t)g
 (represen)m(tation)g(of)f(a)h(missing)f(v)-5 b(alue,)150
-3539 y(e.g.,)38 b(1.0e36,)g(di\013ers)d(b)s(et)m(w)m(een)g(t)m(w)m(o)i
+3578 y(e.g.,)38 b(1.0e36,)g(di\013ers)d(b)s(et)m(w)m(een)g(t)m(w)m(o)i
 (mac)m(hines)e(then)g(netCDF)g(\014les)g(pro)s(duced)e(on)i(those)g
-(mac)m(hines)150 3649 y(will)28 b(ha)m(v)m(e)h(incompatible)g(missing)e
-(v)-5 b(alues.)40 b(This)27 b(allo)m(ws)i Fy(ncatted)d
-FD(to)i(c)m(hange)h(the)f(missing)f(v)-5 b(alues)28 b(in)150
-3758 y(\014les)34 b(from)g(di\013eren)m(t)g(mac)m(hines)h(to)g(a)f
+(mac)m(hines)150 3687 y(will)28 b(ha)m(v)m(e)h(incompatible)g(missing)e
+(v)-5 b(alues.)40 b(This)27 b(allo)m(ws)i Fz(ncatted)d
+FE(to)i(c)m(hange)h(the)f(missing)f(v)-5 b(alues)28 b(in)150
+3797 y(\014les)34 b(from)g(di\013eren)m(t)g(mac)m(hines)h(to)g(a)f
 (single)h(v)-5 b(alue)35 b(so)f(that)h(the)f(\014les)g(ma)m(y)h(then)f
-(b)s(e)g(concatenated,)150 3868 y(e.g.,)d(b)m(y)d Fy(ncrcat)p
-FD(,)g(without)g(losing)i(information.)40 b(See)29 b(Section)h(3.25)g
+(b)s(e)g(concatenated,)150 3906 y(e.g.,)d(b)m(y)d Fz(ncrcat)p
+FE(,)g(without)g(losing)i(information.)40 b(See)29 b(Section)h(3.25)g
 ([Missing)f(V)-8 b(alues],)31 b(page)e(71,)h(for)150
-3978 y(more)h(information.)275 4144 y(T)-8 b(o)38 b(master)g
-Fy(ncatted)d FD(one)j(m)m(ust)f(understand)f(the)i(meaning)g(of)g(the)f
-(structure)g(that)i(describ)s(es)150 4254 y(the)32 b(attribute)g(mo)s
-(di\014cation,)h Fz(att)p 1364 4254 28 4 v 41 w(dsc)k
-FD(sp)s(eci\014ed)31 b(b)m(y)h(the)g(required)f(option)h(`)p
-Fy(-a)p FD(')g(or)f(`)p Fy(--attribute)p FD('.)150 4363
-y(Eac)m(h)38 b Fz(att)p 504 4363 V 41 w(dsc)43 b FD(con)m(tains)c
-(\014v)m(e)f(elemen)m(ts,)j(whic)m(h)d(mak)m(es)g(using)f
-Fy(ncatted)f FD(somewhat)i(complicated,)150 4473 y(y)m(et)32
-b(p)s(o)m(w)m(erful.)40 b(The)30 b Fz(att)p 1014 4473
-V 41 w(dsc)35 b FD(\014elds)30 b(are)h(in)f(the)h(follo)m(wing)g
-(order:)275 4749 y Fz(att)p 396 4749 V 41 w(dsc)k FD(=)30
-b Fz(att)p 815 4749 V 41 w(nm)p FD(,)g Fz(v)-5 b(ar)p
-1162 4749 V 40 w(nm)p FD(,)30 b Fz(mo)s(de)p FD(,)g Fz(att)p
-1769 4749 V 41 w(t)m(yp)s(e)p FD(,)h Fz(att)p 2155 4749
-V 41 w(v)-5 b(al)150 5057 y(att)p 271 5057 V 41 w(nm)197
-b FD(A)m(ttribute)31 b(name.)41 b(Example:)g Fy(units)150
-5230 y Fz(v)-5 b(ar)p 280 5230 V 40 w(nm)189 b FD(V)-8
-b(ariable)41 b(name.)69 b(Example:)59 b Fy(pressure)p
-FD(,)40 b Fy('^H2O')p FD(.)67 b(Regular)40 b(expressions)g(\(see)g
-(Sec-)630 5340 y(tion)28 b(3.11)i([Subsetting)e(Files],)h(page)g(40\))g
-(are)f(accepted)i(and)d(will)h(select)i(an)m(y)e(matc)m(hing)p
-eop end
-%%Page: 157 163
-TeXDict begin 157 162 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(157)630
-299 y(v)-5 b(ariable)43 b(\()p Fo(not)52 b FD(attribute\))43
-b(names.)76 b(The)41 b(names)h Fy(global)f FD(and)g Fy(group)g
-FD(ha)m(v)m(e)i(sp)s(ecial)630 408 y(meaning.)150 555
-y Fz(mo)s(de)265 b FD(Edit)35 b(mo)s(de)f(abbreviation.)56
-b(Example:)50 b Fy(a)p FD(.)k(See)35 b(b)s(elo)m(w)g(for)g(complete)i
-(listing)e(of)h(v)-5 b(alid)630 665 y(v)g(alues)31 b(of)f
-Fz(mo)s(de)p FD(.)150 812 y Fz(att)p 271 812 28 4 v 41
-w(t)m(yp)s(e)150 b FD(A)m(ttribute)40 b(t)m(yp)s(e)g(abbreviation.)68
-b(Example:)58 b Fy(c)p FD(.)67 b(See)40 b(b)s(elo)m(w)f(for)g(complete)
-i(listing)f(of)630 922 y(v)-5 b(alid)31 b(v)-5 b(alues)30
-b(of)h Fz(att)p 1345 922 V 41 w(t)m(yp)s(e)p FD(.)150
-1068 y Fz(att)p 271 1068 V 41 w(v)-5 b(al)211 b FD(A)m(ttribute)31
-b(v)-5 b(alue.)41 b(Example:)g Fy(pascal)p FD(.)150 1247
+4016 y(more)h(information.)275 4189 y(T)-8 b(o)38 b(master)g
+Fz(ncatted)d FE(one)j(m)m(ust)f(understand)f(the)i(meaning)g(of)g(the)f
+(structure)g(that)i(describ)s(es)150 4298 y(the)32 b(attribute)g(mo)s
+(di\014cation,)h FA(att)p 1364 4298 28 4 v 41 w(dsc)k
+FE(sp)s(eci\014ed)31 b(b)m(y)h(the)g(required)f(option)h(`)p
+Fz(-a)p FE(')g(or)f(`)p Fz(--attribute)p FE('.)150 4408
+y(This)e(option)h(is)f(rep)s(eatable)i(and)e(ma)m(y)h(b)s(e)f(used)g(m)
+m(ultiple)h(time)g(in)g(a)g(single)g Fz(ncatted)e FE(in)m(v)m(o)s
+(cation)j(to)150 4518 y(increase)i(the)g(e\016ciency)g(of)f(altering)i
+(m)m(ultiple)f(attributes.)47 b(Eac)m(h)33 b FA(att)p
+2657 4518 V 41 w(dsc)k FE(con)m(tains)d(\014v)m(e)e(elemen)m(ts.)150
+4627 y(This)d(mak)m(es)h(using)f Fz(ncatted)e FE(somewhat)j
+(complicated,)h(though)e(p)s(o)m(w)m(erful.)40 b(The)29
+b FA(att)p 3200 4627 V 41 w(dsc)35 b FE(\014elds)29 b(are)150
+4737 y(in)h(the)h(follo)m(wing)g(order:)275 5019 y FA(att)p
+396 5019 V 41 w(dsc)k FE(=)30 b FA(att)p 815 5019 V 41
+w(nm)p FE(,)g FA(v)-5 b(ar)p 1162 5019 V 40 w(nm)p FE(,)30
+b FA(mo)s(de)p FE(,)g FA(att)p 1769 5019 V 41 w(t)m(yp)s(e)p
+FE(,)h FA(att)p 2155 5019 V 41 w(v)-5 b(al)150 5340 y(att)p
+271 5340 V 41 w(nm)197 b FE(A)m(ttribute)31 b(name.)41
+b(Example:)g Fz(units)p eop end
+%%Page: 169 175
+TeXDict begin 169 174 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(169)150 299 y FA(v)-5
+b(ar)p 280 299 28 4 v 40 w(nm)189 b FE(V)-8 b(ariable)41
+b(name.)69 b(Example:)59 b Fz(pressure)p FE(,)40 b Fz('^H2O')p
+FE(.)67 b(Regular)40 b(expressions)g(\(see)g(Sec-)630
+408 y(tion)28 b(3.11)i([Subsetting)e(Files],)h(page)g(40\))g(are)f
+(accepted)i(and)d(will)h(select)i(an)m(y)e(matc)m(hing)630
+518 y(v)-5 b(ariable)43 b(\()p Fp(not)52 b FE(attribute\))43
+b(names.)76 b(The)41 b(names)h Fz(global)f FE(and)g Fz(group)g
+FE(ha)m(v)m(e)i(sp)s(ecial)630 628 y(meaning.)150 780
+y FA(mo)s(de)265 b FE(Edit)35 b(mo)s(de)f(abbreviation.)56
+b(Example:)50 b Fz(a)p FE(.)k(See)35 b(b)s(elo)m(w)g(for)g(complete)i
+(listing)e(of)h(v)-5 b(alid)630 890 y(v)g(alues)31 b(of)f
+FA(mo)s(de)p FE(.)150 1042 y FA(att)p 271 1042 V 41 w(t)m(yp)s(e)150
+b FE(A)m(ttribute)40 b(t)m(yp)s(e)g(abbreviation.)68
+b(Example:)58 b Fz(c)p FE(.)67 b(See)40 b(b)s(elo)m(w)f(for)g(complete)
+i(listing)f(of)630 1151 y(v)-5 b(alid)31 b(v)-5 b(alues)30
+b(of)h FA(att)p 1345 1151 V 41 w(t)m(yp)s(e)p FE(.)150
+1304 y FA(att)p 271 1304 V 41 w(v)-5 b(al)211 b FE(A)m(ttribute)31
+b(v)-5 b(alue.)41 b(Example:)g Fz(pascal)p FE(.)150 1484
 y(There)25 b(should)g(b)s(e)g(no)h(empt)m(y)g(space)g(b)s(et)m(w)m(een)
 g(these)h(\014v)m(e)f(consecutiv)m(e)h(argumen)m(ts.)40
-b(The)25 b(description)150 1356 y(of)31 b(these)f(argumen)m(ts)h(follo)
-m(ws)h(in)e(their)g(order)g(of)g(app)s(earance.)275 1516
-y(The)37 b(v)-5 b(alue)38 b(of)g Fz(att)p 943 1516 V
-42 w(nm)f FD(is)h(the)g(name)g(of)g(the)g(attribute)h(y)m(ou)f(w)m(an)m
-(t)h(to)g(edit.)63 b(This)38 b(meaning)g(of)150 1625
-y(this)e(should)g(b)s(e)g(clear)i(to)f(all)h Fy(ncatted)c
-FD(users.)59 b(Recall,)40 b(as)d(men)m(tioned)g(ab)s(o)m(v)m(e,)i(that)
-f Fz(v)-5 b(ar)p 3382 1625 V 39 w(nm)36 b FD(\(but)150
-1735 y(not)29 b Fz(att)p 431 1735 V 41 w(nm)p FD(\))g(ma)m(y)g(b)s(e)f
-(sp)s(eci\014ed)h(as)g(a)g(regular)g(expression.)40 b(If)28
-b Fz(att)p 2514 1735 V 42 w(nm)g FD(is)h(omitted)g(\(i.e.,)i(left)f
-(blank\))150 1844 y(and)j Fz(Delete)40 b FD(mo)s(de)33
-b(is)g(selected,)j(then)c(all)j(attributes)e(asso)s(ciated)i(with)e
-(the)g(sp)s(eci\014ed)g(v)-5 b(ariable)34 b(will)150
-1954 y(b)s(e)c(deleted.)275 2113 y(The)23 b(v)-5 b(alue)24
-b(of)g Fz(v)-5 b(ar)p 910 2113 V 40 w(nm)23 b FD(is)h(the)g(name)g(of)g
-(the)h(v)-5 b(ariable)24 b(con)m(taining)i(the)e(attribute)g(\(named)g
-Fz(att)p 3553 2113 V 41 w(nm)p FD(\))150 2223 y(that)34
-b(y)m(ou)h(w)m(an)m(t)f(to)h(edit.)52 b(There)33 b(are)h(three)g(v)m
-(ery)g(imp)s(ortan)m(t)g(and)g(useful)f(exceptions)i(to)f(this)g(rule.)
-150 2333 y(The)39 b(v)-5 b(alue)39 b(of)h Fz(v)-5 b(ar)p
-832 2333 V 40 w(nm)38 b FD(can)h(also)h(b)s(e)f(used)f(to)i(direct)g
-Fy(ncatted)d FD(to)j(edit)f(global)i(attributes,)h(or)d(to)150
-2442 y(rep)s(eat)i(the)f(editing)h(op)s(eration)g(for)f(ev)m(ery)h
+b(The)25 b(description)150 1594 y(of)31 b(these)f(argumen)m(ts)h(follo)
+m(ws)h(in)e(their)g(order)g(of)g(app)s(earance.)275 1753
+y(The)j(v)-5 b(alue)34 b(of)h FA(att)p 932 1753 V 41
+w(nm)e FE(is)h(the)g(name)g(of)g(the)g(attribute)h(to)g(edit.)52
+b(This)33 b(meaning)h(of)g(this)g(should)150 1863 y(b)s(e)f(clear)i(to)
+g(all)g Fz(ncatted)d FE(users.)50 b(Recall,)37 b(as)d(men)m(tioned)h
+(ab)s(o)m(v)m(e,)h(that)e FA(v)-5 b(ar)p 2867 1863 V
+40 w(nm)33 b FE(\(but)h(not)g FA(att)p 3553 1863 V 41
+w(nm)p FE(\))150 1973 y(ma)m(y)f(b)s(e)e(sp)s(eci\014ed)h(as)g(a)h
+(regular)f(expression.)46 b(If)31 b FA(att)p 2036 1973
+V 41 w(nm)h FE(is)g(omitted)h(\(i.e.,)h(left)f(blank\))f(and)g
+FA(Delete)150 2082 y FE(mo)s(de)e(is)g(selected,)j(then)d(all)h
+(attributes)g(asso)s(ciated)h(with)e(the)g(sp)s(eci\014ed)g(v)-5
+b(ariable)31 b(will)g(b)s(e)f(deleted.)275 2242 y(The)23
+b(v)-5 b(alue)24 b(of)g FA(v)-5 b(ar)p 910 2242 V 40
+w(nm)23 b FE(is)h(the)g(name)g(of)g(the)h(v)-5 b(ariable)24
+b(con)m(taining)i(the)e(attribute)g(\(named)g FA(att)p
+3553 2242 V 41 w(nm)p FE(\))150 2351 y(that)34 b(y)m(ou)h(w)m(an)m(t)f
+(to)h(edit.)52 b(There)33 b(are)h(three)g(v)m(ery)g(imp)s(ortan)m(t)g
+(and)g(useful)f(exceptions)i(to)f(this)g(rule.)150 2461
+y(The)39 b(v)-5 b(alue)39 b(of)h FA(v)-5 b(ar)p 832 2461
+V 40 w(nm)38 b FE(can)h(also)h(b)s(e)f(used)f(to)i(direct)g
+Fz(ncatted)d FE(to)j(edit)f(global)i(attributes,)h(or)d(to)150
+2570 y(rep)s(eat)i(the)f(editing)h(op)s(eration)g(for)f(ev)m(ery)h
 (group)f(or)g(v)-5 b(ariable)41 b(in)f(a)h(\014le.)71
-b(A)30 b(v)-5 b(alue)41 b(of)f Fz(v)-5 b(ar)p 3476 2442
-V 40 w(nm)40 b FD(of)150 2552 y Fy(global)34 b FD(indicates)j(that)f
-Fz(att)p 1180 2552 V 42 w(nm)f FD(refers)g(to)i(a)f(global)h(\(i.e.,)i
+b(A)30 b(v)-5 b(alue)41 b(of)f FA(v)-5 b(ar)p 3476 2570
+V 40 w(nm)40 b FE(of)150 2680 y Fz(global)34 b FE(indicates)j(that)f
+FA(att)p 1180 2680 V 42 w(nm)f FE(refers)g(to)i(a)f(global)h(\(i.e.,)i
 (ro)s(ot-lev)m(el\))g(attribute,)f(rather)e(than)f(to)150
-2661 y(a)h(particular)h(v)-5 b(ariable's)37 b(attribute.)58
-b(This)36 b(is)g(the)g(metho)s(d)g Fy(ncatted)e FD(supp)s(orts)g(for)i
-(editing)h(global)150 2771 y(attributes.)57 b(A)31 b(v)-5
-b(alue)36 b(of)g Fz(v)-5 b(ar)p 1199 2771 V 40 w(nm)34
-b FD(of)i Fy(group)e FD(indicates)j(that)f Fz(att)p 2485
-2771 V 41 w(nm)f FD(refers)h(to)g(all)h(groups,)f(rather)150
-2880 y(than)41 b(to)h(a)g(particular)g(v)-5 b(ariable's)42
+2790 y(a)h(particular)h(v)-5 b(ariable's)37 b(attribute.)58
+b(This)36 b(is)g(the)g(metho)s(d)g Fz(ncatted)e FE(supp)s(orts)g(for)i
+(editing)h(global)150 2899 y(attributes.)57 b(A)31 b(v)-5
+b(alue)36 b(of)g FA(v)-5 b(ar)p 1199 2899 V 40 w(nm)34
+b FE(of)i Fz(group)e FE(indicates)j(that)f FA(att)p 2485
+2899 V 41 w(nm)f FE(refers)h(to)g(all)h(groups,)f(rather)150
+3009 y(than)41 b(to)h(a)g(particular)g(v)-5 b(ariable's)42
 b(or)f(group's)g(attribute.)75 b(The)41 b(op)s(eration)h(will)f(pro)s
-(ceed)g(to)h(edit)150 2990 y(group)28 b(metadata)i(for)e(ev)m(ery)h
-(group.)39 b(Finally)-8 b(,)30 b(if)f Fz(v)-5 b(ar)p
-2012 2990 V 40 w(nm)27 b FD(is)h(left)h(blank,)g(then)f
-Fy(ncatted)e FD(attempts)j(to)150 3100 y(p)s(erform)g(the)i(editing)h
+(ceed)g(to)h(edit)150 3118 y(group)28 b(metadata)i(for)e(ev)m(ery)h
+(group.)39 b(Finally)-8 b(,)30 b(if)f FA(v)-5 b(ar)p
+2012 3118 V 40 w(nm)27 b FE(is)h(left)h(blank,)g(then)f
+Fz(ncatted)e FE(attempts)j(to)150 3228 y(p)s(erform)g(the)i(editing)h
 (op)s(eration)f(on)g(ev)m(ery)h(v)-5 b(ariable)31 b(in)g(the)g(\014le.)
 42 b(This)30 b(option)h(ma)m(y)h(b)s(e)e(con)m(v)m(enien)m(t)150
-3209 y(to)h(use)f(if)h(y)m(ou)f(decide)h(to)g(c)m(hange)h(the)e(con)m
+3337 y(to)h(use)f(if)h(y)m(ou)f(decide)h(to)g(c)m(hange)h(the)e(con)m
 (v)m(en)m(tions)j(y)m(ou)d(use)g(for)h(describing)f(the)g(data.)275
-3369 y(The)h(v)-5 b(alue)33 b(of)g Fz(mo)s(de)k FD(is)c(a)f(single)h(c)
-m(haracter)h(abbreviation)g(\()p Fy(a)p FD(,)f Fy(c)p
-FD(,)g Fy(d)p FD(,)f Fy(m)p FD(,)h(or)g Fy(o)p FD(\))f(standing)g(for)h
-(one)150 3478 y(of)e(\014v)m(e)f(editing)h(mo)s(des:)150
-3766 y Fy(a)432 b Fz(App)s(end)p FD(.)96 b(App)s(end)48
-b(v)-5 b(alue)50 b Fz(att)p 1804 3766 V 41 w(v)-5 b(al)53
-b FD(to)e(curren)m(t)e Fz(v)-5 b(ar)p 2601 3766 V 40
-w(nm)48 b FD(attribute)j Fz(att)p 3335 3766 V 41 w(nm)d
-FD(v)-5 b(alue)630 3875 y Fz(att)p 751 3875 V 41 w(v)g(al)p
-FD(,)41 b(if)d(an)m(y)-8 b(.)65 b(If)37 b Fz(v)-5 b(ar)p
-1507 3875 V 40 w(nm)37 b FD(do)s(es)h(not)h(ha)m(v)m(e)g(an)f
-(attribute)h Fz(att)p 2952 3875 V 41 w(nm)p FD(,)g(there)f(is)h(no)f
-(ef-)630 3985 y(fect.)150 4132 y Fy(c)432 b Fz(Create)p
-FD(.)56 b(Create)36 b(v)-5 b(ariable)36 b Fz(v)-5 b(ar)p
-1747 4132 V 40 w(nm)35 b FD(attribute)g Fz(att)p 2452
-4132 V 42 w(nm)f FD(with)h Fz(att)p 2982 4132 V 41 w(v)-5
-b(al)39 b FD(if)d Fz(att)p 3379 4132 V 41 w(nm)e FD(do)s(es)630
-4242 y(not)d(y)m(et)g(exist.)42 b(If)30 b Fz(v)-5 b(ar)p
-1415 4242 V 40 w(nm)29 b FD(already)i(has)f(an)g(attribute)i
-Fz(att)p 2720 4242 V 41 w(nm)p FD(,)e(there)g(is)h(no)f(e\013ect.)150
-4389 y Fy(d)432 b Fz(Delete)p FD(.)57 b(Delete)37 b(curren)m(t)e
-Fz(v)-5 b(ar)p 1698 4389 V 40 w(nm)34 b FD(attribute)h
-Fz(att)p 2402 4389 V 42 w(nm)p FD(.)53 b(If)35 b Fz(v)-5
-b(ar)p 2869 4389 V 40 w(nm)34 b FD(do)s(es)h(not)g(ha)m(v)m(e)h(an)630
-4498 y(attribute)23 b Fz(att)p 1127 4498 V 41 w(nm)p
-FD(,)g(there)f(is)g(no)f(e\013ect.)40 b(If)21 b Fz(att)p
-2237 4498 V 41 w(nm)g FD(is)h(omitted)h(\(left)g(blank\),)h(then)d(all)
-i(at-)630 4608 y(tributes)j(asso)s(ciated)i(with)f(the)f(sp)s
-(eci\014ed)g(v)-5 b(ariable)28 b(are)f(automatically)i(deleted.)40
-b(When)630 4717 y Fz(Delete)46 b FD(mo)s(de)39 b(is)g(selected,)j(the)d
-Fz(att)p 1939 4717 V 42 w(t)m(yp)s(e)44 b FD(and)38 b
-Fz(att)p 2499 4717 V 41 w(v)-5 b(al)43 b FD(argumen)m(ts)c(are)h(sup)s
-(er\015uous)630 4827 y(and)30 b(ma)m(y)h(b)s(e)e(left)j(blank.)150
-4974 y Fy(m)432 b Fz(Mo)s(dify)p FD(.)46 b(Change)33
-b(v)-5 b(alue)32 b(of)h(curren)m(t)f Fz(v)-5 b(ar)p 2105
-4974 V 40 w(nm)31 b FD(attribute)j Fz(att)p 2805 4974
-V 41 w(nm)d FD(to)i(v)-5 b(alue)33 b Fz(att)p 3469 4974
-V 41 w(v)-5 b(al)p FD(.)47 b(If)630 5083 y Fz(v)-5 b(ar)p
-760 5083 V 40 w(nm)30 b FD(do)s(es)g(not)g(ha)m(v)m(e)i(an)e(attribute)
-h Fz(att)p 2158 5083 V 41 w(nm)p FD(,)f(there)h(is)f(no)g(e\013ect.)150
-5230 y Fy(o)432 b Fz(Ov)m(erwrite)p FD(.)40 b(W)-8 b(rite)29
-b(attribute)f Fz(att)p 1841 5230 V 41 w(nm)e FD(with)h(v)-5
-b(alue)28 b Fz(att)p 2586 5230 V 41 w(v)-5 b(al)32 b
-FD(to)c(v)-5 b(ariable)28 b Fz(v)-5 b(ar)p 3342 5230
-V 40 w(nm)p FD(,)27 b(o)m(v)m(er-)630 5340 y(writing)j(existing)i
-(attribute)f Fz(att)p 1785 5340 V 41 w(nm)p FD(,)f(if)g(an)m(y)-8
-b(.)42 b(This)29 b(is)i(the)f(default)h(mo)s(de.)p eop
-end
-%%Page: 158 164
-TeXDict begin 158 163 bop 150 -116 a FD(158)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(The)e(v)-5 b(alue)30
-b(of)f Fz(att)p 917 299 28 4 v 41 w(t)m(yp)s(e)34 b FD(is)c(a)f(single)
-h(c)m(haracter)h(abbreviation)e(\()p Fy(f)p FD(,)h Fy(d)p
-FD(,)f Fy(l)p FD(,)g Fy(i)p FD(,)h Fy(s)p FD(,)f Fy(c)p
-FD(,)g Fy(b)p FD(,)h Fy(u)p FD(\))f(or)g(a)g(short)150
-408 y(string)h(standing)h(for)f(one)g(of)h(the)f(t)m(w)m(elv)m(e)j
-(primitiv)m(e)e(netCDF)g(data)g(t)m(yp)s(es:)150 704
-y Fy(f)432 b Fz(Float)p FD(.)77 b(V)-8 b(alue\(s\))44
-b(sp)s(eci\014ed)d(in)h Fz(att)p 1929 704 V 41 w(v)-5
-b(al)46 b FD(will)c(b)s(e)g(stored)g(as)g(netCDF)g(in)m(trinsic)h(t)m
-(yp)s(e)630 813 y Fy(NC_FLOAT)p FD(.)150 974 y Fy(d)432
-b Fz(Double)p FD(.)60 b(V)-8 b(alue\(s\))38 b(sp)s(eci\014ed)e(in)g
-Fz(att)p 1967 974 V 41 w(v)-5 b(al)41 b FD(will)36 b(b)s(e)g(stored)h
-(as)g(netCDF)g(in)m(trinsic)g(t)m(yp)s(e)630 1084 y Fy(NC_DOUBLE)p
-FD(.)150 1245 y Fy(i,)30 b(l)306 b Fz(In)m(teger)33 b
-FD(or)25 b Fz(Long)p FD(.)39 b(V)-8 b(alue\(s\))27 b(sp)s(eci\014ed)d
-(in)h Fz(att)p 2245 1245 V 41 w(v)-5 b(al)30 b FD(will)25
-b(b)s(e)g(stored)g(as)h(netCDF)g(in)m(trinsic)630 1354
-y(t)m(yp)s(e)31 b Fy(NC_INT)p FD(.)150 1515 y Fy(s)432
-b Fz(Short)p FD(.)73 b(V)-8 b(alue\(s\))43 b(sp)s(eci\014ed)e(in)g
-Fz(att)p 1932 1515 V 41 w(v)-5 b(al)46 b FD(will)c(b)s(e)f(stored)g(as)
-h(netCDF)g(in)m(trinsic)g(t)m(yp)s(e)630 1625 y Fy(NC_SHORT)p
-FD(.)150 1786 y Fy(c)432 b Fz(Char)p FD(.)78 b(V)-8 b(alue\(s\))44
-b(sp)s(eci\014ed)f(in)f Fz(att)p 1921 1786 V 42 w(v)-5
-b(al)47 b FD(will)c(b)s(e)f(stored)i(as)f(netCDF)g(in)m(trinsic)h(t)m
-(yp)s(e)630 1895 y Fy(NC_CHAR)p FD(.)150 2056 y Fy(b)432
-b Fz(Byte)p FD(.)82 b(V)-8 b(alue\(s\))45 b(sp)s(eci\014ed)e(in)h
-Fz(att)p 1917 2056 V 41 w(v)-5 b(al)48 b FD(will)c(b)s(e)f(stored)g(as)
-h(netCDF)h(in)m(trinsic)f(t)m(yp)s(e)630 2166 y Fy(NC_BYTE)p
-FD(.)150 2327 y Fy(ub)384 b Fz(Unsigned)28 b(Byte)p FD(.)41
-b(V)-8 b(alue\(s\))30 b(sp)s(eci\014ed)e(in)g Fz(att)p
-2225 2327 V 42 w(v)-5 b(al)32 b FD(will)d(b)s(e)f(stored)h(as)f(netCDF)
-i(in)m(trinsic)630 2436 y(t)m(yp)s(e)h Fy(NC_UBYTE)p
-FD(.)150 2597 y Fy(us)384 b Fz(Unsigned)25 b(Short)p
-FD(.)39 b(V)-8 b(alue\(s\))27 b(sp)s(eci\014ed)e(in)g
-Fz(att)p 2242 2597 V 42 w(v)-5 b(al)29 b FD(will)d(b)s(e)g(stored)f(as)
-h(netCDF)h(in)m(trinsic)630 2707 y(t)m(yp)s(e)k Fy(NC_USHORT)p
-FD(.)150 2868 y Fy(u,)f(ui,)f(ul)85 b Fz(Unsigned)34
-b(In)m(t)p FD(.)53 b(V)-8 b(alue\(s\))36 b(sp)s(eci\014ed)e(in)g
-Fz(att)p 2190 2868 V 41 w(v)-5 b(al)39 b FD(will)34 b(b)s(e)g(stored)h
-(as)f(netCDF)i(in)m(trinsic)630 2977 y(t)m(yp)s(e)31
-b Fy(NC_UINT)p FD(.)150 3138 y Fy(ll,)e(int64)67 b Fz(In)m(t64)p
-FD(.)77 b(V)-8 b(alue\(s\))44 b(sp)s(eci\014ed)e(in)g
-Fz(att)p 1927 3138 V 41 w(v)-5 b(al)46 b FD(will)d(b)s(e)e(stored)i(as)
-f(netCDF)h(in)m(trinsic)g(t)m(yp)s(e)630 3248 y Fy(NC_INT64)p
-FD(.)150 3409 y Fy(ull,)29 b(uint64)630 3518 y Fz(Uin)m(t64)p
-FD(.)64 b(V)-8 b(alue\(s\))39 b(sp)s(eci\014ed)e(in)g
-Fz(att)p 1959 3518 V 42 w(v)-5 b(al)41 b FD(will)d(b)s(e)f(stored)h(as)
-g(netCDF)g(in)m(trinsic)g(t)m(yp)s(e)630 3628 y Fy(NC_UINT64)p
-FD(.)150 3789 y Fy(sng,)29 b(string)630 3898 y Fz(String)p
-FD(.)68 b(V)-8 b(alue\(s\))41 b(sp)s(eci\014ed)e(in)g
-Fz(att)p 1946 3898 V 41 w(v)-5 b(al)44 b FD(will)c(b)s(e)e(stored)i(as)
-g(netCDF)g(in)m(trinsic)g(t)m(yp)s(e)630 4008 y Fy(NC_STRING)p
-FD(.)63 b(Note)41 b(that)e Fy(ncatted)e FD(handles)h(t)m(yp)s(e)h
-Fy(NC_STRING)d FD(attributes)k(correctly)630 4117 y(b)s(eginning)33
+3497 y(The)h(v)-5 b(alue)33 b(of)g FA(mo)s(de)k FE(is)c(a)f(single)h(c)
+m(haracter)h(abbreviation)g(\()p Fz(a)p FE(,)f Fz(c)p
+FE(,)g Fz(d)p FE(,)f Fz(m)p FE(,)h(or)g Fz(o)p FE(\))f(standing)g(for)h
+(one)150 3606 y(of)e(\014v)m(e)f(editing)h(mo)s(des:)150
+3897 y Fz(a)432 b FA(App)s(end)p FE(.)96 b(App)s(end)48
+b(v)-5 b(alue)50 b FA(att)p 1804 3897 V 41 w(v)-5 b(al)53
+b FE(to)e(curren)m(t)e FA(v)-5 b(ar)p 2601 3897 V 40
+w(nm)48 b FE(attribute)j FA(att)p 3335 3897 V 41 w(nm)d
+FE(v)-5 b(alue)630 4006 y FA(att)p 751 4006 V 41 w(v)g(al)p
+FE(,)41 b(if)d(an)m(y)-8 b(.)65 b(If)37 b FA(v)-5 b(ar)p
+1507 4006 V 40 w(nm)37 b FE(do)s(es)h(not)h(ha)m(v)m(e)g(an)f
+(attribute)h FA(att)p 2952 4006 V 41 w(nm)p FE(,)g(there)f(is)h(no)f
+(ef-)630 4116 y(fect.)150 4268 y Fz(c)432 b FA(Create)p
+FE(.)56 b(Create)36 b(v)-5 b(ariable)36 b FA(v)-5 b(ar)p
+1747 4268 V 40 w(nm)35 b FE(attribute)g FA(att)p 2452
+4268 V 42 w(nm)f FE(with)h FA(att)p 2982 4268 V 41 w(v)-5
+b(al)39 b FE(if)d FA(att)p 3379 4268 V 41 w(nm)e FE(do)s(es)630
+4378 y(not)e(y)m(et)g(exist.)45 b(If)31 b FA(v)-5 b(ar)p
+1421 4378 V 40 w(nm)30 b FE(already)i(has)f(an)h(attribute)g
+FA(att)p 2731 4378 V 41 w(nm)p FE(,)f(there)h(is)f(no)g(e\013ect,)j(so)
+630 4487 y(the)d(existing)g(attribute)g(is)f(preserv)m(ed)g(without)h
+(c)m(hange.)150 4640 y Fz(d)432 b FA(Delete)p FE(.)57
+b(Delete)37 b(curren)m(t)e FA(v)-5 b(ar)p 1698 4640 V
+40 w(nm)34 b FE(attribute)h FA(att)p 2402 4640 V 42 w(nm)p
+FE(.)53 b(If)35 b FA(v)-5 b(ar)p 2869 4640 V 40 w(nm)34
+b FE(do)s(es)h(not)g(ha)m(v)m(e)h(an)630 4749 y(attribute)23
+b FA(att)p 1127 4749 V 41 w(nm)p FE(,)g(there)f(is)g(no)f(e\013ect.)40
+b(If)21 b FA(att)p 2237 4749 V 41 w(nm)g FE(is)h(omitted)h(\(left)g
+(blank\),)h(then)d(all)i(at-)630 4859 y(tributes)j(asso)s(ciated)i
+(with)f(the)f(sp)s(eci\014ed)g(v)-5 b(ariable)28 b(are)f(automatically)
+i(deleted.)40 b(When)630 4969 y FA(Delete)46 b FE(mo)s(de)39
+b(is)g(selected,)j(the)d FA(att)p 1939 4969 V 42 w(t)m(yp)s(e)44
+b FE(and)38 b FA(att)p 2499 4969 V 41 w(v)-5 b(al)43
+b FE(argumen)m(ts)c(are)h(sup)s(er\015uous)630 5078 y(and)30
+b(ma)m(y)h(b)s(e)e(left)j(blank.)150 5230 y Fz(m)432
+b FA(Mo)s(dify)p FE(.)46 b(Change)33 b(v)-5 b(alue)32
+b(of)h(curren)m(t)f FA(v)-5 b(ar)p 2105 5230 V 40 w(nm)31
+b FE(attribute)j FA(att)p 2805 5230 V 41 w(nm)d FE(to)i(v)-5
+b(alue)33 b FA(att)p 3469 5230 V 41 w(v)-5 b(al)p FE(.)47
+b(If)630 5340 y FA(v)-5 b(ar)p 760 5340 V 40 w(nm)30
+b FE(do)s(es)g(not)g(ha)m(v)m(e)i(an)e(attribute)h FA(att)p
+2158 5340 V 41 w(nm)p FE(,)f(there)h(is)f(no)g(e\013ect.)p
+eop end
+%%Page: 170 176
+TeXDict begin 170 175 bop 150 -116 a FE(170)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Fz(o)432 b FA(Ov)m(erwrite)p
+FE(.)40 b(W)-8 b(rite)29 b(attribute)f FA(att)p 1841
+299 28 4 v 41 w(nm)e FE(with)h(v)-5 b(alue)28 b FA(att)p
+2586 299 V 41 w(v)-5 b(al)32 b FE(to)c(v)-5 b(ariable)28
+b FA(v)-5 b(ar)p 3342 299 V 40 w(nm)p FE(,)27 b(o)m(v)m(er-)630
+408 y(writing)j(existing)i(attribute)f FA(att)p 1785
+408 V 41 w(nm)p FE(,)f(if)g(an)m(y)-8 b(.)42 b(This)29
+b(is)i(the)f(default)h(mo)s(de.)275 597 y(The)d(v)-5
+b(alue)30 b(of)f FA(att)p 917 597 V 41 w(t)m(yp)s(e)34
+b FE(is)c(a)f(single)h(c)m(haracter)h(abbreviation)e(\()p
+Fz(f)p FE(,)h Fz(d)p FE(,)f Fz(l)p FE(,)g Fz(i)p FE(,)h
+Fz(s)p FE(,)f Fz(c)p FE(,)g Fz(b)p FE(,)h Fz(u)p FE(\))f(or)g(a)g
+(short)150 706 y(string)h(standing)h(for)f(one)g(of)h(the)f(t)m(w)m
+(elv)m(e)j(primitiv)m(e)e(netCDF)g(data)g(t)m(yp)s(es:)150
+1004 y Fz(f)432 b FA(Float)p FE(.)77 b(V)-8 b(alue\(s\))44
+b(sp)s(eci\014ed)d(in)h FA(att)p 1929 1004 V 41 w(v)-5
+b(al)46 b FE(will)c(b)s(e)g(stored)g(as)g(netCDF)g(in)m(trinsic)h(t)m
+(yp)s(e)630 1113 y Fz(NC_FLOAT)p FE(.)150 1277 y Fz(d)432
+b FA(Double)p FE(.)60 b(V)-8 b(alue\(s\))38 b(sp)s(eci\014ed)e(in)g
+FA(att)p 1967 1277 V 41 w(v)-5 b(al)41 b FE(will)36 b(b)s(e)g(stored)h
+(as)g(netCDF)g(in)m(trinsic)g(t)m(yp)s(e)630 1386 y Fz(NC_DOUBLE)p
+FE(.)150 1549 y Fz(i,)30 b(l)306 b FA(In)m(teger)33 b
+FE(or)25 b FA(Long)p FE(.)39 b(V)-8 b(alue\(s\))27 b(sp)s(eci\014ed)d
+(in)h FA(att)p 2245 1549 V 41 w(v)-5 b(al)30 b FE(will)25
+b(b)s(e)g(stored)g(as)h(netCDF)g(in)m(trinsic)630 1659
+y(t)m(yp)s(e)31 b Fz(NC_INT)p FE(.)150 1822 y Fz(s)432
+b FA(Short)p FE(.)73 b(V)-8 b(alue\(s\))43 b(sp)s(eci\014ed)e(in)g
+FA(att)p 1932 1822 V 41 w(v)-5 b(al)46 b FE(will)c(b)s(e)f(stored)g(as)
+h(netCDF)g(in)m(trinsic)g(t)m(yp)s(e)630 1932 y Fz(NC_SHORT)p
+FE(.)150 2095 y Fz(c)432 b FA(Char)p FE(.)78 b(V)-8 b(alue\(s\))44
+b(sp)s(eci\014ed)f(in)f FA(att)p 1921 2095 V 42 w(v)-5
+b(al)47 b FE(will)c(b)s(e)f(stored)i(as)f(netCDF)g(in)m(trinsic)h(t)m
+(yp)s(e)630 2204 y Fz(NC_CHAR)p FE(.)150 2368 y Fz(b)432
+b FA(Byte)p FE(.)82 b(V)-8 b(alue\(s\))45 b(sp)s(eci\014ed)e(in)h
+FA(att)p 1917 2368 V 41 w(v)-5 b(al)48 b FE(will)c(b)s(e)f(stored)g(as)
+h(netCDF)h(in)m(trinsic)f(t)m(yp)s(e)630 2477 y Fz(NC_BYTE)p
+FE(.)150 2640 y Fz(ub)384 b FA(Unsigned)28 b(Byte)p FE(.)41
+b(V)-8 b(alue\(s\))30 b(sp)s(eci\014ed)e(in)g FA(att)p
+2225 2640 V 42 w(v)-5 b(al)32 b FE(will)d(b)s(e)f(stored)h(as)f(netCDF)
+i(in)m(trinsic)630 2750 y(t)m(yp)s(e)h Fz(NC_UBYTE)p
+FE(.)150 2913 y Fz(us)384 b FA(Unsigned)25 b(Short)p
+FE(.)39 b(V)-8 b(alue\(s\))27 b(sp)s(eci\014ed)e(in)g
+FA(att)p 2242 2913 V 42 w(v)-5 b(al)29 b FE(will)d(b)s(e)g(stored)f(as)
+h(netCDF)h(in)m(trinsic)630 3023 y(t)m(yp)s(e)k Fz(NC_USHORT)p
+FE(.)150 3186 y Fz(u,)f(ui,)f(ul)85 b FA(Unsigned)34
+b(In)m(t)p FE(.)53 b(V)-8 b(alue\(s\))36 b(sp)s(eci\014ed)e(in)g
+FA(att)p 2190 3186 V 41 w(v)-5 b(al)39 b FE(will)34 b(b)s(e)g(stored)h
+(as)f(netCDF)i(in)m(trinsic)630 3296 y(t)m(yp)s(e)31
+b Fz(NC_UINT)p FE(.)150 3459 y Fz(ll,)e(int64)67 b FA(In)m(t64)p
+FE(.)77 b(V)-8 b(alue\(s\))44 b(sp)s(eci\014ed)e(in)g
+FA(att)p 1927 3459 V 41 w(v)-5 b(al)46 b FE(will)d(b)s(e)e(stored)i(as)
+f(netCDF)h(in)m(trinsic)g(t)m(yp)s(e)630 3568 y Fz(NC_INT64)p
+FE(.)150 3732 y Fz(ull,)29 b(uint64)630 3841 y FA(Uin)m(t64)p
+FE(.)64 b(V)-8 b(alue\(s\))39 b(sp)s(eci\014ed)e(in)g
+FA(att)p 1959 3841 V 42 w(v)-5 b(al)41 b FE(will)d(b)s(e)f(stored)h(as)
+g(netCDF)g(in)m(trinsic)g(t)m(yp)s(e)630 3951 y Fz(NC_UINT64)p
+FE(.)150 4114 y Fz(sng,)29 b(string)630 4223 y FA(String)p
+FE(.)68 b(V)-8 b(alue\(s\))41 b(sp)s(eci\014ed)e(in)g
+FA(att)p 1946 4223 V 41 w(v)-5 b(al)44 b FE(will)c(b)s(e)e(stored)i(as)
+g(netCDF)g(in)m(trinsic)g(t)m(yp)s(e)630 4333 y Fz(NC_STRING)p
+FE(.)63 b(Note)41 b(that)e Fz(ncatted)e FE(handles)h(t)m(yp)s(e)h
+Fz(NC_STRING)d FE(attributes)k(correctly)630 4443 y(b)s(eginning)33
 b(with)h(v)m(ersion)h(4.3.3)g(released)g(in)f(July)-8
 b(,)35 b(2013.)53 b(Earlier)35 b(v)m(ersions)f(fail)h(when)630
-4227 y(ask)m(ed)c(to)g(handle)f Fy(NC_STRING)e FD(attributes.)150
-4413 y(In)i Fz(Delete)37 b FD(mo)s(de)30 b(the)h(sp)s(eci\014cation)g
-(of)g Fz(att)p 1695 4413 V 41 w(t)m(yp)s(e)k FD(is)c(optional)g(\(and)f
-(is)h(ignored)f(if)h(supplied\).)275 4573 y(The)42 b(v)-5
-b(alue)43 b(of)h Fz(att)p 959 4573 V 41 w(v)-5 b(al)47
-b FD(is)c(what)g(y)m(ou)g(w)m(an)m(t)h(to)g(c)m(hange)g(attribute)f
-Fz(att)p 2871 4573 V 42 w(nm)f FD(to)i(con)m(tain.)79
-b(The)150 4682 y(sp)s(eci\014cation)39 b(of)e Fz(att)p
-907 4682 V 42 w(v)-5 b(al)41 b FD(is)d(optional)h(in)f
-Fz(Delete)45 b FD(\(and)37 b(is)h(ignored\))g(mo)s(de.)62
-b(A)m(ttribute)39 b(v)-5 b(alues)38 b(for)150 4792 y(all)32
-b(t)m(yp)s(es)e(b)s(esides)g Fy(NC_CHAR)f FD(m)m(ust)h(ha)m(v)m(e)i(an)
+4552 y(ask)m(ed)c(to)g(handle)f Fz(NC_STRING)e FE(attributes.)150
+4740 y(In)i FA(Delete)37 b FE(mo)s(de)30 b(the)h(sp)s(eci\014cation)g
+(of)g FA(att)p 1695 4740 V 41 w(t)m(yp)s(e)k FE(is)c(optional)g(\(and)f
+(is)h(ignored)f(if)h(supplied\).)275 4902 y(The)42 b(v)-5
+b(alue)43 b(of)h FA(att)p 959 4902 V 41 w(v)-5 b(al)47
+b FE(is)c(what)g(y)m(ou)g(w)m(an)m(t)h(to)g(c)m(hange)g(attribute)f
+FA(att)p 2871 4902 V 42 w(nm)f FE(to)i(con)m(tain.)79
+b(The)150 5011 y(sp)s(eci\014cation)39 b(of)e FA(att)p
+907 5011 V 42 w(v)-5 b(al)41 b FE(is)d(optional)h(in)f
+FA(Delete)45 b FE(\(and)37 b(is)h(ignored\))g(mo)s(de.)62
+b(A)m(ttribute)39 b(v)-5 b(alues)38 b(for)150 5121 y(all)32
+b(t)m(yp)s(es)e(b)s(esides)g Fz(NC_CHAR)f FE(m)m(ust)h(ha)m(v)m(e)i(an)
 f(attribute)g(length)g(of)g(at)g(least)h(one.)42 b(Th)m(us)29
-b Fz(att)p 3400 4792 V 42 w(v)-5 b(al)34 b FD(ma)m(y)150
-4902 y(b)s(e)f(a)h(single)g(v)-5 b(alue)34 b(or)f(one-dimensional)i
-(arra)m(y)f(of)f(elemen)m(ts)i(of)f(t)m(yp)s(e)g Fy(att_type)p
-FD(.)47 b(If)33 b(the)h Fz(att)p 3503 4902 V 41 w(v)-5
-b(al)38 b FD(is)150 5011 y(not)h(set)h(or)f(is)g(set)h(to)g(empt)m(y)f
-(space,)j(and)d(the)g Fz(att)p 1999 5011 V 41 w(t)m(yp)s(e)45
-b FD(is)39 b Fy(NC_CHAR)p FD(,)g(e.g.,)k Fy(-a)30 b(units,T,o,c,"")150
-5121 y FD(or)38 b Fy(-a)30 b(units,T,o,c,)p FD(,)37 b(then)g(the)h
-(corresp)s(onding)f(attribute)i(is)f(set)h(to)f(ha)m(v)m(e)h(zero)g
-(length.)64 b(When)150 5230 y(sp)s(ecifying)44 b(an)g(arra)m(y)h(of)g
-(v)-5 b(alues,)48 b(it)d(is)g(safest)g(to)g(enclose)g
-Fz(att)p 2453 5230 V 41 w(v)-5 b(al)49 b FD(in)44 b(single)h(or)f
-(double)g(quotes,)150 5340 y(e.g.,)25 b Fy(-a)k(levels,T,o,s,"1,2,3,4")
-15 b FD(or)22 b Fy(-a)29 b(levels,T,o,s,'1,2,3,4')p FD(.)j(The)21
-b(quotes)g(are)h(strictly)p eop end
-%%Page: 159 165
-TeXDict begin 159 164 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(159)150
-299 y(unnecessary)35 b(around)g Fz(att)p 1094 299 28
-4 v 41 w(v)-5 b(al)39 b FD(except)e(when)e Fz(att)p 1936
-299 V 41 w(v)-5 b(al)40 b FD(con)m(tains)c(c)m(haracters)h(whic)m(h)f
-(w)m(ould)f(confuse)150 408 y(the)c(calling)g(shell,)g(suc)m(h)f(as)h
-(spaces,)g(commas,)g(and)f(wildcard)g(c)m(haracters.)275
-568 y FC(NCO)j FD(pro)s(cessing)g(of)h Fy(NC_CHAR)e FD(attributes)i(is)
+b FA(att)p 3400 5121 V 42 w(v)-5 b(al)34 b FE(ma)m(y)150
+5230 y(b)s(e)f(a)h(single)g(v)-5 b(alue)34 b(or)f(one-dimensional)i
+(arra)m(y)f(of)f(elemen)m(ts)i(of)f(t)m(yp)s(e)g Fz(att_type)p
+FE(.)47 b(If)33 b(the)h FA(att)p 3503 5230 V 41 w(v)-5
+b(al)38 b FE(is)150 5340 y(not)h(set)h(or)f(is)g(set)h(to)g(empt)m(y)f
+(space,)j(and)d(the)g FA(att)p 1999 5340 V 41 w(t)m(yp)s(e)45
+b FE(is)39 b Fz(NC_CHAR)p FE(,)g(e.g.,)k Fz(-a)30 b(units,T,o,c,"")p
+eop end
+%%Page: 171 177
+TeXDict begin 171 176 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(171)150 299 y(or)38
+b Fz(-a)30 b(units,T,o,c,)p FE(,)37 b(then)g(the)h(corresp)s(onding)f
+(attribute)i(is)f(set)h(to)f(ha)m(v)m(e)h(zero)g(length.)64
+b(When)150 408 y(sp)s(ecifying)44 b(an)g(arra)m(y)h(of)g(v)-5
+b(alues,)48 b(it)d(is)g(safest)g(to)g(enclose)g FA(att)p
+2453 408 28 4 v 41 w(v)-5 b(al)49 b FE(in)44 b(single)h(or)f(double)g
+(quotes,)150 518 y(e.g.,)25 b Fz(-a)k(levels,T,o,s,"1,2,3,4")15
+b FE(or)22 b Fz(-a)29 b(levels,T,o,s,'1,2,3,4')p FE(.)j(The)21
+b(quotes)g(are)h(strictly)150 628 y(unnecessary)35 b(around)g
+FA(att)p 1094 628 V 41 w(v)-5 b(al)39 b FE(except)e(when)e
+FA(att)p 1936 628 V 41 w(v)-5 b(al)40 b FE(con)m(tains)c(c)m(haracters)
+h(whic)m(h)f(w)m(ould)f(confuse)150 737 y(the)c(calling)g(shell,)g(suc)
+m(h)f(as)h(spaces,)g(commas,)g(and)f(wildcard)g(c)m(haracters.)275
+897 y FD(NCO)j FE(pro)s(cessing)g(of)h Fz(NC_CHAR)e FE(attributes)i(is)
 g(a)g(bit)g(lik)m(e)h(P)m(erl)f(in)g(that)g(it)g(attempts)h(to)f(do)g
-(what)150 678 y(y)m(ou)40 b(w)m(an)m(t)h(b)m(y)f(default)g(\(but)f
+(what)150 1007 y(y)m(ou)40 b(w)m(an)m(t)h(b)m(y)f(default)g(\(but)f
 (this)h(sometimes)h(causes)f(unexp)s(ected)g(results)f(if)h(y)m(ou)g(w)
-m(an)m(t)h(un)m(usual)150 787 y(data)26 b(storage\).)41
-b(If)25 b(the)h Fz(att)p 1094 787 V 41 w(t)m(yp)s(e)31
-b FD(is)26 b Fy(NC_CHAR)d FD(then)j(the)g(argumen)m(t)g(is)f(in)m
-(terpreted)h(as)g(a)g(string)f(and)g(it)150 897 y(ma)m(y)i(con)m(tain)i
-(C-language)f(escap)s(e)f(sequences,)h(e.g.,)h Fy(\\n)p
-FD(,)e(whic)m(h)g FC(NCO)f FD(will)h(in)m(terpret)h(b)s(efore)e
-(writing)150 1007 y(an)m(ything)32 b(to)h(disk.)45 b
-FC(NCO)31 b FD(translates)i(v)-5 b(alid)32 b(escap)s(e)h(sequences)f
-(and)f(stores)h(the)g(appropriate)g FC(ASCI)r(I)150 1116
-y FD(co)s(de)37 b(instead.)62 b(Since)37 b(t)m(w)m(o)i(b)m(yte)f(escap)
-s(e)f(sequences,)j(e.g.,)g Fy(\\n)p FD(,)f(represen)m(t)e(one-b)m(yte)i
-FC(ASCI)r(I)f FD(co)s(des,)150 1226 y(e.g.,)27 b FC(ASCI)r(I)e
-FD(10)h(\(decimal\),)i(the)c(stored)h(string)g(attribute)g(is)g(one)g
+m(an)m(t)h(un)m(usual)150 1116 y(data)26 b(storage\).)41
+b(If)25 b(the)h FA(att)p 1094 1116 V 41 w(t)m(yp)s(e)31
+b FE(is)26 b Fz(NC_CHAR)d FE(then)j(the)g(argumen)m(t)g(is)f(in)m
+(terpreted)h(as)g(a)g(string)f(and)g(it)150 1226 y(ma)m(y)i(con)m(tain)
+i(C-language)f(escap)s(e)f(sequences,)h(e.g.,)h Fz(\\n)p
+FE(,)e(whic)m(h)g FD(NCO)f FE(will)h(in)m(terpret)h(b)s(efore)e
+(writing)150 1335 y(an)m(ything)32 b(to)h(disk.)45 b
+FD(NCO)31 b FE(translates)i(v)-5 b(alid)32 b(escap)s(e)h(sequences)f
+(and)f(stores)h(the)g(appropriate)g FD(ASCI)r(I)150 1445
+y FE(co)s(de)37 b(instead.)62 b(Since)37 b(t)m(w)m(o)i(b)m(yte)f(escap)
+s(e)f(sequences,)j(e.g.,)g Fz(\\n)p FE(,)f(represen)m(t)e(one-b)m(yte)i
+FD(ASCI)r(I)f FE(co)s(des,)150 1554 y(e.g.,)27 b FD(ASCI)r(I)e
+FE(10)h(\(decimal\),)i(the)c(stored)h(string)g(attribute)g(is)g(one)g
 (b)m(yte)g(shorter)f(than)h(the)f(input)g(string)150
-1335 y(length)36 b(for)g(eac)m(h)i(em)m(b)s(edded)d(escap)s(e)h
+1664 y(length)36 b(for)g(eac)m(h)i(em)m(b)s(edded)d(escap)s(e)h
 (sequence.)58 b(The)36 b(most)g(frequen)m(tly)h(used)e(C-language)i
-(escap)s(e)150 1445 y(sequences)e(are)g Fy(\\n)e FD(\(for)i(linefeed\))
-g(and)f Fy(\\t)g FD(\(for)h(horizon)m(tal)h(tab\).)53
-b(These)35 b(sequences)f(in)h(particular)150 1554 y(allo)m(w)e(con)m(v)
+(escap)s(e)150 1774 y(sequences)e(are)g Fz(\\n)e FE(\(for)i(linefeed\))
+g(and)f Fz(\\t)g FE(\(for)h(horizon)m(tal)h(tab\).)53
+b(These)35 b(sequences)f(in)h(particular)150 1883 y(allo)m(w)e(con)m(v)
 m(enien)m(t)h(editing)e(of)g(formatted)g(text)h(attributes.)45
-b(The)31 b(other)h(v)-5 b(alid)32 b FC(ASCI)r(I)g FD(co)s(des)g(are)g
-Fy(\\a)p FD(,)150 1664 y Fy(\\b)p FD(,)37 b Fy(\\f)p
-FD(,)h Fy(\\r)p FD(,)f Fy(\\v)p FD(,)h(and)e Fy(\\\\)p
-FD(.)58 b(See)36 b(Section)i(4.7)f([nc)m(ks)g(netCDF)g(Kitc)m(hen)g
-(Sink],)g(page)g(176,)j(for)c(more)150 1774 y(examples)31
-b(of)f(string)h(formatting)g(\(with)f(the)h Fy(ncks)e
-FD(`)p Fy(-s)p FD(')i(option\))g(with)f(sp)s(ecial)h(c)m(haracters.)275
-1933 y(Analogous)k(to)h Fy(printf)p FD(,)e(other)h(sp)s(ecial)g(c)m
-(haracters)h(are)f(also)h(allo)m(w)m(ed)g(b)m(y)f Fy(ncatted)d
-FD(if)j(they)g(are)150 2043 y(\\protected")e(b)m(y)d(a)h(bac)m(kslash.)
-43 b(The)30 b(c)m(haracters)i Fy(")p FD(,)f Fy(')p FD(,)g
-Fy(?)p FD(,)f(and)g Fy(\\)h FD(ma)m(y)g(b)s(e)f(input)g(to)h(the)g
-(shell)g(as)g Fy(\\")p FD(,)150 2153 y Fy(\\')p FD(,)e
-Fy(\\?)p FD(,)f(and)g Fy(\\\\)p FD(.)40 b FC(NCO)28 b
-FD(simply)h(strips)f(a)m(w)m(a)m(y)i(the)f(leading)g(bac)m(kslash)h
-(from)e(these)h(c)m(haracters)h(b)s(efore)150 2262 y(editing)35
+b(The)31 b(other)h(v)-5 b(alid)32 b FD(ASCI)r(I)g FE(co)s(des)g(are)g
+Fz(\\a)p FE(,)150 1993 y Fz(\\b)p FE(,)37 b Fz(\\f)p
+FE(,)h Fz(\\r)p FE(,)f Fz(\\v)p FE(,)h(and)e Fz(\\\\)p
+FE(.)58 b(See)36 b(Section)i(4.7)f([nc)m(ks)g(netCDF)g(Kitc)m(hen)g
+(Sink],)g(page)g(188,)j(for)c(more)150 2102 y(examples)31
+b(of)f(string)h(formatting)g(\(with)f(the)h Fz(ncks)e
+FE(`)p Fz(-s)p FE(')i(option\))g(with)f(sp)s(ecial)h(c)m(haracters.)275
+2262 y(Analogous)k(to)h Fz(printf)p FE(,)e(other)h(sp)s(ecial)g(c)m
+(haracters)h(are)f(also)h(allo)m(w)m(ed)g(b)m(y)f Fz(ncatted)d
+FE(if)j(they)g(are)150 2372 y(\\protected")e(b)m(y)d(a)h(bac)m(kslash.)
+43 b(The)30 b(c)m(haracters)i Fz(")p FE(,)f Fz(')p FE(,)g
+Fz(?)p FE(,)f(and)g Fz(\\)h FE(ma)m(y)g(b)s(e)f(input)g(to)h(the)g
+(shell)g(as)g Fz(\\")p FE(,)150 2481 y Fz(\\')p FE(,)e
+Fz(\\?)p FE(,)f(and)g Fz(\\\\)p FE(.)40 b FD(NCO)28 b
+FE(simply)h(strips)f(a)m(w)m(a)m(y)i(the)f(leading)g(bac)m(kslash)h
+(from)e(these)h(c)m(haracters)h(b)s(efore)150 2591 y(editing)35
 b(the)f(attribute.)54 b(No)34 b(other)h(c)m(haracters)h(require)e
 (protection)h(b)m(y)f(a)h(bac)m(kslash.)53 b(Bac)m(kslashes)150
-2372 y(whic)m(h)27 b(precede)h(an)m(y)g(other)g(c)m(haracter)h(\(e.g.,)
-h Fy(3)p FD(,)e Fy(m)p FD(,)g Fy($)p FD(,)g Fy(|)p FD(,)g
-Fy(&)p FD(,)g Fy(@)p FD(,)h Fy(\045)p FD(,)f Fy({)p FD(,)g(and)f
-Fy(})p FD(\))g(will)h(not)g(b)s(e)f(\014ltered)h(and)150
-2481 y(will)j(b)s(e)e(included)h(in)g(the)h(attribute.)275
-2641 y(Note)37 b(that)h(the)e(NUL)h(c)m(haracter)h Fy(\\0)e
-FD(whic)m(h)g(terminates)i(C)30 b(language)38 b(strings)e(is)h(assumed)
-f(and)150 2751 y(need)44 b(not)g(b)s(e)f(explicitly)j(sp)s(eci\014ed.)
-81 b(If)43 b Fy(\\0)h FD(is)g(input,)j(it)d(is)g(translated)h(to)g(the)
-f(NUL)g(c)m(haracter.)150 2860 y(Ho)m(w)m(ev)m(er,)30
+2700 y(whic)m(h)27 b(precede)h(an)m(y)g(other)g(c)m(haracter)h(\(e.g.,)
+h Fz(3)p FE(,)e Fz(m)p FE(,)g Fz($)p FE(,)g Fz(|)p FE(,)g
+Fz(&)p FE(,)g Fz(@)p FE(,)h Fz(\045)p FE(,)f Fz({)p FE(,)g(and)f
+Fz(})p FE(\))g(will)h(not)g(b)s(e)f(\014ltered)h(and)150
+2810 y(will)j(b)s(e)e(included)h(in)g(the)h(attribute.)275
+2970 y(Note)37 b(that)h(the)e(NUL)h(c)m(haracter)h Fz(\\0)e
+FE(whic)m(h)g(terminates)i(C)30 b(language)38 b(strings)e(is)h(assumed)
+f(and)150 3079 y(need)44 b(not)g(b)s(e)f(explicitly)j(sp)s(eci\014ed.)
+81 b(If)43 b Fz(\\0)h FE(is)g(input,)j(it)d(is)g(translated)h(to)g(the)
+f(NUL)g(c)m(haracter.)150 3189 y(Ho)m(w)m(ev)m(er,)30
 b(this)c(will)i(mak)m(e)f(the)g(subsequen)m(t)f(p)s(ortion)h(of)g(the)g
 (string,)h(if)e(an)m(y)-8 b(,)29 b(in)m(visible)e(to)h(C)i(standard)150
-2970 y(library)35 b(string)g(functions.)54 b(And)35 b(that)g(ma)m(y)h
+3299 y(library)35 b(string)g(functions.)54 b(And)35 b(that)g(ma)m(y)h
 (cause)g(unin)m(tended)e(consequences.)56 b(Because)36
-b(of)f(these)150 3079 y(con)m(text-sensitiv)m(e)e(rules,)d(one)g(m)m
-(ust)f(use)h Fy(ncatted)e FD(with)h(care)h(in)g(order)f(to)i(store)f
-(data,)h(rather)e(than)150 3189 y(text)i(strings,)g(in)f(an)g
-(attribute)h(of)g(t)m(yp)s(e)f Fy(NC_CHAR)p FD(.)275
-3349 y(Note)36 b(that)f Fy(ncatted)e FD(in)m(terprets)i(c)m(haracter)h
+b(of)f(these)150 3408 y(con)m(text-sensitiv)m(e)e(rules,)d(one)g(m)m
+(ust)f(use)h Fz(ncatted)e FE(with)h(care)h(in)g(order)f(to)i(store)f
+(data,)h(rather)e(than)150 3518 y(text)i(strings,)g(in)f(an)g
+(attribute)h(of)g(t)m(yp)s(e)f Fz(NC_CHAR)p FE(.)275
+3677 y(Note)36 b(that)f Fz(ncatted)e FE(in)m(terprets)i(c)m(haracter)h
 (attributes)f(\(i.e.,)j(attributes)d(of)g(t)m(yp)s(e)g
-Fy(NC_CHAR)p FD(\))e(as)150 3458 y(strings.)41 b(EXAMPLES)275
-3618 y(App)s(end)28 b(the)j(string)f Fy(Data)f(version)f(2.0.\\n)h
-FD(to)i(the)g(global)g(attribute)h Fy(history)p FD(:)390
-3778 y Fy(ncatted)46 b(-a)h(history,global,a,c,'Data)41
-b(version)46 b(2.0\\n')g(in.nc)275 3937 y FD(Note)31
-b(the)g(use)f(of)g(em)m(b)s(edded)g(C)g(language)h Fy(printf\(\))p
-FD(-st)m(yle)f(escap)s(e)h(sequences.)275 4097 y(Change)i(the)g(v)-5
-b(alue)34 b(of)g(the)f Fy(long_name)e FD(attribute)j(for)g(v)-5
-b(ariable)34 b Fy(T)f FD(from)g(whatev)m(er)h(it)g(curren)m(tly)150
-4207 y(is)c(to)i(\\temp)s(erature":)390 4366 y Fy(ncatted)46
+Fz(NC_CHAR)p FE(\))e(as)150 3787 y(strings.)41 b(EXAMPLES)275
+3947 y(App)s(end)28 b(the)j(string)f Fz(Data)f(version)f(2.0.\\n)h
+FE(to)i(the)g(global)g(attribute)h Fz(history)p FE(:)390
+4106 y Fz(ncatted)46 b(-a)h(history,global,a,c,'Data)41
+b(version)46 b(2.0\\n')g(in.nc)275 4266 y FE(Note)31
+b(the)g(use)f(of)g(em)m(b)s(edded)g(C)g(language)h Fz(printf\(\))p
+FE(-st)m(yle)f(escap)s(e)h(sequences.)275 4426 y(Change)i(the)g(v)-5
+b(alue)34 b(of)g(the)f Fz(long_name)e FE(attribute)j(for)g(v)-5
+b(ariable)34 b Fz(T)f FE(from)g(whatev)m(er)h(it)g(curren)m(tly)150
+4535 y(is)c(to)i(\\temp)s(erature":)390 4695 y Fz(ncatted)46
 b(-a)h(long_name,T,o,c,temperat)o(ure)41 b(in.nc)275
-4526 y FC(NCO)d FD(arithmetic)j(op)s(erators)e(ma)m(y)h(not)f(w)m(ork)g
-(as)h(exp)s(ected)f(on)g FC(IEEE)f FD(NaN)i(\(short)f(for)g(Not-a-)150
-4636 y(Num)m(b)s(er\))34 b(and)g(NaN-lik)m(e)j(n)m(um)m(b)s(ers)c(suc)m
+4855 y FD(NCO)d FE(arithmetic)j(op)s(erators)e(ma)m(y)h(not)f(w)m(ork)g
+(as)h(exp)s(ected)f(on)g FD(IEEE)f FE(NaN)i(\(short)f(for)g(Not-a-)150
+4964 y(Num)m(b)s(er\))34 b(and)g(NaN-lik)m(e)j(n)m(um)m(b)s(ers)c(suc)m
 (h)h(as)g(p)s(ositiv)m(e)i(in\014nit)m(y)e(and)g(negativ)m(e)j
-(in\014nit)m(y)3285 4603 y Ft(1)3322 4636 y FD(.)53 b(One)34
-b(w)m(a)m(y)150 4745 y(to)29 b(w)m(ork-around)f(this)g(problem)g(is)h
-(to)g(c)m(hange)g FC(IEEE)e FD(NaNs)i(to)g(normal)g(missing)f(v)-5
-b(alues.)40 b(As)29 b(of)f FC(NCO)150 4855 y FD(4.1.0)33
-b(\(Marc)m(h,)f(2012\),)h Fy(ncatted)c FD(w)m(orks)h(with)h(NaNs.)42
-b(First)31 b(set)g(the)g(missing)g(v)-5 b(alue)31 b(\(i.e.,)i(the)d(v)
--5 b(alue)150 4964 y(of)31 b(the)f Fy(_FillValue)e FD(attribute\))j
-(for)f(the)h(v)-5 b(ariable\(s\))32 b(in)e(question)g(to)h(the)g
-FC(IEEE)e FD(NaN)i(v)-5 b(alue.)p 150 5066 1200 4 v 199
-5134 a Ft(1)275 5166 y Fs(Arithmetic)24 b(comparisons)j(to)e(NaN)g(and)
-g(NaN-lik)n(e)f(n)n(um)n(b)r(ers)g(alw)n(a)n(ys)i(return)f(F)-6
-b(alse,)26 b(con)n(trary)f(to)g(the)g(b)r(eha)n(vior)g(of)275
-5253 y(all)e(other)f(n)n(um)n(b)r(ers.)33 b(This)23 b(is)g(di\016cult)g
-(to)f(in)n(uit,)h(y)n(et)f(is)h(the)f(b)r(eha)n(vior)h(de\014ned)e(for)
-i(NaN)f(b)n(y)f Fp(IEEE)i Fs(754.)35 b(Using)22 b(NaN)275
+(in\014nit)m(y)3285 4931 y Fu(1)3322 4964 y FE(.)53 b(One)34
+b(w)m(a)m(y)p 150 5066 1200 4 v 199 5134 a Fu(1)275 5166
+y Ft(Arithmetic)24 b(comparisons)j(to)e(NaN)g(and)g(NaN-lik)n(e)f(n)n
+(um)n(b)r(ers)g(alw)n(a)n(ys)i(return)f(F)-6 b(alse,)26
+b(con)n(trary)f(to)g(the)g(b)r(eha)n(vior)g(of)275 5253
+y(all)e(other)f(n)n(um)n(b)r(ers.)33 b(This)23 b(is)f(di\016cult)h(to)f
+(in)n(uit,)h(y)n(et)e(is)i(the)f(b)r(eha)n(vior)g(de\014ned)g(for)h
+(NaN)e(b)n(y)h Fq(IEEE)j Ft(754)r(.)33 b(Using)22 b(NaN)275
 5340 y(for)k(the)f(missing)i(v)l(alue)f(in)f(datasets)i(is)f(legal.)36
 b(W)-6 b(e)25 b(strongly)h(discourage)i(it.)p eop end
-%%Page: 160 166
-TeXDict begin 160 165 bop 150 -116 a FD(160)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(ncatted)46 b(-a)h
-(_FillValue,,o,f,NaN)c(in.nc)275 460 y FD(Then)26 b(c)m(hange)i(the)g
-(missing)f(v)-5 b(alue)28 b(from)f(the)h FC(IEEE)e FD(NaN)i(v)-5
-b(alue)28 b(to)g(a)g(normal)f FC(IEEE)f FD(n)m(um)m(b)s(er,)h(lik)m(e)
-150 570 y(1.0e36)33 b(\(or)d(to)i(whatev)m(er)f(the)f(original)i
-(missing)e(v)-5 b(alue)31 b(w)m(as\).)390 731 y Fy(ncatted)46
-b(-a)h(_FillValue,,m,f,1.0e36)42 b(in.nc)275 893 y FD(Delete)32
-b(all)f(existing)h Fy(units)d FD(attributes:)390 1054
-y Fy(ncatted)46 b(-a)h(units,,d,,)e(in.nc)150 1216 y
-FD(The)29 b(v)-5 b(alue)30 b(of)g Fz(v)-5 b(ar)p 803
-1216 28 4 v 40 w(nm)29 b FD(w)m(as)h(left)h(blank)e(in)h(order)f(to)h
+%%Page: 172 178
+TeXDict begin 172 177 bop 150 -116 a FE(172)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(to)f(w)m(ork-around)f(this)g
+(problem)g(is)h(to)g(c)m(hange)g FD(IEEE)e FE(NaNs)i(to)g(normal)g
+(missing)f(v)-5 b(alues.)40 b(As)29 b(of)f FD(NCO)150
+408 y FE(4.1.0)33 b(\(Marc)m(h,)f(2012\),)h Fz(ncatted)c
+FE(w)m(orks)h(with)h(NaNs.)42 b(First)31 b(set)g(the)g(missing)g(v)-5
+b(alue)31 b(\(i.e.,)i(the)d(v)-5 b(alue)150 518 y(of)31
+b(the)f Fz(_FillValue)e FE(attribute\))j(for)f(the)h(v)-5
+b(ariable\(s\))32 b(in)e(question)g(to)h(the)g FD(IEEE)e
+FE(NaN)i(v)-5 b(alue.)390 682 y Fz(ncatted)46 b(-a)h
+(_FillValue,,o,f,NaN)c(in.nc)275 847 y FE(Then)26 b(c)m(hange)i(the)g
+(missing)f(v)-5 b(alue)28 b(from)f(the)h FD(IEEE)e FE(NaN)i(v)-5
+b(alue)28 b(to)g(a)g(normal)f FD(IEEE)f FE(n)m(um)m(b)s(er,)h(lik)m(e)
+150 956 y(1.0e36)33 b(\(or)d(to)i(whatev)m(er)f(the)f(original)i
+(missing)e(v)-5 b(alue)31 b(w)m(as\).)390 1121 y Fz(ncatted)46
+b(-a)h(_FillValue,,m,f,1.0e36)42 b(in.nc)275 1285 y FE(Delete)32
+b(all)f(existing)h Fz(units)d FE(attributes:)390 1450
+y Fz(ncatted)46 b(-a)h(units,,d,,)e(in.nc)150 1614 y
+FE(The)29 b(v)-5 b(alue)30 b(of)g FA(v)-5 b(ar)p 803
+1614 28 4 v 40 w(nm)29 b FE(w)m(as)h(left)h(blank)e(in)h(order)f(to)h
 (select)i(all)e(v)-5 b(ariables)31 b(in)e(the)h(\014le.)40
-b(The)30 b(v)-5 b(alues)30 b(of)150 1326 y Fz(att)p 271
-1326 V 41 w(t)m(yp)s(e)36 b FD(and)30 b Fz(att)p 814
-1326 V 41 w(v)-5 b(al)34 b FD(w)m(ere)d(left)g(blank)f(b)s(ecause)h
-(they)f(are)h(sup)s(er\015uous)c(in)j Fz(Delete)38 b
-FD(mo)s(de.)275 1487 y(Delete)32 b(all)f(attributes)g(asso)s(ciated)h
-(with)e(the)h Fy(tpt)e FD(v)-5 b(ariable,)32 b(and)d(delete)j(all)f
-(global)h(attributes)390 1649 y Fy(ncatted)46 b(-a)h(,tpt,d,,)f(-a)h
-(,global,d,,)d(in.nc)150 1810 y FD(The)d(v)-5 b(alue)41
-b(of)h Fz(att)p 829 1810 V 41 w(nm)e FD(w)m(as)i(left)g(blank)f(in)g
+b(The)30 b(v)-5 b(alues)30 b(of)150 1724 y FA(att)p 271
+1724 V 41 w(t)m(yp)s(e)36 b FE(and)30 b FA(att)p 814
+1724 V 41 w(v)-5 b(al)34 b FE(w)m(ere)d(left)g(blank)f(b)s(ecause)h
+(they)f(are)h(sup)s(er\015uous)c(in)j FA(Delete)38 b
+FE(mo)s(de.)275 1888 y(Delete)32 b(all)f(attributes)g(asso)s(ciated)h
+(with)e(the)h Fz(tpt)e FE(v)-5 b(ariable,)32 b(and)d(delete)j(all)f
+(global)h(attributes)390 2052 y Fz(ncatted)46 b(-a)h(,tpt,d,,)f(-a)h
+(,global,d,,)d(in.nc)150 2217 y FE(The)d(v)-5 b(alue)41
+b(of)h FA(att)p 829 2217 V 41 w(nm)e FE(w)m(as)i(left)g(blank)f(in)g
 (order)f(to)i(select)h(all)f(attributes)g(asso)s(ciated)h(with)e(the)
-150 1920 y(v)-5 b(ariable.)42 b(T)-8 b(o)30 b(delete)i(all)f(global)h
-(attributes,)f(simply)f(replace)h Fy(tpt)f FD(with)g
-Fy(global)f FD(in)h(the)g(ab)s(o)m(v)m(e.)275 2081 y(Mo)s(dify)g(all)h
-(existing)g Fy(units)e FD(attributes)i(to)g Fy(meter)e(second-1)p
-FD(:)390 2243 y Fy(ncatted)46 b(-a)h(units,,m,c,'meter)c(second-1')i
-(in.nc)275 2404 y FD(Add)31 b(a)h Fy(units)f FD(attribute)i(of)f
-Fy(kilogram)c(kilogram-1)i FD(to)j(all)g(v)-5 b(ariables)33
-b(whose)e(\014rst)h(three)g(c)m(har-)150 2514 y(acters)f(are)g(`)p
-Fy(H2O)p FD(':)390 2675 y Fy(ncatted)46 b(-a)h
+150 2326 y(v)-5 b(ariable.)42 b(T)-8 b(o)30 b(delete)i(all)f(global)h
+(attributes,)f(simply)f(replace)h Fz(tpt)f FE(with)g
+Fz(global)f FE(in)h(the)g(ab)s(o)m(v)m(e.)275 2491 y(Mo)s(dify)g(all)h
+(existing)g Fz(units)e FE(attributes)i(to)g Fz(meter)e(second-1)p
+FE(:)390 2655 y Fz(ncatted)46 b(-a)h(units,,m,c,'meter)c(second-1')i
+(in.nc)275 2819 y FE(Add)31 b(a)h Fz(units)f FE(attribute)i(of)f
+Fz(kilogram)c(kilogram-1)i FE(to)j(all)g(v)-5 b(ariables)33
+b(whose)e(\014rst)h(three)g(c)m(har-)150 2929 y(acters)f(are)g(`)p
+Fz(H2O)p FE(':)390 3093 y Fz(ncatted)46 b(-a)h
 (units,'^H2O',c,c,'kilogr)o(am)42 b(kilogram-1')i(in.nc)275
-2837 y FD(Ov)m(erwrite)30 b(the)h Fy(quanta)e FD(attribute)i(of)f(v)-5
-b(ariable)31 b Fy(energy)e FD(to)i(an)f(arra)m(y)h(of)g(four)e(in)m
-(tegers.)390 2998 y Fy(ncatted)46 b(-a)h(quanta,energy,o,s,'010,1)o
-(01,1)o(11,1)o(21')41 b(in.nc)275 3160 y FD(As)34 b(of)g
-FC(NCO)g FD(3.9.6)i(\(Jan)m(uary)-8 b(,)36 b(2009\),)i
-Fy(ncatted)32 b FD(accepts)k Fz(extended)e(regular)g(expressions)k
-FD(as)d(ar-)150 3269 y(gumen)m(ts)27 b(for)g(v)-5 b(ariable)28
+3258 y FE(Ov)m(erwrite)30 b(the)h Fz(quanta)e FE(attribute)i(of)f(v)-5
+b(ariable)31 b Fz(energy)e FE(to)i(an)f(arra)m(y)h(of)g(four)e(in)m
+(tegers.)390 3422 y Fz(ncatted)46 b(-a)h(quanta,energy,o,s,'010,1)o
+(01,1)o(11,1)o(21')41 b(in.nc)275 3587 y FE(As)34 b(of)g
+FD(NCO)g FE(3.9.6)i(\(Jan)m(uary)-8 b(,)36 b(2009\),)i
+Fz(ncatted)32 b FE(accepts)k FA(extended)e(regular)g(expressions)k
+FE(as)d(ar-)150 3696 y(gumen)m(ts)27 b(for)g(v)-5 b(ariable)28
 b(names,)f(though)g(not)g(for)g(attribute)g(names.)40
-b(Create)28 b Fy(isotope)d FD(attributes)i(for)150 3379
-y(all)k(v)-5 b(ariables)31 b(con)m(taining)h(`)p Fy(H2O)p
-FD(')e(in)g(their)h(names.)390 3540 y Fy(ncatted)46 b(-a)h
-(isotope,'^H2O*',c,s,'18')41 b(in.nc)275 3702 y FD(See)30
+b(Create)28 b Fz(isotope)d FE(attributes)i(for)150 3806
+y(all)k(v)-5 b(ariables)31 b(con)m(taining)h(`)p Fz(H2O)p
+FE(')e(in)g(their)h(names.)390 3970 y Fz(ncatted)46 b(-a)h
+(isotope,'^H2O*',c,s,'18')41 b(in.nc)275 4134 y FE(See)30
 b(Section)h(3.11)h([Subsetting)f(Files],)g(page)h(40)f(for)f(more)g
-(details.)275 3863 y(As)41 b(of)g FC(NCO)g FD(4.3.8)i(\(No)m(v)m(em)m
-(b)s(er,)j(2013\),)g Fy(ncatted)39 b FD(accepts)k(full)e(and)g(partial)
-h(group)e(paths)h(in)150 3973 y(names)30 b(of)h(attributes,)g(v)-5
-b(ariables,)31 b(dimensions,)f(and)g(groups.)390 4134
-y Fy(#)47 b(Overwrite)f(units)g(attribute)f(of)j(specific)d('lon')h
-(variable)390 4244 y(ncatted)g(-O)h(-a)g(units,/g1/lon,o,c,'degree)o
-(s_we)o(st')41 b(in_grp.nc)390 4354 y(#)47 b(Overwrite)f(units)g
-(attribute)f(of)j(all)e('lon')h(variables)390 4463 y(ncatted)f(-O)h(-a)
+(details.)275 4299 y(As)41 b(of)g FD(NCO)g FE(4.3.8)i(\(No)m(v)m(em)m
+(b)s(er,)j(2013\),)g Fz(ncatted)39 b FE(accepts)k(full)e(and)g(partial)
+h(group)e(paths)h(in)150 4408 y(names)30 b(of)h(attributes,)g(v)-5
+b(ariables,)31 b(dimensions,)f(and)g(groups.)390 4573
+y Fz(#)47 b(Overwrite)f(units)g(attribute)f(of)j(specific)d('lon')h
+(variable)390 4682 y(ncatted)g(-O)h(-a)g(units,/g1/lon,o,c,'degree)o
+(s_we)o(st')41 b(in_grp.nc)390 4792 y(#)47 b(Overwrite)f(units)g
+(attribute)f(of)j(all)e('lon')h(variables)390 4902 y(ncatted)f(-O)h(-a)
 g(units,lon,o,c,'degrees_we)o(st')41 b(in_grp.nc)390
-4573 y(#)47 b(Delete)g(units)f(attribute)f(of)i(all)g('lon')g
-(variables)390 4682 y(ncatted)f(-O)h(-a)g(units,lon,d,,)d(in_grp.nc)390
-4792 y(#)j(Overwrite)f(units)g(attribute)f(with)i(new)g(type)g(for)f
-(specific)g('lon')g(variable)390 4902 y(ncatted)g(-O)h(-a)g
-(units,/g1/lon,o,sng,'degr)o(ees_)o(wes)o(t')42 b(in_grp.nc)390
-5011 y(#)47 b(Add)g(new_att)f(attribute)f(to)j(all)f(variables)390
-5121 y(ncatted)f(-O)h(-a)g(new_att,,c,sng,'new)c(variable)i(attribute')
-g(in_grp.nc)390 5230 y(#)i(Add)g(new_grp_att)e(group)h(attribute)g(to)h
-(all)g(groups)390 5340 y(ncatted)f(-O)h(-a)g(new_grp_att,group,c,sng,')
-o(new)41 b(group)47 b(attribute')e(in_grp.nc)p eop end
-%%Page: 161 167
-TeXDict begin 161 166 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(161)390
-299 y Fy(#)47 b(Add)g(new_grp_att)e(group)h(attribute)g(to)h(single)f
-(group)390 408 y(ncatted)g(-O)h(-a)g(g1_grp_att,g1,c,sng,'new)41
-b(group)47 b(attribute')e(in_grp.nc)390 518 y(#)i(Add)g(new_glb_att)e
-(global)h(attribute)f(to)j(root)e(group)390 628 y(ncatted)g(-O)h(-a)g
+5011 y(#)47 b(Delete)g(units)f(attribute)f(of)i(all)g('lon')g
+(variables)390 5121 y(ncatted)f(-O)h(-a)g(units,lon,d,,)d(in_grp.nc)390
+5230 y(#)j(Overwrite)f(units)g(attribute)f(with)i(new)g(type)g(for)f
+(specific)g('lon')g(variable)390 5340 y(ncatted)g(-O)h(-a)g
+(units,/g1/lon,o,sng,'degr)o(ees_)o(wes)o(t')42 b(in_grp.nc)p
+eop end
+%%Page: 173 179
+TeXDict begin 173 178 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(173)390 299 y Fz(#)47
+b(Add)g(new_att)f(attribute)f(to)j(all)f(variables)390
+408 y(ncatted)f(-O)h(-a)g(new_att,,c,sng,'new)c(variable)i(attribute')g
+(in_grp.nc)390 518 y(#)i(Add)g(new_grp_att)e(group)h(attribute)g(to)h
+(all)g(groups)390 628 y(ncatted)f(-O)h(-a)g(new_grp_att,group,c,sng,')o
+(new)41 b(group)47 b(attribute')e(in_grp.nc)390 737 y(#)i(Add)g
+(new_grp_att)e(group)h(attribute)g(to)h(single)f(group)390
+847 y(ncatted)g(-O)h(-a)g(g1_grp_att,g1,c,sng,'new)41
+b(group)47 b(attribute')e(in_grp.nc)390 956 y(#)i(Add)g(new_glb_att)e
+(global)h(attribute)f(to)j(root)e(group)390 1066 y(ncatted)g(-O)h(-a)g
 (new_glb_att,global,c,sng,)o('new)41 b(global)46 b(attribute')f
-(in_grp.nc)275 787 y FD(Demonstrate)24 b(input)d(of)i(C-language)h
-(escap)s(e)f(sequences)f(\(e.g.,)k Fy(\\n)p FD(\))d(and)f(other)g(sp)s
-(ecial)h(c)m(haracters)150 897 y(\(e.g.,)32 b Fy(\\")p
-FD(\))390 1056 y Fy(ncatted)46 b(-h)h(-a)g(special,global,o,c,)390
-1166 y('\\nDouble)e(quote:)h(\\"\\nTwo)g(consecutive)f(double)h
-(quotes:)g(\\"\\"\\n)390 1275 y(Single)g(quote:)g(Beyond)g(my)h(shell)g
-(abilities!\\nBackslash:)42 b(\\\\\\n)390 1385 y(Two)47
+(in_grp.nc)275 1225 y FE(Demonstrate)24 b(input)d(of)i(C-language)h
+(escap)s(e)f(sequences)f(\(e.g.,)k Fz(\\n)p FE(\))d(and)f(other)g(sp)s
+(ecial)h(c)m(haracters)150 1335 y(\(e.g.,)32 b Fz(\\")p
+FE(\))390 1494 y Fz(ncatted)46 b(-h)h(-a)g(special,global,o,c,)390
+1604 y('\\nDouble)e(quote:)h(\\"\\nTwo)g(consecutive)f(double)h
+(quotes:)g(\\"\\"\\n)390 1714 y(Single)g(quote:)g(Beyond)g(my)h(shell)g
+(abilities!\\nBackslash:)42 b(\\\\\\n)390 1823 y(Two)47
 b(consecutive)e(backslashes:)f(\\\\\\\\\\nQuestion)g(mark:)i(\\?\\n')h
-(in.nc)275 1544 y FD(Note)32 b(that)g(the)g(en)m(tire)g(attribute)h(is)
+(in.nc)275 1983 y FE(Note)32 b(that)g(the)g(en)m(tire)g(attribute)h(is)
 e(protected)h(from)f(the)h(shell)g(b)m(y)f(single)h(quotes.)44
-b(These)32 b(outer)150 1654 y(single)f(quotes)g(are)g(necessary)f(for)h
+b(These)32 b(outer)150 2092 y(single)f(quotes)g(are)g(necessary)f(for)h
 (in)m(teractiv)m(e)i(use,)d(but)g(ma)m(y)h(b)s(e)e(omitted)j(in)e(batc)
 m(h)h(scripts.)p eop end
-%%Page: 162 168
-TeXDict begin 162 167 bop 150 -116 a FD(162)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.3)68 b Fc(ncbo)43
-b FB(netCDF)i(Binary)g(Op)t(erator)150 458 y FD(SYNT)-8
-b(AX)390 649 y Fy(ncbo)47 b([-3])f([-4])h([-6])g([-7])f([-A])h([-C])f
+%%Page: 174 180
+TeXDict begin 174 179 bop 150 -116 a FE(174)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.3)68 b Fb(ncbo)43
+b FC(netCDF)i(Binary)g(Op)t(erator)150 458 y FE(SYNT)-8
+b(AX)390 649 y Fz(ncbo)47 b([-3])f([-4])h([-6])g([-7])f([-A])h([-C])f
 ([-c])390 759 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])i([--cnk_min)e
 (sz])i([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390 868 y([-D)i
-Fn(dbg)p Fy(])g([-d)f Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])c([-F])390 978
-y([-G)47 b Fn(gpe_dsc)p Fy(])e([-g)i Fn(grp)p Fy([,...)n(]])g([-h])g
-([--hdr_pad)e Fn(nbr)p Fy(])390 1087 y([-L)i Fn(dfl_lvl)p
-Fy(])e([-l)i Fn(path)p Fy(])g([--no_tmp_fl])390 1197
-y([-O])g([-o)g Fn(file_3)p Fy(])e([-p)i Fn(path)p Fy(])g([-R])f([-r])h
-([--ram_all])390 1306 y([-t)g Fn(thr_nbr)p Fy(])e([--unn])h([-v)h
-Fn(var)p Fy([,...)n(]])g([-X)g(...])g([-x])f([-y)h Fn(op_typ)p
-Fy(])390 1416 y Fn(file_1)f(file_2)g Fy([)p Fn(file_3)p
-Fy(])150 1607 y FD(DESCRIPTION)275 1797 y Fy(ncbo)32
-b FD(p)s(erforms)g(binary)g(op)s(erations)i(on)f(v)-5
-b(ariables)34 b(in)f Fz(\014le)p 2356 1797 28 4 v 41
-w(1)41 b FD(and)32 b(the)i(corresp)s(onding)e(v)-5 b(ariables)150
+Fo(dbg)p Fz(])g([-d)f Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])c([-F])390 978
+y([-G)47 b Fo(gpe_dsc)p Fz(])e([-g)i Fo(grp)p Fz([,...)n(]])g([-h])g
+([--hdr_pad)e Fo(nbr)p Fz(])390 1087 y([-L)i Fo(dfl_lvl)p
+Fz(])e([-l)i Fo(path)p Fz(])g([--no_tmp_fl])390 1197
+y([-O])g([-o)g Fo(file_3)p Fz(])e([-p)i Fo(path)p Fz(])g([-R])f([-r])h
+([--ram_all])390 1306 y([-t)g Fo(thr_nbr)p Fz(])e([--unn])h([-v)h
+Fo(var)p Fz([,...)n(]])g([-X)g(...])g([-x])f([-y)h Fo(op_typ)p
+Fz(])390 1416 y Fo(file_1)f(file_2)g Fz([)p Fo(file_3)p
+Fz(])150 1607 y FE(DESCRIPTION)275 1797 y Fz(ncbo)32
+b FE(p)s(erforms)g(binary)g(op)s(erations)i(on)f(v)-5
+b(ariables)34 b(in)f FA(\014le)p 2356 1797 28 4 v 41
+w(1)41 b FE(and)32 b(the)i(corresp)s(onding)e(v)-5 b(ariables)150
 1907 y(\(those)32 b(with)e(the)h(same)h(name\))f(in)g
-Fz(\014le)p 1524 1907 V 40 w(2)38 b FD(and)31 b(stores)g(the)g(results)
-g(in)f Fz(\014le)p 2753 1907 V 40 w(3)p FD(.)43 b(The)30
+FA(\014le)p 1524 1907 V 40 w(2)38 b FE(and)31 b(stores)g(the)g(results)
+g(in)f FA(\014le)p 2753 1907 V 40 w(3)p FE(.)43 b(The)30
 b(binary)g(op)s(eration)150 2017 y(op)s(erates)42 b(on)g(the)g(en)m
 (tire)h(\014les)f(\(mo)s(dulo)g(an)m(y)g(excluded)g(v)-5
 b(ariables\).)77 b(See)42 b(Section)h(3.25)g([Missing)150
@@ -25120,67 +26311,67 @@ b(ariables\).)77 b(See)42 b(Section)h(3.25)g([Missing)150
 (missing)g(v)-5 b(alues.)75 b(One)42 b(of)g(the)g(four)f(standard)g
 (arithmetic)150 2236 y(binary)f(op)s(erations)h(curren)m(tly)g(supp)s
 (orted)d(m)m(ust)j(b)s(e)f(selected)i(with)e(the)h(`)p
-Fy(-y)30 b Fn(op_typ)p FD(')39 b(switc)m(h)j(\(or)150
-2345 y(long)e(options)h(`)p Fy(--op_typ)p FD(')d(or)i(`)p
-Fy(--operation)p FD('\).)67 b(The)39 b(v)-5 b(alid)40
-b(binary)g(op)s(erations)g(for)g Fy(ncbo)p FD(,)h(their)150
+Fz(-y)30 b Fo(op_typ)p FE(')39 b(switc)m(h)j(\(or)150
+2345 y(long)e(options)h(`)p Fz(--op_typ)p FE(')d(or)i(`)p
+Fz(--operation)p FE('\).)67 b(The)39 b(v)-5 b(alid)40
+b(binary)g(op)s(erations)g(for)g Fz(ncbo)p FE(,)h(their)150
 2455 y(de\014nitions,)30 b(corresp)s(onding)f(v)-5 b(alues)31
-b(of)g(the)f Fz(op)p 1832 2455 V 40 w(t)m(yp)k FD(k)m(ey)-8
+b(of)g(the)f FA(op)p 1832 2455 V 40 w(t)m(yp)k FE(k)m(ey)-8
 b(,)31 b(and)f(alternate)i(in)m(v)m(o)s(cations)h(are:)150
-2702 y Fz(Addition)129 b FD(De\014nition:)41 b Fz(\014le)p
-1210 2702 V 40 w(3)d FD(=)31 b Fz(\014le)p 1551 2702
-V 40 w(1)38 b Fy(+)30 b Fz(\014le)p 1868 2702 V 40 w(2)630
-2811 y FD(Alternate)i(in)m(v)m(o)s(cation:)43 b Fy(ncadd)630
-2921 y Fz(op)p 732 2921 V 40 w(t)m(yp)33 b FD(k)m(ey)e(v)-5
-b(alues:)42 b(`)p Fy(add)p FD(',)30 b(`)p Fy(+)p FD(',)h(`)p
-Fy(addition)p FD(')630 3030 y(Examples:)41 b(`)p Fy(ncbo)29
-b(--op_typ=add)e(1.nc)i(2.nc)h(3.nc)p FD(',)f(`)p Fy(ncadd)h(1.nc)f
-(2.nc)g(3.nc)p FD(')150 3362 y Fz(Subtraction)630 3472
-y FD(De\014nition:)41 b Fz(\014le)p 1210 3472 V 40 w(3)d
-FD(=)31 b Fz(\014le)p 1551 3472 V 40 w(1)38 b FD(-)30
-b Fz(\014le)p 1850 3472 V 40 w(2)630 3581 y FD(Alternate)i(in)m(v)m(o)s
-(cations:)42 b Fy(ncdiff)p FD(,)29 b Fy(ncsub)p FD(,)h
-Fy(ncsubtract)630 3691 y Fz(op)p 732 3691 V 40 w(t)m(yp)j
-FD(k)m(ey)e(v)-5 b(alues:)42 b(`)p Fy(sbt)p FD(',)30
-b(`)p Fy(-)p FD(',)h(`)p Fy(dff)p FD(',)f(`)p Fy(diff)p
-FD(',)g(`)p Fy(sub)p FD(',)g(`)p Fy(subtract)p FD(',)f(`)p
-Fy(subtraction)p FD(')630 3800 y(Examples:)41 b(`)p Fy(ncbo)29
-b(--op_typ=-)f(1.nc)h(2.nc)g(3.nc)p FD(',)h(`)p Fy(ncdiff)f(1.nc)g
-(2.nc)g(3.nc)p FD(')150 4132 y Fz(Multiplication)630
-4241 y FD(De\014nition:)41 b Fz(\014le)p 1210 4241 V
-40 w(3)d FD(=)31 b Fz(\014le)p 1551 4241 V 40 w(1)38
-b FD(*)30 b Fz(\014le)p 1865 4241 V 41 w(2)630 4351 y
-FD(Alternate)i(in)m(v)m(o)s(cations:)42 b Fy(ncmult)p
-FD(,)29 b Fy(ncmultiply)630 4461 y Fz(op)p 732 4461 V
-40 w(t)m(yp)k FD(k)m(ey)e(v)-5 b(alues:)42 b(`)p Fy(mlt)p
-FD(',)30 b(`)p Fy(*)p FD(',)h(`)p Fy(mult)p FD(',)f(`)p
-Fy(multiply)p FD(',)e(`)p Fy(multiplication)p FD(')630
-4570 y(Examples:)41 b(`)p Fy(ncbo)29 b(--op_typ=mlt)e(1.nc)i(2.nc)h
-(3.nc)p FD(',)f(`)p Fy(ncmult)g(1.nc)g(2.nc)h(3.nc)p
-FD(')150 4902 y Fz(Division)156 b FD(De\014nition:)41
-b Fz(\014le)p 1210 4902 V 40 w(3)d FD(=)31 b Fz(\014le)p
-1551 4902 V 40 w(1)38 b FD(/)30 b Fz(\014le)p 1865 4902
-V 41 w(2)630 5011 y FD(Alternate)i(in)m(v)m(o)s(cation:)43
-b Fy(ncdivide)630 5121 y Fz(op)p 732 5121 V 40 w(t)m(yp)33
-b FD(k)m(ey)e(v)-5 b(alues:)42 b(`)p Fy(dvd)p FD(',)30
-b(`)p Fy(/)p FD(',)h(`)p Fy(divide)p FD(',)e(`)p Fy(division)p
-FD(')630 5230 y(Examples:)41 b(`)p Fy(ncbo)29 b(--op_typ=/)f(1.nc)h
-(2.nc)g(3.nc)p FD(',)h(`)p Fy(ncdivide)e(1.nc)h(2.nc)h(3.nc)p
-FD(')p eop end
-%%Page: 163 169
-TeXDict begin 163 168 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(163)150
-299 y(Care)32 b(should)g(b)s(e)g(tak)m(en)h(when)e(using)h(the)h
-(shortest)g(form)e(of)i(k)m(ey)g(v)-5 b(alues,)34 b(i.e.,)g(`)p
-Fy(+)p FD(',)f(`)p Fy(-)p FD(',)g(`)p Fy(*)p FD(',)h(and)c(`)p
-Fy(/)p FD('.)150 408 y(Some)43 b(of)h(these)g(single)g(c)m(haracters)h
+2702 y FA(Addition)129 b FE(De\014nition:)41 b FA(\014le)p
+1210 2702 V 40 w(3)d FE(=)31 b FA(\014le)p 1551 2702
+V 40 w(1)38 b Fz(+)30 b FA(\014le)p 1868 2702 V 40 w(2)630
+2811 y FE(Alternate)i(in)m(v)m(o)s(cation:)43 b Fz(ncadd)630
+2921 y FA(op)p 732 2921 V 40 w(t)m(yp)33 b FE(k)m(ey)e(v)-5
+b(alues:)42 b(`)p Fz(add)p FE(',)30 b(`)p Fz(+)p FE(',)h(`)p
+Fz(addition)p FE(')630 3030 y(Examples:)41 b(`)p Fz(ncbo)29
+b(--op_typ=add)e(1.nc)i(2.nc)h(3.nc)p FE(',)f(`)p Fz(ncadd)h(1.nc)f
+(2.nc)g(3.nc)p FE(')150 3362 y FA(Subtraction)630 3472
+y FE(De\014nition:)41 b FA(\014le)p 1210 3472 V 40 w(3)d
+FE(=)31 b FA(\014le)p 1551 3472 V 40 w(1)38 b FE(-)30
+b FA(\014le)p 1850 3472 V 40 w(2)630 3581 y FE(Alternate)i(in)m(v)m(o)s
+(cations:)42 b Fz(ncdiff)p FE(,)29 b Fz(ncsub)p FE(,)h
+Fz(ncsubtract)630 3691 y FA(op)p 732 3691 V 40 w(t)m(yp)j
+FE(k)m(ey)e(v)-5 b(alues:)42 b(`)p Fz(sbt)p FE(',)30
+b(`)p Fz(-)p FE(',)h(`)p Fz(dff)p FE(',)f(`)p Fz(diff)p
+FE(',)g(`)p Fz(sub)p FE(',)g(`)p Fz(subtract)p FE(',)f(`)p
+Fz(subtraction)p FE(')630 3800 y(Examples:)41 b(`)p Fz(ncbo)29
+b(--op_typ=-)f(1.nc)h(2.nc)g(3.nc)p FE(',)h(`)p Fz(ncdiff)f(1.nc)g
+(2.nc)g(3.nc)p FE(')150 4132 y FA(Multiplication)630
+4241 y FE(De\014nition:)41 b FA(\014le)p 1210 4241 V
+40 w(3)d FE(=)31 b FA(\014le)p 1551 4241 V 40 w(1)38
+b FE(*)30 b FA(\014le)p 1865 4241 V 41 w(2)630 4351 y
+FE(Alternate)i(in)m(v)m(o)s(cations:)42 b Fz(ncmult)p
+FE(,)29 b Fz(ncmultiply)630 4461 y FA(op)p 732 4461 V
+40 w(t)m(yp)k FE(k)m(ey)e(v)-5 b(alues:)42 b(`)p Fz(mlt)p
+FE(',)30 b(`)p Fz(*)p FE(',)h(`)p Fz(mult)p FE(',)f(`)p
+Fz(multiply)p FE(',)e(`)p Fz(multiplication)p FE(')630
+4570 y(Examples:)41 b(`)p Fz(ncbo)29 b(--op_typ=mlt)e(1.nc)i(2.nc)h
+(3.nc)p FE(',)f(`)p Fz(ncmult)g(1.nc)g(2.nc)h(3.nc)p
+FE(')150 4902 y FA(Division)156 b FE(De\014nition:)41
+b FA(\014le)p 1210 4902 V 40 w(3)d FE(=)31 b FA(\014le)p
+1551 4902 V 40 w(1)38 b FE(/)30 b FA(\014le)p 1865 4902
+V 41 w(2)630 5011 y FE(Alternate)i(in)m(v)m(o)s(cation:)43
+b Fz(ncdivide)630 5121 y FA(op)p 732 5121 V 40 w(t)m(yp)33
+b FE(k)m(ey)e(v)-5 b(alues:)42 b(`)p Fz(dvd)p FE(',)30
+b(`)p Fz(/)p FE(',)h(`)p Fz(divide)p FE(',)e(`)p Fz(division)p
+FE(')630 5230 y(Examples:)41 b(`)p Fz(ncbo)29 b(--op_typ=/)f(1.nc)h
+(2.nc)g(3.nc)p FE(',)h(`)p Fz(ncdivide)e(1.nc)h(2.nc)h(3.nc)p
+FE(')p eop end
+%%Page: 175 181
+TeXDict begin 175 180 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(175)150 299 y(Care)32
+b(should)g(b)s(e)g(tak)m(en)h(when)e(using)h(the)h(shortest)g(form)e
+(of)i(k)m(ey)g(v)-5 b(alues,)34 b(i.e.,)g(`)p Fz(+)p
+FE(',)f(`)p Fz(-)p FE(',)g(`)p Fz(*)p FE(',)h(and)c(`)p
+Fz(/)p FE('.)150 408 y(Some)43 b(of)h(these)g(single)g(c)m(haracters)h
 (ma)m(y)f(ha)m(v)m(e)h(sp)s(ecial)f(meanings)f(to)h(the)g(shell)3149
-375 y Ft(1)3186 408 y FD(.)80 b(Place)44 b(these)150
+375 y Fu(1)3186 408 y FE(.)80 b(Place)44 b(these)150
 518 y(c)m(haracters)34 b(inside)f(quotes)g(to)h(k)m(eep)g(them)e(from)h
 (b)s(eing)f(in)m(terpreted)h(\(globb)s(ed\))h(b)m(y)e(the)h(shell)3506
-485 y Ft(2)3544 518 y FD(.)48 b(F)-8 b(or)150 628 y(example,)31
+485 y Fu(2)3544 518 y FE(.)48 b(F)-8 b(or)150 628 y(example,)31
 b(the)g(follo)m(wing)h(commands)e(are)g(equiv)-5 b(alen)m(t)390
-798 y Fy(ncbo)47 b(--op_typ=*)e(1.nc)h(2.nc)h(3.nc)g(#)g(Dangerous)e
+798 y Fz(ncbo)47 b(--op_typ=*)e(1.nc)h(2.nc)h(3.nc)g(#)g(Dangerous)e
 (\(shell)h(may)h(try)g(to)g(glob\))390 908 y(ncbo)g(--op_typ='*')d
 (1.nc)j(2.nc)f(3.nc)h(#)g(Safe)g(\('*')g(protected)e(from)i(shell\))390
 1017 y(ncbo)g(--op_typ="*")d(1.nc)j(2.nc)f(3.nc)h(#)g(Safe)g(\('*')g
@@ -25190,271 +26381,271 @@ b(the)g(follo)m(wing)h(commands)e(are)g(equiv)-5 b(alen)m(t)390
 1456 y(ncbo)g(--op_typ=multiplication)41 b(1.nc)47 b(2.nc)f(3.nc)390
 1565 y(ncmult)g(1.nc)h(2.nc)f(3.nc)h(#)g(First)g(do)g('ln)g(-s)g(ncbo)g
 (ncmult')390 1675 y(ncmultiply)e(1.nc)i(2.nc)f(3.nc)h(#)g(First)g(do)g
-('ln)g(-s)g(ncbo)g(ncmultiply')275 1845 y FD(No)27 b(particular)g
+('ln)g(-s)g(ncbo)g(ncmultiply')275 1845 y FE(No)27 b(particular)g
 (argumen)m(t)h(or)f(in)m(v)m(o)s(cation)i(form)d(is)h(preferred.)39
 b(Users)26 b(are)i(encouraged)f(to)h(use)f(the)150 1955
 y(forms)j(whic)m(h)g(are)h(most)f(in)m(tuitiv)m(e)i(to)g(them.)275
-2125 y(Normally)-8 b(,)42 b Fy(ncbo)c FD(will)i(fail)g(unless)e(an)h
+2125 y(Normally)-8 b(,)42 b Fz(ncbo)c FE(will)i(fail)g(unless)e(an)h
 (op)s(eration)h(t)m(yp)s(e)f(is)g(sp)s(eci\014ed)f(with)h(`)p
-Fy(-y)p FD(')g(\(equiv)-5 b(alen)m(t)41 b(to)150 2235
-y(`)p Fy(--op_typ)p FD('\).)84 b(Y)-8 b(ou)46 b(ma)m(y)g(create)g
+Fz(-y)p FE(')g(\(equiv)-5 b(alen)m(t)41 b(to)150 2235
+y(`)p Fz(--op_typ)p FE('\).)84 b(Y)-8 b(ou)46 b(ma)m(y)g(create)g
 (exceptions)h(to)f(this)f(rule)g(to)h(suit)f(y)m(our)g(particular)h
 (tastes,)k(in)150 2344 y(conformance)22 b(with)g(y)m(our)f(site's)i(p)s
-(olicy)f(on)f Fz(sym)m(b)s(olic)h(links)j FD(to)e(executables)g
+(olicy)f(on)f FA(sym)m(b)s(olic)h(links)j FE(to)e(executables)g
 (\(\014les)f(of)g(a)g(di\013eren)m(t)g(name)150 2454
 y(p)s(oin)m(t)28 b(to)g(the)g(actual)i(executable\).)41
-b(F)-8 b(or)29 b(man)m(y)f(y)m(ears,)h Fy(ncdiff)d FD(w)m(as)j(the)f
+b(F)-8 b(or)29 b(man)m(y)f(y)m(ears,)h Fz(ncdiff)d FE(w)m(as)j(the)f
 (main)f(binary)g(\014le)h(op)s(erator.)150 2563 y(As)45
 b(a)h(result,)j(man)m(y)d(users)e(prefer)h(to)h(con)m(tin)m(ue)h(in)m
-(v)m(oking)f Fy(ncdiff)e FD(rather)h(than)g(memorizing)i(a)150
-2673 y(new)30 b(command)f(\(`)p Fy(ncbo)h(-y)g Fn(sbt)p
-FD('\))g(whic)m(h)g(b)s(eha)m(v)m(es)g(iden)m(tically)i(to)f(the)f
-(original)i Fy(ncdiff)c FD(command.)150 2783 y(Ho)m(w)m(ev)m(er,)43
+(v)m(oking)f Fz(ncdiff)e FE(rather)h(than)g(memorizing)i(a)150
+2673 y(new)30 b(command)f(\(`)p Fz(ncbo)h(-y)g Fo(sbt)p
+FE('\))g(whic)m(h)g(b)s(eha)m(v)m(es)g(iden)m(tically)i(to)f(the)f
+(original)i Fz(ncdiff)c FE(command.)150 2783 y(Ho)m(w)m(ev)m(er,)43
 b(from)c(a)g(soft)m(w)m(are)i(main)m(tenance)f(standp)s(oin)m(t,)h
 (main)m(taining)f(a)f(distinct)h(executable)g(for)150
 2892 y(eac)m(h)27 b(binary)f(op)s(eration)g(\(e.g.,)j
-Fy(ncadd)p FD(\))c(is)h(un)m(tenable,)i(and)d(a)i(single)f(executable,)
-j Fy(ncbo)p FD(,)d(is)h(desirable.)150 3002 y(T)-8 b(o)31
+Fz(ncadd)p FE(\))c(is)h(un)m(tenable,)i(and)d(a)i(single)f(executable,)
+j Fz(ncbo)p FE(,)d(is)h(desirable.)150 3002 y(T)-8 b(o)31
 b(main)m(tain)h(bac)m(kw)m(ard)f(compatibilit)m(y)-8
-b(,)33 b(therefore,)e FC(NCO)g FD(automatically)i(creates)f(a)f(sym)m
-(b)s(olic)g(link)150 3111 y(from)24 b Fy(ncbo)g FD(to)i
-Fy(ncdiff)p FD(.)37 b(Th)m(us)24 b Fy(ncdiff)f FD(is)i(called)i(an)d
-Fz(alternate)j(in)m(v)m(o)s(cation)g FD(of)e Fy(ncbo)p
-FD(.)38 b Fy(ncbo)24 b FD(supp)s(orts)150 3221 y(man)m(y)32
+b(,)33 b(therefore,)e FD(NCO)g FE(automatically)i(creates)f(a)f(sym)m
+(b)s(olic)g(link)150 3111 y(from)24 b Fz(ncbo)g FE(to)i
+Fz(ncdiff)p FE(.)37 b(Th)m(us)24 b Fz(ncdiff)f FE(is)i(called)i(an)d
+FA(alternate)j(in)m(v)m(o)s(cation)g FE(of)e Fz(ncbo)p
+FE(.)38 b Fz(ncbo)24 b FE(supp)s(orts)150 3221 y(man)m(y)32
 b(additional)h(alternate)h(in)m(v)m(o)s(cations)g(whic)m(h)d(m)m(ust)h
 (b)s(e)g(man)m(ually)g(activ)-5 b(ated.)48 b(Should)31
 b(users)g(or)150 3330 y(system)39 b(adminitrators)h(decide)f(to)h
 (activ)-5 b(ate)41 b(them,)h(the)d(pro)s(cedure)f(is)h(simple.)66
-b(F)-8 b(or)40 b(example,)i(to)150 3440 y(use)c(`)p Fy(ncadd)p
-FD(')g(instead)g(of)h(`)p Fy(ncbo)29 b(--op_typ=add)p
-FD(',)38 b(simply)g(create)i(a)f(sym)m(b)s(olic)g(link)f(from)g
-Fy(ncbo)f FD(to)150 3550 y Fy(ncadd)390 3517 y Ft(3)426
-3550 y FD(.)64 b(The)38 b(alternatate)i(in)m(v)m(o)s(cations)g(supp)s
+b(F)-8 b(or)40 b(example,)i(to)150 3440 y(use)c(`)p Fz(ncadd)p
+FE(')g(instead)g(of)h(`)p Fz(ncbo)29 b(--op_typ=add)p
+FE(',)38 b(simply)g(create)i(a)f(sym)m(b)s(olic)g(link)f(from)g
+Fz(ncbo)f FE(to)150 3550 y Fz(ncadd)390 3517 y Fu(3)426
+3550 y FE(.)64 b(The)38 b(alternatate)i(in)m(v)m(o)s(cations)g(supp)s
 (orted)d(for)h(eac)m(h)h(op)s(eration)g(t)m(yp)s(e)f(are)h(listed)f(ab)
 s(o)m(v)m(e.)150 3659 y(Alternativ)m(ely)-8 b(,)33 b(users)d(ma)m(y)h
-(alw)m(a)m(ys)h(de\014ne)d(`)p Fy(ncadd)p FD(')h(as)h(an)f
-Fz(alias)35 b FD(to)c(`)p Fy(ncbo)f(--op_typ=add)p FD(')3425
-3626 y Ft(4)3459 3659 y FD(.)275 3830 y(It)50 b(is)h(imp)s(ortan)m(t)g
-(to)g(main)m(tain)h(p)s(ortabilit)m(y)f(in)f FC(NCO)h
-FD(scripts.)101 b(Therefore)50 b(w)m(e)h(recommend)150
+(alw)m(a)m(ys)h(de\014ne)d(`)p Fz(ncadd)p FE(')h(as)h(an)f
+FA(alias)35 b FE(to)c(`)p Fz(ncbo)f(--op_typ=add)p FE(')3425
+3626 y Fu(4)3459 3659 y FE(.)275 3830 y(It)50 b(is)h(imp)s(ortan)m(t)g
+(to)g(main)m(tain)h(p)s(ortabilit)m(y)f(in)f FD(NCO)h
+FE(scripts.)101 b(Therefore)50 b(w)m(e)h(recommend)150
 3939 y(that)56 b(site-sp)s(ec\014c)g(in)m(v)m(o)s(cations)i(\(e.g.,)64
-b(`)p Fy(ncadd)p FD('\))55 b(b)s(e)g(used)f(only)i(in)f(in)m(teractiv)m
+b(`)p Fz(ncadd)p FE('\))55 b(b)s(e)g(used)f(only)i(in)f(in)m(teractiv)m
 (e)k(sessions)c(from)150 4049 y(the)d(command-line.)106
 b(F)-8 b(or)52 b(scripts,)57 b(w)m(e)c(recommend)e(using)g(the)h(full)g
-(in)m(v)m(o)s(cation)i(\(e.g.,)59 b(`)p Fy(ncbo)150 4158
-y(--op_typ=add)p FD('\).)38 b(This)30 b(ensures)f(p)s(ortabilit)m(y)i
+(in)m(v)m(o)s(cation)i(\(e.g.,)59 b(`)p Fz(ncbo)150 4158
+y(--op_typ=add)p FE('\).)38 b(This)30 b(ensures)f(p)s(ortabilit)m(y)i
 (of)g(scripts)f(b)s(et)m(w)m(een)h(users)f(and)f(sites.)275
-4329 y Fy(ncbo)40 b FD(op)s(erates)i(\(e.g.,)47 b(adds\))41
-b(v)-5 b(ariables)42 b(in)f Fz(\014le)p 2008 4329 28
-4 v 41 w(2)49 b FD(with)41 b(the)h(corresp)s(onding)f(v)-5
+4329 y Fz(ncbo)40 b FE(op)s(erates)i(\(e.g.,)47 b(adds\))41
+b(v)-5 b(ariables)42 b(in)f FA(\014le)p 2008 4329 28
+4 v 41 w(2)49 b FE(with)41 b(the)h(corresp)s(onding)f(v)-5
 b(ariables)42 b(\(those)150 4438 y(with)34 b(the)h(same)f(name\))h(in)f
-Fz(\014le)p 1267 4438 V 40 w(1)42 b FD(and)34 b(stores)g(the)h(results)
-f(in)g Fz(\014le)p 2517 4438 V 40 w(3)p FD(.)53 b(V)-8
-b(ariables)36 b(in)e Fz(\014le)p 3305 4438 V 40 w(1)42
-b FD(or)34 b Fz(\014le)p 3663 4438 V 40 w(2)p 150 4583
-1200 4 v 199 4650 a Ft(1)275 4682 y Fs(A)25 b(nak)n(ed)i(\(i.e.,)i
-(unprotected)e(or)h(unquoted\))e(`)p Fr(*)p Fs(')j(is)f(a)g(wildcard)h
-(c)n(haracter.)41 b(A)25 b(nak)n(ed)i(`)p Fr(-)p Fs(')i(ma)n(y)e
+FA(\014le)p 1267 4438 V 40 w(1)42 b FE(and)34 b(stores)g(the)h(results)
+f(in)g FA(\014le)p 2517 4438 V 40 w(3)p FE(.)53 b(V)-8
+b(ariables)36 b(in)e FA(\014le)p 3305 4438 V 40 w(1)42
+b FE(or)34 b FA(\014le)p 3663 4438 V 40 w(2)p 150 4583
+1200 4 v 199 4650 a Fu(1)275 4682 y Ft(A)25 b(nak)n(ed)i(\(i.e.,)i
+(unprotected)e(or)h(unquoted\))e(`)p Fs(*)p Ft(')j(is)f(a)g(wildcard)h
+(c)n(haracter.)41 b(A)25 b(nak)n(ed)i(`)p Fs(-)p Ft(')i(ma)n(y)e
 (confuse)i(the)e(com-)275 4769 y(mand)e(line)h(parser.)35
-b(A)25 b(nak)n(ed)g(`)p Fr(+)p Fs(')i(and)e(`)p Fr(/)p
-Fs(')h(are)h(relativ)n(ely)f(harmless.)199 4841 y Ft(2)275
-4872 y Fs(The)18 b(widely)h(used)f(shell)i(Bash)f(correctly)g(in)n
+b(A)25 b(nak)n(ed)g(`)p Fs(+)p Ft(')i(and)e(`)p Fs(/)p
+Ft(')h(are)h(relativ)n(ely)f(harmless.)199 4841 y Fu(2)275
+4872 y Ft(The)18 b(widely)h(used)f(shell)i(Bash)f(correctly)g(in)n
 (terprets)f(all)i(these)f(sp)r(ecial)h(c)n(haracters)f(ev)n(en)f(when)g
 (they)g(are)h(not)f(quoted.)275 4960 y(That)23 b(is,)i(Bash)f(do)r(es)g
-(not)f(prev)n(en)n(t)f Fp(NCO)h Fs(from)h(correctly)g(in)n(terpreting)f
+(not)f(prev)n(en)n(t)f Fq(NCO)h Ft(from)h(correctly)g(in)n(terpreting)f
 (the)g(in)n(tended)g(arithmetic)h(op)r(eration)g(when)275
 5047 y(the)h(follo)n(wing)k(argumen)n(ts)d(are)g(giv)n(en)g(\(without)g
-(quotes\))f(to)i Fr(ncbo)p Fs(:)35 b(`)p Fr(--op_typ=+)p
-Fs(',)30 b(`)p Fr(--op_typ=-)p Fs(',)f(`)p Fr(--op_typ=*)p
-Fs(',)275 5134 y(and)c(`)p Fr(--op_typ=/)p Fs(')199 5205
-y Ft(3)275 5237 y Fs(The)g(command)h(to)g(do)g(this)g(is)g(`)p
-Fr(ln)g(-s)g(-f)g(ncbo)h(ncadd)p Fs(')199 5308 y Ft(4)275
-5340 y Fs(The)e(command)h(to)g(do)g(this)g(is)g(`)p Fr(alias)h
-(ncadd='ncbo)h(--op_typ=add')p Fs(')p eop end
-%%Page: 164 170
-TeXDict begin 164 169 bop 150 -116 a FD(164)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(are)e Fz(broadcast)j
-FD(to)e(conform)f(to)g(the)h(corresp)s(onding)e(v)-5
+(quotes\))f(to)i Fs(ncbo)p Ft(:)35 b(`)p Fs(--op_typ=+)p
+Ft(',)30 b(`)p Fs(--op_typ=-)p Ft(',)f(`)p Fs(--op_typ=*)p
+Ft(',)275 5134 y(and)c(`)p Fs(--op_typ=/)p Ft(')199 5205
+y Fu(3)275 5237 y Ft(The)g(command)h(to)g(do)g(this)g(is)g(`)p
+Fs(ln)g(-s)g(-f)g(ncbo)h(ncadd)p Ft(')199 5308 y Fu(4)275
+5340 y Ft(The)e(command)h(to)g(do)g(this)g(is)g(`)p Fs(alias)h
+(ncadd='ncbo)h(--op_typ=add')p Ft(')p eop end
+%%Page: 176 182
+TeXDict begin 176 181 bop 150 -116 a FE(176)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(are)e FA(broadcast)j
+FE(to)e(conform)f(to)g(the)h(corresp)s(onding)e(v)-5
 b(ariable)28 b(in)g(the)g(other)h(input)e(\014le)h(if)g(necessary)3687
-266 y Ft(5)3725 299 y FD(.)150 408 y(No)m(w)43 b Fy(ncbo)f
-FD(is)h(completely)h(symmetric)f(with)g(resp)s(ect)g(to)g
-Fz(\014le)p 2420 408 28 4 v 40 w(1)51 b FD(and)42 b Fz(\014le)p
-2861 408 V 40 w(2)p FD(,)47 b(i.e.,)g(\014le)3315 422
-y Ft(1)3381 408 y FA(\000)28 b FD(\014le)3596 422 y Ft(2)3679
-408 y FD(=)150 518 y FA(\000)p FD(\(\014le)372 532 y
-Ft(2)430 518 y FA(\000)20 b FD(\014le)637 532 y Ft(1)674
-518 y FD(\).)275 679 y(Broadcasting)27 b(a)g(v)-5 b(ariable)27
+266 y Fu(5)3725 299 y FE(.)150 408 y(No)m(w)43 b Fz(ncbo)f
+FE(is)h(completely)h(symmetric)f(with)g(resp)s(ect)g(to)g
+FA(\014le)p 2420 408 28 4 v 40 w(1)51 b FE(and)42 b FA(\014le)p
+2861 408 V 40 w(2)p FE(,)47 b(i.e.,)g(\014le)3315 422
+y Fu(1)3381 408 y FB(\000)28 b FE(\014le)3596 422 y Fu(2)3679
+408 y FE(=)150 518 y FB(\000)p FE(\(\014le)372 532 y
+Fu(2)430 518 y FB(\000)20 b FE(\014le)637 532 y Fu(1)674
+518 y FE(\).)275 679 y(Broadcasting)27 b(a)g(v)-5 b(ariable)27
 b(means)f(creating)h(data)g(in)f(non-existing)h(dimensions)e(b)m(y)h
 (cop)m(ying)h(data)150 789 y(in)g(existing)i(dimensions.)39
 b(F)-8 b(or)29 b(example,)g(a)f(t)m(w)m(o)h(dimensional)f(v)-5
-b(ariable)28 b(in)g Fz(\014le)p 2931 789 V 40 w(2)35
-b FD(can)28 b(b)s(e)f(subtracted)150 898 y(from)38 b(a)h(four,)h
+b(ariable)28 b(in)g FA(\014le)p 2931 789 V 40 w(2)35
+b FE(can)28 b(b)s(e)f(subtracted)150 898 y(from)38 b(a)h(four,)h
 (three,)h(or)d(t)m(w)m(o)i(\(not)f(one)f(or)h(zero\))g(dimensional)g(v)
 -5 b(ariable)39 b(\(of)g(the)g(same)f(name\))h(in)150
-1008 y Fy(file_1)p FD(.)56 b(This)36 b(functionalit)m(y)i(allo)m(ws)f
+1008 y Fz(file_1)p FE(.)56 b(This)36 b(functionalit)m(y)i(allo)m(ws)f
 (the)f(user)g(to)h(compute)f(anomalies)i(from)e(the)g(mean.)58
 b(In)36 b(the)150 1118 y(future,)g(w)m(e)g(will)g(broadcast)g(v)-5
-b(ariables)36 b(in)f Fz(\014le)p 1803 1118 V 40 w(1)p
-FD(,)i(if)f(necessary)f(to)i(conform)e(to)h(their)g(coun)m(terparts)150
-1227 y(in)c Fz(\014le)p 380 1227 V 40 w(2)p FD(.)48 b(Th)m(us,)32
+b(ariables)36 b(in)f FA(\014le)p 1803 1118 V 40 w(1)p
+FE(,)i(if)f(necessary)f(to)i(conform)e(to)h(their)g(coun)m(terparts)150
+1227 y(in)c FA(\014le)p 380 1227 V 40 w(2)p FE(.)48 b(Th)m(us,)32
 b(presen)m(tly)-8 b(,)34 b(the)e(n)m(um)m(b)s(er)f(of)i(dimensions,)g
-(or)f Fz(rank)p FD(,)h(of)f(an)m(y)h(pro)s(cessed)f(v)-5
-b(ariable)33 b(in)150 1337 y Fz(\014le)p 272 1337 V 40
-w(1)41 b FD(m)m(ust)33 b(b)s(e)g(greater)i(than)e(or)g(equal)h(to)h
+(or)f FA(rank)p FE(,)h(of)f(an)m(y)h(pro)s(cessed)f(v)-5
+b(ariable)33 b(in)150 1337 y FA(\014le)p 272 1337 V 40
+w(1)41 b FE(m)m(ust)33 b(b)s(e)g(greater)i(than)e(or)g(equal)h(to)h
 (the)e(rank)g(of)h(the)f(same)h(v)-5 b(ariable)34 b(in)f
-Fz(\014le)p 3190 1337 V 40 w(2)p FD(.)51 b(Of)33 b(course,)150
+FA(\014le)p 3190 1337 V 40 w(2)p FE(.)51 b(Of)33 b(course,)150
 1446 y(the)e(size)g(of)f(all)i(dimensions)d(common)i(to)g(b)s(oth)f
-Fz(\014le)p 1986 1446 V 40 w(1)38 b FD(and)30 b Fz(\014le)p
-2402 1446 V 40 w(2)38 b FD(m)m(ust)30 b(b)s(e)g(equal.)275
+FA(\014le)p 1986 1446 V 40 w(1)38 b FE(and)30 b FA(\014le)p
+2402 1446 V 40 w(2)38 b FE(m)m(ust)30 b(b)s(e)g(equal.)275
 1608 y(When)c(computing)g(anomalies)i(from)e(the)h(mean)f(it)h(is)g
-(often)f(the)h(case)h(that)f Fz(\014le)p 3056 1608 V
-40 w(2)34 b FD(w)m(as)27 b(created)g(b)m(y)150 1717 y(applying)k(an)h
+(often)f(the)h(case)h(that)f FA(\014le)p 3056 1608 V
+40 w(2)34 b FE(w)m(as)27 b(created)g(b)m(y)150 1717 y(applying)k(an)h
 (a)m(v)m(eraging)i(op)s(erator)e(to)g(a)g(\014le)g(with)f(initially)i
-(the)f(same)g(dimensions)f(as)h Fz(\014le)p 3397 1717
-V 40 w(1)39 b FD(\(often)150 1827 y Fz(\014le)p 272 1827
-V 40 w(1)e FD(itself)7 b(\).)41 b(In)28 b(these)h(cases,)i(creating)f
-Fz(\014le)p 1750 1827 V 40 w(2)36 b FD(with)29 b Fy(ncra)f
-FD(rather)g(than)h Fy(ncwa)f FD(will)h(cause)g(the)g
-Fy(ncbo)150 1936 y FD(op)s(eration)e(to)f(fail.)40 b(F)-8
+(the)f(same)g(dimensions)f(as)h FA(\014le)p 3397 1717
+V 40 w(1)39 b FE(\(often)150 1827 y FA(\014le)p 272 1827
+V 40 w(1)e FE(itself)7 b(\).)41 b(In)28 b(these)h(cases,)i(creating)f
+FA(\014le)p 1750 1827 V 40 w(2)36 b FE(with)29 b Fz(ncra)f
+FE(rather)g(than)h Fz(ncwa)f FE(will)h(cause)g(the)g
+Fz(ncbo)150 1936 y FE(op)s(eration)e(to)f(fail.)40 b(F)-8
 b(or)27 b(concreteness)g(sa)m(y)g(the)f(record)g(dimension)g(in)g
-Fy(file_1)e FD(is)i Fy(time)p FD(.)38 b(If)26 b Fz(\014le)p
-3493 1936 V 40 w(2)34 b FD(w)m(as)150 2046 y(created)i(b)m(y)g(a)m(v)m
-(eraging)i Fz(\014le)p 1139 2046 V 40 w(1)43 b FD(o)m(v)m(er)36
-b(the)g Fy(time)e FD(dimension)h(with)g(the)h Fy(ncra)e
-FD(op)s(erator)i(\(rather)f(than)150 2156 y(with)26 b(the)g
-Fy(ncwa)e FD(op)s(erator\),)k(then)e Fz(\014le)p 1470
-2156 V 40 w(2)34 b FD(will)26 b(ha)m(v)m(e)h(a)f Fy(time)f
-FD(dimension)g(of)h(size)32 b(1)26 b(rather)g(than)f(ha)m(ving)150
-2265 y(no)32 b Fy(time)f FD(dimension)h(at)g(all)1173
-2232 y Ft(6)1211 2265 y FD(.)46 b(In)31 b(this)h(case)h(the)g(input)e
-(\014les)h(to)h Fy(ncbo)p FD(,)e Fz(\014le)p 2840 2265
-V 41 w(1)39 b FD(and)32 b Fz(\014le)p 3260 2265 V 40
-w(2)p FD(,)h(will)g(ha)m(v)m(e)150 2375 y(unequally)d(sized)h
-Fy(time)f FD(dimensions)f(whic)m(h)i(causes)g Fy(ncbo)e
-FD(to)i(fail.)42 b(T)-8 b(o)31 b(prev)m(en)m(t)g(this)g(from)f(o)s
-(ccuring,)150 2484 y(use)g Fy(ncwa)f FD(to)i(remo)m(v)m(e)h(the)f
-Fy(time)e FD(dimension)h(from)g Fz(\014le)p 2095 2484
-V 40 w(2)p FD(.)41 b(See)31 b(the)f(example)h(b)s(elo)m(w.)275
-2646 y Fy(ncbo)26 b FD(nev)m(er)j(op)s(erates)f(on)g(co)s(ordinate)h(v)
+Fz(file_1)e FE(is)i Fz(time)p FE(.)38 b(If)26 b FA(\014le)p
+3493 1936 V 40 w(2)34 b FE(w)m(as)150 2046 y(created)i(b)m(y)g(a)m(v)m
+(eraging)i FA(\014le)p 1139 2046 V 40 w(1)43 b FE(o)m(v)m(er)36
+b(the)g Fz(time)e FE(dimension)h(with)g(the)h Fz(ncra)e
+FE(op)s(erator)i(\(rather)f(than)150 2156 y(with)26 b(the)g
+Fz(ncwa)e FE(op)s(erator\),)k(then)e FA(\014le)p 1470
+2156 V 40 w(2)34 b FE(will)26 b(ha)m(v)m(e)h(a)f Fz(time)f
+FE(dimension)g(of)h(size)32 b(1)26 b(rather)g(than)f(ha)m(ving)150
+2265 y(no)32 b Fz(time)f FE(dimension)h(at)g(all)1173
+2232 y Fu(6)1211 2265 y FE(.)46 b(In)31 b(this)h(case)h(the)g(input)e
+(\014les)h(to)h Fz(ncbo)p FE(,)e FA(\014le)p 2840 2265
+V 41 w(1)39 b FE(and)32 b FA(\014le)p 3260 2265 V 40
+w(2)p FE(,)h(will)g(ha)m(v)m(e)150 2375 y(unequally)d(sized)h
+Fz(time)f FE(dimensions)f(whic)m(h)i(causes)g Fz(ncbo)e
+FE(to)i(fail.)42 b(T)-8 b(o)31 b(prev)m(en)m(t)g(this)g(from)f(o)s
+(ccuring,)150 2484 y(use)g Fz(ncwa)f FE(to)i(remo)m(v)m(e)h(the)f
+Fz(time)e FE(dimension)h(from)g FA(\014le)p 2095 2484
+V 40 w(2)p FE(.)41 b(See)31 b(the)f(example)h(b)s(elo)m(w.)275
+2646 y Fz(ncbo)26 b FE(nev)m(er)j(op)s(erates)f(on)g(co)s(ordinate)h(v)
 -5 b(ariables)29 b(or)f(v)-5 b(ariables)29 b(of)f(t)m(yp)s(e)g
-Fy(NC_CHAR)e FD(or)i Fy(NC_STRING)p FD(.)150 2755 y(This)33
+Fz(NC_CHAR)e FE(or)i Fz(NC_STRING)p FE(.)150 2755 y(This)33
 b(ensures)g(that)h(co)s(ordinates)h(lik)m(e)g(\(e.g.,)h(latitude)f(and)
 e(longitude\))i(are)f(ph)m(ysically)h(meaningful)150
-2865 y(in)h(the)g(output)g(\014le,)i Fz(\014le)p 1029
-2865 V 40 w(3)p FD(.)58 b(This)36 b(b)s(eha)m(vior)g(is)g(hardco)s
-(ded.)57 b Fy(ncbo)35 b FD(applies)h(sp)s(ecial)h(rules)f(to)h(some)150
-2974 y FC(CF)p FD(-de\014ned)44 b(\(and/or)h FC(NCAR)c(CCSM)k
-FD(or)g FC(NCAR)c(CCM)k FD(\014elds\))f(suc)m(h)g(as)h
-Fy(ORO)p FD(.)83 b(See)45 b(Section)g(3.37)150 3084 y([CF)33
-b(Con)m(v)m(en)m(tions],)j(page)e(99)g(for)f(a)h(complete)g
-(description.)50 b(Finally)-8 b(,)35 b(w)m(e)f(note)g(that)g
-Fy(ncflint)d FD(\(see)150 3194 y(Section)23 b(4.6)g([nc\015in)m(t)f
-(netCDF)h(File)g(In)m(terp)s(olator],)i(page)e(173\))h(is)e(designed)g
+2865 y(in)h(the)g(output)g(\014le,)i FA(\014le)p 1029
+2865 V 40 w(3)p FE(.)58 b(This)36 b(b)s(eha)m(vior)g(is)g(hardco)s
+(ded.)57 b Fz(ncbo)35 b FE(applies)h(sp)s(ecial)h(rules)f(to)h(some)150
+2974 y FD(CF)p FE(-de\014ned)44 b(\(and/or)h FD(NCAR)c(CCSM)k
+FE(or)g FD(NCAR)c(CCM)k FE(\014elds\))f(suc)m(h)g(as)h
+Fz(ORO)p FE(.)83 b(See)45 b(Section)g(3.38)150 3084 y([CF)30
+b(Con)m(v)m(en)m(tions],)j(page)e(110)g(for)f(a)h(complete)h
+(description.)40 b(Finally)-8 b(,)32 b(w)m(e)f(note)g(that)g
+Fz(ncflint)d FE(\(see)150 3194 y(Section)23 b(4.6)g([nc\015in)m(t)f
+(netCDF)h(File)g(In)m(terp)s(olator],)i(page)e(185\))h(is)e(designed)g
 (for)g(\014le)g(in)m(terp)s(olation.)39 b(As)150 3303
 y(suc)m(h,)29 b(it)g(also)h(p)s(erforms)d(\014le)i(subtraction,)g
 (addition,)g(m)m(ultiplication,)j(alb)s(eit)d(in)f(a)h(more)g(con)m(v)m
-(oluted)150 3413 y(w)m(a)m(y)i(than)f Fy(ncbo)p FD(.)275
-3574 y(Beginning)48 b(with)g FC(NCO)f FD(v)m(ersion)i(4.3.1)h(\(Ma)m(y)
--8 b(,)54 b(2013\),)h Fy(ncbo)47 b FD(supp)s(orts)f Fz(group)h
-(broadcasting)p FD(.)150 3684 y(Group)41 b(broadcasting)h(means)f(pro)s
+(oluted)150 3413 y(w)m(a)m(y)i(than)f Fz(ncbo)p FE(.)275
+3574 y(Beginning)48 b(with)g FD(NCO)f FE(v)m(ersion)i(4.3.1)h(\(Ma)m(y)
+-8 b(,)54 b(2013\),)h Fz(ncbo)47 b FE(supp)s(orts)f FA(group)h
+(broadcasting)p FE(.)150 3684 y(Group)41 b(broadcasting)h(means)f(pro)s
 (cessing)g(data)h(based)g(on)f(group)g(patterns)g(in)g(the)h(input)e
 (\014le\(s\))150 3793 y(and)27 b(automatically)j(transferring)d(or)g
 (transforming)g(groups)g(to)h(the)g(output)f(\014le.)40
-b(Consider)26 b(the)i(case)150 3903 y(where)37 b Fz(\014le)p
-542 3903 V 41 w(1)45 b FD(con)m(tains)39 b(m)m(ultiple)g(groups)e(eac)m
-(h)i(with)f(the)g(v)-5 b(ariable)38 b Fz(v1)p FD(,)j(while)d
-Fz(\014le)p 3161 3903 V 40 w(2)45 b FD(con)m(tains)39
-b Fz(v1)150 4012 y FD(only)27 b(in)g(its)g(top-lev)m(el)j(\(i.e.,)f(ro)
-s(ot\))f(group.)39 b(Then)26 b Fy(ncbo)g FD(will)h(replicate)i(the)e
-(group)f(structure)h(of)g Fz(\014le)p 3663 4012 V 40
-w(1)150 4122 y FD(in)39 b(the)h(output)f(\014le,)j Fz(\014le)p
-1043 4122 V 40 w(3)p FD(.)68 b(Eac)m(h)40 b(group)f(in)g
-Fz(\014le)p 1954 4122 V 40 w(3)47 b FD(con)m(tains)40
+b(Consider)26 b(the)i(case)150 3903 y(where)37 b FA(\014le)p
+542 3903 V 41 w(1)45 b FE(con)m(tains)39 b(m)m(ultiple)g(groups)e(eac)m
+(h)i(with)f(the)g(v)-5 b(ariable)38 b FA(v1)p FE(,)j(while)d
+FA(\014le)p 3161 3903 V 40 w(2)45 b FE(con)m(tains)39
+b FA(v1)150 4012 y FE(only)27 b(in)g(its)g(top-lev)m(el)j(\(i.e.,)f(ro)
+s(ot\))f(group.)39 b(Then)26 b Fz(ncbo)g FE(will)h(replicate)i(the)e
+(group)f(structure)h(of)g FA(\014le)p 3663 4012 V 40
+w(1)150 4122 y FE(in)39 b(the)h(output)f(\014le,)j FA(\014le)p
+1043 4122 V 40 w(3)p FE(.)68 b(Eac)m(h)40 b(group)f(in)g
+FA(\014le)p 1954 4122 V 40 w(3)47 b FE(con)m(tains)40
 b(the)g(output)f(of)g(the)h(corresp)s(onding)150 4231
-y(group)31 b(in)f Fz(\014le)p 637 4231 V 41 w(1)38 b
-FD(op)s(erating)32 b(on)f(the)g(data)h(in)f(the)g(single)h(group)e(in)h
-Fz(\014le)p 2660 4231 V 40 w(2)p FD(.)44 b(An)30 b(example)i(is)f(pro)m
+y(group)31 b(in)f FA(\014le)p 637 4231 V 41 w(1)38 b
+FE(op)s(erating)32 b(on)f(the)g(data)h(in)f(the)g(single)h(group)e(in)h
+FA(\014le)p 2660 4231 V 40 w(2)p FE(.)44 b(An)30 b(example)i(is)f(pro)m
 (vided)150 4341 y(b)s(elo)m(w.)150 4502 y(EXAMPLES)275
-4664 y(Sa)m(y)37 b(\014les)g Fy(85_0112.nc)e FD(and)h
-Fy(86_0112.nc)f FD(eac)m(h)j(con)m(tain)h(12)f(mon)m(ths)f(of)g(data.)
+4664 y(Sa)m(y)37 b(\014les)g Fz(85_0112.nc)e FE(and)h
+Fz(86_0112.nc)f FE(eac)m(h)j(con)m(tain)h(12)f(mon)m(ths)f(of)g(data.)
 62 b(Compute)37 b(the)150 4773 y(c)m(hange)32 b(in)e(the)g(mon)m(thly)h
 (a)m(v)m(erages)i(from)c(1985)k(to)e(1986:)p 150 4876
-1200 4 v 199 4944 a Ft(5)305 4975 y Fs(Prior)h(to)f Fp(NCO)f
-Fs(v)n(ersion)h(4.3.1)h(\(Ma)n(y)-6 b(,)32 b(2013\),)i
-Fr(ncbo)d Fs(w)n(ould)g(only)g(broadcast)g(v)l(ariables)h(in)e
-Fm(\014le)p 3177 4975 24 4 v 34 w(2)37 b Fs(to)31 b(conform)h(to)275
-5063 y Fm(\014le)p 378 5063 V 33 w(1)p Fs(.)j(V)-6 b(ariables)27
-b(in)e Fm(\014le)p 1026 5063 V 34 w(1)32 b Fs(w)n(ere)26
-b Fj(never)35 b Fs(broadcast)27 b(to)f(conform)g(to)g(the)g(dimensions)
-g(in)g Fm(\014le)p 3071 5063 V 33 w(2)p Fs(.)199 5134
-y Ft(6)275 5166 y Fs(This)i(is)h(b)r(ecause)f Fr(ncra)h
-Fs(collapses)h(the)d(record)h(dimension)h(to)f(a)g(size)h(of)d(1)i
-(\(making)g(it)g(a)h Fm(degenerate)j Fs(dimension\),)275
+1200 4 v 199 4944 a Fu(5)305 4975 y Ft(Prior)h(to)f Fq(NCO)f
+Ft(v)n(ersion)h(4.3.1)h(\(Ma)n(y)-6 b(,)32 b(2013\),)i
+Fs(ncbo)d Ft(w)n(ould)g(only)g(broadcast)g(v)l(ariables)h(in)e
+Fn(\014le)p 3177 4975 24 4 v 34 w(2)37 b Ft(to)31 b(conform)h(to)275
+5063 y Fn(\014le)p 378 5063 V 33 w(1)p Ft(.)j(V)-6 b(ariables)27
+b(in)e Fn(\014le)p 1026 5063 V 34 w(1)32 b Ft(w)n(ere)26
+b Fk(never)35 b Ft(broadcast)27 b(to)f(conform)g(to)g(the)g(dimensions)
+g(in)g Fn(\014le)p 3071 5063 V 33 w(2)p Ft(.)199 5134
+y Fu(6)275 5166 y Ft(This)i(is)h(b)r(ecause)f Fs(ncra)h
+Ft(collapses)h(the)d(record)h(dimension)h(to)f(a)g(size)h(of)d(1)i
+(\(making)g(it)g(a)h Fn(degenerate)j Ft(dimension\),)275
 5253 y(but)20 b(do)r(es)i(not)f(remo)n(v)n(e)h(it,)g(while,)i(unless)e
-(`)p Fr(-b)p Fs(')g(is)g(giv)n(en,)h Fr(ncwa)f Fs(remo)n(v)n(es)g(all)g
+(`)p Fs(-b)p Ft(')g(is)g(giv)n(en,)h Fs(ncwa)f Ft(remo)n(v)n(es)g(all)g
 (a)n(v)n(eraged)g(dimensions.)34 b(In)20 b(other)i(w)n(ords,)275
-5340 y(b)n(y)h(default)j Fr(ncra)g Fs(c)n(hanges)f(v)l(ariable)h(size)g
-(though)e(not)h(rank,)g(while,)h Fr(ncwa)g Fs(c)n(hanges)f(b)r(oth)g(v)
+5340 y(b)n(y)h(default)j Fs(ncra)g Ft(c)n(hanges)f(v)l(ariable)h(size)g
+(though)e(not)h(rank,)g(while,)h Fs(ncwa)g Ft(c)n(hanges)f(b)r(oth)g(v)
 l(ariable)h(size)f(and)g(rank.)p eop end
-%%Page: 165 171
-TeXDict begin 165 170 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(165)390
-299 y Fy(ncbo)142 b(86_0112.nc)45 b(85_0112.nc)g(86m85_0112.nc)390
-408 y(ncdiff)h(86_0112.nc)f(85_0112.nc)g(86m85_0112.nc)390
+%%Page: 177 183
+TeXDict begin 177 182 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(177)390 299 y Fz(ncbo)142
+b(86_0112.nc)45 b(85_0112.nc)g(86m85_0112.nc)390 408
+y(ncdiff)h(86_0112.nc)f(85_0112.nc)g(86m85_0112.nc)390
 518 y(ncbo)i(--op_typ=sub)d(86_0112.nc)h(85_0112.nc)g(86m85_0112.nc)390
 628 y(ncbo)i(--op_typ='-')d(86_0112.nc)h(85_0112.nc)g(86m85_0112.nc)150
-788 y FD(These)30 b(commands)g(are)h(all)g(di\013eren)m(t)g(w)m(a)m(ys)
+788 y FE(These)30 b(commands)g(are)h(all)g(di\013eren)m(t)g(w)m(a)m(ys)
 g(of)g(expressing)f(the)g(same)h(thing.)275 948 y(The)h(follo)m(wing)j
 (examples)f(demonstrate)f(the)h(broadcasting)g(feature)f(of)h
-Fy(ncbo)p FD(.)48 b(Sa)m(y)33 b(w)m(e)h(wish)e(to)150
+Fz(ncbo)p FE(.)48 b(Sa)m(y)33 b(w)m(e)h(wish)e(to)150
 1058 y(compute)25 b(the)f(mon)m(thly)g(anomalies)i(of)e
-Fy(T)g FD(from)g(the)g(y)m(early)i(a)m(v)m(erage)h(of)d
-Fy(T)g FD(for)g(the)g(y)m(ear)h(1985.)41 b(First)24 b(w)m(e)150
+Fz(T)g FE(from)g(the)g(y)m(early)i(a)m(v)m(erage)h(of)d
+Fz(T)g FE(for)g(the)g(y)m(ear)h(1985.)41 b(First)24 b(w)m(e)150
 1167 y(create)33 b(the)e(1985)h(a)m(v)m(erage)i(from)d(the)g(mon)m
 (thly)g(data,)h(whic)m(h)f(is)g(stored)g(with)f(the)i(record)f
-(dimension)150 1277 y Fy(time)p FD(.)390 1437 y Fy(ncra)47
+(dimension)150 1277 y Fz(time)p FE(.)390 1437 y Fz(ncra)47
 b(85_0112.nc)e(85.nc)390 1547 y(ncwa)i(-O)g(-a)g(time)g(85.nc)f(85.nc)
-150 1707 y FD(The)23 b(second)h(command,)h Fy(ncwa)p
-FD(,)f(gets)h(rid)d(of)i(the)g Fy(time)f FD(dimension)g(of)g(size)32
-b(1)24 b(that)g Fy(ncra)e FD(left)j(in)e Fy(85.nc)p FD(.)150
+150 1707 y FE(The)23 b(second)h(command,)h Fz(ncwa)p
+FE(,)f(gets)h(rid)d(of)i(the)g Fz(time)f FE(dimension)g(of)g(size)32
+b(1)24 b(that)g Fz(ncra)e FE(left)j(in)e Fz(85.nc)p FE(.)150
 1816 y(No)m(w)37 b(none)f(of)h(the)g(v)-5 b(ariables)37
-b(in)f Fy(85.nc)f FD(has)h(a)h Fy(time)e FD(dimension.)59
+b(in)f Fz(85.nc)f FE(has)h(a)h Fz(time)e FE(dimension.)59
 b(A)30 b(quic)m(k)m(er)38 b(w)m(a)m(y)f(to)g(accomplish)150
-1926 y(this)30 b(is)h(to)g(use)f Fy(ncwa)f FD(from)h(the)h(b)s
-(eginning:)390 2086 y Fy(ncwa)47 b(-a)g(time)f(85_0112.nc)f(85.nc)150
-2246 y FD(W)-8 b(e)32 b(are)e(no)m(w)h(ready)f(to)h(use)f
-Fy(ncbo)f FD(to)i(compute)g(the)g(anomalies)g(for)g(1985:)390
-2406 y Fy(ncdiff)46 b(-v)h(T)h(85_0112.nc)d(85.nc)h(t_anm_85_0112.nc)
-150 2567 y FD(Eac)m(h)28 b(of)f(the)g(12)h(records)f(in)g
-Fy(t_anm_85_0112.nc)c FD(no)m(w)k(con)m(tains)h(the)g(mon)m(thly)f
-(deviation)h(of)g Fy(T)e FD(from)150 2676 y(the)31 b(ann)m(ual)f(mean)g
-(of)h Fy(T)f FD(for)g(eac)m(h)i(gridp)s(oin)m(t.)275
+1926 y(this)30 b(is)h(to)g(use)f Fz(ncwa)f FE(from)h(the)h(b)s
+(eginning:)390 2086 y Fz(ncwa)47 b(-a)g(time)f(85_0112.nc)f(85.nc)150
+2246 y FE(W)-8 b(e)32 b(are)e(no)m(w)h(ready)f(to)h(use)f
+Fz(ncbo)f FE(to)i(compute)g(the)g(anomalies)g(for)g(1985:)390
+2406 y Fz(ncdiff)46 b(-v)h(T)h(85_0112.nc)d(85.nc)h(t_anm_85_0112.nc)
+150 2567 y FE(Eac)m(h)28 b(of)f(the)g(12)h(records)f(in)g
+Fz(t_anm_85_0112.nc)c FE(no)m(w)k(con)m(tains)h(the)g(mon)m(thly)f
+(deviation)h(of)g Fz(T)e FE(from)150 2676 y(the)31 b(ann)m(ual)f(mean)g
+(of)h Fz(T)f FE(for)g(eac)m(h)i(gridp)s(oin)m(t.)275
 2836 y(Sa)m(y)f(w)m(e)h(wish)e(to)i(compute)g(the)f(mon)m(thly)h(gridp)
 s(oin)m(t)f(anomalies)i(from)e(the)g(zonal)h(ann)m(ual)g(mean.)150
-2946 y(A)e Fz(zonal)i(mean)i FD(is)f(a)i(quan)m(tit)m(y)g(that)f(has)f
+2946 y(A)e FA(zonal)i(mean)i FE(is)f(a)i(quan)m(tit)m(y)g(that)f(has)f
 (b)s(een)g(a)m(v)m(eraged)j(o)m(v)m(er)f(the)f(longitudinal)h(\(or)f
-Fz(x)6 b FD(\))34 b(direction.)150 3055 y(First)g(w)m(e)h(use)f
-Fy(ncwa)f FD(to)h(a)m(v)m(erage)j(o)m(v)m(er)e(longitudinal)g
-(direction)g Fy(lon)p FD(,)f(creating)h Fy(85_x.nc)p
-FD(,)f(the)g(zonal)150 3165 y(mean)g(of)g Fy(85.nc)p
-FD(.)51 b(Then)33 b(w)m(e)h(use)g Fy(ncbo)f FD(to)i(subtract)f(the)g
+FA(x)6 b FE(\))34 b(direction.)150 3055 y(First)g(w)m(e)h(use)f
+Fz(ncwa)f FE(to)h(a)m(v)m(erage)j(o)m(v)m(er)e(longitudinal)g
+(direction)g Fz(lon)p FE(,)f(creating)h Fz(85_x.nc)p
+FE(,)f(the)g(zonal)150 3165 y(mean)g(of)g Fz(85.nc)p
+FE(.)51 b(Then)33 b(w)m(e)h(use)g Fz(ncbo)f FE(to)i(subtract)f(the)g
 (zonal)h(ann)m(ual)f(means)g(from)f(the)i(mon)m(thly)150
-3275 y(gridp)s(oin)m(t)30 b(data:)390 3435 y Fy(ncwa)47
+3275 y(gridp)s(oin)m(t)30 b(data:)390 3435 y Fz(ncwa)47
 b(-a)g(lon)g(85.nc)f(85_x.nc)390 3544 y(ncdiff)g(85_0112.nc)f(85_x.nc)h
-(tx_anm_85_0112.nc)150 3705 y FD(This)22 b(examples)h(w)m(orks)f
-(assuming)g Fy(85_0112.nc)e FD(has)i(dimensions)g Fy(time)g
-FD(and)f Fy(lon)p FD(,)j(and)e(that)h Fy(85_x.nc)150
-3814 y FD(has)30 b(no)g Fy(time)g FD(or)g Fy(lon)f FD(dimension.)275
+(tx_anm_85_0112.nc)150 3705 y FE(This)22 b(examples)h(w)m(orks)f
+(assuming)g Fz(85_0112.nc)e FE(has)i(dimensions)g Fz(time)g
+FE(and)f Fz(lon)p FE(,)j(and)e(that)h Fz(85_x.nc)150
+3814 y FE(has)30 b(no)g Fz(time)g FE(or)g Fz(lon)f FE(dimension.)275
 3974 y(Group)g(broadcasting)i(simpli\014es)f(ev)-5 b(aluation)31
 b(of)g(m)m(ultiple)g(mo)s(dels)e(against)j(observ)-5
 b(ations.)41 b(Con-)150 4084 y(sider)d(the)h(input)e(\014le)i
-Fy(cmip5.nc)d FD(whic)m(h)j(con)m(tains)g(m)m(ultiple)h(top-lev)m(el)h
-(groups)c Fy(cesm)p FD(,)j Fy(ecmwf)p FD(,)g(and)150
-4194 y Fy(giss)p FD(,)d(eac)m(h)g(of)g(whic)m(h)f(con)m(tains)h(the)g
-(surface)f(air)h(temp)s(erature)f(\014eld)g Fy(tas)p
-FD(.)57 b(W)-8 b(e)38 b(wish)d(to)i(compare)150 4303
+Fz(cmip5.nc)d FE(whic)m(h)j(con)m(tains)g(m)m(ultiple)h(top-lev)m(el)h
+(groups)c Fz(cesm)p FE(,)j Fz(ecmwf)p FE(,)g(and)150
+4194 y Fz(giss)p FE(,)d(eac)m(h)g(of)g(whic)m(h)f(con)m(tains)h(the)g
+(surface)f(air)h(temp)s(erature)f(\014eld)g Fz(tas)p
+FE(.)57 b(W)-8 b(e)38 b(wish)d(to)i(compare)150 4303
 y(these)44 b(mo)s(dels)g(to)g(observ)-5 b(ations)44 b(stored)g(in)g
-Fy(obs.nc)e FD(whic)m(h)h(con)m(tains)i Fy(tas)e FD(only)h(in)f(its)i
+Fz(obs.nc)e FE(whic)m(h)h(con)m(tains)i Fz(tas)e FE(only)h(in)f(its)i
 (top-lev)m(el)150 4413 y(\(i.e.,)39 b(ro)s(ot\))d(group.)57
 b(It)36 b(is)g(often)g(the)g(case)h(that)f(man)m(y)g(mo)s(dels)g
 (and/or)g(mo)s(del)f(sim)m(ulations)i(exist,)150 4522
@@ -25462,43 +26653,43 @@ y(whereas)32 b(only)g(one)h(observ)-5 b(ational)34 b(dataset)f(do)s
 (es.)46 b(W)-8 b(e)34 b(ev)-5 b(aluate)34 b(the)e(mo)s(dels)g(and)g
 (obtain)g(the)h(bias)150 4632 y(\(di\013erence\))c(b)s(et)m(w)m(een)g
 (mo)s(dels)e(and)g(observ)-5 b(ations)29 b(b)m(y)f(subtracting)g
-Fy(obs.nc)e FD(from)h Fy(cmip5.nc)p FD(.)38 b(Then)150
-4741 y Fy(ncbo)30 b FD(\\broadcasts")i(\(i.e.,)h(replicates\))g(the)e
+Fz(obs.nc)e FE(from)h Fz(cmip5.nc)p FE(.)38 b(Then)150
+4741 y Fz(ncbo)30 b FE(\\broadcasts")i(\(i.e.,)h(replicates\))g(the)e
 (observ)-5 b(ational)33 b(data)f(to)f(matc)m(h)h(the)g(group)e
-(structure)h(of)150 4851 y Fy(cmip5.nc)p FD(,)e(subtracts,)i(and)g
+(structure)h(of)150 4851 y Fz(cmip5.nc)p FE(,)e(subtracts,)i(and)g
 (then)f(stores)i(the)f(results)g(in)f(the)h(output)g(\014le,)g
-Fy(bias.nc)e FD(whic)m(h)i(has)g(the)150 4961 y(same)g(group)f
-(structure)g(as)g Fy(cmip5.nc)p FD(.)390 5121 y Fy(\045)47
+Fz(bias.nc)e FE(whic)m(h)i(has)g(the)150 4961 y(same)g(group)f
+(structure)g(as)g Fz(cmip5.nc)p FE(.)390 5121 y Fz(\045)47
 b(ncbo)g(-O)g(cmip5.nc)f(obs.nc)g(bias.nc)390 5230 y(\045)h(ncks)g(-H)g
 (-v)g(tas)g(-d)h(time,3)e(bias.nc)390 5340 y(/cesm/tas)p
 eop end
-%%Page: 166 172
-TeXDict begin 166 171 bop 150 -116 a FD(166)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(time[3])46 b(tas[3]=-1)390
+%%Page: 178 184
+TeXDict begin 178 183 bop 150 -116 a FE(178)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(time[3])46 b(tas[3]=-1)390
 408 y(/ecmwf/tas)390 518 y(time[3])g(tas[3]=0)390 628
-y(/giss/tas)390 737 y(time[3])g(tas[3]=1)275 946 y FD(As)35
+y(/giss/tas)390 737 y(time[3])g(tas[3]=1)275 946 y FE(As)35
 b(a)h(\014nal)f(example,)i(sa)m(y)g(w)m(e)f(ha)m(v)m(e)g(\014v)m(e)g(y)
 m(ears)g(of)g(mon)m(thly)f(data)h(\(i.e.,)j(60)31 b(mon)m(ths\))36
-b(stored)f(in)150 1056 y Fy(8501_8912.nc)26 b FD(and)k(w)m(e)g(wish)f
+b(stored)f(in)150 1056 y Fz(8501_8912.nc)26 b FE(and)k(w)m(e)g(wish)f
 (to)i(create)g(a)f(\014le)g(whic)m(h)g(con)m(tains)h(the)f(t)m(w)m(elv)
 m(e)i(mon)m(th)e(seasonal)h(cycle)150 1166 y(of)24 b(the)h(a)m(v)m
 (erage)h(mon)m(thly)f(anomaly)g(from)e(the)i(\014v)m(e-y)m(ear)g(mean)g
 (of)f(this)g(data.)39 b(The)24 b(follo)m(wing)h(metho)s(d)150
 1275 y(is)33 b(just)f(one)h(p)s(erm)m(utation)g(of)g(man)m(y)f(whic)m
 (h)h(will)g(accomplish)g(the)g(same)g(result.)48 b(First)33
-b(use)g Fy(ncwa)e FD(to)150 1385 y(create)h(the)e(\014v)m(e-y)m(ear)i
-(mean:)390 1544 y Fy(ncwa)47 b(-a)g(time)f(8501_8912.nc)f(8589.nc)150
-1704 y FD(Next)f(use)f Fy(ncbo)f FD(to)h(create)i(a)e(\014le)h(con)m
+b(use)g Fz(ncwa)e FE(to)150 1385 y(create)h(the)e(\014v)m(e-y)m(ear)i
+(mean:)390 1544 y Fz(ncwa)47 b(-a)g(time)f(8501_8912.nc)f(8589.nc)150
+1704 y FE(Next)f(use)f Fz(ncbo)f FE(to)h(create)i(a)e(\014le)h(con)m
 (taining)g(the)f(di\013erence)h(of)f(eac)m(h)h(mon)m(th's)f(data)h
 (from)f(the)150 1813 y(\014v)m(e-y)m(ear)32 b(mean:)390
-1973 y Fy(ncbo)47 b(8501_8912.nc)d(8589.nc)i(t_anm_8501_8912.nc)150
-2132 y FD(No)m(w)38 b(use)f Fy(ncks)f FD(to)i(group)f(together)i(the)f
+1973 y Fz(ncbo)47 b(8501_8912.nc)d(8589.nc)i(t_anm_8501_8912.nc)150
+2132 y FE(No)m(w)38 b(use)f Fz(ncks)f FE(to)i(group)f(together)i(the)f
 (\014v)m(e)f(Jan)m(uary)g(anomalies)i(in)e(one)h(\014le,)h(and)e(use)g
-Fy(ncra)f FD(to)150 2242 y(create)30 b(the)f(a)m(v)m(erage)i(anomaly)f
+Fz(ncra)f FE(to)150 2242 y(create)30 b(the)f(a)m(v)m(erage)i(anomaly)f
 (for)e(all)i(\014v)m(e)f(Jan)m(uarys.)39 b(These)29 b(commands)f(are)h
 (em)m(b)s(edded)e(in)i(a)g(shell)150 2351 y(lo)s(op)h(so)h(they)g(are)f
 (rep)s(eated)h(for)f(all)h(t)m(w)m(elv)m(e)i(mon)m(ths:)390
-2511 y Fy(for)47 b(idx)g(in)g({1..12};)f(do)h(#)g(Bash)g(Shell)f
+2511 y Fz(for)47 b(idx)g(in)g({1..12};)f(do)h(#)g(Bash)g(Shell)f
 (\(version)g(3.0+\))485 2620 y(idx=`printf)f("\04502d")h(${idx}`)g(#)i
 (Zero-pad)d(to)i(preserve)f(order)485 2730 y(ncks)h(-F)g(-d)g
 (time,${idx},,12)d(t_anm_8501_8912.nc)f(foo.${idx})485
@@ -25511,105 +26702,103 @@ y(done)390 3059 y(for)i(idx)g(in)g(01)g(02)g(03)h(04)f(05)g(06)g(07)g
 (07)f(08)g(09)g(10)g(11)g(12\))g(#)h(C)f(Shell)485 3606
 y(ncks)g(-F)g(-d)g(time,${idx},,12)d(t_anm_8501_8912.nc)f(foo.${idx})
 485 3716 y(ncra)k(foo.${idx})e(t_anm_8589_${idx}.nc)390
-3826 y(end)150 3985 y FD(Note)39 b(that)g Fy(ncra)d FD(understands)g
-(the)i Fy(stride)e FD(argumen)m(t)j(so)f(the)g(t)m(w)m(o)h(commands)e
+3826 y(end)150 3985 y FE(Note)39 b(that)g Fz(ncra)d FE(understands)g
+(the)i Fz(stride)e FE(argumen)m(t)j(so)f(the)g(t)m(w)m(o)h(commands)e
 (inside)h(the)g(lo)s(op)150 4095 y(ma)m(y)31 b(b)s(e)f(com)m(bined)g
-(in)m(to)i(the)e(single)h(command)390 4254 y Fy(ncra)47
+(in)m(to)i(the)e(single)h(command)390 4254 y Fz(ncra)47
 b(-F)g(-d)g(time,${idx},,12)d(t_anm_8501_8912.nc)e(foo.${idx})150
-4413 y FD(Finally)-8 b(,)37 b(use)d Fy(ncrcat)f FD(to)i(concatenate)i
+4413 y FE(Finally)-8 b(,)37 b(use)d Fz(ncrcat)f FE(to)i(concatenate)i
 (the)d(12)d(a)m(v)m(erage)37 b(mon)m(thly)e(anomaly)g(\014les)f(in)m
 (to)i(one)e(t)m(w)m(elv)m(e-)150 4523 y(record)c(\014le)h(whic)m(h)f
 (con)m(tains)h(the)g(en)m(tire)g(seasonal)h(cycle)g(of)e(the)h(mon)m
-(thly)f(anomalies:)390 4682 y Fy(ncrcat)46 b(t_anm_8589_??.nc)d
+(thly)f(anomalies:)390 4682 y Fz(ncrcat)46 b(t_anm_8589_??.nc)d
 (t_anm_8589_0112.nc)p eop end
-%%Page: 167 173
-TeXDict begin 167 172 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(167)150
-299 y FB(4.4)68 b Fc(nces)43 b FB(netCDF)i(Ensem)l(ble)h(Statistics)150
-458 y FD(SYNT)-8 b(AX)390 621 y Fy(nces)47 b([-3])f([-4])h([-6])g([-7])
+%%Page: 179 185
+TeXDict begin 179 184 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(179)150 299 y FC(4.4)68
+b Fb(nces)43 b FC(netCDF)i(Ensem)l(ble)h(Statistics)150
+458 y FE(SYNT)-8 b(AX)390 621 y Fz(nces)47 b([-3])f([-4])h([-6])g([-7])
 f([-A])h([-C])f([-c])390 731 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])
 i([--cnk_min)e(sz])i([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390
-840 y([-D)i Fn(dbg)p Fy(])g([-d)f Fn(dim)p Fy(,[)p Fn(min)p
-Fy(][,[)p Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])c([-F])390
-950 y([-G)47 b Fn(gpe_dsc)p Fy(])e([-g)i Fn(grp)p Fy([,...)n(]])g([-h])
-g([--hdf])f([--hdr_pad)f Fn(nbr)p Fy(])390 1059 y([-L)i
-Fn(dfl_lvl)p Fy(])e([-l)i Fn(path)p Fy(])g([-n)g Fn(loop)p
-Fy(])f([--no_tmp_fl])e([--nsm_fl|grp])g([--nsm_sfx)h(sfx])390
-1169 y([-O])i([-o)g Fn(output-file)p Fy(])d([-p)j Fn(path)p
-Fy(])f([-R])h([-r])g([--ram_all])d([--rth_dbl|flt])390
-1279 y([-t)j Fn(thr_nbr)p Fy(])e([--unn])h([-v)h Fn(var)p
-Fy([,...)n(]])g([-X)g(...])g([-x])f([-y)h Fn(op_typ)p
-Fy(])390 1388 y([)p Fn(input-files)p Fy(])d([)p Fn(output-file)p
-Fy(])150 1551 y FD(DESCRIPTION)275 1714 y Fy(nces)22
-b FD(p)s(erforms)g(gridp)s(oin)m(t)h(statistics)j(on)d(v)-5
+840 y([-D)i Fo(dbg)p Fz(])g([-d)f Fo(dim)p Fz(,[)p Fo(min)p
+Fz(][,[)p Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])c([-F])390
+950 y([-G)47 b Fo(gpe_dsc)p Fz(])e([-g)i Fo(grp)p Fz([,...)n(]])g([-h])
+g([--hdf])f([--hdr_pad)f Fo(nbr)p Fz(])390 1060 y([-L)i
+Fo(dfl_lvl)p Fz(])e([-l)i Fo(path)p Fz(])g([-n)g Fo(loop)p
+Fz(])f([--no_tmp_fl])e([--nsm_fl|grp])g([--nsm_sfx)h(sfx])390
+1169 y([-O])i([-o)g Fo(output-)390 1279 y(file)p Fz(])f([-p)h
+Fo(path)p Fz(])g([--ppc)f(...])g([-R])h([-r])g([--ram_all])d
+([--rth_dbl|flt])390 1388 y([-t)j Fo(thr_nbr)p Fz(])e([--unn])h([-v)h
+Fo(var)p Fz([,...)n(]])g([-X)g(...])g([-x])f([-y)h Fo(op_typ)p
+Fz(])390 1498 y([)p Fo(input-files)p Fz(])d([)p Fo(output-file)p
+Fz(])150 1661 y FE(DESCRIPTION)275 1824 y Fz(nces)22
+b FE(p)s(erforms)g(gridp)s(oin)m(t)h(statistics)j(on)d(v)-5
 b(ariables)24 b(across)g(an)g(arbitrary)f(n)m(um)m(b)s(er)f(\(an)i
-Fz(ensem)m(ble)5 b FD(\))150 1823 y(of)29 b Fz(input-\014les)i
-FD(and/or)e(of)f(input)g(groups)g(within)g(eac)m(h)i(\014le.)40
+FA(ensem)m(ble)5 b FE(\))150 1934 y(of)29 b FA(input-\014les)i
+FE(and/or)e(of)f(input)g(groups)g(within)g(eac)m(h)i(\014le.)40
 b(Eac)m(h)29 b(\014le)g(\(or)f(group\))h(receiv)m(es)h(an)e(equal)150
-1933 y(w)m(eigh)m(t.)61 b Fy(nces)35 b FD(w)m(as)i(formerly)f(\(un)m
-(til)h FC(NCO)g FD(v)m(ersion)f(4.3.9,)41 b(released)c(Decem)m(b)s(er,)
-i(2013\))g(kno)m(wn)d(as)150 2042 y Fy(ncea)23 b FD(\(netCDF)j(Ensem)m
-(ble)e(Av)m(erager\))1538 2009 y Ft(1)1577 2042 y FD(.)39
-b(F)-8 b(or)25 b(example,)i Fy(nces)c FD(will)i(a)m(v)m(erage)i(a)e
-(set)g(of)f(\014les)h(or)f(groups,)150 2152 y(w)m(eigh)m(ting)f(eac)m
+2043 y(w)m(eigh)m(t.)61 b Fz(nces)35 b FE(w)m(as)i(formerly)f(\(un)m
+(til)h FD(NCO)g FE(v)m(ersion)f(4.3.9,)41 b(released)c(Decem)m(b)s(er,)
+i(2013\))g(kno)m(wn)d(as)150 2153 y Fz(ncea)23 b FE(\(netCDF)j(Ensem)m
+(ble)e(Av)m(erager\))1538 2120 y Fu(1)1577 2153 y FE(.)39
+b(F)-8 b(or)25 b(example,)i Fz(nces)c FE(will)i(a)m(v)m(erage)i(a)e
+(set)g(of)f(\014les)h(or)f(groups,)150 2262 y(w)m(eigh)m(ting)f(eac)m
 (h)g(\014le)f(or)f(group)g(ev)m(enly)-8 b(.)39 b(This)21
-b(is)h(distinct)g(from)f Fy(ncra)p FD(,)h(whic)m(h)f(p)s(erforms)f
-(statistics)k(only)150 2262 y(o)m(v)m(er)29 b(the)e(record)h
-(dimension\(s\))f(\(e.g.,)j Fz(time)5 b FD(\),)29 b(and)e(w)m(eigh)m
+b(is)h(distinct)g(from)f Fz(ncra)p FE(,)h(whic)m(h)f(p)s(erforms)f
+(statistics)k(only)150 2372 y(o)m(v)m(er)29 b(the)e(record)h
+(dimension\(s\))f(\(e.g.,)j FA(time)5 b FE(\),)29 b(and)e(w)m(eigh)m
 (ts)i(eac)m(h)f(record)g(in)f(eac)m(h)h(record)g(dimension)150
-2371 y(ev)m(enly)-8 b(.)275 2534 y(The)39 b(\014le)i(or)f(group)g(is)g
+2481 y(ev)m(enly)-8 b(.)275 2644 y(The)39 b(\014le)i(or)f(group)g(is)g
 (the)h(logical)h(unit)e(of)h(organization)h(for)e(the)h(results)f(of)g
-(man)m(y)h(scien)m(ti\014c)150 2643 y(studies.)k(Often)32
+(man)m(y)h(scien)m(ti\014c)150 2754 y(studies.)k(Often)32
 b(one)g(wishes)g(to)g(generate)i(a)e(\014le)g(or)g(group)g(whic)m(h)f
-(is)h(the)h(statistical)h(pro)s(duct)d(\(e.g.,)150 2753
+(is)h(the)h(statistical)h(pro)s(duct)d(\(e.g.,)150 2864
 y(a)m(v)m(erage\))48 b(of)e(man)m(y)f(separate)i(\014les)e(or)g
 (groups.)85 b(This)44 b(ma)m(y)i(b)s(e)f(to)h(reduce)f(statistical)j
-(noise)e(b)m(y)150 2863 y(com)m(bining)37 b(the)h(results)e(of)i(a)f
+(noise)e(b)m(y)150 2973 y(com)m(bining)37 b(the)h(results)e(of)i(a)f
 (large)h(n)m(um)m(b)s(er)e(of)h(exp)s(erimen)m(ts,)i(or)e(it)g(ma)m(y)h
-(simply)e(b)s(e)g(a)i(step)f(in)g(a)150 2972 y(pro)s(cedure)c(whose)g
+(simply)e(b)s(e)g(a)i(step)f(in)g(a)150 3083 y(pro)s(cedure)c(whose)g
 (goal)j(is)d(to)i(compute)f(anomalies)h(from)e(a)i(mean)e(state.)53
-b(In)33 b(an)m(y)h(case,)i(when)d(one)150 3082 y(desires)25
+b(In)33 b(an)m(y)h(case,)i(when)d(one)150 3192 y(desires)25
 b(to)g(generate)h(a)f(\014le)g(whose)g(statistical)i(prop)s(erties)d
 (are)h(equally)h(in\015uenced)e(b)m(y)g(all)i(the)f(inputs,)150
-3191 y(then)30 b Fy(nces)f FD(is)i(the)f(op)s(erator)h(to)g(use.)275
-3354 y(V)-8 b(ariables)40 b(in)e(the)h Fz(output-\014le)k
-FD(are)d(the)e(same)h(size)h(as)f(the)g(v)-5 b(ariable)39
-b(h)m(yp)s(erslab)f(in)g(eac)m(h)i(input)150 3464 y(\014le)30
+3302 y(then)30 b Fz(nces)f FE(is)i(the)f(op)s(erator)h(to)g(use.)275
+3465 y(V)-8 b(ariables)40 b(in)e(the)h FA(output-\014le)k
+FE(are)d(the)e(same)h(size)h(as)f(the)g(v)-5 b(ariable)39
+b(h)m(yp)s(erslab)f(in)g(eac)m(h)i(input)150 3575 y(\014le)30
 b(or)f(group,)h(and)f(eac)m(h)h(input)f(\014le)h(or)f(group)g(m)m(ust)g
 (b)s(e)g(the)h(same)g(size)h(after)f(h)m(yp)s(erslabbing)3494
-3431 y Ft(2)3559 3464 y Fy(nces)150 3573 y FD(do)s(es)g(allo)m(w)i
+3542 y Fu(2)3559 3575 y Fz(nces)150 3684 y FE(do)s(es)g(allo)m(w)i
 (\014les)e(to)h(di\013er)f(in)g(the)g(record)h(dimension)e(size)j(if)e
 (the)g(requested)g(record)h(h)m(yp)s(erslab)e(\(see)150
-3683 y(Section)j(3.15)i([Hyp)s(erslabs],)d(page)i(55\))g(resolv)m(es)f
-(to)h(the)f(same)g(size)g(for)f(all)i(\014les.)44 b Fy(nces)31
-b FD(recomputes)150 3792 y(the)i(record)g(dimension)g(h)m(yp)s(erslab)f
+3794 y(Section)j(3.15)i([Hyp)s(erslabs],)d(page)i(55\))g(resolv)m(es)f
+(to)h(the)f(same)g(size)g(for)f(all)i(\014les.)44 b Fz(nces)31
+b FE(recomputes)150 3903 y(the)i(record)g(dimension)g(h)m(yp)s(erslab)f
 (limits)i(for)f(eac)m(h)h(input)e(\014le)h(so)g(that)h(co)s(ordinate)g
-(limits)g(ma)m(y)g(b)s(e)150 3902 y(used)d(to)i(select)h(equal)f
+(limits)g(ma)m(y)g(b)s(e)150 4013 y(used)d(to)i(select)h(equal)f
 (length)f(timeseries)h(from)f(unequal)g(length)g(\014les.)46
-b(This)31 b(simpli\014es)h(analysis)h(of)150 4012 y(unequal)d(length)h
+b(This)31 b(simpli\014es)h(analysis)h(of)150 4122 y(unequal)d(length)h
 (timeseries)g(from)f(sim)m(ulation)h(ensem)m(bles)g(\(e.g.,)h(the)f
-FC(CMIP3)e(IPCC)h(AR4)g FD(arc)m(hiv)m(e\).)275 4174
-y Fy(nces)40 b FD(w)m(orks)i(in)f(one)h(of)g(t)m(w)m(o)h(mo)s(des,)h
+FD(CMIP3)e(IPCC)h(AR4)g FE(arc)m(hiv)m(e\).)275 4285
+y Fz(nces)40 b FE(w)m(orks)i(in)f(one)h(of)g(t)m(w)m(o)h(mo)s(des,)h
 (\014le)e(ensem)m(bles)g(or)g(group)f(ensem)m(bles.)75
-b(File)43 b(ensem)m(bles)150 4284 y(are)e(the)f(default)h(\(equiv)-5
-b(alen)m(t)42 b(to)f(the)g(old)f Fy(ncea)p FD(\))g(and)g(ma)m(y)h(also)
+b(File)43 b(ensem)m(bles)150 4395 y(are)e(the)f(default)h(\(equiv)-5
+b(alen)m(t)42 b(to)f(the)g(old)f Fz(ncea)p FE(\))g(and)g(ma)m(y)h(also)
 g(b)s(e)f(explicitly)i(sp)s(eci\014ed)d(b)m(y)i(the)150
-4394 y(`)p Fy(--nsm_fl)p FD(')25 b(or)h(`)p Fy(--ensemble_file)p
-FD(')d(switc)m(hes.)41 b(T)-8 b(o)27 b(p)s(erform)e(statistics)j(on)f
-(ensem)m(bles)g(of)g(groups,)g(a)150 4503 y(new)m(er)k(feature,)i(use)e
-(`)p Fy(--nsm_grp)p FD(')e(or)i(`)p Fy(--ensemble_group)p
-FD('.)40 b(Mem)m(b)s(ers)31 b(of)g(a)h(group)f(ensem)m(ble)h(are)p
-150 4615 1200 4 v 199 4682 a Ft(1)310 4714 y Fs(The)37
-b(old)f(ncea)g(command)h(w)n(as)f(deprecated)g(in)g Fp(NCO)g
-Fs(v)n(ersion)g(4.3.9,)41 b(released)c(Decem)n(b)r(er,)i(2013.)67
-b Fp(NCO)36 b Fs(will)275 4801 y(attempt)30 b(to)g(main)n(tain)h(bac)n
+4505 y(`)p Fz(--nsm_fl)p FE(')25 b(or)h(`)p Fz(--ensemble_file)p
+FE(')d(switc)m(hes.)41 b(T)-8 b(o)27 b(p)s(erform)e(statistics)j(on)f
+(ensem)m(bles)g(of)g(groups,)g(a)p 150 4615 1200 4 v
+199 4682 a Fu(1)310 4714 y Ft(The)37 b(old)f(ncea)g(command)h(w)n(as)f
+(deprecated)g(in)g Fq(NCO)g Ft(v)n(ersion)g(4.3.9,)41
+b(released)c(Decem)n(b)r(er,)i(2013.)67 b Fq(NCO)36 b
+Ft(will)275 4801 y(attempt)30 b(to)g(main)n(tain)h(bac)n
 (k-compatibilit)n(y)g(and)f(w)n(ork)g(as)h(exp)r(ected)f(with)h(in)n(v)
-n(o)r(cations)g(of)g Fr(ncea)h Fs(for)f(as)g(long)g(as)275
-4888 y(p)r(ossible.)k(Please)27 b(replace)g Fr(ncea)f
-Fs(b)n(y)f Fr(nces)i Fs(in)e(all)i(future)e(w)n(ork.)199
-4960 y Ft(2)275 4991 y Fs(As)c(of)h Fp(NCO)g Fs(v)n(ersion)g(4.4.2)h
-(\(released)g(F)-6 b(ebruary)g(,)21 b(2014\))i Fr(nces)g
-Fs(allo)n(ws)g(h)n(yp)r(erslabs)f(in)f(all)i(dimensions)f(so)h(long)f
+n(o)r(cations)g(of)g Fs(ncea)h Ft(for)f(as)g(long)g(as)275
+4888 y(p)r(ossible.)k(Please)27 b(replace)g Fs(ncea)f
+Ft(b)n(y)f Fs(nces)i Ft(in)e(all)i(future)e(w)n(ork.)199
+4960 y Fu(2)275 4991 y Ft(As)c(of)h Fq(NCO)g Ft(v)n(ersion)g(4.4.2)h
+(\(released)g(F)-6 b(ebruary)g(,)21 b(2014\))i Fs(nces)g
+Ft(allo)n(ws)g(h)n(yp)r(erslabs)f(in)f(all)i(dimensions)f(so)h(long)f
 (as)g(the)275 5078 y(h)n(yp)r(erslabs)27 b(resolv)n(e)i(to)f(the)g
 (same)h(size.)42 b(The)28 b(\014xed)f(\(i.e.,)j(non-record\))d
 (dimensions)i(should)f(b)r(e)g(the)f(same)i(size)g(in)275
@@ -25617,198 +26806,200 @@ Fs(allo)n(ws)g(h)n(yp)r(erslabs)f(in)f(all)i(dimensions)f(so)h(long)f
 (after)i(h)n(yp)r(erslabbing,)f(although)h(the)e(h)n(ypserslabs)i(ma)n
 (y)e(\(and)h(usually)275 5253 y(do\))i(c)n(hange)g(the)g(size)h(of)h
 (the)e(dimensions)h(from)g(the)f(input)f(to)i(the)f(output)f(\014les.)
-46 b(Prior)30 b(to)g(this,)h Fr(nces)f Fs(w)n(as)g(only)275
+46 b(Prior)30 b(to)g(this,)h Fs(nces)f Ft(w)n(as)g(only)275
 5340 y(guaran)n(teed)25 b(to)h(w)n(ork)g(on)g(h)n(yp)r(erslabs)f(in)h
 (the)f(record)h(dimension)g(that)g(resolv)n(ed)g(to)g(the)f(same)h
 (size.)p eop end
-%%Page: 168 174
-TeXDict begin 168 173 bop 150 -116 a FD(168)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(groups)k(that)g(share)g(the)h(same)
-f(structure,)h(paren)m(t)g(group,)g(and)e(nesting)i(lev)m(el.)53
-b(Mem)m(b)s(ers)34 b(m)m(ust)h(b)s(e)150 408 y Fz(leaf)h(groups)p
-FD(,)f(i.e.,)i(not)e(con)m(tain)h(an)m(y)f(sub-groups.)52
-b(Their)35 b(con)m(ten)m(ts)h(usually)e(ha)m(v)m(e)i(di\013eren)m(t)g
-(v)-5 b(alues)150 518 y(b)s(ecause)43 b(they)g(are)h(realizations)h(of)
-f(replicated)g(exp)s(erimen)m(ts.)79 b(In)42 b(group)h(ensem)m(ble)g
-(mo)s(de)g Fy(nces)150 628 y FD(computes)27 b(the)f(statistics)j
-(across)e(the)f(ensem)m(ble,)i(whic)m(h)e(ma)m(y)h(span)f(m)m(ultiple)h
-(input)f(\014les.)39 b(Files)27 b(ma)m(y)150 737 y(con)m(tain)h(mem)m
-(b)s(ers)d(of)h(m)m(ultiple,)i(distinct)f(ensem)m(bles.)39
-b(Ho)m(w)m(ev)m(er,)30 b(all)d(ensem)m(bles)f(m)m(ust)g(ha)m(v)m(e)i
-(at)f(least)150 847 y(one)34 b(mem)m(b)s(er)f(in)g(the)h(\014rst)e
-(input)h(\014le.)50 b(Group)33 b(ensem)m(bles)h(b)s(eha)m(v)m(e)g(as)g
-(an)g(unlimited)f(dimension)g(of)150 956 y(datasets:)43
-b(they)31 b(ma)m(y)h(con)m(tain)g(an)f(arbitrary)g(and)f(extensible)i
-(n)m(um)m(b)s(er)e(of)h(realizations)i(in)d(eac)m(h)j(\014le,)150
-1066 y(and)d(ma)m(y)h(b)s(e)e(comp)s(osed)i(from)f(m)m(ultiple)h
-(\014les.)275 1230 y(Output)19 b(statistics)k(in)d(group)g(ensem)m(ble)
-h(mo)s(de)f(are)h(stored)g(in)g(the)f(paren)m(t)h(group)f(b)m(y)h
-(default.)38 b(If)20 b(the)150 1340 y(ensem)m(ble)h(mem)m(b)s(ers)f
-(are)h Fy(/cesm/cesm_01)c FD(and)j Fy(/cesm/cesm_02)p
-FD(,)f(then)i(the)f(computed)h(statistic)i(will)150 1450
-y(b)s(e)f(in)h Fy(/cesm)e FD(in)h(the)h(output)g(\014le.)38
-b(The)22 b(`)p Fy(--nsm_sfx)p FD(')f(option)i(instructs)g(nces)f(to)i
-(instead)f(store)g(output)150 1559 y(in)f(a)g(new)f(c)m(hild)h(group)g
-(of)g(the)g(paren)m(t)g(created)h(b)m(y)e(attac)m(hing)k(the)d(su\016x)
-e(to)j(the)f(paren)m(t)g(group's)g(name,)150 1669 y(e.g.,)32
-b(`)p Fy(--nsm_sfx='_avg')p FD(')26 b(w)m(ould)31 b(store)f(results)h
-(in)f(the)g(output)g(group)g Fy(/cesm/cesm_avg)p FD(:)390
-1833 y Fy(nces)47 b(--nsm_grp)856 b(mdl1.nc)46 b(mdl2.nc)g(mdl3.nc)g
-(out.nc)390 1943 y(nces)h(--nsm_grp)e(--nsm_sfx='_avg')e(mdl1.nc)j
-(mdl2.nc)g(mdl3.nc)g(out.nc)275 2107 y FD(See)32 b(Section)h(2.6)h
+%%Page: 180 186
+TeXDict begin 180 185 bop 150 -116 a FE(180)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(new)m(er)h(feature,)i(use)e(`)p
+Fz(--nsm_grp)p FE(')e(or)i(`)p Fz(--ensemble_group)p
+FE('.)40 b(Mem)m(b)s(ers)31 b(of)g(a)h(group)f(ensem)m(ble)h(are)150
+408 y(groups)i(that)g(share)g(the)h(same)f(structure,)h(paren)m(t)g
+(group,)g(and)e(nesting)i(lev)m(el.)53 b(Mem)m(b)s(ers)34
+b(m)m(ust)h(b)s(e)150 518 y FA(leaf)h(groups)p FE(,)f(i.e.,)i(not)e
+(con)m(tain)h(an)m(y)f(sub-groups.)52 b(Their)35 b(con)m(ten)m(ts)h
+(usually)e(ha)m(v)m(e)i(di\013eren)m(t)g(v)-5 b(alues)150
+628 y(b)s(ecause)43 b(they)g(are)h(realizations)h(of)f(replicated)g
+(exp)s(erimen)m(ts.)79 b(In)42 b(group)h(ensem)m(ble)g(mo)s(de)g
+Fz(nces)150 737 y FE(computes)27 b(the)f(statistics)j(across)e(the)f
+(ensem)m(ble,)i(whic)m(h)e(ma)m(y)h(span)f(m)m(ultiple)h(input)f
+(\014les.)39 b(Files)27 b(ma)m(y)150 847 y(con)m(tain)h(mem)m(b)s(ers)d
+(of)h(m)m(ultiple,)i(distinct)f(ensem)m(bles.)39 b(Ho)m(w)m(ev)m(er,)30
+b(all)d(ensem)m(bles)f(m)m(ust)g(ha)m(v)m(e)i(at)f(least)150
+956 y(one)34 b(mem)m(b)s(er)f(in)g(the)h(\014rst)e(input)h(\014le.)50
+b(Group)33 b(ensem)m(bles)h(b)s(eha)m(v)m(e)g(as)g(an)g(unlimited)f
+(dimension)g(of)150 1066 y(datasets:)43 b(they)31 b(ma)m(y)h(con)m
+(tain)g(an)f(arbitrary)g(and)f(extensible)i(n)m(um)m(b)s(er)e(of)h
+(realizations)i(in)d(eac)m(h)j(\014le,)150 1176 y(and)d(ma)m(y)h(b)s(e)
+e(comp)s(osed)i(from)f(m)m(ultiple)h(\014les.)275 1363
+y(Output)19 b(statistics)k(in)d(group)g(ensem)m(ble)h(mo)s(de)f(are)h
+(stored)g(in)g(the)f(paren)m(t)h(group)f(b)m(y)h(default.)38
+b(If)20 b(the)150 1473 y(ensem)m(ble)h(mem)m(b)s(ers)f(are)h
+Fz(/cesm/cesm_01)c FE(and)j Fz(/cesm/cesm_02)p FE(,)f(then)i(the)f
+(computed)h(statistic)i(will)150 1583 y(b)s(e)f(in)h
+Fz(/cesm)e FE(in)h(the)h(output)g(\014le.)38 b(The)22
+b(`)p Fz(--nsm_sfx)p FE(')f(option)i(instructs)g(nces)f(to)i(instead)f
+(store)g(output)150 1692 y(in)f(a)g(new)f(c)m(hild)h(group)g(of)g(the)g
+(paren)m(t)g(created)h(b)m(y)e(attac)m(hing)k(the)d(su\016x)e(to)j(the)
+f(paren)m(t)g(group's)g(name,)150 1802 y(e.g.,)32 b(`)p
+Fz(--nsm_sfx='_avg')p FE(')26 b(w)m(ould)31 b(store)f(results)h(in)f
+(the)g(output)g(group)g Fz(/cesm/cesm_avg)p FE(:)390
+1990 y Fz(nces)47 b(--nsm_grp)856 b(mdl1.nc)46 b(mdl2.nc)g(mdl3.nc)g
+(out.nc)390 2099 y(nces)h(--nsm_grp)e(--nsm_sfx='_avg')e(mdl1.nc)j
+(mdl2.nc)g(mdl3.nc)g(out.nc)275 2287 y FE(See)32 b(Section)h(2.6)h
 ([Statistics)g(vs.)46 b(Concatenation],)35 b(page)e(18,)h(for)e(a)h
-(description)g(of)f(the)h(distinc-)150 2217 y(tions)40
+(description)g(of)f(the)h(distinc-)150 2397 y(tions)40
 b(b)s(et)m(w)m(een)g(the)g(statistics)h(to)s(ols)f(and)f
 (concatenators.)70 b(As)40 b(a)g(m)m(ulti-\014le)g(op)s(erator,)i
-Fy(nces)d FD(will)150 2326 y(read)33 b(the)g(list)g(of)h
-Fz(input-\014les)i FD(from)c Fy(stdin)f FD(if)i(they)g(are)h(not)f(sp)s
+Fz(nces)d FE(will)150 2506 y(read)33 b(the)g(list)g(of)h
+FA(input-\014les)i FE(from)c Fz(stdin)f FE(if)i(they)g(are)h(not)f(sp)s
 (eci\014ed)f(as)h(p)s(ositional)h(argumen)m(ts)f(on)150
-2436 y(the)e(command)f(line)g(\(see)i(Section)f(2.7)g([Large)h(Num)m(b)
-s(ers)d(of)h(Files],)i(page)f(19\).)275 2600 y(Lik)m(e)43
-b Fy(ncra)f FD(and)g Fy(ncwa)p FD(,)j Fy(nces)c FD(treats)j(co)s
+2616 y(the)e(command)f(line)g(\(see)i(Section)f(2.7)g([Large)h(Num)m(b)
+s(ers)d(of)h(Files],)i(page)f(19\).)275 2804 y(Lik)m(e)43
+b Fz(ncra)f FE(and)g Fz(ncwa)p FE(,)j Fz(nces)c FE(treats)j(co)s
 (ordinate)f(v)-5 b(ariables)44 b(as)f(a)g(sp)s(ecial)g(case.)79
-b(Co)s(ordinate)150 2710 y(v)-5 b(ariables)34 b(are)f(assumed)f(to)i(b)
+b(Co)s(ordinate)150 2913 y(v)-5 b(ariables)34 b(are)f(assumed)f(to)i(b)
 s(e)e(the)i(same)f(in)g(all)h(ensem)m(ble)f(mem)m(b)s(ers,)g(so)h
-Fy(nces)d FD(simply)i(copies)h(the)150 2819 y(co)s(ordinate)42
+Fz(nces)d FE(simply)i(copies)h(the)150 3023 y(co)s(ordinate)42
 b(v)-5 b(ariables)41 b(that)g(app)s(ear)f(in)h(ensem)m(ble)g(mem)m(b)s
 (ers)f(directly)h(to)h(the)f(output)f(\014le.)72 b(This)150
-2929 y(has)32 b(the)g(same)h(e\013ect)g(as)g(a)m(v)m(eraging)h(the)f
+3133 y(has)32 b(the)g(same)h(e\013ect)g(as)g(a)m(v)m(eraging)h(the)f
 (co)s(ordinate)f(v)-5 b(ariable)33 b(across)g(the)f(ensem)m(ble,)i(y)m
-(et)f(do)s(es)f(not)150 3039 y(incur)38 b(the)h(time-)g(or)g
+(et)f(do)s(es)f(not)150 3242 y(incur)38 b(the)h(time-)g(or)g
 (precision-)g(p)s(enalties)g(of)f(actually)i(a)m(v)m(eraging)h(them.)66
-b Fy(ncra)37 b FD(and)h Fy(ncwa)f FD(allo)m(w)150 3148
+b Fz(ncra)37 b FE(and)h Fz(ncwa)f FE(allo)m(w)150 3352
 y(co)s(ordinate)43 b(v)-5 b(ariables)43 b(to)g(b)s(e)f(pro)s(cessed)f
 (only)i(b)m(y)f(the)h(linear)f(a)m(v)m(erage)j(op)s(eration,)h
-(regardless)d(of)150 3258 y(the)32 b(arithmetic)g(op)s(eration)g(t)m
+(regardless)d(of)150 3461 y(the)32 b(arithmetic)g(op)s(eration)g(t)m
 (yp)s(e)g(p)s(erformed)e(on)h(the)h(non-co)s(ordinate)g(v)-5
-b(ariables)32 b(\(see)g(Section)g(3.32)150 3367 y([Op)s(eration)27
-b(T)m(yp)s(es],)h(page)f(84\).)41 b(Th)m(us)26 b(it)i(can)f(b)s(e)g
-(said)g(that)h(the)f(three)g(op)s(erators)g(\()p Fy(ncra)p
-FD(,)h Fy(ncwa)p FD(,)f(and)150 3477 y Fy(nces)p FD(\))35
+b(ariables)32 b(\(see)g(Section)g(3.33)150 3571 y([Op)s(eration)27
+b(T)m(yp)s(es],)h(page)f(94\).)41 b(Th)m(us)26 b(it)i(can)f(b)s(e)g
+(said)g(that)h(the)f(three)g(op)s(erators)g(\()p Fz(ncra)p
+FE(,)h Fz(ncwa)p FE(,)f(and)150 3680 y Fz(nces)p FE(\))35
 b(all)i(a)m(v)m(erage)h(co)s(ordinate)f(v)-5 b(ariables)36
-b(\(ev)m(en)h(though)f Fy(nces)f FD(simply)g(copies)i(them\).)57
-b(All)37 b(other)150 3587 y(requested)27 b(arithmetic)h(op)s(erations)f
+b(\(ev)m(en)h(though)f Fz(nces)f FE(simply)g(copies)i(them\).)57
+b(All)37 b(other)150 3790 y(requested)27 b(arithmetic)h(op)s(erations)f
 (\(e.g.,)j(maximization,)f(square-ro)s(ot,)f(RMS\))f(are)h(applied)e
-(only)h(to)150 3696 y(non-co)s(ordinate)36 b(v)-5 b(ariables.)55
+(only)h(to)150 3900 y(non-co)s(ordinate)36 b(v)-5 b(ariables.)55
 b(In)34 b(these)h(cases)h(the)f(linear)g(a)m(v)m(erage)j(of)d(the)g(co)
-s(ordinate)h(v)-5 b(ariable)36 b(will)150 3806 y(b)s(e)30
-b(returned.)150 3970 y(EXAMPLES)275 4134 y(Consider)h(a)i(mo)s(del)f
+s(ordinate)h(v)-5 b(ariable)36 b(will)150 4009 y(b)s(e)30
+b(returned.)150 4197 y(EXAMPLES)275 4385 y(Consider)h(a)i(mo)s(del)f
 (exp)s(erimen)m(t)g(whic)m(h)g(generated)i(\014v)m(e)e(realizations)j
-(of)d(one)h(y)m(ear)g(of)f(data,)i(sa)m(y)150 4244 y(1985.)42
+(of)d(one)h(y)m(ear)g(of)f(data,)i(sa)m(y)150 4495 y(1985.)42
 b(Imagine)29 b(that)h(the)e(exp)s(erimen)m(ter)h(sligh)m(tly)h(p)s
 (erturbs)d(the)i(initial)h(conditions)f(of)g(the)g(problem)150
-4354 y(b)s(efore)22 b(generating)j(eac)m(h)e(new)g(solution.)39
+4604 y(b)s(efore)22 b(generating)j(eac)m(h)e(new)g(solution.)39
 b(Assume)22 b(eac)m(h)i(\014le)f(con)m(tains)h(all)f(t)m(w)m(elv)m(e)j
-(mon)m(ths)c(\(a)i(seasonal)150 4463 y(cycle\))30 b(of)f(data)g(and)e
+(mon)m(ths)c(\(a)i(seasonal)150 4714 y(cycle\))30 b(of)f(data)g(and)e
 (w)m(e)i(w)m(an)m(t)g(to)h(pro)s(duce)d(a)h(single)h(\014le)g(con)m
 (taining)h(the)e(ensem)m(ble)h(a)m(v)m(erage)i(\(mean\))150
-4573 y(seasonal)37 b(cycle.)59 b(Here)37 b(the)f(n)m(umeric)g
+4823 y(seasonal)37 b(cycle.)59 b(Here)37 b(the)f(n)m(umeric)g
 (\014lename)g(su\016x)f(denotes)i(the)f(realization)i(n)m(um)m(b)s(er)d
-(\()p Fo(not)46 b FD(the)150 4682 y(mon)m(th\):)390 4847
-y Fy(nces)h(85_01.nc)e(85_02.nc)h(85_03.nc)f(85_04.nc)h(85_05.nc)f
-(85.nc)390 4956 y(nces)i(85_0[1-5].nc)d(85.nc)390 5066
-y(nces)j(-n)g(5,2,1)f(85_01.nc)g(85.nc)150 5230 y FD(These)30
+(\()p Fp(not)46 b FE(the)150 4933 y(mon)m(th\):)390 5121
+y Fz(nces)h(85_01.nc)e(85_02.nc)h(85_03.nc)f(85_04.nc)h(85_05.nc)f
+(85.nc)390 5230 y(nces)i(85_0[1-5].nc)d(85.nc)390 5340
+y(nces)j(-n)g(5,2,1)f(85_01.nc)g(85.nc)p eop end
+%%Page: 181 187
+TeXDict begin 181 186 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(181)150 299 y(These)30
 b(three)g(commands)f(pro)s(duce)g(iden)m(tical)i(answ)m(ers.)41
 b(See)30 b(Section)g(3.5)h([Sp)s(ecifying)f(Input)e(Files],)150
-5340 y(page)39 b(28,)j(for)c(an)h(explanation)h(of)e(the)h
-(distinctions)g(b)s(et)m(w)m(een)h(these)f(metho)s(ds.)64
-b(The)38 b(output)h(\014le,)p eop end
-%%Page: 169 175
-TeXDict begin 169 174 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(169)150
-299 y Fy(85.nc)p FD(,)32 b(is)h(the)g(same)h(size)g(as)f(the)g(inputs)f
-(\014les.)48 b(It)33 b(con)m(tains)h(12)g(mon)m(ths)f(of)g(data)g
-(\(whic)m(h)g(migh)m(t)h(or)150 408 y(migh)m(t)d(not)g(b)s(e)f(stored)h
-(in)f(the)h(record)g(dimension,)f(dep)s(ending)f(on)i(the)g(input)e
-(\014les\),)j(but)e(eac)m(h)h(v)-5 b(alue)150 518 y(in)30
-b(the)h(output)f(\014le)g(is)g(the)h(a)m(v)m(erage)i(of)e(the)f(\014v)m
-(e)h(v)-5 b(alues)31 b(in)f(the)g(input)g(\014les.)275
-677 y(In)f(the)h(previous)g(example,)h(the)f(user)f(could)h(ha)m(v)m(e)
-i(obtained)e(the)g(ensem)m(ble)h(a)m(v)m(erage)h(v)-5
-b(alues)31 b(in)f(a)150 787 y(particular)h(spatio-temp)s(oral)g(region)
-g(b)m(y)g(adding)f(a)g(h)m(yp)s(erslab)g(argumen)m(t)h(to)g(the)f
-(command,)h(e.g.,)390 946 y Fy(nces)47 b(-d)g(time,0,2)e(-d)j
-(lat,-23.5,23.5)43 b(85_??.nc)j(85.nc)150 1106 y FD(In)33
+408 y(page)39 b(28,)j(for)c(an)h(explanation)h(of)e(the)h(distinctions)
+g(b)s(et)m(w)m(een)h(these)f(metho)s(ds.)64 b(The)38
+b(output)h(\014le,)150 518 y Fz(85.nc)p FE(,)32 b(is)h(the)g(same)h
+(size)g(as)f(the)g(inputs)f(\014les.)48 b(It)33 b(con)m(tains)h(12)g
+(mon)m(ths)f(of)g(data)g(\(whic)m(h)g(migh)m(t)h(or)150
+628 y(migh)m(t)d(not)g(b)s(e)f(stored)h(in)f(the)h(record)g(dimension,)
+f(dep)s(ending)f(on)i(the)g(input)e(\014les\),)j(but)e(eac)m(h)h(v)-5
+b(alue)150 737 y(in)30 b(the)h(output)f(\014le)g(is)g(the)h(a)m(v)m
+(erage)i(of)e(the)f(\014v)m(e)h(v)-5 b(alues)31 b(in)f(the)g(input)g
+(\014les.)275 897 y(In)f(the)h(previous)g(example,)h(the)f(user)f
+(could)h(ha)m(v)m(e)i(obtained)e(the)g(ensem)m(ble)h(a)m(v)m(erage)h(v)
+-5 b(alues)31 b(in)f(a)150 1006 y(particular)h(spatio-temp)s(oral)g
+(region)g(b)m(y)g(adding)f(a)g(h)m(yp)s(erslab)g(argumen)m(t)h(to)g
+(the)f(command,)h(e.g.,)390 1166 y Fz(nces)47 b(-d)g(time,0,2)e(-d)j
+(lat,-23.5,23.5)43 b(85_??.nc)j(85.nc)150 1325 y FE(In)33
 b(this)h(case)h(the)e(output)h(\014le)g(w)m(ould)f(con)m(tain)i(only)f
-(three)g(slices)h(of)f(data)g(in)g(the)g Fz(time)39 b
-FD(dimension.)150 1215 y(These)29 b(three)g(slices)h(are)f(the)g(a)m(v)
+(three)g(slices)h(of)f(data)g(in)g(the)g FA(time)39 b
+FE(dimension.)150 1435 y(These)29 b(three)g(slices)h(are)f(the)g(a)m(v)
 m(erage)j(of)d(the)g(\014rst)f(three)h(slices)h(from)e(the)h(input)f
-(\014les.)40 b(Additionally)-8 b(,)150 1325 y(only)30
+(\014les.)40 b(Additionally)-8 b(,)150 1544 y(only)30
 b(data)i(inside)e(the)g(tropics)h(is)f(included.)275
-1484 y(As)e(of)h FC(NCO)f FD(v)m(ersion)h(4.3.9)i(\(released)f(Decem)m
-(b)s(er,)g(2013\))h Fy(nces)c FD(also)j(w)m(orks)e(with)h(groups)f
-(\(rather)150 1594 y(than)33 b(\014les\))g(as)g(the)h(fundamen)m(tal)e
+1704 y(As)e(of)h FD(NCO)f FE(v)m(ersion)h(4.3.9)i(\(released)f(Decem)m
+(b)s(er,)g(2013\))h Fz(nces)c FE(also)j(w)m(orks)e(with)h(groups)f
+(\(rather)150 1813 y(than)33 b(\014les\))g(as)g(the)h(fundamen)m(tal)e
 (unit)h(of)g(the)g(ensem)m(ble.)49 b(Consider)33 b(t)m(w)m(o)h(ensem)m
-(bles,)g Fy(/ecmwf)e FD(and)150 1704 y Fy(/cesm)e FD(stored)h(across)h
-(three)g(input)e(\014les)h Fy(mdl1.nc)p FD(,)f Fy(mdl2.nc)p
-FD(,)g(and)h Fy(mdl3.nc)p FD(.)41 b(Ensem)m(ble)32 b(mem)m(b)s(ers)150
-1813 y(w)m(ould)25 b(b)s(e)g(leaf)i(groups)e(with)g(names)h(lik)m(e)h
-Fy(/ecmwf/01)p FD(,)d Fy(/ecmwf/02)f FD(etc.)40 b(and)25
-b Fy(/cesm/01)p FD(,)g Fy(/cesm/02)p FD(,)150 1923 y(etc.)42
+(bles,)g Fz(/ecmwf)e FE(and)150 1923 y Fz(/cesm)e FE(stored)h(across)h
+(three)g(input)e(\014les)h Fz(mdl1.nc)p FE(,)f Fz(mdl2.nc)p
+FE(,)g(and)h Fz(mdl3.nc)p FE(.)41 b(Ensem)m(ble)32 b(mem)m(b)s(ers)150
+2032 y(w)m(ould)25 b(b)s(e)g(leaf)i(groups)e(with)g(names)h(lik)m(e)h
+Fz(/ecmwf/01)p FE(,)d Fz(/ecmwf/02)f FE(etc.)40 b(and)25
+b Fz(/cesm/01)p FE(,)g Fz(/cesm/02)p FE(,)150 2142 y(etc.)42
 b(These)30 b(commands)g(a)m(v)m(erage)j(b)s(oth)d(ensem)m(bles:)390
-2082 y Fy(nces)47 b(--nsm_grp)e(mdl1.nc)h(mdl2.nc)g(mdl3.nc)f(out.nc)
-390 2192 y(nces)i(--nsm_grp)e(--nsm_sfx='_min')e(--op_typ=min)i(-n)i
-(3,1,1)f(mdl1.nc)g(out.nc)390 2301 y(nces)h(--nsm_grp)e(-g)i(cesm)g(-v)
+2301 y Fz(nces)47 b(--nsm_grp)e(mdl1.nc)h(mdl2.nc)g(mdl3.nc)f(out.nc)
+390 2411 y(nces)i(--nsm_grp)e(--nsm_sfx='_min')e(--op_typ=min)i(-n)i
+(3,1,1)f(mdl1.nc)g(out.nc)390 2521 y(nces)h(--nsm_grp)e(-g)i(cesm)g(-v)
 g(tas)g(-d)g(time,0,3)f(-n)h(3,1,1)f(mdl1.nc)g(out.nc)275
-2461 y FD(The)34 b(\014rst)g(command)h(stores)g(a)m(v)m(erages)j(in)c
-(the)i(output)e(groups)g Fy(/cesm)g FD(and)g Fy(/ecmwf)p
-FD(,)h(while)g(the)150 2570 y(second)c(stores)g(minima)g(in)f(the)h
-(output)f(groups)g Fy(/cesm/cesm_min)d FD(and)j Fy(/ecmwf/ecmwf_min)p
-FD(:)37 b(The)150 2680 y(third)c(command)g(demonstrates)i(that)f
+2680 y FE(The)34 b(\014rst)g(command)h(stores)g(a)m(v)m(erages)j(in)c
+(the)i(output)e(groups)g Fz(/cesm)g FE(and)g Fz(/ecmwf)p
+FE(,)h(while)g(the)150 2790 y(second)c(stores)g(minima)g(in)f(the)h
+(output)f(groups)g Fz(/cesm/cesm_min)d FE(and)j Fz(/ecmwf/ecmwf_min)p
+FE(:)37 b(The)150 2899 y(third)c(command)g(demonstrates)i(that)f
 (sub-setting)g(and)f(h)m(yp)s(erslabbing)g(w)m(ork)g(as)h(exp)s(ected.)
-52 b(Note)150 2790 y(that)29 b(eac)m(h)g(input)e(\014le)i(ma)m(y)g(con)
+52 b(Note)150 3009 y(that)29 b(eac)m(h)g(input)e(\014le)i(ma)m(y)g(con)
 m(tain)g(di\013eren)m(t)g(n)m(um)m(b)s(ers)e(of)h(mem)m(b)s(ers)f(of)i
-(eac)m(h)g(ensem)m(ble,)g(as)g(long)g(as)150 2899 y(all)i(distinct)g
+(eac)m(h)g(ensem)m(ble,)g(as)g(long)g(as)150 3118 y(all)i(distinct)g
 (ensem)m(bles)g(con)m(tain)g(at)h(least)f(one)g(mem)m(b)s(er)f(in)g
 (the)g(\014rst)g(\014le.)p eop end
-%%Page: 170 176
-TeXDict begin 170 175 bop 150 -116 a FD(170)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.5)68 b Fc(ncecat)42
-b FB(netCDF)j(Ensem)l(ble)h(Concatenator)150 458 y FD(SYNT)-8
-b(AX)390 630 y Fy(ncecat)46 b([-3])h([-4])f([-6])h([-7])g([-A])f([-C])h
+%%Page: 182 188
+TeXDict begin 182 187 bop 150 -116 a FE(182)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.5)68 b Fb(ncecat)42
+b FC(netCDF)j(Ensem)l(ble)h(Concatenator)150 458 y FE(SYNT)-8
+b(AX)390 630 y Fz(ncecat)46 b([-3])h([-4])f([-6])h([-7])g([-A])f([-C])h
 ([-c])390 740 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f(map])i([--cnk_min)e
 (sz])i([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390 849 y([-D)i
-Fn(dbg)p Fy(])g([-d)f Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])c([-F])390 959
-y([-G)47 b Fn(gpe_dsc)p Fy(])e([-g)i Fn(grp)p Fy([,...)n(]])g([--gag])f
-([-h])h([--hdf])f([--hdr_pad)f Fn(nbr)p Fy(])390 1068
-y([-L)i Fn(dfl_lvl)p Fy(])e([-l)i Fn(path)p Fy(])g([-M])f
-([--md5_digest])e([--mrd])i([-n)h Fn(loop)p Fy(])f([--no_tmp_fl])390
-1178 y([-O])h([-o)g Fn(output-file)p Fy(])d([-p)j Fn(path)p
-Fy(])f([-R])h([-r])g([--ram_all])390 1288 y([-t)g Fn(thr_nbr)p
-Fy(])e([-u)i Fn(ulm_nm)p Fy(])f([--unn])g([-v)h Fn(var)p
-Fy([,...)n(]])g([-X)g(...])f([-x])390 1397 y([)p Fn(input-files)p
-Fy(])e([)p Fn(output-file)p Fy(])150 1569 y FD(DESCRIPTION)275
-1741 y Fy(ncecat)24 b FD(aggregates)29 b(an)c(arbitrary)h(n)m(um)m(b)s
-(er)f(of)h(input)f(\014les)h(in)m(to)h(a)f(single)g(output)g(\014le)g
-(using)f(using)150 1851 y(one)43 b(of)g(t)m(w)m(o)h(metho)s(ds.)77
-b Fz(Record)43 b(A)m(Ggregation)i FD(\()p FC(RA)n(G)p
-FD(\),)i(the)c(traditional)h(metho)s(d)e(emplo)m(y)m(ed)i(on)150
-1960 y(\(\015at\))36 b(netCDF3)g(\014les)e(and)g(still)i(the)f(default)
-g(metho)s(d,)g(stores)h Fz(input-\014les)h FD(as)e(consecutiv)m(e)i
-(records)150 2070 y(in)d(the)g Fz(output-\014le)p FD(.)52
-b Fz(Group)34 b(A)m(Ggregation)j FD(\()p FC(GA)n(G)p
-FD(\))e(stores)f Fz(input-\014les)k FD(as)c(top-lev)m(el)i(groups)e(in)
-g(the)150 2179 y(netCDF4)g Fz(output-\014le)p FD(.)47
-b(Record)33 b(Aggregation)j(\()p FC(RA)n(G)p FD(\))d(mak)m(es)h(n)m
-(umerous)d(assumptions)h(ab)s(out)h(the)150 2289 y(structure)43
-b(of)g(input)f(\014les)h(and)f(Group)h(Aggregation)i(\()p
-FC(GA)n(G)p FD(\))f(mak)m(es)g(none.)79 b(Both)43 b(metho)s(ds)g(are)
-150 2399 y(describ)s(ed)27 b(in)h(detail)h(b)s(elo)m(w.)40
-b(Since)28 b Fy(ncecat)f FD(aggregates)k(all)e(the)f(con)m(ten)m(ts)i
-(of)e(the)g(input)f(\014les,)i(it)g(can)150 2508 y(easily)36
-b(pro)s(duce)e(large)j(output)d(\014les)i(so)f(it)h(is)f(often)h
-(helpful)e(to)i(in)m(v)m(ok)m(e)h(subsetting)e(sim)m(ultaneously)150
-2618 y(\(see)c(Section)h(3.11)f([Subsetting)g(Files],)h(page)f(40\).)
-275 2790 y FC(RA)n(G)36 b FD(mak)m(es)h(eac)m(h)h(v)-5
-b(ariable)37 b(\(except)g(co)s(ordinate)h(v)-5 b(ariables\))37
-b(in)f(eac)m(h)h(input)f(\014le)g(in)m(to)i(a)e(single)150
-2899 y(record)d(of)g(the)h(same)f(v)-5 b(ariable)34 b(in)f(the)h
-(output)e(\014le.)49 b(Co)s(ordinate)34 b(v)-5 b(ariables)34
-b(are)f(not)h(concatenated,)150 3009 y(they)k(are)g(instead)f(simply)g
-(copied)h(from)f(the)h(\014rst)f(input)f(\014le)i(to)g(the)g
-Fz(output-\014le)p FD(.)62 b(All)38 b Fz(input-\014les)150
-3118 y FD(m)m(ust)30 b(con)m(tain)i(all)f(extracted)h(v)-5
+Fo(dbg)p Fz(])g([-d)f Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])c([-F])390 959
+y([-G)47 b Fo(gpe_dsc)p Fz(])e([-g)i Fo(grp)p Fz([,...)n(]])g([--gag])f
+([-h])h([--hdf])f([--hdr_pad)f Fo(nbr)p Fz(])390 1068
+y([-L)i Fo(dfl_lvl)p Fz(])e([-l)i Fo(path)p Fz(])g([-M])f
+([--md5_digest])e([--mrd])i([-n)h Fo(loop)p Fz(])f([--no_tmp_fl])390
+1178 y([-O])h([-o)g Fo(output-file)p Fz(])d([-p)j Fo(path)p
+Fz(])f([--ppc)g(...])h([-R])g([-r])f([--ram_all])390
+1288 y([-t)h Fo(thr_nbr)p Fz(])e([-u)i Fo(ulm_nm)p Fz(])f([--unn])g
+([-v)h Fo(var)p Fz([,...)n(]])g([-X)g(...])f([-x])390
+1397 y([)p Fo(input-files)p Fz(])e([)p Fo(output-file)p
+Fz(])150 1569 y FE(DESCRIPTION)275 1741 y Fz(ncecat)24
+b FE(aggregates)29 b(an)c(arbitrary)h(n)m(um)m(b)s(er)f(of)h(input)f
+(\014les)h(in)m(to)h(a)f(single)g(output)g(\014le)g(using)f(using)150
+1851 y(one)43 b(of)g(t)m(w)m(o)h(metho)s(ds.)77 b FA(Record)43
+b(A)m(Ggregation)i FE(\()p FD(RA)n(G)p FE(\),)i(the)c(traditional)h
+(metho)s(d)e(emplo)m(y)m(ed)i(on)150 1960 y(\(\015at\))36
+b(netCDF3)g(\014les)e(and)g(still)i(the)f(default)g(metho)s(d,)g
+(stores)h FA(input-\014les)h FE(as)e(consecutiv)m(e)i(records)150
+2070 y(in)d(the)g FA(output-\014le)p FE(.)52 b FA(Group)34
+b(A)m(Ggregation)j FE(\()p FD(GA)n(G)p FE(\))e(stores)f
+FA(input-\014les)k FE(as)c(top-lev)m(el)i(groups)e(in)g(the)150
+2179 y(netCDF4)g FA(output-\014le)p FE(.)47 b(Record)33
+b(Aggregation)j(\()p FD(RA)n(G)p FE(\))d(mak)m(es)h(n)m(umerous)d
+(assumptions)h(ab)s(out)h(the)150 2289 y(structure)e(of)g(input)f
+(\014les)h(whereas)g(Group)f(Aggregation)k(\()p FD(GA)n(G)p
+FE(\))e(mak)m(es)g(none.)42 b(Both)32 b(metho)s(ds)f(are)150
+2399 y(describ)s(ed)c(in)h(detail)h(b)s(elo)m(w.)40 b(Since)28
+b Fz(ncecat)f FE(aggregates)k(all)e(the)f(con)m(ten)m(ts)i(of)e(the)g
+(input)f(\014les,)i(it)g(can)150 2508 y(easily)36 b(pro)s(duce)e(large)
+j(output)d(\014les)i(so)f(it)h(is)f(often)h(helpful)e(to)i(in)m(v)m(ok)
+m(e)h(subsetting)e(sim)m(ultaneously)150 2618 y(\(see)c(Section)h(3.11)
+f([Subsetting)g(Files],)h(page)f(40\).)275 2790 y FD(RA)n(G)36
+b FE(mak)m(es)h(eac)m(h)h(v)-5 b(ariable)37 b(\(except)g(co)s(ordinate)
+h(v)-5 b(ariables\))37 b(in)f(eac)m(h)h(input)f(\014le)g(in)m(to)i(a)e
+(single)150 2899 y(record)d(of)g(the)h(same)f(v)-5 b(ariable)34
+b(in)f(the)h(output)e(\014le.)49 b(Co)s(ordinate)34 b(v)-5
+b(ariables)34 b(are)f(not)h(concatenated,)150 3009 y(they)k(are)g
+(instead)f(simply)g(copied)h(from)f(the)h(\014rst)f(input)f(\014le)i
+(to)g(the)g FA(output-\014le)p FE(.)62 b(All)38 b FA(input-\014les)150
+3118 y FE(m)m(ust)30 b(con)m(tain)i(all)f(extracted)h(v)-5
 b(ariables)31 b(\(or)g(else)g(there)g(w)m(ould)f(b)s(e)f(\\gaps")j(in)e
 (the)h(output)f(\014le\).)275 3290 y(A)j(new)g(record)g(dimension)f(is)
 i(the)f(glue)h(whic)m(h)f(binds)f(together)j(the)e(input)f(\014le)i
@@ -25817,95 +27008,95 @@ i(the)f(glue)h(whic)m(h)f(binds)f(together)j(the)e(input)f(\014le)i
 (so)h(it)g(is)f(visible)h(to)g(all)g(sub-)150 3509 y(groups.)54
 b(Its)36 b(name)f(is,)i(b)m(y)e(default,)i(\\record".)56
 b(This)34 b(default)h(name)h(can)f(b)s(e)g(o)m(v)m(erridden)g(with)g
-(the)150 3619 y(`)p Fy(-u)30 b Fn(ulm_nm)p FD(')f(short)h(option)h
-(\(or)g(the)f(`)p Fy(--ulm_nm)p FD(')f(or)h(`)p Fy(rcd_nm)p
-FD(')f(long)i(options\).)275 3791 y(Eac)m(h)24 b(extracted)i(v)-5
+(the)150 3619 y(`)p Fz(-u)30 b Fo(ulm_nm)p FE(')f(short)h(option)h
+(\(or)g(the)f(`)p Fz(--ulm_nm)p FE(')f(or)h(`)p Fz(rcd_nm)p
+FE(')f(long)i(options\).)275 3791 y(Eac)m(h)24 b(extracted)i(v)-5
 b(ariable)24 b(m)m(ust)g(b)s(e)f(constan)m(t)j(in)d(size)i(and)f(rank)f
-(across)i(all)f Fz(input-\014les)p FD(.)38 b(The)24 b(only)150
-3900 y(exception)34 b(is)e(that)h Fy(ncecat)d FD(allo)m(ws)k(\014les)e
+(across)i(all)f FA(input-\014les)p FE(.)38 b(The)24 b(only)150
+3900 y(exception)34 b(is)e(that)h Fz(ncecat)d FE(allo)m(ws)k(\014les)e
 (to)h(di\013er)f(in)g(the)h(record)f(dimension)g(size)h(if)f(the)h
 (requested)150 4010 y(record)21 b(h)m(yp)s(erslab)f(\(see)h(Section)h
 (3.15)g([Hyp)s(erslabs],)h(page)f(55\))g(resolv)m(es)g(to)f(the)g(same)
 h(size)f(for)g(all)h(\014les.)150 4120 y(This)28 b(allo)m(ws)i(easier)f
 (gluing/a)m(v)m(eraging)j(of)c(unequal)g(length)h(timeseries)h(from)e
 (sim)m(ulation)i(ensem)m(bles)150 4229 y(\(e.g.,)i(the)f
-FC(CMIP)f FD(rc)m(hiv)m(e\).)275 4401 y(Classic)22 b(\(i.e.,)k(all)d
-(netCDF3)g(and)e Fy(NETCDF4_CLASSIC)p FD(\))d(output)k(\014les)g(can)g
+FD(CMIP)f FE(rc)m(hiv)m(e\).)275 4401 y(Classic)22 b(\(i.e.,)k(all)d
+(netCDF3)g(and)e Fz(NETCDF4_CLASSIC)p FE(\))d(output)k(\014les)g(can)g
 (con)m(tain)i(only)e(one)g(record)150 4511 y(dimension.)61
-b Fy(ncecat)36 b FD(mak)m(es)i(ro)s(om)g(for)f(the)h(new)f(glue)h
+b Fz(ncecat)36 b FE(mak)m(es)i(ro)s(om)g(for)f(the)h(new)f(glue)h
 (record)f(dimension)g(b)m(y)g(c)m(hanging)i(the)e(pre-)150
 4620 y(existing)29 b(record)e(dimension,)h(if)g(an)m(y)-8
 b(,)29 b(in)f(the)g(input)e(\014les)i(in)m(to)h(a)f(\014xed)f
 (dimension)g(in)g(the)h(output)g(\014le.)150 4730 y(netCDF4)36
 b(output)e(\014les)h(ma)m(y)g(con)m(tain)h(an)m(y)g(n)m(um)m(b)s(er)d
-(of)i(record)g(dimensions,)g(so)g Fy(ncecat)e FD(need)i(not)150
+(of)i(record)g(dimensions,)g(so)g Fz(ncecat)e FE(need)i(not)150
 4839 y(and)c(do)s(es)g(not)h(alter)g(the)g(record)f(dimensions,)h(if)f
 (an)m(y)-8 b(,)33 b(of)e(the)h(input)f(\014les)g(as)h(it)g(copies)g
 (them)g(to)g(the)150 4949 y(output)e(\014le.)275 5121
-y Fz(Group)j(A)m(Ggregation)k FD(\()p FC(GA)n(G)p FD(\))e(stores)f
-Fz(input-\014les)j FD(as)d(top-lev)m(el)j(groups)c(in)h(the)g
-Fz(output-\014le)p FD(.)51 b(No)150 5230 y(assumption)26
+y FA(Group)j(A)m(Ggregation)k FE(\()p FD(GA)n(G)p FE(\))e(stores)f
+FA(input-\014les)j FE(as)d(top-lev)m(el)j(groups)c(in)h(the)g
+FA(output-\014le)p FE(.)51 b(No)150 5230 y(assumption)26
 b(is)g(made)g(ab)s(out)g(the)h(size)g(or)f(shap)s(e)g(or)g(t)m(yp)s(e)g
 (of)h(a)f(giv)m(en)i(ob)5 b(ject)27 b(\(v)-5 b(ariable)27
 b(or)g(dimension)150 5340 y(or)42 b(group\))h(in)f(the)g(input)g
 (\014le.)77 b(The)41 b(en)m(tire)j(con)m(ten)m(ts)g(of)e(the)h
 (extracted)h(p)s(ortion)e(of)g(eac)m(h)i(input)p eop
 end
-%%Page: 171 177
-TeXDict begin 171 176 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(171)150
-299 y(\014le)39 b(is)g(placed)g(in)g(its)g(o)m(wn)g(top-lev)m(el)j
-(group)c(in)h Fz(output-\014le)p FD(,)i(whic)m(h)e(is)g(automatically)i
-(made)e(as)h(a)150 408 y(netCDF4-format)32 b(\014le.)275
-573 y FC(GA)n(G)27 b FD(has)f(t)m(w)m(o)j(metho)s(ds)d(to)i(sp)s(ecify)
-e(group)h(names)f(for)h(the)g Fz(output-\014le)p FD(.)40
-b(The)26 b(`)p Fy(-G)p FD(')h(option,)i(or)e(its)150
-682 y(long-option)i(equiv)-5 b(alen)m(t)29 b(`)p Fy(--gpe)p
-FD(',)e(tak)m(es)i(as)e(argumen)m(t)h(a)g(group)e(path)h(editing)h
-(description)g Fz(gp)s(e)p 3584 682 28 4 v 40 w(dsc)150
-792 y FD(of)k(where)f(to)h(place)h(the)f(results.)44
-b(Eac)m(h)32 b(input)f(\014le)h(needs)f(a)h(distinct)g(output)f(group)g
-(name)h(to)g(a)m(v)m(oid)150 902 y(namespace)h(con\015icts)g(in)f(the)g
-Fz(output-\014le)p FD(.)46 b(Hence)33 b Fy(ncecat)d FD(automatically)36
-b(creates)d(unique)e(output)150 1011 y(group)40 b(names)h(based)f(on)h
-(either)g(the)g(input)e(\014lenames)i(or)g(the)g Fz(gp)s(e)p
-2633 1011 V 39 w(dsc)46 b FD(argumen)m(ts.)72 b(When)41
-b(the)150 1121 y(user)31 b(pro)m(vides)i Fz(gp)s(e)p
-851 1121 V 39 w(dsc)38 b FD(\(i.e.,)c(with)e(`)p Fy(-G)p
-FD('\),)h(then)f(the)g(output)g(groups)f(are)i(formed)e(b)m(y)h(en)m
-(umerating)150 1230 y(sequen)m(tial)24 b(t)m(w)m(o-digit)h(n)m(umeric)e
-(su\016xes)f(starting)h(with)g(zero,)i(and)d(app)s(ending)g(them)g(to)i
-(the)f(sp)s(eci\014ed)150 1340 y(group)h(path)h(\(see)g(Section)h(3.13)
-g([Group)e(P)m(ath)h(Editing],)i(page)e(46\).)40 b(When)25
-b Fz(gp)s(e)p 2974 1340 V 40 w(dsc)30 b FD(is)24 b(not)h(pro)m(vided)
-150 1450 y(\(i.e.,)k(user)e(requests)g FC(GA)n(G)g FD(with)g(`)p
-Fy(--gag)p FD(')f(instead)h(of)g(`)p Fy(-G)p FD('\),)h(then)f
-Fy(ncecat)e FD(forms)i(the)g(output)g(groups)150 1559
+%%Page: 183 189
+TeXDict begin 183 188 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(183)150 299 y(\014le)39
+b(is)g(placed)g(in)g(its)g(o)m(wn)g(top-lev)m(el)j(group)c(in)h
+FA(output-\014le)p FE(,)i(whic)m(h)e(is)g(automatically)i(made)e(as)h
+(a)150 408 y(netCDF4-format)32 b(\014le.)275 573 y FD(GA)n(G)27
+b FE(has)f(t)m(w)m(o)j(metho)s(ds)d(to)i(sp)s(ecify)e(group)h(names)f
+(for)h(the)g FA(output-\014le)p FE(.)40 b(The)26 b(`)p
+Fz(-G)p FE(')h(option,)i(or)e(its)150 682 y(long-option)i(equiv)-5
+b(alen)m(t)29 b(`)p Fz(--gpe)p FE(',)e(tak)m(es)i(as)e(argumen)m(t)h(a)
+g(group)e(path)h(editing)h(description)g FA(gp)s(e)p
+3584 682 28 4 v 40 w(dsc)150 792 y FE(of)k(where)f(to)h(place)h(the)f
+(results.)44 b(Eac)m(h)32 b(input)f(\014le)h(needs)f(a)h(distinct)g
+(output)f(group)g(name)h(to)g(a)m(v)m(oid)150 902 y(namespace)h
+(con\015icts)g(in)f(the)g FA(output-\014le)p FE(.)46
+b(Hence)33 b Fz(ncecat)d FE(automatically)36 b(creates)d(unique)e
+(output)150 1011 y(group)40 b(names)h(based)f(on)h(either)g(the)g
+(input)e(\014lenames)i(or)g(the)g FA(gp)s(e)p 2633 1011
+V 39 w(dsc)46 b FE(argumen)m(ts.)72 b(When)41 b(the)150
+1121 y(user)31 b(pro)m(vides)i FA(gp)s(e)p 851 1121 V
+39 w(dsc)38 b FE(\(i.e.,)c(with)e(`)p Fz(-G)p FE('\),)h(then)f(the)g
+(output)g(groups)f(are)i(formed)e(b)m(y)h(en)m(umerating)150
+1230 y(sequen)m(tial)24 b(t)m(w)m(o-digit)h(n)m(umeric)e(su\016xes)f
+(starting)h(with)g(zero,)i(and)d(app)s(ending)g(them)g(to)i(the)f(sp)s
+(eci\014ed)150 1340 y(group)h(path)h(\(see)g(Section)h(3.13)g([Group)e
+(P)m(ath)h(Editing],)i(page)e(46\).)40 b(When)25 b FA(gp)s(e)p
+2974 1340 V 40 w(dsc)30 b FE(is)24 b(not)h(pro)m(vided)150
+1450 y(\(i.e.,)k(user)e(requests)g FD(GA)n(G)g FE(with)g(`)p
+Fz(--gag)p FE(')f(instead)h(of)g(`)p Fz(-G)p FE('\),)h(then)f
+Fz(ncecat)e FE(forms)i(the)g(output)g(groups)150 1559
 y(b)m(y)21 b(stripping)g(the)g(input)f(\014le)i(name)f(of)g(an)m(y)h(t)
-m(yp)s(e-su\016x)e(\(e.g.,)25 b Fy(.nc)p FD(\),)e(and)e(all)h(but)e
+m(yp)s(e-su\016x)e(\(e.g.,)25 b Fz(.nc)p FE(\),)e(and)e(all)h(but)e
 (the)i(\014nal)f(comp)s(onen)m(t)150 1669 y(of)31 b(the)f(full)g
-(\014lename.)390 1833 y Fy(ncecat)46 b(--gag)g(85.nc)h(86.nc)f(87.nc)h
+(\014lename.)390 1833 y Fz(ncecat)46 b(--gag)g(85.nc)h(86.nc)f(87.nc)h
 (8587.nc)e(#)j(Output)e(groups)g(85,)h(86,)g(87)390 1943
 y(ncecat)f(-G)h(85_)g(a.nc)g(b.nc)f(c.nc)h(8589.nc)f(#)h(Output)f
 (groups)h(85_00,)f(85_01,)g(85_02)390 2052 y(ncecat)g(-G)h(85/)g(a.nc)g
 (b.nc)f(c.nc)h(8589.nc)f(#)h(Output)f(groups)h(85/00,)f(85/01,)g(85/02)
-275 2217 y FD(With)36 b(b)s(oth)g FC(RA)n(G)g FD(and)g
-FC(GA)n(G)g FD(the)h Fz(output-\014le)k FD(size)c(is)f(the)h(sum)e(of)h
+275 2217 y FE(With)36 b(b)s(oth)g FD(RA)n(G)g FE(and)g
+FD(GA)n(G)g FE(the)h FA(output-\014le)k FE(size)c(is)f(the)h(sum)e(of)h
 (the)h(sizes)g(of)f(the)h(extracted)150 2326 y(v)-5 b(ariables)37
 b(in)e(the)i(input)e(\014les.)57 b(See)37 b(Section)f(2.6)i
 ([Statistics)f(vs.)58 b(Concatenation],)39 b(page)e(18,)i(for)d(a)150
 2436 y(description)g(of)h(the)f(distinctions)h(b)s(et)m(w)m(een)g(the)f
 (v)-5 b(arious)37 b(statistics)h(to)s(ols)f(and)e(concatenators.)61
 b(As)150 2545 y(a)41 b(m)m(ulti-\014le)h(op)s(erator,)i
-Fy(ncecat)39 b FD(will)i(read)g(the)g(list)h(of)f Fz(input-\014les)j
-FD(from)c Fy(stdin)g FD(if)g(they)h(are)h(not)150 2655
+Fz(ncecat)39 b FE(will)i(read)g(the)g(list)h(of)f FA(input-\014les)j
+FE(from)c Fz(stdin)g FE(if)g(they)h(are)h(not)150 2655
 y(sp)s(eci\014ed)30 b(as)h(p)s(ositional)h(argumen)m(ts)f(on)g(the)g
 (command)g(line)g(\(see)h(Section)f(2.7)h([Large)g(Num)m(b)s(ers)e(of)
 150 2765 y(Files],)i(page)f(19\).)275 2929 y(Suppress)21
 b(global)k(metadata)h(cop)m(ying.)40 b(By)24 b(default)g
-FC(NCO)p FD('s)g(m)m(ulti-\014le)h(op)s(erators)f(cop)m(y)g(the)h
+FD(NCO)p FE('s)g(m)m(ulti-\014le)h(op)s(erators)f(cop)m(y)g(the)h
 (global)150 3039 y(metadata)37 b(from)e(the)h(\014rst)f(input)g(\014le)
-h(in)m(to)g Fz(output-\014le)p FD(.)57 b(This)35 b(helps)g(to)h
+h(in)m(to)g FA(output-\014le)p FE(.)57 b(This)35 b(helps)g(to)h
 (preserv)m(e)g(the)g(pro)m(v)m(enance)150 3148 y(of)k(the)h(output)f
 (data.)71 b(Ho)m(w)m(ev)m(er,)45 b(the)c(use)f(of)g(metadata)i(is)e
 (burgeoning)g(and)g(is)g(not)h(uncommon)150 3258 y(to)d(encoun)m(ter)h
@@ -25914,22 +27105,22 @@ h(in)m(to)g Fz(output-\014le)p FD(.)57 b(This)35 b(helps)g(to)h
 y(of)e(data)h(from)e(suc)m(h)h(\014les)f(leads)i(to)f(output)g(\014les)
 g(whic)m(h)f(are)i(m)m(uc)m(h)e(larger)i(than)f(necessary)g(due)f(to)
 150 3477 y(the)41 b(automatically)j(copied)d(metadata.)75
-b Fy(ncecat)39 b FD(supp)s(orts)g(turning)h(o\013)h(the)h(default)f
+b Fz(ncecat)39 b FE(supp)s(orts)g(turning)h(o\013)h(the)h(default)f
 (cop)m(ying)h(of)150 3587 y(global)c(metadata)f(via)g(the)g(`)p
-Fy(-M)p FD(')f(switc)m(h)g(\(or)h(its)g(long)f(option)h(equiv)-5
-b(alen)m(ts,)39 b(`)p Fy(--glb_mtd_spp)p FD(')34 b(and)150
-3696 y(`)p Fy(--global_metadata_suppres)o(s)p FD('\).)275
-3861 y(Consider)20 b(\014v)m(e)i(realizations,)j Fy(85a.nc)p
-FD(,)d Fy(85b.nc)p FD(,)27 b(.)c(.)f(.)41 b Fy(85e.nc)20
-b FD(of)i(1985)h(predictions)e(from)g(the)h(same)150
-3970 y(climate)35 b(mo)s(del.)48 b(Then)32 b Fy(ncecat)d(85?.nc)f
-(85_ens.nc)j FD(glues)i(together)h(the)f(individual)g(realizations)150
-4080 y(in)m(to)i(the)g(single)g(\014le,)h Fy(85_ens.nc)p
-FD(.)50 b(If)34 b(an)g(input)g(v)-5 b(ariable)35 b(w)m(as)g
-(dimensioned)f([)p Fy(lat)p FD(,)p Fy(lon)p FD(],)g(it)h(will)g(b)m(y)
+Fz(-M)p FE(')f(switc)m(h)g(\(or)h(its)g(long)f(option)h(equiv)-5
+b(alen)m(ts,)39 b(`)p Fz(--glb_mtd_spp)p FE(')34 b(and)150
+3696 y(`)p Fz(--global_metadata_suppres)o(s)p FE('\).)275
+3861 y(Consider)20 b(\014v)m(e)i(realizations,)j Fz(85a.nc)p
+FE(,)d Fz(85b.nc)p FE(,)27 b(.)c(.)f(.)41 b Fz(85e.nc)20
+b FE(of)i(1985)h(predictions)e(from)g(the)h(same)150
+3970 y(climate)35 b(mo)s(del.)48 b(Then)32 b Fz(ncecat)d(85?.nc)f
+(85_ens.nc)j FE(glues)i(together)h(the)f(individual)g(realizations)150
+4080 y(in)m(to)i(the)g(single)g(\014le,)h Fz(85_ens.nc)p
+FE(.)50 b(If)34 b(an)g(input)g(v)-5 b(ariable)35 b(w)m(as)g
+(dimensioned)f([)p Fz(lat)p FE(,)p Fz(lon)p FE(],)g(it)h(will)g(b)m(y)
 150 4189 y(default)27 b(ha)m(v)m(e)h(dimensions)e([)p
-Fy(record)p FD(,)p Fy(lat)p FD(,)p Fy(lon)p FD(])f(in)i(the)g(output)f
-(\014le.)40 b(A)30 b(restriction)e(of)f Fy(ncecat)e FD(is)i(that)150
+Fz(record)p FE(,)p Fz(lat)p FE(,)p Fz(lon)p FE(])f(in)i(the)g(output)f
+(\014le.)40 b(A)30 b(restriction)e(of)f Fz(ncecat)e FE(is)i(that)150
 4299 y(the)32 b(h)m(yp)s(erslabs)e(of)h(the)h(pro)s(cessed)f(v)-5
 b(ariables)32 b(m)m(ust)f(b)s(e)f(the)i(same)g(from)f(\014le)g(to)h
 (\014le.)44 b(Normally)32 b(this)150 4408 y(means)d(all)h(the)f(input)g
@@ -25938,30 +27129,30 @@ b(ariables)32 b(m)m(ust)f(b)s(e)f(the)i(same)g(from)f(\014le)g(to)h
 b(ariables.)275 4682 y(Concatenating)44 b(a)f(v)-5 b(ariable)44
 b(pac)m(k)m(ed)g(with)f(di\013eren)m(t)g(scales)h(across)g(m)m(ultiple)
 f(datasets)h(is)f(b)s(e-)150 4792 y(y)m(ond)34 b(the)h(capabilities)h
-(of)f Fy(ncecat)d FD(\(and)i Fy(ncrcat)p FD(,)g(the)h(other)f
+(of)f Fz(ncecat)d FE(\(and)i Fz(ncrcat)p FE(,)g(the)h(other)f
 (concatenator)j(\(Section)f(2.6.1)g([Con-)150 4902 y(catenation],)41
-b(page)d(18\).)62 b Fy(ncecat)36 b FD(do)s(es)g(not)i(unpac)m(k)f
-(data,)i(it)f(simply)f Fo(c)-5 b(opies)45 b FD(the)37
-b(data)h(from)f(the)150 5011 y Fz(input-\014les)p FD(,)c(and)e(the)i
-(metadata)h(from)e(the)g Fo(\014rst)42 b Fz(input-\014le)p
-FD(,)33 b(to)g(the)g Fz(output-\014le)p FD(.)46 b(This)32
+b(page)d(18\).)62 b Fz(ncecat)36 b FE(do)s(es)g(not)i(unpac)m(k)f
+(data,)i(it)f(simply)f Fp(c)-5 b(opies)45 b FE(the)37
+b(data)h(from)f(the)150 5011 y FA(input-\014les)p FE(,)c(and)e(the)i
+(metadata)h(from)e(the)g Fp(\014rst)42 b FA(input-\014le)p
+FE(,)33 b(to)g(the)g FA(output-\014le)p FE(.)46 b(This)32
 b(means)g(that)150 5121 y(data)26 b(compressed)e(with)h(a)g(pac)m(king)
 h(con)m(v)m(en)m(tion)h(m)m(ust)e(use)g(the)g(iden)m(tical)i(pac)m
-(king)f(parameters)f(\(e.g.,)150 5230 y Fy(scale_factor)31
-b FD(and)k Fy(add_offset)p FD(\))d(for)i(a)h(giv)m(en)h(v)-5
-b(ariable)36 b(across)f Fo(al)5 b(l)45 b FD(input)34
+(king)f(parameters)f(\(e.g.,)150 5230 y Fz(scale_factor)31
+b FE(and)k Fz(add_offset)p FE(\))d(for)i(a)h(giv)m(en)h(v)-5
+b(ariable)36 b(across)f Fp(al)5 b(l)45 b FE(input)34
 b(\014les.)53 b(Otherwise)35 b(the)150 5340 y(concatenated)d(dataset)g
 (will)f(not)f(unpac)m(k)g(correctly)-8 b(.)42 b(The)30
 b(w)m(ork)-5 b(around)30 b(for)g(cases)h(where)e(the)i(pac)m(k-)p
 eop end
-%%Page: 172 178
-TeXDict begin 172 177 bop 150 -116 a FD(172)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(ing)36 b(parameters)h(di\013er)e
-(across)i Fz(input-\014les)i FD(requires)d(three)g(steps:)52
+%%Page: 184 190
+TeXDict begin 184 189 bop 150 -116 a FE(184)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(ing)36 b(parameters)h(di\013er)e
+(across)i FA(input-\014les)i FE(requires)d(three)g(steps:)52
 b(First,)38 b(unpac)m(k)e(the)h(data)f(using)150 408
-y Fy(ncpdq)p FD(.)h(Second,)25 b(concatenate)i(the)d(unpac)m(k)m(ed)f
-(data)i(using)e Fy(ncecat)p FD(,)h(Third,)g(re-pac)m(k)h(the)f(result)f
-(with)150 518 y Fy(ncpdq)p FD(.)150 677 y(EXAMPLES)275
+y Fz(ncpdq)p FE(.)h(Second,)25 b(concatenate)i(the)d(unpac)m(k)m(ed)f
+(data)i(using)e Fz(ncecat)p FE(,)h(Third,)g(re-pac)m(k)h(the)f(result)f
+(with)150 518 y Fz(ncpdq)p FE(.)150 677 y(EXAMPLES)275
 837 y(Consider)31 b(a)i(mo)s(del)f(exp)s(erimen)m(t)g(whic)m(h)g
 (generated)i(\014v)m(e)e(realizations)j(of)d(one)h(y)m(ear)g(of)f
 (data,)i(sa)m(y)150 946 y(1985.)42 b(Y)-8 b(ou)30 b(can)g(imagine)g
@@ -25973,66 +27164,66 @@ b(eac)m(h)i(\014le)f(con)m(tains)g(all)h(t)m(w)m(elv)m(e)h(mon)m(ths)
 m(t)g(to)g(pro)s(duce)e(a)i(single)g(\014le)g(con)m(taining)h(all)f
 (the)g(seasonal)150 1275 y(cycles.)42 b(Here)31 b(the)f(n)m(umeric)h
 (\014lename)f(su\016x)g(denotes)g(the)h(exp)s(erimen)m(t)f(n)m(um)m(b)s
-(er)g(\()p Fo(not)40 b FD(the)30 b(mon)m(th\):)390 1435
-y Fy(ncecat)46 b(85_01.nc)g(85_02.nc)f(85_03.nc)h(85_04.nc)f(85_05.nc)h
+(er)g(\()p Fp(not)40 b FE(the)30 b(mon)m(th\):)390 1435
+y Fz(ncecat)46 b(85_01.nc)g(85_02.nc)f(85_03.nc)h(85_04.nc)f(85_05.nc)h
 (85.nc)390 1544 y(ncecat)g(85_0[1-5].nc)f(85.nc)390 1654
-y(ncecat)h(-n)h(5,2,1)g(85_01.nc)e(85.nc)150 1813 y FD(These)30
+y(ncecat)h(-n)h(5,2,1)g(85_01.nc)e(85.nc)150 1813 y FE(These)30
 b(three)g(commands)f(pro)s(duce)g(iden)m(tical)i(answ)m(ers.)41
 b(See)30 b(Section)g(3.5)h([Sp)s(ecifying)f(Input)e(Files],)150
 1923 y(page)39 b(28,)j(for)c(an)h(explanation)h(of)e(the)h
 (distinctions)g(b)s(et)m(w)m(een)h(these)f(metho)s(ds.)64
-b(The)38 b(output)h(\014le,)150 2032 y Fy(85.nc)p FD(,)29
+b(The)38 b(output)h(\014le,)150 2032 y Fz(85.nc)p FE(,)29
 b(is)i(\014v)m(e)f(times)h(the)g(size)g(as)g(a)f(single)h
-Fz(input-\014le)p FD(.)41 b(It)30 b(con)m(tains)i(60)f(mon)m(ths)f(of)h
+FA(input-\014le)p FE(.)41 b(It)30 b(con)m(tains)i(60)f(mon)m(ths)f(of)h
 (data.)275 2192 y(One)21 b(often)h(prefers)f(that)h(the)g(\(new\))g
 (record)g(dimension)f(ha)m(v)m(e)i(a)f(more)g(descriptiv)m(e,)j(con)m
 (text-based)150 2301 y(name)30 b(than)h(simply)e(\\record".)42
 b(This)30 b(is)g(easily)h(accomplished)h(with)e(the)g(`)p
-Fy(-u)g Fn(ulm_nm)p FD(')f(switc)m(h:)390 2461 y Fy(ncecat)46
+Fz(-u)g Fo(ulm_nm)p FE(')f(switc)m(h:)390 2461 y Fz(ncecat)46
 b(-u)h(realization)e(85_0[1-5].nc)f(85.nc)150 2620 y
-FD(Users)h(are)g(more)g(lik)m(ely)h(to)f(understand)e(the)i(data)h(pro)
+FE(Users)h(are)g(more)g(lik)m(ely)h(to)f(understand)e(the)i(data)h(pro)
 s(cessing)e(history)h(when)f(suc)m(h)g(descriptiv)m(e)150
 2730 y(co)s(ordinates)31 b(are)g(used.)275 2889 y(Consider)36
 b(a)i(\014le)g(with)f(an)h(existing)h(record)e(dimension)g(named)g
-Fy(time)p FD(.)62 b(and)37 b(supp)s(ose)f(the)i(user)150
-2999 y(wishes)c(to)g(con)m(v)m(ert)i Fy(time)d FD(from)g(a)i(record)f
+Fz(time)p FE(.)62 b(and)37 b(supp)s(ose)f(the)i(user)150
+2999 y(wishes)c(to)g(con)m(v)m(ert)i Fz(time)d FE(from)g(a)i(record)f
 (dimension)f(to)i(a)g(non-record)e(dimension.)52 b(This)33
 b(ma)m(y)i(b)s(e)150 3108 y(useful,)i(for)f(example,)i(when)d(the)h
 (user)f(has)h(another)g(use)g(for)g(the)g(record)g(v)-5
 b(ariable.)58 b(The)36 b(simplest)150 3218 y(metho)s(d)f(is)g(to)h(use)
-e(`)p Fy(ncks)c(--fix_rec_dmn)p FD(')i(but)i(another)h(p)s(ossibilit)m
-(y)h(is)f(to)h(use)f Fy(ncecat)e FD(follo)m(w)m(ed)150
-3328 y(b)m(y)d Fy(ncwa)p FD(:)390 3487 y Fy(ncecat)46
+e(`)p Fz(ncks)c(--fix_rec_dmn)p FE(')i(but)i(another)h(p)s(ossibilit)m
+(y)h(is)f(to)h(use)f Fz(ncecat)e FE(follo)m(w)m(ed)150
+3328 y(b)m(y)d Fz(ncwa)p FE(:)390 3487 y Fz(ncecat)46
 b(in.nc)g(out.nc)h(#)g(Convert)f(time)g(to)i(non-record)d(dimension)390
 3597 y(ncwa)i(-a)g(record)f(in.nc)g(out.nc)g(#)i(Remove)e(new)h
-(degenerate)e(record)h(dimension)150 3756 y FD(The)28
+(degenerate)e(record)h(dimension)150 3756 y FE(The)28
 b(second)h(step)g(remo)m(v)m(es)h(the)f(degenerate)h(record)e
 (dimension.)40 b(See)29 b(Section)g(4.8)h([ncp)s(dq)d(netCDF)150
 3866 y(P)m(erm)m(ute)49 b(Dimensions)f(Quic)m(kly],)54
-b(page)49 b(190)g(and)e(Section)i(4.7)g([nc)m(ks)g(netCDF)g(Kitc)m(hen)
-f(Sink],)150 3975 y(page)41 b(176)h(for)f(other)g(metho)s(ds)e(of)i(of)
+b(page)49 b(202)g(and)e(Section)i(4.7)g([nc)m(ks)g(netCDF)g(Kitc)m(hen)
+f(Sink],)150 3975 y(page)41 b(188)h(for)f(other)g(metho)s(ds)e(of)i(of)
 g(c)m(hanging)h(v)-5 b(ariable)41 b(dimensionalit)m(y)-8
 b(,)45 b(including)40 b(the)h(record)150 4085 y(dimension.)p
 eop end
-%%Page: 173 179
-TeXDict begin 173 178 bop 150 -116 a FD(Chapter)30 b(4:)h(Op)s(erator)f
-(Reference)h(Man)m(ual)1907 b(173)150 299 y FB(4.6)68
-b Fc(ncflint)42 b FB(netCDF)j(File)g(In)l(terp)t(olator)150
-458 y FD(SYNT)-8 b(AX)390 639 y Fy(ncflint)46 b([-3])g([-4])h([-6])g
-([-7])f([-A])h([-C])g([-c])390 749 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f
-(map])i([--cnk_min)e(sz])i([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390
-858 y([-D)i Fn(dbg)p Fy(])g([-d)f Fn(dim)p Fy(,[)p Fn(min)p
-Fy(][,[)p Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])390
-968 y([-F])h([--fix_rec_crd])c([-G)k Fn(gpe_dsc)p Fy(])f([-g)h
-Fn(grp)p Fy([,...)m(]])h([-h])e([--hdr_pad)f Fn(nbr)p
-Fy(])390 1077 y([-i)i Fn(var)p Fy(,)p Fn(val3)p Fy(])e([-L)i
-Fn(dfl_lvl)p Fy(])f([-l)h Fn(path)p Fy(])f([--no_tmp_fl])390
-1187 y([-O])h([-o)g Fn(file_3)p Fy(])e([-p)i Fn(path)p
-Fy(])g([-R])f([-r])h([--ram_all])390 1297 y([-t)g Fn(thr_nbr)p
-Fy(])e([--unn])h([-v)h Fn(var)p Fy([,...)n(]])g([-w)g
-Fn(wgt1)p Fy([,)p Fn(wgt2)p Fy(]])e([-X)h(...])h([-x])390
-1406 y Fn(file_1)f(file_2)g Fy([)p Fn(file_3)p Fy(])150
-1587 y FD(DESCRIPTION)275 1768 y Fy(ncflint)25 b FD(creates)j(an)f
+%%Page: 185 191
+TeXDict begin 185 190 bop 150 -116 a FE(Chapter)30 b(4:)h(Reference)g
+(Man)m(ual)2299 b(185)150 299 y FC(4.6)68 b Fb(ncflint)42
+b FC(netCDF)j(File)g(In)l(terp)t(olator)150 458 y FE(SYNT)-8
+b(AX)390 639 y Fz(ncflint)46 b([-3])g([-4])h([-6])g([-7])f([-A])h([-C])
+g([-c])390 749 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f(map])i([--cnk_min)e
+(sz])i([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390 858 y([-D)i
+Fo(dbg)p Fz(])g([-d)f Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])390 968 y([-F])h
+([--fix_rec_crd])c([-G)k Fo(gpe_dsc)p Fz(])f([-g)h Fo(grp)p
+Fz([,...)m(]])h([-h])e([--hdr_pad)f Fo(nbr)p Fz(])390
+1077 y([-i)i Fo(var)p Fz(,)p Fo(val3)p Fz(])e([-L)i Fo(dfl_lvl)p
+Fz(])f([-l)h Fo(path)p Fz(])f([--no_tmp_fl])390 1187
+y([-O])h([-o)g Fo(file_3)p Fz(])e([-p)i Fo(path)p Fz(])g([--ppc)f(...])
+g([-R])h([-r])g([--ram_all])390 1297 y([-t)g Fo(thr_nbr)p
+Fz(])e([--unn])h([-v)h Fo(var)p Fz([,...)n(]])g([-w)g
+Fo(wgt1)p Fz([,)p Fo(wgt2)p Fz(]])e([-X)h(...])h([-x])390
+1406 y Fo(file_1)f(file_2)g Fz([)p Fo(file_3)p Fz(])150
+1587 y FE(DESCRIPTION)275 1768 y Fz(ncflint)25 b FE(creates)j(an)f
 (output)f(\014le)i(that)f(is)g(a)h(linear)f(com)m(bination)h(of)g(the)f
 (input)f(\014les.)39 b(This)27 b(linear)150 1877 y(com)m(bination)37
 b(is)e(a)h(w)m(eigh)m(ted)h(a)m(v)m(erage,)i(a)d(normalized)g(w)m(eigh)
@@ -26040,143 +27231,143 @@ m(ted)h(a)m(v)m(erage,)i(or)d(an)f(in)m(terp)s(olation)i(of)150
 1987 y(the)27 b(input)f(\014les.)40 b(Co)s(ordinate)27
 b(v)-5 b(ariables)28 b(are)f(not)g(acted)i(up)s(on)c(in)i(an)m(y)g
 (case,)i(they)e(are)h(simply)e(copied)150 2096 y(from)k
-Fz(\014le)p 487 2096 28 4 v 40 w(1)p FD(.)275 2277 y(There)j(are)g(t)m
+FA(\014le)p 487 2096 28 4 v 40 w(1)p FE(.)275 2277 y(There)j(are)g(t)m
 (w)m(o)i(conceptually)g(distinct)f(metho)s(ds)f(of)h(using)f
-Fy(ncflint)p FD(.)48 b(The)33 b(\014rst)g(metho)s(d)g(is)g(to)150
+Fz(ncflint)p FE(.)48 b(The)33 b(\014rst)g(metho)s(d)g(is)g(to)150
 2387 y(sp)s(ecify)f(the)g(w)m(eigh)m(t)i(eac)m(h)g(input)d(\014le)h
 (con)m(tributes)h(to)g(the)g(output)e(\014le.)47 b(In)31
-b(this)i(metho)s(d,)f(the)g(v)-5 b(alue)150 2496 y Fz(v)g(al3)45
-b FD(of)37 b(a)h(v)-5 b(ariable)37 b(in)g(the)g(output)g(\014le)g
-Fz(\014le)p 1749 2496 V 40 w(3)45 b FD(is)37 b(determined)f(from)h(its)
-g(v)-5 b(alues)37 b Fz(v)-5 b(al1)46 b FD(and)36 b Fz(v)-5
-b(al2)45 b FD(in)150 2606 y(the)37 b(t)m(w)m(o)h(input)d(\014les)i
-(according)g(to)h Fv(v)s(al)r FD(3)e(=)f Fv(w)r(g)s(t)p
-FD(1)26 b FA(\002)e Fv(v)s(al)r FD(1)h(+)f Fv(w)r(g)s(t)p
-FD(2)i FA(\002)e Fv(v)s(al)r FD(2)37 b(.)60 b(Here)37
-b(at)g(least)h Fz(wgt1)p FD(,)150 2716 y(and,)g(optionally)-8
-b(,)39 b Fz(wgt2)p FD(,)g(are)e(sp)s(eci\014ed)f(on)g(the)h(command)f
-(line)h(with)f(the)g(`)p Fy(-w)p FD(')h(\(or)f(`)p Fy(--weight)p
-FD(')f(or)150 2825 y(`)p Fy(--wgt_var)p FD('\))40 b(switc)m(h.)75
-b(If)41 b(only)h Fz(wgt1)50 b FD(is)42 b(sp)s(eci\014ed)f(then)g
-Fz(wgt2)50 b FD(is)42 b(automatically)i(computed)e(as)150
-2935 y Fz(wgt2)33 b FD(=)25 b(1)11 b FA(\000)g Fz(wgt1)d
-FD(.)39 b(Note)27 b(that)f(w)m(eigh)m(ts)h(larger)f(than)31
+b(this)i(metho)s(d,)f(the)g(v)-5 b(alue)150 2496 y FA(v)g(al3)45
+b FE(of)37 b(a)h(v)-5 b(ariable)37 b(in)g(the)g(output)g(\014le)g
+FA(\014le)p 1749 2496 V 40 w(3)45 b FE(is)37 b(determined)f(from)h(its)
+g(v)-5 b(alues)37 b FA(v)-5 b(al1)46 b FE(and)36 b FA(v)-5
+b(al2)45 b FE(in)150 2606 y(the)37 b(t)m(w)m(o)h(input)d(\014les)i
+(according)g(to)h Fw(v)s(al)r FE(3)e(=)f Fw(w)r(g)s(t)p
+FE(1)26 b FB(\002)e Fw(v)s(al)r FE(1)h(+)f Fw(w)r(g)s(t)p
+FE(2)i FB(\002)e Fw(v)s(al)r FE(2)37 b(.)60 b(Here)37
+b(at)g(least)h FA(wgt1)p FE(,)150 2716 y(and,)g(optionally)-8
+b(,)39 b FA(wgt2)p FE(,)g(are)e(sp)s(eci\014ed)f(on)g(the)h(command)f
+(line)h(with)f(the)g(`)p Fz(-w)p FE(')h(\(or)f(`)p Fz(--weight)p
+FE(')f(or)150 2825 y(`)p Fz(--wgt_var)p FE('\))40 b(switc)m(h.)75
+b(If)41 b(only)h FA(wgt1)50 b FE(is)42 b(sp)s(eci\014ed)f(then)g
+FA(wgt2)50 b FE(is)42 b(automatically)i(computed)e(as)150
+2935 y FA(wgt2)33 b FE(=)25 b(1)11 b FB(\000)g FA(wgt1)d
+FE(.)39 b(Note)27 b(that)f(w)m(eigh)m(ts)h(larger)f(than)31
 b(1)26 b(are)g(allo)m(w)m(ed.)41 b(Th)m(us)24 b(it)i(is)g(p)s(ossible)f
-(to)h(sp)s(ecify)150 3044 y Fz(wgt1)42 b FD(=)34 b(2)i(and)f
-Fz(wgt2)42 b FD(=)34 b FA(\000)p FD(3.)57 b(One)35 b(can)h(use)f(this)h
+(to)h(sp)s(ecify)150 3044 y FA(wgt1)42 b FE(=)34 b(2)i(and)f
+FA(wgt2)42 b FE(=)34 b FB(\000)p FE(3.)57 b(One)35 b(can)h(use)f(this)h
 (functionalit)m(y)h(to)f(m)m(ultiply)g(all)g(the)g(v)-5
 b(alues)36 b(in)g(a)150 3154 y(giv)m(en)31 b(\014le)g(b)m(y)f(a)h
 (constan)m(t.)275 3335 y(The)c(second)i(metho)s(d)f(of)h(using)f
-Fy(ncflint)e FD(is)j(to)g(sp)s(ecify)f(the)g(in)m(terp)s(olation)i
-(option)f(with)h(`)p Fy(-i)p FD(')f(\(or)150 3444 y(with)i(the)g(`)p
-Fy(--ntp)p FD(')f(or)i(`)p Fy(--interpolate)p FD(')c(long)k(options\).)
+Fz(ncflint)e FE(is)j(to)g(sp)s(ecify)f(the)g(in)m(terp)s(olation)i
+(option)f(with)h(`)p Fz(-i)p FE(')f(\(or)150 3444 y(with)i(the)g(`)p
+Fz(--ntp)p FE(')f(or)i(`)p Fz(--interpolate)p FE(')c(long)k(options\).)
 43 b(This)31 b(is)g(the)g(in)m(v)m(erse)h(of)g(the)f(\014rst)f(metho)s
 (d)150 3554 y(in)j(the)g(follo)m(wing)i(sense:)47 b(When)33
 b(the)g(user)g(sp)s(eci\014es)g(the)g(w)m(eigh)m(ts)i(directly)-8
-b(,)35 b Fy(ncflint)d FD(has)h(no)g(w)m(ork)150 3663
+b(,)35 b Fz(ncflint)d FE(has)h(no)g(w)m(ork)150 3663
 y(to)e(do)g(b)s(esides)f(m)m(ultiplying)h(the)g(input)e(v)-5
 b(alues)31 b(b)m(y)g(their)f(resp)s(ectiv)m(e)i(w)m(eigh)m(ts)g(and)e
 (adding)g(together)150 3773 y(the)j(results)g(to)h(pro)s(duce)d(the)j
 (output)e(v)-5 b(alues.)49 b(It)33 b(mak)m(es)h(sense)f(to)h(use)e
 (this)h(when)f(the)h(w)m(eigh)m(ts)i(are)150 3883 y(kno)m(wn)30
-b Fo(a)j(priori)q FD(.)275 4063 y(Another)h(class)h(of)g(problems)f
-(has)g(the)h Fz(arriv)-5 b(al)35 b(v)-5 b(alue)40 b FD(\(i.e.,)d
-Fz(v)-5 b(al3)7 b FD(\))36 b(of)f(a)f(particular)h(v)-5
-b(ariable)35 b Fz(v)-5 b(ar)150 4173 y FD(kno)m(wn)31
-b Fo(a)i(priori)r FD(.)45 b(In)31 b(this)g(case,)j(the)e(implied)f(w)m
+b Fp(a)j(priori)q FE(.)275 4063 y(Another)h(class)h(of)g(problems)f
+(has)g(the)h FA(arriv)-5 b(al)35 b(v)-5 b(alue)40 b FE(\(i.e.,)d
+FA(v)-5 b(al3)7 b FE(\))36 b(of)f(a)f(particular)h(v)-5
+b(ariable)35 b FA(v)-5 b(ar)150 4173 y FE(kno)m(wn)31
+b Fp(a)i(priori)r FE(.)45 b(In)31 b(this)g(case,)j(the)e(implied)f(w)m
 (eigh)m(ts)i(can)g(alw)m(a)m(ys)g(b)s(e)e(inferred)g(b)m(y)g(examining)
-i(the)150 4283 y(v)-5 b(alues)36 b(of)g Fz(v)-5 b(ar)42
-b FD(in)36 b(the)f(input)g(\014les.)57 b(This)35 b(results)g(in)h(one)g
-(equation)h(in)e(t)m(w)m(o)i(unkno)m(wns,)f Fz(wgt1)44
-b FD(and)150 4392 y Fz(wgt2)7 b FD(:)52 b Fv(v)s(al)r
-FD(3)35 b(=)f Fv(w)r(g)s(t)p FD(1)25 b FA(\002)e Fv(v)s(al)r
-FD(1)i(+)e Fv(w)r(g)s(t)p FD(2)i FA(\002)f Fv(v)s(al)r
-FD(2)36 b(.)56 b(Unique)36 b(determination)g(of)g(the)f(w)m(eigh)m(ts)i
+i(the)150 4283 y(v)-5 b(alues)36 b(of)g FA(v)-5 b(ar)42
+b FE(in)36 b(the)f(input)g(\014les.)57 b(This)35 b(results)g(in)h(one)g
+(equation)h(in)e(t)m(w)m(o)i(unkno)m(wns,)f FA(wgt1)44
+b FE(and)150 4392 y FA(wgt2)7 b FE(:)52 b Fw(v)s(al)r
+FE(3)35 b(=)f Fw(w)r(g)s(t)p FE(1)25 b FB(\002)e Fw(v)s(al)r
+FE(1)i(+)e Fw(w)r(g)s(t)p FE(2)i FB(\002)f Fw(v)s(al)r
+FE(2)36 b(.)56 b(Unique)36 b(determination)g(of)g(the)f(w)m(eigh)m(ts)i
 (requires)150 4502 y(imp)s(osing)42 b(the)h(additional)g(constrain)m(t)
 h(of)e(normalization)i(on)f(the)f(w)m(eigh)m(ts:)66 b
-Fz(wgt1)37 b FD(+)28 b Fz(wgt2)53 b FD(=)45 b(1.)150
+FA(wgt1)37 b FE(+)28 b FA(wgt2)53 b FE(=)45 b(1.)150
 4611 y(Th)m(us,)31 b(to)h(use)f(the)h(in)m(terp)s(olation)h(option,)g
-(the)e(user)g(sp)s(eci\014es)g Fz(v)-5 b(ar)38 b FD(and)31
-b Fz(v)-5 b(al3)40 b FD(with)31 b(the)h(`)p Fy(-i)p FD(')f(option.)150
-4721 y Fy(ncflint)26 b FD(then)i(computes)g Fz(wgt1)37
-b FD(and)27 b Fz(wgt2)p FD(,)j(and)e(uses)f(these)i(w)m(eigh)m(ts)h(on)
+(the)e(user)g(sp)s(eci\014es)g FA(v)-5 b(ar)38 b FE(and)31
+b FA(v)-5 b(al3)40 b FE(with)31 b(the)h(`)p Fz(-i)p FE(')f(option.)150
+4721 y Fz(ncflint)26 b FE(then)i(computes)g FA(wgt1)37
+b FE(and)27 b FA(wgt2)p FE(,)j(and)e(uses)f(these)i(w)m(eigh)m(ts)h(on)
 e(all)h(v)-5 b(ariables)28 b(to)h(generate)150 4830 y(the)39
-b(output)g(\014le.)67 b(Although)39 b Fz(v)-5 b(ar)45
-b FD(ma)m(y)40 b(ha)m(v)m(e)g(an)m(y)g(n)m(um)m(b)s(er)d(of)j
+b(output)g(\014le.)67 b(Although)39 b FA(v)-5 b(ar)45
+b FE(ma)m(y)40 b(ha)m(v)m(e)g(an)m(y)g(n)m(um)m(b)s(er)d(of)j
 (dimensions)e(in)h(the)g(input)f(\014les,)j(it)150 4940
 y(m)m(ust)d(represen)m(t)f(a)i(single,)h(scalar)f(v)-5
 b(alue.)63 b(Th)m(us)37 b(an)m(y)h(dimensions)f(asso)s(ciated)i(with)f
-Fz(v)-5 b(ar)44 b FD(m)m(ust)38 b(b)s(e)150 5050 y Fz(degenerate)p
-FD(,)32 b(i.e.,)g(of)e(size)i(one.)275 5230 y(If)e(neither)i(`)p
-Fy(-i)p FD(')f(nor)g(`)p Fy(-w)p FD(')g(is)h(sp)s(eci\014ed)e(on)h(the)
-h(command)f(line,)h Fy(ncflint)e FD(defaults)h(to)h(w)m(eigh)m(ting)150
+FA(v)-5 b(ar)44 b FE(m)m(ust)38 b(b)s(e)150 5050 y FA(degenerate)p
+FE(,)32 b(i.e.,)g(of)e(size)i(one.)275 5230 y(If)e(neither)i(`)p
+Fz(-i)p FE(')f(nor)g(`)p Fz(-w)p FE(')g(is)h(sp)s(eci\014ed)e(on)h(the)
+h(command)f(line,)h Fz(ncflint)e FE(defaults)h(to)h(w)m(eigh)m(ting)150
 5340 y(eac)m(h)38 b(input)d(\014le)i(equally)g(in)g(the)f(output)g
 (\014le.)60 b(This)36 b(is)g(equiv)-5 b(alen)m(t)38 b(to)f(sp)s
-(ecifying)g(`)p Fy(-w)30 b(0.5)p FD(')36 b(or)g(`)p Fy(-w)p
+(ecifying)g(`)p Fz(-w)30 b(0.5)p FE(')36 b(or)g(`)p Fz(-w)p
 eop end
-%%Page: 174 180
-TeXDict begin 174 179 bop 150 -116 a FD(174)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fy(0.5,0.5)p FD('.)52
+%%Page: 186 192
+TeXDict begin 186 191 bop 150 -116 a FE(186)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Fz(0.5,0.5)p FE('.)52
 b(A)m(ttempting)37 b(to)e(sp)s(ecify)f(b)s(oth)g(`)p
-Fy(-i)p FD(')h(and)f(`)p Fy(-w)p FD(')h(metho)s(ds)f(in)h(the)f(same)i
-(command)e(is)h(an)150 408 y(error.)275 578 y Fy(ncflint)29
-b FD(do)s(es)i(not)h(in)m(terp)s(olate)h(v)-5 b(ariables)32
-b(of)g(t)m(yp)s(e)f Fy(NC_CHAR)f FD(and)h Fy(NC_STRING)p
-FD(.)41 b(This)31 b(b)s(eha)m(vior)150 687 y(is)f(hardco)s(ded.)275
-857 y(By)k(default)g Fy(ncflint)e FD(in)m(terp)s(olates)j(or)f(m)m
+Fz(-i)p FE(')h(and)f(`)p Fz(-w)p FE(')h(metho)s(ds)f(in)h(the)f(same)i
+(command)e(is)h(an)150 408 y(error.)275 578 y Fz(ncflint)29
+b FE(do)s(es)i(not)h(in)m(terp)s(olate)h(v)-5 b(ariables)32
+b(of)g(t)m(yp)s(e)f Fz(NC_CHAR)f FE(and)h Fz(NC_STRING)p
+FE(.)41 b(This)31 b(b)s(eha)m(vior)150 687 y(is)f(hardco)s(ded.)275
+857 y(By)k(default)g Fz(ncflint)e FE(in)m(terp)s(olates)j(or)f(m)m
 (ultiplies)h(record)f(co)s(ordinate)h(v)-5 b(ariables)34
 b(\(e.g.,)j(time)e(is)150 966 y(often)28 b(stored)f(as)h(a)f(record)g
 (co)s(ordinate\))i(not)e(other)h(co)s(ordinate)g(v)-5
 b(ariables)28 b(\(e.g.,)i(latitude)e(and)f(longi-)150
-1076 y(tude\).)40 b(This)29 b(is)g(b)s(ecause)g Fy(ncflint)e
-FD(is)i(often)h(used)e(to)i(time-in)m(terp)s(olate)h(b)s(et)m(w)m(een)f
+1076 y(tude\).)40 b(This)29 b(is)g(b)s(ecause)g Fz(ncflint)e
+FE(is)i(often)h(used)e(to)i(time-in)m(terp)s(olate)h(b)s(et)m(w)m(een)f
 (existing)g(\014les,)g(but)150 1186 y(is)38 b(rarely)f(used)g(to)h
 (spatially)h(in)m(terp)s(olate.)64 b(Sometimes)38 b(ho)m(w)m(ev)m(er,)j
 (users)c(wish)g(to)h(m)m(ultiply)g(en)m(tire)150 1295
 y(\014les)33 b(b)m(y)f(a)h(constan)m(t)h(that)g(do)s(es)e(not)h(m)m
 (ultiply)g(an)m(y)g(co)s(ordinate)g(v)-5 b(ariables.)49
-b(The)32 b(`)p Fy(--fix_rec_crd)p FD(')150 1405 y(switc)m(h)i(w)m(as)f
-(implemen)m(ted)h(for)f(this)g(purp)s(ose)e(in)i FC(NCO)g
-FD(v)m(ersion)h(4.2.6)h(\(Marc)m(h,)g(2013\).)51 b(It)33
-b(prev)m(en)m(ts)150 1514 y Fy(ncflint)27 b FD(from)i(m)m(ultiplying)h
+b(The)32 b(`)p Fz(--fix_rec_crd)p FE(')150 1405 y(switc)m(h)i(w)m(as)f
+(implemen)m(ted)h(for)f(this)g(purp)s(ose)e(in)i FD(NCO)g
+FE(v)m(ersion)h(4.2.6)h(\(Marc)m(h,)g(2013\).)51 b(It)33
+b(prev)m(en)m(ts)150 1514 y Fz(ncflint)27 b FE(from)i(m)m(ultiplying)h
 (or)g(in)m(terp)s(olating)g(an)m(y)g(co)s(ordinate)g(v)-5
 b(ariables,)31 b(including)e(record)g(co)s(or-)150 1624
 y(dinate)i(v)-5 b(ariables.)275 1793 y(Dep)s(ending)27
-b(on)h(y)m(our)h(in)m(tuition,)g Fy(ncflint)e FD(ma)m(y)i(treat)g
+b(on)h(y)m(our)h(in)m(tuition,)g Fz(ncflint)e FE(ma)m(y)i(treat)g
 (missing)f(v)-5 b(alues)29 b(unexp)s(ectedly)-8 b(.)40
 b(Consider)150 1903 y(a)30 b(p)s(oin)m(t)f(where)g(the)h(v)-5
-b(alue)30 b(in)f(one)h(input)f(\014le,)h(sa)m(y)g Fz(v)-5
-b(al1)p FD(,)31 b(equals)f(the)g(missing)f(v)-5 b(alue)30
-b Fz(mss)p 3309 1903 28 4 v 39 w(v)-5 b(al)p 3461 1903
-V 41 w(1)37 b FD(and,)150 2012 y(at)31 b(the)e(same)i(p)s(oin)m(t,)f
+b(alue)30 b(in)f(one)h(input)f(\014le,)h(sa)m(y)g FA(v)-5
+b(al1)p FE(,)31 b(equals)f(the)g(missing)f(v)-5 b(alue)30
+b FA(mss)p 3309 1903 28 4 v 39 w(v)-5 b(al)p 3461 1903
+V 41 w(1)37 b FE(and,)150 2012 y(at)31 b(the)e(same)i(p)s(oin)m(t,)f
 (the)g(corresp)s(onding)e(v)-5 b(alue)31 b(in)e(the)h(other)g(input)f
-(\014le)h Fz(v)-5 b(al2)38 b FD(is)30 b(not)g(misssing)f(\(i.e.,)150
-2122 y(do)s(es)h(not)h(equal)g Fz(mss)p 911 2122 V 39
-w(v)-5 b(al)p 1063 2122 V 41 w(2)7 b FD(\).)41 b(There)30
+(\014le)h FA(v)-5 b(al2)38 b FE(is)30 b(not)g(misssing)f(\(i.e.,)150
+2122 y(do)s(es)h(not)h(equal)g FA(mss)p 911 2122 V 39
+w(v)-5 b(al)p 1063 2122 V 41 w(2)7 b FE(\).)41 b(There)30
 b(are)h(three)g(plausible)f(answ)m(ers,)g(and)g(this)g(creates)i(am)m
 (biguit)m(y)-8 b(.)275 2291 y(Option)30 b(one)35 b(is)h(to)g(set)g
-Fz(v)-5 b(al3)42 b FD(=)34 b Fz(mss)p 1577 2291 V 43
-w(v)-5 b(al)p 1733 2291 V 44 w(1)8 b FD(.)56 b(The)35
-b(rationale)i(is)f(that)g Fy(ncflint)d FD(is,)38 b(at)e(heart,)h(an)150
+FA(v)-5 b(al3)42 b FE(=)34 b FA(mss)p 1577 2291 V 43
+w(v)-5 b(al)p 1733 2291 V 44 w(1)8 b FE(.)56 b(The)35
+b(rationale)i(is)f(that)g Fz(ncflint)d FE(is,)38 b(at)e(heart,)h(an)150
 2401 y(in)m(terp)s(olator)30 b(and)f(in)m(terp)s(olation)h(in)m(v)m
 (olving)h(a)e(missing)g(v)-5 b(alue)29 b(is)g(in)m(trinsically)i
-(unde\014ned.)38 b Fy(ncflint)150 2511 y FD(curren)m(tly)29
+(unde\014ned.)38 b Fz(ncflint)150 2511 y FE(curren)m(tly)29
 b(implemen)m(ts)g(this)g(b)s(eha)m(vior)g(since)g(it)h(is)f(the)g(most)
 g(conserv)-5 b(ativ)m(e)31 b(and)d(least)i(lik)m(ely)h(to)e(lead)150
 2620 y(to)i(misin)m(terpretation.)275 2790 y(Option)f(t)m(w)m(o)36
 b(is)e(to)i(output)e(the)h(w)m(eigh)m(ted)h(v)-5 b(alid)35
-b(data)g(p)s(oin)m(t,)h(i.e.,)h Fv(v)s(al)r FD(3)c(=)f
-Fv(w)r(g)s(t)p FD(2)25 b FA(\002)e Fv(v)s(al)r FD(2)35
+b(data)g(p)s(oin)m(t,)h(i.e.,)h Fw(v)s(al)r FE(3)c(=)f
+Fw(w)r(g)s(t)p FE(2)25 b FB(\002)e Fw(v)s(al)r FE(2)35
 b(.)53 b(The)150 2899 y(rationale)26 b(for)f(this)g(b)s(eha)m(vior)g
 (is)g(that)g(in)m(terp)s(olation)h(is)f(really)h(a)f(w)m(eigh)m(ted)h
 (a)m(v)m(erage)i(of)c(kno)m(wn)h(p)s(oin)m(ts,)150 3009
-y(so)31 b Fy(ncflint)d FD(should)h(w)m(eigh)m(t)j(the)f(v)-5
+y(so)31 b Fz(ncflint)d FE(should)h(w)m(eigh)m(t)j(the)f(v)-5
 b(alid)31 b(p)s(oin)m(t.)275 3178 y(Option)f(three)36
-b(is)h(to)g(return)f(the)g Fo(unweighte)-5 b(d)47 b FD(v)-5
-b(alid)37 b(p)s(oin)m(t,)h(i.e.,)i Fz(v)-5 b(al3)44 b
-FD(=)35 b Fz(v)-5 b(al2)8 b FD(.)59 b(This)36 b(b)s(eha)m(vior)150
+b(is)h(to)g(return)f(the)g Fp(unweighte)-5 b(d)47 b FE(v)-5
+b(alid)37 b(p)s(oin)m(t,)h(i.e.,)i FA(v)-5 b(al3)44 b
+FE(=)35 b FA(v)-5 b(al2)8 b FE(.)59 b(This)36 b(b)s(eha)m(vior)150
 3288 y(w)m(ould)d(app)s(eal)g(to)h(those)g(who)f(use)g
-Fy(ncflint)e FD(to)j(estimate)h(data)f(using)f(the)h(closest)g(a)m(v)-5
+Fz(ncflint)e FE(to)j(estimate)h(data)f(using)f(the)h(closest)g(a)m(v)-5
 b(ailable)36 b(data.)150 3397 y(When)28 b(a)h(p)s(oin)m(t)f(is)g(not)h
 (brac)m(k)m(eted)h(b)m(y)e(v)-5 b(alid)29 b(data)g(on)f(b)s(oth)f
 (sides,)i(it)g(is)f(b)s(etter)h(to)g(return)e(the)h(kno)m(wn)150
@@ -26188,282 +27379,282 @@ y(The)40 b(curren)m(t)h(implemen)m(tation)h(uses)e(the)h(\014rst)g
 (approac)m(hes)150 3895 y(as)31 b(options)f(if)h(there)f(is)h(enough)f
 (in)m(terest.)150 4065 y(EXAMPLES)275 4234 y(Although)j(it)h(has)f
 (other)h(uses,)g(the)g(in)m(terp)s(olation)h(feature)f(w)m(as)g
-(designed)f(to)h(in)m(terp)s(olate)h Fz(\014le)p 3663
-4234 V 40 w(3)150 4344 y FD(to)c(a)f(time)g(b)s(et)m(w)m(een)h
+(designed)f(to)h(in)m(terp)s(olate)h FA(\014le)p 3663
+4234 V 40 w(3)150 4344 y FE(to)c(a)f(time)g(b)s(et)m(w)m(een)h
 (existing)g(\014les.)40 b(Consider)29 b(input)g(\014les)h
-Fy(85.nc)e FD(and)h Fy(87.nc)g FD(con)m(taining)i(v)-5
+Fz(85.nc)e FE(and)h Fz(87.nc)g FE(con)m(taining)i(v)-5
 b(ariables)150 4453 y(describing)31 b(the)g(state)i(of)e(a)h(ph)m
-(ysical)f(system)h(at)g(times)f Fy(time)26 b FD(=)g(85)32
-b(and)e Fy(time)c FD(=)g(87.)44 b(Assume)31 b(eac)m(h)150
+(ysical)f(system)h(at)g(times)f Fz(time)26 b FE(=)g(85)32
+b(and)e Fz(time)c FE(=)g(87.)44 b(Assume)31 b(eac)m(h)150
 4563 y(\014le)36 b(con)m(tains)h(its)f(timestamp)g(in)f(the)h(scalar)h
-(v)-5 b(ariable)36 b Fy(time)p FD(.)55 b(Then,)36 b(to)h(linearly)f(in)
-m(terp)s(olate)h(to)g(a)150 4672 y(\014le)30 b Fy(86.nc)f
-FD(whic)m(h)i(describ)s(es)e(the)i(state)g(of)g(the)g(system)f(at)h
-(time)g(at)g Fy(time)f FD(=)g(86,)h(w)m(e)g(w)m(ould)f(use)390
-4842 y Fy(ncflint)46 b(-i)h(time,86)f(85.nc)g(87.nc)h(86.nc)275
-5011 y FD(Sa)m(y)39 b(y)m(ou)g(ha)m(v)m(e)h(observ)-5
+(v)-5 b(ariable)36 b Fz(time)p FE(.)55 b(Then,)36 b(to)h(linearly)f(in)
+m(terp)s(olate)h(to)g(a)150 4672 y(\014le)30 b Fz(86.nc)f
+FE(whic)m(h)i(describ)s(es)e(the)i(state)g(of)g(the)g(system)f(at)h
+(time)g(at)g Fz(time)f FE(=)g(86,)h(w)m(e)g(w)m(ould)f(use)390
+4842 y Fz(ncflint)46 b(-i)h(time,86)f(85.nc)g(87.nc)h(86.nc)275
+5011 y FE(Sa)m(y)39 b(y)m(ou)g(ha)m(v)m(e)h(observ)-5
 b(ational)40 b(data)f(co)m(v)m(ering)i(Jan)m(uary)d(and)g(April)h(1985)
-h(in)f(t)m(w)m(o)h(\014les)e(named)150 5121 y Fy(85_01.nc)29
-b FD(and)h Fy(85_04.nc)p FD(,)f(resp)s(ectiv)m(ely)-8
+h(in)f(t)m(w)m(o)h(\014les)e(named)150 5121 y Fz(85_01.nc)29
+b FE(and)h Fz(85_04.nc)p FE(,)f(resp)s(ectiv)m(ely)-8
 b(.)45 b(Then)30 b(y)m(ou)h(can)h(estimate)g(the)g(v)-5
 b(alues)31 b(for)g(F)-8 b(ebruary)31 b(and)150 5230 y(Marc)m(h)e(b)m(y)
 f(in)m(terp)s(olating)h(the)f(existing)h(data)g(as)f(follo)m(ws.)41
-b(Com)m(bine)28 b Fy(85_01.nc)e FD(and)h Fy(85_04.nc)f
-FD(in)i(a)150 5340 y(2:1)j(ratio)h(to)f(mak)m(e)g Fy(85_02.nc)p
-FD(:)p eop end
-%%Page: 175 181
-TeXDict begin 175 180 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(175)390
-299 y Fy(ncflint)46 b(-w)h(0.667)f(85_01.nc)g(85_04.nc)f(85_02.nc)390
-408 y(ncflint)h(-w)h(0.667,0.333)e(85_01.nc)g(85_04.nc)h(85_02.nc)275
-568 y FD(Multiply)30 b Fy(85.nc)f FD(b)m(y)h(3)h(and)f(b)m(y)g
-FA(\000)p FD(2)h(and)e(add)h(them)h(together)g(to)h(mak)m(e)f
-Fy(tst.nc)p FD(:)390 727 y Fy(ncflint)46 b(-w)h(3,-2)g(85.nc)f(85.nc)g
-(tst.nc)150 887 y FD(This)c(is)h(an)g(example)g(of)g(a)g(n)m(ull)g(op)s
-(eration,)k(so)c Fy(tst.nc)e FD(should)h(b)s(e)g(iden)m(tical)j
+b(Com)m(bine)28 b Fz(85_01.nc)e FE(and)h Fz(85_04.nc)f
+FE(in)i(a)150 5340 y(2:1)j(ratio)h(to)f(mak)m(e)g Fz(85_02.nc)p
+FE(:)p eop end
+%%Page: 187 193
+TeXDict begin 187 192 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(187)390 299 y Fz(ncflint)46
+b(-w)h(0.667)f(85_01.nc)g(85_04.nc)f(85_02.nc)390 408
+y(ncflint)h(-w)h(0.667,0.333)e(85_01.nc)g(85_04.nc)h(85_02.nc)275
+568 y FE(Multiply)30 b Fz(85.nc)f FE(b)m(y)h(3)h(and)f(b)m(y)g
+FB(\000)p FE(2)h(and)e(add)h(them)h(together)g(to)h(mak)m(e)f
+Fz(tst.nc)p FE(:)390 727 y Fz(ncflint)46 b(-w)h(3,-2)g(85.nc)f(85.nc)g
+(tst.nc)150 887 y FE(This)c(is)h(an)g(example)g(of)g(a)g(n)m(ull)g(op)s
+(eration,)k(so)c Fz(tst.nc)e FE(should)h(b)s(e)g(iden)m(tical)j
 (\(within)d(mac)m(hine)150 996 y(precision\))31 b(to)g
-Fy(85.nc)p FD(.)275 1156 y(Multiply)36 b(all)h(the)f(v)-5
+Fz(85.nc)p FE(.)275 1156 y(Multiply)36 b(all)h(the)f(v)-5
 b(ariables)37 b(except)g(the)f(co)s(ordinate)h(v)-5 b(ariables)36
-b(in)g(the)g(\014le)g Fy(emissions.nc)d FD(b)m(y)150
-1265 y(b)m(y)d(0.8)q(:)390 1425 y Fy(ncflint)46 b(--fix_rec_crd)e(-w)j
+b(in)g(the)g(\014le)g Fz(emissions.nc)d FE(b)m(y)150
+1265 y(b)m(y)d(0.8)q(:)390 1425 y Fz(ncflint)46 b(--fix_rec_crd)e(-w)j
 (0.8,0.0)f(emissions.nc)e(emissions.nc)h(scaled_emissions.nc)150
-1584 y FD(The)37 b(use)g(of)g(`)p Fy(--fix_rec_crd)p
-FD(')d(ensures,)39 b(e.g.,)h(that)e(the)g Fy(time)e FD(co)s(ordinate,)k
+1584 y FE(The)37 b(use)g(of)g(`)p Fz(--fix_rec_crd)p
+FE(')d(ensures,)39 b(e.g.,)h(that)e(the)g Fz(time)e FE(co)s(ordinate,)k
 (if)d(an)m(y)-8 b(,)40 b(is)e(not)f(scaled)150 1694 y(\(i.e.,)32
-b(m)m(ultiplied\).)275 1853 y(Add)38 b Fy(85.nc)f FD(to)j
-Fy(86.nc)d FD(to)j(obtain)f Fy(85p86.nc)p FD(,)g(then)g(subtract)g
-Fy(86.nc)e FD(from)h Fy(85.nc)g FD(to)h(obtain)150 1963
-y Fy(85m86.nc)390 2122 y(ncflint)46 b(-w)h(1,1)g(85.nc)f(86.nc)h
+b(m)m(ultiplied\).)275 1853 y(Add)38 b Fz(85.nc)f FE(to)j
+Fz(86.nc)d FE(to)j(obtain)f Fz(85p86.nc)p FE(,)g(then)g(subtract)g
+Fz(86.nc)e FE(from)h Fz(85.nc)g FE(to)h(obtain)150 1963
+y Fz(85m86.nc)390 2122 y(ncflint)46 b(-w)h(1,1)g(85.nc)f(86.nc)h
 (85p86.nc)390 2232 y(ncflint)f(-w)h(1,-1)g(85.nc)f(86.nc)g(85m86.nc)390
-2341 y(ncdiff)g(85.nc)g(86.nc)h(85m86.nc)150 2501 y FD(Th)m(us)37
-b Fy(ncflint)f FD(can)j(b)s(e)e(used)h(to)g(mimic)h(some)f
-Fy(ncbo)f FD(op)s(erations.)65 b(Ho)m(w)m(ev)m(er)40
+2341 y(ncdiff)g(85.nc)g(86.nc)h(85m86.nc)150 2501 y FE(Th)m(us)37
+b Fz(ncflint)f FE(can)j(b)s(e)e(used)h(to)g(mimic)h(some)f
+Fz(ncbo)f FE(op)s(erations.)65 b(Ho)m(w)m(ev)m(er)40
 b(this)e(is)g(not)h(a)f(go)s(o)s(d)150 2610 y(idea)28
-b(in)f(practice)i(b)s(ecause)f Fy(ncflint)e FD(do)s(es)h(not)h
+b(in)f(practice)i(b)s(ecause)f Fz(ncflint)e FE(do)s(es)h(not)h
 (broadcast)g(\(see)g(Section)h(4.3)f([ncb)s(o)g(netCDF)g(Binary)150
-2720 y(Op)s(erator],)f(page)f(162\))h(conforming)e(v)-5
+2720 y(Op)s(erator],)f(page)f(174\))h(conforming)e(v)-5
 b(ariables)27 b(during)d(arithmetic.)40 b(Th)m(us)25
 b(the)g(\014nal)g(t)m(w)m(o)i(commands)150 2829 y(w)m(ould)34
 b(pro)s(duce)f(iden)m(tical)j(results)f(except)g(that)g
-Fy(ncflint)d FD(w)m(ould)i(fail)h(if)g(an)m(y)f(v)-5
+Fz(ncflint)d FE(w)m(ould)i(fail)h(if)g(an)m(y)f(v)-5
 b(ariables)35 b(needed)f(to)150 2939 y(b)s(e)c(broadcast.)275
 3098 y(Rescale)e(the)g(dimensional)f(units)g(of)g(the)g(surface)g
-(pressure)f Fy(prs_sfc)f FD(from)i(P)m(ascals)i(to)f(hectopas-)150
-3208 y(cals)j(\(millibars\))390 3367 y Fy(ncflint)46
+(pressure)f Fz(prs_sfc)f FE(from)i(P)m(ascals)i(to)f(hectopas-)150
+3208 y(cals)j(\(millibars\))390 3367 y Fz(ncflint)46
 b(-C)h(-v)g(prs_sfc)f(-w)h(0.01,0.0)f(in.nc)g(in.nc)g(out.nc)390
 3477 y(ncatted)g(-a)h(units,prs_sfc,o,c,millib)o(ar)42
 b(out.nc)p eop end
-%%Page: 176 182
-TeXDict begin 176 181 bop 150 -116 a FD(176)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.7)68 b Fc(ncks)43
-b FB(netCDF)i(Kitc)l(hen)h(Sink)150 458 y FD(SYNT)-8
-b(AX)390 630 y Fy(ncks)47 b([-3])f([-4])h([-5])g([-6])f([-7])h([-A])f
-([-a])h([-b)g Fn(binary-)390 740 y(file)p Fy(])f([-C])h([-c])g([--cdl])
+%%Page: 188 194
+TeXDict begin 188 193 bop 150 -116 a FE(188)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.7)68 b Fb(ncks)43
+b FC(netCDF)i(Kitc)l(hen)h(Sink)150 458 y FE(SYNT)-8
+b(AX)390 630 y Fz(ncks)47 b([-3])f([-4])h([-5])g([-6])f([-7])h([-A])f
+([-a])h([-b)g Fo(binary-)390 740 y(file)p Fz(])f([-C])h([-c])g([--cdl])
 390 849 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f(map])i([--cnk_min)e(sz])i
 ([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390 959 y([-D)i
-Fn(dbg)p Fy(])g([-d)f Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])c([-F])k([--fix_rec_dmn)e
-Fn(dim)p Fy(])390 1068 y([-G)j Fn(gpe_dsc)p Fy(])e([-g)i
-Fn(grp)p Fy([,...)n(]])g([--grp_xtr_var_xcl])c([-H])k([-h])f([--hdn])g
-([--hdr_pad)f Fn(nbr)p Fy(])390 1178 y([-L)i Fn(dfl_lvl)p
-Fy(])e([-l)i Fn(path)p Fy(])g([-M])f([-m])h([--mk_rec_dmn)d
-Fn(dim)p Fy(])j([--md5_digest])390 1288 y([--no_blank])d([--no_tmp_fl])
-h([-O])h([-o)h Fn(output-file)p Fy(])e([-P])h([-p)h Fn(path)p
-Fy(])390 1397 y([-Q])g([-q])f([-R])h([-r])g([--rad])e([--ram_all])g
-([-s)i Fn(format)p Fy(])390 1507 y([-u])g([--unn])e([-V])i([-v)g
-Fn(var)p Fy([,...)n(]])g([-X)g(...])g([-x])f([--xml])390
-1616 y Fn(input-file)f Fy([[)p Fn(output-file)p Fy(]])150
-1788 y FD(DESCRIPTION)275 1960 y(The)e(nic)m(kname)i(\\kitc)m(hen)g
-(sink")f(is)h(a)f(catc)m(h-all)j(b)s(ecause)d Fy(ncks)f
-FD(com)m(bines)i(most)f(features)h(of)150 2070 y Fy(ncdump)22
-b FD(and)h Fy(nccopy)f FD(with)h(extra)i(features)e(to)i(extract,)i(h)m
+Fo(dbg)p Fz(])g([-d)f Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])c([-F])k([--fix_rec_dmn)e
+Fo(dim)p Fz(])390 1068 y([-G)j Fo(gpe_dsc)p Fz(])e([-g)i
+Fo(grp)p Fz([,...)n(]])g([--grp_xtr_var_xcl])c([-H])k([-h])f([--hdn])g
+([--hdr_pad)f Fo(nbr)p Fz(])390 1178 y([-L)i Fo(dfl_lvl)p
+Fz(])e([-l)i Fo(path)p Fz(])g([-M])f([-m])h([--mk_rec_dmn)d
+Fo(dim)p Fz(])j([--md5_digest])390 1288 y([--no_blank])d([--no_tmp_fl])
+h([-O])h([-o)h Fo(output-)390 1397 y(file)p Fz(])f([-P])h([-p)g
+Fo(path)p Fz(])f([--ppc)g(...])390 1507 y([-Q])h([-q])f([-R])h([-r])g
+([--rad])e([--ram_all])g([-s)i Fo(format)p Fz(])390 1616
+y([-u])g([--unn])e([-V])i([-v)g Fo(var)p Fz([,...)n(]])g([-X)g(...])g
+([-x])f([--xml])390 1726 y Fo(input-file)f Fz([[)p Fo(output-file)p
+Fz(]])150 1898 y FE(DESCRIPTION)275 2070 y(The)e(nic)m(kname)i(\\kitc)m
+(hen)g(sink")f(is)h(a)f(catc)m(h-all)j(b)s(ecause)d Fz(ncks)f
+FE(com)m(bines)i(most)f(features)h(of)150 2179 y Fz(ncdump)22
+b FE(and)h Fz(nccopy)f FE(with)h(extra)i(features)e(to)i(extract,)i(h)m
 (yp)s(erslab,)d(m)m(ulti-slab,)i(sub-set,)f(and)e(trans-)150
-2179 y(late)33 b(in)m(to)f(one)g(v)m(ersatile)i(utilit)m(y)-8
-b(.)46 b Fy(ncks)30 b FD(extracts)j(\(a)f(subset)f(of)h(the\))g(data)g
-(from)f Fz(input-\014le)37 b FD(and)31 b(and)150 2289
+2289 y(late)33 b(in)m(to)f(one)g(v)m(ersatile)i(utilit)m(y)-8
+b(.)46 b Fz(ncks)30 b FE(extracts)j(\(a)f(subset)f(of)h(the\))g(data)g
+(from)f FA(input-\014le)37 b FE(and)31 b(and)150 2399
 y(writes)d(\(or)g(pastes\))h(it)g(in)f(netCDF)g(format)h(to)f
-Fz(output-\014le)p FD(,)h(and)f(optionally)h(writes)f(it)h(in)e(\015at)
-i(binary)150 2399 y(format)i(to)g Fy(binary-file)p FD(,)c(and)j
-(optionally)i(prin)m(ts)e(it)h(to)g(screen.)275 2570
-y Fy(ncks)g FD(prin)m(ts)i(netCDF)h(input)e(data)i(in)f
-FC(ASCI)r(I)p FD(,)h FC(CDL)p FD(,)g(or)f FC(NcML)h FD(text)g(formats)f
-Fy(stdout)p FD(,)f(lik)m(e)j(\(an)150 2680 y(extended)k(v)m(ersion)h
-(of)7 b(\))40 b Fy(ncdump)p FD(.)65 b(By)40 b(default)f
-Fy(ncks)f FD(prin)m(ts)h(data)h(in)f(a)g(tabular)h(format)f(in)m
-(tended)150 2790 y(to)33 b(b)s(e)f(easy)i(to)f(searc)m(h)g(for)f(the)h
+FA(output-\014le)p FE(,)h(and)f(optionally)h(writes)f(it)h(in)e(\015at)
+i(binary)150 2508 y(format)i(to)g Fz(binary-file)p FE(,)c(and)j
+(optionally)i(prin)m(ts)e(it)h(to)g(screen.)275 2680
+y Fz(ncks)g FE(prin)m(ts)i(netCDF)h(input)e(data)i(in)f
+FD(ASCI)r(I)p FE(,)h FD(CDL)p FE(,)g(or)f FD(NcML)h FE(text)g(formats)f
+Fz(stdout)p FE(,)f(lik)m(e)j(\(an)150 2790 y(extended)k(v)m(ersion)h
+(of)7 b(\))40 b Fz(ncdump)p FE(.)65 b(By)40 b(default)f
+Fz(ncks)f FE(prin)m(ts)h(data)h(in)f(a)g(tabular)h(format)f(in)m
+(tended)150 2899 y(to)33 b(b)s(e)f(easy)i(to)f(searc)m(h)g(for)f(the)h
 (data)h(y)m(ou)e(w)m(an)m(t,)j(one)e(datum)f(p)s(er)f(screen)i(line,)h
-(with)e(all)i(dimension)150 2899 y(subscripts)25 b(and)g(co)s(ordinate)
+(with)e(all)i(dimension)150 3009 y(subscripts)25 b(and)g(co)s(ordinate)
 i(v)-5 b(alues)27 b(\(if)f(an)m(y\))h(preceding)f(the)h(datum.)38
-b(Option)26 b(`)p Fy(-s)p FD(')g(\(or)h(long)g(options)150
-3009 y(`)p Fy(--sng_fmt)p FD(')g(and)i(`)p Fy(--string)p
-FD('\))f(p)s(ermits)h(the)h(user)e(to)j(format)e(data)h(using)f(C-st)m
-(yle)i(format)f(strings,)150 3118 y(while)k(option)g(`)p
-Fy(--cdl)p FD(')f(outputs)g FC(CDL)h FD(and)f(option)h(`)p
-Fy(--xml)p FD(')f(outputs)h FC(NcML)p FD(.)51 b Fy(ncks)32
-b FD(exp)s(oses)i(man)m(y)150 3228 y(\015exible)d(con)m(trols)g(o)m(v)m
-(er)h(prin)m(ted)e(output,)g(including)g FC(CDL)h FD(and)e
-FC(NcML)p FD(.)275 3400 y(Options)i(`)p Fy(-5)p FD(',)h(`)p
-Fy(-a)p FD(',)g(`)p Fy(--cdl)p FD(',)f(`)p Fy(-F)p FD(')h(,)g(`)p
-Fy(-H)p FD(',)g(`)p Fy(--hdn)p FD(',)g(`)p Fy(-M)p FD(',)g(`)p
-Fy(-m)p FD(',)g(`)p Fy(-P)p FD(',)g(`)p Fy(-Q)p FD(',)g(`)p
-Fy(-q)p FD(',)g(`)p Fy(-s)p FD(',)h(`)p Fy(-u)p FD(',)f(`)p
-Fy(-V)p FD(',)150 3509 y(and)h(`)p Fy(--xml)p FD(')g(\(and)g(their)h
+b(Option)26 b(`)p Fz(-s)p FE(')g(\(or)h(long)g(options)150
+3118 y(`)p Fz(--sng_fmt)p FE(')g(and)i(`)p Fz(--string)p
+FE('\))f(p)s(ermits)h(the)h(user)e(to)j(format)e(data)h(using)f(C-st)m
+(yle)i(format)f(strings,)150 3228 y(while)k(option)g(`)p
+Fz(--cdl)p FE(')f(outputs)g FD(CDL)h FE(and)f(option)h(`)p
+Fz(--xml)p FE(')f(outputs)h FD(NcML)p FE(.)51 b Fz(ncks)32
+b FE(exp)s(oses)i(man)m(y)150 3337 y(\015exible)d(con)m(trols)g(o)m(v)m
+(er)h(prin)m(ted)e(output,)g(including)g FD(CDL)h FE(and)e
+FD(NcML)p FE(.)275 3509 y(Options)i(`)p Fz(-5)p FE(',)h(`)p
+Fz(-a)p FE(',)g(`)p Fz(--cdl)p FE(',)f(`)p Fz(-F)p FE(')h(,)g(`)p
+Fz(-H)p FE(',)g(`)p Fz(--hdn)p FE(',)g(`)p Fz(-M)p FE(',)g(`)p
+Fz(-m)p FE(',)g(`)p Fz(-P)p FE(',)g(`)p Fz(-Q)p FE(',)g(`)p
+Fz(-q)p FE(',)g(`)p Fz(-s)p FE(',)h(`)p Fz(-u)p FE(',)f(`)p
+Fz(-V)p FE(',)150 3619 y(and)h(`)p Fz(--xml)p FE(')g(\(and)g(their)h
 (long)g(option)g(coun)m(terparts\))g(con)m(trol)h(the)f(formatted)g
-(app)s(earance)g(of)g(the)150 3619 y(data.)275 3791 y
-Fy(ncks)39 b FD(extracts)j(\(and)e(optionally)i(creates)f(a)g(new)f
+(app)s(earance)g(of)g(the)150 3729 y(data.)275 3900 y
+Fz(ncks)39 b FE(extracts)j(\(and)e(optionally)i(creates)f(a)g(new)f
 (netCDF)h(\014le)g(comprised)f(of)7 b(\))41 b(only)f(selected)150
-3900 y(v)-5 b(ariables)35 b(from)e(the)i(input)e(\014le)h(\(similar)h
-(to)g(the)f(old)g Fy(ncextr)e FD(sp)s(eci\014cation\).)53
-b(Only)34 b(v)-5 b(ariables)35 b(and)150 4010 y(co)s(ordinates)23
+4010 y(v)-5 b(ariables)35 b(from)e(the)i(input)e(\014le)h(\(similar)h
+(to)g(the)f(old)g Fz(ncextr)e FE(sp)s(eci\014cation\).)53
+b(Only)34 b(v)-5 b(ariables)35 b(and)150 4120 y(co)s(ordinates)23
 b(ma)m(y)f(b)s(e)g(sp)s(eci\014cally)g(included)g(or)g(excluded|all)h
-(global)g(attributes)f(and)g(an)m(y)g(attribute)150 4120
+(global)g(attributes)f(and)g(an)m(y)g(attribute)150 4229
 y(asso)s(ciated)33 b(with)f(an)g(extracted)i(v)-5 b(ariable)32
 b(are)h(copied)f(to)h(the)f(screen)g(and/or)g(output)g(netCDF)h
-(\014le.)150 4229 y(Options)f(`)p Fy(-c)p FD(',)g(`)p
-Fy(-C)p FD(',)h(`)p Fy(-v)p FD(',)g(and)e(`)p Fy(-x)p
-FD(')h(\(and)g(their)g(long)h(option)f(synon)m(yms\))g(con)m(trol)h
-(whic)m(h)f(v)-5 b(ariables)150 4339 y(are)31 b(extracted.)275
-4511 y Fy(ncks)44 b FD(extracts)i(h)m(yp)s(erslabs)f(from)g(the)g(sp)s
-(eci\014ed)g(v)-5 b(ariables)46 b(\()p Fy(ncks)e FD(implemen)m(ts)i
-(the)g(original)150 4620 y Fy(nccut)37 b FD(sp)s(eci\014cation\).)67
-b(Option)39 b(`)p Fy(-d)p FD(')f(con)m(trols)i(the)f(h)m(yp)s(erslab)f
-(sp)s(eci\014cation.)66 b(Input)38 b(dimensions)150 4730
+(\014le.)150 4339 y(Options)f(`)p Fz(-c)p FE(',)g(`)p
+Fz(-C)p FE(',)h(`)p Fz(-v)p FE(',)g(and)e(`)p Fz(-x)p
+FE(')h(\(and)g(their)g(long)h(option)f(synon)m(yms\))g(con)m(trol)h
+(whic)m(h)f(v)-5 b(ariables)150 4448 y(are)31 b(extracted.)275
+4620 y Fz(ncks)44 b FE(extracts)i(h)m(yp)s(erslabs)f(from)g(the)g(sp)s
+(eci\014ed)g(v)-5 b(ariables)46 b(\()p Fz(ncks)e FE(implemen)m(ts)i
+(the)g(original)150 4730 y Fz(nccut)37 b FE(sp)s(eci\014cation\).)67
+b(Option)39 b(`)p Fz(-d)p FE(')f(con)m(trols)i(the)f(h)m(yp)s(erslab)f
+(sp)s(eci\014cation.)66 b(Input)38 b(dimensions)150 4839
 y(that)27 b(are)f(not)h(asso)s(ciated)g(with)f(an)m(y)g(output)g(v)-5
 b(ariable)27 b(do)f(not)g(app)s(ear)g(in)g(the)g(output)g(netCDF.)h
-(This)150 4839 y(feature)k(remo)m(v)m(es)h(sup)s(er\015uous)27
-b(dimensions)j(from)g(netCDF)h(\014les.)275 5011 y Fy(ncks)k
-FD(will)j(app)s(end)d(v)-5 b(ariables)38 b(and)f(attributes)g(from)g
-(the)g Fz(input-\014le)42 b FD(to)c Fz(output-\014le)k
-FD(if)37 b Fz(output-)150 5121 y(\014le)i FD(is)33 b(a)h(pre-existing)g
+(This)150 4949 y(feature)k(remo)m(v)m(es)h(sup)s(er\015uous)27
+b(dimensions)j(from)g(netCDF)h(\014les.)275 5121 y Fz(ncks)k
+FE(will)j(app)s(end)d(v)-5 b(ariables)38 b(and)f(attributes)g(from)g
+(the)g FA(input-\014le)42 b FE(to)c FA(output-\014le)k
+FE(if)37 b FA(output-)150 5230 y(\014le)i FE(is)33 b(a)h(pre-existing)g
 (netCDF)g(\014le)g(whose)f(relev)-5 b(an)m(t)35 b(dimensions)d(conform)
-i(to)g(dimension)f(sizes)h(of)150 5230 y Fz(input-\014le)p
-FD(.)59 b(The)37 b(app)s(end)e(features)i(of)g Fy(ncks)f
-FD(are)h(in)m(tended)f(to)i(pro)m(vide)f(a)g(rudimen)m(tary)f(means)h
-(of)150 5340 y(adding)28 b(data)h(from)f(one)h(netCDF)g(\014le)g(to)g
-(another,)g(conforming,)h(netCDF)f(\014le.)40 b(If)28
-b(naming)g(con\015icts)p eop end
-%%Page: 177 183
-TeXDict begin 177 182 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(177)150
-299 y(exist)32 b(b)s(et)m(w)m(een)g(the)g(t)m(w)m(o)g(\014les,)g(data)g
-(in)f Fz(output-\014le)37 b FD(is)31 b(usually)g(o)m(v)m(erwritten)i(b)
-m(y)e(the)h(corresp)s(onding)150 408 y(data)40 b(from)e
-Fz(input-\014le)p FD(.)66 b(Th)m(us,)41 b(when)d(app)s(ending,)i(the)f
-(user)f(should)g(bac)m(kup)h Fz(output-\014le)44 b FD(in)39
-b(case)150 518 y(v)-5 b(aluable)31 b(data)g(are)g(inadv)m(ertan)m(tly)h
-(o)m(v)m(erwritten.)275 686 y(If)h Fz(output-\014le)38
-b FD(exists,)d(the)f(user)f(will)h(b)s(e)f(queried)g(whether)g(to)h
-Fz(o)m(v)m(erwrite)p FD(,)i Fz(app)s(end)p FD(,)d(or)g
-Fz(exit)k FD(the)150 795 y Fy(ncks)f FD(call)j(completely)-8
-b(.)63 b(Cho)s(osing)37 b Fz(o)m(v)m(erwrite)44 b FD(destro)m(ys)38
-b(the)g(existing)g Fz(output-\014le)k FD(and)37 b(create)i(an)150
-905 y(en)m(tirely)33 b(new)e(one)h(from)f(the)h(output)f(of)h(the)g
-Fy(ncks)f FD(call.)46 b(App)s(end)29 b(has)j(di\013ering)f(e\013ects)i
-(dep)s(ending)150 1014 y(on)28 b(the)h(uniqueness)e(of)i(the)f(v)-5
-b(ariables)29 b(and)f(attributes)h(output)f(b)m(y)g Fy(ncks)p
-FD(:)39 b(If)28 b(a)h(v)-5 b(ariable)29 b(or)f(attribute)150
-1124 y(extracted)d(from)d Fz(input-\014le)28 b FD(do)s(es)23
+i(to)g(dimension)f(sizes)h(of)150 5340 y FA(input-\014le)p
+FE(.)59 b(The)37 b(app)s(end)e(features)i(of)g Fz(ncks)f
+FE(are)h(in)m(tended)f(to)i(pro)m(vide)f(a)g(rudimen)m(tary)f(means)h
+(of)p eop end
+%%Page: 189 195
+TeXDict begin 189 194 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(189)150 299 y(adding)28
+b(data)h(from)f(one)h(netCDF)g(\014le)g(to)g(another,)g(conforming,)h
+(netCDF)f(\014le.)40 b(If)28 b(naming)g(con\015icts)150
+408 y(exist)k(b)s(et)m(w)m(een)g(the)g(t)m(w)m(o)g(\014les,)g(data)g
+(in)f FA(output-\014le)37 b FE(is)31 b(usually)g(o)m(v)m(erwritten)i(b)
+m(y)e(the)h(corresp)s(onding)150 518 y(data)40 b(from)e
+FA(input-\014le)p FE(.)66 b(Th)m(us,)41 b(when)d(app)s(ending,)i(the)f
+(user)f(should)g(bac)m(kup)h FA(output-\014le)44 b FE(in)39
+b(case)150 628 y(v)-5 b(aluable)31 b(data)g(are)g(inadv)m(ertan)m(tly)h
+(o)m(v)m(erwritten.)275 787 y(If)h FA(output-\014le)38
+b FE(exists,)d(the)f(user)f(will)h(b)s(e)f(queried)g(whether)g(to)h
+FA(o)m(v)m(erwrite)p FE(,)i FA(app)s(end)p FE(,)d(or)g
+FA(exit)k FE(the)150 897 y Fz(ncks)f FE(call)j(completely)-8
+b(.)63 b(Cho)s(osing)37 b FA(o)m(v)m(erwrite)44 b FE(destro)m(ys)38
+b(the)g(existing)g FA(output-\014le)k FE(and)37 b(create)i(an)150
+1006 y(en)m(tirely)33 b(new)e(one)h(from)f(the)h(output)f(of)h(the)g
+Fz(ncks)f FE(call.)46 b(App)s(end)29 b(has)j(di\013ering)f(e\013ects)i
+(dep)s(ending)150 1116 y(on)28 b(the)h(uniqueness)e(of)i(the)f(v)-5
+b(ariables)29 b(and)f(attributes)h(output)f(b)m(y)g Fz(ncks)p
+FE(:)39 b(If)28 b(a)h(v)-5 b(ariable)29 b(or)f(attribute)150
+1225 y(extracted)d(from)d FA(input-\014le)28 b FE(do)s(es)23
 b(not)g(ha)m(v)m(e)h(a)g(name)f(con\015ict)h(with)f(the)g(mem)m(b)s
-(ers)g(of)g Fz(output-\014le)28 b FD(then)150 1234 y(it)34
-b(will)f(b)s(e)g(added)g(to)h Fz(output-\014le)k FD(without)33
+(ers)g(of)g FA(output-\014le)28 b FE(then)150 1335 y(it)34
+b(will)f(b)s(e)g(added)g(to)h FA(output-\014le)k FE(without)33
 b(o)m(v)m(erwriting)i(an)m(y)f(of)f(the)g(existing)i(con)m(ten)m(ts)g
-(of)e Fz(output-)150 1343 y(\014le)p FD(.)48 b(In)32
+(of)e FA(output-)150 1445 y(\014le)p FE(.)48 b(In)32
 b(this)h(case)h(the)f(relev)-5 b(an)m(t)34 b(dimensions)e(m)m(ust)h
 (agree)h(\(conform\))f(b)s(et)m(w)m(een)h(the)f(t)m(w)m(o)h(\014les;)g
-(new)150 1453 y(dimensions)h(are)h(created)h(in)f Fz(output-\014le)41
-b FD(as)36 b(required.)57 b(When)35 b(a)i(name)e(con\015ict)i(o)s
-(ccurs,)g(a)g(global)150 1562 y(attribute)30 b(from)f
-Fz(input-\014le)34 b FD(will)c(o)m(v)m(erwrite)h(the)f(corresp)s
-(onding)f(global)h(attribute)h(from)e Fz(output-\014le)p
-FD(.)150 1672 y(If)j(the)h(name)g(con\015ict)g(o)s(ccurs)f(for)h(a)g
+(new)150 1554 y(dimensions)h(are)h(created)h(in)f FA(output-\014le)41
+b FE(as)36 b(required.)57 b(When)35 b(a)i(name)e(con\015ict)i(o)s
+(ccurs,)g(a)g(global)150 1664 y(attribute)30 b(from)f
+FA(input-\014le)34 b FE(will)c(o)m(v)m(erwrite)h(the)f(corresp)s
+(onding)f(global)h(attribute)h(from)e FA(output-\014le)p
+FE(.)150 1773 y(If)j(the)h(name)g(con\015ict)g(o)s(ccurs)f(for)h(a)g
 (non-record)f(v)-5 b(ariable,)34 b(then)e(the)h(dimensions)f(and)g(t)m
-(yp)s(e)h(of)g(the)150 1782 y(v)-5 b(ariable)28 b(\(and)f(of)g(its)h
+(yp)s(e)h(of)g(the)150 1883 y(v)-5 b(ariable)28 b(\(and)f(of)g(its)h
 (co)s(ordinate)g(dimensions,)f(if)g(an)m(y\))h(m)m(ust)f(agree)h
 (\(conform\))g(in)f(b)s(oth)f(\014les.)40 b(Then)150
-1891 y(the)27 b(v)-5 b(ariable)28 b(v)-5 b(alues)28 b(\(and)e(an)m(y)i
+1993 y(the)27 b(v)-5 b(ariable)28 b(v)-5 b(alues)28 b(\(and)e(an)m(y)i
 (co)s(ordinate)g(dimension)e(v)-5 b(alues\))28 b(from)f
-Fz(input-\014le)32 b FD(will)27 b(o)m(v)m(erwrite)i(the)150
-2001 y(corresp)s(onding)g(v)-5 b(ariable)32 b(v)-5 b(alues)30
+FA(input-\014le)32 b FE(will)27 b(o)m(v)m(erwrite)i(the)150
+2102 y(corresp)s(onding)g(v)-5 b(ariable)32 b(v)-5 b(alues)30
 b(\(and)g(co)s(ordinate)i(dimension)d(v)-5 b(alues,)31
-b(if)g(an)m(y\))g(in)f Fz(output-\014le)3547 1968 y Ft(1)3584
-2001 y FD(.)275 2168 y(Since)21 b(there)h(can)g(only)g(b)s(e)f(one)g
+b(if)g(an)m(y\))g(in)f FA(output-\014le)3547 2069 y Fu(1)3584
+2102 y FE(.)275 2262 y(Since)21 b(there)h(can)g(only)g(b)s(e)f(one)g
 (record)h(dimension)f(in)g(a)h(\014le,)i(the)e(record)f(dimension)g(m)m
-(ust)h(ha)m(v)m(e)h(the)150 2278 y(same)h(name)g(\(though)f(not)h
+(ust)h(ha)m(v)m(e)h(the)150 2371 y(same)h(name)g(\(though)f(not)h
 (necessarily)h(the)e(same)i(size\))f(in)g(b)s(oth)e(\014les)i(if)g(a)g
-(record)f(dimension)g(v)-5 b(ariable)150 2387 y(is)33
+(record)f(dimension)g(v)-5 b(ariable)150 2481 y(is)33
 b(to)i(b)s(e)d(app)s(ended.)49 b(If)32 b(the)i(record)f(dimensions)g
 (are)h(of)f(di\013ering)h(sizes,)h(the)f(record)f(dimension)g(of)150
-2497 y Fz(output-\014le)41 b FD(will)36 b(b)s(ecome)g(the)f(greater)i
+2590 y FA(output-\014le)41 b FE(will)36 b(b)s(ecome)g(the)f(greater)i
 (of)f(the)g(t)m(w)m(o)h(record)e(dimension)g(sizes,)j(the)e(record)f(v)
--5 b(ariable)150 2607 y(from)33 b Fz(input-\014le)38
-b FD(will)c(o)m(v)m(erwrite)h(an)m(y)f(coun)m(terpart)g(in)f
-Fz(output-\014le)38 b FD(and)33 b(\014ll)h(v)-5 b(alues)33
-b(will)h(b)s(e)f(written)150 2716 y(to)d(an)m(y)g(gaps)g(left)g(in)g
+-5 b(ariable)150 2700 y(from)33 b FA(input-\014le)38
+b FE(will)c(o)m(v)m(erwrite)h(an)m(y)f(coun)m(terpart)g(in)f
+FA(output-\014le)38 b FE(and)33 b(\014ll)h(v)-5 b(alues)33
+b(will)h(b)s(e)f(written)150 2809 y(to)d(an)m(y)g(gaps)g(left)g(in)g
 (the)f(rest)h(of)g(the)g(record)f(v)-5 b(ariables)30
 b(\(I)g(think\).)40 b(In)29 b(all)i(cases)f(v)-5 b(ariable)30
-b(attributes)150 2826 y(in)f Fz(output-\014le)34 b FD(are)29
+b(attributes)150 2919 y(in)f FA(output-\014le)34 b FE(are)29
 b(sup)s(erseded)e(b)m(y)i(attributes)h(of)f(the)g(same)g(name)g(from)g
-Fz(input-\014le)p FD(,)g(and)f(left)i(alone)150 2935
-y(if)g(there)h(is)f(no)h(name)f(con\015ict.)275 3103
+FA(input-\014le)p FE(,)g(and)f(left)i(alone)150 3029
+y(if)g(there)h(is)f(no)h(name)f(con\015ict.)275 3188
 y(Some)j(users)f(ma)m(y)i(wish)f(to)h(a)m(v)m(oid)h(in)m(teractiv)m(e)h
-Fy(ncks)c FD(queries)i(ab)s(out)f(whether)f(to)i(o)m(v)m(erwrite)h(ex-)
-150 3213 y(isting)j(data.)62 b(F)-8 b(or)38 b(example,)i(batc)m(h)e
-(scripts)f(will)h(fail)g(if)f Fy(ncks)f FD(do)s(es)h(not)h(receiv)m(e)h
-(resp)s(onses)d(to)j(its)150 3322 y(queries.)h(Options)29
-b(`)p Fy(-O)p FD(')g(and)f(`)p Fy(-A)p FD(')h(are)g(a)m(v)-5
+Fz(ncks)c FE(queries)i(ab)s(out)f(whether)f(to)i(o)m(v)m(erwrite)h(ex-)
+150 3298 y(isting)j(data.)62 b(F)-8 b(or)38 b(example,)i(batc)m(h)e
+(scripts)f(will)h(fail)g(if)f Fz(ncks)f FE(do)s(es)h(not)h(receiv)m(e)h
+(resp)s(onses)d(to)j(its)150 3407 y(queries.)h(Options)29
+b(`)p Fz(-O)p FE(')g(and)f(`)p Fz(-A)p FE(')h(are)g(a)m(v)-5
 b(ailable)32 b(to)e(force)f(o)m(v)m(erwriting)i(existing)f(\014les)f
-(and)f(v)-5 b(ariables,)150 3432 y(resp)s(ectiv)m(ely)d(.)150
-3647 y Fu(Options)42 b(sp)s(eci\014c)f(to)g Fl(ncks)150
-3794 y FD(The)36 b(follo)m(wing)h(summarizes)f(features)g(unique)f(to)i
-Fy(ncks)p FD(.)56 b(F)-8 b(eatures)38 b(common)e(to)h(man)m(y)f(op)s
-(erators)150 3904 y(are)31 b(describ)s(ed)e(in)h(Chapter)g(3)h([Common)
-f(features],)h(page)g(25.)150 4105 y(`)p Fy(-5)p FD(')334
+(and)f(v)-5 b(ariables,)150 3517 y(resp)s(ectiv)m(ely)d(.)150
+3715 y Fv(Options)42 b(sp)s(eci\014c)f(to)g Fm(ncks)150
+3862 y FE(The)36 b(follo)m(wing)h(summarizes)f(features)g(unique)f(to)i
+Fz(ncks)p FE(.)56 b(F)-8 b(eatures)38 b(common)e(to)h(man)m(y)f(op)s
+(erators)150 3972 y(are)31 b(describ)s(ed)e(in)h(Chapter)g(3)h([Shared)
+e(features],)i(page)g(25.)150 4156 y(`)p Fz(-5)p FE(')334
 b(Prin)m(t)40 b(data)g(to)h(screen)f(alphab)s(etically)h(b)m(y)f
 (group,)i(and)d(alphab)s(etically)i(b)m(y)f(v)-5 b(ariable)630
-4214 y(within)25 b(eac)m(h)i(group.)39 b(This)25 b(ordering)g(here)h
-(is)f(used)g(b)m(y)h(default)g(in)f FC(CDL)p FD(-mo)s(de)h(prin)m
-(ting,)630 4324 y(and)39 b(ma)m(y)h(b)s(e)f(selected)h(for)g
-(traditional)g(mo)s(de)f(prin)m(ting)h(with)f(`)p Fy(-5)p
-FD(')g(\(The)g(switc)m(h)h(for)630 4433 y(in)m(v)m(o)s(cation)32
+4265 y(within)25 b(eac)m(h)i(group.)39 b(This)25 b(ordering)g(here)h
+(is)f(used)g(b)m(y)h(default)g(in)f FD(CDL)p FE(-mo)s(de)h(prin)m
+(ting,)630 4375 y(and)39 b(ma)m(y)h(b)s(e)f(selected)h(for)g
+(traditional)g(mo)s(de)f(prin)m(ting)h(with)f(`)p Fz(-5)p
+FE(')g(\(The)g(switc)m(h)h(for)630 4485 y(in)m(v)m(o)s(cation)32
 b(ma)m(y)f(c)m(hange)h(to)f(something)g(more)f(descriptiv)m(e)i(in)e
-(the)g(future\).)150 4609 y(`)p Fy(-a)p FD(')334 b(Do)33
+(the)g(future\).)150 4643 y(`)p Fz(-a)p FE(')334 b(Do)33
 b(not)f(alphab)s(etize)h(extracted)g(\014elds.)45 b(By)32
 b(default,)h(the)f(sp)s(eci\014ed)g(output)f(v)-5 b(ariables)630
-4719 y(are)38 b(extracted,)i(prin)m(ted,)f(and)d(written)i(to)f(disk)g
+4753 y(are)38 b(extracted,)i(prin)m(ted,)f(and)d(written)i(to)f(disk)g
 (in)g(alphab)s(etical)h(order.)61 b(This)36 b(tends)630
-4828 y(to)h(mak)m(e)f(long)h(output)e(lists)h(easier)h(to)g(searc)m(h)f
+4863 y(to)h(mak)m(e)f(long)h(output)e(lists)h(easier)h(to)g(searc)m(h)f
 (for)g(particular)g(v)-5 b(ariables.)57 b(Sp)s(ecifying)630
-4938 y Fy(-a)32 b FD(results)f(in)h(the)h(v)-5 b(ariables)32
+4972 y Fz(-a)32 b FE(results)f(in)h(the)h(v)-5 b(ariables)32
 b(b)s(eing)g(extracted,)i(prin)m(ted,)f(and)e(written)h(to)h(disk)f(in)
-g(the)p 150 5066 1200 4 v 199 5134 a Ft(1)306 5166 y
-Fs(Those)h(familiar)i(with)d(netCDF)g(mec)n(hanics)g(migh)n(t)g(wish)h
+g(the)p 150 5066 1200 4 v 199 5134 a Fu(1)306 5166 y
+Ft(Those)h(familiar)i(with)d(netCDF)g(mec)n(hanics)g(migh)n(t)g(wish)h
 (to)f(kno)n(w)g(what)g(is)h(happ)r(ening)f(here:)47 b
-Fr(ncks)33 b Fs(do)r(es)f(not)275 5253 y(attempt)d(to)h(rede\014ne)f
-(the)h(v)l(ariable)g(in)g Fm(output-\014le)j Fs(to)d(matc)n(h)g(its)g
-(de\014nition)f(in)h Fm(input-\014le)p Fs(,)g Fr(ncks)h
-Fs(merely)f(copies)275 5340 y(the)25 b(v)l(alues)h(of)g(the)f(v)l
+Fs(ncks)33 b Ft(do)r(es)f(not)275 5253 y(attempt)d(to)h(rede\014ne)f
+(the)h(v)l(ariable)g(in)g Fn(output-\014le)j Ft(to)d(matc)n(h)g(its)g
+(de\014nition)f(in)h Fn(input-\014le)p Ft(,)g Fs(ncks)h
+Ft(merely)f(copies)275 5340 y(the)25 b(v)l(alues)h(of)g(the)f(v)l
 (ariable)h(and)g(its)g(co)r(ordinate)h(dimensions,)f(if)h(an)n(y)-6
-b(,)25 b(from)h Fm(input-\014le)j Fs(to)d Fm(output-\014le)p
-Fs(.)p eop end
-%%Page: 178 184
-TeXDict begin 178 183 bop 150 -116 a FD(178)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)630 299 y(order)k(in)f(whic)m(h)h(they)g(w)m
+b(,)25 b(from)h Fn(input-\014le)j Ft(to)d Fn(output-\014le)p
+Ft(.)p eop end
+%%Page: 190 196
+TeXDict begin 190 195 bop 150 -116 a FE(190)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)630 299 y(order)k(in)f(whic)m(h)h(they)g(w)m
 (ere)h(sa)m(v)m(ed)g(in)f(the)g(input)f(\014le.)52 b(Th)m(us)34
-b Fy(-a)f FD(retains)h(the)h(original)630 408 y(ordering)30
-b(of)h(the)f(v)-5 b(ariables.)42 b(Also)31 b(`)p Fy(--abc)p
-FD(')e(and)h(`)p Fy(--alphabetize)p FD('.)150 581 y(`)p
-Fy(-b)g(file)p FD(')112 b(Activ)-5 b(ate)54 b(nativ)m(e)f(mac)m(hine)f
-(binary)f(output)h(writing)f(to)i(binary)e(\014le)h Fy(file)p
-FD(.)103 b(Also)630 690 y(`)p Fy(--fl_bnr)p FD(')36 b(and)i(`)p
-Fy(--binary-file)p FD('.)60 b(W)-8 b(riting)39 b(pac)m(k)m(ed)g(v)-5
+b Fz(-a)f FE(retains)h(the)h(original)630 408 y(ordering)30
+b(of)h(the)f(v)-5 b(ariables.)42 b(Also)31 b(`)p Fz(--abc)p
+FE(')e(and)h(`)p Fz(--alphabetize)p FE('.)150 581 y(`)p
+Fz(-b)g(file)p FE(')112 b(Activ)-5 b(ate)54 b(nativ)m(e)f(mac)m(hine)f
+(binary)f(output)h(writing)f(to)i(binary)e(\014le)h Fz(file)p
+FE(.)103 b(Also)630 690 y(`)p Fz(--fl_bnr)p FE(')36 b(and)i(`)p
+Fz(--binary-file)p FE('.)60 b(W)-8 b(riting)39 b(pac)m(k)m(ed)g(v)-5
 b(ariables)39 b(in)e(binary)h(format)630 800 y(is)g(not)g(supp)s
 (orted.)62 b(Metadata)40 b(is)e(nev)m(er)g(output)g(to)h(the)f(binary)f
 (\014le.)64 b(Examine)38 b(the)630 909 y(netCDF)32 b(output)f(\014le)h
 (to)g(see)h(the)e(v)-5 b(ariables)33 b(in)e(the)h(binary)f(\014le.)44
-b(Use)32 b(the)g(`)p Fy(-C)p FD(')f(switc)m(h,)630 1019
+b(Use)32 b(the)g(`)p Fz(-C)p FE(')f(switc)m(h,)630 1019
 y(if)f(necessary)-8 b(,)32 b(to)f(a)m(v)m(oid)h(w)m(an)m(ting)f(un)m(w)
 m(an)m(ted)g(co)s(ordinates)g(to)g(the)g(binary)e(\014le:)870
-1160 y Fy(\045)47 b(ncks)g(-O)g(-v)g(one_dmn_rec_var)d(-b)j(~/bnr.dat)f
+1160 y Fz(\045)47 b(ncks)g(-O)g(-v)g(one_dmn_rec_var)d(-b)j(~/bnr.dat)f
 (-p)h(~/nco/data)e(in.nc)h(~/out.nc)870 1270 y(\045)h(ls)h(-l)f
 (~/bnr.dat)e(|)j(cut)e(-d)i(')f(')h(-f)f(5)g(#)h(200)f(B)g(contains)f
 (time)g(and)h(one_dmn_rec_var)870 1379 y(200)870 1489
@@ -26471,14 +27662,14 @@ y(\045)g(ls)h(-l)f(~/bnr.dat)870 1598 y(\045)g(ncks)g(-C)g(-O)g(-v)h
 (one_dmn_rec_var)43 b(-b)k(~/bnr.dat)f(-p)h(~/nco/data)e(in.nc)h
 (~/out.nc)870 1708 y(\045)h(ls)h(-l)f(~/bnr.dat)e(|)j(cut)e(-d)i(')f(')
 h(-f)f(#)g(40)g(B)h(contains)d(one_dmn_rec_var)f(only)870
-1817 y(40)150 1990 y FD(`)p Fy(--fix_rec_dmn)p FD(')630
-2099 y(Change)39 b(record)f(dimension)g Fz(dim)h FD(in)f(the)h(input)f
+1817 y(40)150 1990 y FE(`)p Fz(--fix_rec_dmn)p FE(')630
+2099 y(Change)39 b(record)f(dimension)g FA(dim)h FE(in)f(the)h(input)f
 (\014le)g(in)m(to)i(a)f(\014xed)f(dimension)g(in)h(the)630
-2209 y(output)d(\014le.)57 b(Also)37 b(`)p Fy(--no_rec_dmn)p
-FD('.)54 b(Before)37 b FC(NCO)f FD(v)m(ersion)g(4.2.5)i(\(Jan)m(uary)-8
-b(,)38 b(2013\),)630 2318 y(the)i(syn)m(tax)g(for)g Fy(--fix_rec_dmn)c
-FD(did)j(not)h(p)s(ermit)f(or)h(require)f(the)h(sp)s(eci\014cation)h
-(of)630 2428 y(the)28 b(dimension)g(name)g Fz(dim)p FD(.)39
+2209 y(output)d(\014le.)57 b(Also)37 b(`)p Fz(--no_rec_dmn)p
+FE('.)54 b(Before)37 b FD(NCO)f FE(v)m(ersion)g(4.2.5)i(\(Jan)m(uary)-8
+b(,)38 b(2013\),)630 2318 y(the)i(syn)m(tax)g(for)g Fz(--fix_rec_dmn)c
+FE(did)j(not)h(p)s(ermit)f(or)h(require)f(the)h(sp)s(eci\014cation)h
+(of)630 2428 y(the)28 b(dimension)g(name)g FA(dim)p FE(.)39
 b(This)27 b(is)h(b)s(ecause)h(the)f(feature)g(only)g(w)m(ork)m(ed)h(on)
 f(netCDF3)630 2538 y(\014les,)j(whic)m(h)g(supp)s(ort)e(only)i(one)g
 (record)g(dimension,)g(so)g(sp)s(ecifying)g(its)g(name)g(w)m(as)h(not)
@@ -26486,19 +27677,19 @@ f(netCDF3)630 2538 y(\014les,)j(whic)m(h)g(supp)s(ort)e(only)i(one)g
 (arbitrary)f(n)m(um)m(b)s(er)f(of)i(record)g(dimensions,)h(so)630
 2757 y(the)f(user)e(m)m(ust)h(sp)s(ecify)g(whic)m(h)g(record)h
 (dimension)e(to)i(\014x.)58 b(The)36 b(decision)h(w)m(as)g(made)630
-2866 y(that)e(starting)g(with)f FC(NCO)f FD(v)m(ersion)i(4.2.5)h(\(Jan)
+2866 y(that)e(starting)g(with)f FD(NCO)f FE(v)m(ersion)i(4.2.5)h(\(Jan)
 m(uary)-8 b(,)36 b(2013\),)h(it)e(is)f(alw)m(a)m(ys)i(required)d(to)630
 2976 y(sp)s(ecify)23 b(the)g(dimension)g(name)g(to)h(\014x)f
 (regardless)g(of)h(the)f(netCDF)h(\014le)f(t)m(yp)s(e.)39
 b(This)22 b(k)m(eeps)630 3086 y(the)j(co)s(de)g(simple,)h(and)e(is)h
-(symmetric)g(with)f(the)h(syn)m(tax)h(for)e Fy(--mk_rec_dmn)p
-FD(,)f(describ)s(ed)630 3195 y(next.)630 3336 y(As)37
-b(of)g FC(NCO)f FD(v)m(ersion)i(4.4.0)g(\(Jan)m(uary)-8
-b(,)40 b(2014\),)g(the)d(argumen)m(t)h Fy(all)e FD(ma)m(y)h(b)s(e)f
-(giv)m(en)i(to)630 3446 y(`)p Fy(--fix_rec_dmn)p FD(')d(to)k(con)m(v)m
-(ert)g Fo(al)5 b(l)48 b FD(record)38 b(dimensions)g(to)g(\014xed)g
+(symmetric)g(with)f(the)h(syn)m(tax)h(for)e Fz(--mk_rec_dmn)p
+FE(,)f(describ)s(ed)630 3195 y(next.)630 3336 y(As)37
+b(of)g FD(NCO)f FE(v)m(ersion)i(4.4.0)g(\(Jan)m(uary)-8
+b(,)40 b(2014\),)g(the)d(argumen)m(t)h Fz(all)e FE(ma)m(y)h(b)s(e)f
+(giv)m(en)i(to)630 3446 y(`)p Fz(--fix_rec_dmn)p FE(')d(to)k(con)m(v)m
+(ert)g Fp(al)5 b(l)48 b FE(record)38 b(dimensions)g(to)g(\014xed)g
 (dimensions)f(in)h(the)630 3555 y(output)30 b(\014le.)42
-b(Previously)-8 b(,)32 b(`)p Fy(--fix_rec_dmn)p FD(')c(only)j(allo)m(w)
+b(Previously)-8 b(,)32 b(`)p Fz(--fix_rec_dmn)p FE(')c(only)j(allo)m(w)
 m(ed)h(one)f(option,)h(the)f(name)g(of)630 3665 y(a)37
 b(single)g(record)g(dimension)f(to)h(b)s(e)f(\014xed.)59
 b(No)m(w)37 b(it)g(is)g(simple)g(to)g(sim)m(ultaneously)h(\014x)630
@@ -26509,105 +27700,104 @@ y(netCDF4)k(\014les)f(that)h(ha)m(v)m(e)g(m)m(ultiple)g(record)f
 3994 y(\014les)44 b(\(whic)m(h)g(are)h(limited)g(to)g(at)f(most)h(one)f
 (record)g(dimension\))g(\(see)h(Section)g(3.13)630 4103
 y([Group)30 b(P)m(ath)h(Editing],)g(page)g(46\).)630
-4244 y(As)41 b(of)h FC(NCO)f FD(v)m(ersion)g(4.4.0)i(\(Jan)m(uary)-8
-b(,)45 b(2014\),)h(the)c(`)p Fy(--hdn)p FD(')e(or)h(`)p
-Fy(--hidden)p FD(')f(options)630 4354 y(prin)m(t)35 b(hidden)e(\(ak)-5
+4244 y(As)41 b(of)h FD(NCO)f FE(v)m(ersion)g(4.4.0)i(\(Jan)m(uary)-8
+b(,)45 b(2014\),)h(the)c(`)p Fz(--hdn)p FE(')e(or)h(`)p
+Fz(--hidden)p FE(')f(options)630 4354 y(prin)m(t)35 b(hidden)e(\(ak)-5
 b(a)37 b(sp)s(ecial\))f(attributes.)55 b(This)35 b(is)g(equiv)-5
-b(alen)m(t)36 b(to)g(`)p Fy(ncdump)29 b(-s)p FD('.)55
-b(Hid-)630 4463 y(den)c(attributes)h(include:)83 b Fy(_Format)p
-FD(,)56 b Fy(_DeflateLevel)p FD(,)d Fy(_Shuffle)p FD(,)i
-Fy(_Storage)p FD(,)g Fy(_)630 4573 y(ChunkSizes)p FD(,)38
-b Fy(_Endianness)p FD(,)g Fy(_Fletcher32)p FD(,)g(and)g
-Fy(_NOFILL)p FD(.)64 b(Previously)38 b Fy(ncks)g FD(ig-)630
-4682 y(nored)33 b(all)i(these)f(attributes)g(in)g FC(CDL)p
-FD(/)p FC(XML)g FD(mo)s(des.)50 b(No)m(w)35 b(it)f(prin)m(ts)f(these)h
+b(alen)m(t)36 b(to)g(`)p Fz(ncdump)29 b(-s)p FE('.)55
+b(Hid-)630 4463 y(den)c(attributes)h(include:)83 b Fz(_Format)p
+FE(,)56 b Fz(_DeflateLevel)p FE(,)d Fz(_Shuffle)p FE(,)i
+Fz(_Storage)p FE(,)g Fz(_)630 4573 y(ChunkSizes)p FE(,)38
+b Fz(_Endianness)p FE(,)g Fz(_Fletcher32)p FE(,)g(and)g
+Fz(_NOFILL)p FE(.)64 b(Previously)38 b Fz(ncks)g FE(ig-)630
+4682 y(nored)33 b(all)i(these)f(attributes)g(in)g FD(CDL)p
+FE(/)p FD(XML)g FE(mo)s(des.)50 b(No)m(w)35 b(it)f(prin)m(ts)f(these)h
 (attributes)630 4792 y(as)29 b(appropriate.)41 b(As)28
-b(of)i FC(NCO)e FD(v)m(ersion)i(4.4.6)h(\(Septem)m(b)s(er,)e(2014\),)i
-(`)p Fy(--hdn)p FD(')e(also)g(prin)m(ts)630 4902 y(the)42
+b(of)i FD(NCO)e FE(v)m(ersion)i(4.4.6)h(\(Septem)m(b)s(er,)e(2014\),)i
+(`)p Fz(--hdn)p FE(')e(also)g(prin)m(ts)630 4902 y(the)42
 b(extended)g(\014le)h(format)f(\(i.e.,)47 b(the)42 b(format)h(of)f(the)
 g(\014le)g(or)g(serv)m(er)h(supplying)e(the)630 5011
-y(data\))e(as)f Fy(_SOURCE_FORMAT)p FD(.)59 b(Users)38
+y(data\))e(as)f Fz(_SOURCE_FORMAT)p FE(.)59 b(Users)38
 b(are)g(referred)f(to)h(the)g(Unidata)h(netCDF)f(Do)s(cu-)630
-5121 y(men)m(tation)c(\()p Fy(http:)r(/)r(/)q(www)r(.)q(unidata)r(.)q
+5121 y(men)m(tation)c(\()p Fz(http:)r(/)r(/)q(www)r(.)q(unidata)r(.)q
 (ucar)r(.)q(edu)r(/)q(softw)o(are)r(/netcd)o(f)r(/)q(doc)o(s)p
-FD(\),)28 b(or)33 b(the)630 5230 y(man)38 b(pages)g(for)g
-Fy(ncgen)e FD(or)i Fy(ncdump)p FD(,)g(for)g(detailed)h(descriptions)f
+FE(\),)28 b(or)33 b(the)630 5230 y(man)38 b(pages)g(for)g
+Fz(ncgen)e FE(or)i Fz(ncdump)p FE(,)g(for)g(detailed)h(descriptions)f
 (of)g(the)g(meanings)g(of)630 5340 y(these)31 b(attributes.)p
 eop end
-%%Page: 179 185
-TeXDict begin 179 184 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(179)150
-299 y(`)p Fy(--cdl)p FD(')190 b(As)29 b(of)h FC(NCO)f
-FD(v)m(ersion)h(4.3.3)h(\(July)-8 b(,)30 b(2013\),)i
-Fy(ncks)c FD(can)h(prin)m(t)g(extracted)i(data)f(and)f(meta-)630
-408 y(data)39 b(to)g(screen)g(\(i.e.,)j Fy(stdout)p FD(\))c(as)g(v)-5
-b(alid)39 b FC(CDL)g FD(\(net)m(w)m(ork)h(Common)e(data)h(form)f(De-)
-630 518 y(scription)g(Language\).)65 b FC(CDL)38 b FD(is)g(the)g(h)m
-(uman-readable)g(\\lingua)h(franca")f(of)g(netCDF)630
-628 y(ingested)33 b(b)m(y)g Fy(ncgen)e FD(and)h(excreted)h(b)m(y)g
-Fy(ncdump)p FD(.)46 b(Compare)32 b Fy(ncks)f FD(\\traditional")k(with)
-630 737 y FC(CDL)c FD(prin)m(ting:)870 888 y Fy(zender at roulee:~$)43
-b(ncks)k(-v)g(one)g(~/nco/data/in.nc)870 998 y(one:)g(type)f(NC_FLOAT,)
-g(0)h(dimensions,)e(1)i(attribute,)e(chunked?)h(no,)h(compressed?)d
-(no,)j(packed?)f(no)870 1107 y(one)h(size)g(\(RAM\))f(=)h
-(1*sizeof\(NC_FLOAT\))c(=)48 b(1*4)f(=)g(4)g(bytes)870
-1217 y(one)g(attribute)e(0:)i(long_name,)e(size)i(=)g(3)h(NC_CHAR,)d
-(value)i(=)g(one)870 1436 y(one)g(=)g(1)870 1655 y(zender at roulee:~$)c
-(ncks)k(--cdl)f(-v)i(one)e(~/nco/data/in.nc)870 1765
-y(netcdf)g(in)h({)965 1984 y(variables:)1061 2093 y(float)f(one)h(;)
-1061 2203 y(one:long_name)d(=)k("one")e(;)965 2422 y(data:)1061
-2532 y(one)h(=)g(1)h(;)870 2751 y(})f(//)h(group)e(/)630
-2902 y(ncgen)29 b FD(con)m(v)m(erts)j FC(CDL)p FD(-mo)s(de)e(output)g
-(in)m(to)i(a)e(netCDF)h(\014le:)870 3052 y Fy(ncks)47
+%%Page: 191 197
+TeXDict begin 191 196 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(191)150 299 y(`)p Fz(--cdl)p
+FE(')190 b(As)29 b(of)h FD(NCO)f FE(v)m(ersion)h(4.3.3)h(\(July)-8
+b(,)30 b(2013\),)i Fz(ncks)c FE(can)h(prin)m(t)g(extracted)i(data)f
+(and)f(meta-)630 408 y(data)39 b(to)g(screen)g(\(i.e.,)j
+Fz(stdout)p FE(\))c(as)g(v)-5 b(alid)39 b FD(CDL)g FE(\(net)m(w)m(ork)h
+(Common)e(data)h(form)f(De-)630 518 y(scription)g(Language\).)65
+b FD(CDL)38 b FE(is)g(the)g(h)m(uman-readable)g(\\lingua)h(franca")f
+(of)g(netCDF)630 628 y(ingested)33 b(b)m(y)g Fz(ncgen)e
+FE(and)h(excreted)h(b)m(y)g Fz(ncdump)p FE(.)46 b(Compare)32
+b Fz(ncks)f FE(\\traditional")k(with)630 737 y FD(CDL)c
+FE(prin)m(ting:)870 888 y Fz(zender at roulee:~$)43 b(ncks)k(-v)g(one)g
+(~/nco/data/in.nc)870 998 y(one:)g(type)f(NC_FLOAT,)g(0)h(dimensions,)e
+(1)i(attribute,)e(chunked?)h(no,)h(compressed?)d(no,)j(packed?)f(no)870
+1107 y(one)h(size)g(\(RAM\))f(=)h(1*sizeof\(NC_FLOAT\))c(=)48
+b(1*4)f(=)g(4)g(bytes)870 1217 y(one)g(attribute)e(0:)i(long_name,)e
+(size)i(=)g(3)h(NC_CHAR,)d(value)i(=)g(one)870 1436 y(one)g(=)g(1)870
+1655 y(zender at roulee:~$)c(ncks)k(--cdl)f(-v)i(one)e(~/nco/data/in.nc)
+870 1765 y(netcdf)g(in)h({)965 1984 y(variables:)1061
+2093 y(float)f(one)h(;)1061 2203 y(one:long_name)d(=)k("one")e(;)965
+2422 y(data:)1061 2532 y(one)h(=)g(1)h(;)870 2751 y(})f(//)h(group)e(/)
+630 2902 y(ncgen)29 b FE(con)m(v)m(erts)j FD(CDL)p FE(-mo)s(de)e
+(output)g(in)m(to)i(a)e(netCDF)h(\014le:)870 3052 y Fz(ncks)47
 b(--cdl)f(-v)h(one)g(~/nco/data/in.nc)c(>)48 b(~/in.cdl)870
 3162 y(ncgen)e(-k)i(netCDF-4)d(-b)i(-o)g(~/in.nc)f(~/in.cdl)870
-3271 y(ncks)h(-v)g(one)g(~/in.nc)630 3422 y FD(The)54
-b FC(HDF)h FD(v)m(ersion)g(of)g Fy(ncgen)p FD(,)60 b(often)55
-b(named)f Fy(hncgen)f FD(or)h Fy(ncgen-hdf)p FD(,)k(con)m(v)m(erts)630
-3532 y(netCDF3)31 b FC(CDL)g FD(in)m(to)g(an)g FC(HDF)g
-FD(\014le:)870 3682 y Fy(/usr/hdf4/bin/ncgen)43 b(-b)k(-o)g(~/in.hdf)e
+3271 y(ncks)h(-v)g(one)g(~/in.nc)630 3422 y FE(The)54
+b FD(HDF)h FE(v)m(ersion)g(of)g Fz(ncgen)p FE(,)60 b(often)55
+b(named)f Fz(hncgen)f FE(or)h Fz(ncgen-hdf)p FE(,)k(con)m(v)m(erts)630
+3532 y(netCDF3)31 b FD(CDL)g FE(in)m(to)g(an)g FD(HDF)g
+FE(\014le:)870 3682 y Fz(/usr/hdf4/bin/ncgen)43 b(-b)k(-o)g(~/in.hdf)e
 (~/in.cdl)h(#)h(HDF)g(ncgen)g(\(local)f(builds\))870
 3792 y(/usr/bin/hncgen)235 b(-b)47 b(-o)g(~/in.hdf)e(~/in.cdl)h(#)h
 (Same)g(as)g(HDF)g(ncgen)g(\(RPM)f(packages?\))870 3902
 y(/usr/bin/ncgen-hdf)91 b(-b)47 b(-o)g(~/in.hdf)e(~/in.cdl)h(#)h(Same)g
 (as)g(HDF)g(ncgen)g(\(Debian)e(packages?\))870 4011 y(hdp)i(dumpsds)f
 (~/in.hdf)1143 b(#)47 b(ncdump/h5dump-equivalent)42 b(for)47
-b(HDF4)630 4162 y FD(Note)e(that)f FC(HDF4)g FD(do)s(es)f(not)h(supp)s
+b(HDF4)630 4162 y FE(Note)e(that)f FD(HDF4)g FE(do)s(es)f(not)h(supp)s
 (ort)e(netCDF-st)m(yle)j(groups,)i(so)d(the)f(ab)s(o)m(v)m(e)i(com-)630
 4271 y(mands)29 b(fail)h(when)f(the)h(input)e(\014le)i(con)m(tains)h
-(groups.)40 b(Only)29 b(netCDF4)i(and)e FC(HDF5)h FD(sup-)630
+(groups.)40 b(Only)29 b(netCDF4)i(and)e FD(HDF5)h FE(sup-)630
 4381 y(p)s(ort)35 b(groups.)55 b(In)35 b(our)g(exp)s(erience)h(the)g
-FC(HDF)g Fy(ncgen)e FD(command,)j(b)m(y)f(whatev)m(er)g(name)630
+FD(HDF)g Fz(ncgen)e FE(command,)j(b)m(y)f(whatev)m(er)g(name)630
 4491 y(installed,)31 b(is)g(not)f(robust)g(and)g(can)g(fail)h(on)g(v)-5
-b(alid)30 b(netCDF3)i FC(CDL)p FD(.)150 4682 y(`)p Fy(--mk_rec_dmn)27
-b Fn(dim)p FD(')630 4792 y(Change)e(existing)i(dimension)d
-Fz(dim)h FD(to)h(a)g(record)f(dimension)g(in)g(the)g(output)g(\014le.)
+b(alid)30 b(netCDF3)i FD(CDL)p FE(.)150 4682 y(`)p Fz(--mk_rec_dmn)27
+b Fo(dim)p FE(')630 4792 y(Change)e(existing)i(dimension)d
+FA(dim)h FE(to)h(a)g(record)f(dimension)g(in)g(the)g(output)g(\014le.)
 39 b(This)25 b(is)630 4902 y(the)32 b(most)g(straigh)m(tforw)m(ard)h(w)
 m(a)m(y)g(of)f(c)m(hanging)g(a)h(dimension)e(to)i(a/the)g(record)e
 (dimen-)630 5011 y(sion,)k(and)d(w)m(orks)i(\014ne)f(in)g(most)h
 (cases.)51 b(See)34 b(Section)g(4.5)h([ncecat)g(netCDF)f(Ensem)m(ble)
-630 5121 y(Concatenator],)g(page)f(170)g(and)f(Section)h(4.8)g([ncp)s
+630 5121 y(Concatenator],)g(page)f(182)g(and)f(Section)h(4.8)g([ncp)s
 (dq)d(netCDF)j(P)m(erm)m(ute)g(Dimensions)630 5230 y(Quic)m(kly],)38
-b(page)e(190)h(for)f(other)f(metho)s(ds)g(of)h(c)m(hanging)h(v)-5
+b(page)e(202)h(for)f(other)f(metho)s(ds)g(of)h(c)m(hanging)h(v)-5
 b(ariable)36 b(dimensionalit)m(y)-8 b(,)39 b(in-)630
 5340 y(cluding)30 b(the)h(record)f(dimension.)p eop end
-%%Page: 180 186
-TeXDict begin 180 185 bop 150 -116 a FD(180)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(`)p Fy(-H)p FD(')334
+%%Page: 192 198
+TeXDict begin 192 197 bop 150 -116 a FE(192)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(`)p Fz(-H)p FE(')334
 b(T)-8 b(urn-on)29 b(prin)m(ting)i(to)g(screen)g(or)f(turn-o\013)g(cop)
 m(ying)i(data)f(\(not)g(metadata\).)43 b(Also)31 b(acti-)630
-408 y(v)-5 b(ated)26 b(using)f(`)p Fy(--print)p FD(')e(or)j(`)p
-Fy(--prn)p FD('.)38 b(By)25 b(default)h Fy(ncks)e FD(prin)m(ts)h(all)h
+408 y(v)-5 b(ated)26 b(using)f(`)p Fz(--print)p FE(')e(or)j(`)p
+Fz(--prn)p FE('.)38 b(By)25 b(default)h Fz(ncks)e FE(prin)m(ts)h(all)h
 (metadata)h(and)d(data)630 518 y(to)30 b(screen)g(if)g(no)f(netCDF)h
 (output)f(\014le)h(is)g(sp)s(eci\014ed.)39 b(Use)30 b(`)p
-Fy(-H)p FD(')g(to)g(prin)m(t)f(data)i(to)f(screen)630
+Fz(-H)p FE(')g(to)g(prin)m(t)f(data)i(to)f(screen)630
 628 y(if)35 b(a)g(netCDF)g(output)f(is)h(sp)s(eci\014ed,)g(or)g(to)g
 (restrict)h(prin)m(ting)e(to)i(data)f(\(no)g(metadata\))630
 737 y(when)j(no)h(netCDF)h(output)f(is)g(sp)s(eci\014ed.)67
-b(Also)39 b(use)g(`)p Fy(-H)p FD(')g(to)h(turn-o\013)f(cop)m(ying)h
+b(Also)39 b(use)g(`)p Fz(-H)p FE(')g(to)h(turn-o\013)f(cop)m(ying)h
 (data)630 847 y(\(not)f(metadata\))h(to)f(an)g(output)f(\014le.)64
-b(Unless)39 b(otherwise)f(sp)s(eci\014ed)g(\(with)g Fy(-s)p
-FD(\),)j(eac)m(h)630 956 y(elemen)m(t)35 b(of)f(the)g(data)g(h)m(yp)s
+b(Unless)39 b(otherwise)f(sp)s(eci\014ed)g(\(with)g Fz(-s)p
+FE(\),)j(eac)m(h)630 956 y(elemen)m(t)35 b(of)f(the)g(data)g(h)m(yp)s
 (erslab)f(prin)m(ts)g(on)g(a)h(separate)h(line)f(con)m(taining)h(the)f
 (names,)630 1066 y(indices,)j(and,)f(v)-5 b(alues,)37
 b(if)e(an)m(y)-8 b(,)37 b(of)e(all)h(of)g(the)f(v)-5
@@ -26616,23 +27806,23 @@ b(ariables)36 b(dimensions.)54 b(The)35 b(dimension)630
 (cation)i(of)e(the)h(corresp)s(onding)e(data)i(elemen)m(t)h(with)630
 1285 y(resp)s(ect)30 b(to)h(the)g(v)-5 b(ariable)31 b(as)g(stored)f(on)
 h(disk)e(\(i.e.,)k(not)d(the)h(h)m(yp)s(erslab\).)870
-1426 y Fy(\045)47 b(ncks)g(-C)g(-v)g(three_dmn_var)e(in.nc)870
+1426 y Fz(\045)47 b(ncks)g(-C)g(-v)g(three_dmn_var)e(in.nc)870
 1536 y(lat[0]=-90)g(lev[0]=100)g(lon[0]=0)h(three_dmn_var[0]=0)870
 1645 y(lat[0]=-90)f(lev[0]=100)g(lon[1]=90)g(three_dmn_var[1]=1)870
 1755 y(lat[0]=-90)g(lev[0]=100)g(lon[2]=180)g(three_dmn_var[2]=2)870
 1864 y(...)870 1974 y(lat[1]=90)g(lev[2]=1000)g(lon[1]=90)g
 (three_dmn_var[21]=21)870 2084 y(lat[1]=90)g(lev[2]=1000)g(lon[2]=180)g
 (three_dmn_var[22]=22)870 2193 y(lat[1]=90)g(lev[2]=1000)g(lon[3]=270)g
-(three_dmn_var[23]=23)630 2334 y FD(Prin)m(ting)24 b(the)g(same)g(v)-5
-b(ariable)25 b(with)f(the)g(`)p Fy(-F)p FD(')f(option)i(sho)m(ws)e(the)
+(three_dmn_var[23]=23)630 2334 y FE(Prin)m(ting)24 b(the)g(same)g(v)-5
+b(ariable)25 b(with)f(the)g(`)p Fz(-F)p FE(')f(option)i(sho)m(ws)e(the)
 i(same)f(v)-5 b(ariable)24 b(indexed)630 2444 y(with)30
 b(F)-8 b(ortran)31 b(con)m(v)m(en)m(tions)870 2585 y
-Fy(\045)47 b(ncks)g(-F)g(-C)g(-v)h(three_dmn_var)c(in.nc)870
+Fz(\045)47 b(ncks)g(-F)g(-C)g(-v)h(three_dmn_var)c(in.nc)870
 2694 y(lon\(1\)=0)i(lev\(1\)=100)f(lat\(1\)=-90)g(three_dmn_var\(1\)=0)
 870 2804 y(lon\(2\)=90)g(lev\(1\)=100)g(lat\(1\)=-90)g
 (three_dmn_var\(2\)=1)870 2913 y(lon\(3\)=180)g(lev\(1\)=100)g
 (lat\(1\)=-90)g(three_dmn_var\(3\)=2)870 3023 y(...)630
-3164 y FD(Prin)m(ting)e(a)f(h)m(yp)s(erslab)g(do)s(es)g(not)h(a\013ect)
+3164 y FE(Prin)m(ting)e(a)f(h)m(yp)s(erslab)g(do)s(es)g(not)h(a\013ect)
 h(the)e(v)-5 b(ariable)44 b(or)e(dimension)g(indices)h(since)630
 3273 y(these)35 b(indices)h(are)f(relativ)m(e)i(to)f(the)f(full)g(v)-5
 b(ariable)36 b(\(as)f(stored)h(in)e(the)i(input)e(\014le\),)j(and)630
@@ -26640,7 +27830,7 @@ b(ariable)36 b(\(as)f(stored)h(in)e(the)i(input)e(\014le\),)j(and)630
 b(Ho)m(w)m(ev)m(er,)31 b(if)e(the)g(h)m(yp)s(erslab)f(is)g(sa)m(v)m(ed)
 i(to)g(an)e(output)630 3493 y(\014le)i(and)g(those)h(v)-5
 b(alues)31 b(are)g(prin)m(ted,)f(the)g(indices)h(will)g(c)m(hange:)870
-3634 y Fy(\045)47 b(ncks)g(-H)g(-d)g(lat,90.0)f(-d)h(lev,1000.0)e(-v)i
+3634 y Fz(\045)47 b(ncks)g(-H)g(-d)g(lat,90.0)f(-d)h(lev,1000.0)e(-v)i
 (three_dmn_var)e(in.nc)h(out.nc)870 3743 y(...)870 3853
 y(lat[1]=90)f(lev[2]=1000)g(lon[0]=0)h(three_dmn_var[20]=20)870
 3962 y(lat[1]=90)f(lev[2]=1000)g(lon[1]=90)g(three_dmn_var[21]=21)870
@@ -26651,51 +27841,51 @@ y(lat[1]=90)f(lev[2]=1000)g(lon[0]=0)h(three_dmn_var[20]=20)870
 4510 y(lat[0]=90)f(lev[0]=1000)g(lon[1]=90)g(three_dmn_var[1]=21)870
 4620 y(lat[0]=90)g(lev[0]=1000)g(lon[2]=180)g(three_dmn_var[2]=22)870
 4729 y(lat[0]=90)g(lev[0]=1000)g(lon[3]=270)g(three_dmn_var[3]=23)150
-4902 y FD(`)p Fy(-M)p FD(')334 b(T)-8 b(urn-on)24 b(prin)m(ting)g(to)i
+4902 y FE(`)p Fz(-M)p FE(')334 b(T)-8 b(urn-on)24 b(prin)m(ting)g(to)i
 (screen)f(or)g(turn-o\013)g(cop)m(ying)g(global)i(and)d(group)g
 (metadata.)41 b(This)630 5011 y(includes)20 b(\014le)g(summary)f
 (information)i(and)f(global)h(and)f(group)g(attributes.)38
-b(Also)21 b(`)p Fy(--Mtd)p FD(')630 5121 y(and)44 b(`)p
-Fy(--Metadata)p FD('.)81 b(By)45 b(default)f Fy(ncks)g
-FD(prin)m(ts)g(global)h(metadata)i(to)e(screen)g(if)f(no)630
+b(Also)21 b(`)p Fz(--Mtd)p FE(')630 5121 y(and)44 b(`)p
+Fz(--Metadata)p FE('.)81 b(By)45 b(default)f Fz(ncks)g
+FE(prin)m(ts)g(global)h(metadata)i(to)e(screen)g(if)f(no)630
 5230 y(netCDF)31 b(output)g(\014le)f(and)g(no)h(v)-5
 b(ariable)32 b(extraction)g(list)f(is)g(sp)s(eci\014ed)f(\(with)h(`)p
-Fy(-v)p FD('\).)42 b(Use)630 5340 y(`)p Fy(-M)p FD(')37
+Fz(-v)p FE('\).)42 b(Use)630 5340 y(`)p Fz(-M)p FE(')37
 b(to)h(prin)m(t)e(global)j(metadata)g(to)e(screen)h(if)f(a)g(netCDF)h
 (output)e(is)i(sp)s(eci\014ed,)g(or)f(if)p eop end
-%%Page: 181 187
-TeXDict begin 181 186 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(181)630
-299 y(a)36 b(v)-5 b(ariable)37 b(extraction)g(list)g(is)e(sp)s
-(eci\014ed)g(\(with)h(`)p Fy(-v)p FD('\).)57 b(Use)36
-b(`)p Fy(-M)p FD(')g(to)h(turn-o\013)e(cop)m(ying)630
-408 y(of)k(global)g(and)f(group)g(metadata)i(when)e(cop)m(ying,)k
-(subsetting,)e(or)f(app)s(ending)e(to)i(an)630 518 y(output)30
-b(\014le.)630 675 y(The)e(v)-5 b(arious)28 b(com)m(binations)h(of)f
-(prin)m(ting)g(switc)m(hes)g(can)h(b)s(e)e(confusing.)40
-b(In)27 b(an)h(attempt)630 784 y(to)k(an)m(ticipate)i(what)d(most)h
-(users)e(w)m(an)m(t)i(to)g(do,)g Fy(ncks)e FD(uses)h(con)m
-(text-sensitiv)m(e)k(defaults)630 894 y(for)26 b(prin)m(ting.)40
-b(Our)25 b(goal)j(is)e(to)i(minimize)f(the)f(use)g(of)h(switc)m(hes)g
-(required)f(to)h(accomplish)630 1003 y(the)c(common)f(op)s(erations.)38
-b(W)-8 b(e)24 b(assume)e(that)h(users)f(creating)h(a)g(new)f(\014le)g
-(or)h(o)m(v)m(erwriting)630 1113 y(\(e.g.,)43 b(with)38
-b(`)p Fy(-O)p FD('\))h(an)g(existing)h(\014le)e(usually)h(wish)f(to)h
-(cop)m(y)h(all)g(global)g(and)e(v)-5 b(ariable-)630 1223
-y(sp)s(eci\014c)28 b(attributes)g(to)h(the)f(new)f(\014le.)40
-b(In)27 b(con)m(trast,)j(w)m(e)e(assume)g(that)g(users)f(app)s(ending)
-630 1332 y(\(e.g.,)32 b(with)e(`)p Fy(-A)p FD(')g(an)g(explicit)i(v)-5
-b(ariable)30 b(list)h(from)f(one)g(\014le)h(to)g(another)f(usually)g
-(wish)f(to)630 1442 y(cop)m(y)j(only)f(the)h(v)-5 b(ariable-sp)s
-(eci\014c)32 b(attributes)g(to)g(the)g(output)e(\014le.)44
-b(The)31 b(switc)m(hes)h(`)p Fy(-H)p FD(',)630 1551 y(`)p
-Fy(-M)p FD(',)42 b(and)e(`)p Fy(-m)p FD(')g(switc)m(hes)g(are)h
-(implemen)m(ted)f(as)g(toggles)i(whic)m(h)e(rev)m(erse)h(the)f(default)
-630 1661 y(b)s(eha)m(vior.)g(The)28 b(most)g(confusing)g(asp)s(ect)h
-(of)f(this)h(is)f(that)h(`)p Fy(-M)p FD(')f(inhibits)f(cop)m(ying)j
-(global)630 1771 y(metadata)j(in)d(o)m(v)m(erwrite)j(mo)s(de)e(and)f
-(causes)i(cop)m(ying)g(of)f(global)h(metadata)h(in)e(app)s(end)630
-1880 y(mo)s(de.)870 2037 y Fy(ncks)810 b(in.nc)381 b(#)47
+%%Page: 193 199
+TeXDict begin 193 198 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(193)630 299 y(a)36
+b(v)-5 b(ariable)37 b(extraction)g(list)g(is)e(sp)s(eci\014ed)g(\(with)
+h(`)p Fz(-v)p FE('\).)57 b(Use)36 b(`)p Fz(-M)p FE(')g(to)h(turn-o\013)
+e(cop)m(ying)630 408 y(of)k(global)g(and)f(group)g(metadata)i(when)e
+(cop)m(ying,)k(subsetting,)e(or)f(app)s(ending)e(to)i(an)630
+518 y(output)30 b(\014le.)630 675 y(The)e(v)-5 b(arious)28
+b(com)m(binations)h(of)f(prin)m(ting)g(switc)m(hes)g(can)h(b)s(e)e
+(confusing.)40 b(In)27 b(an)h(attempt)630 784 y(to)k(an)m(ticipate)i
+(what)d(most)h(users)e(w)m(an)m(t)i(to)g(do,)g Fz(ncks)e
+FE(uses)h(con)m(text-sensitiv)m(e)k(defaults)630 894
+y(for)26 b(prin)m(ting.)40 b(Our)25 b(goal)j(is)e(to)i(minimize)f(the)f
+(use)g(of)h(switc)m(hes)g(required)f(to)h(accomplish)630
+1003 y(the)c(common)f(op)s(erations.)38 b(W)-8 b(e)24
+b(assume)e(that)h(users)f(creating)h(a)g(new)f(\014le)g(or)h(o)m(v)m
+(erwriting)630 1113 y(\(e.g.,)43 b(with)38 b(`)p Fz(-O)p
+FE('\))h(an)g(existing)h(\014le)e(usually)h(wish)f(to)h(cop)m(y)h(all)g
+(global)g(and)e(v)-5 b(ariable-)630 1223 y(sp)s(eci\014c)28
+b(attributes)g(to)h(the)f(new)f(\014le.)40 b(In)27 b(con)m(trast,)j(w)m
+(e)e(assume)g(that)g(users)f(app)s(ending)630 1332 y(\(e.g.,)32
+b(with)e(`)p Fz(-A)p FE(')g(an)g(explicit)i(v)-5 b(ariable)30
+b(list)h(from)f(one)g(\014le)h(to)g(another)f(usually)g(wish)f(to)630
+1442 y(cop)m(y)j(only)f(the)h(v)-5 b(ariable-sp)s(eci\014c)32
+b(attributes)g(to)g(the)g(output)e(\014le.)44 b(The)31
+b(switc)m(hes)h(`)p Fz(-H)p FE(',)630 1551 y(`)p Fz(-M)p
+FE(',)42 b(and)e(`)p Fz(-m)p FE(')g(switc)m(hes)g(are)h(implemen)m(ted)
+f(as)g(toggles)i(whic)m(h)e(rev)m(erse)h(the)f(default)630
+1661 y(b)s(eha)m(vior.)g(The)28 b(most)g(confusing)g(asp)s(ect)h(of)f
+(this)h(is)f(that)h(`)p Fz(-M)p FE(')f(inhibits)f(cop)m(ying)j(global)
+630 1771 y(metadata)j(in)d(o)m(v)m(erwrite)j(mo)s(de)e(and)f(causes)i
+(cop)m(ying)g(of)f(global)h(metadata)h(in)e(app)s(end)630
+1880 y(mo)s(de.)870 2037 y Fz(ncks)810 b(in.nc)381 b(#)47
 b(Print)94 b(VAs)47 b(and)g(GAs)870 2146 y(ncks)476 b(-v)47
 b(one)g(in.nc)381 b(#)47 b(Print)94 b(VAs)47 b(not)g(GAs)870
 2256 y(ncks)190 b(-M)g(-v)47 b(one)g(in.nc)381 b(#)47
@@ -26717,137 +27907,137 @@ b(-v)47 b(one)g(in.nc)g(out.nc)f(#)h(Append)f(VAs)h(and)g(GAs)870
 3461 y(ncks)g(-A)190 b(-m)47 b(-v)g(one)g(in.nc)g(out.nc)f(#)h(Append)f
 (only)h(data)g(\(no)f(atts\))870 3571 y(ncks)h(-A)g(-M)g(-m)g(-v)g(one)
 g(in.nc)g(out.nc)f(#)h(Append)f(GAs)h(not)g(VAs)630 3727
-y FD(where)30 b Fy(VAs)f FD(and)h Fy(GAs)g FD(denote)h(v)-5
+y FE(where)30 b Fz(VAs)f FE(and)h Fz(GAs)g FE(denote)h(v)-5
 b(ariable)31 b(and)e(group/global)j(attributes,)f(resp)s(ectiv)m(ely)-8
-b(.)150 3931 y(`)p Fy(-m)p FD(')334 b(T)-8 b(urn-on)36
+b(.)150 3931 y(`)p Fz(-m)p FE(')334 b(T)-8 b(urn-on)36
 b(prin)m(ting)h(to)h(screen)f(or)g(turn-o\013)g(cop)m(ying)h(v)-5
-b(ariable)37 b(metadata.)63 b(Using)37 b(`)p Fy(-m)p
-FD(')630 4041 y(will)j(prin)m(t)g(v)-5 b(ariable)40 b(metadata)i(to)e
-(screen)g(\(similar)h(to)f Fn(ncdump)29 b(-h)p FD(\).)69
+b(ariable)37 b(metadata.)63 b(Using)37 b(`)p Fz(-m)p
+FE(')630 4041 y(will)j(prin)m(t)g(v)-5 b(ariable)40 b(metadata)i(to)e
+(screen)g(\(similar)h(to)f Fo(ncdump)29 b(-h)p FE(\).)69
 b(This)39 b(displa)m(ys)630 4150 y(all)32 b(metadata)g(p)s(ertaining)f
 (to)h(eac)m(h)g(v)-5 b(ariable,)32 b(one)f(v)-5 b(ariable)31
 b(at)h(a)f(time.)43 b(This)30 b(includes)630 4260 y(information)37
 b(on)f(the)h(storage)g(prop)s(erties)f(of)h(the)f(v)-5
 b(ariable,)39 b(suc)m(h)d(as)h(whether)f(it)h(em-)630
 4369 y(plo)m(ys)45 b(c)m(h)m(unking,)i(compression,)h(or)d(pac)m(king.)
-83 b(Also)44 b(activ)-5 b(ated)47 b(using)c(`)p Fy(--mtd)p
-FD(')h(and)630 4479 y(`)p Fy(--metadata)p FD('.)36 b(The)21
-b Fy(ncks)g FD(default)h(b)s(eha)m(vior)h(is)f(to)h(prin)m(t)e(v)-5
+83 b(Also)44 b(activ)-5 b(ated)47 b(using)c(`)p Fz(--mtd)p
+FE(')h(and)630 4479 y(`)p Fz(--metadata)p FE('.)36 b(The)21
+b Fz(ncks)g FE(default)h(b)s(eha)m(vior)h(is)f(to)h(prin)m(t)e(v)-5
 b(ariable)23 b(metadata)h(to)f(screen)630 4589 y(if)38
 b(no)f(netCDF)h(output)f(\014le)h(is)g(sp)s(eci\014ed.)62
-b(Use)37 b(`)p Fy(-m)p FD(')h(to)g(prin)m(t)g(v)-5 b(ariable)38
+b(Use)37 b(`)p Fz(-m)p FE(')h(to)g(prin)m(t)g(v)-5 b(ariable)38
 b(metadata)h(to)630 4698 y(screen)i(if)g(a)g(netCDF)h(output)e(is)h(sp)
-s(eci\014ed.)72 b(Also)41 b(use)g(`)p Fy(-m)p FD(')g(to)g(turn-o\013)g
+s(eci\014ed.)72 b(Also)41 b(use)g(`)p Fz(-m)p FE(')g(to)g(turn-o\013)g
 (cop)m(ying)h(of)630 4808 y(v)-5 b(ariable)31 b(metadata)h(to)f(an)g
-(output)f(\014le.)150 5011 y(`)p Fy(--no_blank)p FD(')630
+(output)f(\014le.)150 5011 y(`)p Fz(--no_blank)p FE(')630
 5121 y(Prin)m(t)i(n)m(umeric)g(represen)m(tation)g(of)g(missing)g(v)-5
-b(alues.)46 b(As)31 b(of)h FC(NCO)g FD(As)g(of)g FC(NCO)f
-FD(v)m(ersion)630 5230 y(4.2.2)d(\(Octob)s(er,)g(2012\),)i
-FC(NCO)c FD(prin)m(ts)g(missing)g(v)-5 b(alues)27 b(as)f(blanks)g
+b(alues.)46 b(As)31 b(of)h FD(NCO)g FE(As)g(of)g FD(NCO)f
+FE(v)m(ersion)630 5230 y(4.2.2)d(\(Octob)s(er,)g(2012\),)i
+FD(NCO)c FE(prin)m(ts)g(missing)g(v)-5 b(alues)27 b(as)f(blanks)g
 (\(i.e.,)j(the)e(underscore)630 5340 y(c)m(haracter)37
-b(`)p Fy(_)p FD('\))f(b)m(y)g(default.)57 b(T)-8 b(o)36
+b(`)p Fz(_)p FE('\))f(b)m(y)g(default.)57 b(T)-8 b(o)36
 b(enable)g(the)g(old)f(b)s(eha)m(vior)h(of)g(prin)m(ting)f(the)h(n)m
 (umeric)p eop end
-%%Page: 182 188
-TeXDict begin 182 187 bop 150 -116 a FD(182)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)630 299 y(represen)m(tation)39
-b(of)g(missing)f(v)-5 b(alues)39 b(\(e.g.,)j Fy(1.0e36)p
-FD(\),)d(use)f(the)g(`)p Fy(--no_blank)p FD(')e(switc)m(h.)630
-408 y(Also)31 b(activ)-5 b(ated)32 b(using)e(`)p Fy(--noblank)p
-FD(')f(or)h(`)p Fy(--no-blank)p FD('.)150 576 y(`)p Fy(-P)p
-FD(')334 b(Prin)m(t)39 b(data,)i(metadata,)i(and)38 b(units)g(to)h
-(screen.)66 b(The)38 b(`)p Fy(-P)p FD(')g(switc)m(h)h(is)g(a)g(con)m(v)
-m(enience)630 685 y(abbreviation)e(for)g(`)p Fy(-C)30
-b(-H)g(-M)f(-m)h(-u)p FD('.)59 b(Also)38 b(activ)-5 b(ated)39
-b(using)d(`)p Fy(--print)p FD(')f(or)i(`)p Fy(--prn)p
-FD('.)630 795 y(This)30 b(set)g(of)h(switc)m(hes)g(is)g(useful)e(for)h
-(exploring)h(\014le)f(con)m(ten)m(ts.)150 962 y(`)p Fy(-Q)p
-FD(')334 b(Prin)m(t)37 b(quietly)-8 b(,)40 b(meaning)e(omit)f
+%%Page: 194 200
+TeXDict begin 194 199 bop 150 -116 a FE(194)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)630 299 y(represen)m(tation)39
+b(of)g(missing)f(v)-5 b(alues)39 b(\(e.g.,)j Fz(1.0e36)p
+FE(\),)d(use)f(the)g(`)p Fz(--no_blank)p FE(')e(switc)m(h.)630
+408 y(Also)31 b(activ)-5 b(ated)32 b(using)e(`)p Fz(--noblank)p
+FE(')f(or)h(`)p Fz(--no-blank)p FE('.)150 576 y(`)p Fz(-P)p
+FE(')334 b(Prin)m(t)39 b(data,)i(metadata,)i(and)38 b(units)g(to)h
+(screen.)66 b(The)38 b(`)p Fz(-P)p FE(')g(switc)m(h)h(is)g(a)g(con)m(v)
+m(enience)630 685 y(abbreviation)e(for)g(`)p Fz(-C)30
+b(-H)g(-M)f(-m)h(-u)p FE('.)59 b(Also)38 b(activ)-5 b(ated)39
+b(using)d(`)p Fz(--print)p FE(')f(or)i(`)p Fz(--prn)p
+FE('.)630 795 y(This)30 b(set)g(of)h(switc)m(hes)g(is)g(useful)e(for)h
+(exploring)h(\014le)f(con)m(ten)m(ts.)150 962 y(`)p Fz(-Q)p
+FE(')334 b(Prin)m(t)37 b(quietly)-8 b(,)40 b(meaning)e(omit)f
 (dimension)g(names,)i(indices,)g(and)e(co)s(ordinate)h(v)-5
 b(alues)630 1072 y(when)35 b(prin)m(ting)h(arra)m(ys.)59
 b(V)-8 b(ariable)38 b(\(not)f(dimension\))f(indices)g(are)h(prin)m
 (ted.)57 b(V)-8 b(ariable)630 1181 y(names)30 b(app)s(ear)g(\015ush)f
-(left)i(in)f(the)g(output:)870 1320 y Fy(zender at roulee:~$)43
+(left)i(in)f(the)g(output:)870 1320 y Fz(zender at roulee:~$)43
 b(ncks)k(-Q)g(-v)g(three_dmn_rec_var)c(-C)48 b(-H)f(~/nco/data/in.nc)
 870 1429 y(three_dmn_rec_var[0]=1)870 1539 y(...)630
-1677 y FD(This)38 b(helps)g(lo)s(cate)i(sp)s(eci\014c)f(v)-5
+1677 y FE(This)38 b(helps)g(lo)s(cate)i(sp)s(eci\014c)f(v)-5
 b(ariables)39 b(in)f(lists)h(with)g(man)m(y)f(v)-5 b(ariables)39
 b(and)f(di\013eren)m(t)630 1787 y(dimensions.)61 b(See)38
-b(also)g(the)g(`)p Fy(-V)p FD(')f(option,)j(whic)m(h)d(omits)h(all)g
+b(also)g(the)g(`)p Fz(-V)p FE(')f(option,)j(whic)m(h)d(omits)h(all)g
 (names)f(and)g(indices)h(and)630 1897 y(prin)m(ts)30
 b(only)g(v)-5 b(ariable)32 b(v)-5 b(alues.)150 2064 y(`)p
-Fy(-q)p FD(')334 b(Quenc)m(h)29 b(\(turn-o\013)7 b(\))30
+Fz(-q)p FE(')334 b(Quenc)m(h)29 b(\(turn-o\013)7 b(\))30
 b(all)g(prin)m(ting)f(to)h(screen.)41 b(This)28 b(o)m(v)m(errides)i
 (the)g(setting)g(of)g(all)g(prin)m(t-)630 2173 y(related)21
-b(switc)m(hes,)j(equiv)-5 b(alen)m(t)22 b(to)f Fn(-H)30
-b(-M)g(-m)19 b FD(when)h(in)g(single-\014le)i(prin)m(ting)e(mo)s(de.)37
-b(When)630 2283 y(in)m(v)m(ok)m(ed)k(with)e Fy(-R)g FD(\(see)i(Section)
+b(switc)m(hes,)j(equiv)-5 b(alen)m(t)22 b(to)f Fo(-H)30
+b(-M)g(-m)19 b FE(when)h(in)g(single-\014le)i(prin)m(ting)e(mo)s(de.)37
+b(When)630 2283 y(in)m(v)m(ok)m(ed)k(with)e Fz(-R)g FE(\(see)i(Section)
 f(3.8)h([Retaining)g(Retriev)m(ed)g(Files],)i(page)e(35\),)i
-Fy(ncks)630 2393 y FD(automatically)36 b(sets)e Fy(-q)p
-FD(.)49 b(This)32 b(allo)m(ws)j Fy(ncks)d FD(to)i(retriev)m(e)g(remote)
+Fz(ncks)630 2393 y FE(automatically)36 b(sets)e Fz(-q)p
+FE(.)49 b(This)32 b(allo)m(ws)j Fz(ncks)d FE(to)i(retriev)m(e)g(remote)
 g(\014les)g(without)f(auto-)630 2502 y(matically)f(trying)f(to)g(prin)m
-(t)f(them.)41 b(Also)31 b(`)p Fy(--quench)p FD('.)150
-2669 y(`)p Fy(--rad)p FD(')190 b(Retain)22 b(all)f(dimensions.)37
-b(When)20 b(in)m(v)m(ok)m(ed)j(with)d Fy(--rad)f FD(\(Retain)j(All)g
-(Dimensions\),)h Fy(ncks)630 2779 y FD(copies)30 b(eac)m(h)h(dimension)
+(t)f(them.)41 b(Also)31 b(`)p Fz(--quench)p FE('.)150
+2669 y(`)p Fz(--rad)p FE(')190 b(Retain)22 b(all)f(dimensions.)37
+b(When)20 b(in)m(v)m(ok)m(ed)j(with)d Fz(--rad)f FE(\(Retain)j(All)g
+(Dimensions\),)h Fz(ncks)630 2779 y FE(copies)30 b(eac)m(h)h(dimension)
 d(in)h(the)h(input)e(\014le)h(to)h(the)g(output)f(\014le,)h(regardless)
 f(of)h(whether)630 2889 y(the)40 b(dimension)g(is)g(utilized)g(b)m(y)g
-(an)m(y)g(v)-5 b(ariables.)71 b(Normally)40 b Fy(ncks)f
-FD(discards)h(\\orphan)630 2998 y(dimensions",)23 b(i.e.,)h(dimensions)
+(an)m(y)g(v)-5 b(ariables.)71 b(Normally)40 b Fz(ncks)f
+FE(discards)h(\\orphan)630 2998 y(dimensions",)23 b(i.e.,)h(dimensions)
 19 b(not)i(referenced)g(b)m(y)g(an)m(y)g(v)-5 b(ariables.)38
 b(This)20 b(switc)m(h)h(allo)m(ws)630 3108 y(users)42
 b(to)h(k)m(eep)h(non-referenced)e(dimensions)g(in)g(the)h(w)m(ork\015o)
 m(w.)78 b(When)42 b(in)m(v)m(ok)m(ed)i(in)630 3217 y(prin)m(ting)27
 b(mo)s(de,)h(causes)g(orphaned)f(dimensions)g(to)h(b)s(e)f(prin)m(ted)g
 (\(they)i(are)f(not)f(prin)m(ted)630 3327 y(b)m(y)37
-b(default\).)61 b(Also)37 b(`)p Fy(--retain_all_dimensions)p
-FD(',)c(`)p Fy(--orphan_dimensions)p FD(',)i(and)630
-3437 y(`)p Fy(--rph_dmn)p FD('.)150 3604 y(`)p Fy(-s)30
-b Fn(format)p FD(')630 3713 y(String)51 b(format)g(for)g(text)h
+b(default\).)61 b(Also)37 b(`)p Fz(--retain_all_dimensions)p
+FE(',)c(`)p Fz(--orphan_dimensions)p FE(',)i(and)630
+3437 y(`)p Fz(--rph_dmn)p FE('.)150 3604 y(`)p Fz(-s)30
+b Fo(format)p FE(')630 3713 y(String)51 b(format)g(for)g(text)h
 (output.)103 b(Accepts)52 b(C)30 b(language)53 b(escap)s(e)e(sequences)
-h(and)630 3823 y Fy(printf\(\))28 b FD(formats.)41 b(Also)31
-b(`)p Fy(--string)p FD(')e(and)g(`)p Fy(--sng_fmt)p FD('.)150
-3990 y(`)p Fy(--secret)p FD(')630 4100 y(Prin)m(t)37
-b(summary)g(of)h Fy(ncks)e FD(hidden)g(features.)62 b(These)38
+h(and)630 3823 y Fz(printf\(\))28 b FE(formats.)41 b(Also)31
+b(`)p Fz(--string)p FE(')e(and)g(`)p Fz(--sng_fmt)p FE('.)150
+3990 y(`)p Fz(--secret)p FE(')630 4100 y(Prin)m(t)37
+b(summary)g(of)h Fz(ncks)e FE(hidden)g(features.)62 b(These)38
 b(hidden)e(or)h(secret)i(features)f(are)630 4209 y(used)d(mainly)h(b)m
 (y)g(dev)m(elop)s(ers.)58 b(They)36 b(are)g(not)g(supp)s(orted)e(for)i
 (general)h(use)f(and)f(ma)m(y)630 4319 y(c)m(hange)26
 b(at)f(an)m(y)g(time.)39 b(This)24 b(demonstrates)g(conclusiv)m(ely)j
 (that)e(I)f(cannot)h(k)m(eep)g(a)g(secret.)630 4429 y(Also)31
-b(`)p Fy(--ssh)p FD(')e(and)h(`)p Fy(--scr)p FD('.)150
-4596 y(`)p Fy(-u)p FD(')334 b(T)-8 b(oggle)31 b(the)e(prin)m(ting)f(of)
-h(a)g(v)-5 b(ariable's)29 b Fy(units)f FD(attribute,)i(if)e(an)m(y)-8
+b(`)p Fz(--ssh)p FE(')e(and)h(`)p Fz(--scr)p FE('.)150
+4596 y(`)p Fz(-u)p FE(')334 b(T)-8 b(oggle)31 b(the)e(prin)m(ting)f(of)
+h(a)g(v)-5 b(ariable's)29 b Fz(units)f FE(attribute,)i(if)e(an)m(y)-8
 b(,)30 b(with)f(its)g(v)-5 b(alues.)40 b(Also)630 4706
-y(`)p Fy(--units)p FD('.)150 4873 y(`)p Fy(-V)p FD(')334
+y(`)p Fz(--units)p FE('.)150 4873 y(`)p Fz(-V)p FE(')334
 b(Prin)m(t)27 b(v)-5 b(ariable)28 b(v)-5 b(alues)28 b(only)-8
 b(.)40 b(Do)28 b(not)f(prin)m(t)g(v)-5 b(ariable)28 b(and)f(dimension)g
 (names,)h(indices,)630 4982 y(and)i(co)s(ordinate)h(v)-5
 b(alues)31 b(when)e(prin)m(ting)h(arra)m(ys.)870 5121
-y Fy(zender at roulee:~$)43 b(ncks)k(-V)g(-v)g(three_dmn_rec_var)c(-C)48
+y Fz(zender at roulee:~$)43 b(ncks)k(-V)g(-v)g(three_dmn_rec_var)c(-C)48
 b(-H)f(~/nco/data/in.nc)870 5230 y(1)870 5340 y(...)p
 eop end
-%%Page: 183 189
-TeXDict begin 183 188 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(183)630
-299 y(See)35 b(also)h(the)f(`)p Fy(-Q)p FD(')g(option,)h(whic)m(h)f
-(prin)m(ts)f(v)-5 b(ariable)36 b(names)e(and)g(indices,)j(but)d(not)h
-(di-)630 408 y(mension)c(names,)h(indices,)h(or)e(co)s(ordinate)i(v)-5
+%%Page: 195 201
+TeXDict begin 195 200 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(195)630 299 y(See)35
+b(also)h(the)f(`)p Fz(-Q)p FE(')g(option,)h(whic)m(h)f(prin)m(ts)f(v)-5
+b(ariable)36 b(names)e(and)g(indices,)j(but)d(not)h(di-)630
+408 y(mension)c(names,)h(indices,)h(or)e(co)s(ordinate)i(v)-5
 b(alues)32 b(when)e(prin)m(ting)i(arra)m(ys.)44 b(Using)32
-b(`)p Fy(-V)p FD(')630 518 y(is)e(the)h(same)g(as)f(sp)s(ecifying)h(`)p
-Fy(-Q)f(--no_nm_prn)p FD('.)150 664 y(`)p Fy(--xml,)f(--ncml)p
-FD(')630 774 y(As)39 b(of)h FC(NCO)f FD(v)m(ersion)h(4.3.3)h(\(July)-8
-b(,)42 b(2013\),)i Fy(ncks)39 b FD(can)g(prin)m(t)g(extracted)i
-(metadata)g(to)630 883 y(screen)36 b(\(i.e.,)k Fy(stdout)p
-FD(\))34 b(as)j FC(XML)f FD(in)g FC(NcML)p FD(,)i(the)f(netCDF)f
-(Markup)g(Language.)59 b Fy(ncks)630 993 y FD(supp)s(orts)36
-b(for)i FC(XML)g FD(more)h(completely)g(than)f(of)g(`)p
-Fy(ncdump)29 b(-x)p FD('.)64 b(With)38 b Fy(ncks)f FD(one)i(can)630
+b(`)p Fz(-V)p FE(')630 518 y(is)e(the)h(same)g(as)f(sp)s(ecifying)h(`)p
+Fz(-Q)f(--no_nm_prn)p FE('.)150 664 y(`)p Fz(--xml,)f(--ncml)p
+FE(')630 774 y(As)39 b(of)h FD(NCO)f FE(v)m(ersion)h(4.3.3)h(\(July)-8
+b(,)42 b(2013\),)i Fz(ncks)39 b FE(can)g(prin)m(t)g(extracted)i
+(metadata)g(to)630 883 y(screen)36 b(\(i.e.,)k Fz(stdout)p
+FE(\))34 b(as)j FD(XML)f FE(in)g FD(NcML)p FE(,)i(the)f(netCDF)f
+(Markup)g(Language.)59 b Fz(ncks)630 993 y FE(supp)s(orts)36
+b(for)i FD(XML)g FE(more)h(completely)g(than)f(of)g(`)p
+Fz(ncdump)29 b(-x)p FE('.)64 b(With)38 b Fz(ncks)f FE(one)i(can)630
 1103 y(translate)j(en)m(tire)g(netCDF3)g(and)f(netCDF4)h(\014les)f(in)m
-(to)h FC(NcML)p FD(,)i(including)c(metadata)630 1212
-y(and)30 b(data,)i(using)e(all)h FC(NCO)p FD('s)g(subsetting)f(and)g(h)
+(to)h FD(NcML)p FE(,)i(including)c(metadata)630 1212
+y(and)30 b(data,)i(using)e(all)h FD(NCO)p FE('s)g(subsetting)f(and)g(h)
 m(yp)s(erslabbing)g(capabilities.)43 b(Compare)630 1322
-y Fy(ncks)29 b FD(\\traditional")k(with)d FC(XML)h FD(prin)m(ting:)870
-1450 y Fy(zender at roulee:~$)43 b(ncks)k(-v)g(one)g(~/nco/data/in.nc)870
+y Fz(ncks)29 b FE(\\traditional")k(with)d FD(XML)h FE(prin)m(ting:)870
+1450 y Fz(zender at roulee:~$)43 b(ncks)k(-v)g(one)g(~/nco/data/in.nc)870
 1559 y(one:)g(type)f(NC_FLOAT,)g(0)h(dimensions,)e(1)i(attribute,)e
 (chunked?)h(no,)h(compressed?)d(no,)j(packed?)f(no)870
 1669 y(one)h(size)g(\(RAM\))f(=)h(1*sizeof\(NC_FLOAT\))c(=)48
@@ -26860,48 +28050,48 @@ b(1*4)f(=)g(4)g(bytes)870 1778 y(one)g(attribute)e(0:)i(long_name,)e
 (nco)o(/dat)o(a/in)o(.nc)o(">)965 2545 y(<variable)k(name="one")f
 (type="float")f(shape="">)1061 2655 y(<attribute)h(name="long_name")e
 (separator="*")h(value="one")h(/>)1061 2765 y(<values>1.</values>)965
-2874 y(</variable>)870 2984 y(</netcdf>)630 3112 y FC(XML)p
-FD(-mo)s(de)c(prin)m(ts)f(v)-5 b(ariable)42 b(metadata)g(and,)h(as)e
-(of)g FC(NCO)g FD(v)m(ersion)g(4.3.7)h(\(Octob)s(er,)630
+2874 y(</variable>)870 2984 y(</netcdf>)630 3112 y FD(XML)p
+FE(-mo)s(de)c(prin)m(ts)f(v)-5 b(ariable)42 b(metadata)g(and,)h(as)e
+(of)g FD(NCO)g FE(v)m(ersion)g(4.3.7)h(\(Octob)s(er,)630
 3221 y(2013\),)c(v)-5 b(ariable)35 b(data)g(and,)h(as)e(of)h
-FC(NCO)f FD(v)m(ersion)h(4.4.0)i(\(Jan)m(uary)-8 b(,)36
+FD(NCO)f FE(v)m(ersion)h(4.4.0)i(\(Jan)m(uary)-8 b(,)36
 b(2014\),)i(hidden)33 b(at-)630 3331 y(tributes.)39 b(That)25
-b FC(nc)n(ks)g FD(pro)s(duces)f(correct)i FC(NcML)g FD(translations)g
-(of)f FC(CDM)h FD(\014les)f(for)h(all)g(sup-)630 3440
+b FD(nc)n(ks)g FE(pro)s(duces)f(correct)i FD(NcML)g FE(translations)g
+(of)f FD(CDM)h FE(\014les)f(for)h(all)g(sup-)630 3440
 y(p)s(orted)32 b(datat)m(yp)s(es)i(is)f(v)m(eri\014ed)g(b)m(y)g
-(comparison)g(to)g(output)g(from)f(Unidata's)i Fy(toolsUI)630
-3550 y FD(Ja)m(v)-5 b(a)31 b(program.)41 b(Please)31
+(comparison)g(to)g(output)g(from)f(Unidata's)i Fz(toolsUI)630
+3550 y FE(Ja)m(v)-5 b(a)31 b(program.)41 b(Please)31
 b(let)h(us)d(kno)m(w)i(ho)m(w)f(to)h(impro)m(v)m(e)g
-FC(XML)p FD(/)p FC(NcML)h FD(features.)630 3678 y Fy(ncks)135
-b FD(pro)m(vides)h(additional)h(options)g(to)g(con\014gure)f
-FC(NcML)g FD(output:)630 3787 y(`)p Fy(--xml_no_location)p
-FD(',)39 b(`)p Fy(--xml_spr_chr)p FD(',)h(and)f(`)p Fy(--xml_spr_nmr)p
-FD('.)67 b(Ev)m(ery)41 b FC(NcML)630 3897 y FD(con\014guration)c
-(option)h(automatically)i(triggers)e FC(NcML)f FD(prin)m(ting,)h(so)g
-(that)f(sp)s(ecifying)630 4007 y(`)p Fy(--xml)p FD(')k(in)h(addition)h
+FD(XML)p FE(/)p FD(NcML)h FE(features.)630 3678 y Fz(ncks)135
+b FE(pro)m(vides)h(additional)h(options)g(to)g(con\014gure)f
+FD(NcML)g FE(output:)630 3787 y(`)p Fz(--xml_no_location)p
+FE(',)39 b(`)p Fz(--xml_spr_chr)p FE(',)h(and)f(`)p Fz(--xml_spr_nmr)p
+FE('.)67 b(Ev)m(ery)41 b FD(NcML)630 3897 y FE(con\014guration)c
+(option)h(automatically)i(triggers)e FD(NcML)f FE(prin)m(ting,)h(so)g
+(that)f(sp)s(ecifying)630 4007 y(`)p Fz(--xml)p FE(')k(in)h(addition)h
 (to)g(a)f(con\014guration)h(option)g(is)f(redundan)m(t)f(and)h
-(unnecessary)-8 b(.)630 4116 y(The)38 b(`)p Fy(--xml_no_location)p
-FD(')d(switc)m(h)k(prev)m(en)m(ts)g(output)f(of)h(the)g
-FC(NcML)g Fy(location)d FD(el-)630 4226 y(emen)m(t.)67
+(unnecessary)-8 b(.)630 4116 y(The)38 b(`)p Fz(--xml_no_location)p
+FE(')d(switc)m(h)k(prev)m(en)m(ts)g(output)f(of)h(the)g
+FD(NcML)g Fz(location)d FE(el-)630 4226 y(emen)m(t.)67
 b(By)39 b(default)g(the)g(lo)s(cation)h(elemen)m(t)g(is)f(prin)m(ted)f
 (with)h(a)g(v)-5 b(alue)39 b(equal)g(to)h(the)630 4335
 y(lo)s(cation)46 b(of)e(the)g(input)f(dataset,)49 b(e.g.,)g
-Fy(location="/home/zender/i)o(n.n)o(c")p FD(.)75 b(The)630
-4445 y(`)p Fy(--xml_spr_chr)p FD(')35 b(and)j(`)p Fy(--xml_spr_nmr)p
-FD(')d(options)j(customize)i(the)e(strings)g(used)g(as)630
-4555 y FC(NcML)i FD(separators)g(for)g(attributes)h(and)e(v)-5
+Fz(location="/home/zender/i)o(n.n)o(c")p FE(.)75 b(The)630
+4445 y(`)p Fz(--xml_spr_chr)p FE(')35 b(and)j(`)p Fz(--xml_spr_nmr)p
+FE(')d(options)j(customize)i(the)e(strings)g(used)g(as)630
+4555 y FD(NcML)i FE(separators)g(for)g(attributes)h(and)e(v)-5
 b(ariables)40 b(of)g(c)m(haracter-t)m(yp)s(e)i(and)e(n)m(umeric-)630
 4664 y(t)m(yp)s(e,)31 b(resp)s(ectiv)m(ely)-8 b(.)42
-b(Their)30 b(default)h(separators)f(are)h Fy(*)f FD(and)g(\\)h(")g(\(a)
-g(space\):)870 4792 y Fy(zender at roulee:~$)43 b(ncks)k(--xml)f(-d)i
+b(Their)30 b(default)h(separators)f(are)h Fz(*)f FE(and)g(\\)h(")g(\(a)
+g(space\):)870 4792 y Fz(zender at roulee:~$)43 b(ncks)k(--xml)f(-d)i
 (time,0,3)d(-v)i(two_dmn_rec_var_sng)c(in.nc)870 4902
 y(...)1013 5011 y(<values)j(separator="*">abc*bcd*cd)o(e*de)o(f</v)o
 (alu)o(es>)918 5121 y(...)918 5230 y(zender at roulee:~$)d(ncks)k
 (--xml_spr_chr=',)c(')48 b(-v)f(two_dmn_rec_var_sng)42
 b(in.nc)870 5340 y(...)p eop end
-%%Page: 184 190
-TeXDict begin 184 189 bop 150 -116 a FD(184)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)870 299 y Fy(<values)46 b(separator=",)e
+%%Page: 196 202
+TeXDict begin 196 201 bop 150 -116 a FE(196)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)870 299 y Fz(<values)46 b(separator=",)e
 (">abc,)i(bcd,)h(cde,)g(def,)f(efg,)h(fgh,)g(ghi,)f(hij,)h(jkl,)f
 (klm</values>)870 408 y(...)870 518 y(zender at roulee:~$)d(ncks)k(--xml)f
 (-v)i(one_dmn_rec_var)43 b(in.nc)870 628 y(...)870 737
@@ -26909,107 +28099,106 @@ y(<values>1)i(2)j(3)f(4)h(5)f(6)h(7)f(8)g(9)h(10</values>)870
 847 y(...)870 956 y(zender at roulee:~$)43 b(ncks)k(--xml_spr_nmr=',)c(')
 48 b(-v)f(one_dmn_rec_var)d(in.nc)870 1066 y(...)870
 1176 y(<values)i(separator=",)e(">1,)j(2,)g(3,)g(4,)g(5,)h(6,)f(7,)g
-(8,)g(9,)g(10</values>)870 1285 y(...)630 1424 y FD(Separator)35
+(8,)g(9,)g(10</values>)870 1285 y(...)630 1424 y FE(Separator)35
 b(elemen)m(ts)i(for)d(strings)h(are)h(a)f(thorn)m(y)g(issue.)54
 b(One)35 b(m)m(ust)g(b)s(e)f(sure)g(that)i(the)630 1534
 y(separator)31 b(elemen)m(t)h(is)f(not)g(mistak)m(en)g(as)g(a)g(p)s
-(ortion)f(of)h(the)f(string.)41 b FC(NCO)31 b FD(attempts)g(to)630
-1644 y(pro)s(duce)h(v)-5 b(alid)33 b FC(NcML)f FD(and)g(supplies)g(the)
-h(`)p Fy(--xml_spr_chr)p FD(')d(option)j(to)g(w)m(ork)g(around)630
-1753 y(an)m(y)c(di\016culties.)41 b FC(NCO)28 b FD(p)s(erforms)f
-(precautionary)i(c)m(hec)m(ks)h(with)f Fy(strstr\()p
-Fn(val)p Fy(,)p Fn(spr)p Fy(\))24 b FD(to)630 1863 y(iden)m(tify)i
-(presence)f(of)h(the)g(separator)g(string)f(\()p Fz(spr)7
-b FD(\))25 b(in)g(data)h(\()p Fz(v)-5 b(al)t FD(\))26
+(ortion)f(of)h(the)f(string.)41 b FD(NCO)31 b FE(attempts)g(to)630
+1644 y(pro)s(duce)h(v)-5 b(alid)33 b FD(NcML)f FE(and)g(supplies)g(the)
+h(`)p Fz(--xml_spr_chr)p FE(')d(option)j(to)g(w)m(ork)g(around)630
+1753 y(an)m(y)c(di\016culties.)41 b FD(NCO)28 b FE(p)s(erforms)f
+(precautionary)i(c)m(hec)m(ks)h(with)f Fz(strstr\()p
+Fo(val)p Fz(,)p Fo(spr)p Fz(\))24 b FE(to)630 1863 y(iden)m(tify)i
+(presence)f(of)h(the)g(separator)g(string)f(\()p FA(spr)7
+b FE(\))25 b(in)g(data)h(\()p FA(v)-5 b(al)t FE(\))26
 b(and,)g(when)f(it)h(detects)630 1972 y(a)34 b(matc)m(h,)i
 (automatically)g(switc)m(hes)e(to)h(a)f(bac)m(kup)f(separator)h(string)
-g(\()p Fy(*|*)p FD(\).)50 b(Ho)m(w)m(ev)m(er)630 2082
-y(limitations)35 b(of)e Fy(strstr\(\))d FD(ma)m(y)k(lead)f(to)h(false)f
+g(\()p Fz(*|*)p FE(\).)50 b(Ho)m(w)m(ev)m(er)630 2082
+y(limitations)35 b(of)e Fz(strstr\(\))d FE(ma)m(y)k(lead)f(to)h(false)f
 (negativ)m(es)i(when)d(the)h(separator)h(string)630 2192
 y(o)s(ccurs)43 b(in)g(data)h(b)s(ey)m(ond)e(the)h(\014rst)g(string)g
-(in)g(m)m(ulti-dimensional)h Fy(NC_CHAR)d FD(arra)m(ys.)630
+(in)g(m)m(ulti-dimensional)h Fz(NC_CHAR)d FE(arra)m(ys.)630
 2301 y(Hence,)48 b(results)c(ma)m(y)g(b)s(e)f(am)m(biguous)h(to)h(NcML)
 g(parsers.)80 b(If)43 b(problems)g(arise,)48 b(use)630
-2411 y(`)p Fy(--xml_spr_chr)p FD(')34 b(to)k(sp)s(ecify)e(a)i(m)m
+2411 y(`)p Fz(--xml_spr_chr)p FE(')34 b(to)k(sp)s(ecify)e(a)i(m)m
 (ulti-c)m(haracter)h(separator)f(that)g(do)s(es)e(not)i(app)s(ear)630
 2520 y(in)c(the)h(string)f(arra)m(y)h(and)e(that)i(do)s(es)f(not)h
 (include)f(an)g(NcML)h(formatting)g(c)m(haracters)630
 2630 y(\(e.g.,)d(commas,)g(angles,)f(quotes\).)150 2839
-y Fu(4.7.2)63 b(Filters)41 b(for)h Fl(ncks)150 2986 y
-FD(W)-8 b(e)34 b(encourage)g(the)f(use)g(of)g(standard)f
-FC(UNIX)i FD(pip)s(es)e(and)g(\014lters)h(to)g(narro)m(w)g(the)g(v)m
-(erb)s(ose)g(output)g(of)150 3095 y Fy(ncks)22 b FD(in)m(to)h(more)g
+y Fv(4.7.2)63 b(Filters)41 b(for)h Fm(ncks)150 2986 y
+FE(W)-8 b(e)34 b(encourage)g(the)f(use)g(of)g(standard)f
+FD(UNIX)i FE(pip)s(es)e(and)g(\014lters)h(to)g(narro)m(w)g(the)g(v)m
+(erb)s(ose)g(output)g(of)150 3095 y Fz(ncks)22 b FE(in)m(to)h(more)g
 (precise)g(targets.)40 b(F)-8 b(or)23 b(example,)i(to)f(obtain)f(an)g
 (uncluttered)f(listing)i(of)e(the)h(v)-5 b(ariables)150
-3205 y(in)30 b(a)h(\014le)f(try)390 3369 y Fy(ncks)47
+3205 y(in)30 b(a)h(\014le)f(try)390 3369 y Fz(ncks)47
 b(-m)g(in.nc)f(|)i(grep)e(-E)h(':)h(type')e(|)h(cut)g(-f)h(1)f(-d)g(')h
-(')f(|)h(sed)e('s/://')g(|)i(sort)275 3533 y FD(A)d(Bash)g(user)g
+(')f(|)h(sed)e('s/://')g(|)i(sort)275 3533 y FE(A)d(Bash)g(user)g
 (could)g(alias)i(the)e(previous)g(\014lter)g(to)h(the)g(shell)f
-(command)g Fy(nclist)f FD(as)i(sho)m(wn)150 3643 y(b)s(elo)m(w.)65
+(command)g Fz(nclist)f FE(as)i(sho)m(wn)150 3643 y(b)s(elo)m(w.)65
 b(More)39 b(complex)g(examples)g(could)g(in)m(v)m(olv)m(e)h(command)e
 (line)h(argumen)m(ts.)65 b(F)-8 b(or)39 b(example,)j(a)150
 3752 y(user)26 b(ma)m(y)h(frequen)m(tly)f(b)s(e)g(in)m(terested)h(in)f
 (obtaining)h(the)g(v)-5 b(alue)27 b(of)f(an)g(attribute,)i(e.g.,)h(for)
 d(textual)i(\014le)150 3862 y(examination)38 b(or)e(for)g(passing)g(to)
 h(another)g(shell)f(command.)59 b(Sa)m(y)37 b(the)f(attribute)h(is)g
-Fy(purpose)p FD(,)f(the)150 3971 y(v)-5 b(ariable)28
-b(is)f Fy(z)p FD(,)h(and)e(the)i(\014le)f(is)g Fy(in.nc)p
-FD(.)38 b(In)26 b(this)h(example,)i Fy(ncks)g(-m)h(-v)g(z)d
-FD(is)g(to)s(o)h(v)m(erb)s(ose)f(so)g(a)h(robust)150
-4081 y Fy(grep)h FD(and)h Fy(cut)f FD(\014lter)i(is)f(desirable,)h(suc)
-m(h)f(as)390 4245 y Fy(ncks)47 b(-M)g(-m)g(in.nc)f(|)i(grep)e(-E)i(-i)f
+Fz(purpose)p FE(,)f(the)150 3971 y(v)-5 b(ariable)28
+b(is)f Fz(z)p FE(,)h(and)e(the)i(\014le)f(is)g Fz(in.nc)p
+FE(.)38 b(In)26 b(this)h(example,)i Fz(ncks)g(-m)h(-v)g(z)d
+FE(is)g(to)s(o)h(v)m(erb)s(ose)f(so)g(a)h(robust)150
+4081 y Fz(grep)h FE(and)h Fz(cut)f FE(\014lter)i(is)f(desirable,)h(suc)
+m(h)f(as)390 4245 y Fz(ncks)47 b(-M)g(-m)g(in.nc)f(|)i(grep)e(-E)i(-i)f
 ("^z)g(attribute)e([0-9]+:)h(purpose")f(|)j(cut)f(-f)g(11-)g(-d)g(')g
-(')h(|)f(sort)275 4409 y FD(The)27 b(\014lters)h(are)h(clearly)h(to)s
+(')h(|)f(sort)275 4409 y FE(The)27 b(\014lters)h(are)h(clearly)h(to)s
 (o)f(complex)g(to)g(remem)m(b)s(er)e(on-the-\015y)i(so)f(the)h(en)m
 (tire)g(pro)s(cedure)e(could)150 4519 y(b)s(e)j(implemen)m(ted)h(as)f
 (a)h(shell)g(command)f(or)g(function)g(called,)i(sa)m(y)-8
-b(,)32 b Fy(ncattget)390 4683 y(function)46 b(ncattget)f({)j(ncks)e(-M)
+b(,)32 b Fz(ncattget)390 4683 y(function)46 b(ncattget)f({)j(ncks)e(-M)
 h(-m)h(${3})e(|)i(grep)e(-E)h(-i)h("^${2})e(attribute)f([0-9]+:)h
 (${1}")g(|)i(cut)e(-f)i(11-)f(-d)g(')g(')h(|)f(sort)g(;)g(})275
-4847 y FD(The)26 b(shell)i Fy(ncattget)d FD(is)j(in)m(v)m(ok)m(ed)g
+4847 y FE(The)26 b(shell)i Fz(ncattget)d FE(is)j(in)m(v)m(ok)m(ed)g
 (with)g(three)f(arugmen)m(ts)h(that)g(are,)g(in)g(order,)f(the)h(names)
 f(of)h(the)150 4957 y(attribute,)j(v)-5 b(ariable,)30
 b(and)f(\014le)h(to)g(examine.)41 b(Global)30 b(attributes)g(are)g
 (indicated)g(b)m(y)f(using)g(a)h(v)-5 b(ariable)150 5066
-y(name)30 b(of)h Fy(global)p FD(.)39 b(This)30 b(de\014nition)g(yields)
-g(the)h(follo)m(wing)h(results)390 5230 y Fy(\045)47
+y(name)30 b(of)h Fz(global)p FE(.)39 b(This)30 b(de\014nition)g(yields)
+g(the)h(follo)m(wing)h(results)390 5230 y Fz(\045)47
 b(ncattget)f(purpose)g(z)h(in.nc)390 5340 y(Height)f(stored)g(with)h(a)
 g(monotonically)d(increasing)h(coordinate)p eop end
-%%Page: 185 191
-TeXDict begin 185 190 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(185)390
-299 y Fy(\045)47 b(ncattget)f(Purpose)g(Z)h(in.nc)390
-408 y(Height)f(stored)g(with)h(a)g(monotonically)d(increasing)h
-(coordinate)390 518 y(\045)i(ncattget)f(history)g(z)h(in.nc)390
-628 y(\045)g(ncattget)f(history)g(global)g(in.nc)390
-737 y(History)g(global)g(attribute.)275 902 y FD(Note)30
-b(that)f(case)h(sensitivit)m(y)g(has)e(b)s(een)g(turned)g(o\013)h(for)g
-(the)f(v)-5 b(ariable)30 b(and)e(attribute)i(names)e(\(and)150
-1011 y(could)34 b(b)s(e)g(turned)f(on)h(b)m(y)h(remo)m(ving)g(the)f(`)p
-Fy(-i)p FD(')g(switc)m(h)h(to)g Fy(grep)p FD(\).)52 b(F)-8
-b(urthermore,)35 b(extended)g(regular)150 1121 y(expressions)22
-b(ma)m(y)g(b)s(e)g(used)f(for)h(b)s(oth)f(the)h(v)-5
-b(ariable)23 b(and)f(attribute)g(names.)38 b(The)22 b(next)g(t)m(w)m(o)
-h(commands)150 1230 y(illustrate)29 b(this)g(b)m(y)f(searc)m(hing)h
-(for)f(the)g(v)-5 b(alues)29 b(of)g(attribute)g Fy(purpose)d
-FD(in)i(all)h(v)-5 b(ariables,)30 b(and)d(then)h(for)150
-1340 y(all)j(attributes)g(of)g(the)f(v)-5 b(ariable)31
-b Fy(z)p FD(:)390 1504 y Fy(\045)47 b(ncattget)f(purpose)g(.+)h(in.nc)
-390 1614 y(1-D)g(latitude)e(coordinate)g(referred)h(to)h(by)g(geodesic)
-f(grid)h(variables)390 1724 y(1-D)g(longitude)e(coordinate)g(referred)h
-(to)h(by)g(geodesic)f(grid)g(variables)390 1833 y(...)390
-1943 y(\045)h(ncattget)f(.+)h(Z)h(in.nc)390 2052 y(Height)390
-2162 y(Height)e(stored)g(with)h(a)g(monotonically)d(increasing)h
-(coordinate)390 2271 y(meter)275 2436 y FD(Extended)38
-b(\014lters)h(are)g(b)s(est)g(stored)g(as)g(shell)g(commands)g(if)f
-(they)i(are)f(used)f(frequen)m(tly)-8 b(.)67 b(Shell)150
-2545 y(commands)27 b(ma)m(y)h(b)s(e)f(re-used)f(when)h(they)g(are)h
-(de\014ned)e(in)h(shell)h(con\014guration)f(\014les.)40
-b(These)27 b(\014les)h(are)150 2655 y(usually)35 b(named)g
-Fy(.bashrc)p FD(,)f Fy(.cshrc)p FD(,)h(and)f Fy(.profile)f
-FD(for)i(the)h(Bash,)g(Csh,)g(and)e(Sh)g(shells,)j(resp)s(ec-)150
-2765 y(tiv)m(ely)-8 b(.)390 2929 y Fy(#)47 b(NB:)g(Untested)f(on)h
-(Csh,)g(Ksh,)f(Sh,)h(Zsh!)g(Send)g(us)g(feedback!)390
+%%Page: 197 203
+TeXDict begin 197 202 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(197)390 299 y Fz(\045)47
+b(ncattget)f(Purpose)g(Z)h(in.nc)390 408 y(Height)f(stored)g(with)h(a)g
+(monotonically)d(increasing)h(coordinate)390 518 y(\045)i(ncattget)f
+(history)g(z)h(in.nc)390 628 y(\045)g(ncattget)f(history)g(global)g
+(in.nc)390 737 y(History)g(global)g(attribute.)275 902
+y FE(Note)30 b(that)f(case)h(sensitivit)m(y)g(has)e(b)s(een)g(turned)g
+(o\013)h(for)g(the)f(v)-5 b(ariable)30 b(and)e(attribute)i(names)e
+(\(and)150 1011 y(could)34 b(b)s(e)g(turned)f(on)h(b)m(y)h(remo)m(ving)
+g(the)f(`)p Fz(-i)p FE(')g(switc)m(h)h(to)g Fz(grep)p
+FE(\).)52 b(F)-8 b(urthermore,)35 b(extended)g(regular)150
+1121 y(expressions)22 b(ma)m(y)g(b)s(e)g(used)f(for)h(b)s(oth)f(the)h
+(v)-5 b(ariable)23 b(and)f(attribute)g(names.)38 b(The)22
+b(next)g(t)m(w)m(o)h(commands)150 1230 y(illustrate)29
+b(this)g(b)m(y)f(searc)m(hing)h(for)f(the)g(v)-5 b(alues)29
+b(of)g(attribute)g Fz(purpose)d FE(in)i(all)h(v)-5 b(ariables,)30
+b(and)d(then)h(for)150 1340 y(all)j(attributes)g(of)g(the)f(v)-5
+b(ariable)31 b Fz(z)p FE(:)390 1504 y Fz(\045)47 b(ncattget)f(purpose)g
+(.+)h(in.nc)390 1614 y(1-D)g(latitude)e(coordinate)g(referred)h(to)h
+(by)g(geodesic)f(grid)h(variables)390 1724 y(1-D)g(longitude)e
+(coordinate)g(referred)h(to)h(by)g(geodesic)f(grid)g(variables)390
+1833 y(...)390 1943 y(\045)h(ncattget)f(.+)h(Z)h(in.nc)390
+2052 y(Height)390 2162 y(Height)e(stored)g(with)h(a)g(monotonically)d
+(increasing)h(coordinate)390 2271 y(meter)275 2436 y
+FE(Extended)38 b(\014lters)h(are)g(b)s(est)g(stored)g(as)g(shell)g
+(commands)g(if)f(they)i(are)f(used)f(frequen)m(tly)-8
+b(.)67 b(Shell)150 2545 y(commands)27 b(ma)m(y)h(b)s(e)f(re-used)f
+(when)h(they)g(are)h(de\014ned)e(in)h(shell)h(con\014guration)f
+(\014les.)40 b(These)27 b(\014les)h(are)150 2655 y(usually)35
+b(named)g Fz(.bashrc)p FE(,)f Fz(.cshrc)p FE(,)h(and)f
+Fz(.profile)f FE(for)i(the)h(Bash,)g(Csh,)g(and)e(Sh)g(shells,)j(resp)s
+(ec-)150 2765 y(tiv)m(ely)-8 b(.)390 2929 y Fz(#)47 b(NB:)g(Untested)f
+(on)h(Csh,)g(Ksh,)f(Sh,)h(Zsh!)g(Send)g(us)g(feedback!)390
 3039 y(#)g(Bash)g(shell)f(\(/bin/bash\))f(users)i(place)f(these)g(in)h
 (.bashrc)390 3148 y(#)g(ncattget)f($att_nm)g($var_nm)g($fl_nm)g(:)h
 (What)g(attributes)e(does)h(variable)g(have?)390 3258
@@ -27052,9 +28241,9 @@ g("foo_min=${1}.min\(\);foo_ma)o(x=${)o(1}.)o(max\()o(\);pr)o(int)o
 b(to)47 b(\\"\);print\(foo_max,\\"\045f\\"\)")41 b(${2})47
 b(~/foo.nc)e(;)j(})390 5340 y(#)f(ncmode)g($var_nm)e($fl_nm)h(:)i(What)
 f(is)g(mode)f(of)i(variable?)p eop end
-%%Page: 186 192
-TeXDict begin 186 191 bop 150 -116 a FD(186)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(function)46 b(ncmode)g({)h
+%%Page: 198 204
+TeXDict begin 198 203 bop 150 -116 a FE(198)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(function)46 b(ncmode)g({)h
 (ncap2)f(-O)i(-C)f(-v)g(-s)g("foo=gsl_stats_median_fro)o(m_so)o(rte)o
 (d_da)o(ta\($)o({1})o(.sor)o(t\(\))o(\);pr)o(int\()o(foo)o(\)")42
 b(${2})k(~/foo.nc)g(|)h(cut)g(-f)g(3-)h(-d)f(')g(')h(;)f(})390
@@ -27081,39 +28270,39 @@ y(nclist\(\))e({)h(ncks)g(-m)g(${1})f(|)i(grep)f(-E)g(':)g(type')f(|)i
 (cut)f(-f)g(1)g(-d)g(')h(')f(|)h(sed)f('s/://')f(|)h(sort)g(;)g(})390
 1614 y(ncrecsz\(\))e({)j(ncks)e(-M)i(${1})e(|)i(grep)e(-E)h(-i)h
 ("^Record)d(dimension:")g(|)i(cut)g(-f)g(8-)h(-d)f(')g(')h(;)f(})150
-1773 y FD(EXAMPLES)275 1933 y(View)30 b(all)i(data)f(in)f(netCDF)h
-Fy(in.nc)p FD(,)e(prin)m(ted)h(with)g(F)-8 b(ortran)31
-b(indexing)f(con)m(v)m(en)m(tions:)390 2092 y Fy(ncks)47
-b(-F)g(in.nc)275 2252 y FD(Cop)m(y)30 b(the)g(netCDF)h(\014le)g
-Fy(in.nc)e FD(to)i(\014le)f Fy(out.nc)p FD(.)390 2411
-y Fy(ncks)47 b(in.nc)f(out.nc)275 2570 y FD(No)m(w)22
-b(the)f(\014le)h Fy(out.nc)e FD(con)m(tains)i(all)h(the)e(data)i(from)e
-Fy(in.nc)p FD(.)36 b(There)21 b(are,)j(ho)m(w)m(ev)m(er,)h(t)m(w)m(o)e
-(di\013erences)150 2680 y(b)s(et)m(w)m(een)32 b Fy(in.nc)f
-FD(and)g Fy(out.nc)p FD(.)43 b(First,)33 b(the)f Fy(history)e
-FD(global)j(attribute)f(\(see)h(Section)g(3.35)g([History)150
-2790 y(A)m(ttribute],)28 b(page)e(98\))g(will)g(con)m(tain)g(the)f
-(command)g(used)g(to)h(create)g Fy(out.nc)p FD(.)38 b(Second,)26
-b(the)f(v)-5 b(ariables)150 2899 y(in)33 b Fy(out.nc)f
-FD(will)i(b)s(e)e(de\014ned)g(in)i(alphab)s(etical)g(order.)50
+1773 y FE(EXAMPLES)275 1933 y(View)30 b(all)i(data)f(in)f(netCDF)h
+Fz(in.nc)p FE(,)e(prin)m(ted)h(with)g(F)-8 b(ortran)31
+b(indexing)f(con)m(v)m(en)m(tions:)390 2092 y Fz(ncks)47
+b(-F)g(in.nc)275 2252 y FE(Cop)m(y)30 b(the)g(netCDF)h(\014le)g
+Fz(in.nc)e FE(to)i(\014le)f Fz(out.nc)p FE(.)390 2411
+y Fz(ncks)47 b(in.nc)f(out.nc)275 2570 y FE(No)m(w)22
+b(the)f(\014le)h Fz(out.nc)e FE(con)m(tains)i(all)h(the)e(data)i(from)e
+Fz(in.nc)p FE(.)36 b(There)21 b(are,)j(ho)m(w)m(ev)m(er,)h(t)m(w)m(o)e
+(di\013erences)150 2680 y(b)s(et)m(w)m(een)32 b Fz(in.nc)f
+FE(and)g Fz(out.nc)p FE(.)43 b(First,)33 b(the)f Fz(history)e
+FE(global)j(attribute)f(\(see)h(Section)g(3.36)g([History)150
+2790 y(A)m(ttribute],)25 b(page)d(108\))h(will)e(con)m(tain)i(the)f
+(command)f(used)f(to)j(create)g Fz(out.nc)p FE(.)36 b(Second,)23
+b(the)e(v)-5 b(ariables)150 2899 y(in)33 b Fz(out.nc)f
+FE(will)i(b)s(e)e(de\014ned)g(in)i(alphab)s(etical)g(order.)50
 b(Of)32 b(course)i(the)g(in)m(ternal)g(storage)h(of)e(v)-5
 b(ariable)150 3009 y(in)29 b(a)h(netCDF)g(\014le)f(should)g(b)s(e)f
 (transparen)m(t)i(to)g(the)f(user,)h(but)e(there)i(are)g(cases)g(when)e
 (alphab)s(etizing)150 3118 y(a)j(\014le)f(is)h(useful)e(\(see)j
-(description)e(of)h Fy(-a)e FD(switc)m(h\).)275 3278
+(description)e(of)h Fz(-a)e FE(switc)m(h\).)275 3278
 y(Cop)m(y)h(all)h(global)h(attributes)f(\(and)f(no)g(v)-5
-b(ariables\))32 b(from)d Fy(in.nc)g FD(to)j Fy(out.nc)p
-FD(:)390 3437 y Fy(ncks)47 b(-A)g(-x)g(~/nco/data/in.nc)c(~/out.nc)275
-3597 y FD(The)28 b(`)p Fy(-x)p FD(')h(switc)m(h)h(tells)g
-FC(NCO)f FD(to)h(use)f(the)h(complemen)m(t)g(of)g(the)f(extraction)i
+b(ariables\))32 b(from)d Fz(in.nc)g FE(to)j Fz(out.nc)p
+FE(:)390 3437 y Fz(ncks)47 b(-A)g(-x)g(~/nco/data/in.nc)c(~/out.nc)275
+3597 y FE(The)28 b(`)p Fz(-x)p FE(')h(switc)m(h)h(tells)g
+FD(NCO)f FE(to)h(use)f(the)h(complemen)m(t)g(of)g(the)f(extraction)i
 (list)f(\(see)g(Section)g(3.11)150 3706 y([Subsetting)j(Files],)j(page)
 e(40\).)52 b(Since)33 b(no)h(extraction)h(list)f(is)g(explicitly)h(sp)s
-(eci\014ed)d(\(with)i(`)p Fy(-v)p FD('\),)h(the)150 3816
+(eci\014ed)d(\(with)i(`)p Fz(-v)p FE('\),)h(the)150 3816
 y(default)29 b(is)f(to)h(extract)h(all)f(v)-5 b(ariables.)41
 b(The)28 b(complemen)m(t)i(of)e(all)i(v)-5 b(ariables)29
 b(is)f(no)g(v)-5 b(ariables.)41 b(Without)150 3925 y(an)m(y)23
 b(v)-5 b(ariables)24 b(to)g(extract,)i(the)d(app)s(end)f(\(`)p
-Fy(-A)p FD('\))i(command)e(\(see)i(Section)g(2.4)g([App)s(ending)e(V)-8
+Fz(-A)p FE('\))i(command)e(\(see)i(Section)g(2.4)g([App)s(ending)e(V)-8
 b(ariables],)150 4035 y(page)31 b(17\))h(has)e(only)g(to)h(extract)h
 (and)e(cop)m(y)h(\(i.e.,)h(app)s(end\))d(global)j(attributes)f(to)g
 (the)g(output)f(\014le.)275 4194 y(Cop)m(y/app)s(end)25
@@ -27123,13 +28312,13 @@ b(in)f(one)g(\014le)h(to)g(v)-5 b(ariables)27 b(in)f(a)g(second)h
 (\014les)f(\(as)g(opp)s(osed)g(to)g(prin)m(ting)g(them\),)j(the)e(cop)m
 (ying)g(of)150 4413 y(data,)28 b(v)-5 b(ariable)27 b(metadata,)h(and)e
 (global/group)h(metadata)g(are)g(no)m(w)f(turned)e(OFF)j(b)m(y)f(`)p
-Fy(-H)p FD(',)h(`)p Fy(-m)p FD(',)g(and)150 4523 y(`)p
-Fy(-M)p FD(',)k(resp)s(ectiv)m(ely)-8 b(.)45 b(This)30
+Fz(-H)p FE(',)h(`)p Fz(-m)p FE(',)g(and)150 4523 y(`)p
+Fz(-M)p FE(',)k(resp)s(ectiv)m(ely)-8 b(.)45 b(This)30
 b(is)h(the)g(opp)s(osite)g(sense)g(in)g(whic)m(h)g(these)g(switc)m(hes)
-h(w)m(ork)f(when)f Fo(printing)40 b FD(a)150 4633 y(\014le.)i(One)30
+h(w)m(ork)f(when)f Fp(printing)40 b FE(a)150 4633 y(\014le.)i(One)30
 b(can)h(use)f(these)h(switc)m(hes)h(to)f(easily)h(replace)g(data)f(or)g
 (metadata)h(in)e(one)h(\014le)g(with)g(data)g(or)150
-4742 y(metadata)h(from)e(another:)390 4902 y Fy(#)47
+4742 y(metadata)h(from)e(another:)390 4902 y Fz(#)47
 b(Extract)f(naked)h(\(data-only\))d(copies)i(of)i(two)f(variables)390
 5011 y(ncks)g(-h)g(-M)g(-m)g(-O)g(-C)h(-v)f(one,three_dmn_rec_var)42
 b(~/nco/data/in.nc)h(~/out.nc)390 5121 y(#)k(Change)g(values)f(to)h(be)
@@ -27138,21 +28327,21 @@ g(sure)g(original)e(values)h(are)h(not)g(copied)f(in)h(following)f
 (r*=0)o(')42 b(~/nco/data/in.nc)h(~/in2.nc)390 5340 y(#)k(Append)g
 (in2.nc)f(metadata)f(\(not)i(data!\))f(to)h(out.nc)p
 eop end
-%%Page: 187 193
-TeXDict begin 187 192 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(187)390
-299 y Fy(ncks)47 b(-A)g(-C)g(-H)g(-v)g(one,three_dmn_rec_var)42
-b(~/in2.nc)k(~/out.nc)275 469 y FD(V)-8 b(ariables)37
-b(in)f Fy(out.nc)f FD(no)m(w)i(con)m(tain)h(data)f(\(not)g(metadata\))h
-(from)e Fy(in.nc)f FD(and)h(metadata)i(\(not)150 579
-y(data\))31 b(from)f Fy(in2.nc)p FD(.)275 749 y(Prin)m(t)24
-b(v)-5 b(ariable)25 b Fy(three_dmn_var)20 b FD(from)k(\014le)g
-Fy(in.nc)f FD(with)h(default)g(notations.)40 b(Next)25
-b(prin)m(t)f Fy(three_)150 859 y(dmn_var)e FD(as)i(an)f(un-annotated)h
-(text)h(column.)38 b(Then)23 b(prin)m(t)g Fy(three_dmn_var)d
-FD(signed)k(with)f(v)m(ery)h(high)150 969 y(precision.)41
-b(Finally)-8 b(,)32 b(prin)m(t)e Fy(three_dmn_var)d FD(as)j(a)h
-(comma-separated)h(list.)390 1139 y Fy(\045)47 b(ncks)g(-C)g(-v)g
+%%Page: 199 205
+TeXDict begin 199 204 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(199)390 299 y Fz(ncks)47
+b(-A)g(-C)g(-H)g(-v)g(one,three_dmn_rec_var)42 b(~/in2.nc)k(~/out.nc)
+275 469 y FE(V)-8 b(ariables)37 b(in)f Fz(out.nc)f FE(no)m(w)i(con)m
+(tain)h(data)f(\(not)g(metadata\))h(from)e Fz(in.nc)f
+FE(and)h(metadata)i(\(not)150 579 y(data\))31 b(from)f
+Fz(in2.nc)p FE(.)275 749 y(Prin)m(t)24 b(v)-5 b(ariable)25
+b Fz(three_dmn_var)20 b FE(from)k(\014le)g Fz(in.nc)f
+FE(with)h(default)g(notations.)40 b(Next)25 b(prin)m(t)f
+Fz(three_)150 859 y(dmn_var)e FE(as)i(an)f(un-annotated)h(text)h
+(column.)38 b(Then)23 b(prin)m(t)g Fz(three_dmn_var)d
+FE(signed)k(with)f(v)m(ery)h(high)150 969 y(precision.)41
+b(Finally)-8 b(,)32 b(prin)m(t)e Fz(three_dmn_var)d FE(as)j(a)h
+(comma-separated)h(list.)390 1139 y Fz(\045)47 b(ncks)g(-C)g(-v)g
 (three_dmn_var)e(in.nc)390 1249 y(lat[0]=-90)g(lev[0]=100)g(lon[0]=0)h
 (three_dmn_var[0]=0)390 1358 y(lat[0]=-90)f(lev[0]=100)g(lon[1]=90)g
 (three_dmn_var[1]=1)390 1468 y(...)390 1577 y(lat[1]=90)g(lev[2]=1000)g
@@ -27164,37 +28353,37 @@ y(23.000000)390 2235 y(\045)j(ncks)g(-s)g('\045+16.10f\\n')e(-C)i(-v)g
 y(+1.0000000000)390 2564 y(...)485 2673 y(+23.0000000000)390
 2783 y(\045)j(ncks)g(-s)g('\045f,)g(')g(-C)h(-v)f(three_dmn_var)d
 (in.nc)390 2892 y(0.000000,)h(1.000000,)h(...,)g(23.000000,)150
-3063 y FD(Programmers)24 b(will)g(recognize)i(these)f(as)f(the)g(v)m
-(enerable)i(C)j(language)d Fy(printf\(\))c FD(formatting)j(strings.)150
+3063 y FE(Programmers)24 b(will)g(recognize)i(these)f(as)f(the)g(v)m
+(enerable)i(C)j(language)d Fz(printf\(\))c FE(formatting)j(strings.)150
 3173 y(The)37 b(second)g(and)g(third)g(options)h(are)f(useful)g(when)f
 (pasting)i(data)g(in)m(to)h(text)f(\014les)g(lik)m(e)g(rep)s(orts)f(or)
 150 3282 y(pap)s(ers.)49 b(See)34 b(Section)g(4.2)h([ncatted)f(netCDF)g
-(A)m(ttribute)h(Editor],)g(page)f(156,)i(for)d(more)h(details)g(on)150
+(A)m(ttribute)h(Editor],)g(page)f(168,)i(for)d(more)h(details)g(on)150
 3392 y(string)c(formatting)i(and)d(sp)s(ecial)i(c)m(haracters.)275
-3562 y(As)f(of)h FC(NCO)g FD(v)m(ersion)g(4.2.2)i(\(Octob)s(er,)e
-(2012\),)i FC(NCO)e FD(prin)m(ts)f(missing)h(v)-5 b(alues)31
+3562 y(As)f(of)h FD(NCO)g FE(v)m(ersion)g(4.2.2)i(\(Octob)s(er,)e
+(2012\),)i FD(NCO)e FE(prin)m(ts)f(missing)h(v)-5 b(alues)31
 b(as)g(blanks)f(\(i.e.,)j(the)150 3672 y(underscore)d(c)m(haracter)i(`)
-p Fy(_)p FD('\))e(b)m(y)h(default:)390 3842 y Fy(\045)47
+p Fz(_)p FE('\))e(b)m(y)h(default:)390 3842 y Fz(\045)47
 b(ncks)g(-C)g(-H)g(-v)h(mss_val)d(in.nc)390 3952 y(lon[0]=0)h
 (mss_val[0]=73)390 4061 y(lon[1]=90)f(mss_val[1]=_)390
 4171 y(lon[2]=180)g(mss_val[2]=73)390 4281 y(lon[3]=270)g(mss_val[3]=_)
 390 4390 y(\045)i(ncks)g(-s)g('\045+5.1f,)f(')h(-H)g(-C)h(-v)f(mss_val)
 f(in.nc)390 4500 y(+73.0,)g(_,)h(+73.0,)f(_,)275 4670
-y FD(T)-8 b(o)27 b(prin)m(t)g(the)g(n)m(umeric)g(v)-5
+y FE(T)-8 b(o)27 b(prin)m(t)g(the)g(n)m(umeric)g(v)-5
 b(alue)27 b(of)g(the)h(missing)e(v)-5 b(alue)28 b(instead)f(of)g(a)h
-(blank,)f(use)g(the)g(`)p Fy(--no_blank)p FD(')150 4780
-y(option.)275 4950 y Fy(ncks)k FD(prin)m(ts)i(in)g(a)g(v)m(erb)s(ose)g
+(blank,)f(use)g(the)g(`)p Fz(--no_blank)p FE(')150 4780
+y(option.)275 4950 y Fz(ncks)k FE(prin)m(ts)i(in)g(a)g(v)m(erb)s(ose)g
 (fashion)g(b)m(y)g(default)g(and)g(supplies)f(a)h(n)m(um)m(b)s(er)f(of)
 h(switc)m(hes)h(to)g(pare-)150 5060 y(do)m(wn)h(\(or)h(ev)m(en)g
 (spruce-up\))f(the)h(output.)56 b(The)35 b(in)m(terpla)m(y)i(of)e(the)h
-(`)p Fy(-Q)p FD(',)h(`)p Fy(-V)p FD(',)g(and)e(\(otherwise)i(un-)150
-5170 y(do)s(cumen)m(ted\))30 b(`)p Fy(--no_nm_prn)p FD(')e(switc)m(hes)
+(`)p Fz(-Q)p FE(',)h(`)p Fz(-V)p FE(',)g(and)e(\(otherwise)i(un-)150
+5170 y(do)s(cumen)m(ted\))30 b(`)p Fz(--no_nm_prn)p FE(')e(switc)m(hes)
 j(yields)g(most)g(desired)e(v)m(erb)s(osities:)390 5340
-y Fy(\045)47 b(ncks)g(-v)g(three_dmn_rec_var)c(-C)48
+y Fz(\045)47 b(ncks)g(-v)g(three_dmn_rec_var)c(-C)48
 b(-H)f(~/nco/data/in.nc)p eop end
-%%Page: 188 194
-TeXDict begin 188 193 bop 150 -116 a FD(188)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(time[0]=1)45 b(lat[0]=-90)g
+%%Page: 200 206
+TeXDict begin 200 205 bop 150 -116 a FE(200)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(time[0]=1)45 b(lat[0]=-90)g
 (lon[0]=0)h(three_dmn_rec_var[0]=1)390 408 y(\045)h(ncks)g(-Q)g(-v)g
 (three_dmn_rec_var)d(-C)j(-H)g(~/nco/data/in.nc)390 518
 y(three_dmn_rec_var[0]=1)390 628 y(\045)g(ncks)g(-V)g(-v)g
@@ -27202,389 +28391,390 @@ y(three_dmn_rec_var[0]=1)390 628 y(\045)g(ncks)g(-V)g(-v)g
 y(1)390 847 y(\045)g(ncks)g(-Q)g(--no_nm_prn)e(-v)i(three_dmn_rec_var)c
 (-C)k(-H)h(~/nco/data/in.nc)390 956 y(1)390 1066 y(\045)f(ncks)g
 (--no_nm_prn)e(-v)i(three_dmn_rec_var)c(-C)k(-H)g(~/nco/data/in.nc)390
-1176 y(1)g(-90)g(0)h(1)275 1353 y FD(One)e(dimensional)h(arra)m(ys)g
+1176 y(1)g(-90)g(0)h(1)275 1353 y FE(One)e(dimensional)h(arra)m(ys)g
 (of)g(c)m(haracters)i(stored)e(as)g(netCDF)g(v)-5 b(ariables)48
 b(are)f(automatically)150 1462 y(prin)m(ted)30 b(as)h(strings,)f
 (whether)g(or)g(not)h(they)f(are)h(NUL-terminated,)h(e.g.,)390
-1639 y Fy(ncks)47 b(-v)g(fl_nm)f(in.nc)150 1816 y FD(The)33
-b Fy(\045c)f FD(formatting)j(co)s(de)e(is)h(useful)e(for)h(prin)m(ting)
+1639 y Fz(ncks)47 b(-v)g(fl_nm)f(in.nc)150 1816 y FE(The)33
+b Fz(\045c)f FE(formatting)j(co)s(de)e(is)h(useful)e(for)h(prin)m(ting)
 g(m)m(ultidimensional)h(arra)m(ys)g(of)f(c)m(haracters)i(repre-)150
 1926 y(sen)m(ting)c(\014xed)f(length)h(strings)390 2103
-y Fy(ncks)47 b(-s)g('\045c')f(-v)i(fl_nm_arr)d(in.nc)150
-2280 y FD(Using)22 b(the)f Fy(\045s)g FD(format)h(co)s(de)g(on)g
+y Fz(ncks)47 b(-s)g('\045c')f(-v)i(fl_nm_arr)d(in.nc)150
+2280 y FE(Using)22 b(the)f Fz(\045s)g FE(format)h(co)s(de)g(on)g
 (strings)f(whic)m(h)g(are)h(not)g(NUL-terminated)g(\(and)g(th)m(us)f
 (not)h(tec)m(hnically)150 2390 y(strings\))31 b(is)f(lik)m(ely)i(to)f
 (result)f(in)g(a)h(core)g(dump.)275 2567 y(Create)g(netCDF)g
-Fy(out.nc)d FD(con)m(taining)k(all)f(v)-5 b(ariables,)32
+Fz(out.nc)d FE(con)m(taining)k(all)f(v)-5 b(ariables,)32
 b(and)d(an)m(y)i(asso)s(ciated)h(co)s(ordinates,)f(except)150
-2676 y(v)-5 b(ariable)31 b Fy(time)p FD(,)f(from)g(netCDF)h
-Fy(in.nc)p FD(:)390 2853 y Fy(ncks)47 b(-x)g(-v)g(time)g(in.nc)f
-(out.nc)275 3030 y FD(As)27 b(a)g(sp)s(ecial)h(case)g(of)g(this,)g
-(consider)f(ho)m(w)g(to)h(remo)m(v)m(e)h(a)f FC(CF)f
-FD(Con)m(v)m(en)m(tion)i(comlian)m(t)g Fy(ancillary_)150
-3140 y(variables)p FD(,)e Fy(bounds)p FD(,)h(or)h Fy(coordinates)d
-FD(v)-5 b(ariable)30 b(\(see)h(Section)e(3.37)i([CF)f(Con)m(v)m(en)m
-(tions],)h(page)f(99\))150 3249 y(suc)m(h)f(as)h Fy(time_bounds)p
-FD(.)37 b FC(NCO)29 b FD(subsetting)g(assumes)g(the)g(user)g(w)m(an)m
-(ts)h(all)g(ancillary)h(v)-5 b(ariables,)30 b(axes,)150
-3359 y(b)s(ounds)23 b(and)h(co)s(ordinates)i(asso)s(ciated)h(with)d
-(all)i(extracted)h(v)-5 b(ariables)26 b(\(see)g(Section)f(3.12)i
-([Subsetting)150 3469 y(Co)s(ordinate)39 b(V)-8 b(ariables],)43
-b(page)d(45\).)68 b(Hence)40 b(to)f(exclude)h(a)f Fy
-(ancillary_variables)p FD(,)d Fy(bounds)p FD(,)k(or)150
-3578 y Fy(coordinates)29 b FD(v)-5 b(ariable)32 b(while)g(retaining)h
-(the)f(\\paren)m(t")h(v)-5 b(ariable)33 b(\(here)f Fy(time)p
-FD(\),)f(one)h(m)m(ust)g(use)g(the)150 3688 y(`)p Fy(-C)p
-FD(')e(switc)m(h:)390 3865 y Fy(ncks)47 b(-C)g(-x)g(-v)g(time_bounds)e
-(in.nc)h(out.nc)275 4042 y FD(The)30 b(`)p Fy(-C)p FD(')i(switc)m(h)g
-(tells)g(the)g(op)s(erator)g Fo(NOT)43 b FD(to)32 b(necessarily)g
-(include)f(all)i(the)e FC(CF)h FD(ancillary)g(v)-5 b(ari-)150
+2676 y(v)-5 b(ariable)31 b Fz(time)p FE(,)f(from)g(netCDF)h
+Fz(in.nc)p FE(:)390 2853 y Fz(ncks)47 b(-x)g(-v)g(time)g(in.nc)f
+(out.nc)275 3030 y FE(As)33 b(a)h(sp)s(ecial)g(case)h(of)f(this,)g
+(consider)g(ho)m(w)g(to)g(remo)m(v)m(e)h(a)f(v)-5 b(ariable)35
+b(suc)m(h)e(as)h Fz(time_bounds)c FE(that)150 3140 y(is)35
+b(iden)m(ti\014ed)g(in)g(a)g FD(CF)g FE(Con)m(v)m(en)m(tion)i(\(see)f
+(Section)g(3.38)g([CF)f(Con)m(v)m(en)m(tions],)j(page)e(110\))h
+(complian)m(t)150 3249 y Fz(ancillary_variables)p FE(,)e
+Fz(bounds)p FE(,)k(or)f Fz(coordinates)d FE(attribute.)64
+b FD(NCO)38 b FE(subsetting)g(assumes)g(the)150 3359
+y(user)22 b(w)m(an)m(ts)h(all)h(ancillary)g(v)-5 b(ariables,)25
+b(axes,)g(b)s(ounds)20 b(and)i(co)s(ordinates)i(asso)s(ciated)g(with)e
+(all)i(extracted)150 3469 y(v)-5 b(ariables)35 b(\(see)h(Section)f
+(3.12)i([Subsetting)d(Co)s(ordinate)h(V)-8 b(ariables],)37
+b(page)f(45\).)55 b(Hence)35 b(to)h(exclude)150 3578
+y(a)k Fz(ancillary_variables)p FE(,)d Fz(bounds)p FE(,)j(or)g
+Fz(coordinates)d FE(v)-5 b(ariable)40 b(while)g(retaining)g(the)g
+(\\paren)m(t")150 3688 y(v)-5 b(ariable)31 b(\(here)g
+Fz(time)p FE(\),)f(one)g(m)m(ust)g(use)h(the)f(`)p Fz(-C)p
+FE(')g(switc)m(h:)390 3865 y Fz(ncks)47 b(-C)g(-x)g(-v)g(time_bounds)e
+(in.nc)h(out.nc)275 4042 y FE(The)30 b(`)p Fz(-C)p FE(')i(switc)m(h)g
+(tells)g(the)g(op)s(erator)g Fp(NOT)43 b FE(to)32 b(necessarily)g
+(include)f(all)i(the)e FD(CF)h FE(ancillary)g(v)-5 b(ari-)150
 4151 y(ables,)46 b(axes,)h(b)s(ounds,)c(and)f(co)s(ordinates.)78
 b(Hence)44 b(the)f(output)f(\014le)g(will)h(con)m(tain)h
-Fy(time)e FD(and)g(not)150 4261 y Fy(time_bounds)p FD(.)275
-4438 y(Extract)33 b(v)-5 b(ariables)34 b Fy(time)d FD(and)h
-Fy(pressure)f FD(from)h(netCDF)i Fy(in.nc)p FD(.)46 b(If)32
-b Fy(out.nc)f FD(do)s(es)i(not)g(exist)g(it)150 4548
+Fz(time)e FE(and)g(not)150 4261 y Fz(time_bounds)p FE(.)275
+4438 y(Extract)33 b(v)-5 b(ariables)34 b Fz(time)d FE(and)h
+Fz(pressure)f FE(from)h(netCDF)i Fz(in.nc)p FE(.)46 b(If)32
+b Fz(out.nc)f FE(do)s(es)i(not)g(exist)g(it)150 4548
 y(will)e(b)s(e)f(created.)42 b(Otherwise)30 b(the)h(y)m(ou)f(will)h(b)s
 (e)f(prompted)g(whether)f(to)j(app)s(end)c(to)k(or)e(to)h(o)m(v)m
-(erwrite)150 4657 y Fy(out.nc)p FD(:)390 4834 y Fy(ncks)47
+(erwrite)150 4657 y Fz(out.nc)p FE(:)390 4834 y Fz(ncks)47
 b(-v)g(time,pressure)d(in.nc)i(out.nc)390 4944 y(ncks)h(-C)g(-v)g
-(time,pressure)d(in.nc)j(out.nc)150 5121 y FD(The)33
+(time,pressure)d(in.nc)j(out.nc)150 5121 y FE(The)33
 b(\014rst)h(v)m(ersion)g(of)g(the)g(command)g(creates)i(an)e
-Fy(out.nc)e FD(whic)m(h)h(con)m(tains)j Fy(time)p FD(,)e
-Fy(pressure)p FD(,)f(and)150 5230 y(an)m(y)g(co)s(ordinate)h(v)-5
-b(ariables)34 b(asso)s(ciated)g(with)e Fz(pressure)p
-FD(.)47 b(The)33 b Fy(out.nc)e FD(from)h(the)i(second)f(v)m(ersion)g
+Fz(out.nc)e FE(whic)m(h)h(con)m(tains)j Fz(time)p FE(,)e
+Fz(pressure)p FE(,)f(and)150 5230 y(an)m(y)g(co)s(ordinate)h(v)-5
+b(ariables)34 b(asso)s(ciated)g(with)e FA(pressure)p
+FE(.)47 b(The)33 b Fz(out.nc)e FE(from)h(the)i(second)f(v)m(ersion)g
 (is)150 5340 y(guaran)m(teed)e(to)h(con)m(tain)f(only)g(t)m(w)m(o)g(v)
--5 b(ariables)31 b Fy(time)f FD(and)f Fy(pressure)p FD(.)p
+-5 b(ariables)31 b Fz(time)f FE(and)f Fz(pressure)p FE(.)p
 eop end
-%%Page: 189 195
-TeXDict begin 189 194 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(189)275
-299 y(Create)27 b(netCDF)h Fy(out.nc)e FD(con)m(taining)i(all)g(v)-5
-b(ariables)28 b(from)f(\014le)g Fy(in.nc)p FD(.)38 b(Restrict)28
+%%Page: 201 207
+TeXDict begin 201 206 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(201)275 299 y(Create)27
+b(netCDF)h Fz(out.nc)e FE(con)m(taining)i(all)g(v)-5
+b(ariables)28 b(from)f(\014le)g Fz(in.nc)p FE(.)38 b(Restrict)28
 b(the)g(dimensions)150 408 y(of)38 b(these)h(v)-5 b(ariables)39
 b(to)g(a)g(h)m(yp)s(erslab.)64 b(Prin)m(t)38 b(\(with)g
-Fy(-H)p FD(\))g(the)h(h)m(yp)s(erslabs)e(to)i(the)g(screen)f(for)g(go)s
+Fz(-H)p FE(\))g(the)h(h)m(yp)s(erslabs)e(to)i(the)g(screen)f(for)g(go)s
 (o)s(d)150 518 y(measure.)84 b(The)44 b(sp)s(eci\014ed)h(h)m(yp)s
 (erslab)e(is:)70 b(the)45 b(\014fth)f(v)-5 b(alue)45
-b(in)g(dimension)f Fy(time)p FD(;)51 b(the)45 b(half-op)s(en)150
-628 y(range)39 b Fz(lat)i Fv(>)d FD(0)p Fv(:)h FD(in)f(co)s(ordinate)h
-Fy(lat)p FD(;)i(the)e(half-op)s(en)e(range)i Fz(lon)g
-Fv(<)f FD(330)p Fv(:)h FD(in)f(co)s(ordinate)h Fy(lon)p
-FD(;)j(the)150 737 y(closed)36 b(in)m(terv)-5 b(al)36
-b(0)p Fv(:)p FD(3)d Fv(<)g Fz(band)i Fv(<)e FD(0)p Fv(:)p
-FD(5)i(in)g(co)s(ordinate)h Fy(band)p FD(;)g(and)e(cross-section)i
+b(in)g(dimension)f Fz(time)p FE(;)51 b(the)45 b(half-op)s(en)150
+628 y(range)39 b FA(lat)i Fw(>)d FE(0)p Fw(:)h FE(in)f(co)s(ordinate)h
+Fz(lat)p FE(;)i(the)e(half-op)s(en)e(range)i FA(lon)g
+Fw(<)f FE(330)p Fw(:)h FE(in)f(co)s(ordinate)h Fz(lon)p
+FE(;)j(the)150 737 y(closed)36 b(in)m(terv)-5 b(al)36
+b(0)p Fw(:)p FE(3)d Fw(<)g FA(band)i Fw(<)e FE(0)p Fw(:)p
+FE(5)i(in)g(co)s(ordinate)h Fz(band)p FE(;)g(and)e(cross-section)i
 (closest)h(to)e(1000.)i(in)150 847 y(co)s(ordinate)c
-Fy(lev)p FD(.)44 b(Note)33 b(that)g(limits)f(applied)g(to)h(co)s
+Fz(lev)p FE(.)44 b(Note)33 b(that)g(limits)f(applied)g(to)h(co)s
 (ordinate)f(v)-5 b(alues)33 b(are)f(sp)s(eci\014ed)f(with)h(a)g
 (decimal)150 956 y(p)s(oin)m(t,)d(and)e(limits)i(applied)f(to)g
 (dimension)g(indices)g(do)g(not)g(ha)m(v)m(e)h(a)f(decimal)h(p)s(oin)m
 (t)f(See)h(Section)f(3.15)150 1066 y([Hyp)s(erslabs],)i(page)h(55.)390
-1225 y Fy(ncks)47 b(-H)g(-d)g(time,5)f(-d)h(lat,,0.0)f(-d)h(lon,330.0,)
+1225 y Fz(ncks)47 b(-H)g(-d)g(time,5)f(-d)h(lat,,0.0)f(-d)h(lon,330.0,)
 e(-d)i(band,0.3,0.5)390 1335 y(-d)g(lev,1000.0)e(in.nc)i(out.nc)275
-1494 y FD(Assume)40 b(the)h(domain)g(of)g(the)g(monotonically)i
-(increasing)e(longitude)h(co)s(ordinate)f Fy(lon)f FD(is)h(0)i
-Fv(<)150 1604 y Fz(lon)25 b Fv(<)g FD(360.)42 b(Here,)29
-b Fy(lon)e FD(is)i(an)f(example)h(of)f(a)h(wrapp)s(ed)d(co)s(ordinate.)
-41 b Fy(ncks)27 b FD(will)i(extract)g(a)g(h)m(yp)s(erslab)150
+1494 y FE(Assume)40 b(the)h(domain)g(of)g(the)g(monotonically)i
+(increasing)e(longitude)h(co)s(ordinate)f Fz(lon)f FE(is)h(0)i
+Fw(<)150 1604 y FA(lon)25 b Fw(<)g FE(360.)42 b(Here,)29
+b Fz(lon)e FE(is)i(an)f(example)h(of)f(a)h(wrapp)s(ed)d(co)s(ordinate.)
+41 b Fz(ncks)27 b FE(will)i(extract)g(a)g(h)m(yp)s(erslab)150
 1714 y(whic)m(h)35 b(crosses)i(the)e(Green)m(wic)m(h)i(meridian)f
 (simply)f(b)m(y)g(sp)s(ecifying)h(the)g(w)m(esternmost)g(longitude)h
-(as)150 1823 y Fz(min)30 b FD(and)g(the)g(easternmost)h(longitude)g(as)
-g Fz(max)p FD(,)g(as)f(follo)m(ws:)390 1983 y Fy(ncks)47
-b(-d)g(lon,260.0,45.0)d(in.nc)i(out.nc)275 2142 y FD(F)-8
+(as)150 1823 y FA(min)30 b FE(and)g(the)g(easternmost)h(longitude)g(as)
+g FA(max)p FE(,)g(as)f(follo)m(ws:)390 1983 y Fz(ncks)47
+b(-d)g(lon,260.0,45.0)d(in.nc)i(out.nc)275 2142 y FE(F)-8
 b(or)31 b(more)f(details)i(See)e(Section)h(3.20)h([W)-8
 b(rapp)s(ed)30 b(Co)s(ordinates],)h(page)g(63.)p eop
 end
-%%Page: 190 196
-TeXDict begin 190 195 bop 150 -116 a FD(190)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.8)68 b Fc(ncpdq)43
-b FB(netCDF)i(P)l(erm)l(ute)h(Dimensions)f(Quic)l(kly)150
-458 y FD(SYNT)-8 b(AX)390 618 y Fy(ncpdq)46 b([-3])h([-4])g([-6])f
-([-7])h([-A])g([-a)f([-])p Fn(dim)p Fy([,...)m(]])i([-C])e([-c])390
+%%Page: 202 208
+TeXDict begin 202 207 bop 150 -116 a FE(202)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.8)68 b Fb(ncpdq)43
+b FC(netCDF)i(P)l(erm)l(ute)h(Dimensions)f(Quic)l(kly)150
+458 y FE(SYNT)-8 b(AX)390 618 y Fz(ncpdq)46 b([-3])h([-4])g([-6])f
+([-7])h([-A])g([-a)f([-])p Fo(dim)p Fz([,...)m(]])i([-C])e([-c])390
 727 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])i([--cnk_min)e(sz])i
 ([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390 837 y([-D)i
-Fn(dbg)p Fy(])g([-d)f Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])390 946 y([-F])h([-G)g
-Fn(gpe_dsc)p Fy(])e([-g)i Fn(grp)p Fy([,...)n(]])g([-h])g([--hdf])e
-([--hdr_pad)g Fn(nbr)p Fy(])390 1056 y([-L)i Fn(dfl_lvl)p
-Fy(])e([-l)i Fn(path)p Fy(])g([-M)g Fn(pck_map)p Fy(])e([--mrd])h
-([--no_tmp_fl])390 1166 y([-O])h([-o)g Fn(output-file)p
-Fy(])d([-P)j Fn(pck_plc)p Fy(])e([-p)i Fn(path)p Fy(])390
-1275 y([-R])g([-r])f([--ram_all])f([-t)i Fn(thr_nbr)p
-Fy(])e([-U])i([--unn])f([-v)h Fn(var)p Fy([,...)n(]])g([-X)g(...])f
-([-x])390 1385 y Fn(input-file)f Fy([)p Fn(output-file)p
-Fy(])150 1544 y FD(DESCRIPTION)275 1704 y Fy(ncpdq)30
-b FD(p)s(erforms)h(one)i(\(not)f(b)s(oth\))g(of)h(t)m(w)m(o)g(distinct)
+Fo(dbg)p Fz(])g([-d)f Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])390 946 y([-F])h([-G)g
+Fo(gpe_dsc)p Fz(])e([-g)i Fo(grp)p Fz([,...)n(]])g([-h])g([--hdf])e
+([--hdr_pad)g Fo(nbr)p Fz(])390 1056 y([-L)i Fo(dfl_lvl)p
+Fz(])e([-l)i Fo(path)p Fz(])g([-M)g Fo(pck_map)p Fz(])e([--mrd])h
+([--no_tmp_fl])390 1166 y([-O])h([-o)g Fo(output-file)p
+Fz(])d([-P)j Fo(pck_plc)p Fz(])e([-p)i Fo(path)p Fz(])g([--ppc)f(...])
+390 1275 y([-R])h([-r])f([--ram_all])f([-t)i Fo(thr_nbr)p
+Fz(])e([-U])i([--unn])f([-v)h Fo(var)p Fz([,...)n(]])g([-X)g(...])f
+([-x])390 1385 y Fo(input-file)f Fz([)p Fo(output-file)p
+Fz(])150 1544 y FE(DESCRIPTION)275 1704 y Fz(ncpdq)30
+b FE(p)s(erforms)h(one)i(\(not)f(b)s(oth\))g(of)h(t)m(w)m(o)g(distinct)
 g(functions:)44 b(pac)m(king)33 b(or)f(dimension)g(p)s(erm)m(u-)150
-1813 y(tation.)51 b Fy(ncpdq)31 b FD(is)j(optimized)g(to)g(p)s(erform)d
+1813 y(tation.)51 b Fz(ncpdq)31 b FE(is)j(optimized)g(to)g(p)s(erform)d
 (these)j(actions)g(in)f(a)h(parallel)g(fashion)f(with)g(a)h(minim)m(um)
 150 1923 y(of)e(time)g(and)e(memory)-8 b(.)44 b(The)31
-b Fz(p)s(dq)h FD(ma)m(y)g(stand)f(for)g(\\P)m(erm)m(ute)i(Dimensions)e
+b FA(p)s(dq)h FE(ma)m(y)g(stand)f(for)g(\\P)m(erm)m(ute)i(Dimensions)e
 (Quic)m(kly",)i(\\P)m(ac)m(k)g(Data)150 2032 y(Quietly",)e(\\Pillory)h
 (Dan)f(Qua)m(yle",)g(or)g(other)f(silly)h(uses.)150 2231
-y Fu(P)m(ac)m(king)40 b(and)g(Unpac)m(king)h(F)-10 b(unctions)150
-2378 y FD(The)36 b Fy(ncpdq)f FD(pac)m(king)j(\(and)e(unpac)m(king\))h
+y Fv(P)m(ac)m(king)40 b(and)g(Unpac)m(king)h(F)-10 b(unctions)150
+2378 y FE(The)36 b Fz(ncpdq)f FE(pac)m(king)j(\(and)e(unpac)m(king\))h
 (algorithms)h(are)f(describ)s(ed)e(in)i(Section)g(4.1.11)i([Metho)s(ds)
-150 2488 y(and)h(functions],)k(page)d(119,)k(and)40 b(are)h(also)h
-(implemen)m(ted)f(in)g Fy(ncap2)p FD(.)70 b Fy(ncpdq)40
-b FD(extends)h(the)g(func-)150 2597 y(tionalit)m(y)c(of)d(these)h
+150 2488 y(and)h(functions],)k(page)d(131,)k(and)40 b(are)h(also)h
+(implemen)m(ted)f(in)g Fz(ncap2)p FE(.)70 b Fz(ncpdq)40
+b FE(extends)h(the)g(func-)150 2597 y(tionalit)m(y)c(of)d(these)h
 (algorithms)h(b)m(y)e(pro)m(viding)g(high)g(lev)m(el)j(con)m(trol)e(of)
-g(the)g Fz(pac)m(king)g(p)s(olicy)43 b FD(so)34 b(that)150
+g(the)g FA(pac)m(king)g(p)s(olicy)43 b FE(so)34 b(that)150
 2707 y(users)27 b(can)i(consisten)m(tly)h(pac)m(k)f(\(and)f(unpac)m
 (k\))g(en)m(tire)h(\014les)g(with)f(one)g(command.)40
 b(The)28 b(user)f(sp)s(eci\014es)150 2816 y(the)j(desired)e(pac)m(king)
-j(p)s(olicy)e(with)g(the)h(`)p Fy(-P)p FD(')f(switc)m(h)h(\(or)f(its)h
-(long)g(option)g(equiv)-5 b(alen)m(ts,)31 b(`)p Fy(--pck_plc)p
-FD(')150 2926 y(and)k(`)p Fy(--pack_policy)p FD('\))e(and)i(its)h
-Fz(p)s(c)m(k)p 1533 2926 28 4 v 40 w(plc)41 b FD(argumen)m(t.)58
+j(p)s(olicy)e(with)g(the)h(`)p Fz(-P)p FE(')f(switc)m(h)h(\(or)f(its)h
+(long)g(option)g(equiv)-5 b(alen)m(ts,)31 b(`)p Fz(--pck_plc)p
+FE(')150 2926 y(and)k(`)p Fz(--pack_policy)p FE('\))e(and)i(its)h
+FA(p)s(c)m(k)p 1533 2926 28 4 v 40 w(plc)41 b FE(argumen)m(t.)58
 b(F)-8 b(our)36 b(pac)m(king)g(p)s(olicies)h(are)f(curren)m(tly)g(im-)
-150 3036 y(plemen)m(ted:)150 3329 y Fz(P)m(ac)m(king)c(\(and)e(Re-P)m
-(ac)m(king\))j(V)-8 b(ariables)32 b([)p Fo(default)9
-b Fz(])630 3439 y FD(De\014nition:)41 b(P)m(ac)m(k)32
+150 3036 y(plemen)m(ted:)150 3329 y FA(P)m(ac)m(king)c(\(and)e(Re-P)m
+(ac)m(king\))j(V)-8 b(ariables)32 b([)p Fp(default)9
+b FA(])630 3439 y FE(De\014nition:)41 b(P)m(ac)m(k)32
 b(unpac)m(k)m(ed)f(v)-5 b(ariables,)31 b(re-pac)m(k)h(pac)m(k)m(ed)f(v)
 -5 b(ariables)630 3548 y(Alternate)32 b(in)m(v)m(o)s(cation:)43
-b Fy(ncpack)630 3658 y Fz(p)s(c)m(k)p 775 3658 V 40 w(plc)36
-b FD(k)m(ey)31 b(v)-5 b(alues:)41 b(`)p Fy(all_new)p
-FD(',)29 b(`)p Fy(pck_all_new_att)p FD(')150 3926 y Fz(P)m(ac)m(king)j
+b Fz(ncpack)630 3658 y FA(p)s(c)m(k)p 775 3658 V 40 w(plc)36
+b FE(k)m(ey)31 b(v)-5 b(alues:)41 b(`)p Fz(all_new)p
+FE(',)29 b(`)p Fz(pck_all_new_att)p FE(')150 3926 y FA(P)m(ac)m(king)j
 (\(and)e(not)h(Re-P)m(ac)m(king\))i(V)-8 b(ariables)630
-4036 y FD(De\014nition:)41 b(P)m(ac)m(k)32 b(unpac)m(k)m(ed)f(v)-5
+4036 y FE(De\014nition:)41 b(P)m(ac)m(k)32 b(unpac)m(k)m(ed)f(v)-5
 b(ariables,)31 b(cop)m(y)g(pac)m(k)m(ed)h(v)-5 b(ariables)630
 4146 y(Alternate)32 b(in)m(v)m(o)s(cation:)43 b(none)630
-4255 y Fz(p)s(c)m(k)p 775 4255 V 40 w(plc)36 b FD(k)m(ey)31
-b(v)-5 b(alues:)41 b(`)p Fy(all_xst)p FD(',)29 b(`)p
-Fy(pck_all_xst_att)p FD(')150 4524 y Fz(Re-P)m(ac)m(king)k(V)-8
-b(ariables)630 4633 y FD(De\014nition:)41 b(Re-pac)m(k)32
+4255 y FA(p)s(c)m(k)p 775 4255 V 40 w(plc)36 b FE(k)m(ey)31
+b(v)-5 b(alues:)41 b(`)p Fz(all_xst)p FE(',)29 b(`)p
+Fz(pck_all_xst_att)p FE(')150 4524 y FA(Re-P)m(ac)m(king)k(V)-8
+b(ariables)630 4633 y FE(De\014nition:)41 b(Re-pac)m(k)32
 b(pac)m(k)m(ed)g(v)-5 b(ariables,)31 b(cop)m(y)g(unpac)m(k)m(ed)f(v)-5
 b(ariables)630 4743 y(Alternate)32 b(in)m(v)m(o)s(cation:)43
-b(none)630 4852 y Fz(p)s(c)m(k)p 775 4852 V 40 w(plc)36
-b FD(k)m(ey)31 b(v)-5 b(alues:)41 b(`)p Fy(xst_new)p
-FD(',)29 b(`)p Fy(pck_xst_new_att)p FD(')150 5121 y Fz(Unpac)m(king)630
-5230 y FD(De\014nition:)41 b(Unpac)m(k)31 b(pac)m(k)m(ed)h(v)-5
+b(none)630 4852 y FA(p)s(c)m(k)p 775 4852 V 40 w(plc)36
+b FE(k)m(ey)31 b(v)-5 b(alues:)41 b(`)p Fz(xst_new)p
+FE(',)29 b(`)p Fz(pck_xst_new_att)p FE(')150 5121 y FA(Unpac)m(king)630
+5230 y FE(De\014nition:)41 b(Unpac)m(k)31 b(pac)m(k)m(ed)h(v)-5
 b(ariables,)31 b(cop)m(y)g(unpac)m(k)m(ed)g(v)-5 b(ariables)630
-5340 y(Alternate)32 b(in)m(v)m(o)s(cation:)43 b Fy(ncunpack)p
+5340 y(Alternate)32 b(in)m(v)m(o)s(cation:)43 b Fz(ncunpack)p
 eop end
-%%Page: 191 197
-TeXDict begin 191 196 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(191)630
-299 y Fz(p)s(c)m(k)p 775 299 28 4 v 40 w(plc)36 b FD(k)m(ey)31
-b(v)-5 b(alues:)41 b(`)p Fy(upk)p FD(',)30 b(`)p Fy(unpack)p
-FD(',)g(`)p Fy(pck_upk)p FD(')150 657 y(Equiv)-5 b(alen)m(t)26
-b(k)m(ey)g(v)-5 b(alues)26 b(are)g(fully)f(in)m(terc)m(hangeable.)41
+%%Page: 203 209
+TeXDict begin 203 208 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(203)630 299 y FA(p)s(c)m(k)p
+775 299 28 4 v 40 w(plc)36 b FE(k)m(ey)31 b(v)-5 b(alues:)41
+b(`)p Fz(upk)p FE(',)30 b(`)p Fz(unpack)p FE(',)g(`)p
+Fz(pck_upk)p FE(')150 657 y(Equiv)-5 b(alen)m(t)26 b(k)m(ey)g(v)-5
+b(alues)26 b(are)g(fully)f(in)m(terc)m(hangeable.)41
 b(Multiple)26 b(equiv)-5 b(alen)m(t)27 b(options)f(are)f(pro)m(vided)g
 (to)150 766 y(satisfy)g(disparate)g(needs)f(and)g(tastes)h(of)g
-FC(NCO)f FD(users)g(w)m(orking)g(with)h(scripts)f(and)g(from)g(the)g
-(command)150 876 y(line.)275 1067 y(Regardless)35 b(of)g(the)f(pac)m
-(king)i(p)s(olicy)f(selected,)i Fy(ncpdq)d FD(no)g(longer)h(\(as)h(of)e
-FC(NCO)h FD(v)m(ersion)g(4.0.4)h(in)150 1177 y(Octob)s(er,)30
-b(2010\))i(pac)m(ks)e(co)s(ordinate)h(v)-5 b(ariables,)30
-b(or)g(the)g(sp)s(ecial)g(v)-5 b(ariables,)31 b(w)m(eigh)m(ts,)g(and)e
-(other)h(grid)150 1287 y(prop)s(erties)21 b(describ)s(ed)g(in)h
-(Section)h(3.37)h([CF)e(Con)m(v)m(en)m(tions],)j(page)e(99.)39
-b(Prior)22 b Fy(ncpdq)f FD(v)m(ersions)h(treated)150
-1396 y(co)s(ordinate)35 b(v)-5 b(ariables)35 b(and)f(grid)g(prop)s
-(erties)g(no)g(di\013eren)m(tly)h(from)f(other)h(v)-5
-b(ariables.)53 b(Ho)m(w)m(ev)m(er,)38 b(co-)150 1506
-y(ordinate)33 b(v)-5 b(ariables)33 b(are)f(one-dimensional,)i(so)e(pac)
-m(king)h(sa)m(v)m(es)h(little)g(space)f(on)f(large)h(\014les,)g(and)f
-(the)150 1615 y(resulting)39 b(\014les)g(are)g(di\016cult)g(for)g(h)m
-(umans)e(to)j(read.)66 b Fy(ncpdq)38 b FD(will,)j(of)e(course,)j
-Fo(unp)-5 b(ack)49 b FD(co)s(ordinate)150 1725 y(v)-5
-b(ariables)33 b(and)f(w)m(eigh)m(ts,)i(for)f(example,)h(in)e(case)h
-(some)g(other,)g(non-)p FC(NCO)f FD(soft)m(w)m(are)i(pac)m(k)m(ed)g
-(them)e(in)150 1835 y(the)f(\014rst)e(place.)275 2026
-y(Concurren)m(tly)-8 b(,)42 b(Gaussian)f(and)e(area)i(w)m(eigh)m(ts)h
-(and)d(other)h(grid)g(prop)s(erties)g(are)g(often)h(used)e(to)150
-2136 y(deriv)m(e)29 b(\014elds)g(in)f(re-in\015ated)h(\(unpac)m(k)m
-(ed\))h(\014les,)g(so)f(pac)m(king)h(suc)m(h)e(grid)h(prop)s(erties)f
-(causes)h(a)h(consid-)150 2245 y(erable)38 b(loss)f(of)h(precision)f
-(in)g(do)m(wnstream)g(data)h(pro)s(cessing.)61 b(If)36
-b(users)h(express)f(strong)i(wishes)e(to)150 2355 y(pac)m(k)g(grid)e
-(prop)s(erties,)i(w)m(e)f(will)h(implemen)m(t)f(new)f(pac)m(king)i(p)s
-(olicies.)55 b(An)35 b(immediate)h(w)m(ork)-5 b(around)150
-2464 y(for)32 b(those)h(needing)g(to)g(pac)m(k)g(grid)f(prop)s(erties)g
-(no)m(w,)i(is)e(to)h(use)g(the)f Fy(ncap2)f FD(pac)m(king)j(functions)e
-(or)g(to)150 2574 y(rename)e(the)h(grid)f(prop)s(erties)g(prior)g(to)h
-(calling)h Fy(ncpdq)p FD(.)39 b(W)-8 b(e)31 b(w)m(elcome)i(y)m(our)d
-(feedbac)m(k.)275 2765 y(T)-8 b(o)34 b(reduce)f(required)g
-(memorization)j(of)e(these)g(complex)g(p)s(olicy)g(switc)m(hes,)i
-Fy(ncpdq)c FD(ma)m(y)j(also)g(b)s(e)150 2875 y(in)m(v)m(ok)m(ed)25
-b(via)g(a)f(synon)m(ym)g(or)g(with)g(switc)m(hes)g(that)h(imply)f(a)g
-(particular)g(p)s(olicy)-8 b(.)40 b Fy(ncpack)22 b FD(is)i(a)g(synon)m
-(ym)150 2985 y(for)32 b Fy(ncpdq)e FD(and)h(b)s(eha)m(v)m(es)h(the)g
-(same)g(in)g(all)g(resp)s(ects.)45 b(Both)33 b Fy(ncpdq)d
-FD(and)h Fy(ncpack)f FD(assume)i(a)g(default)150 3094
-y(pac)m(king)26 b(p)s(olicy)e(request)h(of)g(`)p Fy(all_new)p
-FD('.)37 b(Hence)25 b Fy(ncpack)e FD(ma)m(y)i(b)s(e)f(in)m(v)m(ok)m(ed)
-i(without)f(an)m(y)g(`)p Fy(-P)p FD(')f(switc)m(h,)150
-3204 y(unlik)m(e)36 b Fy(ncpdq)p FD(.)56 b(Similarly)-8
-b(,)38 b Fy(ncunpack)c FD(is)i(a)g(synon)m(ym)g(for)g
-Fy(ncpdq)e FD(except)j(that)g Fy(ncpack)d FD(implicitly)150
+FD(NCO)f FE(users)g(w)m(orking)g(with)h(scripts)f(and)g(from)g(the)g
+(command)150 876 y(line.)275 1067 y(Regardless)43 b(of)g(the)g(pac)m
+(king)h(p)s(olicy)g(selected,)j Fz(ncpdq)42 b FE(no)h(longer)g(\(as)h
+(of)f FD(NCO)g FE(v)m(ersion)g(4.0.4)150 1177 y(in)36
+b(Octob)s(er,)h(2010\))h(pac)m(ks)f(co)s(ordinate)g(v)-5
+b(ariables,)38 b(or)e(the)g(sp)s(ecial)h(v)-5 b(ariables,)38
+b(w)m(eigh)m(ts,)h(and)d(other)150 1287 y(grid)29 b(prop)s(erties)g
+(describ)s(ed)f(in)h(Section)h(3.38)h([CF)f(Con)m(v)m(en)m(tions],)h
+(page)f(110.)42 b(Prior)29 b Fz(ncpdq)f FE(v)m(ersions)150
+1396 y(treated)34 b(co)s(ordinate)h(v)-5 b(ariables)34
+b(and)f(grid)g(prop)s(erties)g(no)g(di\013eren)m(tly)h(from)f(other)h
+(v)-5 b(ariables.)51 b(Ho)m(w-)150 1506 y(ev)m(er,)37
+b(co)s(ordinate)e(v)-5 b(ariables)35 b(are)g(one-dimensional,)i(so)e
+(pac)m(king)g(sa)m(v)m(es)h(little)h(space)e(on)f(large)i(\014les,)150
+1615 y(and)f(the)i(resulting)f(\014les)g(are)g(di\016cult)g(for)g(h)m
+(umans)f(to)i(read.)58 b Fz(ncpdq)34 b FE(will,)k(of)e(course,)i
+Fp(unp)-5 b(ack)47 b FE(co-)150 1725 y(ordinate)31 b(v)-5
+b(ariables)32 b(and)e(w)m(eigh)m(ts,)j(for)e(example,)h(in)f(case)h
+(some)f(other,)h(non-)p FD(NCO)e FE(soft)m(w)m(are)j(pac)m(k)m(ed)150
+1835 y(them)d(in)g(the)h(\014rst)f(place.)275 2026 y(Concurren)m(tly)-8
+b(,)42 b(Gaussian)f(and)e(area)i(w)m(eigh)m(ts)h(and)d(other)h(grid)g
+(prop)s(erties)g(are)g(often)h(used)e(to)150 2136 y(deriv)m(e)29
+b(\014elds)g(in)f(re-in\015ated)h(\(unpac)m(k)m(ed\))h(\014les,)g(so)f
+(pac)m(king)h(suc)m(h)e(grid)h(prop)s(erties)f(causes)h(a)h(consid-)150
+2245 y(erable)38 b(loss)f(of)h(precision)f(in)g(do)m(wnstream)g(data)h
+(pro)s(cessing.)61 b(If)36 b(users)h(express)f(strong)i(wishes)e(to)150
+2355 y(pac)m(k)g(grid)e(prop)s(erties,)i(w)m(e)f(will)h(implemen)m(t)f
+(new)f(pac)m(king)i(p)s(olicies.)55 b(An)35 b(immediate)h(w)m(ork)-5
+b(around)150 2464 y(for)32 b(those)h(needing)g(to)g(pac)m(k)g(grid)f
+(prop)s(erties)g(no)m(w,)i(is)e(to)h(use)g(the)f Fz(ncap2)f
+FE(pac)m(king)j(functions)e(or)g(to)150 2574 y(rename)e(the)h(grid)f
+(prop)s(erties)g(prior)g(to)h(calling)h Fz(ncpdq)p FE(.)39
+b(W)-8 b(e)31 b(w)m(elcome)i(y)m(our)d(feedbac)m(k.)275
+2765 y(T)-8 b(o)34 b(reduce)f(required)g(memorization)j(of)e(these)g
+(complex)g(p)s(olicy)g(switc)m(hes,)i Fz(ncpdq)c FE(ma)m(y)j(also)g(b)s
+(e)150 2875 y(in)m(v)m(ok)m(ed)25 b(via)g(a)f(synon)m(ym)g(or)g(with)g
+(switc)m(hes)g(that)h(imply)f(a)g(particular)g(p)s(olicy)-8
+b(.)40 b Fz(ncpack)22 b FE(is)i(a)g(synon)m(ym)150 2985
+y(for)32 b Fz(ncpdq)e FE(and)h(b)s(eha)m(v)m(es)h(the)g(same)g(in)g
+(all)g(resp)s(ects.)45 b(Both)33 b Fz(ncpdq)d FE(and)h
+Fz(ncpack)f FE(assume)i(a)g(default)150 3094 y(pac)m(king)26
+b(p)s(olicy)e(request)h(of)g(`)p Fz(all_new)p FE('.)37
+b(Hence)25 b Fz(ncpack)e FE(ma)m(y)i(b)s(e)f(in)m(v)m(ok)m(ed)i
+(without)f(an)m(y)g(`)p Fz(-P)p FE(')f(switc)m(h,)150
+3204 y(unlik)m(e)36 b Fz(ncpdq)p FE(.)56 b(Similarly)-8
+b(,)38 b Fz(ncunpack)c FE(is)i(a)g(synon)m(ym)g(for)g
+Fz(ncpdq)e FE(except)j(that)g Fz(ncpack)d FE(implicitly)150
 3313 y(assumes)43 b(a)h(request)g(to)g(unpac)m(k,)j(i.e.,)h(`)p
-Fy(-P)30 b(pck_upk)p FD('.)79 b(Finally)-8 b(,)48 b(the)c
-Fy(ncpdq)e FD(`)p Fy(-U)p FD(')i(switc)m(h)g(\(or)g(its)150
+Fz(-P)30 b(pck_upk)p FE('.)79 b(Finally)-8 b(,)48 b(the)c
+Fz(ncpdq)e FE(`)p Fz(-U)p FE(')i(switc)m(h)g(\(or)g(its)150
 3423 y(long)32 b(option)g(equiv)-5 b(alen)m(ts,)33 b(`)p
-Fy(--upk)p FD(')d(and)g(`)p Fy(--unpack)p FD('\))g(requires)h(no)g
+Fz(--upk)p FE(')d(and)g(`)p Fz(--unpack)p FE('\))g(requires)h(no)g
 (argumen)m(t.)44 b(It)31 b(simply)g(requests)150 3532
 y(unpac)m(king.)275 3724 y(Giv)m(en)i(the)g(menagerie)h(of)f(synon)m
 (yms,)f(equiv)-5 b(alen)m(t)35 b(options,)e(and)f(implied)h(options,)h
 (a)f(short)f(list)150 3833 y(of)j(some)g(equiv)-5 b(alen)m(t)36
 b(commands)f(is)f(appropriate.)54 b(The)34 b(follo)m(wing)j(commands)d
 (are)h(equiv)-5 b(alen)m(t)36 b(for)150 3943 y(pac)m(king:)45
-b Fy(ncpdq)29 b(-P)h(all_new)p FD(,)h Fy(ncpdq)e(--pck_plc=all_new)p
-FD(,)f(and)k Fy(ncpack)p FD(.)45 b(The)31 b(follo)m(wing)j(com-)150
+b Fz(ncpdq)29 b(-P)h(all_new)p FE(,)h Fz(ncpdq)e(--pck_plc=all_new)p
+FE(,)f(and)k Fz(ncpack)p FE(.)45 b(The)31 b(follo)m(wing)j(com-)150
 4053 y(mands)h(are)h(equiv)-5 b(alen)m(t)38 b(for)e(unpac)m(king:)52
-b Fy(ncpdq)29 b(-P)g(upk)p FD(,)37 b Fy(ncpdq)29 b(-U)p
-FD(,)37 b Fy(ncpdq)29 b(--pck_plc=unpack)p FD(,)150 4162
-y(and)j Fy(ncunpack)p FD(.)44 b(Equiv)-5 b(alen)m(t)33
+b Fz(ncpdq)29 b(-P)g(upk)p FE(,)37 b Fz(ncpdq)29 b(-U)p
+FE(,)37 b Fz(ncpdq)29 b(--pck_plc=unpack)p FE(,)150 4162
+y(and)j Fz(ncunpack)p FE(.)44 b(Equiv)-5 b(alen)m(t)33
 b(commands)f(for)g(other)g(pac)m(king)h(p)s(olicies,)h(e.g.,)g(`)p
-Fy(all_xst)p FD(',)e(follo)m(w)h(b)m(y)150 4272 y(analogy)-8
-b(.)63 b(Note)38 b(that)g Fy(ncpdq)e FD(synon)m(yms)g(are)i(sub)5
+Fz(all_xst)p FE(',)e(follo)m(w)h(b)m(y)150 4272 y(analogy)-8
+b(.)63 b(Note)38 b(that)g Fz(ncpdq)e FE(synon)m(yms)g(are)i(sub)5
 b(ject)37 b(to)h(the)f(same)h(constrain)m(ts)g(and)e(recommen-)150
 4381 y(dations)h(discussed)e(in)h(the)h(secion)g(on)f
-Fy(ncbo)f FD(synon)m(yms)h(\(see)h(Section)g(4.3)h([ncb)s(o)e(netCDF)h
-(Binary)150 4491 y(Op)s(erator],)g(page)g(162\).)59 b(That)36
+Fz(ncbo)f FE(synon)m(yms)h(\(see)h(Section)g(4.3)h([ncb)s(o)e(netCDF)h
+(Binary)150 4491 y(Op)s(erator],)g(page)g(174\).)59 b(That)36
 b(is,)h(sym)m(b)s(olic)f(links)g(m)m(ust)g(exist)g(from)g(the)g(synon)m
-(ym)f(to)i Fy(ncpdq)p FD(,)f(or)150 4601 y(else)31 b(the)g(user)e(m)m
-(ust)i(de\014ne)e(an)i Fy(alias)p FD(.)275 4792 y(The)f
-Fy(ncpdq)g FD(pac)m(king)i(algorithms)h(m)m(ust)e(kno)m(w)g(to)h(whic)m
+(ym)f(to)i Fz(ncpdq)p FE(,)f(or)150 4601 y(else)31 b(the)g(user)e(m)m
+(ust)i(de\014ne)e(an)i Fz(alias)p FE(.)275 4792 y(The)f
+Fz(ncpdq)g FE(pac)m(king)i(algorithms)h(m)m(ust)e(kno)m(w)g(to)h(whic)m
 (h)f(t)m(yp)s(e)h(particular)f(t)m(yp)s(es)h(of)f(input)f(v)-5
 b(ari-)150 4902 y(ables)24 b(are)f(to)i(b)s(e)d(pac)m(k)m(ed.)40
 b(The)23 b(corresp)s(ondence)f(b)s(et)m(w)m(een)i(the)g(input)e(v)-5
 b(ariable)24 b(t)m(yp)s(e)g(and)f(the)g(output,)150 5011
 y(pac)m(k)m(ed)37 b(t)m(yp)s(e,)g(is)f(called)g(the)g
-Fz(pac)m(king)h(map)p FD(.)56 b(The)35 b(user)g(sp)s(eci\014es)g(the)g
+FA(pac)m(king)h(map)p FE(.)56 b(The)35 b(user)g(sp)s(eci\014es)g(the)g
 (desired)g(pac)m(king)i(map)e(with)150 5121 y(the)f(`)p
-Fy(-M)p FD(')f(switc)m(h)h(\(or)g(its)g(long)g(option)g(equiv)-5
-b(alen)m(ts,)36 b(`)p Fy(--pck_map)p FD(')31 b(and)i(`)p
-Fy(--map)p FD('\))g(and)g(its)h Fz(p)s(c)m(k)p 3542 5121
-V 40 w(map)150 5230 y FD(argumen)m(t.)41 b(Fiv)m(e)32
+Fz(-M)p FE(')f(switc)m(h)h(\(or)g(its)g(long)g(option)g(equiv)-5
+b(alen)m(ts,)36 b(`)p Fz(--pck_map)p FE(')31 b(and)i(`)p
+Fz(--map)p FE('\))g(and)g(its)h FA(p)s(c)m(k)p 3542 5121
+V 40 w(map)150 5230 y FE(argumen)m(t.)41 b(Fiv)m(e)32
 b(pac)m(king)f(maps)f(are)h(curren)m(tly)f(implemen)m(ted:)p
 eop end
-%%Page: 192 198
-TeXDict begin 192 197 bop 150 -116 a FD(192)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fz(P)m(ac)m(k)i(Floating)g
-(Precisions)f(to)g Fy(NC_SHORT)d Fz([)p Fo(default)9
-b Fz(])630 408 y FD(De\014nition:)41 b(P)m(ac)m(k)32
-b(\015oating)g(precision)e(t)m(yp)s(es)h(to)g Fy(NC_SHORT)630
-518 y FD(Map:)41 b(P)m(ac)m(k)32 b([)p Fy(NC_DOUBLE)p
-FD(,)p Fy(NC_FLOAT)p FD(])26 b(to)31 b Fy(NC_SHORT)630
-628 y FD(T)m(yp)s(es)48 b(copied)i(instead)f(of)h(pac)m(k)m(ed:)79
-b([)p Fy(NC_INT64)p FD(,)p Fy(NC_UINT64)p FD(,)p Fy(NC_INT)p
-FD(,)p Fy(NC_U)o(INT)p FD(,)p Fy(NC)o(_)630 737 y(SHORT)p
-FD(,)p Fy(NC_USHORT)p FD(,)p Fy(NC_CHAR)p FD(,)p Fy(NC_BYT)o(E)p
-FD(,)p Fy(NC_U)o(BYT)o(E)p FD(])630 847 y Fz(p)s(c)m(k)p
-775 847 28 4 v 40 w(map)33 b FD(k)m(ey)e(v)-5 b(alues:)41
-b(`)p Fy(flt_sht)p FD(',)29 b(`)p Fy(pck_map_flt_sht)p
-FD(')150 1117 y Fz(P)m(ac)m(k)j(Floating)g(Precisions)f(to)g
-Fy(NC_BYTE)630 1226 y FD(De\014nition:)41 b(P)m(ac)m(k)32
-b(\015oating)g(precision)e(t)m(yp)s(es)h(to)g Fy(NC_BYTE)630
-1336 y FD(Map:)41 b(P)m(ac)m(k)32 b([)p Fy(NC_DOUBLE)p
-FD(,)p Fy(NC_FLOAT)p FD(])26 b(to)31 b Fy(NC_BYTE)630
-1445 y FD(T)m(yp)s(es)48 b(copied)i(instead)f(of)h(pac)m(k)m(ed:)79
-b([)p Fy(NC_INT64)p FD(,)p Fy(NC_UINT64)p FD(,)p Fy(NC_INT)p
-FD(,)p Fy(NC_U)o(INT)p FD(,)p Fy(NC)o(_)630 1555 y(SHORT)p
-FD(,)p Fy(NC_USHORT)p FD(,)p Fy(NC_CHAR)p FD(,)p Fy(NC_BYT)o(E)p
-FD(,)p Fy(NC_U)o(BYT)o(E)p FD(])630 1665 y Fz(p)s(c)m(k)p
-775 1665 V 40 w(map)33 b FD(k)m(ey)e(v)-5 b(alues:)41
-b(`)p Fy(flt_byt)p FD(',)29 b(`)p Fy(pck_map_flt_byt)p
-FD(')150 1935 y Fz(P)m(ac)m(k)j(Higher)f(Precisions)f(to)i
-Fy(NC_SHORT)630 2044 y FD(De\014nition:)41 b(P)m(ac)m(k)32
-b(higher)e(precision)h(t)m(yp)s(es)f(to)h Fy(NC_SHORT)630
-2154 y FD(Map:)102 b(P)m(ac)m(k)63 b([)p Fy(NC_DOUBLE)p
-FD(,)p Fy(NC_FLOAT)p FD(,)p Fy(NC_INT64)p FD(,)p Fy(NC_U)o(INT)o(64)p
-FD(,)p Fy(NC_)o(INT)p FD(,)p Fy(NC)o(_UI)o(NT)p FD(])55
-b(to)630 2263 y Fy(NC_SHORT)630 2373 y FD(T)m(yp)s(es)40
-b(copied)i(instead)f(of)h(pac)m(k)m(ed:)63 b([)p Fy(NC_SHORT)p
-FD(,)p Fy(NC_USHORT)p FD(,)p Fy(NC_CHAR)p FD(,)p Fy(NC_B)o(YTE)p
-FD(,)p Fy(NC)o(_)630 2483 y(UBYTE)p FD(])630 2592 y Fz(p)s(c)m(k)p
-775 2592 V 40 w(map)33 b FD(k)m(ey)e(v)-5 b(alues:)41
-b(`)p Fy(hgh_sht)p FD(',)29 b(`)p Fy(pck_map_hgh_sht)p
-FD(')150 2862 y Fz(P)m(ac)m(k)j(Higher)f(Precisions)f(to)i
-Fy(NC_BYTE)630 2972 y FD(De\014nition:)41 b(P)m(ac)m(k)32
-b(higher)e(precision)h(t)m(yp)s(es)f(to)h Fy(NC_BYTE)630
-3081 y FD(Map:)102 b(P)m(ac)m(k)62 b([)p Fy(NC_DOUBLE)p
-FD(,)p Fy(NC_FLOAT)p FD(,)p Fy(NC_INT64)p FD(,)p Fy(NC_)o(UIN)o(T64)p
-FD(,)p Fy(NC)o(_INT)o FD(,)p Fy(NC_U)o(INT)p FD(,)p Fy(NC)o(_)630
-3191 y(SHORT)p FD(,)p Fy(NC_USHORT)p FD(])27 b(to)k Fy(NC_BYTE)630
-3300 y FD(T)m(yp)s(es)f(copied)h(instead)f(of)h(pac)m(k)m(ed:)42
-b([)p Fy(NC_CHAR)p FD(,)p Fy(NC_BYTE)p FD(,)p Fy(NC_UBYTE)p
-FD(])630 3410 y Fz(p)s(c)m(k)p 775 3410 V 40 w(map)33
-b FD(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fy(hgh_byt)p FD(',)29
-b(`)p Fy(pck_map_hgh_byt)p FD(')150 3680 y Fz(P)m(ac)m(k)j(to)f(Next)g
-(Lesser)g(Precision)630 3789 y FD(De\014nition:)41 b(P)m(ac)m(k)32
+%%Page: 204 210
+TeXDict begin 204 209 bop 150 -116 a FE(204)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FA(P)m(ac)m(k)i(Floating)g
+(Precisions)f(to)g Fz(NC_SHORT)d FA([)p Fp(default)9
+b FA(])630 408 y FE(De\014nition:)41 b(P)m(ac)m(k)32
+b(\015oating)g(precision)e(t)m(yp)s(es)h(to)g Fz(NC_SHORT)630
+518 y FE(Map:)41 b(P)m(ac)m(k)32 b([)p Fz(NC_DOUBLE)p
+FE(,)p Fz(NC_FLOAT)p FE(])26 b(to)31 b Fz(NC_SHORT)630
+628 y FE(T)m(yp)s(es)48 b(copied)i(instead)f(of)h(pac)m(k)m(ed:)79
+b([)p Fz(NC_INT64)p FE(,)p Fz(NC_UINT64)p FE(,)p Fz(NC_INT)p
+FE(,)p Fz(NC_U)o(INT)p FE(,)p Fz(NC)o(_)630 737 y(SHORT)p
+FE(,)p Fz(NC_USHORT)p FE(,)p Fz(NC_CHAR)p FE(,)p Fz(NC_BYT)o(E)p
+FE(,)p Fz(NC_U)o(BYT)o(E)p FE(])630 847 y FA(p)s(c)m(k)p
+775 847 28 4 v 40 w(map)33 b FE(k)m(ey)e(v)-5 b(alues:)41
+b(`)p Fz(flt_sht)p FE(',)29 b(`)p Fz(pck_map_flt_sht)p
+FE(')150 1117 y FA(P)m(ac)m(k)j(Floating)g(Precisions)f(to)g
+Fz(NC_BYTE)630 1226 y FE(De\014nition:)41 b(P)m(ac)m(k)32
+b(\015oating)g(precision)e(t)m(yp)s(es)h(to)g Fz(NC_BYTE)630
+1336 y FE(Map:)41 b(P)m(ac)m(k)32 b([)p Fz(NC_DOUBLE)p
+FE(,)p Fz(NC_FLOAT)p FE(])26 b(to)31 b Fz(NC_BYTE)630
+1445 y FE(T)m(yp)s(es)48 b(copied)i(instead)f(of)h(pac)m(k)m(ed:)79
+b([)p Fz(NC_INT64)p FE(,)p Fz(NC_UINT64)p FE(,)p Fz(NC_INT)p
+FE(,)p Fz(NC_U)o(INT)p FE(,)p Fz(NC)o(_)630 1555 y(SHORT)p
+FE(,)p Fz(NC_USHORT)p FE(,)p Fz(NC_CHAR)p FE(,)p Fz(NC_BYT)o(E)p
+FE(,)p Fz(NC_U)o(BYT)o(E)p FE(])630 1665 y FA(p)s(c)m(k)p
+775 1665 V 40 w(map)33 b FE(k)m(ey)e(v)-5 b(alues:)41
+b(`)p Fz(flt_byt)p FE(',)29 b(`)p Fz(pck_map_flt_byt)p
+FE(')150 1935 y FA(P)m(ac)m(k)j(Higher)f(Precisions)f(to)i
+Fz(NC_SHORT)630 2044 y FE(De\014nition:)41 b(P)m(ac)m(k)32
+b(higher)e(precision)h(t)m(yp)s(es)f(to)h Fz(NC_SHORT)630
+2154 y FE(Map:)102 b(P)m(ac)m(k)63 b([)p Fz(NC_DOUBLE)p
+FE(,)p Fz(NC_FLOAT)p FE(,)p Fz(NC_INT64)p FE(,)p Fz(NC_U)o(INT)o(64)p
+FE(,)p Fz(NC_)o(INT)p FE(,)p Fz(NC)o(_UI)o(NT)p FE(])55
+b(to)630 2263 y Fz(NC_SHORT)630 2373 y FE(T)m(yp)s(es)40
+b(copied)i(instead)f(of)h(pac)m(k)m(ed:)63 b([)p Fz(NC_SHORT)p
+FE(,)p Fz(NC_USHORT)p FE(,)p Fz(NC_CHAR)p FE(,)p Fz(NC_B)o(YTE)p
+FE(,)p Fz(NC)o(_)630 2483 y(UBYTE)p FE(])630 2592 y FA(p)s(c)m(k)p
+775 2592 V 40 w(map)33 b FE(k)m(ey)e(v)-5 b(alues:)41
+b(`)p Fz(hgh_sht)p FE(',)29 b(`)p Fz(pck_map_hgh_sht)p
+FE(')150 2862 y FA(P)m(ac)m(k)j(Higher)f(Precisions)f(to)i
+Fz(NC_BYTE)630 2972 y FE(De\014nition:)41 b(P)m(ac)m(k)32
+b(higher)e(precision)h(t)m(yp)s(es)f(to)h Fz(NC_BYTE)630
+3081 y FE(Map:)102 b(P)m(ac)m(k)62 b([)p Fz(NC_DOUBLE)p
+FE(,)p Fz(NC_FLOAT)p FE(,)p Fz(NC_INT64)p FE(,)p Fz(NC_)o(UIN)o(T64)p
+FE(,)p Fz(NC)o(_INT)o FE(,)p Fz(NC_U)o(INT)p FE(,)p Fz(NC)o(_)630
+3191 y(SHORT)p FE(,)p Fz(NC_USHORT)p FE(])27 b(to)k Fz(NC_BYTE)630
+3300 y FE(T)m(yp)s(es)f(copied)h(instead)f(of)h(pac)m(k)m(ed:)42
+b([)p Fz(NC_CHAR)p FE(,)p Fz(NC_BYTE)p FE(,)p Fz(NC_UBYTE)p
+FE(])630 3410 y FA(p)s(c)m(k)p 775 3410 V 40 w(map)33
+b FE(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fz(hgh_byt)p FE(',)29
+b(`)p Fz(pck_map_hgh_byt)p FE(')150 3680 y FA(P)m(ac)m(k)j(to)f(Next)g
+(Lesser)g(Precision)630 3789 y FE(De\014nition:)41 b(P)m(ac)m(k)32
 b(eac)m(h)g(t)m(yp)s(e)e(to)h(t)m(yp)s(e)g(of)g(next)f(lesser)h(size)
-630 3899 y(Map:)41 b(P)m(ac)m(k)31 b([)p Fy(NC_DOUBLE)p
-FD(,)p Fy(NC_INT64)p FD(,)p Fy(NC_UINT64)p FD(],)24 b(to)30
-b Fy(NC_INT)p FD(.)39 b(P)m(ac)m(k)32 b([)p Fy(NC_FLOAT)p
-FD(,)p Fy(NC_)630 4009 y(INT)p FD(,)p Fy(NC_UINT)p FD(])c(to)j
-Fy(NC_SHORT)p FD(.)39 b(P)m(ac)m(k)32 b([)p Fy(NC_SHORT)p
-FD(,)p Fy(NC_USHORT)p FD(])26 b(to)31 b Fy(NC_BYTE)p
-FD(.)630 4118 y(T)m(yp)s(es)f(copied)h(instead)f(of)h(pac)m(k)m(ed:)42
-b([)p Fy(NC_CHAR)p FD(,)p Fy(NC_BYTE)p FD(,)p Fy(NC_UBYTE)p
-FD(])630 4228 y Fz(p)s(c)m(k)p 775 4228 V 40 w(map)33
-b FD(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fy(nxt_lsr)p FD(',)29
-b(`)p Fy(pck_map_nxt_lsr)p FD(')150 4523 y(The)46 b(default)h(`)p
-Fy(all_new)p FD(')e(pac)m(king)j(p)s(olicy)e(with)h(the)g(default)f(`)p
-Fy(flt_sht)p FD(')f(pac)m(king)j(map)e(reduces)150 4632
-y(the)32 b(t)m(ypical)h Fy(NC_FLOAT)p FD(-dominated)d(\014le)i(size)h
-(b)m(y)e(ab)s(out)f(50\045.)j(`)p Fy(flt_byt)p FD(')d(pac)m(king)j
-(reduces)e(an)h Fy(NC_)150 4742 y(DOUBLE)p FD(-dominated)d(\014le)i(b)m
+630 3899 y(Map:)41 b(P)m(ac)m(k)31 b([)p Fz(NC_DOUBLE)p
+FE(,)p Fz(NC_INT64)p FE(,)p Fz(NC_UINT64)p FE(],)24 b(to)30
+b Fz(NC_INT)p FE(.)39 b(P)m(ac)m(k)32 b([)p Fz(NC_FLOAT)p
+FE(,)p Fz(NC_)630 4009 y(INT)p FE(,)p Fz(NC_UINT)p FE(])c(to)j
+Fz(NC_SHORT)p FE(.)39 b(P)m(ac)m(k)32 b([)p Fz(NC_SHORT)p
+FE(,)p Fz(NC_USHORT)p FE(])26 b(to)31 b Fz(NC_BYTE)p
+FE(.)630 4118 y(T)m(yp)s(es)f(copied)h(instead)f(of)h(pac)m(k)m(ed:)42
+b([)p Fz(NC_CHAR)p FE(,)p Fz(NC_BYTE)p FE(,)p Fz(NC_UBYTE)p
+FE(])630 4228 y FA(p)s(c)m(k)p 775 4228 V 40 w(map)33
+b FE(k)m(ey)e(v)-5 b(alues:)41 b(`)p Fz(nxt_lsr)p FE(',)29
+b(`)p Fz(pck_map_nxt_lsr)p FE(')150 4523 y(The)46 b(default)h(`)p
+Fz(all_new)p FE(')e(pac)m(king)j(p)s(olicy)e(with)h(the)g(default)f(`)p
+Fz(flt_sht)p FE(')f(pac)m(king)j(map)e(reduces)150 4632
+y(the)32 b(t)m(ypical)h Fz(NC_FLOAT)p FE(-dominated)d(\014le)i(size)h
+(b)m(y)e(ab)s(out)f(50\045.)j(`)p Fz(flt_byt)p FE(')d(pac)m(king)j
+(reduces)e(an)h Fz(NC_)150 4742 y(DOUBLE)p FE(-dominated)d(\014le)i(b)m
 (y)f(ab)s(out)g(87\045.)275 4902 y(The)i(netCDF)h(pac)m(king)g
 (algorithm)h(\(see)f(Section)h(4.1.11)g([Metho)s(ds)f(and)f
-(functions],)h(page)g(119\))150 5011 y(is)i(lossy|once)g(pac)m(k)m(ed,)
+(functions],)h(page)g(131\))150 5011 y(is)i(lossy|once)g(pac)m(k)m(ed,)
 j(the)d(exact)h(original)g(data)f(cannot)g(b)s(e)f(reco)m(v)m(ered)j
 (without)d(a)i(full)e(bac)m(kup.)150 5121 y(Hence)42
 b(users)d(should)h(b)s(e)g(a)m(w)m(are)j(of)d(some)i(pac)m(king)f(ca)m
 (v)m(eats:)65 b(First,)43 b(the)e(in)m(teraction)i(of)e(pac)m(king)150
 5230 y(and)29 b(data)i(equal)g(to)g(the)p 1046 5230 V
-70 w Fz(FillV)-8 b(alue)37 b FD(is)30 b(complex.)42 b(T)-8
-b(est)30 b(the)h Fy(_FillValue)c FD(b)s(eha)m(vior)j(b)m(y)g(p)s
+70 w FA(FillV)-8 b(alue)37 b FE(is)30 b(complex.)42 b(T)-8
+b(est)30 b(the)h Fz(_FillValue)c FE(b)s(eha)m(vior)j(b)m(y)g(p)s
 (erforming)150 5340 y(a)37 b(pac)m(k/unpac)m(k)h(cycle)h(to)f(ensure)e
-(data)i(that)f(are)h(missing)f Fo(stay)46 b FD(missing)36
+(data)i(that)f(are)h(missing)f Fp(stay)46 b FE(missing)36
 b(and)h(data)h(that)f(are)h(not)p eop end
-%%Page: 193 199
-TeXDict begin 193 198 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(193)150
-299 y(misssing)30 b(do)h(not)g(join)g(the)g(Air)g(National)h(Guard)e
-(and)g(go)i(missing.)42 b(This)30 b(ma)m(y)h(lead)g(y)m(ou)h(to)f
-(elect)i(a)150 408 y(new)p 338 408 28 4 v 64 w Fz(FillV)-8
-b(alue)p FD(.)41 b(Second,)26 b Fy(ncpdq)d FD(actually)j(allo)m(ws)g
-(pac)m(king)g(in)m(to)g Fy(NC_CHAR)c FD(\(with,)k(e.g.,)i(`)p
-Fy(flt_chr)p FD('\).)150 518 y(Ho)m(w)m(ev)m(er,)d(the)c(in)m(trinsic)g
-(con)m(v)m(ersion)h(of)f Fy(signed)28 b(char)20 b FD(to)h(higher)f
-(precision)h(t)m(yp)s(es)g(is)g(tric)m(ky)g(for)g(v)-5
-b(alues)150 628 y(equal)23 b(to)h(zero,)h(i.e.,)g(for)e
-Fy(NUL)p FD(.)37 b(Hence)23 b(pac)m(king)h(to)f Fy(NC_CHAR)e
-FD(is)i(not)f(do)s(cumen)m(ted)h(or)f(adv)m(ertised.)39
-b(P)m(ac)m(k)150 737 y(in)m(to)31 b Fy(NC_BYTE)e FD(\(with,)h(e.g.,)i
-(`)p Fy(flt_byt)p FD('\))e(instead.)150 928 y Fu(Dimension)43
-b(P)m(erm)m(utation)150 1075 y Fy(ncpdq)26 b FD(re-shap)s(es)i(v)-5
-b(ariables)28 b(in)g Fz(input-\014le)k FD(b)m(y)c(re-ordering)g(and/or)
-f(rev)m(ersing)i(dimensions)e(sp)s(eci\014ed)150 1185
-y(in)42 b(the)g(dimension)f(list.)76 b(The)42 b(dimension)f(list)i(is)e
-(a)i(whitespace-free,)j(comma)d(separated)f(list)h(of)150
+%%Page: 205 211
+TeXDict begin 205 210 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(205)150 299 y(misssing)30
+b(do)h(not)g(join)g(the)g(Air)g(National)h(Guard)e(and)g(go)i(missing.)
+42 b(This)30 b(ma)m(y)h(lead)g(y)m(ou)h(to)f(elect)i(a)150
+408 y(new)p 338 408 28 4 v 64 w FA(FillV)-8 b(alue)p
+FE(.)41 b(Second,)26 b Fz(ncpdq)d FE(actually)j(allo)m(ws)g(pac)m(king)
+g(in)m(to)g Fz(NC_CHAR)c FE(\(with,)k(e.g.,)i(`)p Fz(flt_chr)p
+FE('\).)150 518 y(Ho)m(w)m(ev)m(er,)d(the)c(in)m(trinsic)g(con)m(v)m
+(ersion)h(of)f Fz(signed)28 b(char)20 b FE(to)h(higher)f(precision)h(t)
+m(yp)s(es)g(is)g(tric)m(ky)g(for)g(v)-5 b(alues)150 628
+y(equal)23 b(to)h(zero,)h(i.e.,)g(for)e Fz(NUL)p FE(.)37
+b(Hence)23 b(pac)m(king)h(to)f Fz(NC_CHAR)e FE(is)i(not)f(do)s(cumen)m
+(ted)h(or)f(adv)m(ertised.)39 b(P)m(ac)m(k)150 737 y(in)m(to)31
+b Fz(NC_BYTE)e FE(\(with,)h(e.g.,)i(`)p Fz(flt_byt)p
+FE('\))e(instead.)150 928 y Fv(Dimension)43 b(P)m(erm)m(utation)150
+1075 y Fz(ncpdq)26 b FE(re-shap)s(es)i(v)-5 b(ariables)28
+b(in)g FA(input-\014le)k FE(b)m(y)c(re-ordering)g(and/or)f(rev)m
+(ersing)i(dimensions)e(sp)s(eci\014ed)150 1185 y(in)42
+b(the)g(dimension)f(list.)76 b(The)42 b(dimension)f(list)i(is)e(a)i
+(whitespace-free,)j(comma)d(separated)f(list)h(of)150
 1295 y(dimension)22 b(names,)i(optionally)g(pre\014xed)d(b)m(y)h
 (negativ)m(e)j(signs,)f(that)f(follo)m(ws)h(the)e(`)p
-Fy(-a)p FD(')h(\(or)g(long)g(options)150 1404 y(`)p Fy(--arrange)p
-FD(',)42 b(`)p Fy(--permute)p FD(',)g(`)p Fy(--re-order)p
-FD(',)g(or)f(`)p Fy(--rdr)p FD('\))f(switc)m(h.)73 b(T)-8
+Fz(-a)p FE(')h(\(or)g(long)g(options)150 1404 y(`)p Fz(--arrange)p
+FE(',)42 b(`)p Fz(--permute)p FE(',)g(`)p Fz(--re-order)p
+FE(',)g(or)f(`)p Fz(--rdr)p FE('\))f(switc)m(h.)73 b(T)-8
 b(o)42 b(re-order)f(v)-5 b(ariables)42 b(b)m(y)f(a)150
 1514 y(subset)e(of)g(their)g(dimensions,)i(sp)s(ecify)e(these)h
 (dimensions)e(in)h(a)h(comma-separated)h(list)e(follo)m(wing)150
-1623 y(`)p Fy(-a)p FD(',)29 b(e.g.,)i(`)p Fy(-a)f(lon,lat)p
-FD('.)38 b(T)-8 b(o)29 b(rev)m(erse)h(a)f(dimension,)f(pre\014x)g(its)h
+1623 y(`)p Fz(-a)p FE(',)29 b(e.g.,)i(`)p Fz(-a)f(lon,lat)p
+FE('.)38 b(T)-8 b(o)29 b(rev)m(erse)h(a)f(dimension,)f(pre\014x)g(its)h
 (name)g(with)f(a)h(negativ)m(e)i(sign)d(in)h(the)150
-1733 y(dimension)h(list,)h(e.g.,)h(`)p Fy(-a)e(-lat)p
-FD('.)40 b(Re-ordering)31 b(and)e(rev)m(ersal)j(ma)m(y)f(b)s(e)f(p)s
+1733 y(dimension)h(list,)h(e.g.,)h(`)p Fz(-a)e(-lat)p
+FE('.)40 b(Re-ordering)31 b(and)e(rev)m(ersal)j(ma)m(y)f(b)s(e)f(p)s
 (erformed)e(sim)m(ultaneously)-8 b(,)150 1843 y(e.g.,)32
-b(`)p Fy(-a)e(lon,-lat,time,-lev)p FD('.)275 2002 y(Users)c(ma)m(y)h
+b(`)p Fz(-a)e(lon,-lat,time,-lev)p FE('.)275 2002 y(Users)c(ma)m(y)h
 (sp)s(ecify)g(an)m(y)g(p)s(erm)m(utation)g(of)f(dimensions,)h
 (including)g(p)s(erm)m(utations)f(whic)m(h)h(c)m(hange)150
 2112 y(the)f(record)g(dimension)f(iden)m(tit)m(y)-8 b(.)41
 b(The)26 b(record)g(dimension)f(is)h(re-ordered)g(lik)m(e)h(an)m(y)f
-(other)g(dimension.)150 2221 y(This)35 b(unique)h Fy(ncpdq)f
-FD(capabilit)m(y)j(mak)m(es)f(it)g(p)s(ossible)e(to)i(concatenate)i
+(other)g(dimension.)150 2221 y(This)35 b(unique)h Fz(ncpdq)f
+FE(capabilit)m(y)j(mak)m(es)f(it)g(p)s(ossible)e(to)i(concatenate)i
 (\014les)d(along)i(an)m(y)e(dimension.)150 2331 y(See)g(Section)g
 (2.6.1)h([Concatenation],)j(page)c(18)g(for)g(a)g(detailed)g(example.)
 57 b(The)35 b(record)h(dimension)150 2440 y(is)e(alw)m(a)m(ys)h(the)f
@@ -27594,7 +28784,7 @@ FD(capabilit)m(y)j(mak)m(es)f(it)g(p)s(ossible)e(to)i(concatenate)i
 (54\).)43 b(The)30 b(sp)s(eci\014ed)g(re-ordering)g(fails)i(if)e(it)h
 (requires)g(creating)150 2659 y(more)g(than)f(one)g(record)h(dimension)
 e(amongst)j(all)f(the)f(output)g(v)-5 b(ariables)2755
-2626 y Ft(1)2793 2659 y FD(.)275 2819 y(Tw)m(o)32 b(sp)s(ecial)g(cases)
+2626 y Fu(1)2793 2659 y FE(.)275 2819 y(Tw)m(o)32 b(sp)s(ecial)g(cases)
 h(of)f(dimension)f(re-ordering)h(and)f(rev)m(ersal)i(deserv)m(e)f(sp)s
 (ecial)h(men)m(tion.)45 b(First,)150 2928 y(it)g(ma)m(y)g(b)s(e)f
 (desirable)h(to)g(completely)h(rev)m(erse)f(the)g(storage)h(order)e(of)
@@ -27621,67 +28811,67 @@ b(is)h(a)h(p)s(o)m(w)m(erful)f(op)s(erator,)j(and)d(I)150
 b(sets,)150 4074 y(sheesh!)52 b(I)34 b(just)g(kno)m(w)g(that)h(it)g(do)
 s(es)f(\\The)g(righ)m(t)h(thing")g(according)g(to)g(m)m(y)g(gut)g
 (feelings.)53 b(No)m(w)35 b(do)150 4184 y(y)m(ou)c(feel)g(more)f
-(comfortable)i(using)e(it?)275 4343 y(Let)36 b Fq(D)p
-FD(\()p Fv(x)p FD(\))h(represen)m(t)f(the)g(dimensionalit)m(y)i(of)e
-(the)h(v)-5 b(ariable)37 b Fv(x)p FD(.)58 b(Dimensionalit)m(y)38
+(comfortable)i(using)e(it?)275 4343 y(Let)36 b Fr(D)p
+FE(\()p Fw(x)p FE(\))h(represen)m(t)f(the)g(dimensionalit)m(y)i(of)e
+(the)h(v)-5 b(ariable)37 b Fw(x)p FE(.)58 b(Dimensionalit)m(y)38
 b(describ)s(es)e(the)150 4453 y(order)30 b(and)h(sizes)g(of)g
-(dimensions.)42 b(If)30 b Fv(x)h FD(has)f(rank)h Fv(N)10
-b FD(,)31 b(then)f(w)m(e)h(ma)m(y)h(write)f Fq(D)p FD(\()p
-Fv(x)p FD(\))g(as)g(the)g Fv(N)10 b FD(-elemen)m(t)150
-4562 y(v)m(ector)718 4672 y Fq(D)p FD(\()p Fv(x)p FD(\))26
-b(=)f([)p Fv(D)1132 4686 y Ft(1)1170 4672 y Fv(;)15 b(D)1285
-4686 y Ft(2)1323 4672 y Fv(;)g(D)1438 4686 y Ft(3)1476
-4672 y Fv(;)g(:)g(:)g(:)h(;)f(D)1752 4686 y Fg(n)p Fd(\000)p
-Ft(1)1883 4672 y Fv(;)g(D)1998 4686 y Fg(n)2044 4672
-y Fv(;)g(D)2159 4686 y Fg(n)p Ft(+1)2289 4672 y Fv(;)g(:)g(:)g(:)h(;)f
-(D)2565 4686 y Fg(N)6 b Fd(\000)p Ft(2)2714 4672 y Fv(;)15
-b(D)2829 4686 y Fg(N)6 b Fd(\000)p Ft(1)2978 4672 y Fv(;)15
-b(D)3093 4686 y Fg(N)3156 4672 y FD(])150 4824 y(where)30
-b Fv(D)488 4838 y Fg(n)564 4824 y FD(is)g(the)h(size)g(of)f(the)h
-Fv(n)p FD('th)f(dimension.)275 4983 y(The)f(dimension)h(re-order)g
-(list)h(sp)s(eci\014ed)f(with)g(`)p Fy(-a)p FD(')g(is)h(the)f
-Fv(R)q FD(-elemen)m(t)i(v)m(ector)834 5156 y Fq(R)25
-b FD(=)g([)p Fv(R)1118 5170 y Ft(1)1155 5156 y Fv(;)15
-b(R)1264 5170 y Ft(2)1302 5156 y Fv(;)g(R)1411 5170 y
-Ft(3)1449 5156 y Fv(;)g(:)g(:)g(:)h(;)f(R)1719 5170 y
-Fg(r)r Fd(\000)p Ft(1)1841 5156 y Fv(;)g(R)1950 5170
-y Fg(r)1988 5156 y Fv(;)g(R)2097 5170 y Fg(r)r Ft(+1)2218
-5156 y Fv(;)g(:)g(:)g(:)i(;)e(R)2489 5170 y Fg(R)p Fd(\000)p
-Ft(2)2628 5156 y Fv(;)g(R)2737 5170 y Fg(R)p Fd(\000)p
-Ft(1)2877 5156 y Fv(;)g(R)2986 5170 y Fg(R)3041 5156
-y FD(])p 150 5241 1200 4 v 199 5308 a Ft(1)275 5340 y
-Fs(This)26 b(limitation,)h(imp)r(osed)g(b)n(y)d(the)i(netCDF)f(storage)
+(dimensions.)42 b(If)30 b Fw(x)h FE(has)f(rank)h Fw(N)10
+b FE(,)31 b(then)f(w)m(e)h(ma)m(y)h(write)f Fr(D)p FE(\()p
+Fw(x)p FE(\))g(as)g(the)g Fw(N)10 b FE(-elemen)m(t)150
+4562 y(v)m(ector)718 4672 y Fr(D)p FE(\()p Fw(x)p FE(\))26
+b(=)f([)p Fw(D)1132 4686 y Fu(1)1170 4672 y Fw(;)15 b(D)1285
+4686 y Fu(2)1323 4672 y Fw(;)g(D)1438 4686 y Fu(3)1476
+4672 y Fw(;)g(:)g(:)g(:)h(;)f(D)1752 4686 y Fg(n)p Fc(\000)p
+Fu(1)1883 4672 y Fw(;)g(D)1998 4686 y Fg(n)2044 4672
+y Fw(;)g(D)2159 4686 y Fg(n)p Fu(+1)2289 4672 y Fw(;)g(:)g(:)g(:)h(;)f
+(D)2565 4686 y Fg(N)6 b Fc(\000)p Fu(2)2714 4672 y Fw(;)15
+b(D)2829 4686 y Fg(N)6 b Fc(\000)p Fu(1)2978 4672 y Fw(;)15
+b(D)3093 4686 y Fg(N)3156 4672 y FE(])150 4824 y(where)30
+b Fw(D)488 4838 y Fg(n)564 4824 y FE(is)g(the)h(size)g(of)f(the)h
+Fw(n)p FE('th)f(dimension.)275 4983 y(The)f(dimension)h(re-order)g
+(list)h(sp)s(eci\014ed)f(with)g(`)p Fz(-a)p FE(')g(is)h(the)f
+Fw(R)q FE(-elemen)m(t)i(v)m(ector)834 5156 y Fr(R)25
+b FE(=)g([)p Fw(R)1118 5170 y Fu(1)1155 5156 y Fw(;)15
+b(R)1264 5170 y Fu(2)1302 5156 y Fw(;)g(R)1411 5170 y
+Fu(3)1449 5156 y Fw(;)g(:)g(:)g(:)h(;)f(R)1719 5170 y
+Fg(r)r Fc(\000)p Fu(1)1841 5156 y Fw(;)g(R)1950 5170
+y Fg(r)1988 5156 y Fw(;)g(R)2097 5170 y Fg(r)r Fu(+1)2218
+5156 y Fw(;)g(:)g(:)g(:)i(;)e(R)2489 5170 y Fg(R)p Fc(\000)p
+Fu(2)2628 5156 y Fw(;)g(R)2737 5170 y Fg(R)p Fc(\000)p
+Fu(1)2877 5156 y Fw(;)g(R)2986 5170 y Fg(R)3041 5156
+y FE(])p 150 5241 1200 4 v 199 5308 a Fu(1)275 5340 y
+Ft(This)26 b(limitation,)h(imp)r(osed)g(b)n(y)d(the)i(netCDF)f(storage)
 i(la)n(y)n(er,)f(ma)n(y)g(b)r(e)f(relaxed)h(in)g(the)f(future)g(with)h
 (netCDF4.)p eop end
-%%Page: 194 200
-TeXDict begin 194 199 bop 150 -116 a FD(194)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(There)25 b(need)g(b)s(e)g(no)h
-(relation)h(b)s(et)m(w)m(een)f Fv(N)35 b FD(and)25 b
-Fv(R)q FD(.)39 b(Let)26 b(the)g Fv(S)5 b FD(-elemen)m(t)27
-b(v)m(ector)g Fq(S)e FD(b)s(e)g(the)h(in)m(tersection)150
+%%Page: 206 212
+TeXDict begin 206 211 bop 150 -116 a FE(206)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(There)25 b(need)g(b)s(e)g(no)h
+(relation)h(b)s(et)m(w)m(een)f Fw(N)35 b FE(and)25 b
+Fw(R)q FE(.)39 b(Let)26 b(the)g Fw(S)5 b FE(-elemen)m(t)27
+b(v)m(ector)g Fr(S)e FE(b)s(e)g(the)h(in)m(tersection)150
 408 y(\(i.e.,)32 b(the)f(ordered)e(set)i(of)g(unique)e(shared)h
-(dimensions\))g(of)h Fq(D)f FD(and)f Fq(R)i FD(Then)914
-610 y Fq(S)25 b FD(=)g Fq(R)20 b FA(\\)g Fq(D)990 745
-y FD(=)25 b([)p Fv(S)1167 759 y Ft(1)1204 745 y Fv(;)15
-b(S)1300 759 y Ft(2)1337 745 y Fv(;)g(S)1433 759 y Ft(3)1471
-745 y Fv(;)g(:)g(:)g(:)h(;)f(S)1728 759 y Fg(s)p Fd(\000)p
-Ft(1)1849 745 y Fv(;)g(S)1945 759 y Fg(s)1981 745 y Fv(;)g(S)2077
-759 y Fg(s)p Ft(+1)2196 745 y Fv(;)g(:)g(:)g(:)i(;)e(S)2454
-759 y Fg(S)s Fd(\000)p Ft(2)2587 745 y Fv(;)g(S)2683
-759 y Fg(S)s Fd(\000)p Ft(1)2816 745 y Fv(;)g(S)2912
-759 y Fg(S)2961 745 y FD(])150 946 y Fq(S)30 b FD(is)g(empt)m(y)h(if)f
-Fq(R)36 b Fv(=)-55 b FA(2)25 b Fq(D)p FD(.)275 1106 y(Re-ordering)33
+(dimensions\))g(of)h Fr(D)f FE(and)f Fr(R)i FE(Then)914
+610 y Fr(S)25 b FE(=)g Fr(R)20 b FB(\\)g Fr(D)990 745
+y FE(=)25 b([)p Fw(S)1167 759 y Fu(1)1204 745 y Fw(;)15
+b(S)1300 759 y Fu(2)1337 745 y Fw(;)g(S)1433 759 y Fu(3)1471
+745 y Fw(;)g(:)g(:)g(:)h(;)f(S)1728 759 y Fg(s)p Fc(\000)p
+Fu(1)1849 745 y Fw(;)g(S)1945 759 y Fg(s)1981 745 y Fw(;)g(S)2077
+759 y Fg(s)p Fu(+1)2196 745 y Fw(;)g(:)g(:)g(:)i(;)e(S)2454
+759 y Fg(S)s Fc(\000)p Fu(2)2587 745 y Fw(;)g(S)2683
+759 y Fg(S)s Fc(\000)p Fu(1)2816 745 y Fw(;)g(S)2912
+759 y Fg(S)2961 745 y FE(])150 946 y Fr(S)30 b FE(is)g(empt)m(y)h(if)f
+Fr(R)36 b Fw(=)-55 b FB(2)25 b Fr(D)p FE(.)275 1106 y(Re-ordering)33
 b(\(or)g(re-shaping\))g(a)h(v)-5 b(ariable)34 b(means)e(mapping)h(the)g
 (input)f(state)i(with)f(dimension-)150 1215 y(alit)m(y)i
-Fq(D)p FD(\()p Fv(x)p FD(\))f(to)h(the)f(output)f(state)i(with)e
-(dimensionalit)m(y)i Fq(D)2278 1182 y Fd(0)2301 1215
-y FD(\()p Fv(x)2388 1182 y Fd(0)2412 1215 y FD(\).)51
+Fr(D)p FE(\()p Fw(x)p FE(\))f(to)h(the)f(output)f(state)i(with)e
+(dimensionalit)m(y)i Fr(D)2278 1182 y Fc(0)2301 1215
+y FE(\()p Fw(x)2388 1182 y Fc(0)2412 1215 y FE(\).)51
 b(In)33 b(practice,)j(mapping)d(o)s(ccurs)g(in)150 1325
 y(three)d(logically)i(distinct)e(steps.)40 b(First,)30
 b(w)m(e)g(tranlate)h(the)f(user)f(input)f(to)j(a)e(one-to-one)j
-(mapping)d FA(M)150 1435 y FD(b)s(et)m(w)m(een)i(input)e(and)g(output)h
-(dimensions,)g Fq(D)25 b FA(7!)g Fq(D)1989 1402 y Fd(0)2012
-1435 y FD(.)41 b(This)29 b(ten)m(tativ)m(e)k(map)d(is)g(\014nal)g
+(mapping)d FB(M)150 1435 y FE(b)s(et)m(w)m(een)i(input)e(and)g(output)h
+(dimensions,)g Fr(D)25 b FB(7!)g Fr(D)1989 1402 y Fc(0)2012
+1435 y FE(.)41 b(This)29 b(ten)m(tativ)m(e)k(map)d(is)g(\014nal)g
 (unless)f(external)150 1544 y(constrain)m(ts)40 b(\(t)m(ypically)h
 (netCDF)f(restrictions\))g(imp)s(ose)f(themselv)m(es.)68
 b(Second,)41 b(w)m(e)e(c)m(hec)m(k)i(and,)g(if)150 1654
@@ -27698,47 +28888,47 @@ e(according)h(to)h(the)e(C)k(language)e(con)m(v)m(en)m(tion)h(for)150
 b(Dimension)33 b(rev)m(ersal)g(c)m(hanges)g(the)g(ordering)f(of)g
 (data,)i(though)150 2202 y(not)d(the)f(rank)g(or)g(dimensionalit)m(y)-8
 b(,)33 b(and)c(so)i(is)f(part)h(of)f(the)h(third)e(step.)275
-2361 y(Dimensions)24 b Fv(R)g FD(disjoin)m(t)g(from)f
-Fq(D)h FD(pla)m(y)g(no)g(role)g(in)g(re-ordering.)38
+2361 y(Dimensions)24 b Fw(R)g FE(disjoin)m(t)g(from)f
+Fr(D)h FE(pla)m(y)g(no)g(role)g(in)g(re-ordering.)38
 b(The)24 b(\014rst)f(step)h(tak)m(en)h(to)f(re-order)150
 2471 y(a)38 b(v)-5 b(ariable)39 b(is)f(to)h(determine)f
-Fq(S)p FD(.)62 b Fq(R)38 b FD(is)g(constan)m(t)h(for)f(all)h(v)-5
-b(ariables,)41 b(whereas)c Fq(D)p FD(,)j(and)d(hence)h
-Fq(S)p FD(,)i(is)150 2580 y(v)-5 b(ariable-sp)s(eci\014c.)47
-b Fq(S)32 b FD(is)g(empt)m(y)h(if)f Fq(R)39 b Fv(=)-55
-b FA(2)28 b Fq(D)p FD(.)46 b(This)31 b(ma)m(y)i(b)s(e)f(the)g(case)i
+Fr(S)p FE(.)62 b Fr(R)38 b FE(is)g(constan)m(t)h(for)f(all)h(v)-5
+b(ariables,)41 b(whereas)c Fr(D)p FE(,)j(and)d(hence)h
+Fr(S)p FE(,)i(is)150 2580 y(v)-5 b(ariable-sp)s(eci\014c.)47
+b Fr(S)32 b FE(is)g(empt)m(y)h(if)f Fr(R)39 b Fw(=)-55
+b FB(2)28 b Fr(D)p FE(.)46 b(This)31 b(ma)m(y)i(b)s(e)f(the)g(case)i
 (for)e(some)g(extracted)i(v)-5 b(ariables.)150 2690 y(The)27
 b(user)g(ma)m(y)h(explicitly)h(sp)s(ecify)e(the)g(one-to-one)j(mapping)
 c(of)i(input)e(to)j(output)e(dimension)f(order)150 2800
-y(b)m(y)36 b(supplying)f(\(with)i(`)p Fy(-a)p FD('\))g(a)f(re-order)h
-(list)g Fq(R)f FD(suc)m(h)g(that)h Fv(S)k FD(=)35 b Fv(N)10
-b FD(.)58 b(In)36 b(this)g(case)i Fv(D)3225 2767 y Fd(0)3222
-2822 y Fg(n)3303 2800 y FD(=)d Fv(S)3465 2814 y Fg(n)3510
-2800 y FD(.)58 b(The)150 2909 y(degenerate)32 b(case)f(o)s(ccurs)f
-(when)g Fq(D)25 b FD(=)g Fq(S)p FD(.)40 b(This)29 b(pro)s(duces)g(the)i
-(iden)m(tit)m(y)h(mapping)e Fv(D)3157 2876 y Fd(0)3154
-2932 y Fg(n)3224 2909 y FD(=)25 b Fv(D)3395 2923 y Fg(n)3441
-2909 y FD(.)275 3068 y(The)k(mapping)f(of)i(input)f(to)h(output)f
-(dimension)g(order)g(is)g(more)h(complex)g(when)f Fv(S)h
-FA(6)p FD(=)25 b Fv(N)10 b FD(.)40 b(In)29 b(this)150
-3178 y(case)i Fv(D)420 3145 y Fd(0)417 3201 y Fg(n)488
-3178 y FD(=)25 b Fv(D)659 3192 y Fg(n)735 3178 y FD(for)30
-b(the)h Fv(N)f FA(\000)20 b Fv(S)35 b FD(dimensions)30
-b Fv(D)1860 3145 y Fd(0)1857 3201 y Fg(n)1937 3178 y
-Fv(=)-55 b FA(2)25 b Fq(S)p FD(.)40 b(F)-8 b(or)31 b(the)g
-Fv(S)k FD(dimensions)30 b Fv(D)3084 3145 y Fd(0)3081
-3201 y Fg(n)3152 3178 y FA(2)25 b Fq(S)p FD(,)30 b Fv(D)3422
-3145 y Fd(0)3419 3201 y Fg(n)3489 3178 y FD(=)25 b Fv(S)3641
-3192 y Fg(s)3676 3178 y FD(.)150 3337 y(EXAMPLES)275
+y(b)m(y)36 b(supplying)f(\(with)i(`)p Fz(-a)p FE('\))g(a)f(re-order)h
+(list)g Fr(R)f FE(suc)m(h)g(that)h Fw(S)k FE(=)35 b Fw(N)10
+b FE(.)58 b(In)36 b(this)g(case)i Fw(D)3225 2767 y Fc(0)3222
+2822 y Fg(n)3303 2800 y FE(=)d Fw(S)3465 2814 y Fg(n)3510
+2800 y FE(.)58 b(The)150 2909 y(degenerate)32 b(case)f(o)s(ccurs)f
+(when)g Fr(D)25 b FE(=)g Fr(S)p FE(.)40 b(This)29 b(pro)s(duces)g(the)i
+(iden)m(tit)m(y)h(mapping)e Fw(D)3157 2876 y Fc(0)3154
+2932 y Fg(n)3224 2909 y FE(=)25 b Fw(D)3395 2923 y Fg(n)3441
+2909 y FE(.)275 3068 y(The)k(mapping)f(of)i(input)f(to)h(output)f
+(dimension)g(order)g(is)g(more)h(complex)g(when)f Fw(S)h
+FB(6)p FE(=)25 b Fw(N)10 b FE(.)40 b(In)29 b(this)150
+3178 y(case)i Fw(D)420 3145 y Fc(0)417 3201 y Fg(n)488
+3178 y FE(=)25 b Fw(D)659 3192 y Fg(n)735 3178 y FE(for)30
+b(the)h Fw(N)f FB(\000)20 b Fw(S)35 b FE(dimensions)30
+b Fw(D)1860 3145 y Fc(0)1857 3201 y Fg(n)1937 3178 y
+Fw(=)-55 b FB(2)25 b Fr(S)p FE(.)40 b(F)-8 b(or)31 b(the)g
+Fw(S)k FE(dimensions)30 b Fw(D)3084 3145 y Fc(0)3081
+3201 y Fg(n)3152 3178 y FB(2)25 b Fr(S)p FE(,)30 b Fw(D)3422
+3145 y Fc(0)3419 3201 y Fg(n)3489 3178 y FE(=)25 b Fw(S)3641
+3192 y Fg(s)3676 3178 y FE(.)150 3337 y(EXAMPLES)275
 3497 y(P)m(ac)m(k)31 b(and)f(unpac)m(k)g(all)i(v)-5 b(ariables)31
-b(in)f(\014le)g Fy(in.nc)f FD(and)h(store)h(the)f(results)h(in)f
-Fy(out.nc)p FD(:)390 3656 y Fy(ncpdq)46 b(in.nc)h(out.nc)f(#)h(Same)g
+b(in)f(\014le)g Fz(in.nc)f FE(and)h(store)h(the)f(results)h(in)f
+Fz(out.nc)p FE(:)390 3656 y Fz(ncpdq)46 b(in.nc)h(out.nc)f(#)h(Same)g
 (as)g(ncpack)f(in.nc)h(out.nc)390 3766 y(ncpdq)f(-P)i(all_new)d(-M)j
 (flt_sht)d(in.nc)i(out.nc)f(#)h(Defaults)390 3875 y(ncpdq)f(-P)i
 (all_xst)d(in.nc)i(out.nc)390 3985 y(ncpdq)f(-P)i(upk)e(in.nc)h(out.nc)
 f(#)h(Same)g(as)g(ncunpack)f(in.nc)g(out.nc)390 4095
 y(ncpdq)g(-U)i(in.nc)e(out.nc)g(#)h(Same)g(as)g(ncunpack)f(in.nc)g
-(out.nc)275 4254 y FD(The)27 b(\014rst)g(t)m(w)m(o)i(commands)f(pac)m
+(out.nc)275 4254 y FE(The)27 b(\014rst)g(t)m(w)m(o)i(commands)f(pac)m
 (k)g(an)m(y)g(unpac)m(k)m(ed)g(v)-5 b(ariable)29 b(in)e(the)h(input)f
 (\014le.)40 b(They)27 b(also)i(unpac)m(k)150 4364 y(and)d(then)g
 (re-pac)m(k)i(ev)m(ery)f(pac)m(k)m(ed)h(v)-5 b(ariable.)40
@@ -27756,30 +28946,30 @@ b(y)m(ou)j(wish)e(to)i(arc)m(hiv)m(e)150 4961 y(all)34
 b(data)g(that)g(are)g(curren)m(tly)f(unpac)m(k)m(ed)h(in)m(to)g(a)f
 (form)g(whic)m(h)g(only)h(preserv)m(es)f(256)i(distinct)e(v)-5
 b(alues.)150 5071 y(Then)40 b(y)m(ou)i(could)f(sp)s(ecify)g(the)g(pac)m
-(king)i(map)e Fz(p)s(c)m(k)p 2016 5071 28 4 v 39 w(map)j
-FD(as)e(`)p Fy(hgh_byt)p FD(')d(and)i(the)g(pac)m(king)i(p)s(olicy)150
-5181 y Fz(p)s(c)m(k)p 295 5181 V 40 w(plc)36 b FD(as)30
-b(`)p Fy(all_xst)p FD(':)390 5340 y Fy(ncpdq)46 b(-P)i(all_xst)d(-M)j
+(king)i(map)e FA(p)s(c)m(k)p 2016 5071 28 4 v 39 w(map)j
+FE(as)e(`)p Fz(hgh_byt)p FE(')d(and)i(the)g(pac)m(king)i(p)s(olicy)150
+5181 y FA(p)s(c)m(k)p 295 5181 V 40 w(plc)36 b FE(as)30
+b(`)p Fz(all_xst)p FE(':)390 5340 y Fz(ncpdq)46 b(-P)i(all_xst)d(-M)j
 (hgh_byt)d(in.nc)i(out.nc)p eop end
-%%Page: 195 201
-TeXDict begin 195 200 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(195)275
-299 y(Man)m(y)36 b(di\013eren)m(t)g(pac)m(king)h(maps)e(ma)m(y)h(b)s(e)
-f(used)g(to)h(construct)g(a)g(giv)m(en)h(\014le)f(b)m(y)f(p)s
-(erforming)g(the)150 408 y(pac)m(king)29 b(on)f(subsets)f(of)i(v)-5
-b(ariables)28 b(\(e.g.,)j(with)d(`)p Fy(-v)p FD('\))g(and)f(using)h
-(the)g(app)s(end)f(feature)h(with)g(`)p Fy(-A)p FD(')g(\(see)150
-518 y(Section)j(2.4)h([App)s(ending)d(V)-8 b(ariables],)32
-b(page)f(17\).)275 699 y(Users)k(ma)m(y)h(wish)f(to)i(unpac)m(k)e(data)
-i(pac)m(k)m(ed)g(with)e(the)h FC(HDF)h FD(con)m(v)m(en)m(tion,)i(and)c
-(then)h(re-pac)m(k)g(it)150 809 y(with)k(the)g(netCDF)g(con)m(v)m(en)m
-(tion)j(so)d(that)g(all)h(their)f(datasets)i(use)d(the)h(same)h(pac)m
-(king)g(con)m(v)m(en)m(tion)150 918 y(prior)30 b(to)h(in)m
-(tercomparison.)390 1100 y Fy(#)47 b(One-step)f(procedure:)f(For)i(NCO)
-g(4.4.0+,)f(netCDF)g(4.3.1+)390 1209 y(#)h(1.)h(Convert,)d(unpack,)h
-(and)h(repack)f(HDF)h(file)g(into)f(netCDF)g(file)390
-1319 y(ncpdq)g(--hdf_upk)g(-P)h(xst_new)f(modis.hdf)f(modis.nc)g(#)j
-(HDF4)f(files)390 1428 y(ncpdq)f(--hdf_upk)g(-P)h(xst_new)f(modis.h5)93
+%%Page: 207 213
+TeXDict begin 207 212 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(207)275 299 y(Man)m(y)36
+b(di\013eren)m(t)g(pac)m(king)h(maps)e(ma)m(y)h(b)s(e)f(used)g(to)h
+(construct)g(a)g(giv)m(en)h(\014le)f(b)m(y)f(p)s(erforming)g(the)150
+408 y(pac)m(king)29 b(on)f(subsets)f(of)i(v)-5 b(ariables)28
+b(\(e.g.,)j(with)d(`)p Fz(-v)p FE('\))g(and)f(using)h(the)g(app)s(end)f
+(feature)h(with)g(`)p Fz(-A)p FE(')g(\(see)150 518 y(Section)j(2.4)h
+([App)s(ending)d(V)-8 b(ariables],)32 b(page)f(17\).)275
+699 y(Users)k(ma)m(y)h(wish)f(to)i(unpac)m(k)e(data)i(pac)m(k)m(ed)g
+(with)e(the)h FD(HDF)h FE(con)m(v)m(en)m(tion,)i(and)c(then)h(re-pac)m
+(k)g(it)150 809 y(with)k(the)g(netCDF)g(con)m(v)m(en)m(tion)j(so)d
+(that)g(all)h(their)f(datasets)i(use)d(the)h(same)h(pac)m(king)g(con)m
+(v)m(en)m(tion)150 918 y(prior)30 b(to)h(in)m(tercomparison.)390
+1100 y Fz(#)47 b(One-step)f(procedure:)f(For)i(NCO)g(4.4.0+,)f(netCDF)g
+(4.3.1+)390 1209 y(#)h(1.)h(Convert,)d(unpack,)h(and)h(repack)f(HDF)h
+(file)g(into)f(netCDF)g(file)390 1319 y(ncpdq)g(--hdf_upk)g(-P)h
+(xst_new)f(modis.hdf)f(modis.nc)g(#)j(HDF4)f(files)390
+1428 y(ncpdq)f(--hdf_upk)g(-P)h(xst_new)f(modis.h5)93
 b(modis.nc)45 b(#)j(HDF5)f(files)390 1648 y(#)g(One-step)f(procedure:)f
 (For)i(NCO)g(4.3.7--4.3.9)390 1757 y(#)g(1.)h(Convert,)d(unpack,)h(and)
 h(repack)f(HDF)h(file)g(into)f(netCDF)g(file)390 1867
@@ -27790,70 +28980,70 @@ b(modis.nc)46 b(#)h(HDF5)390 2195 y(#)g(Two-step)f(procedure:)f(For)i
 (to)g(netCDF)f(file)390 2415 y(ncl_convert2nc)e(modis.hdf)390
 2524 y(#)j(2.)h(Unpack)e(using)g(HDF)h(convention)e(and)i(repack)f
 (using)g(netCDF)g(convention)390 2634 y(ncpdq)g(--hdf_upk)g(-P)h
-(xst_new)f(modis.nc)f(modis.nc)275 2815 y FC(NCO)d FD(no)m(w)663
-2782 y Ft(2)743 2815 y FD(automatically)j(detects)f FC(HDF4)f
-FD(\014les.)78 b(In)41 b(this)i(case)h(it)f(pro)s(duces)e(an)i(output)f
-(\014le)150 2925 y Fy(modis.nc)35 b FD(whic)m(h)i(preserv)m(es)g(the)h
-FC(HDF)g FD(pac)m(king)g(used)e(in)h(the)h(input)e(\014le.)62
-b(The)36 b Fy(ncpdq)g FD(command)150 3034 y(\014rst)46
+(xst_new)f(modis.nc)f(modis.nc)275 2815 y FD(NCO)d FE(no)m(w)663
+2782 y Fu(2)743 2815 y FE(automatically)j(detects)f FD(HDF4)f
+FE(\014les.)78 b(In)41 b(this)i(case)h(it)f(pro)s(duces)e(an)i(output)f
+(\014le)150 2925 y Fz(modis.nc)35 b FE(whic)m(h)i(preserv)m(es)g(the)h
+FD(HDF)g FE(pac)m(king)g(used)e(in)h(the)h(input)e(\014le.)62
+b(The)36 b Fz(ncpdq)g FE(command)150 3034 y(\014rst)46
 b(unpac)m(ks)g(all)i(pac)m(k)m(ed)g(v)-5 b(ariables)47
-b(using)g(the)g FC(HDF)g FD(unpac)m(king)g(algorithm)h(\(as)f(sp)s
-(eci\014ed)f(b)m(y)150 3144 y(`)p Fy(--hdf_upk)p FD('\),)h(and)d(then)g
+b(using)g(the)g FD(HDF)g FE(unpac)m(king)g(algorithm)h(\(as)f(sp)s
+(eci\014ed)f(b)m(y)150 3144 y(`)p Fz(--hdf_upk)p FE('\),)h(and)d(then)g
 (repac)m(ks)h(those)g(same)g(v)-5 b(ariables)45 b(using)f(the)h(netCDF)
 g(algorithm)h(\(b)s(e-)150 3253 y(cause)34 b(that)g(is)g(the)f(only)h
-(algorithm)g FC(NCO)g FD(pac)m(ks)g(with\).)50 b(As)33
-b(describ)s(ed)g(ab)s(o)m(v)m(e)h(the)g(`)p Fy(--P)c(xst_new)p
-FD(')150 3363 y(pac)m(king)40 b(p)s(olicy)g(only)f(repac)m(ks)h(v)-5
+(algorithm)g FD(NCO)g FE(pac)m(ks)g(with\).)50 b(As)33
+b(describ)s(ed)g(ab)s(o)m(v)m(e)h(the)g(`)p Fz(--P)c(xst_new)p
+FE(')150 3363 y(pac)m(king)40 b(p)s(olicy)g(only)f(repac)m(ks)h(v)-5
 b(ariables)40 b(that)f(are)h(already)g(pac)m(k)m(ed.)68
 b(Not-pac)m(k)m(ed)42 b(v)-5 b(ariables)40 b(are)150
 3472 y(copied)31 b(directly)g(without)f(loss)h(of)g(precision)1728
-3440 y Ft(3)1765 3472 y FD(.)275 3654 y(Re-order)j(\014le)h
-Fy(in.nc)e FD(so)i(that)g(the)g(dimension)f Fy(lon)f
-FD(alw)m(a)m(ys)k(precedes)d(the)h(dimension)f Fy(lat)g
-FD(and)150 3763 y(store)d(the)g(results)f(in)g Fy(out.nc)p
-FD(:)390 3944 y Fy(ncpdq)46 b(-a)i(lon,lat)d(in.nc)i(out.nc)390
+3440 y Fu(3)1765 3472 y FE(.)275 3654 y(Re-order)j(\014le)h
+Fz(in.nc)e FE(so)i(that)g(the)g(dimension)f Fz(lon)f
+FE(alw)m(a)m(ys)k(precedes)d(the)h(dimension)f Fz(lat)g
+FE(and)150 3763 y(store)d(the)g(results)f(in)g Fz(out.nc)p
+FE(:)390 3944 y Fz(ncpdq)46 b(-a)i(lon,lat)d(in.nc)i(out.nc)390
 4054 y(ncpdq)f(-v)i(three_dmn_var)c(-a)j(lon,lat)f(in.nc)g(out.nc)275
-4235 y FD(The)c(\014rst)g(command)h(re-orders)f(ev)m(ery)i(v)-5
+4235 y FE(The)c(\014rst)g(command)h(re-orders)f(ev)m(ery)i(v)-5
 b(ariable)43 b(in)g(the)g(input)f(\014le.)78 b(The)42
 b(second)h(command)150 4345 y(extracts)32 b(and)d(re-orders)i(only)f
-(the)h(v)-5 b(ariable)31 b Fy(three_dmn_var)p FD(.)p
-150 4528 1200 4 v 199 4595 a Ft(2)304 4627 y Fs(Prior)f(to)f
-Fp(NCO)g Fs(4.4.0)i(and)e(netCDF)g(4.3.1)i(\(Jan)n(uary)-6
-b(,)30 b(2014\),)h Fp(NCO)e Fs(requires)g(the)g(`)p Fr(--hdf4)p
-Fs(')i(switc)n(h)f(to)f(correctly)275 4714 y(read)d(HDF4)f(input)g
-(\014les.)36 b(F)-6 b(or)26 b(example,)h(`)p Fr(ncpdq)g(--hdf4)g
-(--hdf_upk)g(-P)f(xst_new)i(modis.hdf)f(modis.nc)p Fs('.)38
+(the)h(v)-5 b(ariable)31 b Fz(three_dmn_var)p FE(.)p
+150 4528 1200 4 v 199 4595 a Fu(2)304 4627 y Ft(Prior)f(to)f
+Fq(NCO)g Ft(4.4.0)i(and)e(netCDF)g(4.3.1)i(\(Jan)n(uary)-6
+b(,)30 b(2014\),)h Fq(NCO)e Ft(requires)g(the)g(`)p Fs(--hdf4)p
+Ft(')i(switc)n(h)f(to)f(correctly)275 4714 y(read)d(HDF4)f(input)g
+(\014les.)36 b(F)-6 b(or)26 b(example,)h(`)p Fs(ncpdq)g(--hdf4)g
+(--hdf_upk)g(-P)f(xst_new)i(modis.hdf)f(modis.nc)p Ft('.)38
 b(That)275 4801 y(switc)n(h)30 b(is)h(no)n(w)f(obsolete,)i(though)e
 (harmless)h(for)g(bac)n(kw)n(ards)f(compatibilit)n(y)-6
 b(.)48 b(Prior)31 b(to)f(v)n(ersion)g(4.3.7)i(\(Octob)r(er,)275
-4888 y(2013\),)26 b Fp(NCO)d Fs(lac)n(k)n(ed)h(the)g(soft)n(w)n(are)h
+4888 y(2013\),)26 b Fq(NCO)d Ft(lac)n(k)n(ed)h(the)g(soft)n(w)n(are)h
 (necessary)g(to)f(w)n(ork)l(around)g(netCDF)g(library)g(\015a)n(ws)g
-(handling)g Fp(HDF4)g Fs(\014les,)h(and)275 4975 y(th)n(us)20
-b Fp(NCO)h Fs(failed)h(to)g(con)n(v)n(ert)f Fp(HDF4)g
-Fs(\014les)g(to)h(netCDF)f(\014les.)33 b(In)21 b(those)h(cases,)h(use)f
-(the)e Fr(ncl_convert2nc)25 b Fs(command)275 5063 y(distributed)g(with)
-h Fp(NCL)f Fs(to)h(con)n(v)n(ert)f Fp(HDF4)h Fs(\014les)g(to)g(netCDF.)
-199 5134 y Ft(3)275 5166 y Fr(ncpdq)h Fs(do)r(es)g(not)g(supp)r(ort)f
-(pac)n(king)h(data)f(using)h(the)f Fp(HDF)h Fs(con)n(v)n(en)n(tion.)36
+(handling)g Fq(HDF4)g Ft(\014les,)h(and)275 4975 y(th)n(us)20
+b Fq(NCO)h Ft(failed)h(to)g(con)n(v)n(ert)f Fq(HDF4)g
+Ft(\014les)g(to)h(netCDF)f(\014les.)33 b(In)21 b(those)h(cases,)h(use)f
+(the)e Fs(ncl_convert2nc)25 b Ft(command)275 5063 y(distributed)g(with)
+h Fq(NCL)f Ft(to)h(con)n(v)n(ert)f Fq(HDF4)h Ft(\014les)g(to)g(netCDF.)
+199 5134 y Fu(3)275 5166 y Fs(ncpdq)h Ft(do)r(es)g(not)g(supp)r(ort)f
+(pac)n(king)h(data)f(using)h(the)f Fq(HDF)h Ft(con)n(v)n(en)n(tion.)36
 b(Although)26 b(it)h(is)g(no)n(w)g(straigh)n(tforw)n(ard)i(to)275
 5253 y(supp)r(ort)22 b(this,)i(w)n(e)f(think)e(it)i(migh)n(t)g(so)n(w)h
 (more)f(confusion)h(than)e(it)h(reaps.)34 b(Let)22 b(us)h(kno)n(w)g(if)
 g(y)n(ou)f(disagree)i(and)f(w)n(ould)275 5340 y(lik)n(e)i
-Fp(NCO)h Fs(to)g(supp)r(ort)f(pac)n(king)g(data)h(with)g
-Fp(HDF)g Fs(algorithm.)p eop end
-%%Page: 196 202
-TeXDict begin 196 201 bop 150 -116 a FD(196)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(Supp)s(ose)39 b(the)i(dimension)g
-Fy(lat)f FD(represen)m(ts)h(latitude)i(and)d(monotonically)j(increases)
+Fq(NCO)h Ft(to)g(supp)r(ort)f(pac)n(king)g(data)h(with)g
+Fq(HDF)g Ft(algorithm.)p eop end
+%%Page: 208 214
+TeXDict begin 208 213 bop 150 -116 a FE(208)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(Supp)s(ose)39 b(the)i(dimension)g
+Fz(lat)f FE(represen)m(ts)h(latitude)i(and)d(monotonically)j(increases)
 f(increases)150 408 y(from)g(south)g(to)h(north.)77 b(Rev)m(ersing)43
-b(the)f Fy(lat)g FD(dimension)g(means)g(re-ordering)h(the)f(data)i(so)e
+b(the)f Fz(lat)g FE(dimension)g(means)g(re-ordering)h(the)f(data)i(so)e
 (that)150 518 y(latitude)31 b(v)-5 b(alues)31 b(decrease)g
 (monotonically)i(from)d(north)f(to)j(south.)40 b(Accomplish)31
-b(this)f(with)390 690 y Fy(\045)47 b(ncpdq)g(-a)g(-lat)g(in.nc)f
+b(this)f(with)390 690 y Fz(\045)47 b(ncpdq)g(-a)g(-lat)g(in.nc)f
 (out.nc)390 800 y(\045)h(ncks)g(-C)g(-v)g(lat)g(in.nc)390
 909 y(lat[0]=-90)390 1019 y(lat[1]=90)390 1129 y(\045)g(ncks)g(-C)g(-v)
 g(lat)g(out.nc)390 1238 y(lat[0]=90)390 1348 y(lat[1]=-90)275
-1520 y FD(This)25 b(op)s(eration)i(rev)m(ersed)g(the)g(latitude)g
+1520 y FE(This)25 b(op)s(eration)i(rev)m(ersed)g(the)g(latitude)g
 (dimension)f(of)h(all)g(v)-5 b(ariables.)41 b(Whitespace)28
 b(immediately)150 1630 y(preceding)d(the)f(negativ)m(e)j(sign)e(that)g
 (sp)s(eci\014es)f(dimension)g(rev)m(ersal)h(ma)m(y)g(b)s(e)f
@@ -27861,18 +29051,18 @@ b(immediately)150 1630 y(preceding)d(the)f(negativ)m(e)j(sign)e(that)g
 (help)g(protect)i(negativ)m(e)g(signs)e(that)h(should)f(indicate)h
 (dimension)f(rev)m(ersal)h(from)150 1849 y(b)s(eing)30
 b(in)m(terpreted)h(b)m(y)f(the)g(shell)h(as)g(dashes)f(that)h(indicate)
-g(new)f(command)g(line)h(switc)m(hes.)390 2021 y Fy(ncpdq)46
+g(new)f(command)g(line)h(switc)m(hes.)390 2021 y Fz(ncpdq)46
 b(-a)i(-lat)e(in.nc)h(out.nc)f(#)h(Dangerous?)e(Whitespace)g(before)h
 ("-lat")390 2131 y(ncpdq)g(-a)i('-lat')e(in.nc)g(out.nc)g(#)i(OK.)e
 (Quotes)h(protect)e("-")i(in)g("-lat")390 2240 y(ncpdq)f(-a)i(lon,-lat)
 d(in.nc)h(out.nc)h(#)g(OK.)g(No)g(whitespace)e(before)h("-")390
 2350 y(ncpdq)g(--rdr=-lat)f(in.nc)i(out.nc)f(#)h(Preferred.)e(Uses)i
-("=")g(not)g(whitespace)275 2522 y FD(T)-8 b(o)24 b(create)h(the)f
+("=")g(not)g(whitespace)275 2522 y FE(T)-8 b(o)24 b(create)h(the)f
 (mathematical)h(transp)s(ose)f(of)f(a)h(v)-5 b(ariable,)26
 b(place)f(all)f(its)g(dimensions)f(in)g(the)h(dimen-)150
 2632 y(sion)30 b(re-order)h(list)g(in)f(rev)m(ersed)g(order.)40
 b(This)30 b(example)h(creates)h(the)e(transp)s(ose)g(of)h
-Fy(three_dmn_var)p FD(:)390 2804 y Fy(\045)47 b(ncpdq)g(-a)g
+Fz(three_dmn_var)p FE(:)390 2804 y Fz(\045)47 b(ncpdq)g(-a)g
 (lon,lev,lat)e(-v)i(three_dmn_var)d(in.nc)i(out.nc)390
 2913 y(\045)h(ncks)g(-C)g(-v)g(three_dmn_var)e(in.nc)390
 3023 y(lat[0]=-90)g(lev[0]=100)g(lon[0]=0)h(three_dmn_var[0]=0)390
@@ -27888,21 +29078,21 @@ e(out.nc)390 3900 y(lon[0]=0)h(lev[0]=100)f(lat[0]=-90)g
 (three_dmn_var[2]=4)390 4228 y(...)390 4338 y(lon[3]=270)g(lev[1]=500)g
 (lat[1]=90)g(three_dmn_var[21]=19)390 4448 y(lon[3]=270)g(lev[2]=1000)g
 (lat[0]=-90)g(three_dmn_var[22]=11)390 4557 y(lon[3]=270)g(lev[2]=1000)
-g(lat[1]=90)g(three_dmn_var[23]=23)275 4729 y FD(T)-8
+g(lat[1]=90)g(three_dmn_var[23]=23)275 4729 y FE(T)-8
 b(o)35 b(completely)h(rev)m(erse)g(the)f(storage)h(order)e(of)h(a)g(v)
 -5 b(ariable,)37 b(include)d(all)i(its)f(dimensions)f(in)h(the)150
 4839 y(re-order)f(list,)i(eac)m(h)f(pre\014xed)e(b)m(y)h(a)g(negativ)m
 (e)i(sign.)52 b(This)33 b(example)i(rev)m(erses)f(the)h(storage)g
-(order)f(of)150 4949 y Fy(three_dmn_var)p FD(:)390 5121
-y Fy(\045)47 b(ncpdq)g(-a)g(-lat,-lev,-lon)d(-v)j(three_dmn_var)d
+(order)f(of)150 4949 y Fz(three_dmn_var)p FE(:)390 5121
+y Fz(\045)47 b(ncpdq)g(-a)g(-lat,-lev,-lon)d(-v)j(three_dmn_var)d
 (in.nc)j(out.nc)390 5230 y(\045)g(ncks)g(-C)g(-v)g(three_dmn_var)e
 (in.nc)390 5340 y(lat[0]=-90)g(lev[0]=100)g(lon[0]=0)h
 (three_dmn_var[0]=0)p eop end
-%%Page: 197 203
-TeXDict begin 197 202 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(197)390
-299 y Fy(lat[0]=-90)45 b(lev[0]=100)g(lon[1]=90)g(three_dmn_var[1]=1)
-390 408 y(lat[0]=-90)g(lev[0]=100)g(lon[2]=180)g(three_dmn_var[2]=2)390
+%%Page: 209 215
+TeXDict begin 209 214 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(209)390 299 y Fz(lat[0]=-90)45
+b(lev[0]=100)g(lon[1]=90)g(three_dmn_var[1]=1)390 408
+y(lat[0]=-90)g(lev[0]=100)g(lon[2]=180)g(three_dmn_var[2]=2)390
 518 y(...)390 628 y(lat[1]=90)g(lev[2]=1000)g(lon[1]=90)g
 (three_dmn_var[21]=21)390 737 y(lat[1]=90)g(lev[2]=1000)g(lon[2]=180)g
 (three_dmn_var[22]=22)390 847 y(lat[1]=90)g(lev[2]=1000)g(lon[3]=270)g
@@ -27913,91 +29103,91 @@ b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(197)390
 (three_dmn_var[2]=21)390 1395 y(...)390 1504 y(lat[1]=-90)g(lev[2]=100)
 g(lon[1]=180)g(three_dmn_var[21]=2)390 1614 y(lat[1]=-90)g(lev[2]=100)g
 (lon[2]=90)g(three_dmn_var[22]=1)390 1724 y(lat[1]=-90)g(lev[2]=100)g
-(lon[3]=0)h(three_dmn_var[23]=0)275 1883 y FD(Creating)37
-b(a)h(record)f(dimension)f(named,)j(e.g.,)i Fy(time)p
-FD(,)c(in)g(a)h(\014le)f(whic)m(h)g(has)g(no)g(existing)h(record)150
-1993 y(dimension)30 b(is)g(simple)h(with)f Fy(ncecat)p
-FD(:)390 2152 y Fy(ncecat)46 b(-O)h(-u)g(time)g(in.nc)f(out.nc)h(#)g
+(lon[3]=0)h(three_dmn_var[23]=0)275 1883 y FE(Creating)37
+b(a)h(record)f(dimension)f(named,)j(e.g.,)i Fz(time)p
+FE(,)c(in)g(a)h(\014le)f(whic)m(h)g(has)g(no)g(existing)h(record)150
+1993 y(dimension)30 b(is)g(simple)h(with)f Fz(ncecat)p
+FE(:)390 2152 y Fz(ncecat)46 b(-O)h(-u)g(time)g(in.nc)f(out.nc)h(#)g
 (Create)f(degenerate)f(record)h(dimension)f(named)i("time")275
-2311 y FD(No)m(w)27 b(consider)g(a)h(\014le)f(with)g(all)g(dimensions,)
-h(including)e Fy(time)p FD(,)h(\014xed)f(\(non-record\).)41
+2311 y FE(No)m(w)27 b(consider)g(a)h(\014le)f(with)g(all)g(dimensions,)
+h(including)e Fz(time)p FE(,)h(\014xed)f(\(non-record\).)41
 b(Supp)s(ose)25 b(the)150 2421 y(user)36 b(wishes)f(to)j(con)m(v)m(ert)
-g Fy(time)d FD(from)h(a)g(\014xed)g(dimension)g(to)h(a)g(record)f
+g Fz(time)d FE(from)h(a)g(\014xed)g(dimension)g(to)h(a)g(record)f
 (dimension.)58 b(This)36 b(ma)m(y)h(b)s(e)150 2531 y(useful,)30
 b(for)h(example,)h(when)e(the)h(user)f(wishes)g(to)i(app)s(end)d
 (additional)i(time)h(slices)g(to)f(the)g(data.)43 b(As)150
-2640 y(of)31 b FC(NCO)f FD(v)m(ersion)g(4.0.1)j(\(April,)d(2010\))j
+2640 y(of)31 b FD(NCO)f FE(v)m(ersion)g(4.0.1)j(\(April,)d(2010\))j
 (the)d(preferred)g(metho)s(d)f(for)h(doing)h(this)f(is)h(with)f
-Fy(ncks)p FD(:)390 2800 y Fy(ncks)47 b(-O)g(--mk_rec_dmn)d(time)j
+Fz(ncks)p FE(:)390 2800 y Fz(ncks)47 b(-O)g(--mk_rec_dmn)d(time)j
 (in.nc)f(out.nc)g(#)i(Change)e("time")g(to)h(record)f(dimension)275
-2959 y FD(Prior)40 b(to)h(4.0.1,)j(the)d(pro)s(cedure)e(to)i(c)m(hange)
+2959 y FE(Prior)40 b(to)h(4.0.1,)j(the)d(pro)s(cedure)e(to)i(c)m(hange)
 g(an)f(existing)i(\014xed)d(dimension)h(in)m(to)h(a)g(record)f(di-)150
 3068 y(mension)i(required)f(three)h(separate)h(commands,)i
-Fy(ncecat)40 b FD(follo)m(w)m(ed)k(b)m(y)e Fy(ncpdq)p
-FD(,)i(and)d(then)h Fy(ncwa)p FD(.)150 3178 y(The)36
+Fz(ncecat)40 b FE(follo)m(w)m(ed)k(b)m(y)e Fz(ncpdq)p
+FE(,)i(and)d(then)h Fz(ncwa)p FE(.)150 3178 y(The)36
 b(recommended)h(metho)s(d)f(is)h(no)m(w)g(to)g(use)g(`)p
-Fy(ncks)29 b(--fix_rec_dmn)p FD(',)35 b(y)m(et)j(it)g(is)e(still)i
+Fz(ncks)29 b(--fix_rec_dmn)p FE(',)35 b(y)m(et)j(it)g(is)e(still)i
 (instructiv)m(e)150 3288 y(to)31 b(presen)m(t)e(the)h(original)h(pro)s
 (cedure,)e(as)h(it)h(sho)m(ws)e(ho)m(w)h(m)m(ultiple)g(op)s(erators)g
 (can)g(ac)m(hiev)m(e)j(the)d(same)150 3397 y(ends)g(b)m(y)g(di\013eren)
-m(t)h(means:)390 3557 y Fy(ncecat)46 b(-O)h(in.nc)g(out.nc)f(#)h(Add)g
+m(t)h(means:)390 3557 y Fz(ncecat)46 b(-O)h(in.nc)g(out.nc)f(#)h(Add)g
 (degenerate)e(record)h(dimension)f(named)i("record")390
 3666 y(ncpdq)f(-O)i(-a)f(time,record)d(out.nc)j(out.nc)f(#)h(Switch)f
 ("record")g(and)h("time")390 3776 y(ncwa)g(-O)g(-a)g(record)f(out.nc)g
 (out.nc)g(#)i(Remove)e(\(degenerate\))e("record")150
-3935 y FD(The)33 b(\014rst)g(step)g(creates)i(a)f(degenerate)h(\(size)f
+3935 y FE(The)33 b(\014rst)g(step)g(creates)i(a)f(degenerate)h(\(size)f
 (equals)g(one\))g(record)g(dimension)f(named)g(\(b)m(y)g(default\))150
-4045 y Fy(record)p FD(.)53 b(The)35 b(second)g(step)g(sw)m(aps)g(the)g
-(ordering)g(of)g(the)g(dimensions)f(named)h Fy(time)f
-FD(and)g Fy(record)p FD(.)150 4154 y(Since)g Fy(time)f
-FD(no)m(w)h(o)s(ccupies)g(the)h(p)s(osition)f(of)g(the)g(\014rst)f
+4045 y Fz(record)p FE(.)53 b(The)35 b(second)g(step)g(sw)m(aps)g(the)g
+(ordering)g(of)g(the)g(dimensions)f(named)h Fz(time)f
+FE(and)g Fz(record)p FE(.)150 4154 y(Since)g Fz(time)f
+FE(no)m(w)h(o)s(ccupies)g(the)h(p)s(osition)f(of)g(the)g(\014rst)f
 (\(least)j(rapidly)e(v)-5 b(arying\))34 b(dimension,)h(it)f(b)s(e-)150
 4264 y(comes)26 b(the)f(record)g(dimension.)39 b(The)25
-b(dimension)f(named)h Fy(record)e FD(is)j(no)f(longer)h(a)f(record)g
+b(dimension)f(named)h Fz(record)e FE(is)j(no)f(longer)h(a)f(record)g
 (dimension.)150 4374 y(The)k(third)f(step)h(a)m(v)m(erages)j(o)m(v)m
-(er)e(this)g(degenerate)g Fy(record)e FD(dimension.)39
+(er)e(this)g(degenerate)g Fz(record)e FE(dimension.)39
 b(Av)m(eraging)31 b(o)m(v)m(er)g(a)e(degener-)150 4483
 y(ate)23 b(dimension)f(do)s(es)g(not)g(alter)h(the)g(data.)39
 b(The)21 b(ordering)h(of)h(other)f(dimensions)f(in)h(the)h(\014le)f(\()
-p Fy(lat)p FD(,)i Fy(lon)p FD(,)150 4593 y(etc.\))49
+p Fz(lat)p FE(,)i Fz(lon)p FE(,)150 4593 y(etc.\))49
 b(is)33 b(immaterial)h(to)g(this)f(pro)s(cedure.)46 b(See)33
 b(Section)h(4.5)g([ncecat)g(netCDF)g(Ensem)m(ble)e(Concate-)150
-4702 y(nator],)h(page)f(170)h(and)f(Section)g(4.7)h([nc)m(ks)f(netCDF)h
-(Kitc)m(hen)f(Sink],)g(page)g(176)h(for)f(other)g(metho)s(ds)150
+4702 y(nator],)h(page)f(182)h(and)f(Section)g(4.7)h([nc)m(ks)f(netCDF)h
+(Kitc)m(hen)f(Sink],)g(page)g(188)h(for)f(other)g(metho)s(ds)150
 4812 y(of)f(c)m(hanging)g(v)-5 b(ariable)31 b(dimensionalit)m(y)-8
 b(,)32 b(including)e(the)h(record)f(dimension.)p eop
 end
-%%Page: 198 204
-TeXDict begin 198 203 bop 150 -116 a FD(198)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.9)68 b Fc(ncra)43
-b FB(netCDF)i(Record)g(Av)l(erager)150 458 y FD(SYNT)-8
-b(AX)390 623 y Fy(ncra)47 b([-3])f([-4])h([-6])g([-7])f([-A])h([-C])f
+%%Page: 210 216
+TeXDict begin 210 215 bop 150 -116 a FE(210)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.9)68 b Fb(ncra)43
+b FC(netCDF)i(Record)g(Av)l(erager)150 458 y FE(SYNT)-8
+b(AX)390 623 y Fz(ncra)47 b([-3])f([-4])h([-6])g([-7])f([-A])h([-C])f
 ([-c])390 733 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])i([--cnk_min)e
 (sz])i([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390 842 y([-D)i
-Fn(dbg)p Fy(])g([-d)f Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o([,[)p Fn(s)o(ubc)o(ycle)o
-Fy(]]]])41 b([-F])390 952 y([-G)47 b Fn(gpe_dsc)p Fy(])e([-g)i
-Fn(grp)p Fy([,...)n(]])g([-h])g([--hdf])f([--hdr_pad)f
-Fn(nbr)p Fy(])390 1061 y([-L)i Fn(dfl_lvl)p Fy(])e([-l)i
-Fn(path)p Fy(])g([--mro])f([-n)g Fn(loop)p Fy(])h([--no_tmp_fl])390
-1171 y([-O])g([-o)g Fn(output-)390 1281 y(file)p Fy(])f([-p)h
-Fn(path)p Fy(])g([-R])f([-r])h([--ram_all])e([--rec_apn])f
-([--rth_dbl|flt])390 1390 y([-t)j Fn(thr_nbr)p Fy(])e([--unn])h([-v)h
-Fn(var)p Fy([,...)n(]])g([-X)g(...])g([-x])f([-y)h Fn(op_typ)p
-Fy(])390 1500 y([)p Fn(input-files)p Fy(])d([)p Fn(output-file)p
-Fy(])150 1665 y FD(DESCRIPTION)275 1830 y Fy(ncra)38
-b FD(a)m(v)m(erages)43 b(record)d(v)-5 b(ariables)40
-b(across)h(an)f(arbitrary)g(n)m(um)m(b)s(er)e(of)j Fz(input-\014les)p
-FD(.)69 b(The)39 b(record)150 1939 y(dimension)23 b(is,)j(b)m(y)e
-(default,)i(retained)e(as)g(a)h(degenerate)g(\(size)31
-b(1\))25 b(dimension)f(in)f(the)h(output)g(v)-5 b(ariables.)150
-2049 y(See)30 b(Section)h(2.6)f([Statistics)i(vs.)40
+Fo(dbg)p Fz(])g([-d)f Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o([,[)p Fo(s)o(ubc)o(ycle)o
+Fz(]]]])41 b([-F])390 952 y([-G)47 b Fo(gpe_dsc)p Fz(])e([-g)i
+Fo(grp)p Fz([,...)n(]])g([-h])g([--hdf])f([--hdr_pad)f
+Fo(nbr)p Fz(])390 1061 y([-L)i Fo(dfl_lvl)p Fz(])e([-l)i
+Fo(path)p Fz(])g([--mro])f([-n)g Fo(loop)p Fz(])h([--no_tmp_fl])390
+1171 y([-O])g([-o)g Fo(output-)390 1281 y(file)p Fz(])f([-p)h
+Fo(path)p Fz(])g([--ppc)f(...])g([-R])h([-r])g([--ram_all])d
+([--rec_apn])h([--rth_dbl|flt])390 1390 y([-t)i Fo(thr_nbr)p
+Fz(])e([--unn])h([-v)h Fo(var)p Fz([,...)n(]])g([-X)g(...])g([-x])f
+([-y)h Fo(op_typ)p Fz(])390 1500 y([)p Fo(input-files)p
+Fz(])d([)p Fo(output-file)p Fz(])150 1665 y FE(DESCRIPTION)275
+1830 y Fz(ncra)38 b FE(a)m(v)m(erages)43 b(record)d(v)-5
+b(ariables)40 b(across)h(an)f(arbitrary)g(n)m(um)m(b)s(er)e(of)j
+FA(input-\014les)p FE(.)69 b(The)39 b(record)150 1939
+y(dimension)23 b(is,)j(b)m(y)e(default,)i(retained)e(as)g(a)h
+(degenerate)g(\(size)31 b(1\))25 b(dimension)f(in)f(the)h(output)g(v)-5
+b(ariables.)150 2049 y(See)30 b(Section)h(2.6)f([Statistics)i(vs.)40
 b(Concatenation],)32 b(page)f(18,)g(for)f(a)g(description)g(of)f(the)h
 (distinctions)150 2158 y(b)s(et)m(w)m(een)k(the)f(v)-5
 b(arious)34 b(statistics)h(to)s(ols)f(and)e(concatenators.)52
-b(As)33 b(a)h(m)m(ulti-\014le)g(op)s(erator,)h Fy(ncra)d
-FD(will)150 2268 y(read)h(the)g(list)g(of)h Fz(input-\014les)i
-FD(from)c Fy(stdin)f FD(if)i(they)g(are)h(not)f(sp)s(eci\014ed)f(as)h
+b(As)33 b(a)h(m)m(ulti-\014le)g(op)s(erator,)h Fz(ncra)d
+FE(will)150 2268 y(read)h(the)g(list)g(of)h FA(input-\014les)i
+FE(from)c Fz(stdin)f FE(if)i(they)g(are)h(not)f(sp)s(eci\014ed)f(as)h
 (p)s(ositional)h(argumen)m(ts)f(on)150 2377 y(the)e(command)f(line)g
 (\(see)i(Section)f(2.7)g([Large)h(Num)m(b)s(ers)d(of)h(Files],)i(page)f
 (19\).)275 2542 y(Input)c(\014les)h(ma)m(y)h(v)-5 b(ary)29
@@ -28007,201 +29197,201 @@ y(nate,)d(if)e(an)m(y)-8 b(,)26 b(should)c(b)s(e)g(monotonic)i(\(or)g
 (else)g(non-fatal)g(w)m(arnings)e(ma)m(y)i(b)s(e)e(generated\).)40
 b(Hyp)s(erslabs)150 2761 y(of)27 b(the)h(record)f(dimension)g(whic)m(h)
 g(include)g(more)g(than)g(one)h(\014le)f(w)m(ork)h(correctly)-8
-b(.)41 b Fy(ncra)26 b FD(supp)s(orts)g(the)150 2871 y
-Fz(stride)42 b FD(argumen)m(t)36 b(to)i(the)e(`)p Fy(-d)p
-FD(')h(h)m(yp)s(erslab)e(option)i(\(see)h(Section)f(3.15)h([Hyp)s
+b(.)41 b Fz(ncra)26 b FE(supp)s(orts)g(the)150 2871 y
+FA(stride)42 b FE(argumen)m(t)36 b(to)i(the)e(`)p Fz(-d)p
+FE(')h(h)m(yp)s(erslab)e(option)i(\(see)h(Section)f(3.15)h([Hyp)s
 (erslabs],)g(page)f(55\))h(for)150 2981 y(the)31 b(record)f(dimension)g
-(only)-8 b(,)31 b Fz(stride)k FD(is)c(not)f(supp)s(orted)f(for)h
-(non-record)g(dimensions.)275 3145 y Fy(ncra)i FD(w)m(eigh)m(ts)j(eac)m
-(h)f(record)f(\(e.g.,)k(time)d(slice\))h(in)e(the)g Fz(input-\014les)k
-FD(equally)-8 b(.)51 b Fy(ncra)32 b FD(do)s(es)h(not)h(at-)150
+(only)-8 b(,)31 b FA(stride)k FE(is)c(not)f(supp)s(orted)f(for)h
+(non-record)g(dimensions.)275 3145 y Fz(ncra)i FE(w)m(eigh)m(ts)j(eac)m
+(h)f(record)f(\(e.g.,)k(time)d(slice\))h(in)e(the)g FA(input-\014les)k
+FE(equally)-8 b(.)51 b Fz(ncra)32 b FE(do)s(es)h(not)h(at-)150
 3255 y(tempt)40 b(to)g(see)h(if,)h(sa)m(y)-8 b(,)44 b(the)39
-b Fy(time)g FD(co)s(ordinate)i(is)e(irregularly)h(spaced)g(and)f(th)m
+b Fz(time)g FE(co)s(ordinate)i(is)e(irregularly)h(spaced)g(and)f(th)m
 (us)h(w)m(ould)f(require)h(a)150 3365 y(w)m(eigh)m(ted)30
 b(a)m(v)m(erage)h(in)d(order)g(to)h(b)s(e)e(a)i(true)f(time)h(a)m(v)m
-(erage.)43 b Fy(ncra)27 b Fo(always)33 b(aver)-5 b(ages)36
-b FD(co)s(ordinate)29 b(v)-5 b(ari-)150 3474 y(ables)24
+(erage.)43 b Fz(ncra)27 b Fp(always)33 b(aver)-5 b(ages)36
+b FE(co)s(ordinate)29 b(v)-5 b(ari-)150 3474 y(ables)24
 b(regardless)g(of)g(the)g(arithmetic)h(op)s(eration)f(t)m(yp)s(e)g(p)s
 (erformed)e(on)i(the)g(non-co)s(ordinate)g(v)-5 b(ariables.)150
-3584 y(\(see)31 b(Section)h(3.32)f([Op)s(eration)g(T)m(yp)s(es],)f
-(page)h(84\).)150 3749 y(EXAMPLES)275 3914 y(Av)m(erage)e(\014les)f
-Fy(85.nc)p FD(,)f Fy(86.nc)p FD(,)33 b(.)22 b(.)g(.)42
-b Fy(89.nc)26 b FD(along)j(the)f(record)g(dimension,)g(and)f(store)h
-(the)g(results)150 4023 y(in)i Fy(8589.nc)p FD(:)390
-4188 y Fy(ncra)47 b(85.nc)f(86.nc)g(87.nc)h(88.nc)f(89.nc)g(8589.nc)390
+3584 y(\(see)31 b(Section)h(3.33)f([Op)s(eration)g(T)m(yp)s(es],)f
+(page)h(94\).)150 3749 y(EXAMPLES)275 3914 y(Av)m(erage)e(\014les)f
+Fz(85.nc)p FE(,)f Fz(86.nc)p FE(,)33 b(.)22 b(.)g(.)42
+b Fz(89.nc)26 b FE(along)j(the)f(record)g(dimension,)g(and)f(store)h
+(the)g(results)150 4023 y(in)i Fz(8589.nc)p FE(:)390
+4188 y Fz(ncra)47 b(85.nc)f(86.nc)g(87.nc)h(88.nc)f(89.nc)g(8589.nc)390
 4298 y(ncra)h(8[56789].nc)d(8589.nc)390 4407 y(ncra)j(-n)g(5,2,1)f
-(85.nc)h(8589.nc)275 4572 y FD(These)25 b(three)h(metho)s(ds)f(pro)s
+(85.nc)h(8589.nc)275 4572 y FE(These)25 b(three)h(metho)s(ds)f(pro)s
 (duce)g(iden)m(tical)j(answ)m(ers.)39 b(See)26 b(Section)g(3.5)h([Sp)s
 (ecifying)f(Input)e(Files],)150 4682 y(page)31 b(28,)h(for)e(an)g
 (explanation)h(of)g(the)g(distinctions)f(b)s(et)m(w)m(een)h(these)g
-(metho)s(ds.)275 4846 y(Assume)43 b(the)g(\014les)h Fy(85.nc)p
-FD(,)h Fy(86.nc)p FD(,)51 b(.)23 b(.)f(.)41 b Fy(89.nc)h
-FD(eac)m(h)j(con)m(tain)g(a)f(record)f(co)s(ordinate)h
-Fz(time)50 b FD(of)150 4956 y(length)31 b(12)h(de\014ned)e(suc)m(h)g
-(that)i(the)f(third)f(record)h(in)f Fy(86.nc)g FD(con)m(tains)i(data)g
-(from)e(Marc)m(h)i(1986,)h(etc.)150 5066 y FC(NCO)27
-b FD(kno)m(ws)g(ho)m(w)h(to)g(h)m(yp)s(erslab)e(the)i(record)f
+(metho)s(ds.)275 4846 y(Assume)43 b(the)g(\014les)h Fz(85.nc)p
+FE(,)h Fz(86.nc)p FE(,)51 b(.)23 b(.)f(.)41 b Fz(89.nc)h
+FE(eac)m(h)j(con)m(tain)g(a)f(record)f(co)s(ordinate)h
+FA(time)50 b FE(of)150 4956 y(length)31 b(12)h(de\014ned)e(suc)m(h)g
+(that)i(the)f(third)f(record)h(in)f Fz(86.nc)g FE(con)m(tains)i(data)g
+(from)e(Marc)m(h)i(1986,)h(etc.)150 5066 y FD(NCO)27
+b FE(kno)m(ws)g(ho)m(w)h(to)g(h)m(yp)s(erslab)e(the)i(record)f
 (dimension)g(across)h(\014les.)40 b(Th)m(us,)27 b(to)h(a)m(v)m(erage)i
 (data)e(from)150 5175 y(Decem)m(b)s(er,)j(1985)i(through)c(F)-8
-b(ebruary)g(,)31 b(1986:)390 5340 y Fy(ncra)47 b(-d)g(time,11,13)e
+b(ebruary)g(,)31 b(1986:)390 5340 y Fz(ncra)47 b(-d)g(time,11,13)e
 (85.nc)h(86.nc)h(87.nc)f(8512_8602.nc)p eop end
-%%Page: 199 205
-TeXDict begin 199 204 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(199)390
-299 y Fy(ncra)47 b(-F)g(-d)g(time,12,14)e(85.nc)h(86.nc)h(87.nc)f
-(8512_8602.nc)150 458 y FD(The)33 b(\014le)h Fy(87.nc)e
-FD(is)h(sup)s(er\015uous,)f(but)h(do)s(es)g(not)h(cause)g(an)f(error.)
-50 b(The)33 b(`)p Fy(-F)p FD(')h(turns)e(on)i(the)f(F)-8
-b(ortran)150 568 y(\(1-based\))24 b(indexing)f(con)m(v)m(en)m(tion.)41
-b(The)22 b(follo)m(wing)j(uses)d(the)i Fz(stride)k FD(option)23
+%%Page: 211 217
+TeXDict begin 211 216 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(211)390 299 y Fz(ncra)47
+b(-F)g(-d)g(time,12,14)e(85.nc)h(86.nc)h(87.nc)f(8512_8602.nc)150
+458 y FE(The)33 b(\014le)h Fz(87.nc)e FE(is)h(sup)s(er\015uous,)f(but)h
+(do)s(es)g(not)h(cause)g(an)f(error.)50 b(The)33 b(`)p
+Fz(-F)p FE(')h(turns)e(on)i(the)f(F)-8 b(ortran)150 568
+y(\(1-based\))24 b(indexing)f(con)m(v)m(en)m(tion.)41
+b(The)22 b(follo)m(wing)j(uses)d(the)i FA(stride)k FE(option)23
 b(to)h(a)m(v)m(erage)i(all)e(the)f(Marc)m(h)150 677 y(temp)s(erature)30
 b(data)h(from)f(m)m(ultiple)h(input)f(\014les)g(in)m(to)h(a)g(single)g
-(output)f(\014le)390 837 y Fy(ncra)47 b(-F)g(-d)g(time,3,,12)e(-v)i
+(output)f(\014le)390 837 y Fz(ncra)47 b(-F)g(-d)g(time,3,,12)e(-v)i
 (temperature)e(85.nc)h(86.nc)h(87.nc)f(858687_03.nc)275
-996 y FD(See)30 b(Section)h(3.16)h([Stride],)f(page)g(57,)h(for)e(a)g
-(description)h(of)f(the)h Fz(stride)k FD(argumen)m(t.)275
-1156 y(Assume)25 b(the)g Fz(time)32 b FD(co)s(ordinate)26
+996 y FE(See)30 b(Section)h(3.16)h([Stride],)f(page)g(57,)h(for)e(a)g
+(description)h(of)f(the)h FA(stride)k FE(argumen)m(t.)275
+1156 y(Assume)25 b(the)g FA(time)32 b FE(co)s(ordinate)26
 b(is)g(incremen)m(tally)h(n)m(um)m(b)s(ered)d(suc)m(h)h(that)i(Jan)m
 (uary)-8 b(,)27 b(1985)g(=)e(1)h(and)150 1265 y(Decem)m(b)s(er,)39
-b(1989)27 b(=)e(60)q(.)58 b(Assuming)36 b(`)p Fy(??)p
-FD(')g(only)h(expands)e(to)i(the)g(\014v)m(e)f(desired)g(\014les,)i
+b(1989)27 b(=)e(60)q(.)58 b(Assuming)36 b(`)p Fz(??)p
+FE(')g(only)h(expands)e(to)i(the)g(\014v)m(e)f(desired)g(\014les,)i
 (the)e(follo)m(wing)150 1375 y(a)m(v)m(erages)d(June,)d(1985{June,)i
-(1989:)390 1534 y Fy(ncra)47 b(-d)g(time,6.,54.)e(??.nc)h(8506_8906.nc)
+(1989:)390 1534 y Fz(ncra)47 b(-d)g(time,6.,54.)e(??.nc)h(8506_8906.nc)
 p eop end
-%%Page: 200 206
-TeXDict begin 200 205 bop 150 -116 a FD(200)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.10)68 b Fc(ncrcat)42
-b FB(netCDF)j(Record)g(Concatenator)150 458 y FD(SYNT)-8
-b(AX)390 629 y Fy(ncrcat)46 b([-3])h([-4])f([-6])h([-7])g([-A])f([-C])h
-([-c])390 738 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f(map])i([--cnk_min)e
-(sz])i([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390 848 y([-D)i
-Fn(dbg)p Fy(])g([-d)f Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
-Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o([,[)p Fn(s)o(ubc)o(ycle)o
-Fy(]]]])41 b([-F])390 957 y([-G)47 b Fn(gpe_dsc)p Fy(])e([-g)i
-Fn(grp)p Fy([,...)n(]])g([-h])g([--hdr_pad)e Fn(nbr)p
-Fy(])390 1067 y([-L)i Fn(dfl_lvl)p Fy(])e([-l)i Fn(path)p
-Fy(])g([--md5_digest])d([-n)j Fn(loop)p Fy(])f([--no_tmp_fl])390
-1177 y([-O])h([-o)g Fn(output-file)p Fy(])d([-p)j Fn(path)p
-Fy(])f([-R])h([-r])g([--ram_all])d([--rec_apn])390 1286
-y([-t)j Fn(thr_nbr)p Fy(])e([--unn])h([-v)h Fn(var)p
-Fy([,...)n(]])g([-X)g(...])g([-x])390 1396 y([)p Fn(input-files)p
-Fy(])d([)p Fn(output-file)p Fy(])150 1566 y FD(DESCRIPTION)275
-1736 y Fy(ncrcat)39 b FD(concatenates)44 b(record)e(v)-5
-b(ariables)42 b(across)g(an)g(arbitrary)f(n)m(um)m(b)s(er)f(of)i
-Fz(input-\014les)p FD(.)73 b(The)150 1846 y(\014nal)30
-b(record)h(dimension)g(is)f(b)m(y)h(default)g(the)g(sum)f(of)h(the)g
-(lengths)g(of)g(the)g(record)g(dimensions)f(in)h(the)150
-1956 y(input)f(\014les.)44 b(See)32 b(Section)g(2.6)g([Statistics)i
+%%Page: 212 218
+TeXDict begin 212 217 bop 150 -116 a FE(212)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.10)68 b Fb(ncrcat)42
+b FC(netCDF)j(Record)g(Concatenator)150 458 y FE(SYNT)-8
+b(AX)390 618 y Fz(ncrcat)46 b([-3])h([-4])f([-6])h([-7])g([-A])f([-C])h
+([-c])390 727 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f(map])i([--cnk_min)e
+(sz])i([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390 837 y([-D)i
+Fo(dbg)p Fz(])g([-d)f Fo(dim)p Fz(,[)p Fo(min)p Fz(][,[)p
+Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o([,[)p Fo(s)o(ubc)o(ycle)o
+Fz(]]]])41 b([-F])390 946 y([-G)47 b Fo(gpe_dsc)p Fz(])e([-g)i
+Fo(grp)p Fz([,...)n(]])g([-h])g([--hdr_pad)e Fo(nbr)p
+Fz(])390 1056 y([-L)i Fo(dfl_lvl)p Fz(])e([-l)i Fo(path)p
+Fz(])g([--md5_digest])d([-n)j Fo(loop)p Fz(])f([--no_tmp_fl])390
+1166 y([-O])h([-o)g Fo(output-)390 1275 y(file)p Fz(])f([-p)h
+Fo(path)p Fz(])g([--ppc)f(...])g([-R])h([-r])g([--ram_all])d
+([--rec_apn])390 1385 y([-t)j Fo(thr_nbr)p Fz(])e([--unn])h([-v)h
+Fo(var)p Fz([,...)n(]])g([-X)g(...])g([-x])390 1494 y([)p
+Fo(input-files)p Fz(])d([)p Fo(output-file)p Fz(])150
+1654 y FE(DESCRIPTION)275 1813 y Fz(ncrcat)39 b FE(concatenates)44
+b(record)e(v)-5 b(ariables)42 b(across)g(an)g(arbitrary)f(n)m(um)m(b)s
+(er)f(of)i FA(input-\014les)p FE(.)73 b(The)150 1923
+y(\014nal)30 b(record)h(dimension)g(is)f(b)m(y)h(default)g(the)g(sum)f
+(of)h(the)g(lengths)g(of)g(the)g(record)g(dimensions)f(in)h(the)150
+2032 y(input)f(\014les.)44 b(See)32 b(Section)g(2.6)g([Statistics)i
 (vs.)43 b(Concatenation],)34 b(page)e(18,)h(for)e(a)h(description)f(of)
-h(the)150 2065 y(distinctions)26 b(b)s(et)m(w)m(een)g(the)f(v)-5
+h(the)150 2142 y(distinctions)26 b(b)s(et)m(w)m(een)g(the)f(v)-5
 b(arious)26 b(statistics)h(to)s(ols)f(and)f(concatenators.)41
-b(As)25 b(a)h(m)m(ulti-\014le)g(op)s(erator,)150 2175
-y Fy(ncrcat)37 b FD(will)h(read)g(the)h(list)g(of)f Fz(input-\014les)k
-FD(from)37 b Fy(stdin)g FD(if)h(they)h(are)g(not)f(sp)s(eci\014ed)g(as)
-g(p)s(ositional)150 2284 y(argumen)m(ts)31 b(on)f(the)h(command)f(line)
+b(As)25 b(a)h(m)m(ulti-\014le)g(op)s(erator,)150 2252
+y Fz(ncrcat)37 b FE(will)h(read)g(the)h(list)g(of)f FA(input-\014les)k
+FE(from)37 b Fz(stdin)g FE(if)h(they)h(are)g(not)f(sp)s(eci\014ed)g(as)
+g(p)s(ositional)150 2361 y(argumen)m(ts)31 b(on)f(the)h(command)f(line)
 g(\(see)i(Section)f(2.7)g([Large)h(Num)m(b)s(ers)d(of)h(Files],)i(page)
-f(19\).)275 2455 y(Input)c(\014les)h(ma)m(y)h(v)-5 b(ary)29
+f(19\).)275 2521 y(Input)c(\014les)h(ma)m(y)h(v)-5 b(ary)29
 b(in)f(size,)i(but)e(eac)m(h)i(m)m(ust)e(ha)m(v)m(e)i(a)f(record)f
-(dimension.)40 b(The)28 b(record)g(co)s(ordi-)150 2564
+(dimension.)40 b(The)28 b(record)g(co)s(ordi-)150 2630
 y(nate,)d(if)e(an)m(y)-8 b(,)26 b(should)c(b)s(e)g(monotonic)i(\(or)g
 (else)g(non-fatal)g(w)m(arnings)e(ma)m(y)i(b)s(e)e(generated\).)40
-b(Hyp)s(erslabs)150 2674 y(along)34 b(the)f(record)g(dimension)g(that)g
+b(Hyp)s(erslabs)150 2740 y(along)34 b(the)f(record)g(dimension)g(that)g
 (span)g(more)g(than)g(one)g(\014le)g(are)g(handled)f(correctly)-8
-b(.)51 b Fy(ncra)32 b FD(sup-)150 2784 y(p)s(orts)26
-b(the)i Fz(stride)k FD(argumen)m(t)27 b(to)h(the)f(`)p
-Fy(-d)p FD(')g(h)m(yp)s(erslab)f(option)i(for)f(the)g(record)g
-(dimension)f(only)-8 b(,)29 b Fz(stride)150 2893 y FD(is)h(not)h(supp)s
-(orted)e(for)h(non-record)g(dimensions.)275 3064 y(Concatenating)40
+b(.)51 b Fz(ncra)32 b FE(sup-)150 2849 y(p)s(orts)26
+b(the)i FA(stride)k FE(argumen)m(t)27 b(to)h(the)f(`)p
+Fz(-d)p FE(')g(h)m(yp)s(erslab)f(option)i(for)f(the)g(record)g
+(dimension)f(only)-8 b(,)29 b FA(stride)150 2959 y FE(is)h(not)h(supp)s
+(orted)e(for)h(non-record)g(dimensions.)275 3118 y(Concatenating)40
 b(a)e(v)-5 b(ariable)40 b(pac)m(k)m(ed)f(with)f(di\013eren)m(t)h
 (scales)h(m)m(ultiple)f(datasets)h(is)e(b)s(ey)m(ond)g(the)150
-3173 y(capabilities)32 b(of)d Fy(ncrcat)f FD(\(and)i
-Fy(ncecat)p FD(,)e(the)i(other)g(concatenator)i(\(Section)f(2.6.1)g
-([Concatenation],)150 3283 y(page)f(18\).)41 b Fy(ncrcat)27
-b FD(do)s(es)i(not)g(unpac)m(k)f(data,)j(it)e(simply)f
-Fo(c)-5 b(opies)38 b FD(the)29 b(data)g(from)g(the)g
-Fz(input-\014les)p FD(,)g(and)150 3392 y(the)f(metadata)i(from)d(the)h
-Fo(\014rst)37 b Fz(input-\014le)p FD(,)29 b(to)f(the)g
-Fz(output-\014le)p FD(.)40 b(This)27 b(means)h(that)h(data)f
-(compressed)150 3502 y(with)k(a)g(pac)m(king)i(con)m(v)m(en)m(tion)g(m)
+3228 y(capabilities)32 b(of)d Fz(ncrcat)f FE(\(and)i
+Fz(ncecat)p FE(,)e(the)i(other)g(concatenator)i(\(Section)f(2.6.1)g
+([Concatenation],)150 3337 y(page)f(18\).)41 b Fz(ncrcat)27
+b FE(do)s(es)i(not)g(unpac)m(k)f(data,)j(it)e(simply)f
+Fp(c)-5 b(opies)38 b FE(the)29 b(data)g(from)g(the)g
+FA(input-\014les)p FE(,)g(and)150 3447 y(the)f(metadata)i(from)d(the)h
+Fp(\014rst)37 b FA(input-\014le)p FE(,)29 b(to)f(the)g
+FA(output-\014le)p FE(.)40 b(This)27 b(means)h(that)h(data)f
+(compressed)150 3557 y(with)k(a)g(pac)m(king)i(con)m(v)m(en)m(tion)g(m)
 m(ust)e(use)g(the)g(iden)m(tical)i(pac)m(king)f(parameters)g(\(e.g.,)h
-Fy(scale_factor)150 3611 y FD(and)k Fy(add_offset)p FD(\))e(for)i(a)h
-(giv)m(en)h(v)-5 b(ariable)39 b(across)g Fo(al)5 b(l)48
-b FD(input)38 b(\014les.)65 b(Otherwise)38 b(the)h(concatenated)150
-3721 y(dataset)31 b(will)e(not)h(unpac)m(k)f(correctly)-8
+Fz(scale_factor)150 3666 y FE(and)k Fz(add_offset)p FE(\))e(for)i(a)h
+(giv)m(en)h(v)-5 b(ariable)39 b(across)g Fp(al)5 b(l)48
+b FE(input)38 b(\014les.)65 b(Otherwise)38 b(the)h(concatenated)150
+3776 y(dataset)31 b(will)e(not)h(unpac)m(k)f(correctly)-8
 b(.)42 b(The)29 b(w)m(ork)-5 b(around)28 b(for)h(cases)h(where)f(the)g
-(pac)m(king)i(parameters)150 3831 y(di\013er)j(across)h
-Fz(input-\014les)i FD(requires)d(three)h(steps:)48 b(First,)36
-b(unpac)m(k)e(the)h(data)g(using)f Fy(ncpdq)p FD(.)51
-b(Second,)150 3940 y(concatenate)33 b(the)e(unpac)m(k)m(ed)f(data)h
-(using)f Fy(ncrcat)p FD(,)f(Third,)g(re-pac)m(k)i(the)g(result)f(with)g
-Fy(ncpdq)p FD(.)275 4111 y Fy(ncrcat)37 b FD(applies)j(sp)s(ecial)g
-(rules)f(to)i FC(ARM)f FD(con)m(v)m(en)m(tion)h(time)f(\014elds)f
-(\(e.g.,)44 b Fy(time_offset)p FD(\).)66 b(See)150 4220
-y(Section)31 b(3.38)h([ARM)f(Con)m(v)m(en)m(tions],)h(page)f(102)h(for)
-e(a)h(complete)h(description.)150 4391 y(EXAMPLES)275
-4561 y(Concatenate)39 b(\014les)f Fy(85.nc)p FD(,)g Fy(86.nc)p
-FD(,)44 b(.)22 b(.)g(.)42 b Fy(89.nc)36 b FD(along)j(the)f(record)f
-(dimension,)i(and)e(store)i(the)150 4670 y(results)30
-b(in)g Fy(8589.nc)p FD(:)390 4841 y Fy(ncrcat)46 b(85.nc)g(86.nc)h
-(87.nc)f(88.nc)h(89.nc)f(8589.nc)390 4950 y(ncrcat)g(8[56789].nc)f
-(8589.nc)390 5060 y(ncrcat)h(-n)h(5,2,1)g(85.nc)f(8589.nc)150
-5230 y FD(These)36 b(three)h(metho)s(ds)e(pro)s(duce)h(iden)m(tical)i
+(pac)m(king)i(parameters)150 3885 y(di\013er)j(across)h
+FA(input-\014les)i FE(requires)d(three)h(steps:)48 b(First,)36
+b(unpac)m(k)e(the)h(data)g(using)f Fz(ncpdq)p FE(.)51
+b(Second,)150 3995 y(concatenate)33 b(the)e(unpac)m(k)m(ed)f(data)h
+(using)f Fz(ncrcat)p FE(,)f(Third,)g(re-pac)m(k)i(the)g(result)f(with)g
+Fz(ncpdq)p FE(.)275 4154 y Fz(ncrcat)37 b FE(applies)j(sp)s(ecial)g
+(rules)f(to)i FD(ARM)f FE(con)m(v)m(en)m(tion)h(time)f(\014elds)f
+(\(e.g.,)44 b Fz(time_offset)p FE(\).)66 b(See)150 4264
+y(Section)31 b(3.39)h([ARM)f(Con)m(v)m(en)m(tions],)h(page)f(112)h(for)
+e(a)h(complete)h(description.)150 4423 y(EXAMPLES)275
+4583 y(Concatenate)39 b(\014les)f Fz(85.nc)p FE(,)g Fz(86.nc)p
+FE(,)44 b(.)22 b(.)g(.)42 b Fz(89.nc)36 b FE(along)j(the)f(record)f
+(dimension,)i(and)e(store)i(the)150 4692 y(results)30
+b(in)g Fz(8589.nc)p FE(:)390 4852 y Fz(ncrcat)46 b(85.nc)g(86.nc)h
+(87.nc)f(88.nc)h(89.nc)f(8589.nc)390 4961 y(ncrcat)g(8[56789].nc)f
+(8589.nc)390 5071 y(ncrcat)h(-n)h(5,2,1)g(85.nc)f(8589.nc)150
+5230 y FE(These)36 b(three)h(metho)s(ds)e(pro)s(duce)h(iden)m(tical)i
 (answ)m(ers.)58 b(See)37 b(Section)g(3.5)g([Sp)s(ecifying)f(Input)f
 (Files],)150 5340 y(page)c(28,)h(for)e(an)g(explanation)h(of)g(the)g
 (distinctions)f(b)s(et)m(w)m(een)h(these)g(metho)s(ds.)p
 eop end
-%%Page: 201 207
-TeXDict begin 201 206 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(201)275
-299 y(Assume)43 b(the)g(\014les)h Fy(85.nc)p FD(,)h Fy(86.nc)p
-FD(,)51 b(.)23 b(.)f(.)41 b Fy(89.nc)h FD(eac)m(h)j(con)m(tain)g(a)f
-(record)f(co)s(ordinate)h Fz(time)50 b FD(of)150 408
-y(length)31 b(12)h(de\014ned)d(suc)m(h)i(that)g(the)h(third)e(record)g
-(in)h Fy(86.nc)f FD(con)m(tains)i(data)f(from)g(Marc)m(h)h(1986,)h
-(etc.)150 518 y FC(NCO)d FD(kno)m(ws)h(ho)m(w)f(to)h(h)m(yp)s(erslab)f
-(the)h(record)f(dimension)g(across)h(\014les.)41 b(Th)m(us,)30
+%%Page: 213 219
+TeXDict begin 213 218 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(213)275 299 y(Assume)43
+b(the)g(\014les)h Fz(85.nc)p FE(,)h Fz(86.nc)p FE(,)51
+b(.)23 b(.)f(.)41 b Fz(89.nc)h FE(eac)m(h)j(con)m(tain)g(a)f(record)f
+(co)s(ordinate)h FA(time)50 b FE(of)150 408 y(length)31
+b(12)h(de\014ned)d(suc)m(h)i(that)g(the)h(third)e(record)g(in)h
+Fz(86.nc)f FE(con)m(tains)i(data)f(from)g(Marc)m(h)h(1986,)h(etc.)150
+518 y FD(NCO)d FE(kno)m(ws)h(ho)m(w)f(to)h(h)m(yp)s(erslab)f(the)h
+(record)f(dimension)g(across)h(\014les.)41 b(Th)m(us,)30
 b(to)h(concatenate)i(data)150 628 y(from)d(Decem)m(b)s(er,)h(1985{F)-8
-b(ebruary)g(,)33 b(1986:)390 787 y Fy(ncrcat)46 b(-d)h(time,11,13)e
+b(ebruary)g(,)33 b(1986:)390 787 y Fz(ncrcat)46 b(-d)h(time,11,13)e
 (85.nc)i(86.nc)f(87.nc)g(8512_8602.nc)390 897 y(ncrcat)g(-F)h(-d)g
 (time,12,14)e(85.nc)i(86.nc)f(87.nc)h(8512_8602.nc)150
-1056 y FD(The)38 b(\014le)h Fy(87.nc)e FD(is)h(sup)s(er\015uous,)g(but)
+1056 y FE(The)38 b(\014le)h Fz(87.nc)e FE(is)h(sup)s(er\015uous,)g(but)
 g(do)s(es)g(not)h(cause)g(an)g(error.)64 b(When)39 b
-Fy(ncra)e FD(and)h Fy(ncrcat)f FD(en-)150 1166 y(coun)m(ter)j(a)g
+Fz(ncra)e FE(and)h Fz(ncrcat)f FE(en-)150 1166 y(coun)m(ter)j(a)g
 (\014le)f(whic)m(h)g(do)s(es)g(con)m(tain)i(an)m(y)f(records)f(that)h
 (meet)g(the)f(sp)s(eci\014ed)g(h)m(yp)s(erslab)f(criteria,)150
 1275 y(they)c(disregard)g(the)g(\014le)g(and)f(pro)s(ceed)g(to)i(the)f
 (next)g(\014le)g(without)g(failing.)52 b(The)34 b(`)p
-Fy(-F)p FD(')f(turns)g(on)h(the)150 1385 y(F)-8 b(ortran)31
+Fz(-F)p FE(')f(turns)g(on)h(the)150 1385 y(F)-8 b(ortran)31
 b(\(1-based\))h(indexing)e(con)m(v)m(en)m(tion.)275 1544
-y(The)24 b(follo)m(wing)i(uses)e(the)h Fz(stride)30 b
-FD(option)25 b(to)h(concatenate)h(all)f(the)f(Marc)m(h)g(temp)s
+y(The)24 b(follo)m(wing)i(uses)e(the)h FA(stride)30 b
+FE(option)25 b(to)h(concatenate)h(all)f(the)f(Marc)m(h)g(temp)s
 (erature)g(data)g(from)150 1654 y(m)m(ultiple)31 b(input)e(\014les)i
-(in)m(to)g(a)g(single)g(output)f(\014le)390 1813 y Fy(ncrcat)46
+(in)m(to)g(a)g(single)g(output)f(\014le)390 1813 y Fz(ncrcat)46
 b(-F)h(-d)g(time,3,,12)e(-v)j(temperature)c(85.nc)j(86.nc)f(87.nc)g
-(858687_03.nc)275 1973 y FD(See)30 b(Section)h(3.16)h([Stride],)f(page)
-g(57,)h(for)e(a)g(description)h(of)f(the)h Fz(stride)k
-FD(argumen)m(t.)275 2132 y(Assume)41 b(the)g Fz(time)48
-b FD(co)s(ordinate)42 b(is)g(incremen)m(tally)h(n)m(um)m(b)s(ered)d
+(858687_03.nc)275 1973 y FE(See)30 b(Section)h(3.16)h([Stride],)f(page)
+g(57,)h(for)e(a)g(description)h(of)f(the)h FA(stride)k
+FE(argumen)m(t.)275 2132 y(Assume)41 b(the)g FA(time)48
+b FE(co)s(ordinate)42 b(is)g(incremen)m(tally)h(n)m(um)m(b)s(ered)d
 (suc)m(h)i(that)g(Jan)m(uary)-8 b(,)44 b(1985)33 b(=)d(1)150
 2242 y(and)d(Decem)m(b)s(er,)i(1989)j(=)e(60.)e(Assuming)e
-Fy(??)h FD(only)g(expands)g(to)h(the)f(\014v)m(e)g(desired)g(\014les,)h
+Fz(??)h FE(only)g(expands)g(to)h(the)f(\014v)m(e)g(desired)g(\014les,)h
 (the)f(follo)m(wing)150 2351 y(concatenates)33 b(June,)d(1985{June,)i
-(1989:)390 2511 y Fy(ncrcat)46 b(-d)h(time,6.,54.)e(??.nc)h
+(1989:)390 2511 y Fz(ncrcat)46 b(-d)h(time,6.,54.)e(??.nc)h
 (8506_8906.nc)p eop end
-%%Page: 202 208
-TeXDict begin 202 207 bop 150 -116 a FD(202)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.11)68 b Fc(ncrename)41
-b FB(netCDF)k(Renamer)150 458 y FD(SYNT)-8 b(AX)390 646
-y Fy(ncrename)46 b([-a)g Fn(old_name)p Fy(,)p Fn(new_name)p
-Fy(])d([-a)k(...)o(])h([-D)f Fn(dbg)p Fy(])390 756 y([-d)g
-Fn(old_name)p Fy(,)p Fn(new_name)p Fy(])c([-d)k(...)o(])g([-g)g
-Fn(old_name)p Fy(,)p Fn(new_name)p Fy(])c([-g)k(...)o(])390
-866 y([-h])g([--hdf])e([--hdr_pad)g Fn(nbr)p Fy(])i([-l)g
-Fn(path)p Fy(])f([-O])h([-o)g Fn(output-)390 975 y(file)p
-Fy(])f([-p)h Fn(path)p Fy(])g([-R])f([-r])390 1085 y([-v)h
-Fn(old_name)p Fy(,)p Fn(new_name)p Fy(])c([-v)k(...)o(])390
-1194 y Fn(input-file)e Fy([[)p Fn(output-file)p Fy(]])150
-1383 y FD(DESCRIPTION)275 1571 y Fy(ncrename)31 b FD(renames)j(netCDF)h
+%%Page: 214 220
+TeXDict begin 214 219 bop 150 -116 a FE(214)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.11)68 b Fb(ncrename)41
+b FC(netCDF)k(Renamer)150 458 y FE(SYNT)-8 b(AX)390 646
+y Fz(ncrename)46 b([-a)g Fo(old_name)p Fz(,)p Fo(new_name)p
+Fz(])d([-a)k(...)o(])h([-D)f Fo(dbg)p Fz(])390 756 y([-d)g
+Fo(old_name)p Fz(,)p Fo(new_name)p Fz(])c([-d)k(...)o(])g([-g)g
+Fo(old_name)p Fz(,)p Fo(new_name)p Fz(])c([-g)k(...)o(])390
+866 y([-h])g([--hdf])e([--hdr_pad)g Fo(nbr)p Fz(])i([-l)g
+Fo(path)p Fz(])f([-O])h([-o)g Fo(output-)390 975 y(file)p
+Fz(])f([-p)h Fo(path)p Fz(])g([-R])f([-r])390 1085 y([-v)h
+Fo(old_name)p Fz(,)p Fo(new_name)p Fz(])c([-v)k(...)o(])390
+1194 y Fo(input-file)e Fz([[)p Fo(output-file)p Fz(]])150
+1383 y FE(DESCRIPTION)275 1571 y Fz(ncrename)31 b FE(renames)j(netCDF)h
 (dimensions,)f(v)-5 b(ariables,)36 b(attributes,)g(and)d(groups.)51
 b(Eac)m(h)35 b(ob)5 b(ject)150 1680 y(that)26 b(has)f(a)h(name)f(in)g
 (the)h(list)f(of)h(old)f(names)h(is)f(renamed)g(using)g(the)g(corresp)s
@@ -28210,33 +29400,33 @@ b(All)30 b(the)f(new)f(names)h(m)m(ust)f(b)s(e)g(unique.)40
 b(Ev)m(ery)29 b(old)f(name)h(m)m(ust)g(exist)g(in)g(the)g(input)150
 1900 y(\014le,)h(unless)f(the)h(old)g(name)g(is)g(preceded)g(b)m(y)f
 (the)h(p)s(erio)s(d)f(\(or)h(\\dot"\))h(c)m(haracter)h(`)p
-Fy(.)p FD('.)40 b(The)30 b(v)-5 b(alidit)m(y)31 b(of)150
-2009 y Fz(old)p 277 2009 28 4 v 40 w(name)36 b FD(is)31
+Fz(.)p FE('.)40 b(The)30 b(v)-5 b(alidit)m(y)31 b(of)150
+2009 y FA(old)p 277 2009 28 4 v 40 w(name)36 b FE(is)31
 b(not)h(c)m(hec)m(k)m(ed)g(prior)f(to)g(the)h(renaming.)42
-b(Th)m(us,)30 b(if)h Fz(old)p 2543 2009 V 40 w(name)37
-b FD(is)31 b(sp)s(eci\014ed)f(without)h(the)150 2119
-y(`)p Fy(.)p FD(')g(pre\014x)f(that)i(indicates)g(the)g(presence)f(of)g
-Fz(old)p 1867 2119 V 41 w(name)36 b FD(is)31 b(optional,)i(and)e
-Fz(old)p 2927 2119 V 40 w(name)36 b FD(is)31 b(not)h(presen)m(t)150
-2228 y(in)j Fz(input-\014le)p FD(,)h(then)e Fy(ncrename)f
-FD(will)j(ab)s(ort.)54 b(The)35 b Fz(new)p 2135 2228
-V 39 w(name)41 b FD(should)34 b(nev)m(er)h(b)s(e)f(pre\014xed)g(b)m(y)h
-(a)h(`)p Fy(.)p FD(')150 2338 y(\(or)j(else)h(the)f(p)s(erio)s(d)f
+b(Th)m(us,)30 b(if)h FA(old)p 2543 2009 V 40 w(name)37
+b FE(is)31 b(sp)s(eci\014ed)f(without)h(the)150 2119
+y(`)p Fz(.)p FE(')g(pre\014x)f(that)i(indicates)g(the)g(presence)f(of)g
+FA(old)p 1867 2119 V 41 w(name)36 b FE(is)31 b(optional,)i(and)e
+FA(old)p 2927 2119 V 40 w(name)36 b FE(is)31 b(not)h(presen)m(t)150
+2228 y(in)j FA(input-\014le)p FE(,)h(then)e Fz(ncrename)f
+FE(will)j(ab)s(ort.)54 b(The)35 b FA(new)p 2135 2228
+V 39 w(name)41 b FE(should)34 b(nev)m(er)h(b)s(e)f(pre\014xed)g(b)m(y)h
+(a)h(`)p Fz(.)p FE(')150 2338 y(\(or)j(else)h(the)f(p)s(erio)s(d)f
 (will)h(b)s(e)f(included)h(as)g(part)g(of)g(the)g(new)f(name\).)67
-b(As)39 b(of)g FC(NCO)g FD(v)m(ersion)g(4.4.6)150 2447
-y(\(released)34 b(Octob)s(er,)f(2014\),)i(the)e Fz(old)p
-1472 2447 V 40 w(name)38 b FD(and)32 b Fz(new)p 2098
-2447 V 40 w(name)37 b FD(argumen)m(ts)c(ma)m(y)g(include)g(\(or)f(b)s
+b(As)39 b(of)g FD(NCO)g FE(v)m(ersion)g(4.4.6)150 2447
+y(\(released)34 b(Octob)s(er,)f(2014\),)i(the)e FA(old)p
+1472 2447 V 40 w(name)38 b FE(and)32 b FA(new)p 2098
+2447 V 40 w(name)37 b FE(argumen)m(ts)c(ma)m(y)g(include)g(\(or)f(b)s
 (e,)h(for)150 2557 y(groups\))h(partial)i(or)f(full)f(group)g(paths.)54
 b(The)34 b(OPTIONS)f(and)h(EXAMPLES)g(sho)m(w)h(ho)m(w)g(to)g(select)
 150 2667 y(sp)s(eci\014c)30 b(v)-5 b(ariables)31 b(whose)f(attributes)h
-(are)g(to)g(b)s(e)f(renamed.)150 2745 y Fk(\013)p 200
+(are)g(to)g(b)s(e)f(renamed.)150 2745 y Fl(\013)p 200
 2745 3554 4 v 3553 w(\010)p 150 3586 4 794 v 303 2886
-a FD(Ca)m(v)m(eat)46 b(lector:)69 b(Unforunately)43 b(from)h
+a FE(Ca)m(v)m(eat)46 b(lector:)69 b(Unforunately)43 b(from)h
 (2007{presen)m(t)i(\(Octob)s(er,)h(2014\))f(the)e(netCDF)h(library)178
 2996 y(\(v)m(ersions)31 b(4.0.0{4.3.2\))k(con)m(tained)c(bugs)e(or)i
-(limitations)g(that)g(sometimes)g(prev)m(en)m(t)g FC(NCO)f
-FD(from)f(cor-)178 3105 y(rectly)40 b(renaming)f(co)s(ordinate)g(v)-5
+(limitations)g(that)g(sometimes)g(prev)m(en)m(t)g FD(NCO)f
+FE(from)f(cor-)178 3105 y(rectly)40 b(renaming)f(co)s(ordinate)g(v)-5
 b(ariables,)42 b(dimensions,)e(and)f(groups)f(in)g(netCDF4)i(\014les.)
 66 b(\(T)-8 b(o)40 b(our)178 3215 y(kno)m(wledge)29 b(the)f(netCDF)h
 (library)e(calls)i(for)f(renaming)g(alw)m(a)m(ys)h(w)m(ork)f(w)m(ell)h
@@ -28245,163 +29435,163 @@ b(around)34 b(to)i(some)f(netCDF4)h(issues)e(is)h(con)m(v)m(ert)i(to)e
 (netCDF3,)j(rename,)e(then)e(con)m(v)m(ert)j(bac)m(k\).)178
 3434 y(T)-8 b(o)34 b(understand)d(the)i(renaming)g(limitations)i(asso)s
 (ciated)f(with)f(particular)g(netCDF)h(v)m(ersions,)g(read)178
-3544 y(the)d Fy(ncrename)d FD(do)s(cumen)m(tation)j(b)s(elo)m(w)g(in)f
+3544 y(the)d Fz(ncrename)d FE(do)s(cumen)m(tation)j(b)s(elo)m(w)g(in)f
 (its)h(en)m(tiret)m(y)-8 b(.)p 3803 3586 V 150 3638 a
-Fk(\012)p 200 3638 3554 4 v 3553 w(\011)275 3837 y FD(Although)33
-b Fy(ncrename)d FD(supp)s(orts)h(full)i(pathnames)f(for)h(b)s(oth)f
-Fz(old)p 2578 3837 28 4 v 40 w(name)38 b FD(and)33 b
-Fz(new)p 3205 3837 V 39 w(name)p FD(,)h(this)f(is)150
+Fl(\012)p 200 3638 3554 4 v 3553 w(\011)275 3837 y FE(Although)33
+b Fz(ncrename)d FE(supp)s(orts)h(full)i(pathnames)f(for)h(b)s(oth)f
+FA(old)p 2578 3837 28 4 v 40 w(name)38 b FE(and)33 b
+FA(new)p 3205 3837 V 39 w(name)p FE(,)h(this)f(is)150
 3946 y(really)e(\\windo)m(w)f(dressing".)40 b(The)30
-b(full-path)f(to)i Fz(new)p 2037 3946 V 40 w(name)k FD(m)m(ust)30
+b(full-path)f(to)i FA(new)p 2037 3946 V 40 w(name)k FE(m)m(ust)30
 b(b)s(e)f(iden)m(tical)j(to)e(the)g(full-path)g(to)150
-4056 y Fz(old)p 277 4056 V 40 w(name)41 b FD(in)36 b(all)h(classes)g
+4056 y FA(old)p 277 4056 V 40 w(name)41 b FE(in)36 b(all)h(classes)g
 (of)g(ob)5 b(jects)36 b(\(attributes,)j(v)-5 b(ariables,)39
 b(dimensions,)e(or)f(groups\).)57 b(In)36 b(other)150
-4166 y(w)m(ords,)29 b Fy(ncrename)e FD(can)j(c)m(hange)g(only)f(the)h
+4166 y(w)m(ords,)29 b Fz(ncrename)e FE(can)j(c)m(hange)g(only)f(the)h
 (lo)s(cal)g(names)f(of)h(ob)5 b(jects,)30 b(it)g(cannot)g(c)m(hange)g
 (the)f(lo)s(cation)150 4275 y(of)f(the)g(ob)5 b(ject)28
 b(in)g(the)g(group)f(hierarc)m(h)m(y)h(within)g(the)g(\014le.)39
-b(Hence)29 b(using)e(a)h(full-path)g(in)f Fz(new)p 3410
-4275 V 40 w(name)33 b FD(is)150 4385 y(redundan)m(t.)39
+b(Hence)29 b(using)e(a)h(full-path)g(in)f FA(new)p 3410
+4275 V 40 w(name)33 b FE(is)150 4385 y(redundan)m(t.)39
 b(The)29 b(ob)5 b(ject)30 b(name)g(is)f(the)h(terminal)g(path)f(comp)s
-(onen)m(t)g(of)h Fz(new)p 2873 4385 V 39 w(name)35 b
-FD(and)29 b(this)g(ob)5 b(ject)150 4494 y(m)m(ust)30
+(onen)m(t)g(of)h FA(new)p 2873 4385 V 39 w(name)35 b
+FE(and)29 b(this)g(ob)5 b(ject)150 4494 y(m)m(ust)30
 b(already)h(exist)g(in)f(the)h(group)f(sp)s(eci\014ed)f(b)m(y)i(the)f
-Fz(old)p 2208 4494 V 41 w(name)35 b FD(path.)275 4682
-y Fy(ncrename)i FD(is)j(an)g(exception)h(to)f(the)g(normal)g
-FC(NCO)f FD(rule)h(that)g(the)g(user)g(will)g(b)s(e)f(in)m(teractiv)m
+FA(old)p 2208 4494 V 41 w(name)35 b FE(path.)275 4682
+y Fz(ncrename)i FE(is)j(an)g(exception)h(to)f(the)g(normal)g
+FD(NCO)f FE(rule)h(that)g(the)g(user)g(will)g(b)s(e)f(in)m(teractiv)m
 (ely)150 4792 y(prompted)c(b)s(efore)h(an)f(existing)i(\014le)f(is)g(c)
 m(hanged,)j(and)c(that)i(a)f(temp)s(orary)g(cop)m(y)g(of)g(an)g(output)
 g(\014le)150 4902 y(is)d(constructed)g(during)f(the)h(op)s(eration.)50
-b(If)32 b(only)h Fz(input-\014le)38 b FD(is)33 b(sp)s(eci\014ed,)g
-(then)g Fy(ncrename)e FD(c)m(hanges)150 5011 y(ob)5 b(ject)25
-b(names)e(in)h(the)g Fz(input-\014le)k FD(in)c(place)g(without)g
+b(If)32 b(only)h FA(input-\014le)38 b FE(is)33 b(sp)s(eci\014ed,)g
+(then)g Fz(ncrename)e FE(c)m(hanges)150 5011 y(ob)5 b(ject)25
+b(names)e(in)h(the)g FA(input-\014le)k FE(in)c(place)g(without)g
 (prompting)f(and)g(without)h(creating)h(a)f(temp)s(orary)150
-5121 y(cop)m(y)30 b(of)g Fy(input-file)p FD(.)38 b(This)29
+5121 y(cop)m(y)30 b(of)g Fz(input-file)p FE(.)38 b(This)29
 b(is)h(b)s(ecause)g(the)f(renaming)h(op)s(eration)g(is)g(considered)g
 (rev)m(ersible)g(if)g(the)150 5230 y(user)36 b(mak)m(es)h(a)h(mistak)m
-(e.)61 b(The)36 b Fz(new)p 1455 5230 V 39 w(name)42 b
-FD(can)37 b(easily)h(b)s(e)e(c)m(hanged)h(bac)m(k)g(to)h
-Fz(old)p 3122 5230 V 40 w(name)k FD(b)m(y)36 b(using)150
-5340 y Fy(ncrename)28 b FD(one)j(more)f(time.)p eop end
-%%Page: 203 209
-TeXDict begin 203 208 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(203)275
-299 y(Note)22 b(that)f(renaming)f(a)h(dimension)g(to)g(the)g(name)g(of)
-f(a)h(dep)s(enden)m(t)f(v)-5 b(ariable)22 b(can)f(b)s(e)f(used)g(to)h
-(in)m(v)m(ert)150 408 y(the)44 b(relationship)h(b)s(et)m(w)m(een)g(an)f
-(indep)s(enden)m(t)f(co)s(ordinate)i(v)-5 b(ariable)45
-b(and)f(a)h(dep)s(enden)m(t)e(v)-5 b(ariable.)150 518
-y(In)35 b(this)h(case,)j(the)d(named)g(dep)s(enden)m(t)f(v)-5
-b(ariable)36 b(m)m(ust)g(b)s(e)g(one-dimensional)g(and)g(should)f(ha)m
-(v)m(e)i(no)150 628 y(missing)30 b(v)-5 b(alues.)41 b(Suc)m(h)30
-b(a)h(v)-5 b(ariable)31 b(will)g(b)s(ecome)f(a)h(co)s(ordinate)g(v)-5
-b(ariable.)275 800 y(According)31 b(to)g(the)g Fz(netCDF)g(User)f
-(Guide)p FD(,)h(renaming)g(ob)5 b(jects)31 b(in)f(netCDF)h(\014les)g
+(e.)61 b(The)36 b FA(new)p 1455 5230 V 39 w(name)42 b
+FE(can)37 b(easily)h(b)s(e)e(c)m(hanged)h(bac)m(k)g(to)h
+FA(old)p 3122 5230 V 40 w(name)k FE(b)m(y)36 b(using)150
+5340 y Fz(ncrename)28 b FE(one)j(more)f(time.)p eop end
+%%Page: 215 221
+TeXDict begin 215 220 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(215)275 299 y(Note)22
+b(that)f(renaming)f(a)h(dimension)g(to)g(the)g(name)g(of)f(a)h(dep)s
+(enden)m(t)f(v)-5 b(ariable)22 b(can)f(b)s(e)f(used)g(to)h(in)m(v)m
+(ert)150 408 y(the)44 b(relationship)h(b)s(et)m(w)m(een)g(an)f(indep)s
+(enden)m(t)f(co)s(ordinate)i(v)-5 b(ariable)45 b(and)f(a)h(dep)s(enden)
+m(t)e(v)-5 b(ariable.)150 518 y(In)35 b(this)h(case,)j(the)d(named)g
+(dep)s(enden)m(t)f(v)-5 b(ariable)36 b(m)m(ust)g(b)s(e)g
+(one-dimensional)g(and)g(should)f(ha)m(v)m(e)i(no)150
+628 y(missing)30 b(v)-5 b(alues.)41 b(Suc)m(h)30 b(a)h(v)-5
+b(ariable)31 b(will)g(b)s(ecome)f(a)h(co)s(ordinate)g(v)-5
+b(ariable.)275 800 y(According)31 b(to)g(the)g FA(netCDF)g(User)f
+(Guide)p FE(,)h(renaming)g(ob)5 b(jects)31 b(in)f(netCDF)h(\014les)g
 (do)s(es)f(not)h(incur)150 909 y(the)i(p)s(enalt)m(y)h(of)g(recop)m
-(ying)g(the)f(en)m(tire)h(\014le)g(when)e(the)i Fz(new)p
-2287 909 28 4 v 39 w(name)39 b FD(is)33 b(shorter)g(than)g(the)g
-Fz(old)p 3478 909 V 41 w(name)p FD(.)150 1019 y(Th)m(us)d
-Fy(ncrename)f FD(ma)m(y)j(run)e(m)m(uc)m(h)h(faster)g(\(at)i(least)f
+(ying)g(the)f(en)m(tire)h(\014le)g(when)e(the)i FA(new)p
+2287 909 28 4 v 39 w(name)39 b FE(is)33 b(shorter)g(than)g(the)g
+FA(old)p 3478 909 V 41 w(name)p FE(.)150 1019 y(Th)m(us)d
+Fz(ncrename)f FE(ma)m(y)j(run)e(m)m(uc)m(h)h(faster)g(\(at)i(least)f
 (on)f(netCDF3)i(\014les\))e(if)g(judicious)g(use)g(of)g(header)150
 1128 y(padding)d(\(see)i(Section)g(3.2)g([Metadata)i(Optimization],)f
 (page)f(25\))g(w)m(as)g(made)f(when)f(pro)s(ducing)g(the)150
-1238 y Fz(input-\014le)p FD(.)43 b(Similarly)-8 b(,)32
-b(using)f(the)g(`)p Fy(--hdr_pad)p FD(')e(option)j(with)f
-Fy(ncrename)e FD(helps)i(ensure)f(that)i(future)150 1347
-y(metadata)g(c)m(hanges)f(to)h Fz(output-\014le)j FD(o)s(ccur)30
+1238 y FA(input-\014le)p FE(.)43 b(Similarly)-8 b(,)32
+b(using)f(the)g(`)p Fz(--hdr_pad)p FE(')e(option)j(with)f
+Fz(ncrename)e FE(helps)i(ensure)f(that)i(future)150 1347
+y(metadata)g(c)m(hanges)f(to)h FA(output-\014le)j FE(o)s(ccur)30
 b(as)h(swi\015y)e(as)i(p)s(ossible.)150 1519 y(OPTIONS)150
-1729 y(`)p Fy(-a)f Fn(old_name)p Fy(,)p Fn(new_name)p
-FD(')630 1838 y(A)m(ttribute)44 b(renaming.)80 b(The)43
+1729 y(`)p Fz(-a)f Fo(old_name)p Fz(,)p Fo(new_name)p
+FE(')630 1838 y(A)m(ttribute)44 b(renaming.)80 b(The)43
 b(old)g(and)g(new)g(names)g(of)g(the)h(attribute)g(are)g(sp)s
-(eci\014ed)630 1948 y(with)24 b(`)p Fy(-a)p FD(')g(\(or)g(`)p
-Fy(--attribute)p FD('\))e(b)m(y)i(the)h(asso)s(ciated)g
-Fz(old)p 2600 1948 V 41 w(name)k FD(and)23 b Fz(new)p
-3209 1948 V 40 w(name)29 b FD(v)-5 b(alues.)630 2057
+(eci\014ed)630 1948 y(with)24 b(`)p Fz(-a)p FE(')g(\(or)g(`)p
+Fz(--attribute)p FE('\))e(b)m(y)i(the)h(asso)s(ciated)g
+FA(old)p 2600 1948 V 41 w(name)k FE(and)23 b FA(new)p
+3209 1948 V 40 w(name)29 b FE(v)-5 b(alues.)630 2057
 y(Global)22 b(attributes)g(are)g(treated)g(no)f(di\013eren)m(tly)h
 (than)f(v)-5 b(ariable)22 b(attributes.)38 b(This)20
 b(option)630 2167 y(ma)m(y)34 b(b)s(e)f(sp)s(eci\014ed)g(more)h(than)g
 (once.)51 b(As)33 b(men)m(tioned)i(ab)s(o)m(v)m(e,)h(all)e(o)s
 (ccurrences)g(of)g(the)630 2276 y(attribute)29 b(of)g(a)h(giv)m(en)f
-(name)g(will)g(b)s(e)f(renamed)h(unless)f(the)h(`)p Fy(.)p
-FD(')g(form)f(is)h(used,)f(with)h(one)630 2386 y(exception.)49
+(name)g(will)g(b)s(e)f(renamed)h(unless)f(the)h(`)p Fz(.)p
+FE(')g(form)f(is)h(used,)f(with)h(one)630 2386 y(exception.)49
 b(T)-8 b(o)34 b(c)m(hange)f(the)g(attribute)h(name)f(for)f(a)i
 (particular)f(v)-5 b(ariable,)34 b(sp)s(ecify)f(the)630
-2496 y Fz(old)p 757 2496 V 40 w(name)k FD(in)31 b(the)g(format)h
-Fz(old)p 1728 2496 V 40 w(v)-5 b(ar)p 1892 2496 V 40
+2496 y FA(old)p 757 2496 V 40 w(name)k FE(in)31 b(the)g(format)h
+FA(old)p 1728 2496 V 40 w(v)-5 b(ar)p 1892 2496 V 40
 w(name at old)p 2336 2496 V 40 w(att)p 2491 2496 V 41 w(name)p
-FD(.)44 b(The)31 b(`)p Fy(@)p FD(')g(sym)m(b)s(ol)g(delimits)630
+FE(.)44 b(The)31 b(`)p Fz(@)p FE(')g(sym)m(b)s(ol)g(delimits)630
 2605 y(the)36 b(v)-5 b(ariable)36 b(from)f(the)h(attribute)g(name.)57
 b(If)35 b(the)h(attribute)g(is)g(uniquely)f(named)g(\(no)630
 2715 y(other)45 b(v)-5 b(ariables)46 b(con)m(tain)g(the)f(attribute\))h
-(then)f(the)g Fz(old)p 2734 2715 V 41 w(v)-5 b(ar)p 2899
+(then)f(the)g FA(old)p 2734 2715 V 41 w(v)-5 b(ar)p 2899
 2715 V 40 w(name at old)p 3343 2715 V 40 w(att)p 3498 2715
-V 41 w(name)630 2824 y FD(syn)m(tax)25 b(is)f(redundan)m(t.)38
-b(The)24 b Fz(old)p 1779 2824 V 40 w(v)-5 b(ar)p 1943
-2824 V 40 w(name)30 b FD(v)-5 b(ariable)25 b(names)f
-Fy(global)f FD(and)h Fy(group)f FD(ha)m(v)m(e)630 2934
+V 41 w(name)630 2824 y FE(syn)m(tax)25 b(is)f(redundan)m(t.)38
+b(The)24 b FA(old)p 1779 2824 V 40 w(v)-5 b(ar)p 1943
+2824 V 40 w(name)30 b FE(v)-5 b(ariable)25 b(names)f
+Fz(global)f FE(and)h Fz(group)f FE(ha)m(v)m(e)630 2934
 y(sp)s(ecial)41 b(signi\014cance.)71 b(They)40 b(indicate)h(that)g
-Fz(old)p 2413 2934 V 40 w(att)p 2568 2934 V 42 w(nm)e
-FD(should)g(only)i(b)s(e)e(renamed)630 3044 y(where)32
+FA(old)p 2413 2934 V 40 w(att)p 2568 2934 V 42 w(nm)e
+FE(should)g(only)i(b)s(e)e(renamed)630 3044 y(where)32
 b(it)h(o)s(ccurs)f(as)h(a)g(global)g(\(i.e.,)i(ro)s(ot)e(group\))f
-(metadata)i(attribute)f(\(for)g Fy(global)p FD(\),)630
-3153 y(or)k(\(for)h Fy(group)p FD(\))e(as)i Fo(any)46
-b FD(group)37 b(attribute,)j(and)c(not)i(where)f(it)h(o)s(ccurs)f(as)g
+(metadata)i(attribute)f(\(for)g Fz(global)p FE(\),)630
+3153 y(or)k(\(for)h Fz(group)p FE(\))e(as)i Fp(any)46
+b FE(group)37 b(attribute,)j(and)c(not)i(where)f(it)h(o)s(ccurs)f(as)g
 (a)h(v)-5 b(ariable)630 3263 y(attribute.)59 b(The)36
-b Fz(v)-5 b(ar)p 1390 3263 V 40 w(name at att)p 1828 3263
-V 41 w(name)41 b FD(syn)m(tax)c(is)g(accepted,)i(though)d(not)g
-(required,)630 3372 y(for)30 b(the)h Fz(new)p 1089 3372
-V 39 w(name)p FD(.)150 3557 y(`)p Fy(-d)f Fn(old_name)p
-Fy(,)p Fn(new_name)p FD(')630 3666 y(Dimension)45 b(renaming.)85
+b FA(v)-5 b(ar)p 1390 3263 V 40 w(name at att)p 1828 3263
+V 41 w(name)41 b FE(syn)m(tax)c(is)g(accepted,)i(though)d(not)g
+(required,)630 3372 y(for)30 b(the)h FA(new)p 1089 3372
+V 39 w(name)p FE(.)150 3557 y(`)p Fz(-d)f Fo(old_name)p
+Fz(,)p Fo(new_name)p FE(')630 3666 y(Dimension)45 b(renaming.)85
 b(The)44 b(old)h(and)f(new)h(names)g(of)g(the)g(dimension)f(are)i(sp)s
-(eci-)630 3776 y(\014ed)f(with)h(`)p Fy(-d)p FD(')g(\(or)h(`)p
-Fy(--dmn)p FD(',)i(`)p Fy(--dimension)p FD('\))44 b(b)m(y)i(the)g(asso)
-s(ciated)i Fz(old)p 3306 3776 V 40 w(name)k FD(and)630
-3885 y Fz(new)p 793 3885 V 40 w(name)35 b FD(v)-5 b(alues.)41
+(eci-)630 3776 y(\014ed)f(with)h(`)p Fz(-d)p FE(')g(\(or)h(`)p
+Fz(--dmn)p FE(',)i(`)p Fz(--dimension)p FE('\))44 b(b)m(y)i(the)g(asso)
+s(ciated)i FA(old)p 3306 3776 V 40 w(name)k FE(and)630
+3885 y FA(new)p 793 3885 V 40 w(name)35 b FE(v)-5 b(alues.)41
 b(This)30 b(option)h(ma)m(y)g(b)s(e)e(sp)s(eci\014ed)h(more)g(than)h
-(once.)150 4070 y(`)p Fy(-g)f Fn(old_name)p Fy(,)p Fn(new_name)p
-FD(')630 4179 y(Group)i(renaming.)47 b(The)32 b(old)g(and)g(new)g
+(once.)150 4070 y(`)p Fz(-g)f Fo(old_name)p Fz(,)p Fo(new_name)p
+FE(')630 4179 y(Group)i(renaming.)47 b(The)32 b(old)g(and)g(new)g
 (names)h(of)f(the)h(group)f(are)h(sp)s(eci\014ed)f(with)g(`)p
-Fy(-g)p FD(')630 4289 y(\(or)25 b(`)p Fy(--grp)p FD(',)h(`)p
-Fy(--group)p FD('\))d(b)m(y)i(the)g(asso)s(ciated)h Fz(old)p
-2382 4289 V 41 w(name)k FD(and)24 b Fz(new)p 2993 4289
-V 39 w(name)30 b FD(v)-5 b(alues.)40 b(This)630 4399
+Fz(-g)p FE(')630 4289 y(\(or)25 b(`)p Fz(--grp)p FE(',)h(`)p
+Fz(--group)p FE('\))d(b)m(y)i(the)g(asso)s(ciated)h FA(old)p
+2382 4289 V 41 w(name)k FE(and)24 b FA(new)p 2993 4289
+V 39 w(name)30 b FE(v)-5 b(alues.)40 b(This)630 4399
 y(option)e(ma)m(y)g(b)s(e)f(sp)s(eci\014ed)g(more)g(than)h(once.)63
 b(This)36 b(functionalit)m(y)j(is)f(only)g(a)m(v)-5 b(ailable)630
-4508 y(in)29 b FC(NCO)g FD(v)m(ersion)g(4.3.7)i(\(Octob)s(er,)f(2013\))
+4508 y(in)29 b FD(NCO)g FE(v)m(ersion)g(4.3.7)i(\(Octob)s(er,)f(2013\))
 h(or)f(later,)g(and)f(only)g(when)f(built)h(on)g(netCDF)630
 4618 y(library)h(v)m(ersion)h(4.3.1-rc1)i(\(August,)e(2013\))h(or)e
-(later.)150 4802 y(`)p Fy(-v)g Fn(old_name)p Fy(,)p Fn(new_name)p
-FD(')630 4912 y(V)-8 b(ariable)35 b(renaming.)52 b(The)33
+(later.)150 4802 y(`)p Fz(-v)g Fo(old_name)p Fz(,)p Fo(new_name)p
+FE(')630 4912 y(V)-8 b(ariable)35 b(renaming.)52 b(The)33
 b(old)h(and)f(new)h(names)g(of)g(the)g(v)-5 b(ariable)35
-b(are)f(sp)s(eci\014ed)f(with)630 5021 y(`)p Fy(-v)p
-FD(')28 b(\(or)g(`)p Fy(--variable)p FD('\))d(b)m(y)j(the)g(asso)s
-(ciated)h Fz(old)p 2373 5021 V 40 w(name)k FD(and)27
-b Fz(new)p 2989 5021 V 40 w(name)33 b FD(v)-5 b(alues.)40
+b(are)f(sp)s(eci\014ed)f(with)630 5021 y(`)p Fz(-v)p
+FE(')28 b(\(or)g(`)p Fz(--variable)p FE('\))d(b)m(y)j(the)g(asso)s
+(ciated)h FA(old)p 2373 5021 V 40 w(name)k FE(and)27
+b FA(new)p 2989 5021 V 40 w(name)33 b FE(v)-5 b(alues.)40
 b(This)630 5131 y(option)31 b(ma)m(y)g(b)s(e)f(sp)s(eci\014ed)f(more)i
 (than)f(once.)150 5340 y(EXAMPLES)p eop end
-%%Page: 204 210
-TeXDict begin 204 209 bop 150 -116 a FD(204)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(Rename)36 b(the)f(v)-5
-b(ariable)37 b Fy(p)e FD(to)h Fy(pressure)e FD(and)h
-Fy(t)g FD(to)h Fy(temperature)d FD(in)i(netCDF)h Fy(in.nc)p
-FD(.)55 b(In)35 b(this)150 408 y(case)25 b Fy(p)f FD(m)m(ust)h(exist)g
-(in)f(the)g(input)g(\014le)g(\(or)h Fy(ncrename)d FD(will)i(ab)s
-(ort\),)i(but)e(the)g(presence)h(of)f Fy(t)g FD(is)h(optional:)390
-581 y Fy(ncrename)46 b(-v)h(p,pressure)e(-v)i(.t,temperature)d(in.nc)
-275 753 y FD(Rename)29 b(the)g(attribute)h Fy(long_name)d
-FD(to)j Fy(largo_nombre)25 b FD(in)k(the)g(v)-5 b(ariable)30
-b Fy(u)p FD(,)g(and)e(no)h(other)g(v)-5 b(ari-)150 862
-y(ables)31 b(in)f(netCDF)h Fy(in.nc)p FD(.)390 1035 y
-Fy(ncrename)46 b(-a)h(u at long_name,largo_nombr)o(e)42
-b(in.nc)275 1207 y FD(Rename)30 b(the)h(group)f Fy(g8)f
-FD(to)j Fy(g20)d FD(in)h(netCDF4)i(\014le)e Fy(in_grp.nc)p
-FD(:)390 1379 y Fy(ncrename)46 b(-g)h(g8,g20)f(in_grp.nc)275
-1551 y FD(Rename)30 b(the)h(v)-5 b(ariable)31 b Fy(/g1/lon)d
-FD(to)k Fy(longitude)27 b FD(in)j(netCDF4)i Fy(in_grp.nc)p
-FD(:)390 1724 y Fy(ncrename)46 b(-v)h(/g1/lon,longitude)c(in_grp.nc)390
+%%Page: 216 222
+TeXDict begin 216 221 bop 150 -116 a FE(216)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(Rename)36 b(the)f(v)-5
+b(ariable)37 b Fz(p)e FE(to)h Fz(pressure)e FE(and)h
+Fz(t)g FE(to)h Fz(temperature)d FE(in)i(netCDF)h Fz(in.nc)p
+FE(.)55 b(In)35 b(this)150 408 y(case)25 b Fz(p)f FE(m)m(ust)h(exist)g
+(in)f(the)g(input)g(\014le)g(\(or)h Fz(ncrename)d FE(will)i(ab)s
+(ort\),)i(but)e(the)g(presence)h(of)f Fz(t)g FE(is)h(optional:)390
+581 y Fz(ncrename)46 b(-v)h(p,pressure)e(-v)i(.t,temperature)d(in.nc)
+275 753 y FE(Rename)29 b(the)g(attribute)h Fz(long_name)d
+FE(to)j Fz(largo_nombre)25 b FE(in)k(the)g(v)-5 b(ariable)30
+b Fz(u)p FE(,)g(and)e(no)h(other)g(v)-5 b(ari-)150 862
+y(ables)31 b(in)f(netCDF)h Fz(in.nc)p FE(.)390 1035 y
+Fz(ncrename)46 b(-a)h(u at long_name,largo_nombr)o(e)42
+b(in.nc)275 1207 y FE(Rename)30 b(the)h(group)f Fz(g8)f
+FE(to)j Fz(g20)d FE(in)h(netCDF4)i(\014le)e Fz(in_grp.nc)p
+FE(:)390 1379 y Fz(ncrename)46 b(-g)h(g8,g20)f(in_grp.nc)275
+1551 y FE(Rename)30 b(the)h(v)-5 b(ariable)31 b Fz(/g1/lon)d
+FE(to)k Fz(longitude)27 b FE(in)j(netCDF4)i Fz(in_grp.nc)p
+FE(:)390 1724 y Fz(ncrename)46 b(-v)h(/g1/lon,longitude)c(in_grp.nc)390
 1833 y(ncrename)j(-v)h(/g1/lon,/g1/longitude)42 b(in_grp.nc)j(#)i
-(Alternate)275 2005 y(ncrename)23 b FD(do)s(es)i(not)h(automatically)j
+(Alternate)275 2005 y(ncrename)23 b FE(do)s(es)i(not)h(automatically)j
 (attac)m(h)e(dimensions)e(to)i(v)-5 b(ariables)26 b(of)g(the)f(same)i
 (name.)39 b(This)150 2115 y(is)29 b(done)f(to)i(mak)m(e)g(renaming)e
 (an)h(easy)g(w)m(a)m(y)h(to)g(c)m(hange)f(whether)g(a)g(v)-5
@@ -28410,36 +29600,36 @@ b(ariable)29 b(is)g(a)g(co)s(ordinate.)41 b(If)29 b(y)m(ou)150
 b(ariable)38 b(so)e(that)i(it)f(remains)f(a)h(co)s(ordinate)h(v)-5
 b(ariable,)39 b(y)m(ou)e(m)m(ust)150 2334 y(separately)32
 b(rename)e(b)s(oth)g(the)g(dimension)g(and)g(the)g(v)-5
-b(ariable:)390 2506 y Fy(ncrename)46 b(-d)h(lon,longitude)d(-v)j
-(lon,longitude)d(in.nc)275 2679 y FD(Unfortunately)-8
+b(ariable:)390 2506 y Fz(ncrename)46 b(-d)h(lon,longitude)d(-v)j
+(lon,longitude)d(in.nc)275 2679 y FE(Unfortunately)-8
 b(,)31 b(the)f(netCDF4)h(library)e(had)h(a)g(longstanding)g(bug)g
 (\(all)h(v)m(ersions)f(un)m(til)g(4.3.1-rc5)150 2788
 y(released)d(in)g(Decem)m(b)s(er,)h(2013\))h(that)e(crashed)f
-FC(NCO)h FD(when)e(p)s(erforming)h(this)g(op)s(eration.)40
+FD(NCO)h FE(when)e(p)s(erforming)h(this)g(op)s(eration.)40
 b(Sim)m(ultane-)150 2898 y(ously)24 b(renaming)g(v)-5
 b(ariables)24 b(and)f(dimensions)h(in)f(netCDF4)i(\014les)f(with)f
 (earlier)i(v)m(ersions)f(of)g(netCDF)h(is)150 3007 y(imp)s(ossible;)i
 (it)e(m)m(ust)g(instead)g(b)s(e)g(done)g(in)f(t)m(w)m(o)j(separate)f
-Fy(ncrename)d FD(in)m(v)m(o)s(cations)k(\(e.g.,)h(\014rst)c(rename)150
+Fz(ncrename)d FE(in)m(v)m(o)s(cations)k(\(e.g.,)h(\014rst)c(rename)150
 3117 y(the)31 b(v)-5 b(ariable,)31 b(then)f(rename)g(the)h(dimension\))
 f(to)h(a)m(v)m(oid)h(triggering)g(the)e(libary)h(bug.)275
 3289 y(A)24 b(related)h(bug)e(causes)i(unin)m(tended)d(side-e\013ects)k
-(with)e Fy(ncrename)e FD(also)j(built)f(with)f(all)i(v)m(ersions)g(of)
+(with)e Fz(ncrename)e FE(also)j(built)f(with)f(all)i(v)m(ersions)g(of)
 150 3399 y(the)g(netCDF4)h(library)f(un)m(til)g(4.3.1-rc5)j(released)d
 (in)g(Decem)m(b)s(er,)i(2013\):)40 b(This)25 b(bug)f(caused)h(renaming)
-150 3508 y Fo(either)31 b FD(a)21 b(dimension)f Fo(or)31
-b FD(its)21 b(asso)s(ciated)h(co)s(ordinate)f(v)-5 b(ariable)22
+150 3508 y Fp(either)31 b FE(a)21 b(dimension)f Fp(or)31
+b FE(its)21 b(asso)s(ciated)h(co)s(ordinate)f(v)-5 b(ariable)22
 b(\(not)f(b)s(oth,)h(whic)m(h)e(w)m(ould)g(fail)i(as)e(ab)s(o)m(v)m
 (e\))150 3618 y(in)30 b(a)h(netCDF4)g(\014le)g(to)g(inadv)m(erten)m
-(tly)h(rename)e(b)s(oth:)390 3790 y Fy(#)47 b(Demonstate)e(bug)i(in)h
+(tly)h(rename)e(b)s(oth:)390 3790 y Fz(#)47 b(Demonstate)e(bug)i(in)h
 (netCDF4/HDF5)c(library)i(prior)g(to)h(netCDF-4.3.1-rc5)390
 3900 y(ncks)g(-O)g(-h)g(-m)g(-M)g(-4)h(-v)f(lat_T42)f(~/nco/data/in.nc)
 d(~/foo.nc)390 4009 y(ncrename)j(-O)h(-v)g(lat_T42,lat)e(~/foo.nc)g
 (~/foo2.nc)g(#)j(Also)f(renames)e(dimension)390 4119
 y(ncrename)h(-O)h(-d)g(lat_T42,lat)e(~/foo.nc)g(~/foo2.nc)g(#)j(Also)f
-(renames)e(variable)275 4291 y FD(T)-8 b(o)23 b(a)m(v)m(oid)h(this)e
-(fault)m(y)i(b)s(eha)m(vior,)g(either)f(build)f FC(NCO)g
-FD(with)g(netCDF)i(v)m(ersion)f(4.3.1-rc5)i(or)e(later,)i(or)150
+(renames)e(variable)275 4291 y FE(T)-8 b(o)23 b(a)m(v)m(oid)h(this)e
+(fault)m(y)i(b)s(eha)m(vior,)g(either)f(build)f FD(NCO)g
+FE(with)g(netCDF)i(v)m(ersion)f(4.3.1-rc5)i(or)e(later,)i(or)150
 4401 y(con)m(v)m(ert)h(the)e(\014le)g(to)g(netCDF3)i(\014rst,)e(then)g
 (rename)g(as)g(in)m(tended,)h(then)f(con)m(v)m(ert)i(bac)m(k.)39
 b(Unforunately)150 4510 y(while)30 b(this)f(bug)g(and)g(the)h(related)g
@@ -28447,8 +29637,8 @@ b(Unforunately)150 4510 y(while)30 b(this)f(bug)g(and)g(the)h(related)g
 (\(released)f(in)150 4620 y(Decem)m(b)s(er,)g(2013\),)i(a)e(new)f(and)g
 (related)h(bug)f(w)m(as)g(disco)m(v)m(ered)i(in)e(Octob)s(er)g(2014.)
 275 4792 y(The)f(\014nal)h(kno)m(wn)f(netCDF)i(bug)e(that)h(causes)h
-(unin)m(tended)e(side-e\013ects)i(with)f Fy(ncrename)d
-FD(a\013ects)150 4902 y(\(at)g(least\))h(v)m(ersions)f(4.3.1{4.3.2)j
+(unin)m(tended)e(side-e\013ects)i(with)f Fz(ncrename)d
+FE(a\013ects)150 4902 y(\(at)g(least\))h(v)m(ersions)f(4.3.1{4.3.2)j
 (of)d(the)f(netCDF4)h(library)f(\(and)g(snapshots)g(at)h(least)g(un)m
 (til)g(Octob)s(er,)150 5011 y(2014\):)51 b(This)33 b(bug)h(corrupts)f
 (v)-5 b(alues)35 b(or)f(renamed)g(netCDF4)h(co)s(ordinate)g(v)-5
@@ -28456,18 +29646,18 @@ b(ariables)35 b(\(i.e.,)i(v)-5 b(ariables)150 5121 y(with)35
 b(underlying)g(dimensions)f(of)i(the)g(same)g(name\))g(and)f(other)g
 (\(non-co)s(ordinate\))i(v)-5 b(ariables)36 b(that)150
 5230 y(include)d(an)h(underlying)e(dimension)h(that)h(w)m(as)g
-(renamed.)50 b(In)33 b(other)g(w)m(ords,)h Fo(r)-5 b(enaming)43
-b FD(co)s(ordinate)150 5340 y(v)-5 b(ariables)27 b(and)f(dimensions)g
+(renamed.)50 b(In)33 b(other)g(w)m(ords,)h Fp(r)-5 b(enaming)43
+b FE(co)s(ordinate)150 5340 y(v)-5 b(ariables)27 b(and)f(dimensions)g
 (succeeds)g(y)m(et)i(it)f(corrupts)f(the)g(v)-5 b(alues)27
 b(con)m(tained)h(b)m(y)e(the)h(a\013ected)g(arra)m(y)p
 eop end
-%%Page: 205 211
-TeXDict begin 205 210 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(205)150
-299 y(v)-5 b(ariables.)60 b(This)36 b(bug)g(corrupts)g(a\013ected)i(v)
--5 b(ariables)38 b(b)m(y)e(replacing)i(their)e(v)-5 b(alues)37
-b(with)g(the)g(default)150 408 y Fy(_FillValue)28 b FD(for)i(that)h(v)
--5 b(ariable's)31 b(t)m(yp)s(e:)390 568 y Fy(#)47 b(Demonstate)e(bug)i
+%%Page: 217 223
+TeXDict begin 217 222 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(217)150 299 y(v)-5
+b(ariables.)60 b(This)36 b(bug)g(corrupts)g(a\013ected)i(v)-5
+b(ariables)38 b(b)m(y)e(replacing)i(their)e(v)-5 b(alues)37
+b(with)g(the)g(default)150 408 y Fz(_FillValue)28 b FE(for)i(that)h(v)
+-5 b(ariable's)31 b(t)m(yp)s(e:)390 568 y Fz(#)47 b(Demonstate)e(bug)i
 (in)h(netCDF4/HDF5)c(library)i(prior)g(to)h(netCDF-4.3.3)390
 677 y(ncks)g(-O)g(-4)g(-C)g(-M)g(-v)h(lat)e(~/nco/data/in.nc)e
 (~/bug.nc)390 787 y(ncrename)i(-O)h(-v)g(lat,tal)f(~/bug.nc)f(~/foo.nc)
@@ -28475,42 +29665,42 @@ h(#)h(Broken)f(until)h(netCDF-4.3.3)390 897 y(ncrename)f(-O)h(-d)g
 (lat,tal)f(~/bug.nc)f(~/foo.nc)h(#)h(Broken)f(until)h(netCDF-4.3.3)390
 1006 y(ncrename)f(-O)h(-d)g(lat,tal)f(-v)h(lat,tal)f(~/bug.nc)f
 (~/foo.nc)h(#)h(Broken)f(too)390 1116 y(ncks)h(--cdl)f(~/foo.nc)275
-1275 y FD(T)-8 b(o)38 b(a)m(v)m(oid)h(this)e(fault)m(y)h(b)s(eha)m
-(vior,)i(either)e(build)e FC(NCO)i FD(with)f(netCDF)h(v)m(ersion)g
+1275 y FE(T)-8 b(o)38 b(a)m(v)m(oid)h(this)e(fault)m(y)h(b)s(eha)m
+(vior,)i(either)e(build)e FD(NCO)i FE(with)f(netCDF)h(v)m(ersion)g
 (4.3.3)h(\(TBD\))g(or)150 1385 y(later,)27 b(or)e(con)m(v)m(ert)h(the)e
 (\014le)h(to)g(netCDF3)h(\014rst,)f(then)g(rename)f(as)h(in)m(tended,)h
 (then)e(con)m(v)m(ert)i(bac)m(k.)40 b(This)150 1494 y(bug)30
 b(do)s(es)g(not)g(a\013ect)i(renaming)f(of)f(groups)g(or)g(of)h
-(attributes.)275 1654 y(Create)23 b(netCDF)h Fy(out.nc)d
-FD(iden)m(tical)k(to)f Fy(in.nc)d FD(except)j(the)g(attribute)f
-Fy(_FillValue)e FD(is)i(c)m(hanged)g(to)150 1763 y Fy(missing_value)p
-FD(,)28 b(the)j(attribute)h Fy(units)e FD(is)h(c)m(hanged)h(to)f
-Fy(CGS_units)e FD(\(but)i(only)g(in)g(those)g(v)-5 b(ariables)150
+(attributes.)275 1654 y(Create)23 b(netCDF)h Fz(out.nc)d
+FE(iden)m(tical)k(to)f Fz(in.nc)d FE(except)j(the)g(attribute)f
+Fz(_FillValue)e FE(is)i(c)m(hanged)g(to)150 1763 y Fz(missing_value)p
+FE(,)28 b(the)j(attribute)h Fz(units)e FE(is)h(c)m(hanged)h(to)f
+Fz(CGS_units)e FE(\(but)i(only)g(in)g(those)g(v)-5 b(ariables)150
 1873 y(whic)m(h)26 b(p)s(ossess)g(it\),)i(the)e(attribute)h
-Fy(hieght)e FD(is)h(c)m(hanged)h(to)g Fy(height)e FD(in)h(the)g(v)-5
-b(ariable)28 b Fy(tpt)p FD(,)e(and)g(in)g(the)150 1983
-y(v)-5 b(ariable)31 b Fy(prs_sfc)p FD(,)e(if)h(it)h(exists.)390
-2142 y Fy(ncrename)46 b(-a)h(_FillValue,missing_valu)o(e)42
+Fz(hieght)e FE(is)h(c)m(hanged)h(to)g Fz(height)e FE(in)h(the)g(v)-5
+b(ariable)28 b Fz(tpt)p FE(,)e(and)g(in)g(the)150 1983
+y(v)-5 b(ariable)31 b Fz(prs_sfc)p FE(,)e(if)h(it)h(exists.)390
+2142 y Fz(ncrename)46 b(-a)h(_FillValue,missing_valu)o(e)42
 b(-a)47 b(.units,CGS_units)c(\\)485 2252 y(-a)48 b(tpt at hieght,height)43
 b(-a)k(prs_sfc at .hieght,height)42 b(in.nc)k(out.nc)275
-2411 y FD(The)39 b(presence)h(and)g(absence)h(of)f(the)g(`)p
-Fy(.)p FD(')h(and)e(`)p Fy(@)p FD(')h(features)h(cause)g(this)f
+2411 y FE(The)39 b(presence)h(and)g(absence)h(of)f(the)g(`)p
+Fz(.)p FE(')h(and)e(`)p Fz(@)p FE(')h(features)h(cause)g(this)f
 (command)g(to)h(execute)150 2521 y(successfully)30 b(only)h(if)f(a)h(n)
 m(um)m(b)s(er)d(of)j(conditions)g(are)f(met.)41 b(All)31
-b(v)-5 b(ariables)31 b Fo(must)40 b FD(ha)m(v)m(e)31
-b(a)g Fy(_FillValue)150 2630 y FD(attribute)38 b Fo(and)49
-b Fy(_FillValue)35 b FD(m)m(ust)i(also)i(b)s(e)e(a)h(global)h
-(attribute.)64 b(The)37 b Fy(units)f FD(attribute,)41
+b(v)-5 b(ariables)31 b Fp(must)40 b FE(ha)m(v)m(e)31
+b(a)g Fz(_FillValue)150 2630 y FE(attribute)38 b Fp(and)49
+b Fz(_FillValue)35 b FE(m)m(ust)i(also)i(b)s(e)e(a)h(global)h
+(attribute.)64 b(The)37 b Fz(units)f FE(attribute,)41
 b(on)d(the)150 2740 y(other)30 b(hand,)g(will)g(b)s(e)g(renamed)f(to)i
-Fy(CGS_units)d FD(wherev)m(er)i(it)h(is)f(found)f(but)g(need)h(not)h(b)
+Fz(CGS_units)d FE(wherev)m(er)i(it)h(is)f(found)f(but)g(need)h(not)h(b)
 s(e)e(presen)m(t)h(in)150 2849 y(the)e(\014le)f(at)i(all)f(\(either)h
 (as)f(a)f(global)i(or)f(a)g(v)-5 b(ariable)28 b(attribute\).)41
-b(The)27 b(v)-5 b(ariable)29 b Fy(tpt)d FD(m)m(ust)i(con)m(tain)h(the)
-150 2959 y Fy(hieght)i FD(attribute.)50 b(The)33 b(v)-5
-b(ariable)34 b Fy(prs_sfc)d FD(need)i(not)h(exist,)h(and)d(need)h(not)h
-(con)m(tain)g(the)g Fy(hieght)150 3068 y FD(attribute.)275
+b(The)27 b(v)-5 b(ariable)29 b Fz(tpt)d FE(m)m(ust)i(con)m(tain)h(the)
+150 2959 y Fz(hieght)i FE(attribute.)50 b(The)33 b(v)-5
+b(ariable)34 b Fz(prs_sfc)d FE(need)i(not)h(exist,)h(and)d(need)h(not)h
+(con)m(tain)g(the)g Fz(hieght)150 3068 y FE(attribute.)275
 3228 y(Rename)c(the)h(global)h(or)e(group)g(attribute)h
-Fy(Convention)c FD(to)k Fy(Conventions)390 3387 y(ncrename)46
+Fz(Convention)c FE(to)k Fz(Conventions)390 3387 y(ncrename)46
 b(-a)h(Convention,Conventions)89 b(in.nc)47 b(#)g(Variable)f(and)g
 (group)h(atts.)390 3497 y(ncrename)f(-a)h(.Convention,Conventions)41
 b(in.nc)47 b(#)g(Variable)f(and)g(group)h(atts.)390 3606
@@ -28524,562 +29714,562 @@ b(#)i(Group)e(atts.)h(only)390 4045 y(ncrename)f(-a)h
 (global at Convention,Conve)o(ntio)o(ns)137 b(in.nc)46 b(#)i(Global)e
 (atts.)g(only)390 4154 y(ncrename)g(-a)h(.global at .Convention,Con)o
 (vent)o(ions)41 b(in.nc)46 b(#)i(Global)e(atts.)g(only)275
-4314 y FD(The)37 b(examples)h(without)f(the)h Fy(@)f
-FD(c)m(haracter)i(attempt)g(to)f(c)m(hange)h(the)f(attribute)g(name)f
+4314 y FE(The)37 b(examples)h(without)f(the)h Fz(@)f
+FE(c)m(haracter)i(attempt)g(to)f(c)m(hange)h(the)f(attribute)g(name)f
 (in)h(b)s(oth)150 4423 y(Global)g(or)e(Group)g(and)g(v)-5
 b(ariable)37 b(attributes.)60 b(The)36 b(examples)h(with)f(the)g
-Fy(@)h FD(c)m(haracter)h(attempt)f(to)150 4533 y(c)m(hange)26
-b(only)f(global)i(and)d(group)h Fy(Convention)d FD(attributes,)27
-b(and)d(lea)m(v)m(e)k(unc)m(hanged)c(an)m(y)i Fy(Convention)150
-4643 y FD(attributes)31 b(attac)m(hed)i(directly)f(to)f(v)-5
+Fz(@)h FE(c)m(haracter)h(attempt)f(to)150 4533 y(c)m(hange)26
+b(only)f(global)i(and)d(group)h Fz(Convention)d FE(attributes,)27
+b(and)d(lea)m(v)m(e)k(unc)m(hanged)c(an)m(y)i Fz(Convention)150
+4643 y FE(attributes)31 b(attac)m(hed)i(directly)f(to)f(v)-5
 b(ariables.)43 b(A)m(ttributes)32 b(pre\014xed)e(with)g(a)i(p)s(erio)s
-(d)d(\()p Fy(.Convention)p FD(\))150 4752 y(need)h(not)g(b)s(e)g
+(d)d(\()p Fz(.Convention)p FE(\))150 4752 y(need)h(not)g(b)s(e)g
 (presen)m(t.)41 b(A)m(ttributes)31 b(not)f(pre\014xed)f(with)h(a)h(p)s
-(erio)s(d)e(\()p Fy(Convention)p FD(\))f(m)m(ust)i(b)s(e)g(presen)m(t.)
+(erio)s(d)e(\()p Fz(Convention)p FE(\))f(m)m(ust)i(b)s(e)g(presen)m(t.)
 150 4862 y(V)-8 b(ariables)28 b(pre\014xed)d(with)h(a)h(p)s(erio)s(d)e
-(\()p Fy(.)h FD(or)h Fy(.global)p FD(\))e(need)h(not)g(b)s(e)g(presen)m
+(\()p Fz(.)h FE(or)h Fz(.global)p FE(\))e(need)h(not)g(b)s(e)g(presen)m
 (t.)40 b(V)-8 b(ariables)27 b(not)g(pre\014xed)150 4971
-y(with)j(a)h(p)s(erio)s(d)e(\()p Fy(global)p FD(\))g(m)m(ust)i(b)s(e)e
+y(with)j(a)h(p)s(erio)s(d)e(\()p Fz(global)p FE(\))g(m)m(ust)i(b)s(e)e
 (presen)m(t.)p eop end
-%%Page: 206 212
-TeXDict begin 206 211 bop 150 -116 a FD(206)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(4.12)68 b Fc(ncwa)43
-b FB(netCDF)i(W)-11 b(eigh)l(ted)46 b(Av)l(erager)150
-458 y FD(SYNT)-8 b(AX)390 623 y Fy(ncwa)47 b([-3])f([-4])h([-6])g([-7])
-f([-A])h([-a)g Fn(dim)p Fy([,...)n(]])g([-B)g Fn(mask_cond)p
-Fy(])e([-b])h([-C])h([-c])390 733 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f
+%%Page: 218 224
+TeXDict begin 218 223 bop 150 -116 a FE(218)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(4.12)68 b Fb(ncwa)43
+b FC(netCDF)i(W)-11 b(eigh)l(ted)46 b(Av)l(erager)150
+458 y FE(SYNT)-8 b(AX)390 651 y Fz(ncwa)47 b([-3])f([-4])h([-6])g([-7])
+f([-A])h([-a)g Fo(dim)p Fz([,...)n(]])g([-B)g Fo(mask_cond)p
+Fz(])e([-b])h([-C])h([-c])390 760 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f
 (map])i([--cnk_min)e(sz])i([--cnk_plc)e(plc])h([--cnk_scl)f(sz])390
-843 y([-D)i Fn(dbg)p Fy(])g([-d)f Fn(dim)p Fy(,[)p Fn(min)p
-Fy(][,[)p Fn(max)p Fy(][,[)p Fn(stride)p Fy(])o(]])c([-F])390
-952 y([-G)47 b Fn(gpe_dsc)p Fy(])e([-g)i Fn(grp)p Fy([,...)n(]])g([-h])
-g([--hdr_pad)e Fn(nbr)p Fy(])i([-I])390 1062 y([-L)g
-Fn(dfl_lvl)p Fy(])e([-l)i Fn(path)p Fy(])g([-M)g Fn(mask_val)p
-Fy(])e([-m)i Fn(mask_var)p Fy(])e([-N])i([--no_tmp_fl])390
-1171 y([-O])g([-o)g Fn(output-file)p Fy(])d([-p)j Fn(path)p
-Fy(])f([-R])h([-r])g([--ram_all])d([--rth_dbl|flt])390
-1281 y([-T)j Fn(mask_comp)p Fy(])e([-t)i Fn(thr_nbr)p
-Fy(])e([--unn])h([-v)h Fn(var)p Fy([,...)n(]])g([-w)g
-Fn(weight)p Fy(])390 1390 y([-X)g(...])g([-x])f([-y)h
-Fn(op_typ)p Fy(])390 1500 y Fn(input-file)e Fy([)p Fn(output-file)p
-Fy(])150 1665 y FD(DESCRIPTION)275 1830 y Fy(ncwa)25
-b FD(a)m(v)m(erages)k(v)-5 b(ariables)28 b(in)e(a)h(single)h(\014le)f
+870 y([-D)i Fo(dbg)p Fz(])g([-d)f Fo(dim)p Fz(,[)p Fo(min)p
+Fz(][,[)p Fo(max)p Fz(][,[)p Fo(stride)p Fz(])o(]])c([-F])390
+980 y([-G)47 b Fo(gpe_dsc)p Fz(])e([-g)i Fo(grp)p Fz([,...)n(]])g([-h])
+g([--hdr_pad)e Fo(nbr)p Fz(])i([-I])390 1089 y([-L)g
+Fo(dfl_lvl)p Fz(])e([-l)i Fo(path)p Fz(])g([-M)g Fo(mask_val)p
+Fz(])e([-m)i Fo(mask_var)p Fz(])e([-N])i([--no_tmp_fl])390
+1199 y([-O])g([-o)g Fo(output-)390 1308 y(file)p Fz(])f([-p)h
+Fo(path)p Fz(])g([--ppc)f(...])g([-R])h([-r])g([--ram_all])d
+([--rth_dbl|flt])390 1418 y([-T)j Fo(mask_comp)p Fz(])e([-t)i
+Fo(thr_nbr)p Fz(])e([--unn])h([-v)h Fo(var)p Fz([,...)n(]])g([-w)g
+Fo(weight)p Fz(])390 1528 y([-X)g(...])g([-x])f([-y)h
+Fo(op_typ)p Fz(])390 1637 y Fo(input-file)e Fz([)p Fo(output-file)p
+Fz(])150 1830 y FE(DESCRIPTION)275 2022 y Fz(ncwa)25
+b FE(a)m(v)m(erages)k(v)-5 b(ariables)28 b(in)e(a)h(single)h(\014le)f
 (o)m(v)m(er)h(arbitrary)e(dimensions,)h(with)g(options)g(to)g(sp)s
-(ecify)150 1940 y(w)m(eigh)m(ts,)k(masks,)e(and)f(normalization.)42
+(ecify)150 2132 y(w)m(eigh)m(ts,)k(masks,)e(and)f(normalization.)42
 b(See)29 b(Section)h(2.6)f([Statistics)i(vs.)40 b(Concatenation],)31
-b(page)f(18,)150 2049 y(for)h(a)g(description)g(of)g(the)g
+b(page)f(18,)150 2242 y(for)h(a)g(description)g(of)g(the)g
 (distinctions)g(b)s(et)m(w)m(een)h(the)f(v)-5 b(arious)31
-b(statistics)i(to)s(ols)e(and)g(concatenators.)150 2159
-y(The)g(default)g(b)s(eha)m(vior)g(of)h Fy(ncwa)e FD(is)h(to)h
+b(statistics)i(to)s(ols)e(and)g(concatenators.)150 2351
+y(The)g(default)g(b)s(eha)m(vior)g(of)h Fz(ncwa)e FE(is)h(to)h
 (arithmetically)h(a)m(v)m(erage)h(ev)m(ery)e(n)m(umerical)g(v)-5
-b(ariable)32 b(o)m(v)m(er)g(all)150 2269 y(dimensions)e(and)f(to)j(pro)
-s(duce)d(a)i(scalar)g(result)f(for)g(eac)m(h.)275 2434
+b(ariable)32 b(o)m(v)m(er)g(all)150 2461 y(dimensions)e(and)f(to)j(pro)
+s(duce)d(a)i(scalar)g(result)f(for)g(eac)m(h.)275 2653
 y(Av)m(eraged)41 b(dimensions)f(are,)k(b)m(y)c(default,)j(eliminated)f
 (as)e(dimensions.)70 b(Their)40 b(corresp)s(onding)150
-2543 y(co)s(ordinates,)j(if)d(an)m(y)-8 b(,)43 b(are)d(output)f(as)h
-(scalar)h(v)-5 b(ariables.)69 b(The)40 b(`)p Fy(-b)p
-FD(')f(switc)m(h)i(\(and)e(its)h(long)g(option)150 2653
-y(equiv)-5 b(alen)m(ts)34 b(`)p Fy(--rdd)p FD(')e(and)g(`)p
-Fy(--retain-degenerate-dimens)o(ions)o FD('\))c(causes)33
-b Fy(ncwa)e FD(to)j(retain)f(a)m(v)m(er-)150 2762 y(aged)28
+2763 y(co)s(ordinates,)j(if)d(an)m(y)-8 b(,)43 b(are)d(output)f(as)h
+(scalar)h(v)-5 b(ariables.)69 b(The)40 b(`)p Fz(-b)p
+FE(')f(switc)m(h)i(\(and)e(its)h(long)g(option)150 2873
+y(equiv)-5 b(alen)m(ts)34 b(`)p Fz(--rdd)p FE(')e(and)g(`)p
+Fz(--retain-degenerate-dimens)o(ions)o FE('\))c(causes)33
+b Fz(ncwa)e FE(to)j(retain)f(a)m(v)m(er-)150 2982 y(aged)28
 b(dimensions)f(as)g(degenerate)i(\(size)i(1)q(\))c(dimensions.)39
 b(This)27 b(main)m(tains)h(the)f(asso)s(ciation)i(b)s(et)m(w)m(een)150
-2872 y(a)h(dimension)f(\(or)h(co)s(ordinate\))h(and)e(v)-5
+3092 y(a)h(dimension)f(\(or)h(co)s(ordinate\))h(and)e(v)-5
 b(ariables)31 b(after)f(a)m(v)m(eraging)i(and)d(simpli\014es,)h(for)f
-(instance,)i(later)150 2982 y(concatenation)i(along)e(the)g(degenerate)
-h(dimension.)275 3147 y(T)-8 b(o)39 b(a)m(v)m(erage)j(v)-5
+(instance,)i(later)150 3201 y(concatenation)i(along)e(the)g(degenerate)
+h(dimension.)275 3394 y(T)-8 b(o)39 b(a)m(v)m(erage)j(v)-5
 b(ariables)40 b(o)m(v)m(er)h(only)e(a)h(subset)e(of)i(their)f
-(dimensions,)i(sp)s(ecify)e(these)h(dimensions)150 3256
+(dimensions,)i(sp)s(ecify)e(these)h(dimensions)150 3504
 y(in)c(a)g(comma-separated)h(list)g(follo)m(wing)g(`)p
-Fy(-a)p FD(',)h(e.g.,)g(`)p Fy(-a)30 b(time,lat,lon)p
-FD('.)54 b(As)36 b(with)g(all)h(arithmetic)150 3366 y(op)s(erators,)44
+Fz(-a)p FE(',)h(e.g.,)g(`)p Fz(-a)30 b(time,lat,lon)p
+FE('.)54 b(As)36 b(with)g(all)h(arithmetic)150 3613 y(op)s(erators,)44
 b(the)c(op)s(eration)i(ma)m(y)f(b)s(e)f(restricted)h(to)h(an)e
 (arbitrary)h(h)m(ypserslab)f(b)m(y)g(emplo)m(ying)i(the)150
-3476 y(`)p Fy(-d)p FD(')28 b(option)h(\(see)g(Section)g(3.15)h([Hyp)s
-(erslabs],)f(page)g(55\).)41 b Fy(ncwa)27 b FD(also)i(handles)f(v)-5
-b(alues)28 b(matc)m(hing)i(the)150 3585 y(v)-5 b(ariable's)31
-b Fy(_FillValue)d FD(attribute)j(correctly)-8 b(.)42
-b(Moreo)m(v)m(er,)33 b Fy(ncwa)c FD(understands)f(ho)m(w)j(to)g
-(manipulate)150 3695 y(user-sp)s(eci\014ed)39 b(w)m(eigh)m(ts,)k
+3723 y(`)p Fz(-d)p FE(')28 b(option)h(\(see)g(Section)g(3.15)h([Hyp)s
+(erslabs],)f(page)g(55\).)41 b Fz(ncwa)27 b FE(also)i(handles)f(v)-5
+b(alues)28 b(matc)m(hing)i(the)150 3832 y(v)-5 b(ariable's)31
+b Fz(_FillValue)d FE(attribute)j(correctly)-8 b(.)42
+b(Moreo)m(v)m(er,)33 b Fz(ncwa)c FE(understands)f(ho)m(w)j(to)g
+(manipulate)150 3942 y(user-sp)s(eci\014ed)39 b(w)m(eigh)m(ts,)k
 (masks,)g(and)c(normalization)i(options.)69 b(With)40
-b(these)g(options,)j Fy(ncwa)c FD(can)150 3804 y(compute)31
+b(these)g(options,)j Fz(ncwa)c FE(can)150 4051 y(compute)31
 b(sophisticated)g(a)m(v)m(erages)i(\(and)d(in)m(tegrals\))i(from)e(the)
-h(command)f(line.)275 3969 y Fz(mask)p 486 3969 28 4
-v 40 w(v)-5 b(ar)36 b FD(and)29 b Fz(w)m(eigh)m(t)p FD(,)i(if)f(sp)s
+h(command)f(line.)275 4244 y FA(mask)p 486 4244 28 4
+v 40 w(v)-5 b(ar)36 b FE(and)29 b FA(w)m(eigh)m(t)p FE(,)i(if)f(sp)s
 (eci\014ed,)f(are)h(broadcast)h(to)f(conform)f(to)i(the)f(v)-5
-b(ariables)30 b(b)s(eing)f(a)m(v)m(er-)150 4079 y(aged.)39
+b(ariables)30 b(b)s(eing)f(a)m(v)m(er-)150 4354 y(aged.)39
 b(The)23 b(rank)g(of)g(v)-5 b(ariables)24 b(is)g(reduced)e(b)m(y)i(the)
 f(n)m(um)m(b)s(er)f(of)i(dimensions)e(whic)m(h)h(they)h(are)g(a)m(v)m
-(eraged)150 4189 y(o)m(v)m(er.)62 b(Th)m(us)36 b(arra)m(ys)i(whic)m(h)f
-(are)g(one)h(dimensional)f(in)g(the)g Fz(input-\014le)42
-b FD(and)36 b(are)i(a)m(v)m(eraged)h(b)m(y)e Fy(ncwa)150
-4298 y FD(app)s(ear)f(in)h(the)g Fz(output-\014le)42
-b FD(as)37 b(scalars.)62 b(This)36 b(allo)m(ws)i(the)f(user)f(to)i
-(infer)e(whic)m(h)h(dimensions)f(ma)m(y)150 4408 y(ha)m(v)m(e)j(b)s
+(eraged)150 4463 y(o)m(v)m(er.)62 b(Th)m(us)36 b(arra)m(ys)i(whic)m(h)f
+(are)g(one)h(dimensional)f(in)g(the)g FA(input-\014le)42
+b FE(and)36 b(are)i(a)m(v)m(eraged)h(b)m(y)e Fz(ncwa)150
+4573 y FE(app)s(ear)f(in)h(the)g FA(output-\014le)42
+b FE(as)37 b(scalars.)62 b(This)36 b(allo)m(ws)i(the)f(user)f(to)i
+(infer)e(whic)m(h)h(dimensions)f(ma)m(y)150 4682 y(ha)m(v)m(e)j(b)s
 (een)e(a)m(v)m(eraged.)65 b(Note)39 b(that)f(that)g(it)h(is)e(imp)s
-(ossible)h(for)f Fy(ncwa)g FD(to)h(mak)m(e)h(mak)m(e)g(a)f
-Fz(w)m(eigh)m(t)j FD(or)150 4517 y Fz(mask)p 361 4517
-V 40 w(v)-5 b(ar)33 b FD(of)27 b(rank)f Fz(W)39 b FD(conform)26
-b(to)i(a)f Fz(v)-5 b(ar)33 b FD(of)26 b(rank)h Fz(V)38
-b FD(if)27 b Fz(W)g Fy(>)f Fz(V)p FD(.)39 b(This)26 b(situation)i
-(often)f(arises)g(when)150 4627 y(co)s(ordinate)h(v)-5
+(ossible)h(for)f Fz(ncwa)g FE(to)h(mak)m(e)h(mak)m(e)g(a)f
+FA(w)m(eigh)m(t)j FE(or)150 4792 y FA(mask)p 361 4792
+V 40 w(v)-5 b(ar)33 b FE(of)27 b(rank)f FA(W)39 b FE(conform)26
+b(to)i(a)f FA(v)-5 b(ar)33 b FE(of)26 b(rank)h FA(V)38
+b FE(if)27 b FA(W)g Fz(>)f FA(V)p FE(.)39 b(This)26 b(situation)i
+(often)f(arises)g(when)150 4902 y(co)s(ordinate)h(v)-5
 b(ariables)28 b(\(whic)m(h,)g(b)m(y)f(de\014nition,)h(are)g(one)f
 (dimensional\))h(are)f(w)m(eigh)m(ted)i(and)e(a)m(v)m(eraged.)150
-4737 y Fy(ncwa)22 b FD(assumes)i(y)m(ou)f(kno)m(w)h(this)f(is)h(imp)s
-(ossible)f(and)g(so)h Fy(ncwa)e FD(do)s(es)i(not)f(attempt)i(to)f
-(broadcast)g Fz(w)m(eigh)m(t)150 4846 y FD(or)31 b Fz(mask)p
-473 4846 V 40 w(v)-5 b(ar)38 b FD(to)32 b(conform)f(to)h
-Fz(v)-5 b(ar)38 b FD(in)31 b(this)g(case,)i(nor)e(do)s(es)g
-Fy(ncwa)f FD(prin)m(t)h(a)h(w)m(arning)f(message)i(telling)150
-4956 y(y)m(ou)c(this,)h(b)s(ecause)f(it)g(is)g(so)g(common.)41
-b(Sp)s(ecifying)28 b Fz(dbg)g Fy(>)h Fz(2)37 b FD(do)s(es)28
-b(cause)i Fy(ncwa)d FD(to)j(emit)g(w)m(arnings)e(in)150
-5065 y(these)j(situations,)g(ho)m(w)m(ev)m(er.)275 5230
-y(Non-co)s(ordinate)g(v)-5 b(ariables)31 b(are)f(alw)m(a)m(ys)i(mask)m
-(ed)e(and)g(w)m(eigh)m(ted)h(if)f(sp)s(eci\014ed.)40
-b(Co)s(ordinate)30 b(v)-5 b(ari-)150 5340 y(ables,)30
-b(ho)m(w)m(ev)m(er,)i(ma)m(y)e(b)s(e)e(treated)j(sp)s(ecially)-8
-b(.)42 b(By)29 b(default,)h(an)g(a)m(v)m(eraged)h(co)s(ordinate)g(v)-5
-b(ariable,)30 b(e.g.,)p eop end
-%%Page: 207 213
-TeXDict begin 207 212 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(207)150
-299 y Fy(latitude)p FD(,)34 b(app)s(ears)f(in)i Fz(output-\014le)k
-FD(a)m(v)m(eraged)e(the)e(same)g(w)m(a)m(y)g(as)g(an)m(y)g(other)g(v)-5
-b(ariable)35 b(con)m(taining)150 408 y(an)41 b(a)m(v)m(eraged)i
+5011 y Fz(ncwa)22 b FE(assumes)i(y)m(ou)f(kno)m(w)h(this)f(is)h(imp)s
+(ossible)f(and)g(so)h Fz(ncwa)e FE(do)s(es)i(not)f(attempt)i(to)f
+(broadcast)g FA(w)m(eigh)m(t)150 5121 y FE(or)31 b FA(mask)p
+473 5121 V 40 w(v)-5 b(ar)38 b FE(to)32 b(conform)f(to)h
+FA(v)-5 b(ar)38 b FE(in)31 b(this)g(case,)i(nor)e(do)s(es)g
+Fz(ncwa)f FE(prin)m(t)h(a)h(w)m(arning)f(message)i(telling)150
+5230 y(y)m(ou)c(this,)h(b)s(ecause)f(it)g(is)g(so)g(common.)41
+b(Sp)s(ecifying)28 b FA(dbg)g Fz(>)h FA(2)37 b FE(do)s(es)28
+b(cause)i Fz(ncwa)d FE(to)j(emit)g(w)m(arnings)e(in)150
+5340 y(these)j(situations,)g(ho)m(w)m(ev)m(er.)p eop
+end
+%%Page: 219 225
+TeXDict begin 219 224 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(219)275 299 y(Non-co)s(ordinate)31
+b(v)-5 b(ariables)31 b(are)f(alw)m(a)m(ys)i(mask)m(ed)e(and)g(w)m(eigh)
+m(ted)h(if)f(sp)s(eci\014ed.)40 b(Co)s(ordinate)30 b(v)-5
+b(ari-)150 408 y(ables,)30 b(ho)m(w)m(ev)m(er,)i(ma)m(y)e(b)s(e)e
+(treated)j(sp)s(ecially)-8 b(.)42 b(By)29 b(default,)h(an)g(a)m(v)m
+(eraged)h(co)s(ordinate)g(v)-5 b(ariable,)30 b(e.g.,)150
+518 y Fz(latitude)p FE(,)k(app)s(ears)f(in)i FA(output-\014le)k
+FE(a)m(v)m(eraged)e(the)e(same)g(w)m(a)m(y)g(as)g(an)m(y)g(other)g(v)-5
+b(ariable)35 b(con)m(taining)150 628 y(an)41 b(a)m(v)m(eraged)i
 (dimension.)73 b(In)40 b(other)h(w)m(ords,)j(b)m(y)d(default)g
-Fy(ncwa)f FD(w)m(eigh)m(ts)j(and)d(masks)h(co)s(ordinate)150
-518 y(v)-5 b(ariables)37 b(lik)m(e)g(all)g(other)g(v)-5
+Fz(ncwa)f FE(w)m(eigh)m(ts)j(and)d(masks)h(co)s(ordinate)150
+737 y(v)-5 b(ariables)37 b(lik)m(e)g(all)g(other)g(v)-5
 b(ariables.)59 b(This)35 b(design)h(decision)h(w)m(as)g(in)m(tended)f
-(to)h(b)s(e)e(helpful)h(but)f(for)150 628 y(some)30 b(applications)g
+(to)h(b)s(e)e(helpful)h(but)f(for)150 847 y(some)30 b(applications)g
 (it)g(ma)m(y)g(b)s(e)f(preferable)g(not)g(to)h(w)m(eigh)m(t)h(or)e
 (mask)h(co)s(ordinate)g(v)-5 b(ariables)30 b(just)f(lik)m(e)150
-737 y(all)e(other)g(v)-5 b(ariables.)40 b(Consider)26
-b(the)h(follo)m(wing)h(argumen)m(ts)f(to)g Fy(ncwa)p
-FD(:)38 b Fy(-a)29 b(latitude)f(-w)i(lat_wgt)f(-d)150
-847 y(latitude,0.,90.)23 b FD(where)k Fy(lat_wgt)f FD(is)h(a)h(w)m
-(eigh)m(t)h(in)e(the)h Fy(latitude)d FD(dimension.)39
-b(Since,)28 b(b)m(y)g(default)150 956 y Fy(ncwa)g FD(w)m(eigh)m(ts)i
+956 y(all)e(other)g(v)-5 b(ariables.)40 b(Consider)26
+b(the)h(follo)m(wing)h(argumen)m(ts)f(to)g Fz(ncwa)p
+FE(:)38 b Fz(-a)29 b(latitude)f(-w)i(lat_wgt)f(-d)150
+1066 y(latitude,0.,90.)23 b FE(where)k Fz(lat_wgt)f FE(is)h(a)h(w)m
+(eigh)m(t)h(in)e(the)h Fz(latitude)d FE(dimension.)39
+b(Since,)28 b(b)m(y)g(default)150 1176 y Fz(ncwa)g FE(w)m(eigh)m(ts)i
 (co)s(ordinate)g(v)-5 b(ariables,)30 b(the)f(v)-5 b(alue)30
-b(of)f Fy(latitude)e FD(in)h(the)i Fz(output-\014le)k
-FD(dep)s(ends)27 b(on)i(the)150 1066 y(w)m(eigh)m(ts)h(in)f
-Fz(lat)p 688 1066 28 4 v 41 w(wgt)i FD(and)e(is)g(not)g(lik)m(ely)i(to)
+b(of)f Fz(latitude)e FE(in)h(the)i FA(output-\014le)k
+FE(dep)s(ends)27 b(on)i(the)150 1285 y(w)m(eigh)m(ts)h(in)f
+FA(lat)p 688 1285 28 4 v 41 w(wgt)i FE(and)e(is)g(not)g(lik)m(ely)i(to)
 e(b)s(e)h(45.0)r(,)f(the)g(midp)s(oin)m(t)g(latitude)h(of)f(the)g(h)m
-(yp)s(erslab.)39 b(Op-)150 1176 y(tion)31 b(`)p Fy(-I)p
-FD(')f(o)m(v)m(errides)h(this)g(default)f(b)s(eha)m(vior)g(and)g
-(causes)h Fy(ncwa)e FD(not)i(to)g(w)m(eigh)m(t)g(or)g(mask)f(co)s
-(ordinate)150 1285 y(v)-5 b(ariables)496 1252 y Ft(1)534
-1285 y FD(.)38 b(In)24 b(the)g(ab)s(o)m(v)m(e)h(case,)h(this)e(causes)g
-(the)g(v)-5 b(alue)25 b(of)f Fy(latitude)d FD(in)j(the)g
-Fz(output-\014le)29 b FD(to)24 b(b)s(e)30 b(45.0)r(,)150
-1395 y(an)f(app)s(ealing)g(result.)40 b(Th)m(us,)28 b(`)p
-Fy(-I)p FD(')h(sp)s(eci\014es)f(simple)h(arithmetic)h(a)m(v)m(erages)h
-(for)e(the)g(co)s(ordinate)g(v)-5 b(ari-)150 1504 y(ables.)44
-b(In)31 b(the)h(case)g(of)g(latitude,)h(`)p Fy(-I)p FD(')e(sp)s
+(yp)s(erslab.)39 b(Op-)150 1395 y(tion)31 b(`)p Fz(-I)p
+FE(')f(o)m(v)m(errides)h(this)g(default)f(b)s(eha)m(vior)g(and)g
+(causes)h Fz(ncwa)e FE(not)i(to)g(w)m(eigh)m(t)g(or)g(mask)f(co)s
+(ordinate)150 1504 y(v)-5 b(ariables)496 1471 y Fu(1)534
+1504 y FE(.)38 b(In)24 b(the)g(ab)s(o)m(v)m(e)h(case,)h(this)e(causes)g
+(the)g(v)-5 b(alue)25 b(of)f Fz(latitude)d FE(in)j(the)g
+FA(output-\014le)29 b FE(to)24 b(b)s(e)30 b(45.0)r(,)150
+1614 y(an)f(app)s(ealing)g(result.)40 b(Th)m(us,)28 b(`)p
+Fz(-I)p FE(')h(sp)s(eci\014es)f(simple)h(arithmetic)h(a)m(v)m(erages)h
+(for)e(the)g(co)s(ordinate)g(v)-5 b(ari-)150 1724 y(ables.)44
+b(In)31 b(the)h(case)g(of)g(latitude,)h(`)p Fz(-I)p FE(')e(sp)s
 (eci\014es)h(that)g(y)m(ou)g(prefer)e(to)i(arc)m(hiv)m(e)h(the)f
-(arithmetic)h(mean)150 1614 y(latitude)e(of)g(the)f(a)m(v)m(eraged)j(h)
+(arithmetic)h(mean)150 1833 y(latitude)e(of)g(the)f(a)m(v)m(eraged)j(h)
 m(yp)s(erslabs)c(rather)h(than)h(the)f(area-w)m(eigh)m(ted)j(mean)e
-(latitude.)3366 1581 y Ft(2)3404 1614 y FD(.)275 1781
-y(As)44 b(explained)h(in)f(See)h(Section)h(3.32)g([Op)s(eration)e(T)m
-(yp)s(es],)k(page)e(84,)j Fy(ncwa)43 b Fo(always)48 b(aver)-5
-b(ages)150 1890 y FD(co)s(ordinate)45 b(v)-5 b(ariables)44
+(latitude.)3366 1800 y Fu(2)3404 1833 y FE(.)275 1997
+y(As)44 b(explained)h(in)f(See)h(Section)h(3.33)g([Op)s(eration)e(T)m
+(yp)s(es],)k(page)e(94,)j Fz(ncwa)43 b Fp(always)48 b(aver)-5
+b(ages)150 2107 y FE(co)s(ordinate)45 b(v)-5 b(ariables)44
 b(regardless)h(of)f(the)g(arithmetic)h(op)s(eration)g(t)m(yp)s(e)f(p)s
-(erformed)e(on)i(the)g(non-)150 2000 y(co)s(ordinate)21
+(erformed)e(on)i(the)g(non-)150 2216 y(co)s(ordinate)21
 b(v)-5 b(ariables.)39 b(This)19 b(is)i(indep)s(enden)m(t)e(of)i(the)g
-(setting)h(of)e(the)h(`)p Fy(-I)p FD(')g(option.)38 b(The)20
-b(mathematical)150 2109 y(de\014nition)25 b(of)h(op)s(erations)f(in)m
+(setting)h(of)e(the)h(`)p Fz(-I)p FE(')g(option.)38 b(The)20
+b(mathematical)150 2326 y(de\014nition)25 b(of)h(op)s(erations)f(in)m
 (v)m(olving)i(rank)e(reduction)h(is)f(giv)m(en)i(ab)s(o)m(v)m(e)f
-(\(see)h(Section)f(3.32)h([Op)s(eration)150 2219 y(T)m(yp)s(es],)j
-(page)h(84\).)150 2433 y Fu(4.12.1)63 b(Mask)41 b(condition)150
-2580 y FD(Eac)m(h)28 b Fv(x)425 2594 y Fg(i)480 2580
-y FD(also)h(has)e(an)g(asso)s(ciated)i(masking)f(w)m(eigh)m(t)h
-Fv(m)2091 2594 y Fg(i)2146 2580 y FD(whose)e(v)-5 b(alue)28
+(\(see)h(Section)f(3.33)h([Op)s(eration)150 2436 y(T)m(yp)s(es],)j
+(page)h(94\).)150 2644 y Fv(4.12.1)63 b(Mask)41 b(condition)150
+2791 y FE(Eac)m(h)28 b Fw(x)425 2805 y Fg(i)480 2791
+y FE(also)h(has)e(an)g(asso)s(ciated)i(masking)f(w)m(eigh)m(t)h
+Fw(m)2091 2805 y Fg(i)2146 2791 y FE(whose)e(v)-5 b(alue)28
 b(is)f(0)h(or)g(1)g(\(false)g(or)g(true\).)39 b(The)150
-2689 y(v)-5 b(alue)26 b(of)f Fv(m)558 2703 y Fg(i)611
-2689 y FD(is)g(alw)m(a)m(ys)i(1)f(unless)e(a)i Fz(mask)p
-1599 2689 V 40 w(v)-5 b(ar)32 b FD(is)25 b(sp)s(eci\014ed)f(\(with)i(`)
-p Fy(-m)p FD('\).)39 b(As)25 b(noted)h(ab)s(o)m(v)m(e,)h
-Fz(mask)p 3585 2689 V 40 w(v)-5 b(ar)150 2799 y FD(is)32
+2901 y(v)-5 b(alue)26 b(of)f Fw(m)558 2915 y Fg(i)611
+2901 y FE(is)g(alw)m(a)m(ys)i(1)f(unless)e(a)i FA(mask)p
+1599 2901 V 40 w(v)-5 b(ar)32 b FE(is)25 b(sp)s(eci\014ed)f(\(with)i(`)
+p Fz(-m)p FE('\).)39 b(As)25 b(noted)h(ab)s(o)m(v)m(e,)h
+FA(mask)p 3585 2901 V 40 w(v)-5 b(ar)150 3010 y FE(is)32
 b(broadcast,)g(if)g(p)s(ossible,)f(to)h(conform)g(to)g(the)g(v)-5
 b(ariable)32 b(b)s(eing)f(a)m(v)m(eraged.)46 b(In)31
-b(this)h(case,)h(the)e(v)-5 b(alue)150 2908 y(of)41 b
-Fv(m)344 2922 y Fg(i)413 2908 y FD(dep)s(ends)e(on)i(the)g
-Fz(mask)g(condition)h FD(also)g(kno)m(wn)f(as)g(the)g
-Fz(truth)g(condition)p FD(.)73 b(As)41 b(exp)s(ected,)150
-3018 y Fv(m)230 3032 y Fg(i)283 3018 y FD(=)25 b(1)30
-b(when)g(the)g(mask)h(condition)g(is)f Fz(true)35 b FD(and)30
-b Fv(m)2028 3032 y Fg(i)2081 3018 y FD(=)25 b(0)31 b(otherwise.)275
-3185 y(The)43 b(mask)g(condition)i(has)e(the)h(syn)m(tax)h
-Fz(mask)p 2003 3185 V 45 w(v)-5 b(ar)50 b(mask)p 2427
-3185 V 46 w(comp)c(mask)p 2936 3185 V 46 w(v)-5 b(al)t
-FD(.)81 b(The)43 b(preferred)150 3294 y(metho)s(d)28
+b(this)h(case,)h(the)e(v)-5 b(alue)150 3120 y(of)41 b
+Fw(m)344 3134 y Fg(i)413 3120 y FE(dep)s(ends)e(on)i(the)g
+FA(mask)g(condition)h FE(also)g(kno)m(wn)f(as)g(the)g
+FA(truth)g(condition)p FE(.)73 b(As)41 b(exp)s(ected,)150
+3230 y Fw(m)230 3244 y Fg(i)283 3230 y FE(=)25 b(1)30
+b(when)g(the)g(mask)h(condition)g(is)f FA(true)35 b FE(and)30
+b Fw(m)2028 3244 y Fg(i)2081 3230 y FE(=)25 b(0)31 b(otherwise.)275
+3394 y(The)43 b(mask)g(condition)i(has)e(the)h(syn)m(tax)h
+FA(mask)p 2003 3394 V 45 w(v)-5 b(ar)50 b(mask)p 2427
+3394 V 46 w(comp)c(mask)p 2936 3394 V 46 w(v)-5 b(al)t
+FE(.)81 b(The)43 b(preferred)150 3503 y(metho)s(d)28
 b(to)i(sp)s(ecify)e(the)h(mask)g(condition)h(is)e(in)h(one)g(string)g
-(with)f(the)h(`)p Fy(-B)p FD(')g(or)g(`)p Fy(--mask_condition)p
-FD(')150 3404 y(switc)m(hes.)51 b(The)34 b(older)g(metho)s(d)f(is)h(to)
-g(use)f(the)h(three)g(switc)m(hes)h(`)p Fy(-m)p FD(',)f(`)p
-Fy(-T)p FD(',)h(and)e(`)p Fy(-M)p FD(')h(to)g(sp)s(ecify)g(the)150
-3513 y Fz(mask)p 361 3513 V 40 w(v)-5 b(ar)p FD(,)41
-b Fz(mask)p 796 3513 V 40 w(comp)p FD(,)g(and)d Fz(mask)p
-1504 3513 V 40 w(v)-5 b(al)p FD(,)42 b(resp)s(ectiv)m(ely)-8
-b(.)2199 3480 y Ft(3)2238 3513 y FD(.)66 b(The)38 b Fz(mask)p
-2735 3513 V 40 w(condition)i FD(string)e(is)h(auto-)150
-3623 y(matically)32 b(parsed)e(in)m(to)h(its)g(three)g(constituen)m(ts)
-g Fz(mask)p 2098 3623 V 40 w(v)-5 b(ar)p FD(,)31 b Fz(mask)p
-2523 3623 V 40 w(comp)p FD(,)g(and)e Fz(mask)p 3212 3623
-V 41 w(v)-5 b(al)p FD(.)275 3790 y(Here)87 b Fz(mask)p
-757 3790 V 40 w(v)-5 b(ar)94 b FD(is)87 b(the)h(name)f(of)h(the)f
+(with)f(the)h(`)p Fz(-B)p FE(')g(or)g(`)p Fz(--mask_condition)p
+FE(')150 3613 y(switc)m(hes.)51 b(The)34 b(older)g(metho)s(d)f(is)h(to)
+g(use)f(the)h(three)g(switc)m(hes)h(`)p Fz(-m)p FE(',)f(`)p
+Fz(-T)p FE(',)h(and)e(`)p Fz(-M)p FE(')h(to)g(sp)s(ecify)g(the)150
+3722 y FA(mask)p 361 3722 V 40 w(v)-5 b(ar)p FE(,)41
+b FA(mask)p 796 3722 V 40 w(comp)p FE(,)g(and)d FA(mask)p
+1504 3722 V 40 w(v)-5 b(al)p FE(,)42 b(resp)s(ectiv)m(ely)-8
+b(.)2199 3689 y Fu(3)2238 3722 y FE(.)66 b(The)38 b FA(mask)p
+2735 3722 V 40 w(condition)i FE(string)e(is)h(auto-)150
+3832 y(matically)32 b(parsed)e(in)m(to)h(its)g(three)g(constituen)m(ts)
+g FA(mask)p 2098 3832 V 40 w(v)-5 b(ar)p FE(,)31 b FA(mask)p
+2523 3832 V 40 w(comp)p FE(,)g(and)e FA(mask)p 3212 3832
+V 41 w(v)-5 b(al)p FE(.)275 3996 y(Here)87 b FA(mask)p
+757 3996 V 40 w(v)-5 b(ar)94 b FE(is)87 b(the)h(name)f(of)h(the)f
 (masking)h(v)-5 b(ariable)88 b(\(sp)s(eci\014ed)f(with)g(`)p
-Fy(-m)p FD(',)150 3899 y(`)p Fy(--mask-variable)p FD(',)81
-b(`)p Fy(--mask_variable)p FD(',)h(`)p Fy(--msk_nm)p
-FD(',)h(or)74 b(`)p Fy(--msk_var)p FD('\).)170 b(The)74
-b(truth)150 4009 y Fz(mask)p 361 4009 V 40 w(comp)55
-b FD(argumen)m(t)d(\(sp)s(eci\014ed)g(with)g(`)p Fy(-T)p
-FD(',)57 b(`)p Fy(--mask_comparator)p FD(',)c(`)p Fy(--msk_cmp_typ)p
-FD(',)i(or)150 4118 y(`)p Fy(--op_rlt)p FD(')41 b(ma)m(y)i(b)s(e)e(an)m
+Fz(-m)p FE(',)150 4106 y(`)p Fz(--mask-variable)p FE(',)81
+b(`)p Fz(--mask_variable)p FE(',)h(`)p Fz(--msk_nm)p
+FE(',)h(or)74 b(`)p Fz(--msk_var)p FE('\).)170 b(The)74
+b(truth)150 4215 y FA(mask)p 361 4215 V 40 w(comp)55
+b FE(argumen)m(t)d(\(sp)s(eci\014ed)g(with)g(`)p Fz(-T)p
+FE(',)57 b(`)p Fz(--mask_comparator)p FE(',)c(`)p Fz(--msk_cmp_typ)p
+FE(',)i(or)150 4325 y(`)p Fz(--op_rlt)p FE(')41 b(ma)m(y)i(b)s(e)e(an)m
 (y)i(one)g(of)f(the)h(six)f(arithmetic)i(comparators:)65
-b Fn(eq)p FD(,)45 b Fn(ne)p FD(,)g Fn(gt)p FD(,)g Fn(lt)p
-FD(,)g Fn(ge)p FD(,)g Fn(le)p FD(.)150 4228 y(These)37
+b Fo(eq)p FE(,)45 b Fo(ne)p FE(,)g Fo(gt)p FE(,)g Fo(lt)p
+FE(,)g Fo(ge)p FE(,)g Fo(le)p FE(.)150 4434 y(These)37
 b(are)g(the)g(F)-8 b(ortran-st)m(yle)39 b(c)m(haracter)g(abbreviations)
-e(for)g(the)g(logical)i(comparisons)e(=,)i FA(6)p FD(=,)f
-Fv(>)p FD(,)150 4337 y Fv(<)p FD(,)32 b FA(\025)p FD(,)h
-FA(\024)p FD(.)45 b(The)31 b(mask)h(comparator)h(defaults)f(to)h
-Fn(eq)e FD(\(equalit)m(y\).)48 b(The)32 b Fz(mask)p 2900
-4337 V 40 w(v)-5 b(al)36 b FD(argumen)m(t)c(to)h(`)p
-Fy(-M)p FD(')150 4447 y(\(or)c(`)p Fy(--mask-value)p
-FD(',)d(or)i(`)p Fy(--msk_val)p FD('\))e(is)i(the)h(righ)m(t)f(hand)g
-(side)g(of)g(the)g Fz(mask)g(condition)p FD(.)41 b(Th)m(us)27
-b(for)150 4557 y(the)33 b Fz(i)5 b FD('th)34 b(elemen)m(t)g(of)g(the)f
-(h)m(yp)s(erslab)f(to)i(b)s(e)f(a)m(v)m(eraged,)j(the)d(mask)g
-(condition)h(is)f Fo(mask)3241 4571 y Fg(i)3305 4557
-y Fo(mask)p 3511 4557 V 42 w(c)-5 b(omp)150 4666 y(mask)p
-356 4666 V 42 w(val)p FD(.)p 150 4773 1200 4 v 199 4841
-a Ft(1)275 4872 y Fs(The)28 b(default)g(b)r(eha)n(vior)g(of)g(\(`)p
-Fr(-I)p Fs('\))h(c)n(hanged)e(on)h(19981201|b)r(efore)k(this)c(date)f
-(the)h(default)g(w)n(as)h(not)e(to)h(w)n(eigh)n(t)h(or)275
+e(for)g(the)g(logical)i(comparisons)e(=,)i FB(6)p FE(=,)f
+Fw(>)p FE(,)150 4544 y Fw(<)p FE(,)32 b FB(\025)p FE(,)h
+FB(\024)p FE(.)45 b(The)31 b(mask)h(comparator)h(defaults)f(to)h
+Fo(eq)e FE(\(equalit)m(y\).)48 b(The)32 b FA(mask)p 2900
+4544 V 40 w(v)-5 b(al)36 b FE(argumen)m(t)c(to)h(`)p
+Fz(-M)p FE(')150 4654 y(\(or)c(`)p Fz(--mask-value)p
+FE(',)d(or)i(`)p Fz(--msk_val)p FE('\))e(is)i(the)h(righ)m(t)f(hand)g
+(side)g(of)g(the)g FA(mask)g(condition)p FE(.)41 b(Th)m(us)27
+b(for)p 150 4773 1200 4 v 199 4841 a Fu(1)275 4872 y
+Ft(The)h(default)g(b)r(eha)n(vior)g(of)g(\(`)p Fs(-I)p
+Ft('\))h(c)n(hanged)e(on)h(19981201|b)r(efore)k(this)c(date)f(the)h
+(default)g(w)n(as)h(not)e(to)h(w)n(eigh)n(t)h(or)275
 4960 y(mask)c(co)r(ordinate)i(v)l(ariables.)199 5031
-y Ft(2)275 5063 y Fs(If)32 b Fr(lat_wgt)i Fs(con)n(tains)g(Gaussian)f
-(w)n(eigh)n(ts)h(then)e(the)g(v)l(alue)g(of)i Fr(latitude)g
-Fs(in)f(the)f Fm(output-\014le)k Fs(will)e(b)r(e)e(the)g(area-)275
+y Fu(2)275 5063 y Ft(If)32 b Fs(lat_wgt)i Ft(con)n(tains)g(Gaussian)f
+(w)n(eigh)n(ts)h(then)e(the)g(v)l(alue)g(of)i Fs(latitude)g
+Ft(in)f(the)f Fn(output-\014le)k Ft(will)e(b)r(e)e(the)g(area-)275
 5150 y(w)n(eigh)n(ted)26 b(cen)n(troid)f(of)i(the)e(h)n(yp)r(erslab.)34
 b(F)-6 b(or)26 b(the)f(example)h(giv)n(en,)g(this)g(is)g(ab)r(out)g(30)
-g(degrees.)199 5221 y Ft(3)275 5253 y Fs(The)c(three)g(switc)n(hes)h(`)
-p Fr(-m)p Fs(',)h(`)p Fr(-T)p Fs(',)g(and)d(`)p Fr(-M)p
-Fs(')j(are)e(main)n(tained)g(for)h(bac)n(kw)n(ard)f(compatibilit)n(y)h
+g(degrees.)199 5221 y Fu(3)275 5253 y Ft(The)c(three)g(switc)n(hes)h(`)
+p Fs(-m)p Ft(',)h(`)p Fs(-T)p Ft(',)g(and)d(`)p Fs(-M)p
+Ft(')j(are)e(main)n(tained)g(for)h(bac)n(kw)n(ard)f(compatibilit)n(y)h
 (and)e(ma)n(y)h(b)r(e)g(deprecated)275 5340 y(in)j(the)g(future.)35
 b(It)25 b(is)h(safest)h(to)f(write)h(scripts)f(using)g(`)p
-Fr(--mask_condition)p Fs('.)p eop end
-%%Page: 208 214
-TeXDict begin 208 213 bop 150 -116 a FD(208)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)275 299 y(Eac)m(h)22 b Fv(x)544
-313 y Fg(i)594 299 y FD(is)f(also)i(asso)s(ciated)h(with)d(an)h
-(additional)h(w)m(eigh)m(t)g Fv(w)2356 313 y Fg(i)2406
-299 y FD(whose)f(v)-5 b(alue)22 b(ma)m(y)g(b)s(e)g(user-sp)s
-(eci\014ed.)150 408 y(The)33 b(v)-5 b(alue)34 b(of)g
-Fv(w)750 422 y Fg(i)811 408 y FD(is)f(iden)m(tically)j(1)e(unless)f
-(the)g(user)g(sp)s(eci\014es)g(a)h(w)m(eigh)m(ting)i(v)-5
-b(ariable)34 b Fz(w)m(eigh)m(t)j FD(\(with)150 518 y(`)p
-Fy(-w)p FD(',)30 b(`)p Fy(--weight)p FD(',)e(or)i(`)p
-Fy(--wgt)p 1221 518 29 4 v 40 w(var)p FD('\).)41 b(In)28
-b(this)i(case,)h(the)f(v)-5 b(alue)30 b(of)f Fv(w)2587
-532 y Fg(i)2645 518 y FD(is)g(determined)g(b)m(y)h(the)f
-Fz(w)m(eigh)m(t)150 628 y FD(v)-5 b(ariable)36 b(in)g(the)f
-Fz(input-\014le)p FD(.)56 b(As)36 b(noted)g(ab)s(o)m(v)m(e,)i
-Fz(w)m(eigh)m(t)h FD(is)d(broadcast,)h(if)f(p)s(ossible,)g(to)h
-(conform)e(to)150 737 y(the)c(v)-5 b(ariable)31 b(b)s(eing)f(a)m(v)m
-(eraged.)275 897 y Fv(M)43 b FD(is)33 b(the)h(n)m(um)m(b)s(er)d(of)j
-(input)e(elemen)m(ts)j Fv(x)1772 911 y Fg(i)1832 897
-y FD(whic)m(h)e(actually)i(con)m(tribute)f(to)g(output)f(elemen)m(t)i
-Fv(x)3690 911 y Fg(j)3725 897 y FD(.)150 1007 y Fv(M)40
-b FD(is)31 b(also)g(kno)m(wn)f(as)h(the)f Fz(tally)40
-b FD(and)29 b(is)i(de\014ned)e(as)1671 1288 y Fv(M)36
-b FD(=)1891 1182 y Fg(i)p Ft(=)p Fg(N)1897 1207 y Ff(X)1903
-1384 y Fg(i)p Ft(=1)2039 1288 y Fv(\026)2094 1302 y Fg(i)2121
-1288 y Fv(m)2201 1302 y Fg(i)150 1565 y Fv(M)c FD(is)22
+Fs(--mask_condition)p Ft('.)p eop end
+%%Page: 220 226
+TeXDict begin 220 225 bop 150 -116 a FE(220)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(the)j FA(i)5 b FE('th)34
+b(elemen)m(t)g(of)g(the)f(h)m(yp)s(erslab)f(to)i(b)s(e)f(a)m(v)m
+(eraged,)j(the)d(mask)g(condition)h(is)f Fp(mask)3241
+313 y Fg(i)3305 299 y Fp(mask)p 3511 299 28 4 v 42 w(c)-5
+b(omp)150 408 y(mask)p 356 408 V 42 w(val)p FE(.)275
+568 y(Eac)m(h)22 b Fw(x)544 582 y Fg(i)594 568 y FE(is)f(also)i(asso)s
+(ciated)h(with)d(an)h(additional)h(w)m(eigh)m(t)g Fw(w)2356
+582 y Fg(i)2406 568 y FE(whose)f(v)-5 b(alue)22 b(ma)m(y)g(b)s(e)g
+(user-sp)s(eci\014ed.)150 677 y(The)33 b(v)-5 b(alue)34
+b(of)g Fw(w)750 691 y Fg(i)811 677 y FE(is)f(iden)m(tically)j(1)e
+(unless)f(the)g(user)g(sp)s(eci\014es)g(a)h(w)m(eigh)m(ting)i(v)-5
+b(ariable)34 b FA(w)m(eigh)m(t)j FE(\(with)150 787 y(`)p
+Fz(-w)p FE(',)30 b(`)p Fz(--weight)p FE(',)e(or)i(`)p
+Fz(--wgt)p 1221 787 29 4 v 40 w(var)p FE('\).)41 b(In)28
+b(this)i(case,)h(the)f(v)-5 b(alue)30 b(of)f Fw(w)2587
+801 y Fg(i)2645 787 y FE(is)g(determined)g(b)m(y)h(the)f
+FA(w)m(eigh)m(t)150 897 y FE(v)-5 b(ariable)36 b(in)g(the)f
+FA(input-\014le)p FE(.)56 b(As)36 b(noted)g(ab)s(o)m(v)m(e,)i
+FA(w)m(eigh)m(t)h FE(is)d(broadcast,)h(if)f(p)s(ossible,)g(to)h
+(conform)e(to)150 1006 y(the)c(v)-5 b(ariable)31 b(b)s(eing)f(a)m(v)m
+(eraged.)275 1166 y Fw(M)43 b FE(is)33 b(the)h(n)m(um)m(b)s(er)d(of)j
+(input)e(elemen)m(ts)j Fw(x)1772 1180 y Fg(i)1832 1166
+y FE(whic)m(h)e(actually)i(con)m(tribute)f(to)g(output)f(elemen)m(t)i
+Fw(x)3690 1180 y Fg(j)3725 1166 y FE(.)150 1275 y Fw(M)40
+b FE(is)31 b(also)g(kno)m(wn)f(as)h(the)f FA(tally)40
+b FE(and)29 b(is)i(de\014ned)e(as)1671 1535 y Fw(M)36
+b FE(=)1891 1429 y Fg(i)p Fu(=)p Fg(N)1897 1454 y Fd(X)1903
+1631 y Fg(i)p Fu(=1)2039 1535 y Fw(\026)2094 1549 y Fg(i)2121
+1535 y Fw(m)2201 1549 y Fg(i)150 1790 y Fw(M)c FE(is)22
 b(iden)m(tical)i(to)e(the)g(denominator)h(of)f(the)g(generic)h(a)m(v)m
 (eraging)h(expression)e(except)h(for)e(the)i(omission)150
-1674 y(of)28 b(the)g(w)m(eigh)m(t)h Fv(w)755 1688 y Fg(i)783
-1674 y FD(.)39 b(Th)m(us)27 b Fv(M)35 b FD(=)25 b Fv(N)38
-b FD(whenev)m(er)27 b(no)h(input)f(p)s(oin)m(ts)g(are)h(missing)g(v)-5
-b(alues)28 b(or)f(are)h(mask)m(ed.)150 1784 y(Whether)f(an)f(elemen)m
+1900 y(of)28 b(the)g(w)m(eigh)m(t)h Fw(w)755 1914 y Fg(i)783
+1900 y FE(.)39 b(Th)m(us)27 b Fw(M)35 b FE(=)25 b Fw(N)38
+b FE(whenev)m(er)27 b(no)h(input)f(p)s(oin)m(ts)g(are)h(missing)g(v)-5
+b(alues)28 b(or)f(are)h(mask)m(ed.)150 2010 y(Whether)f(an)f(elemen)m
 (t)j(con)m(tributes)e(to)g(the)g(output,)g(and)f(th)m(us)h(incremen)m
-(ts)g Fv(M)36 b FD(b)m(y)27 b(one,)h(has)e(more)h(to)150
-1893 y(do)i(with)f(the)h(ab)s(o)m(v)m(e)h(t)m(w)m(o)g(criteria)f
+(ts)g Fw(M)36 b FE(b)m(y)27 b(one,)h(has)e(more)h(to)150
+2119 y(do)i(with)f(the)h(ab)s(o)m(v)m(e)h(t)m(w)m(o)g(criteria)f
 (\(missing)g(v)-5 b(alue)29 b(and)f(masking\))i(than)e(with)g(the)h(n)m
-(umeric)g(v)-5 b(alue)29 b(of)150 2003 y(the)g(elemen)m(t)h(p)s(er)e
-(se.)40 b(F)-8 b(or)30 b(example,)g Fv(x)1532 2017 y
-Fg(i)1584 2003 y FD(=)25 b(0)p Fv(:)p FD(0)30 b(do)s(es)f(con)m
-(tribute)g(to)h Fv(x)2626 2017 y Fg(j)2689 2003 y FD(\(assuming)f(the)g
-Fy(_FillValue)150 2113 y FD(attribute)34 b(is)f(not)g(0.0)h(and)e(lo)s
-(cation)j Fv(i)e FD(is)g(not)g(mask)m(ed\).)50 b(The)32
-b(v)-5 b(alue)34 b Fv(x)2676 2127 y Fg(i)2733 2113 y
-FD(=)29 b(0)p Fv(:)p FD(0)34 b(will)f(not)h(c)m(hange)g(the)150
-2222 y(n)m(umerator)f(of)g(the)f(generic)i(a)m(v)m(eraging)h
+(umeric)g(v)-5 b(alue)29 b(of)150 2229 y(the)g(elemen)m(t)h(p)s(er)e
+(se.)40 b(F)-8 b(or)30 b(example,)g Fw(x)1532 2243 y
+Fg(i)1584 2229 y FE(=)25 b(0)p Fw(:)p FE(0)30 b(do)s(es)f(con)m
+(tribute)g(to)h Fw(x)2626 2243 y Fg(j)2689 2229 y FE(\(assuming)f(the)g
+Fz(_FillValue)150 2338 y FE(attribute)34 b(is)f(not)g(0.0)h(and)e(lo)s
+(cation)j Fw(i)e FE(is)g(not)g(mask)m(ed\).)50 b(The)32
+b(v)-5 b(alue)34 b Fw(x)2676 2352 y Fg(i)2733 2338 y
+FE(=)29 b(0)p Fw(:)p FE(0)34 b(will)f(not)h(c)m(hange)g(the)150
+2448 y(n)m(umerator)f(of)g(the)f(generic)i(a)m(v)m(eraging)h
 (expression,)e(but)f(it)i(will)f(c)m(hange)h(the)e(denominator)h
-(\(unless)150 2332 y(its)e(w)m(eigh)m(t)h Fv(w)630 2346
-y Fg(i)683 2332 y FD(=)25 b(0)p Fv(:)p FD(0)31 b(as)g(w)m(ell\).)150
-2532 y Fu(4.12.2)63 b(Normalization)41 b(and)g(In)m(tegration)150
-2679 y Fy(ncwa)g FD(has)i(one)g(switc)m(h)g(whic)m(h)f(con)m(trols)i
+(\(unless)150 2558 y(its)e(w)m(eigh)m(t)h Fw(w)630 2572
+y Fg(i)683 2558 y FE(=)25 b(0)p Fw(:)p FE(0)31 b(as)g(w)m(ell\).)150
+2752 y Fv(4.12.2)63 b(Normalization)41 b(and)g(In)m(tegration)150
+2899 y Fz(ncwa)g FE(has)i(one)g(switc)m(h)g(whic)m(h)f(con)m(trols)i
 (the)f(normalization)h(of)e(the)h(a)m(v)m(erages)i(app)s(earing)d(in)h
-(the)150 2788 y Fz(output-\014le)p FD(.)70 b(Short)39
-b(option)i(`)p Fy(-N)p FD(')f(\(or)g(long)h(options)f(`)p
-Fy(--nmr)p FD(')g(or)g(`)p Fy(--numerator)p FD('\))e(prev)m(en)m(ts)i
-Fy(ncwa)150 2898 y FD(from)27 b(dividing)f(the)i(w)m(eigh)m(ted)g(sum)f
+(the)150 3009 y FA(output-\014le)p FE(.)70 b(Short)39
+b(option)i(`)p Fz(-N)p FE(')f(\(or)g(long)h(options)f(`)p
+Fz(--nmr)p FE(')g(or)g(`)p Fz(--numerator)p FE('\))e(prev)m(en)m(ts)i
+Fz(ncwa)150 3118 y FE(from)27 b(dividing)f(the)i(w)m(eigh)m(ted)g(sum)f
 (of)g(the)g(v)-5 b(ariable)28 b(\(the)g(n)m(umerator)f(in)g(the)g(a)m
-(v)m(eraging)j(expression\))150 3007 y(b)m(y)22 b(the)g(w)m(eigh)m(ted)
+(v)m(eraging)j(expression\))150 3228 y(b)m(y)22 b(the)g(w)m(eigh)m(ted)
 h(sum)e(of)g(the)h(w)m(eigh)m(ts)i(\(the)e(denominator)g(in)f(the)h(a)m
-(v)m(eraging)i(expression\).)38 b(Th)m(us)21 b(`)p Fy(-N)p
-FD(')150 3117 y(tells)32 b Fy(ncwa)d FD(to)j(return)d(just)h(the)h(n)m
+(v)m(eraging)i(expression\).)38 b(Th)m(us)21 b(`)p Fz(-N)p
+FE(')150 3337 y(tells)32 b Fz(ncwa)d FE(to)j(return)d(just)h(the)h(n)m
 (umerator)g(of)g(the)g(arithmetic)g(expression)g(de\014ning)f(the)g(op)
-s(eration)150 3226 y(\(see)h(Section)h(3.32)f([Op)s(eration)g(T)m(yp)s
-(es],)f(page)h(84\).)275 3386 y(With)36 b(this)h(normalization)h
-(option,)g Fy(ncwa)d FD(can)i(in)m(tegrate)h(v)-5 b(ariables.)60
-b(Av)m(erages)38 b(are)e(\014rst)g(com-)150 3496 y(puted)k(as)h(sums,)i
+s(eration)150 3447 y(\(see)h(Section)h(3.33)f([Op)s(eration)g(T)m(yp)s
+(es],)f(page)h(94\).)275 3606 y(With)36 b(this)h(normalization)h
+(option,)g Fz(ncwa)d FE(can)i(in)m(tegrate)h(v)-5 b(ariables.)60
+b(Av)m(erages)38 b(are)e(\014rst)g(com-)150 3716 y(puted)k(as)h(sums,)i
 (and)e(then)f(normalized)i(to)g(obtain)f(the)g(a)m(v)m(erage.)76
-b(The)40 b(original)i(sum)e(\(i.e.,)46 b(the)150 3605
-y(n)m(umerator)27 b(of)f(the)h(expression)g(in)f(Section)h(3.32)h([Op)s
-(eration)f(T)m(yp)s(es],)g(page)h(84\))f(is)g(output)f(if)h(default)150
-3715 y(normalization)32 b(is)f(turned)f(o\013)h(\(with)f(`)p
-Fy(-N)p FD('\).)43 b(This)30 b(sum)f(is)i(the)g(in)m(tegral)i(\(not)e
-(the)g(a)m(v)m(erage\))j(o)m(v)m(er)e(the)150 3825 y(sp)s(eci\014ed)40
-b(\(with)31 b(`)p Fy(-a)p FD(',)43 b(or)e(all,)k(if)c(none)g(are)g(sp)s
+b(The)40 b(original)i(sum)e(\(i.e.,)46 b(the)150 3826
+y(n)m(umerator)27 b(of)f(the)h(expression)g(in)f(Section)h(3.33)h([Op)s
+(eration)f(T)m(yp)s(es],)g(page)h(94\))f(is)g(output)f(if)h(default)150
+3935 y(normalization)32 b(is)f(turned)f(o\013)h(\(with)f(`)p
+Fz(-N)p FE('\).)43 b(This)30 b(sum)f(is)i(the)g(in)m(tegral)i(\(not)e
+(the)g(a)m(v)m(erage\))j(o)m(v)m(er)e(the)150 4045 y(sp)s(eci\014ed)40
+b(\(with)31 b(`)p Fz(-a)p FE(',)43 b(or)e(all,)k(if)c(none)g(are)g(sp)s
 (eci\014ed\))g(dimensions.)71 b(The)41 b(w)m(eigh)m(ting)h(v)-5
-b(ariable,)45 b(if)150 3934 y(sp)s(eci\014ed)30 b(\(with)g(`)p
-Fy(-w)p FD('\),)i(pla)m(ys)f(the)f(role)i(of)e(the)h(di\013eren)m(tial)
+b(ariable,)45 b(if)150 4154 y(sp)s(eci\014ed)30 b(\(with)g(`)p
+Fz(-w)p FE('\),)i(pla)m(ys)f(the)f(role)i(of)e(the)h(di\013eren)m(tial)
 h(incremen)m(t)g(and)e(th)m(us)g(p)s(ermits)g(more)g(so-)150
-4044 y(phisticated)g(in)m(tegrals)g(\(i.e.,)h(w)m(eigh)m(ted)f(sums\))f
+4264 y(phisticated)g(in)m(tegrals)g(\(i.e.,)h(w)m(eigh)m(ted)f(sums\))f
 (to)g(b)s(e)g(output.)39 b(F)-8 b(or)30 b(example,)g(consider)f(the)g
-(v)-5 b(ariable)150 4153 y Fy(lev)25 b FD(where)g Fz(lev)34
-b FD(=)25 b([100)p Fv(;)15 b FD(500)p Fv(;)g FD(1000])31
-b(w)m(eigh)m(ted)d(b)m(y)d(the)h(w)m(eigh)m(t)h Fy(lev_wgt)d
-FD(where)i Fz(lev)p 3108 4153 28 4 v 48 w(wgt)i FD(=)d([10)p
-Fv(;)15 b FD(2)p Fv(;)g FD(1].)150 4263 y(The)33 b(v)m(ertical)j(in)m
-(tegral)g(of)e Fy(lev)p FD(,)g(w)m(eigh)m(ted)h(b)m(y)f
-Fy(lev_wgt)p FD(,)f(is)h(the)g(dot)g(pro)s(duct)e(of)i
-Fz(lev)42 b FD(and)34 b Fz(lev)p 3544 4263 V 40 w(wgt)p
-FD(.)150 4372 y(That)29 b(this)f(is)h(is)i(3000.0)g(can)e(b)s(e)f(seen)
+(v)-5 b(ariable)150 4374 y Fz(lev)25 b FE(where)g FA(lev)34
+b FE(=)25 b([100)p Fw(;)15 b FE(500)p Fw(;)g FE(1000])31
+b(w)m(eigh)m(ted)d(b)m(y)d(the)h(w)m(eigh)m(t)h Fz(lev_wgt)d
+FE(where)i FA(lev)p 3108 4374 28 4 v 48 w(wgt)i FE(=)d([10)p
+Fw(;)15 b FE(2)p Fw(;)g FE(1].)150 4483 y(The)33 b(v)m(ertical)j(in)m
+(tegral)g(of)e Fz(lev)p FE(,)g(w)m(eigh)m(ted)h(b)m(y)f
+Fz(lev_wgt)p FE(,)f(is)h(the)g(dot)g(pro)s(duct)e(of)i
+FA(lev)42 b FE(and)34 b FA(lev)p 3544 4483 V 40 w(wgt)p
+FE(.)150 4593 y(That)29 b(this)f(is)h(is)i(3000.0)g(can)e(b)s(e)f(seen)
 h(b)m(y)g(insp)s(ection)g(and)f(v)m(eri\014ed)h(with)f(the)h(in)m
-(tegration)i(command)390 4532 y Fy(ncwa)47 b(-N)g(-a)g(lev)g(-v)g(lev)g
-(-w)g(lev_wgt)f(in.nc)g(foo.nc;ncks)f(foo.nc)150 4692
-y FD(EXAMPLES)275 4852 y(Giv)m(en)31 b(\014le)f Fy(85_0112.nc)p
-FD(:)390 5011 y Fy(netcdf)46 b(85_0112)g({)390 5121 y(dimensions:)772
-5230 y(lat)h(=)g(64)g(;)772 5340 y(lev)g(=)g(18)g(;)p
+(tegration)i(command)390 4752 y Fz(ncwa)47 b(-N)g(-a)g(lev)g(-v)g(lev)g
+(-w)g(lev_wgt)f(in.nc)g(foo.nc;ncks)f(foo.nc)150 4912
+y FE(EXAMPLES)275 5071 y(Giv)m(en)31 b(\014le)f Fz(85_0112.nc)p
+FE(:)390 5230 y Fz(netcdf)46 b(85_0112)g({)390 5340 y(dimensions:)p
 eop end
-%%Page: 209 215
-TeXDict begin 209 214 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(209)772
-299 y Fy(lon)47 b(=)g(128)g(;)772 408 y(time)f(=)i(UNLIMITED)d(;)j(//)f
-(\(12)g(currently\))390 518 y(variables:)772 628 y(float)f(lat\(lat\))g
-(;)772 737 y(float)g(lev\(lev\))g(;)772 847 y(float)g(lon\(lon\))g(;)
-772 956 y(float)g(time\(time\))f(;)772 1066 y(float)h(scalar_var)f(;)
-772 1176 y(float)h(three_dmn_var\(lat,)d(lev,)k(lon\))f(;)772
-1285 y(float)g(two_dmn_var\(lat,)e(lev\))i(;)772 1395
-y(float)g(mask\(lat,)f(lon\))i(;)772 1504 y(float)f(gw\(lat\))g(;)390
-1614 y(})275 1777 y FD(Av)m(erage)32 b(all)f(v)-5 b(ariables)31
-b(in)f Fy(in.nc)f FD(o)m(v)m(er)j(all)f(dimensions)f(and)f(store)i
-(results)g(in)f Fy(out.nc)p FD(:)390 1940 y Fy(ncwa)47
-b(in.nc)f(out.nc)150 2104 y FD(All)30 b(v)-5 b(ariables)29
-b(in)g Fy(in.nc)f FD(are)h(reduced)g(to)h(scalars)g(in)e
-Fy(out.nc)g FD(since)h Fy(ncwa)f FD(a)m(v)m(erages)k(o)m(v)m(er)e(all)g
-(dimen-)150 2213 y(sions)g(unless)g(otherwise)h(sp)s(eci\014ed)e
-(\(with)i(`)p Fy(-a)p FD('\).)275 2377 y(Store)f(the)h(zonal)g
-(\(longitudinal\))h(mean)e(of)h Fy(in.nc)e FD(in)h Fy(out.nc)p
-FD(:)390 2540 y Fy(ncwa)47 b(-a)g(lon)g(in.nc)f(out1.nc)390
-2649 y(ncwa)h(-a)g(lon)g(-b)g(in.nc)f(out2.nc)150 2813
-y FD(The)41 b(\014rst)g(command)h(turns)e Fy(lon)h FD(in)m(to)i(a)f
-(scalar)h(and)e(the)h(second)f(retains)i Fy(lon)d FD(as)i(a)h
-(degenerate)150 2922 y(dimension)30 b(in)g(all)h(v)-5
-b(ariables.)390 3085 y Fy(\045)47 b(ncks)g(-C)g(-H)g(-v)h(lon)f
-(out1.nc)390 3195 y(lon)g(=)g(135)390 3305 y(\045)g(ncks)g(-C)g(-H)g
-(-v)h(lon)f(out2.nc)390 3414 y(lon[0])f(=)i(135)275 3577
-y FD(In)21 b(either)j(case)f(the)g(tally)h(is)f(simply)f(the)h(size)g
-(of)g Fy(lon)p FD(,)h(i.e.,)h(180)f(for)f(the)f Fy(85_0112.nc)e
-FD(\014le)j(describ)s(ed)150 3687 y(b)m(y)30 b(the)h(sample)f(header)h
-(ab)s(o)m(v)m(e.)275 3850 y(Compute)e(the)i(meridional)f
+%%Page: 221 227
+TeXDict begin 221 226 bop 150 -116 a FE(Chapter)30 b(4:)41
+b(Reference)31 b(Man)m(ual)2289 b(221)772 299 y Fz(lat)47
+b(=)g(64)g(;)772 408 y(lev)g(=)g(18)g(;)772 518 y(lon)g(=)g(128)g(;)772
+628 y(time)f(=)i(UNLIMITED)d(;)j(//)f(\(12)g(currently\))390
+737 y(variables:)772 847 y(float)f(lat\(lat\))g(;)772
+956 y(float)g(lev\(lev\))g(;)772 1066 y(float)g(lon\(lon\))g(;)772
+1176 y(float)g(time\(time\))f(;)772 1285 y(float)h(scalar_var)f(;)772
+1395 y(float)h(three_dmn_var\(lat,)d(lev,)k(lon\))f(;)772
+1504 y(float)g(two_dmn_var\(lat,)e(lev\))i(;)772 1614
+y(float)g(mask\(lat,)f(lon\))i(;)772 1724 y(float)f(gw\(lat\))g(;)390
+1833 y(})275 2004 y FE(Av)m(erage)32 b(all)f(v)-5 b(ariables)31
+b(in)f Fz(in.nc)f FE(o)m(v)m(er)j(all)f(dimensions)f(and)f(store)i
+(results)g(in)f Fz(out.nc)p FE(:)390 2175 y Fz(ncwa)47
+b(in.nc)f(out.nc)150 2345 y FE(All)30 b(v)-5 b(ariables)29
+b(in)g Fz(in.nc)f FE(are)h(reduced)g(to)h(scalars)g(in)e
+Fz(out.nc)g FE(since)h Fz(ncwa)f FE(a)m(v)m(erages)k(o)m(v)m(er)e(all)g
+(dimen-)150 2455 y(sions)g(unless)g(otherwise)h(sp)s(eci\014ed)e
+(\(with)i(`)p Fz(-a)p FE('\).)275 2626 y(Store)f(the)h(zonal)g
+(\(longitudinal\))h(mean)e(of)h Fz(in.nc)e FE(in)h Fz(out.nc)p
+FE(:)390 2796 y Fz(ncwa)47 b(-a)g(lon)g(in.nc)f(out1.nc)390
+2906 y(ncwa)h(-a)g(lon)g(-b)g(in.nc)f(out2.nc)150 3077
+y FE(The)41 b(\014rst)g(command)h(turns)e Fz(lon)h FE(in)m(to)i(a)f
+(scalar)h(and)e(the)h(second)f(retains)i Fz(lon)d FE(as)i(a)h
+(degenerate)150 3186 y(dimension)30 b(in)g(all)h(v)-5
+b(ariables.)390 3357 y Fz(\045)47 b(ncks)g(-C)g(-H)g(-v)h(lon)f
+(out1.nc)390 3466 y(lon)g(=)g(135)390 3576 y(\045)g(ncks)g(-C)g(-H)g
+(-v)h(lon)f(out2.nc)390 3686 y(lon[0])f(=)i(135)275 3856
+y FE(In)21 b(either)j(case)f(the)g(tally)h(is)f(simply)f(the)h(size)g
+(of)g Fz(lon)p FE(,)h(i.e.,)h(180)f(for)f(the)f Fz(85_0112.nc)e
+FE(\014le)j(describ)s(ed)150 3966 y(b)m(y)30 b(the)h(sample)f(header)h
+(ab)s(o)m(v)m(e.)275 4137 y(Compute)e(the)i(meridional)f
 (\(latitudinal\))j(mean,)d(with)g(v)-5 b(alues)31 b(w)m(eigh)m(ted)g(b)
-m(y)g(the)f(corresp)s(onding)150 3960 y(elemen)m(t)i(of)e
-Fz(gw)708 3927 y Ft(4)746 3960 y FD(:)390 4123 y Fy(ncwa)47
-b(-w)g(gw)g(-a)g(lat)g(in.nc)f(out.nc)150 4286 y FD(Here)31
-b(the)f(tally)i(is)e(simply)g(the)h(size)g(of)g Fy(lat)p
-FD(,)e(or)i(64.)g(The)f(sum)g(of)g(the)h(Gaussian)f(w)m(eigh)m(ts)i(is)
-e(2.0.)275 4450 y(Compute)f(the)i(area)g(mean)g(o)m(v)m(er)g(the)g
-(tropical)h(P)m(aci\014c:)390 4613 y Fy(ncwa)47 b(-w)g(gw)g(-a)g
+m(y)g(the)f(corresp)s(onding)150 4246 y(elemen)m(t)i(of)e
+FA(gw)708 4213 y Fu(4)746 4246 y FE(:)390 4417 y Fz(ncwa)47
+b(-w)g(gw)g(-a)g(lat)g(in.nc)f(out.nc)150 4588 y FE(Here)31
+b(the)f(tally)i(is)e(simply)g(the)h(size)g(of)g Fz(lat)p
+FE(,)e(or)i(64.)g(The)f(sum)g(of)g(the)h(Gaussian)f(w)m(eigh)m(ts)i(is)
+e(2.0.)275 4758 y(Compute)f(the)i(area)g(mean)g(o)m(v)m(er)g(the)g
+(tropical)h(P)m(aci\014c:)390 4929 y Fz(ncwa)47 b(-w)g(gw)g(-a)g
 (lat,lon)f(-d)h(lat,-20.,20.)e(-d)i(lon,120.,270.)d(in.nc)i(out.nc)150
-4776 y FD(Here)31 b(the)f(tally)i(is)e(64)22 b FA(\002)d
-FD(128)27 b(=)e(8192.)275 4939 y(Compute)k(the)i(area-mean)h(o)m(v)m
+5100 y FE(Here)31 b(the)f(tally)i(is)e(64)22 b FB(\002)d
+FE(128)27 b(=)e(8192.)p 150 5241 1200 4 v 199 5308 a
+Fu(4)275 5340 y Fs(gw)h Ft(stands)f(for)i Fn(Gaussian)g(w)n(eigh)n(t)g
+Ft(in)f(man)n(y)f(climate)i(mo)r(dels.)p eop end
+%%Page: 222 228
+TeXDict begin 222 227 bop 150 -116 a FE(222)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)275 299 y(Compute)f(the)i(area-mean)h(o)m(v)m
 (er)f(the)g(glob)s(e)g(using)f(only)g(p)s(oin)m(ts)g(for)h(whic)m(h)f
-Fv(O)s(R)q(O)d(<)e FD(0)p Fv(:)p FD(5)3415 4906 y Ft(5)3454
-4939 y FD(:)p 150 5051 1200 4 v 199 5118 a Ft(4)275 5150
-y Fr(gw)h Fs(stands)f(for)i Fm(Gaussian)g(w)n(eigh)n(t)g
-Fs(in)f(man)n(y)f(climate)i(mo)r(dels.)199 5221 y Ft(5)275
-5253 y Fr(ORO)40 b Fs(stands)g(for)g Fm(Orograph)n(y)46
-b Fs(in)39 b(some)i(climate)g(mo)r(dels)f(and)g(in)f(those)h(mo)r(dels)
-h Fm(OR)n(O)47 b Fa(<)e Fs(0)p Fa(:)p Fs(5)40 b(selects)h(o)r(cean)275
-5340 y(gridp)r(oin)n(ts.)p eop end
-%%Page: 210 216
-TeXDict begin 210 215 bop 150 -116 a FD(210)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(ncwa)47 b(-B)g('ORO)f(<)i(0.5')
-285 b(-w)47 b(gw)h(-a)f(lat,lon)f(in.nc)g(out.nc)390
-408 y(ncwa)h(-m)g(ORO)g(-M)g(0.5)g(-T)g(lt)g(-w)g(gw)h(-a)f(lat,lon)f
-(in.nc)g(out.nc)150 568 y FD(It)23 b(is)f(considerably)h(simpler)f(to)h
-(sp)s(ecify)f(the)h(complete)h Fz(mask)p 2283 568 28
-4 v 40 w(cond)i FD(with)c(the)h(single)g(string)f(argumen)m(t)150
-677 y(to)33 b(`)p Fy(-B)p FD(')g(than)f(with)g(the)h(three)f(separate)i
-(switc)m(hes)f(`)p Fy(-m)p FD(',)g(`)p Fy(-T)p FD(',)g(and)f(`)p
-Fy(-M)p FD(')2712 644 y Ft(6)2749 677 y FD(.)47 b(If)32
-b(in)h(doubt,)f(enclose)i(the)150 787 y Fz(mask)p 361
-787 V 40 w(cond)d FD(within)26 b(quotes)i(since)f(some)h(of)f(the)h
+Fw(O)s(R)q(O)d(<)e FE(0)p Fw(:)p FE(5)3415 266 y Fu(5)3454
+299 y FE(:)390 458 y Fz(ncwa)47 b(-B)g('ORO)f(<)i(0.5')285
+b(-w)47 b(gw)h(-a)f(lat,lon)f(in.nc)g(out.nc)390 568
+y(ncwa)h(-m)g(ORO)g(-M)g(0.5)g(-T)g(lt)g(-w)g(gw)h(-a)f(lat,lon)f
+(in.nc)g(out.nc)150 727 y FE(It)23 b(is)f(considerably)h(simpler)f(to)h
+(sp)s(ecify)f(the)h(complete)h FA(mask)p 2283 727 28
+4 v 40 w(cond)i FE(with)c(the)h(single)g(string)f(argumen)m(t)150
+837 y(to)33 b(`)p Fz(-B)p FE(')g(than)f(with)g(the)h(three)f(separate)i
+(switc)m(hes)f(`)p Fz(-m)p FE(',)g(`)p Fz(-T)p FE(',)g(and)f(`)p
+Fz(-M)p FE(')2712 804 y Fu(6)2749 837 y FE(.)47 b(If)32
+b(in)h(doubt,)f(enclose)i(the)150 946 y FA(mask)p 361
+946 V 40 w(cond)d FE(within)26 b(quotes)i(since)f(some)h(of)f(the)h
 (comparators)g(ha)m(v)m(e)g(sp)s(ecial)g(meanings)f(to)h(the)f(shell.)
-275 946 y(Assuming)g(70\045)h(of)g(the)g(gridp)s(oin)m(ts)g(are)g
-(maritime,)h(then)f(here)f(the)h(tally)h(is)f(0)p Fv(:)p
-FD(70)15 b FA(\002)g FD(8192)29 b FA(\031)c FD(5734.)275
-1106 y(Compute)k(the)i(global)h(ann)m(ual)e(mean)h(o)m(v)m(er)g(the)g
-(maritime)g(tropical)h(P)m(aci\014c:)390 1265 y Fy(ncwa)47
+275 1106 y(Assuming)g(70\045)h(of)g(the)g(gridp)s(oin)m(ts)g(are)g
+(maritime,)h(then)f(here)f(the)h(tally)h(is)f(0)p Fw(:)p
+FE(70)15 b FB(\002)g FE(8192)29 b FB(\031)c FE(5734.)275
+1265 y(Compute)k(the)i(global)h(ann)m(ual)e(mean)h(o)m(v)m(er)g(the)g
+(maritime)g(tropical)h(P)m(aci\014c:)390 1425 y Fz(ncwa)47
 b(-B)g('ORO)f(<)i(0.5')285 b(-w)47 b(gw)h(-a)f(lat,lon,time)d(\\)485
-1375 y(-d)k(lat,-20.0,20.0)c(-d)j(lon,120.0,270.0)c(in.nc)k(out.nc)390
-1484 y(ncwa)g(-m)g(ORO)g(-M)g(0.5)g(-T)g(lt)g(-w)g(gw)h(-a)f
-(lat,lon,time)d(\\)485 1594 y(-d)k(lat,-20.0,20.0)c(-d)j
-(lon,120.0,270.0)c(in.nc)k(out.nc)275 1753 y FD(F)-8
+1534 y(-d)k(lat,-20.0,20.0)c(-d)j(lon,120.0,270.0)c(in.nc)k(out.nc)390
+1644 y(ncwa)g(-m)g(ORO)g(-M)g(0.5)g(-T)g(lt)g(-w)g(gw)h(-a)f
+(lat,lon,time)d(\\)485 1753 y(-d)k(lat,-20.0,20.0)c(-d)j
+(lon,120.0,270.0)c(in.nc)k(out.nc)275 1913 y FE(F)-8
 b(urther)30 b(examples)h(will)f(use)g(the)h(one-switc)m(h)g(sp)s
-(eci\014cation)h(of)e Fz(mask)p 2762 1753 V 40 w(cond)p
-FD(.)275 1913 y(Determine)39 b(the)g(total)i(area)e(of)g(the)g
+(eci\014cation)h(of)e FA(mask)p 2762 1913 V 40 w(cond)p
+FE(.)275 2072 y(Determine)39 b(the)g(total)i(area)e(of)g(the)g
 (maritime)g(tropical)h(P)m(aci\014c,)i(assuming)d(the)g(v)-5
-b(ariable)39 b Fz(area)150 2022 y FD(con)m(tains)32 b(the)e(area)h(of)g
-(eac)m(h)g(gridcell)390 2182 y Fy(ncwa)47 b(-N)g(-v)g(area)g(-B)g('ORO)
-f(<)i(0.5')f(-a)g(lat,lon)f(\\)485 2291 y(-d)i(lat,-20.0,20.0)c(-d)j
-(lon,120.0,270.0)c(in.nc)k(out.nc)275 2451 y FD(W)-8
-b(eigh)m(ting)39 b Fz(area)e FD(\(e.g.,)k(b)m(y)36 b
-Fz(gw)8 b FD(\))37 b(is)g(not)g(appropriate)g(b)s(ecause)g
-Fz(area)g FD(is)g Fo(alr)-5 b(e)g(ady)47 b FD(area-w)m(eigh)m(ted)150
-2560 y(b)m(y)27 b(de\014nition.)39 b(Th)m(us)26 b(the)i(`)p
-Fy(-N)p FD(')f(switc)m(h,)h(or,)g(equiv)-5 b(alen)m(tly)d(,)30
-b(the)d(`)p Fy(-y)j(ttl)p FD(')d(switc)m(h,)h(correctly)h(in)m(tegrate)
-150 2670 y(the)i(cell)g(areas)g(in)m(to)h(a)e(total)j(regional)e(area.)
-275 2829 y(Mask)38 b(a)h(\014le)f(to)i(con)m(tain)p 1218
-2829 V 79 w Fz(FillV)-8 b(alue)46 b FD(ev)m(erywhere)39
-b(except)g(where)f Fz(thr)p 2832 2829 V 46 w(min)g Fv(<)p
-FD(=)f Fz(msk)p 3406 2829 V 46 w(v)-5 b(ar)45 b Fv(<)p
-FD(=)150 2939 y Fz(thr)p 285 2939 V 46 w(max)6 b FD(:)390
-3098 y Fy(#)47 b(Set)g(masking)f(variable)g(and)h(its)g(scalar)f
-(thresholds)390 3208 y(export)g(msk_var='three_dmn_var_db)o(l')41
-b(#)48 b(Masking)e(variable)390 3318 y(export)g(thr_max='20')f(#)i
-(Maximum)f(allowed)g(value)390 3427 y(export)g(thr_min='10')f(#)i
-(Minimum)f(allowed)g(value)390 3537 y(ncecat)g(-O)h(in.nc)g(out.nc)f(#)
+b(ariable)39 b FA(area)150 2182 y FE(con)m(tains)32 b(the)e(area)h(of)g
+(eac)m(h)g(gridcell)390 2341 y Fz(ncwa)47 b(-N)g(-v)g(area)g(-B)g('ORO)
+f(<)i(0.5')f(-a)g(lat,lon)f(\\)485 2451 y(-d)i(lat,-20.0,20.0)c(-d)j
+(lon,120.0,270.0)c(in.nc)k(out.nc)275 2610 y FE(W)-8
+b(eigh)m(ting)39 b FA(area)e FE(\(e.g.,)k(b)m(y)36 b
+FA(gw)8 b FE(\))37 b(is)g(not)g(appropriate)g(b)s(ecause)g
+FA(area)g FE(is)g Fp(alr)-5 b(e)g(ady)47 b FE(area-w)m(eigh)m(ted)150
+2720 y(b)m(y)27 b(de\014nition.)39 b(Th)m(us)26 b(the)i(`)p
+Fz(-N)p FE(')f(switc)m(h,)h(or,)g(equiv)-5 b(alen)m(tly)d(,)30
+b(the)d(`)p Fz(-y)j(ttl)p FE(')d(switc)m(h,)h(correctly)h(in)m(tegrate)
+150 2829 y(the)i(cell)g(areas)g(in)m(to)h(a)e(total)j(regional)e(area.)
+275 2989 y(Mask)38 b(a)h(\014le)f(to)i(con)m(tain)p 1218
+2989 V 79 w FA(FillV)-8 b(alue)46 b FE(ev)m(erywhere)39
+b(except)g(where)f FA(thr)p 2832 2989 V 46 w(min)g Fw(<)p
+FE(=)f FA(msk)p 3406 2989 V 46 w(v)-5 b(ar)45 b Fw(<)p
+FE(=)150 3098 y FA(thr)p 285 3098 V 46 w(max)6 b FE(:)390
+3258 y Fz(#)47 b(Set)g(masking)f(variable)g(and)h(its)g(scalar)f
+(thresholds)390 3367 y(export)g(msk_var='three_dmn_var_db)o(l')41
+b(#)48 b(Masking)e(variable)390 3477 y(export)g(thr_max='20')f(#)i
+(Maximum)f(allowed)g(value)390 3587 y(export)g(thr_min='10')f(#)i
+(Minimum)f(allowed)g(value)390 3696 y(ncecat)g(-O)h(in.nc)g(out.nc)f(#)
 h(Wrap)g(out.nc)f(in)h(degenerate)e("record")h(dimension)390
-3646 y(ncwa)h(-O)g(-a)g(record)f(-B)h("${msk_var})e(<=)i(${thr_max}")e
-(out.nc)h(out.nc)390 3756 y(ncecat)g(-O)h(out.nc)f(out.nc)g(#)i(Wrap)f
+3806 y(ncwa)h(-O)g(-a)g(record)f(-B)h("${msk_var})e(<=)i(${thr_max}")e
+(out.nc)h(out.nc)390 3915 y(ncecat)g(-O)h(out.nc)f(out.nc)g(#)i(Wrap)f
 (out.nc)f(in)h(degenerate)e("record")g(dimension)390
-3866 y(ncwa)i(-O)g(-a)g(record)f(-B)h("${msk_var})e(>=)i(${thr_min}")e
-(out.nc)h(out.nc)275 4025 y FD(After)40 b(the)g(\014rst)f(use)h(of)g
-Fy(ncwa)p FD(,)h Fy(out.nc)d FD(con)m(tains)p 2122 4025
-V 82 w Fz(FillV)-8 b(alue)47 b FD(where)39 b Fy(${msk_var})28
-b(>=)i(${thr_)150 4134 y(max})p FD(.)38 b(The)26 b(pro)s(cess)g(is)g
+4025 y(ncwa)i(-O)g(-a)g(record)f(-B)h("${msk_var})e(>=)i(${thr_min}")e
+(out.nc)h(out.nc)275 4184 y FE(After)40 b(the)g(\014rst)f(use)h(of)g
+Fz(ncwa)p FE(,)h Fz(out.nc)d FE(con)m(tains)p 2122 4184
+V 82 w FA(FillV)-8 b(alue)47 b FE(where)39 b Fz(${msk_var})28
+b(>=)i(${thr_)150 4294 y(max})p FE(.)38 b(The)26 b(pro)s(cess)g(is)g
 (then)h(rep)s(eated)f(on)g(the)h(remaining)f(data)h(to)g(\014lter)g
-(out)g(p)s(oin)m(ts)f(where)g Fy(${msk_)150 4244 y(var})j(<=)h
-(${thr_min})p FD(.)62 b(The)37 b(resulting)i Fy(out.nc)d
-FD(con)m(tains)k(v)-5 b(alid)38 b(data)h(only)g(where)f
-Fz(thr)p 3386 4244 V 46 w(min)g Fv(<)p FD(=)150 4354
-y Fz(msk)p 322 4354 V 45 w(v)-5 b(ar)32 b Fv(<)p FD(=)25
-b Fz(thr)p 813 4354 V 46 w(max)6 b FD(.)p 150 5154 1200
-4 v 199 5221 a Ft(6)275 5253 y Fs(Unfortunately)31 b(the)h(`)p
-Fr(-B)p Fs(')h(and)f(`)p Fr(--mask_condition)p Fs(')k(options)c(are)h
-(unsupp)r(orted)e(on)h(Windo)n(ws)g(\(with)h(the)e Fp(MVS)275
-5340 y Fs(compiler\),)26 b(whic)n(h)g(lac)n(ks)g(a)g(free,)h(standard)f
+(out)g(p)s(oin)m(ts)f(where)g Fz(${msk_)150 4403 y(var})j(<=)h
+(${thr_min})p FE(.)62 b(The)37 b(resulting)i Fz(out.nc)d
+FE(con)m(tains)k(v)-5 b(alid)38 b(data)h(only)g(where)f
+FA(thr)p 3386 4403 V 46 w(min)g Fw(<)p FE(=)150 4513
+y FA(msk)p 322 4513 V 45 w(v)-5 b(ar)32 b Fw(<)p FE(=)25
+b FA(thr)p 813 4513 V 46 w(max)6 b FE(.)p 150 4963 1200
+4 v 199 5031 a Fu(5)275 5063 y Fs(ORO)40 b Ft(stands)g(for)g
+Fn(Orograph)n(y)46 b Ft(in)39 b(some)i(climate)g(mo)r(dels)f(and)g(in)f
+(those)h(mo)r(dels)h Fn(OR)n(O)47 b Ff(<)e Ft(0)p Ff(:)p
+Ft(5)40 b(selects)h(o)r(cean)275 5150 y(gridp)r(oin)n(ts.)199
+5221 y Fu(6)275 5253 y Ft(Unfortunately)31 b(the)h(`)p
+Fs(-B)p Ft(')h(and)f(`)p Fs(--mask_condition)p Ft(')k(options)c(are)h
+(unsupp)r(orted)e(on)h(Windo)n(ws)g(\(with)h(the)e Fq(MVS)275
+5340 y Ft(compiler\),)26 b(whic)n(h)g(lac)n(ks)g(a)g(free,)h(standard)f
 (parser)g(and)f(lexer.)p eop end
-%%Page: 211 217
-TeXDict begin 211 216 bop 150 -116 a FD(Chapter)30 b(5:)41
-b(Con)m(tributing)2486 b(211)150 299 y Fx(5)80 b(Con)l(tributing)150
-538 y FD(W)-8 b(e)46 b(w)m(elcome)g(con)m(tributions)g(from)e(an)m(y)m
+%%Page: 223 229
+TeXDict begin 223 228 bop 150 -116 a FE(Chapter)30 b(5:)41
+b(Con)m(tributing)2486 b(223)150 299 y Fy(5)80 b(Con)l(tributing)150
+538 y FE(W)-8 b(e)46 b(w)m(elcome)g(con)m(tributions)g(from)e(an)m(y)m
 (one.)85 b(The)44 b(pro)5 b(ject)46 b(homepage)f(at)h
-Fy(https:)12 b(/)g(/)d(sf)j(.)d(net)j(/)150 647 y(projects/nco)27
-b FD(con)m(tains)32 b(more)e(information)h(on)f(ho)m(w)g(to)i(con)m
+Fz(https:)12 b(/)g(/)d(sf)j(.)d(net)j(/)150 647 y(projects/nco)27
+b FE(con)m(tains)32 b(more)e(information)h(on)f(ho)m(w)g(to)i(con)m
 (tribute.)275 807 y(Financial)i(con)m(tributions)g(to)g
-FC(NCO)f FD(dev)m(elopmen)m(t)h(ma)m(y)g(b)s(e)f(made)g(through)g(P)m
-(a)m(yP)m(al)i(\()p Fy(https:)r(/)r(/)150 916 y(www)6
+FD(NCO)f FE(dev)m(elopmen)m(t)h(ma)m(y)g(b)s(e)f(made)g(through)g(P)m
+(a)m(yP)m(al)i(\()p Fz(https:)r(/)r(/)150 916 y(www)6
 b(.)f(paypal)h(.)f(com)h(/)f(xcl)o(ick)g(/)g(b)o(usi)o(ness)o(=zen)o
 (der)o(\04540u)o(ci)h(.)t(ed)o(u)g(&)t(ite)o(m_na)o(me=)o(NCO+)o(deve)o
 (lop)o(ment)f(&)150 1026 y(item_number=nco_dnt_dvl)13
 b(&)h(no_note=1)i(&)e(tax=0)k(&)c(currency_code=USD)p
-FD(\).)105 b FC(NCO)54 b FD(has)f(b)s(een)150 1135 y(shared)27
+FE(\).)105 b FD(NCO)54 b FE(has)f(b)s(een)150 1135 y(shared)27
 b(for)i(o)m(v)m(er)g(10)i(y)m(ears)e(y)m(et)h(only)e(t)m(w)m(o)i(users)
 d(ha)m(v)m(e)i(con)m(tributed)g(an)m(y)f(money)h(to)g(the)f(dev)m(elop)
-s(ers)3687 1102 y Ft(1)3725 1135 y FD(.)150 1245 y(So)i(y)m(ou)h(could)
-f(b)s(e)g(the)h(third!)150 1467 y FB(5.1)68 b(Con)l(tributors)150
-1627 y FC(NCO)24 b FD(w)m(ould)g(not)g(exist)h(without)g(the)f
+s(ers)3687 1102 y Fu(1)3725 1135 y FE(.)150 1245 y(So)i(y)m(ou)h(could)
+f(b)s(e)g(the)h(third!)150 1467 y FC(5.1)68 b(Con)l(tributors)150
+1627 y FD(NCO)24 b FE(w)m(ould)g(not)g(exist)h(without)g(the)f
 (dedicated)h(e\013orts)g(of)f(the)h(remark)-5 b(able)24
 b(soft)m(w)m(are)i(engineers)e(who)150 1736 y(conceiv)m(e,)39
 b(dev)m(elop,)f(and)d(main)m(tain)i(netCDF,)f(UDUnits,)i(and)d(OP)m
-(eND)m(AP)-8 b(.)38 b(Since)e(1995)h FC(NCO)e FD(has)150
+(eND)m(AP)-8 b(.)38 b(Since)e(1995)h FD(NCO)e FE(has)150
 1846 y(receiv)m(ed)f(supp)s(ort)c(from,)j(I)f(b)s(eliev)m(e,)i(the)e
 (en)m(tire)h(sta\013)g(of)g(all)g(these)f(pro)5 b(jects,)34
 b(including)d(Russ)h(Rew,)150 1956 y(John)38 b(Caron,)j(Glenn)e(Da)m
 (vis,)k(Stev)m(e)d(Emmerson,)h(James)e(Gallagher,)k(Ed)38
 b(Hartnett,)43 b(and)38 b(Dennis)150 2065 y(Heim)m(bigner.)69
 b(In)39 b(addition)h(to)g(their)g(roles)g(in)f(main)m(taining)i(the)e
-(soft)m(w)m(are)i(stac)m(k)g(on)f(whic)m(h)f FC(NCO)150
-2175 y FD(p)s(erc)m(hes,)25 b(Y)-8 b(ertl-lik)m(e,)28
+(soft)m(w)m(are)i(stac)m(k)g(on)f(whic)m(h)f FD(NCO)150
+2175 y FE(p)s(erc)m(hes,)25 b(Y)-8 b(ertl-lik)m(e,)28
 b(some)d(of)f(these)g(gen)m(tlemen)h(ha)m(v)m(e)g(advised)f(or)g(con)m
-(tributed)g(to)h FC(NCO)f FD(sp)s(eci\014cally)-8 b(.)150
+(tributed)g(to)h FD(NCO)f FE(sp)s(eci\014cally)-8 b(.)150
 2284 y(That)30 b(supp)s(ort)f(is)h(ac)m(kno)m(wledged)j(separately)e(b)
 s(elo)m(w.)275 2444 y(The)e(primary)h(con)m(tributors)h(to)g
-FC(NCO)f FD(dev)m(elopmen)m(t)h(ha)m(v)m(e)h(b)s(een:)150
+FD(NCO)f FE(dev)m(elopmen)m(t)h(ha)m(v)m(e)h(b)s(een:)150
 2623 y(Charlie)e(Zender)630 2733 y(All)46 b(concept,)k(design)45
 b(and)g(implemen)m(tation)i(from)d(1995{2000.)90 b(Since)45
 b(then)g(auto-)630 2842 y(to)s(ols,)55 b(bug-squashing,)d
-FC(CDL)p FD(,)i(c)m(h)m(unking,)g(do)s(cumen)m(tation,)h(anc)m(horing,)
-f(recursion,)630 2952 y FC(GPE)p FD(,)26 b(pac)m(king,)i
-FC(NCO)e FD(library)g(redesign,)h Fy(ncap2)d FD(features,)k
-Fy(ncbo)p FD(,)e Fy(ncpdq)p FD(,)f FC(SMP)h FD(thread-)630
-3061 y(ing)43 b(and)g FC(MPI)f FD(parallelization,)49
+FD(CDL)p FE(,)i(c)m(h)m(unking,)g(do)s(cumen)m(tation,)h(anc)m(horing,)
+f(recursion,)630 2952 y FD(GPE)p FE(,)26 b(pac)m(king,)i
+FD(NCO)e FE(library)g(redesign,)h Fz(ncap2)d FE(features,)k
+Fz(ncbo)p FE(,)e Fz(ncpdq)p FE(,)f FD(SMP)h FE(thread-)630
+3061 y(ing)43 b(and)g FD(MPI)f FE(parallelization,)49
 b(netCDF4)44 b(in)m(tegration,)49 b(external)44 b(funding,)g(pro)5
 b(ject)630 3171 y(managemen)m(t,)32 b(science)g(researc)m(h,)f
 (releases.)150 3320 y(Henry)f(Buto)m(wsky)630 3430 y(Non-linear)35
-b(op)s(erations)g(and)f Fy(min\(\))p FD(,)h Fy(max\(\))p
-FD(,)f Fy(total\(\))f FD(supp)s(ort)f(in)j Fy(ncra)e
-FD(and)h Fy(ncwa)p FD(.)630 3539 y(T)m(yp)s(e)41 b(con)m(v)m(ersion)i
+b(op)s(erations)g(and)f Fz(min\(\))p FE(,)h Fz(max\(\))p
+FE(,)f Fz(total\(\))f FE(supp)s(ort)f(in)j Fz(ncra)e
+FE(and)h Fz(ncwa)p FE(.)630 3539 y(T)m(yp)s(e)41 b(con)m(v)m(ersion)i
 (for)f(arithmetic.)75 b(Migration)44 b(to)e(netCDF3)h
-FC(API)p FD(.)74 b Fy(ncap2)40 b FD(parser,)630 3649
-y(lexer,)e FC(GSL)p FD(-supp)s(ort,)e(and)30 b(I/O.)56
+FD(API)p FE(.)74 b Fz(ncap2)40 b FE(parser,)630 3649
+y(lexer,)e FD(GSL)p FE(-supp)s(ort,)e(and)30 b(I/O.)56
 b(Multislabbing)36 b(algorithm.)58 b(V)-8 b(ariable)37
 b(wildcarding.)630 3759 y(Numerous)30 b(hac)m(ks.)41
-b Fy(ncap2)29 b FD(language.)150 3908 y(Rorik)i(P)m(eterson)630
+b Fz(ncap2)29 b FE(language.)150 3908 y(Rorik)i(P)m(eterson)630
 4017 y(Original)56 b(autoto)s(ols)g(build)f(supp)s(ort.)113
 b(Long)55 b(command-line)h(options.)116 b(Original)630
 4127 y(UDUnits)31 b(supp)s(ort.)39 b(Debianization.)k(Numerous)30
 b(bug-\014xes.)150 4276 y(Jo)s(e)g(Hamman)630 4386 y(Python)g(bindings)
 f(\(NCOp)m(y\).)150 4535 y(Daniel)j(W)-8 b(ang)630 4645
 y(Script)30 b(W)-8 b(ork\015o)m(w)31 b(Analysis)g(for)f(MultiPro)s
-(cessing)h(\()p FC(SW)-9 b(AMP)p FD(\).)42 b FC(RPM)30
-b FD(supp)s(ort.)150 4794 y(Harry)g(Mangalam)630 4904
+(cessing)h(\()p FD(SW)-9 b(AMP)p FE(\).)42 b FD(RPM)30
+b FE(supp)s(ort.)150 4794 y(Harry)g(Mangalam)630 4904
 y(Benc)m(hmarking.)41 b(OP)m(eND)m(AP)32 b(con\014guration.)p
-150 4979 1200 4 v 199 5047 a Ft(1)309 5078 y Fs(Happ)n(y)g(users)j(ha)n
+150 4979 1200 4 v 199 5047 a Fu(1)309 5078 y Ft(Happ)n(y)g(users)j(ha)n
 (v)n(e)f(sen)n(t)g(me)g(a)g(few)i(gifts,)h(though.)60
 b(This)35 b(includes)f(a)h(b)r(o)n(x)e(of)i(imp)r(orted)g(c)n(ho)r
 (colate.)61 b(Mmm.)275 5166 y(Appreciation)27 b(and)g(gifts)i(are)f
 (de\014nitely)f(b)r(etter)g(than)g(money)-6 b(.)39 b(Naturally)-6
 b(,)28 b(I'm)f(to)r(o)h(lazy)g(to)g(split)f(and)h(send)f(gifts)275
 5253 y(to)d(the)g(other)h(dev)n(elop)r(ers.)34 b(Ho)n(w)n(ev)n(er,)25
-b(unlik)n(e)f(some)h Fp(NCO)g Fs(dev)n(elop)r(ers,)g(I)f(ha)n(v)n(e)g
-(a)h(steady)f Fr(")p Fs(real)i(job)p Fr(")p Fs(.)34 b(My)25
+b(unlik)n(e)f(some)h Fq(NCO)g Ft(dev)n(elop)r(ers,)g(I)f(ha)n(v)n(e)g
+(a)h(steady)f Fs(")p Ft(real)i(job)p Fs(")p Ft(.)34 b(My)25
 b(in)n(ten)n(t)e(is)275 5340 y(to)i(split)h(monetary)g(donations)g
 (among)h(the)e(activ)n(e)h(dev)n(elop)r(ers)g(and)f(to)h(send)g(them)f
 (their)h(shares)g(via)g(P)n(a)n(yP)n(al.)p eop end
-%%Page: 212 218
-TeXDict begin 212 217 bop 150 -116 a FD(212)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y(P)m(edro)h(Vicen)m(te)630
+%%Page: 224 230
+TeXDict begin 224 229 bop 150 -116 a FE(224)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y(P)m(edro)h(Vicen)m(te)630
 408 y(Windo)m(ws)f(Visual)h(Studio)f(supp)s(ort.)39 b(netCDF4)32
 b(groups.)150 573 y(Russ)d(Rew)88 b(Advice)31 b(on)f
-FC(NCO)g FD(structural)h(algorithms)150 737 y(Brian)g(Ma)m(ys)630
+FD(NCO)g FE(structural)h(algorithms)150 737 y(Brian)g(Ma)m(ys)630
 847 y(Original)g(pac)m(k)-5 b(aging)32 b(for)e(Debian)h
-FC(GNU)p FD(/Lin)m(ux,)g Fy(nroff)e FD(man)h(pages.)150
+FD(GNU)p FE(/Lin)m(ux,)g Fz(nroff)e FE(man)h(pages.)150
 1011 y(George)i(Shap)s(o)m(v)-5 b(alo)m(v)630 1121 y(P)m(ac)m(k)g
-(aging)33 b(for)d(Gen)m(to)s(o)i FC(GNU)p FD(/Lin)m(ux.)150
+(aging)33 b(for)d(Gen)m(to)s(o)i FD(GNU)p FE(/Lin)m(ux.)150
 1285 y(Bill)f(Ko)s(cik)78 b(Memory)31 b(managemen)m(t.)150
 1450 y(Len)f(Makin)630 1559 y(NEC)g(SX)g(arc)m(hitecture)i(supp)s(ort.)
 150 1724 y(Jim)e(Edw)m(ards)630 1833 y(AIX)g(arc)m(hitecture)j(supp)s
 (ort.)150 1998 y(Juliana)d(Rew)630 2107 y(Compatibilit)m(y)i(with)e
-(large)h FC(PID)p FD(s.)150 2271 y(Karen)f(Sc)m(h)m(uc)m(hardt)630
+(large)h FD(PID)p FE(s.)150 2271 y(Karen)f(Sc)m(h)m(uc)m(hardt)630
 2381 y(Auxiliary)h(co)s(ordinate)g(supp)s(ort.)150 2545
 y(Ga)m(y)m(athri)h(V)-8 b(enkitac)m(halam)630 2655 y
-FC(MPI)30 b FD(implemen)m(tation.)150 2819 y(Scott)h(Capps)630
+FD(MPI)30 b FE(implemen)m(tation.)150 2819 y(Scott)h(Capps)630
 2929 y(Large)g(w)m(ork-load)g(testing)150 3093 y(P)m(eter)g(Campb)s
 (ell,)f(Martin)h(Dix,)g(Mark)g(Flanner,)g(Markus)f(Liebig,)h(Keith)f
 (Lindsa)m(y)-8 b(,)31 b(Mik)m(e)h(P)m(age,)150 3203 y(Martin)f(Sc)m
@@ -29101,78 +30291,78 @@ b(aging)150 4792 y(T)d(ak)m(eshi)31 b(Enomoto,)h(Alexander)e(Hansen)630
 b(Blak)m(e)68 b(Auto)s(conf/M4)32 b(help)150 5230 y(Ga)m(vin)f(Burris,)
 f(Kyle)h(Wilco)m(x)630 5340 y(RHEL)f(and)g(Cen)m(tOS)g(build)f(scripts)
 h(and)g(bug)g(rep)s(orts.)p eop end
-%%Page: 213 219
-TeXDict begin 213 218 bop 150 -116 a FD(Chapter)30 b(5:)41
-b(Con)m(tributing)2486 b(213)150 299 y(Andrea)30 b(Cimatoribus)630
-408 y FC(NCO)g FD(Spiral)g(Logo)150 568 y(Martin)h(Otte,)g(Etienne)g(T)
+%%Page: 225 231
+TeXDict begin 225 230 bop 150 -116 a FE(Chapter)30 b(5:)41
+b(Con)m(tributing)2486 b(225)150 299 y(Andrea)30 b(Cimatoribus)630
+408 y FD(NCO)g FE(Spiral)g(Logo)150 568 y(Martin)h(Otte,)g(Etienne)g(T)
 -8 b(ourign)m(y)630 677 y(Single)31 b(bug)e(rep)s(orts)h(and)g(\014xes)
-150 837 y(W)-8 b(enshan)30 b(W)-8 b(ang)630 946 y FC(CMIP5)29
-b FD(and)h FC(MODIS)h FD(pro)s(cessing)f(do)s(cumen)m(tation.)275
+150 837 y(W)-8 b(enshan)30 b(W)-8 b(ang)630 946 y FD(CMIP5)29
+b FE(and)h FD(MODIS)h FE(pro)s(cessing)f(do)s(cumen)m(tation.)275
 1131 y(Please)h(let)g(me)g(kno)m(w)f(if)h(y)m(our)f(name)g(w)m(as)h
-(omitted!)150 1363 y FB(5.2)68 b(Citation)150 1523 y
-FD(The)30 b(recommended)g(citations)i(for)e FC(NCO)g
-FD(soft)m(w)m(are)i(are)390 1682 y Fy(Zender,)46 b(C.)h(S.)g(\(2008\),)
+(omitted!)150 1363 y FC(5.2)68 b(Citation)150 1523 y
+FE(The)30 b(recommended)g(citations)i(for)e FD(NCO)g
+FE(soft)m(w)m(are)i(are)390 1682 y Fz(Zender,)46 b(C.)h(S.)g(\(2008\),)
 f(Analysis)g(of)h(Self-describing)c(Gridded)j(Geoscience)390
 1792 y(Data)h(with)f(netCDF)g(Operators)g(\(NCO\),)g(Environ.)f
 (Modell.)h(Softw.,)g(23\(10\),)390 1901 y(1338-1342,)f
 (doi:10.1016/j.envsoft.20)o(08.0)o(3.00)o(4.)390 2120
 y(Zender,)h(C.)h(S.)g(\(2014\),)f(netCDF)g(Operator)g(\(NCO\))g(User)h
 (Guide,)f(Version)g(4.4.3,)390 2230 y(http://nco.sf.net/nco.pd)o(f.)275
-2389 y FD(Use)28 b(the)h(former)f(when)g(referring)g(to)h(o)m(v)m
+2389 y FE(Use)28 b(the)h(former)f(when)g(referring)g(to)h(o)m(v)m
 (erall)i(design,)e(purp)s(ose,)f(and)f(optimization)k(of)e
-FC(NCO)p FD(,)g(and)150 2499 y(use)h(the)h(latter)g(when)f(referring)g
+FD(NCO)p FE(,)g(and)150 2499 y(use)h(the)h(latter)g(when)f(referring)g
 (to)h(sp)s(eci\014c)f(features)h(and/or)f(the)g(User)h(Guide)f(itself.)
-275 2658 y(Additional)d(information)h(on)f(citing)h FC(NCO)f
-FD(is)g(in)f(the)i(User)f(Guide)g(at)g Fy(http://nco.sf.net#ctt)p
-FD(.)150 2768 y(A)f(complete)i(list)e(of)h FC(NCO)f FD(publications)g
-(and)f(presen)m(tations)i(is)f(at)h Fy(http://nco.sf.net#pub)p
-FD(.)34 b(This)150 2878 y(list)d(links)f(to)h(the)g(full)f(pap)s(ers)f
-(and)h(seminars)g(themselv)m(es.)150 3110 y FB(5.3)68
+275 2658 y(Additional)d(information)h(on)f(citing)h FD(NCO)f
+FE(is)g(in)f(the)i(User)f(Guide)g(at)g Fz(http://nco.sf.net#ctt)p
+FE(.)150 2768 y(A)f(complete)i(list)e(of)h FD(NCO)f FE(publications)g
+(and)f(presen)m(tations)i(is)f(at)h Fz(http://nco.sf.net#pub)p
+FE(.)34 b(This)150 2878 y(list)d(links)f(to)h(the)g(full)f(pap)s(ers)f
+(and)h(seminars)g(themselv)m(es.)150 3110 y FC(5.3)68
 b(Prop)t(osals)46 b(for)f(Institutional)h(F)-11 b(unding)150
-3269 y FC(NSF)39 b FD(has)f(funded)f(a)i(pro)5 b(ject)39
-b(\()p Fy(http:)7 b(/)g(/)e(nco)i(.)e(sf)i(.)e(net)i(#)t(prp_)o(sei)p
-FD(\))32 b(to)40 b(impro)m(v)m(e)f(Distributed)f(Data)150
-3379 y(Reduction)d(&)f(Analysis)h(\()p FC(DDRA)p FD(\))i(b)m(y)e(ev)m
-(olving)h FC(NCO)f FD(in)m(to)g(a)g(suite)g(of)g(Scien)m(ti\014c)h
-(Data)h(Op)s(erators)150 3489 y(called)45 b FC(SDO)p
-FD(.)79 b(The)43 b(t)m(w)m(o)i(main)e(comp)s(onen)m(ts)h(of)g(this)f
-(pro)5 b(ject)44 b(are)g FC(NCO)f FD(parallelism)h(\(Op)s(enMP)-8
-b(,)150 3598 y FC(MPI)p FD(\))29 b(and)g(Serv)m(er-Side)g
-FC(DDRA)i FD(\()p FC(SSDDRA)p FD(\))h(implemen)m(ted)e(through)e
-(extensions)i(to)g FC(OP)n(eND)n(AP)f FD(and)150 3708
+3269 y FD(NSF)39 b FE(has)f(funded)f(a)i(pro)5 b(ject)39
+b(\()p Fz(http:)7 b(/)g(/)e(nco)i(.)e(sf)i(.)e(net)i(#)t(prp_)o(sei)p
+FE(\))32 b(to)40 b(impro)m(v)m(e)f(Distributed)f(Data)150
+3379 y(Reduction)d(&)f(Analysis)h(\()p FD(DDRA)p FE(\))i(b)m(y)e(ev)m
+(olving)h FD(NCO)f FE(in)m(to)g(a)g(suite)g(of)g(Scien)m(ti\014c)h
+(Data)h(Op)s(erators)150 3489 y(called)45 b FD(SDO)p
+FE(.)79 b(The)43 b(t)m(w)m(o)i(main)e(comp)s(onen)m(ts)h(of)g(this)f
+(pro)5 b(ject)44 b(are)g FD(NCO)f FE(parallelism)h(\(Op)s(enMP)-8
+b(,)150 3598 y FD(MPI)p FE(\))29 b(and)g(Serv)m(er-Side)g
+FD(DDRA)i FE(\()p FD(SSDDRA)p FE(\))h(implemen)m(ted)e(through)e
+(extensions)i(to)g FD(OP)n(eND)n(AP)f FE(and)150 3708
 y(netCDF4.)42 b(This)29 b(pro)5 b(ject)31 b(will)g(dramatically)h
-(reduce)e(bandwidth)f(usage)i(for)f FC(NCO)g(DDRA)p FD(.)275
-3867 y(With)e(this)g(\014rst)f FC(NCO)h FD(prop)s(osal)g(funded,)f(the)
-h(con)m(ten)m(t)i(of)e(the)g(next)g FC(NCO)g FD(prop)s(osal)g(is)g
+(reduce)e(bandwidth)f(usage)i(for)f FD(NCO)g(DDRA)p FE(.)275
+3867 y(With)e(this)g(\014rst)f FD(NCO)h FE(prop)s(osal)g(funded,)f(the)
+h(con)m(ten)m(t)i(of)e(the)g(next)g FD(NCO)g FE(prop)s(osal)g(is)g
 (clear.)41 b(W)-8 b(e)150 3977 y(are)29 b(in)m(terested)h(in)e
-(obtaining)h FC(NASA)h FD(supp)s(ort)c(for)j FC(HDF)p
-FD(-sp)s(eci\014c)g(enhancemen)m(ts)g(to)h FC(NCO)p FD(.)40
+(obtaining)h FD(NASA)h FE(supp)s(ort)c(for)j FD(HDF)p
+FE(-sp)s(eci\014c)g(enhancemen)m(ts)g(to)h FD(NCO)p FE(.)40
 b(W)-8 b(e)29 b(plan)150 4086 y(to)i(submit)f(a)g(prop)s(osal)g(to)h
-(the)g(next)g(suitable)f FC(NASA)i(NRA)f FD(or)f FC(NSF)h
-FD(opp)s(ortunit)m(y)-8 b(.)275 4246 y(W)g(e)33 b(are)f(considering)h
+(the)g(next)g(suitable)f FD(NASA)i(NRA)f FE(or)f FD(NSF)h
+FE(opp)s(ortunit)m(y)-8 b(.)275 4246 y(W)g(e)33 b(are)f(considering)h
 (other)f(in)m(teresting)i(ideas)e(for)g(still)h(more)f(prop)s(osals.)46
 b(Please)33 b(con)m(tact)i(us)c(if)150 4355 y(y)m(ou)24
 b(wish)e(to)j(b)s(e)d(in)m(v)m(olv)m(ed)j(with)f(an)m(y)f(future)g
-FC(NCO)p FD(-related)h(prop)s(osals.)38 b(Commen)m(ts)24
+FD(NCO)p FE(-related)h(prop)s(osals.)38 b(Commen)m(ts)24
 b(on)f(the)h(prop)s(osals)150 4465 y(and)30 b(letters)h(of)g(supp)s
 (ort)d(are)j(also)h(v)m(ery)e(w)m(elcome.)p eop end
-%%Page: 214 220
-TeXDict begin 214 219 bop eop end
-%%Page: 215 221
-TeXDict begin 215 220 bop 150 -116 a FD(Chapter)30 b(6:)41
-b(Quic)m(k)31 b(Start)2534 b(215)150 299 y Fx(6)80 b(Quic)l(k)53
-b(Start)150 582 y FD(Simple)27 b(examples)h(in)f(Bash)h(shell)g
+%%Page: 226 232
+TeXDict begin 226 231 bop eop end
+%%Page: 227 233
+TeXDict begin 227 232 bop 150 -116 a FE(Chapter)30 b(6:)41
+b(Quic)m(k)31 b(Start)2534 b(227)150 299 y Fy(6)80 b(Quic)l(k)53
+b(Start)150 582 y FE(Simple)27 b(examples)h(in)f(Bash)h(shell)g
 (scripts)f(sho)m(wing)h(ho)m(w)f(to)i(a)m(v)m(erage)h(data)e(with)f
 (di\013eren)m(t)h(\014le)g(struc-)150 692 y(tures.)54
 b(Here)35 b(w)m(e)g(include)g(mon)m(thly)-8 b(,)36 b(seasonal)g(and)f
 (ann)m(ual)f(a)m(v)m(erage)k(with)c(daily)h(or)g(mon)m(thly)g(data)150
 802 y(in)30 b(either)h(one)g(\014le)f(or)g(m)m(ultiple)h(\014les.)150
-1049 y FB(6.1)68 b(Daily)46 b(data)g(in)f(one)g(\014le)150
-1208 y FD(Supp)s(ose)31 b(w)m(e)i(ha)m(v)m(e)i(daily)e(data)h(from)e
+1049 y FC(6.1)68 b(Daily)46 b(data)g(in)f(one)g(\014le)150
+1208 y FE(Supp)s(ose)31 b(w)m(e)i(ha)m(v)m(e)i(daily)e(data)h(from)e
 (Jan)g(1st,)j(1990)g(to)e(Dec.)50 b(31,)34 b(2005)h(in)e(the)g(\014le)g
-(of)g Fy(in.nc)e FD(with)150 1318 y(the)g(record)f(dimension)g(as)g
-Fy(time)p FD(.)150 1482 y Fq(Mon)m(thly)h(a)m(v)m(erage:)390
-1646 y Fy(for)47 b(yyyy)g(in)g({1990..2005};)d(do)286
+(of)g Fz(in.nc)e FE(with)150 1318 y(the)g(record)f(dimension)g(as)g
+Fz(time)p FE(.)150 1482 y Fr(Mon)m(thly)h(a)m(v)m(erage:)390
+1646 y Fz(for)47 b(yyyy)g(in)g({1990..2005};)d(do)286
 b(#)47 b(Loop)g(over)f(years)485 1756 y(for)h(moy)g(in)g({1..12};)f(do)
 477 b(#)47 b(Loop)g(over)f(months)581 1865 y(mm=$\()g(printf)g
 ("\04502d")g(${moy})h(\))95 b(#)47 b(Change)f(to)h(2-digit)f(format)581
@@ -29181,69 +30371,69 @@ y(ncra)h(-O)g(-d)g(time,"${yyyy}-${mm}-01",)o("${y)o(yyy)o(}-${)o(mm}-)
 o(31")41 b(\\)820 2304 y(in.nc)46 b(in_${yyyy}${mm}.nc)485
 2413 y(done)390 2523 y(done)390 2742 y(#)h(Concatenate)e(monthly)h
 (files)g(together)390 2852 y(ncrcat)g(-O)h(in_??????.nc)e(out.nc)150
-3016 y Fq(Ann)m(ual)29 b(a)m(v)m(erage:)390 3180 y Fy(for)47
+3016 y Fr(Ann)m(ual)29 b(a)m(v)m(erage:)390 3180 y Fz(for)47
 b(yyyy)g(in)g({1990..2005};)d(do)286 b(#)47 b(Loop)g(over)f(years)485
 3290 y(ncra)h(-O)g(-d)g(time,"${yyyy}-01-01","${yy)o(yy}-)o(12-)o(31")
 41 b(in.nc)47 b(in_${yyyy}.nc)390 3400 y(done)390 3619
 y(#)g(Concatenate)e(annual)h(files)h(together)390 3728
-y(ncrcat)f(-O)h(in_????.nc)e(out.nc)275 3893 y FD(The)30
-b Fy(-O)h FD(switc)m(h)g(means)g(to)h(o)m(v)m(erwrite)h(the)e
-(pre-existing)h(\014les)f(\(see)h(Section)g(3.34)g([Batc)m(h)h(Mo)s
-(de],)150 4002 y(page)27 b(98\).)40 b(The)25 b Fy(-d)g
-FD(option)i(is)f(to)g(sp)s(ecify)g(the)g(range)g(of)g(h)m(yp)s(erslabs)
-e(\(see)j(Section)g(3.15)g([Hyp)s(erslabs],)150 4112
+y(ncrcat)f(-O)h(in_????.nc)e(out.nc)275 3893 y FE(The)30
+b Fz(-O)h FE(switc)m(h)g(means)g(to)h(o)m(v)m(erwrite)h(the)e
+(pre-existing)h(\014les)f(\(see)h(Section)g(3.35)g([Batc)m(h)h(Mo)s
+(de],)150 4002 y(page)23 b(108\).)40 b(The)22 b Fz(-d)g
+FE(option)h(is)g(to)g(sp)s(ecify)g(the)g(range)g(of)f(h)m(yp)s(erslabs)
+g(\(see)h(Section)h(3.15)g([Hyp)s(erslabs],)150 4112
 y(page)37 b(55\).)60 b(There)36 b(are)g(detailed)i(instructions)e(on)g
-Fy(ncra)f FD(\(see)j(Section)f(4.9)g([ncra)g(netCDF)g(Record)150
-4221 y(Av)m(erager],)h(page)d(198)h(and)e Fy(ncrcat)f
-FD(\(see)j(Section)f(4.10)h([ncrcat)g(netCDF)f(Record)g(Concatenator],)
-150 4331 y(page)i(200\).)59 b FC(NCO)36 b FD(supp)s(orts)e(UDUnits)j
+Fz(ncra)f FE(\(see)j(Section)f(4.9)g([ncra)g(netCDF)g(Record)150
+4221 y(Av)m(erager],)h(page)d(210)h(and)e Fz(ncrcat)f
+FE(\(see)j(Section)f(4.10)h([ncrcat)g(netCDF)f(Record)g(Concatenator],)
+150 4331 y(page)i(212\).)59 b FD(NCO)36 b FE(supp)s(orts)e(UDUnits)j
 (so)g(that)f(w)m(e)h(can)f(use)g(readable)h(dates)f(as)h(time)g
 (dimension)150 4441 y(\(see)31 b(Section)h(3.22)f([UDUnits)h(Supp)s
-(ort],)d(page)i(66\).)150 4688 y FB(6.2)68 b(Mon)l(thly)45
-b(data)h(in)f(one)g(\014le)150 4847 y FD(Inside)30 b(the)g(input)g
-(\014le)g Fy(in.nc)p FD(,)f(the)i(record)f(dimension)g
-Fy(time)f FD(is)i(from)e(Jan)h(1990)j(to)e(Dec)g(2005.)150
-5011 y Fq(Seasonal)g(a)m(v)m(erage)h(\(e.g.,)h(DJF\):)390
-5176 y Fy(ncra)47 b(-O)g(--mro)f(-d)h(time,"1990-12-01",,12,3)42
-b(in.nc)k(out.nc)150 5340 y Fq(Ann)m(ual)29 b(a)m(v)m(erage:)p
+(ort],)d(page)i(66\).)150 4688 y FC(6.2)68 b(Mon)l(thly)45
+b(data)h(in)f(one)g(\014le)150 4847 y FE(Inside)30 b(the)g(input)g
+(\014le)g Fz(in.nc)p FE(,)f(the)i(record)f(dimension)g
+Fz(time)f FE(is)i(from)e(Jan)h(1990)j(to)e(Dec)g(2005.)150
+5011 y Fr(Seasonal)g(a)m(v)m(erage)h(\(e.g.,)h(DJF\):)390
+5176 y Fz(ncra)47 b(-O)g(--mro)f(-d)h(time,"1990-12-01",,12,3)42
+b(in.nc)k(out.nc)150 5340 y Fr(Ann)m(ual)29 b(a)m(v)m(erage:)p
 eop end
-%%Page: 216 222
-TeXDict begin 216 221 bop 150 -116 a FD(216)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(ncra)47 b(-O)g(--mro)f(-d)h
-(time,,,12,12)e(in.nc)h(out.nc)275 458 y FD(Here)36 b(w)m(e)h(use)e
+%%Page: 228 234
+TeXDict begin 228 233 bop 150 -116 a FE(228)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(ncra)47 b(-O)g(--mro)f(-d)h
+(time,,,12,12)e(in.nc)h(out.nc)275 458 y FE(Here)36 b(w)m(e)h(use)e
 (the)i(sub)s(cycle)e(feature)i(\(i.e.,)i(the)d(n)m(um)m(b)s(er)f(after)
-i(the)f(fourth)f(comma:)53 b(`)p Fy(3)p FD(')36 b(in)g(the)150
-568 y(seasonal)d(example)f(and)f(the)g(second)h(`)p Fy(12)p
-FD(')f(in)h(the)f(ann)m(ual)h(example\))g(to)h(retriev)m(e)g(groups)d
+i(the)f(fourth)f(comma:)53 b(`)p Fz(3)p FE(')36 b(in)g(the)150
+568 y(seasonal)d(example)f(and)f(the)g(second)h(`)p Fz(12)p
+FE(')f(in)h(the)f(ann)m(ual)h(example\))g(to)h(retriev)m(e)g(groups)d
 (of)i(records)150 677 y(separated)40 b(b)m(y)g(regular)f(in)m(terv)-5
 b(als)41 b(\(see)g(Section)f(3.18)h([Sub)s(cycle],)h(page)f(59\).)69
-b(The)39 b(option)h Fy(--mro)150 787 y FD(switc)m(hes)f
-Fy(ncra)f FD(to)h(pro)s(duce)f(a)h(Multi-Record)g(Output)f(instead)h
+b(The)39 b(option)h Fz(--mro)150 787 y FE(switc)m(hes)f
+Fz(ncra)f FE(to)h(pro)s(duce)f(a)h(Multi-Record)g(Output)f(instead)h
 (of)g(a)g(single-record)g(output.)65 b(F)-8 b(or)150
-897 y(example,)42 b(assume)c Fz(snd)j FD(is)e(a)g(3D)h(arra)m(y)f(with)
-g(dimensions)f Fy(time)f FD(*)j Fy(latitude)c FD(*)j
-Fy(longitude)e FD(and)150 1006 y Fy(time)26 b FD(includes)i(ev)m(ery)g
+897 y(example,)42 b(assume)c FA(snd)j FE(is)e(a)g(3D)h(arra)m(y)f(with)
+g(dimensions)f Fz(time)f FE(*)j Fz(latitude)c FE(*)j
+Fz(longitude)e FE(and)150 1006 y Fz(time)26 b FE(includes)i(ev)m(ery)g
 (mon)m(th)f(from)h(Jan.)39 b(1990)29 b(to)g(Dec.)41 b(2005,)30
 b(192)e(mon)m(ths)g(as)g(total,)i(whic)m(h)d(are)h(16)150
 1116 y(y)m(ears.)41 b(Let's)31 b(lo)s(ok)g(at)h(the)e(follo)m(wing)i(t)
-m(w)m(o)g(command)e(lines.)390 1275 y Fy(ncra)47 b(--mro)f(-v)h(snd)g
+m(w)m(o)g(command)e(lines.)390 1275 y Fz(ncra)47 b(--mro)f(-v)h(snd)g
 (-d)g(time,"1990-12-01",,12,3)42 b(in.nc)k(out_mro.nc)390
 1385 y(ncra)h(-v)g(snd)g(-d)g(time,"1990-12-01",,12,3)41
-b(in.nc)47 b(out_sro.nc)275 1544 y FD(In)41 b(the)h(\014rst)f(output)g
-(\014le,)k Fy(out_mro.nc)p FD(,)d Fz(snd)i FD(is)e(still)h(a)f(3D)h
-(arra)m(y)f(with)g(dimensions)f Fy(time)g FD(*)150 1654
-y Fy(latitude)e FD(*)j Fy(longitude)p FD(,)h(but)e(the)g(length)i(of)e
-Fy(time)g FD(no)m(w)h(is)f(16,)46 b(meaning)c(16)g(win)m(ters.)75
+b(in.nc)47 b(out_sro.nc)275 1544 y FE(In)41 b(the)h(\014rst)f(output)g
+(\014le,)k Fz(out_mro.nc)p FE(,)d FA(snd)i FE(is)e(still)h(a)f(3D)h
+(arra)m(y)f(with)g(dimensions)f Fz(time)g FE(*)150 1654
+y Fz(latitude)e FE(*)j Fz(longitude)p FE(,)h(but)e(the)g(length)i(of)e
+Fz(time)g FE(no)m(w)h(is)f(16,)46 b(meaning)c(16)g(win)m(ters.)75
 b(In)41 b(the)150 1763 y(second)35 b(output)f(\014le,)i
-Fy(out_sro.nc)p FD(,)e(the)h(length)g(of)g Fy(time)f
-FD(is)g(only)d(1.)54 b(It)35 b(is)g(no)m(w)g(the)g(a)m(v)m(erage)i(of)e
+Fz(out_sro.nc)p FE(,)e(the)h(length)g(of)g Fz(time)f
+FE(is)g(only)d(1.)54 b(It)35 b(is)g(no)m(w)g(the)g(a)m(v)m(erage)i(of)e
 (all)150 1873 y(the)c(16)g(win)m(ters.)275 2032 y(when)e(using)h(`)p
-Fy(-d)g Fn(dim)p Fy(,min[,max])p FD(')d(to)32 b(sp)s(ecify)e(the)h(h)m
+Fz(-d)g Fo(dim)p Fz(,min[,max])p FE(')d(to)32 b(sp)s(ecify)e(the)h(h)m
 (yp)s(erslabs,)e(y)m(ou)i(can)g(lea)m(v)m(e)i(it)e(blank)f(if)h(y)m(ou)
 150 2142 y(w)m(an)m(t)g(to)g(include)f(the)h(minim)m(um)f(or)g(the)h
 (maxim)m(um)f(of)g(the)h(data,)g(lik)m(e)h(w)m(e)f(did)e(ab)s(o)m(v)m
-(e.)150 2374 y FB(6.3)68 b(One)45 b(time)h(p)t(oin)l(t)f(one)g(\014le)
-150 2534 y FD(This)35 b(means)h(if)f(y)m(ou)i(ha)m(v)m(e)g(daily)f
+(e.)150 2374 y FC(6.3)68 b(One)45 b(time)h(p)t(oin)l(t)f(one)g(\014le)
+150 2534 y FE(This)35 b(means)h(if)f(y)m(ou)i(ha)m(v)m(e)g(daily)f
 (data)g(of)g(30)h(da)m(ys,)g(there)f(will)h(b)s(e)e(30)h(data)h
 (\014les.)57 b(Or)35 b(if)h(y)m(ou)g(ha)m(v)m(e)150 2643
 y(mon)m(thly)31 b(data)h(of)g(12)g(mon)m(ths,)f(there)g(will)h(b)s(e)f
@@ -29251,35 +30441,35 @@ y(mon)m(thly)31 b(data)h(of)g(12)g(mon)m(ths,)f(there)g(will)h(b)s(e)f
 (\014les,)h(y)m(ou)150 2753 y(need)23 b(to)g(sp)s(ecify)g(the)g(\014le)
 g(names)g(in)g(shell)g(scripts)g(and)f(pass)h(them)g(to)g(NCO)g(op)s
 (erators.)38 b(F)-8 b(or)24 b(example,)150 2863 y(y)m(our)i(daily)g
-(data)g(\014les)f(ma)m(y)i(lo)s(ok)f(lik)m(e)h Fy(snd_19900101.nc)p
-FD(,)22 b Fy(snd_19900102.nc)p FD(,)h Fy(snd_19900103.nc)150
-2972 y FD(...)41 b(If)30 b(y)m(ou)h(w)m(an)m(t)g(to)g(kno)m(w)f(the)h
+(data)g(\014les)f(ma)m(y)i(lo)s(ok)f(lik)m(e)h Fz(snd_19900101.nc)p
+FE(,)22 b Fz(snd_19900102.nc)p FE(,)h Fz(snd_19900103.nc)150
+2972 y FE(...)41 b(If)30 b(y)m(ou)h(w)m(an)m(t)g(to)g(kno)m(w)f(the)h
 (mon)m(thly)g(a)m(v)m(erage)i(of)d(Jan)g(1990,)j(y)m(ou)d(can)h(write)g
-(lik)m(e,)390 3132 y Fy(ncra)47 b(-O)g(snd_199001??.nc)c(out.nc)275
-3291 y FD(Y)-8 b(ou)30 b(migh)m(t)i(w)m(an)m(t)f(to)g(use)f(lo)s(op)g
+(lik)m(e,)390 3132 y Fz(ncra)47 b(-O)g(snd_199001??.nc)c(out.nc)275
+3291 y FE(Y)-8 b(ou)30 b(migh)m(t)i(w)m(an)m(t)f(to)g(use)f(lo)s(op)g
 (if)h(y)m(ou)f(need)h(the)f(a)m(v)m(erage)j(of)e(eac)m(h)g(mon)m(th.)
-390 3450 y Fy(for)47 b(moy)g(in)g({1..12};)f(do)476 b(#)48
+390 3450 y Fz(for)47 b(moy)g(in)g({1..12};)f(do)476 b(#)48
 b(Loop)e(over)h(months)485 3560 y(mm=$\()g(printf)f("\04502d")g(${moy})
 g(\))95 b(#)48 b(Change)e(to)h(2-digit)f(format)485 3779
 y(ncra)h(-O)g(snd_????${mm}??.nc)c(out_${mm}.nc)390 3889
-y(done)150 4121 y FB(6.4)68 b(Multiple)46 b(\014les)f(with)g(m)l
-(ultiple)i(time)f(p)t(oin)l(ts)150 4281 y FD(Similar)28
+y(done)150 4121 y FC(6.4)68 b(Multiple)46 b(\014les)f(with)g(m)l
+(ultiple)i(time)f(p)t(oin)l(ts)150 4281 y FE(Similar)28
 b(as)h(the)g(last)g(one,)g(it's)g(more)g(ab)s(out)f(shell)g(scripts.)40
 b(Supp)s(ose)27 b(y)m(ou)h(ha)m(v)m(e)i(daily)f(data)g(with)f(one)150
 4390 y(mon)m(th)d(of)g(them)g(in)g(one)g(data)h(\014le.)39
 b(The)24 b(mon)m(thly)i(a)m(v)m(erage)h(is)e(simply)g(to)h(apply)e
-Fy(ncra)g FD(on)h(the)g(sp)s(eci\014c)150 4500 y(data)31
+Fz(ncra)g FE(on)h(the)g(sp)s(eci\014c)150 4500 y(data)31
 b(\014le.)41 b(And)29 b(for)i(seasonal)g(a)m(v)m(erages,)i(y)m(ou)e
 (can)g(sp)s(ecify)f(the)g(three)h(mon)m(ths)f(b)m(y)g(shell)h(scripts.)
 p eop end
-%%Page: 217 223
-TeXDict begin 217 222 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(217)150 299 y Fx(7)80 b FB(CMIP5)54
-b Fx(Example)150 580 y FD(The)62 b(\014fth)g(phase)g(of)h(the)g
+%%Page: 229 235
+TeXDict begin 229 234 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(229)150 299 y Fy(7)80 b FC(CMIP5)54
+b Fy(Example)150 580 y FE(The)62 b(\014fth)g(phase)g(of)h(the)g
 (Coupled)e(Mo)s(del)i(In)m(tercomparison)g(Pro)5 b(ject)64
-b(\()p FC(CMIP5)e FD(\()p Fy(http:)25 b(/)h(/)150 689
+b(\()p FD(CMIP5)e FE(\()p Fz(http:)25 b(/)h(/)150 689
 y(cmip-pcmdi)7 b(.)f(llnl)h(.)f(gov)h(/)f(c)o(mip)o(5)h(/)f(i)o(ndex)g
-(.)g(h)o(tml)h(?)e(su)o(bmen)o(uhe)o(ader)o(=0)p FD(\)\))34
+(.)g(h)o(tml)h(?)e(su)o(bmen)o(uhe)o(ader)o(=0)p FE(\)\))34
 b(pro)m(vides)39 b(a)g(m)m(ulti-mo)s(del)150 799 y(framew)m(ork)h(for)g
 (comparing)h(the)f(mec)m(hanisms)g(and)g(resp)s(onses)f(of)h(climate)i
 (mo)s(dels)e(from)g(around)150 909 y(the)31 b(w)m(orld.)43
@@ -29290,7 +30480,7 @@ b(Ho)m(w)m(ev)m(er,)34 b(it)e(is)f(a)g(tremendous)g(w)m(orkload)h(to)f
 b(Not)40 b(only)f(that,)i(it)e(is)150 1128 y(to)s(o)34
 b(often)f(a)g(tedious)h(pro)s(cess)e(that)i(imp)s(edes)e(new)g(researc)
 m(h)i(and)e(h)m(yp)s(othesis)h(testing.)49 b(Our)32 b
-FC(NASA)150 1237 y(A)n(CCESS)e FD(2011)i(pro)5 b(ject)31
+FD(NASA)150 1237 y(A)n(CCESS)e FE(2011)i(pro)5 b(ject)31
 b(simpli\014ed)f(and)f(accelerated)k(this)d(pro)s(cess.)275
 1401 y(T)-8 b(raditional)32 b(geoscience)j(data)d(analysis)g(requires)f
 (users)g(to)i(w)m(ork)e(with)h(n)m(umerous)f(\015at)g(\(data)i(in)150
@@ -29299,7 +30489,7 @@ b(In)33 b(that)i(paradigm)e(instrumen)m(ts)g(or)h(mo)s(dels)g(pro)s
 (duce,)f(and)g(then)150 1620 y(rep)s(ositories)c(arc)m(hiv)m(e)i(and)d
 (distribute,)h(and)f(then)g(researc)m(hers)i(request)e(and)h(analyze,)h
 (collections)i(of)150 1730 y(\015at)25 b(\014les.)39
-b FC(NCO)24 b FD(w)m(orks)h(w)m(ell)h(with)e(that)i(paradigm,)g(y)m(et)
+b FD(NCO)24 b FE(w)m(orks)h(w)m(ell)h(with)e(that)i(paradigm,)g(y)m(et)
 g(it)f(also)h(em)m(b)s(o)s(dies)e(the)h(necessary)g(algorithms)150
 1840 y(to)30 b(transition)g(geoscience)i(data)e(analysis)g(from)f
 (relying)h(solely)h(on)e(traditional)i(\(or)f(\\\015at"\))h(datasets)
@@ -29308,39 +30498,39 @@ g(it)f(also)h(em)m(b)s(o)s(dies)e(the)h(necessary)g(algorithms)150
 b(datasets)g(supp)s(ort)d(and)h(enable)h(com)m(bining)g(all)h
 (datastreams)g(that)f(meet)g(user-)150 2222 y(sp)s(eci\014ed)39
 b(criteria)i(in)m(to)g(a)f(single)g(or)g(small)g(n)m(um)m(b)s(er)e(of)i
-(\014les)g(that)g(hold)g Fo(al)5 b(l)49 b FD(the)40 b(science-relev)-5
-b(an)m(t)150 2332 y(data.)60 b FC(NCO)37 b FD(\(and)f(no)h(other)f
+(\014les)g(that)g(hold)g Fp(al)5 b(l)49 b FE(the)40 b(science-relev)-5
+b(an)m(t)150 2332 y(data.)60 b FD(NCO)37 b FE(\(and)f(no)h(other)f
 (soft)m(w)m(are)j(to)e(our)f(kno)m(wledge\))i(exploits)g(this)e
 (capabilit)m(y)j(no)m(w.)59 b(Data)150 2442 y(and)30
 b(metadata)h(ma)m(y)g(b)s(e)e(aggregated)k(in)m(to)e(and)f(analyzed)h
 (in)e(hierarc)m(hical)j(structures.)40 b(W)-8 b(e)31
 b(call)h(the)150 2551 y(resulting)g(data)h(storage,)h(distribution,)e
 (and)f(analysis)h(paradigm)g(Group-Orien)m(ted)g(Data)i(Analysis)150
-2661 y(and)d(Distribution)h(\()p FC(GOD)n(AD)p FD(\).)45
-b FC(GOD)n(AD)32 b FD(lets)g(the)g(scien)m(ti\014c)h(question)f
-(organize)h(the)e(data,)i(not)f(the)150 2770 y Fo(ad)45
-b(ho)-5 b(c)49 b FD(gran)m(ularit)m(y)44 b(of)f(all)h(relev)-5
+2661 y(and)d(Distribution)h(\()p FD(GOD)n(AD)p FE(\).)45
+b FD(GOD)n(AD)32 b FE(lets)g(the)g(scien)m(ti\014c)h(question)f
+(organize)h(the)e(data,)i(not)f(the)150 2770 y Fp(ad)45
+b(ho)-5 b(c)49 b FE(gran)m(ularit)m(y)44 b(of)f(all)h(relev)-5
 b(an)m(t)45 b(datasets.)79 b(This)42 b(c)m(hapter)i(illustrates)g
-FC(GOD)n(AD)f FD(tec)m(hniques)150 2880 y(applied)30
-b(to)h(analysis)g(of)g(the)f FC(CMIP5)g FD(dataset.)275
+FD(GOD)n(AD)f FE(tec)m(hniques)150 2880 y(applied)30
+b(to)h(analysis)g(of)g(the)f FD(CMIP5)g FE(dataset.)275
 3044 y(T)-8 b(o)30 b(b)s(egin,)g(w)m(e)g(do)s(cumen)m(t)g(b)s(elo)m(w)g
-(a)h(protot)m(ypical)h(example)e(of)h FC(CMIP5)e FD(analysis)h(and)f
+(a)h(protot)m(ypical)h(example)e(of)h FD(CMIP5)e FE(analysis)h(and)f
 (ev)-5 b(aluation)150 3153 y(using)25 b(traditional)i
-FC(NCO)f FD(commands)f(on)g(netCDF3-format)j(mo)s(del)d(and)g
-FC(HDF-EOS)h FD(format)f(observ)-5 b(a-)150 3263 y(tional)32
-b(\()p FC(NASA)f(MODIS)g FD(satellite)i(instrumen)m(t\))d(datasets.)42
-b(These)30 b(examples)h(complemen)m(t)h(the)e FC(NCO)150
-3373 y FD(User)39 b(Guide)g(b)m(y)f(detailing)j(in-depth)d(data)h
+FD(NCO)f FE(commands)f(on)g(netCDF3-format)j(mo)s(del)d(and)g
+FD(HDF-EOS)h FE(format)f(observ)-5 b(a-)150 3263 y(tional)32
+b(\()p FD(NASA)f(MODIS)g FE(satellite)i(instrumen)m(t\))d(datasets.)42
+b(These)30 b(examples)h(complemen)m(t)h(the)e FD(NCO)150
+3373 y FE(User)39 b(Guide)g(b)m(y)f(detailing)j(in-depth)d(data)h
 (analysis)h(in)e(a)h(frequen)m(tly)g(encoun)m(tered)h(\\real)g(w)m
 (orld")150 3482 y(con)m(text.)51 b(Graphical)34 b(represen)m(tations)g
-(of)f(the)h(results)e(\()p FC(NCL)i FD(scripts)f(a)m(v)-5
+(of)f(the)h(results)e(\()p FD(NCL)i FE(scripts)f(a)m(v)-5
 b(ailable)35 b(up)s(on)d(request\))i(are)150 3592 y(pro)m(vided)29
 b(to)g(illustrate)i(ph)m(ysical)e(meaning)h(of)f(the)g(analysis.)41
-b(Since)29 b FC(NCO)g FD(can)g(pro)s(cess)f(hierarc)m(hical)150
+b(Since)29 b FD(NCO)g FE(can)g(pro)s(cess)f(hierarc)m(hical)150
 3701 y(datasets,)34 b(i.e.,)g(datasets)f(stored)f(with)g(netCDF4)h
 (groups,)f(w)m(e)h(presen)m(t)f(sample)g(scripts)g(illustrating)150
 3811 y(group-based)e(pro)s(cessing)g(as)h(w)m(ell.)150
-4057 y FB(7.1)68 b(Com)l(bine)46 b(Files)150 4216 y FD(Sometimes,)30
+4057 y FC(7.1)68 b(Com)l(bine)46 b(Files)150 4216 y FE(Sometimes,)30
 b(the)e(data)i(of)e(one)h(ensem)m(ble)g(mem)m(b)s(er)f(will)h(b)s(e)f
 (stored)g(in)g(sev)m(eral)i(\014les)f(to)g(reduce)f(single)150
 4326 y(\014le)36 b(size.)57 b(It)36 b(is)g(more)f(con)m(v)m(enien)m(t)j
@@ -29350,16 +30540,16 @@ b(the)e(data)i(of)e(one)h(ensem)m(ble)g(mem)m(b)s(er)f(will)h(b)s(e)f
 4599 y(1.)61 b(Obtain)30 b(n)m(um)m(b)s(er)f(and)h(names)g(\(or)h
 (partial)g(names\))g(of)f(\014les)h(in)f(a)g(directory)199
 4738 y(2.)61 b(Concatenate)43 b(\014les)e(along)h(the)f(record)g
-(dimension)g(\(usually)g(time\))h(using)f Fy(ncrcat)e
-FD(\(see)j(Sec-)330 4847 y(tion)31 b(4.10)h([ncrcat)f(netCDF)g(Record)g
-(Concatenator],)h(page)f(200\).)390 5011 y Fy(#!/bin/bash)283
+(dimension)g(\(usually)g(time\))h(using)f Fz(ncrcat)e
+FE(\(see)j(Sec-)330 4847 y(tion)31 b(4.10)h([ncrcat)f(netCDF)g(Record)g
+(Concatenator],)h(page)f(212\).)390 5011 y Fz(#!/bin/bash)283
 b(#)48 b(shell)e(type)390 5121 y(shopt)g(-s)i(extglob)d(#)j(enable)e
 (extended)f(globbing)390 5340 y(#=======================)o(====)o(====)
 o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o
 (====)o(====)p eop end
-%%Page: 218 224
-TeXDict begin 218 223 bop 150 -116 a FD(218)2565 b(NCO)29
-b(4.4.7)k(User)d(Guide)390 299 y Fy(#)47 b(Some)g(of)g(the)g(models)f
+%%Page: 230 236
+TeXDict begin 230 235 bop 150 -116 a FE(230)2565 b(NCO)29
+b(4.4.8)k(User)d(Guide)390 299 y Fz(#)47 b(Some)g(of)g(the)g(models)f
 (cut)h(one)g(ensemble)f(member)g(into)g(several)g(files,)390
 408 y(#)95 b(which)47 b(include)e(data)i(of)g(different)e(time)i
 (periods.)390 518 y(#)g(We'd)g(better)f(concatenate)f(them)i(into)f
@@ -29410,9 +30600,9 @@ y(#)h(Number)f(of)i(ensemble)d(members)h(in)h(each)g(model)581
 5230 y(echo)g("----------------------)o(---)o(----)o(-")581
 5340 y(echo)g("Model")e(${mdl})h("includes")f(${nsm_nbr})g("ensemble)h
 (member\(s\):")p eop end
-%%Page: 219 225
-TeXDict begin 219 224 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(219)581 299 y Fy(echo)47
+%%Page: 231 237
+TeXDict begin 231 236 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(231)581 299 y Fz(echo)47
 b(${nsm_set}".")581 518 y(for)g(nsm)g(in)g(${nsm_set};)e(do)429
 b(#)47 b(Loop)g(over)f(ensemble)g(members)676 628 y(#)i(Number)e(of)h
 (files)f(in)i(this)e(ensemble)g(member)676 737 y(fl_nbr=$\()g(ls)h
@@ -29444,10 +30634,10 @@ b(\\)772 3367 y(${drc_in}${var[var_id]}_)o(${r)o(lm}_)o(${md)o(l}_)o
 y(rm)i(${drc_in}${var[var_id]})o(_${)o(rlm})o(_${m)o(dl})o(_${x)o(pt[0)
 o(]}_)o(${ns)o(m}_\\)772 3915 y(!\(${yyyymm_str}-${yyyymm)o(_en)o(d}\))
 581 4025 y(done)485 4134 y(done)390 4244 y(done)275 4463
-y FC(CMIP5)23 b FD(mo)s(del)i(data)g(do)m(wnloaded)g(from)g(the)g
-(Earth)f(System)h(Grid)f(F)-8 b(ederation)27 b(\()p FC(ESGF)e
-FD(\()p Fy(http://)150 4573 y(pcmdi9)t(.)s(llnl)t(.)s(gov)t(/)s
-(esgf-web-fe)s(/)s FD(\)\))30 b(do)s(es)35 b(not)h(con)m(tain)g(group)f
+y FD(CMIP5)23 b FE(mo)s(del)i(data)g(do)m(wnloaded)g(from)g(the)g
+(Earth)f(System)h(Grid)f(F)-8 b(ederation)27 b(\()p FD(ESGF)e
+FE(\()p Fz(http://)150 4573 y(pcmdi9)t(.)s(llnl)t(.)s(gov)t(/)s
+(esgf-web-fe)s(/)s FE(\)\))30 b(do)s(es)35 b(not)h(con)m(tain)g(group)f
 (features)h(y)m(et.)57 b(Therefore)35 b(users)150 4682
 y(m)m(ust)29 b(aggregate)j(\015at)e(\014les)f(in)m(to)h(hierarc)m
 (hical)h(ones)e(themselv)m(es.)41 b(The)29 b(follo)m(wing)i(script)e
@@ -29463,12 +30653,12 @@ c(initial)k(conditions)f(to)h(pro)s(duce)d(an)i(ensem)m(ble)g(of)g
 (realizations.)42 b(These)150 5230 y(ensem)m(ble)23 b(mem)m(b)s(ers)f
 (comprise)h(the)g(third)f(lev)m(el)i(of)f(the)g(hierarc)m(h)m(y)-8
 b(.)39 b(The)22 b(script)h(selects)h(t)m(w)m(o)g(v)-5
-b(ariables,)150 5340 y Fz(snc)36 b FD(and)29 b Fz(snd)k
-FD(\(sno)m(w)e(co)m(v)m(er)h(and)e(sno)m(w)g(depth\).)p
+b(ariables,)150 5340 y FA(snc)36 b FE(and)29 b FA(snd)k
+FE(\(sno)m(w)e(co)m(v)m(er)h(and)e(sno)m(w)g(depth\).)p
 eop end
-%%Page: 220 226
-TeXDict begin 220 225 bop 150 -116 a FD(220)2565 b(NCO)29
-b(4.4.7)k(User)d(Guide)390 299 y Fy(#!/bin/bash)390 408
+%%Page: 232 238
+TeXDict begin 232 237 bop 150 -116 a FE(232)2565 b(NCO)29
+b(4.4.8)k(User)d(Guide)390 299 y Fz(#!/bin/bash)390 408
 y(#)390 518 y(#=======================)o(====)o(====)o(===)o(====)o
 (====)o(===)o(====)o(====)o(===)o(====)390 628 y(#)47
 b(Aggregate)f(models)g(to)h(one)g(group)f(file)390 737
@@ -29505,9 +30695,9 @@ b(#)48 b(Loop)f(over)f(experiments)581 5230 y(for)h(k)g(in)g({0..2};)f
 (do)h(#)h(Loop)f(over)f(models)676 5340 y(ncecat)g(-O)i(--glb_mtd_spp)c
 (-G)j(${xpt[j]}/${mdl[k]}/${md)o(l[k])o(}_)42 b(\\)p
 eop end
-%%Page: 221 227
-TeXDict begin 221 226 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(221)772 299 y Fy(${drc_in}${var[i]}_${rlm)o
+%%Page: 233 239
+TeXDict begin 233 238 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(233)772 299 y Fz(${drc_in}${var[i]}_${rlm)o
 (}_$)o({mdl)o([k]})o(_${)o(xpt[)o(j]}_)o(*_$)o({tms)o(}.${)o(flt)o(})42
 b(\\)772 408 y(${drc_out}${var[i]}_${rl)o(m}_)o(${md)o(l[k])o(}_$)o
 ({xpt)o([j]})o(_al)o(l-ns)o(m_${)o(tms)o(}.${)o(flt})676
@@ -29552,9 +30742,9 @@ b(CESM1-BGC)390 4134 y(#)g({)390 4244 y(#)238 b(CESM1-BGC_00)390
 y(#)238 b(})390 4792 y(#)143 b(})390 4902 y(#)47 b(})390
 5011 y(#)g(historical)390 5121 y(#)g({)390 5230 y(#)191
 b(CCSM4)390 5340 y(#)g({)p eop end
-%%Page: 222 228
-TeXDict begin 222 227 bop 150 -116 a FD(222)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(#)286 b(CCSM4_00)390
+%%Page: 234 240
+TeXDict begin 234 239 bop 150 -116 a FE(234)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(#)286 b(CCSM4_00)390
 408 y(#)g({)390 518 y(#)334 b(snc\(time,)45 b(lat,)i(lon\))390
 628 y(#)334 b(snd\(time,)45 b(lat,)i(lon\))390 737 y(#)286
 b(})390 847 y(#)g(CCSM4_01)390 956 y(#)g({)390 1066 y(#)334
@@ -29569,9 +30759,9 @@ y(#)191 b(})390 2271 y(#)g(CESM1-CAM5)390 2381 y(#)g({)390
 b(CESM1-CAM5_01)44 b({)k(...)94 b(})390 2710 y(#)286
 b(CESM1-CAM5_02)44 b({)k(...)94 b(})390 2819 y(#)191
 b(})390 2929 y(#)47 b(})p eop end
-%%Page: 223 229
-TeXDict begin 223 228 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(223)150 299 y FB(7.2)68 b(Global)46
+%%Page: 235 241
+TeXDict begin 235 240 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(235)150 299 y FC(7.2)68 b(Global)46
 b(Distribution)g(of)f(Long-term)g(Av)l(erage)150 3160
 y @beginspecial 0 @llx 12 @lly 613 @urx 757 @ury 2520
 @rwi @setspecial
@@ -51278,34 +52468,34 @@ cleartomark end end pagesave restore
 %%Pages: 1
 
 %%EndDocument
- @endspecial 275 3394 a FD(Figure)30 b(7.1:)42 b(Global)32
+ @endspecial 275 3394 a FE(Figure)30 b(7.1:)42 b(Global)32
 b(Distribution)e(of)h(Long-term)g(Av)m(erage.)150 3589
 y(This)36 b(section)h(illustrates)h(ho)m(w)e(to)i(calculate)g(the)f
 (global)h(distribution)e(of)g(long-term)i(a)m(v)m(erage)h(\(see)150
 3698 y(Figure)34 b(7.1\))h(with)e(either)h(\015at)f(\014les)g(or)h
-(group)f(\014le)g(\()p Fy(http:)r(/)r(/)r(nco)r(.)r(sourceforge)r(.)r
+(group)f(\014le)g(\()p Fz(http:)r(/)r(/)r(nco)r(.)r(sourceforge)r(.)r
 (net)r(/)r(nco)r(.)r(ht)o(ml)r(#)150 3808 y(index-groups)p
-FD(\).)38 b(Key)30 b(steps)g(include:)199 3967 y(1.)61
+FE(\).)38 b(Key)30 b(steps)g(include:)199 3967 y(1.)61
 b(Av)m(erage)38 b(ensem)m(ble)f(mem)m(b)s(ers)e(of)h(eac)m(h)i(mo)s
-(del)e(using)f Fy(nces)g FD(\(see)j(Section)f(4.4)g([nces)f(netCDF)330
-4077 y(Ensem)m(ble)30 b(Statistics],)j(page)e(167\))199
+(del)e(using)f Fz(nces)g FE(\(see)j(Section)f(4.4)g([nces)f(netCDF)330
+4077 y(Ensem)m(ble)30 b(Statistics],)j(page)e(179\))199
 4209 y(2.)61 b(Av)m(erage)31 b(the)f(record)g(dimension)f(using)g
-Fy(ncra)f FD(\(see)i(Section)h(4.9)f([ncra)g(netCDF)g(Record)g(Av)m
-(er-)330 4319 y(ager],)i(page)f(198\))199 4451 y(3.)61
+Fz(ncra)f FE(\(see)i(Section)h(4.9)f([ncra)g(netCDF)g(Record)g(Av)m
+(er-)330 4319 y(ager],)i(page)f(210\))199 4451 y(3.)61
 b(Store)28 b(results)f(of)h(eac)m(h)h(mo)s(del)e(as)h(a)g(distinct)g
 (group)f(in)g(a)h(single)g(output)f(\014le)h(using)f
-Fy(ncecat)f FD(\(see)330 4560 y(Section)31 b(4.10)h([ncrcat)f(netCDF)g
-(Record)g(Concatenator],)h(page)g(200\))g(with)e(the)g
-Fy(--gag)f FD(option)275 4742 y(The)g(\014rst)h(example)h(sho)m(ws)f
+Fz(ncecat)f FE(\(see)330 4560 y(Section)31 b(4.10)h([ncrcat)f(netCDF)g
+(Record)g(Concatenator],)h(page)g(212\))g(with)e(the)g
+Fz(--gag)f FE(option)275 4742 y(The)g(\014rst)h(example)h(sho)m(ws)f
 (ho)m(w)h(to)g(pro)s(cess)f(\015at)g(\014les.)390 4902
-y Fy(#!/bin/bash)390 5121 y(#=======================)o(====)o(====)o
+y Fz(#!/bin/bash)390 5121 y(#=======================)o(====)o(====)o
 (===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o
 (====)o(====)390 5230 y(#)47 b(After)g(cmb_fl.sh)390
 5340 y(#)g(Example:)94 b(Long-term)45 b(average)h(of)h(each)g(model)f
 (globally)p eop end
-%%Page: 224 230
-TeXDict begin 224 229 bop 150 -116 a FD(224)2565 b(NCO)29
-b(4.4.7)k(User)d(Guide)390 299 y Fy(#)390 408 y(#)47
+%%Page: 236 242
+TeXDict begin 236 241 bop 150 -116 a FE(236)2565 b(NCO)29
+b(4.4.8)k(User)d(Guide)390 299 y Fz(#)390 408 y(#)47
 b(Input)g(files)f(like:)390 518 y(#)h(/data/cmip5/snc_LImon_bcc-)o
 (csm1)o(-1_)o(hist)o(oric)o(al_)o(r1i1)o(p1_1)o(850)o(01-2)o(0051)o
 (2.n)o(c)390 628 y(#)390 737 y(#)g(Output)g(files)f(like:)390
@@ -51354,9 +52544,9 @@ b(--nsm_fl)g(-O)h(-4)g(-d)h(time,"1956-01-01)43 b
 5121 y(_all-nsm_195601-200512.nc)41 b(\\)676 5230 y
 (${drc_out}${fld_out[var_id)o(]}$)o({var)o([var)o(_id)o(]}_$)o({mdl)o
 (}.n)o(c)p eop end
-%%Page: 225 231
-TeXDict begin 225 230 bop 150 -116 a FD(Chapter)30 b(7:)41
-b FC(CMIP5)29 b FD(Example)2358 b(225)772 299 y Fy(echo)46
+%%Page: 237 243
+TeXDict begin 237 242 bop 150 -116 a FE(Chapter)30 b(7:)41
+b FD(CMIP5)29 b FE(Example)2358 b(237)772 299 y Fz(echo)46
 b(Model)h(${mdl})f(done!)485 408 y(done)772 628 y(#)h(Remove)f
 (temporary)g(files)772 737 y(rm)h(${drc_out}${fld_out[var_)o(id]})o
 (${va)o(r[v)o(ar_i)o(d]}*)o(his)o(tori)o(cal*)o(.nc)485
@@ -51366,39 +52556,39 @@ b(Model)h(${mdl})f(done!)485 408 y(done)772 628 y(#)h(Remove)f
 (id]})o(${v)o(ar[v)o(ar_i)o(d]})o(_${r)o(lm}_)o(\\)581
 1285 y(all-mdl_${xpt[0]}_all-ns)o(m_cl)o(m.n)o(c)772
 1504 y(echo)46 b(Var)h(${var[var_id]})d(done!)390 1614
-y(done)275 2381 y FD(With)30 b(the)h(use)f(of)h Fy(group)p
-FD(,)e(the)h(ab)s(o)m(v)m(e)i(script)e(will)h(b)s(e)f(shortened)g(to)h
-(ONE)f(LINE)o(.)390 3148 y Fy(#)47 b(Data)g(from)g(cmb_fl_grp.sh)390
+y(done)275 2381 y FE(With)30 b(the)h(use)f(of)h Fz(group)p
+FE(,)e(the)h(ab)s(o)m(v)m(e)i(script)e(will)h(b)s(e)f(shortened)g(to)h
+(ONE)f(LINE)o(.)390 3148 y Fz(#)47 b(Data)g(from)g(cmb_fl_grp.sh)390
 3258 y(#)g(ensemble)f(averaging)390 3367 y(nces)h(-O)g(--nsm_grp)e
 (--nsm_sfx='_avg')e(\\)390 3477 y(sn_LImon_all-mdl_all-xpt)o(_all)o
 (-nsm)o(_20)o(0001)o(-200)o(512)o(.nc)e(\\)485 3587 y
 (sn_LImon_all-mdl_all-xpt_n)o(sm-a)o(vg.)o(nc)275 4354
-y FD(The)27 b(input)f(\014le,)j Fy(sn_LImon_all-mdl_all-xpt)o(_all)o
-(-nsm)o(_20)o(0001)o(-200)o(512)o(.nc)p FD(,)22 b(pro)s(duced)k(b)m(y)
-150 4463 y Fy(cmb_fl_grp.sh)p FD(,)f(includes)j(all)h(the)g(ensem)m
+y FE(The)27 b(input)f(\014le,)j Fz(sn_LImon_all-mdl_all-xpt)o(_all)o
+(-nsm)o(_20)o(0001)o(-200)o(512)o(.nc)p FE(,)22 b(pro)s(duced)k(b)m(y)
+150 4463 y Fz(cmb_fl_grp.sh)p FE(,)f(includes)j(all)h(the)g(ensem)m
 (ble)g(mem)m(b)s(ers)e(as)i(groups.)39 b(The)28 b(option)h(`)p
-Fy(--nsm_grp)p FD(')d(de-)150 4573 y(notes)c(that)g(w)m(e)g(are)g
-(using)e(group)h(ensem)m(bles)h(mo)s(de)f(\()p Fy
-(http://nco.sf.net/nco.html)o(#ns)o(m_gr)o(p)p FD(\))16
-b(of)150 4682 y Fy(nces)p FD(,)25 b(instead)g(of)g(\014le)g(ensem)m
-(bles)g(mo)s(de)g(\()p Fy(http://nco.sf.net/nco.ht)o(ml#n)o(sm_f)o(l)p
-FD(\),)20 b(`)p Fy(--nsm_fl)p FD('.)150 4792 y(The)36
-b(option)h(`)p Fy(--nsm_sfx='_avg')p FD(')32 b(instructs)37
-b Fy(nces)e FD(to)i(store)g(the)g(output)f(as)h(a)g(new)f(c)m(hild)g
-(group)150 4902 y Fy(/[model]/[model)26 b(name]_avg/var)p
-FD(;)f(otherwise,)j(the)g(output)e(will)i(b)s(e)e(stored)h(directly)h
-(in)f(the)g(par-)150 5011 y(en)m(t)34 b(group)f Fy(/[model]/var)p
-FD(.)47 b(In)33 b(the)h(\014nal)f(output)g(\014le,)i
-Fy(sn_LImon_all-mdl_all-xpt)o(_nsm)o(-avg)o(_)150 5121
-y(tm-avg.nc)p FD(,)42 b(sub-groups)f(with)g(a)i(su\016x)e(of)h(`a)m
+Fz(--nsm_grp)p FE(')d(de-)150 4573 y(notes)c(that)g(w)m(e)g(are)g
+(using)e(group)h(ensem)m(bles)h(mo)s(de)f(\()p Fz
+(http://nco.sf.net/nco.html)o(#ns)o(m_gr)o(p)p FE(\))16
+b(of)150 4682 y Fz(nces)p FE(,)25 b(instead)g(of)g(\014le)g(ensem)m
+(bles)g(mo)s(de)g(\()p Fz(http://nco.sf.net/nco.ht)o(ml#n)o(sm_f)o(l)p
+FE(\),)20 b(`)p Fz(--nsm_fl)p FE('.)150 4792 y(The)36
+b(option)h(`)p Fz(--nsm_sfx='_avg')p FE(')32 b(instructs)37
+b Fz(nces)e FE(to)i(store)g(the)g(output)f(as)h(a)g(new)f(c)m(hild)g
+(group)150 4902 y Fz(/[model]/[model)26 b(name]_avg/var)p
+FE(;)f(otherwise,)j(the)g(output)e(will)i(b)s(e)e(stored)h(directly)h
+(in)f(the)g(par-)150 5011 y(en)m(t)34 b(group)f Fz(/[model]/var)p
+FE(.)47 b(In)33 b(the)h(\014nal)f(output)g(\014le,)i
+Fz(sn_LImon_all-mdl_all-xpt)o(_nsm)o(-avg)o(_)150 5121
+y(tm-avg.nc)p FE(,)42 b(sub-groups)f(with)g(a)i(su\016x)e(of)h(`a)m
 (vg')h(are)f(the)h(long-term)f(a)m(v)m(erages)j(of)d(eac)m(h)h(mo)s
 (del.)150 5230 y(One)30 b(thing)g(to)g(notice)i(is)e(that)g(for)g(no)m
 (w,)g(ensem)m(bles)h(with)e(only)h(one)h(ensem)m(ble)f(mem)m(b)s(er)g
 (will)g(b)s(e)f(left)150 5340 y(un)m(touc)m(hed.)p eop
 end
-%%Page: 226 232
-TeXDict begin 226 231 bop 150 -116 a FD(226)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y FB(7.3)68 b(Ann)l(ual)45
+%%Page: 238 244
+TeXDict begin 238 243 bop 150 -116 a FE(238)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(7.3)68 b(Ann)l(ual)45
 b(Av)l(erage)h(o)l(v)l(er)f(Regions)150 3003 y @beginspecial
 22 @llx 118 @lly 589 @urx 685 @ury 2880 @rwi @setspecial
 %%BeginDocument: xmp/fgr2.eps
@@ -55972,46 +57162,46 @@ cleartomark end end pagesave restore
 %%Pages: 1
 
 %%EndDocument
- @endspecial 275 3237 a FD(Figure)30 b(7.2:)42 b(Ann)m(ual)30
+ @endspecial 275 3237 a FE(Figure)30 b(7.2:)42 b(Ann)m(ual)30
 b(Av)m(erage)j(o)m(v)m(er)e(Regions.)150 3436 y(This)i(section)j
 (illustrates)f(ho)m(w)f(to)h(calculate)h(the)f(ann)m(ual)f(a)m(v)m
 (erage)j(o)m(v)m(er)e(sp)s(eci\014c)f(regions)h(\(see)g(Fig-)150
 3546 y(ure)30 b(7.2\).)42 b(Key)30 b(steps)h(include:)199
-3710 y(1.)61 b(Spatial)41 b(a)m(v)m(erage)i(using)d Fy(ncap2)f
-FD(\(see)j(Section)f(4.1)h([ncap2)f(netCDF)g(Arithmetic)g(Pro)s
-(cessor],)330 3819 y(page)31 b(104\))h(and)e Fy(ncwa)f
-FD(\(see)i(Section)h(4.12)g([ncw)m(a)f(netCDF)g(W)-8
-b(eigh)m(ted)32 b(Av)m(erager],)g(page)g(206\);)199 3958
-y(2.)61 b(Change)27 b(dimension)g(order)f(using)h Fy(ncpdq)f
-FD(\(see)i(Section)g(4.8)g([ncp)s(dq)e(netCDF)h(P)m(erm)m(ute)h(Dimen-)
-330 4068 y(sions)i(Quic)m(kly],)i(page)f(190\);)199 4207
-y(3.)61 b(Ann)m(ual)25 b(a)m(v)m(erage)i(using)e Fy(ncra)e
-FD(\(see)j(Section)g(4.9)g([ncra)f(netCDF)g(Record)g(Av)m(erager],)j
-(page)e(198\);)199 4346 y(4.)61 b(Anomaly)40 b(from)g(long-term)h(a)m
-(v)m(erage)h(using)e Fy(ncbo)e FD(\(see)j(Section)g(4.3)g([ncb)s(o)e
-(netCDF)i(Binary)330 4455 y(Op)s(erator],)30 b(page)i(162\);)199
-4594 y(5.)61 b(Standard)51 b(deviation)i(using)e Fy(ncbo)g
-FD(\(see)i(Section)g(4.3)g([ncb)s(o)e(netCDF)i(Binary)f(Op)s(erator],)
-330 4704 y(page)31 b(162\))h(and)e Fy(nces)f FD(\(see)i(Section)h(4.4)f
-([nces)g(netCDF)g(Ensem)m(ble)f(Statistics],)j(page)e(167\);)199
+3710 y(1.)61 b(Spatial)41 b(a)m(v)m(erage)i(using)d Fz(ncap2)f
+FE(\(see)j(Section)f(4.1)h([ncap2)f(netCDF)g(Arithmetic)g(Pro)s
+(cessor],)330 3819 y(page)31 b(116\))h(and)e Fz(ncwa)f
+FE(\(see)i(Section)h(4.12)g([ncw)m(a)f(netCDF)g(W)-8
+b(eigh)m(ted)32 b(Av)m(erager],)g(page)g(218\);)199 3958
+y(2.)61 b(Change)27 b(dimension)g(order)f(using)h Fz(ncpdq)f
+FE(\(see)i(Section)g(4.8)g([ncp)s(dq)e(netCDF)h(P)m(erm)m(ute)h(Dimen-)
+330 4068 y(sions)i(Quic)m(kly],)i(page)f(202\);)199 4207
+y(3.)61 b(Ann)m(ual)25 b(a)m(v)m(erage)i(using)e Fz(ncra)e
+FE(\(see)j(Section)g(4.9)g([ncra)f(netCDF)g(Record)g(Av)m(erager],)j
+(page)e(210\);)199 4346 y(4.)61 b(Anomaly)40 b(from)g(long-term)h(a)m
+(v)m(erage)h(using)e Fz(ncbo)e FE(\(see)j(Section)g(4.3)g([ncb)s(o)e
+(netCDF)i(Binary)330 4455 y(Op)s(erator],)30 b(page)i(174\);)199
+4594 y(5.)61 b(Standard)51 b(deviation)i(using)e Fz(ncbo)g
+FE(\(see)i(Section)g(4.3)g([ncb)s(o)e(netCDF)i(Binary)f(Op)s(erator],)
+330 4704 y(page)31 b(174\))h(and)e Fz(nces)f FE(\(see)i(Section)h(4.4)f
+([nces)g(netCDF)g(Ensem)m(ble)f(Statistics],)j(page)e(179\);)199
 4843 y(6.)61 b(Rename)48 b(v)-5 b(ariables)49 b(using)f
-Fy(ncrename)e FD(\(see)j(Section)g(4.11)g([ncrename)g(netCDF)f
-(Renamer],)330 4953 y(page)31 b(202\);)199 5091 y(7.)61
-b(Edit)36 b(attributions)g(using)f Fy(ncatted)f FD(\(see)i(Section)h
+Fz(ncrename)e FE(\(see)j(Section)g(4.11)g([ncrename)g(netCDF)f
+(Renamer],)330 4953 y(page)31 b(214\);)199 5091 y(7.)61
+b(Edit)36 b(attributions)g(using)f Fz(ncatted)f FE(\(see)i(Section)h
 (4.2)g([ncatted)f(netCDF)h(A)m(ttribute)f(Editor],)330
-5201 y(page)31 b(156\);)199 5340 y(8.)61 b(Linear)33
-b(regression)h(using)f Fy(ncap2)f FD(\(see)i(Section)h(4.1)f([ncap2)g
+5201 y(page)31 b(168\);)199 5340 y(8.)61 b(Linear)33
+b(regression)h(using)f Fz(ncap2)f FE(\(see)i(Section)h(4.1)f([ncap2)g
 (netCDF)g(Arithmetic)g(Pro)s(cessor],)p eop end
-%%Page: 227 233
-TeXDict begin 227 232 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(227)330 299 y(page)31 b(104\);)199
-442 y(9.)61 b(Use)32 b Fy(ncap2)d FD(\(see)k(Section)f(4.1)g([ncap2)g
-(netCDF)g(Arithmetic)g(Pro)s(cessor],)g(page)g(104\))h(with)e(nco)330
-552 y(script)f(\014le)h(\(i.e.,)h Fy(.nco)d FD(\014le\);)154
+%%Page: 239 245
+TeXDict begin 239 244 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(239)330 299 y(page)31 b(116\);)199
+442 y(9.)61 b(Use)32 b Fz(ncap2)d FE(\(see)k(Section)f(4.1)g([ncap2)g
+(netCDF)g(Arithmetic)g(Pro)s(cessor],)g(page)g(116\))h(with)e(nco)330
+552 y(script)f(\014le)h(\(i.e.,)h Fz(.nco)d FE(\014le\);)154
 695 y(10.)61 b(Mo)m(v)m(e)54 b(v)-5 b(ariables)53 b(around)f(using)g
-Fy(ncks)f FD(\(see)i(Section)g(4.7)h([nc)m(ks)e(netCDF)h(Kitc)m(hen)g
-(Sink],)330 805 y(page)31 b(176\).)275 1007 y Fq(Flat)g(\014les)f
-(example)390 1176 y Fy(#!/bin/bash)390 1285 y(#)47 b(Includes)f
+Fz(ncks)f FE(\(see)i(Section)g(4.7)h([nc)m(ks)e(netCDF)h(Kitc)m(hen)g
+(Sink],)330 805 y(page)31 b(188\).)275 1007 y Fr(Flat)g(\014les)f
+(example)390 1176 y Fz(#!/bin/bash)390 1285 y(#)47 b(Includes)f
 (gsl_rgr.nco)390 1504 y(#=======================)o(====)o(====)o(===)o
 (====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o
 (====)390 1614 y(#)h(After)g(cmb_fl.sh)390 1724 y(#)g(Example:)94
@@ -56050,9 +57240,9 @@ b(sort;)47 b(uniq)f([remove)g(duplicates];)f(awk)i([print]\))485
 ({xpt)o([0])o(}_*.)o(nc)42 b(|)47 b(\\)581 5230 y(cut)g(-d)g('_')g(-f)g
 (3)h(|)f(sort)g(|)g(uniq)g(-c)g(|)g(awk)g('{print)f($2}')h(\))p
 eop end
-%%Page: 228 234
-TeXDict begin 228 233 bop 150 -116 a FD(228)2565 b(NCO)29
-b(4.4.7)k(User)d(Guide)485 299 y Fy(for)47 b(mdl)g(in)g(${mdl_set};)e
+%%Page: 240 246
+TeXDict begin 240 245 bop 150 -116 a FE(240)2565 b(NCO)29
+b(4.4.8)k(User)d(Guide)485 299 y Fz(for)47 b(mdl)g(in)g(${mdl_set};)e
 (do)1288 b(#)48 b(Loop)e(over)h(models)772 408 y(#)g(Loop)g(over)g
 (ensemble)e(members)581 518 y(for)i(fn)g(in)g($\()g(ls)h
 (${drc_in}${var[var_id]})o(_${)o(rlm})o(_${m)o(dl})o(_${x)o(pt[0)o(]}_)
@@ -56096,9 +57286,9 @@ o(d]}$)o({pf)o(x}_y)o(rly.)o(nc)c(\\)772 4792 y
 5011 y(done)581 5230 y(rm)47 b(${drc_out}${fld_out[var_i)o(d]})o(${va)o
 (r[va)o(r_i)o(d]}_)o(${rl)o(m}_)o(${md)o(l}_$)o({xp)o(t[0])o(}_*_)o
 (yrl)o(y.nc)p eop end
-%%Page: 229 235
-TeXDict begin 229 234 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(229)581 299 y Fy(#)47 b(Average)f(over)h
+%%Page: 241 247
+TeXDict begin 241 246 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(241)581 299 y Fz(#)47 b(Average)f(over)h
 (all)g(the)g(ensemble)e(members)581 408 y(ncea)i(-O)g(-4)g
 (${drc_out}${fld_out[var_)o(id]})o(${v)o(ar[v)o(ar_i)o(d]})o(_\\)676
 518 y(${rlm}_${mdl}_${xpt[0]}_*_)o(anm)o(.nc)41 b
@@ -56149,9 +57339,9 @@ o(nm.)o(nc)e(${drc_out}${fld_out[var)o(_id])o(}${)o(var[)o(var_)o(id])o
 5230 y(ncks)h(-O)g(-v)g(c0,c1,pval,${var[var_id])o(},gw)41
 b(\\)676 5340 y(${drc_out}${fld_out[var_id)o(]}$)o({var)o([var)o(_id)o
 (]}_$)o({rlm)o(}_$)o({mdl)o(}_\\)p eop end
-%%Page: 230 236
-TeXDict begin 230 235 bop 150 -116 a FD(230)2565 b(NCO)29
-b(4.4.7)k(User)d(Guide)676 299 y Fy(${xpt[0]}_all-nsm_anm_rgr.)o(nc)41
+%%Page: 242 248
+TeXDict begin 242 247 bop 150 -116 a FE(242)2565 b(NCO)29
+b(4.4.8)k(User)d(Guide)676 299 y Fz(${xpt[0]}_all-nsm_anm_rgr.)o(nc)41
 b(\\)676 408 y(${drc_out}${fld_out[var_id)o(]}$)o({var)o([var)o(_id)o
 (]}_$)o({mdl)o(}.n)o(c)581 518 y(#-----------------------)o(----)o(---)
 o(----)o(----)o(---)o(----)o(----)o(---)o(----)o(----)581
@@ -56168,8 +57358,8 @@ b(\\)676 1176 y(${drc_out}${fld_out[var_id)o(]}$)o({var)o([var)o(_id)o
 (r[va)o(r_i)o(d]}_)o(*.nc)485 2052 y(${drc_out}${fld_out[var_id)o(]}${)
 o(var)o([var)o(_id])o(}_\\)581 2162 y(${rlm}_all-mdl_${xpt[0]})o(_all)o
 (-ns)o(m_an)o(nual)o(.nc)485 2381 y(echo)h(Var)g(${var[var_id]})d
-(done!)390 2491 y(done)275 2655 y Fq(gsl)p 387 2655 28
-5 v 40 w(rgr.nco)390 2819 y Fy(//)j(Linear)f(Regression)390
+(done!)390 2491 y(done)275 2655 y Fr(gsl)p 387 2655 28
+5 v 40 w(rgr.nco)390 2819 y Fz(//)j(Linear)f(Regression)390
 2929 y(//)h(Called)f(by)h(ann_avg.sh)390 3039 y(//)g(Caution:)93
 b(make)47 b(sure)g(the)g(variable)e(name)i(is)390 3148
 y(//)95 b(in)47 b(agreement)e(with)i(the)g(main)g(script)f(\(now)g(is)h
@@ -56193,9 +57383,9 @@ o(;)42 b(//)47 b(Covariance)e(function)772 5121 y(sdv\(rgn_id\))g(=)i
 (gsl_stats_sd\(snd\(:,rgn_i)o(d\),)41 b(\\)581 5230 y(1,)47
 b($time.size\);)140 b(//)47 b(Standard)f(deviation)f(function)390
 5340 y(})p eop end
-%%Page: 231 237
-TeXDict begin 231 236 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(231)390 408 y Fy(//)47 b(P)h
+%%Page: 243 249
+TeXDict begin 243 248 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(243)390 408 y Fz(//)47 b(P)h
 (value------------------)o(----)o(---)o(----)o(----)o(---)o(----)o
 (----)o(---)o(----)o(----)o(---)o(--)390 518 y(*time_sdv)d(=)j
 (gsl_stats_sd\(time,)43 b(1,)k($time.size\);)390 628
@@ -56214,15 +57404,15 @@ y(//)g(Using)g(RAM)f(variables,)f(declared)h(by)h(*,)g(will)g(shorten)f
 i(ram_write\(\))390 1833 y(//----------------------)o(----)o(----)o
 (---)o(----)o(----)o(---)o(----)o(----)o(---)o(----)o(-)390
 1943 y(ram_write\(c0\);)390 2052 y(ram_write\(c1\);)275
-2217 y FD(With)31 b(the)h Fy(group)e FD(feature,)j(all)f(the)g(lo)s
+2217 y FE(With)31 b(the)h Fz(group)e FE(feature,)j(all)f(the)g(lo)s
 (ops)f(o)m(v)m(er)i(exp)s(erimen)m(ts,)f(mo)s(dels)f(and)g(ensem)m(ble)
 h(mem)m(b)s(ers)150 2326 y(can)i(b)s(e)f(omitted.)53
 b(As)34 b(w)m(e)g(are)g(w)m(orking)g(on)g(implemen)m(ting)h
-Fy(group)d FD(feature)j(in)e(all)i FC(NCO)f FD(op)s(erators,)150
+Fz(group)d FE(feature)j(in)e(all)i FD(NCO)f FE(op)s(erators,)150
 2436 y(some)d(functions)f(\(e.g.,)i(regression)f(and)f(standard)g
 (deviation)i(o)m(v)m(er)f(ensem)m(ble)g(mem)m(b)s(ers\))g(ma)m(y)g(ha)m
 (v)m(e)150 2545 y(to)g(w)m(ait)h(un)m(til)e(the)h(new)f(v)m(ersions.)
-390 2710 y Fy(#!/bin/bash)390 2819 y(#)390 2929 y
+390 2710 y Fz(#!/bin/bash)390 2819 y(#)390 2929 y
 (#=======================)o(====)o(====)o(===)o(====)o(====)o(===)o
 (====)o(====)o(===)o(====)390 3039 y(#)47 b(Group)g(data)f(output)h(by)
 g(cmb_fl_grp.sh)390 3148 y(#)g(Annual)g(trend)f(of)h(each)g(model)f
@@ -56243,9 +57433,9 @@ b(bash)47 b(ann_avg_grp.sh)390 4244 y(#=======================)o(====)o
 5121 y(#)g(Greenland)390 5230 y(ncwa)g(-O)g(-w)g(gw)g(-d)g
 (lat,60.0,75.0)e(-d)i(lon,300.0,340.0)c(-a)48 b(lat,lon)d(\\)485
 5340 y(${drc}${pfx}_${tms}.nc)d(\\)p eop end
-%%Page: 232 238
-TeXDict begin 232 237 bop 150 -116 a FD(232)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)485 299 y Fy(${drc}${pfx}_${tms}_grl.nc)390
+%%Page: 244 250
+TeXDict begin 244 249 bop 150 -116 a FE(244)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)485 299 y Fz(${drc}${pfx}_${tms}_grl.nc)390
 408 y(#)47 b(Tibet)390 518 y(ncwa)g(-O)g(-w)g(gw)g(-d)g(lat,30.0,40.0)e
 (-d)i(lon,80.0,100.0)d(-a)j(lat,lon)f(\\)485 628 y
 (${drc}${pfx}_${tms}.nc)c(\\)485 737 y(${drc}${pfx}_${tms}_tbt.nc)390
@@ -56274,9 +57464,9 @@ b(inter-annual)44 b(variability)390 3915 y(#)j(RMS)g(of)h(the)e(above)h
 (anomaly)390 4025 y(ncra)g(-O)g(-y)g(rmssdn)f
 (${drc}${pfx}_${tms}_rgn2_)o(anm)o(.nc)41 b(\\)485 4134
 y(${drc}${pfx}_${tms}_rgn2_s)o(tdde)o(v.n)o(c)p eop end
-%%Page: 233 239
-TeXDict begin 233 238 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(233)150 299 y FB(7.4)68 b(Mon)l(thly)45
+%%Page: 245 251
+TeXDict begin 245 250 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(245)150 299 y FC(7.4)68 b(Mon)l(thly)45
 b(Cycle)150 2540 y @beginspecial 20 @llx 0 @lly 771 @urx
 613 @ury 2880 @rwi @setspecial
 %%BeginDocument: xmp/fgr3.eps
@@ -57743,7 +58933,7 @@ cleartomark end end pagesave restore
 %%Pages: 1
 
 %%EndDocument
- @endspecial 275 2774 a FD(Figure)30 b(7.3:)42 b(Mon)m(thly)31
+ @endspecial 275 2774 a FE(Figure)30 b(7.3:)42 b(Mon)m(thly)31
 b(Cycle.)150 2995 y(This)g(script)g(illustrates)h(ho)m(w)g(to)g
 (calculate)i(the)d(mon)m(thly)h(anomaly)g(from)f(the)g(ann)m(ual)h(a)m
 (v)m(erage)i(\(see)150 3105 y(Figure)g(7.3\).)50 b(In)33
@@ -57753,7 +58943,7 @@ b(order)g(to)h(k)m(eep)f(only)h(the)f(mon)m(thly)h(cycle,)h(w)m(e)f
 (instead)e(of)h(subtracting)g(the)f(long-term)i(a)m(v)m(erage.)49
 b(This)32 b(is)150 3324 y(a)f(little)h(more)e(complicated)j(in)d(co)s
 (ding)g(since)h(w)m(e)g(need)f(to)h(lo)s(op)f(o)m(v)m(er)i(y)m(ears.)
-275 3510 y Fq(Flat)f(\014les)f(example)390 3696 y Fy(#!/bin/bash)390
+275 3510 y Fr(Flat)f(\014les)f(example)390 3696 y Fz(#!/bin/bash)390
 3915 y(#=======================)o(====)o(====)o(===)o(====)o(====)o
 (===)o(====)o(====)o(===)o(====)390 4025 y(#)47 b(After)g(cmb_fl.sh)390
 4134 y(#)g(Example:)94 b(Monthly)46 b(cycle)g(of)h(each)g(model)f(in)h
@@ -57768,9 +58958,9 @@ y(#)390 4682 y(#)g(Output)g(files:)390 4792 y(#)g
 b(Execute)f(this)h(script:)93 b(bash)47 b(mcc.sh)390
 5340 y(#=======================)o(====)o(====)o(===)o(====)o(====)o
 (===)o(====)o(====)o(===)o(====)p eop end
-%%Page: 234 240
-TeXDict begin 234 239 bop 150 -116 a FD(234)2565 b(NCO)29
-b(4.4.7)k(User)d(Guide)390 408 y Fy(#-----------------------)o(----)o
+%%Page: 246 252
+TeXDict begin 246 251 bop 150 -116 a FE(246)2565 b(NCO)29
+b(4.4.8)k(User)d(Guide)390 408 y Fz(#-----------------------)o(----)o
 (----)o(---)o(----)o(----)o(---)o(----)o(----)o(---)o(----)390
 518 y(#)47 b(Parameters)390 628 y(drc_in='/home/wenshanw/d)o(ata/)o
 (cmip)o(5/')614 b(#)47 b(Directory)f(of)h(input)f(files)390
@@ -57823,9 +59013,9 @@ e(23:59:9.9")k(\\)963 5230 y(${drc_out}${fld_out[var)o(_id])o(}${v)o
 (ar[)o(var_)o(id]})o(_${)o(rlm})o(_${m)o(dl})o(_\\)963
 5340 y(${xpt[0]}_all-nsm_GN.nc)c(${drc_out}${fld_out[var_i)o(d]}$)o
 ({va)o(r[va)o(r_id)o(]}_)o(\\)p eop end
-%%Page: 235 241
-TeXDict begin 235 240 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(235)963 299 y Fy(${rlm}_${mdl}_${xpt[0]})o
+%%Page: 247 253
+TeXDict begin 247 252 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(247)963 299 y Fz(${rlm}_${mdl}_${xpt[0]})o
 (_all)o(-nsm)o(_GN)o(_${y)o(r}.n)o(c)772 408 y(fi)772
 628 y(#)47 b(The)g(specific)f(month)772 737 y(ncks)g(-O)i(-d)f
 (time,"${yr}-${mm}-01)42 b(00:00:0.0","${yr}-${mm}-3)o(1)g(23:59:9.9")j
@@ -57865,14 +59055,14 @@ y(#)h(Store)e(models)g(as)i(groups)e(in)h(the)g(output)f(file)485
 o(ar_i)o(d]})o(_${r)o(lm}_)o(all)o(-mdl)o(_\\)581 4573
 y(${xpt[0]}_all-nsm_GN_mth)o(ly-a)o(nm.)o(nc)485 4792
 y(echo)47 b(Var)g(${var[var_id]})d(done!)390 4902 y(done)275
-5066 y FD(Using)49 b Fy(group)f FD(feature)i(and)f(h)m(yp)s(erslabs)g
-(\()p Fy(http:)15 b(/)g(/)d(nco)j(.)d(sourceforge)g(.)g(net)j(/)d(nco)j
-(.)d(html)i(#)150 5176 y(Hyperslabs)p FD(\))28 b(of)i
-Fy(ncbo)p FD(,)g(the)g(script)h(will)f(b)s(e)g(shortened.)390
-5340 y Fy(#!/bin/bash)p eop end
-%%Page: 236 242
-TeXDict begin 236 241 bop 150 -116 a FD(236)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 408 y Fy(#=======================)o(====)
+5066 y FE(Using)49 b Fz(group)f FE(feature)i(and)f(h)m(yp)s(erslabs)g
+(\()p Fz(http:)15 b(/)g(/)d(nco)j(.)d(sourceforge)g(.)g(net)j(/)d(nco)j
+(.)d(html)i(#)150 5176 y(Hyperslabs)p FE(\))28 b(of)i
+Fz(ncbo)p FE(,)g(the)g(script)h(will)f(b)s(e)g(shortened.)390
+5340 y Fz(#!/bin/bash)p eop end
+%%Page: 248 254
+TeXDict begin 248 253 bop 150 -116 a FE(248)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 408 y Fz(#=======================)o(====)
 o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)390
 518 y(#)47 b(Monthly)f(cycle)h(of)g(each)f(ensemble)g(member)g(in)h
 (Greenland)390 628 y(#)390 737 y(#)g(Input)g(file)f(from)h
@@ -57905,22 +59095,22 @@ b(#)48 b(Change)e(to)h(2-digit)f(format)485 4134 y(ncra)h(-O)g(-d)g
 y(done)390 4463 y(#)47 b(Concatenate)e(12)i(months)f(together)390
 4573 y(ncrcat)g(-O)h(${drc}${pfx}_grl_??_anm.n)o(c)42
 b(\\)485 4682 y(${drc}${pfx}_grl_mth_anm.n)o(c)150 4961
-y FB(7.5)68 b(Regrid)46 b Fu(MODIS)f FB(Data)150 5121
-y FD(In)26 b(order)g(to)i(compare)f(the)g(results)g(b)s(et)m(w)m(een)g
-FC(MODIS)g FD(and)f FC(CMIP5)g FD(mo)s(dels,)i(one)f(usually)f(regrids)
+y FC(7.5)68 b(Regrid)46 b Fv(MODIS)f FC(Data)150 5121
+y FE(In)26 b(order)g(to)i(compare)f(the)g(results)g(b)s(et)m(w)m(een)g
+FD(MODIS)g FE(and)f FD(CMIP5)g FE(mo)s(dels,)i(one)f(usually)f(regrids)
 h(one)150 5230 y(or)34 b(b)s(oth)f(datasets)h(so)g(that)h(the)f
 (spatial)g(resolutions)g(matc)m(h.)52 b(Here,)35 b(the)f(script)g
-(illustrates)g(ho)m(w)g(to)150 5340 y(regrid)c FC(MODIS)h
-FD(data.)41 b(Key)30 b(steps)h(include:)p eop end
-%%Page: 237 243
-TeXDict begin 237 242 bop 150 -116 a FD(Chapter)30 b(7:)41
-b FC(CMIP5)29 b FD(Example)2358 b(237)199 299 y(1.)61
+(illustrates)g(ho)m(w)g(to)150 5340 y(regrid)c FD(MODIS)h
+FE(data.)41 b(Key)30 b(steps)h(include:)p eop end
+%%Page: 249 255
+TeXDict begin 249 254 bop 150 -116 a FE(Chapter)30 b(7:)41
+b FD(CMIP5)29 b FE(Example)2358 b(249)199 299 y(1.)61
 b(Regrid)22 b(using)f(bilinear)g(in)m(terp)s(olation)i(\(see)f(Section)
-h(4.1.18)g([Bilinear)g(in)m(terp)s(olation],)i(page)d(132\))199
+h(4.1.18)g([Bilinear)g(in)m(terp)s(olation],)i(page)d(144\))199
 451 y(2.)61 b(Rename)27 b(v)-5 b(ariables,)28 b(dimensions)d(and)h
-(attributions)h(using)e Fy(ncrename)f FD(\(see)k(Section)f(4.11)h
-([ncre-)330 560 y(name)i(netCDF)h(Renamer],)g(page)g(202\).)275
-780 y Fq(Main)f(Script)390 956 y Fy(#!/bin/bash)390 1066
+(attributions)h(using)e Fz(ncrename)f FE(\(see)k(Section)f(4.11)h
+([ncre-)330 560 y(name)i(netCDF)h(Renamer],)g(page)g(214\).)275
+780 y Fr(Main)f(Script)390 956 y Fz(#!/bin/bash)390 1066
 y(#)47 b(include)f(bi_interp.nco)390 1285 y(#=======================)o
 (====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o
 (====)o(===)o(====)o(====)390 1395 y(#)h(Example)f(for)390
@@ -57963,10 +59153,10 @@ f(-v)h(latn,lat)e(-v)j(lonn,lon)d(\\)581 4902 y(-v)i
 (missing_value,_FillValue)41 b(\\)581 5011 y(${drc_in}${fld_out}${var)o
 (}.${)o(sfx)o(}.re)o(grid)o(.nc)485 5230 y(echo)47 b($sfx)g(done.)390
 5340 y(done)p eop end
-%%Page: 238 244
-TeXDict begin 238 243 bop 150 -116 a FD(238)2565 b(NCO)29
-b(4.4.7)k(User)d(Guide)275 299 y Fq(bi)p 357 299 28 5
-v 39 w(in)m(terp.nco)390 518 y Fy(//)47 b(Bilinear)f(interpolation)390
+%%Page: 250 256
+TeXDict begin 250 255 bop 150 -116 a FE(250)2565 b(NCO)29
+b(4.4.8)k(User)d(Guide)275 299 y Fr(bi)p 357 299 28 5
+v 39 w(in)m(terp.nco)390 518 y Fz(//)47 b(Bilinear)f(interpolation)390
 628 y(//)h(Included)f(by)h(rgr.sh)390 737 y(//)g(Online:)94
 b(http://nco.sourceforge.)o(net/)o(nco.)o(htm)o(l#Re)o(grid)o(-MO)o
 (DIS-)o(Data)390 956 y(defdim\("latn",192\);)615 b(//)47
@@ -58034,9 +59224,9 @@ y(-76.25,-75,-73.75,-72.5,-7)o(1.25)o(,-7)o(0,-6)o(8.75)o(,-6)o(7.5,)o
 (-66.)o(25,)o(-65,)o(-63.)o(75,)o(\\)485 5340 y
 (-62.5,-61.25,-60,-58.75,-5)o(7.5,)o(-56)o(.25,)o(-55,)o(-53)o(.75,)o
 (-52.)o(5,-)o(51.2)o(5,-5)o(0,\\)p eop end
-%%Page: 239 245
-TeXDict begin 239 244 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(239)485 299 y Fy
+%%Page: 251 257
+TeXDict begin 251 256 bop 150 -116 a FE(Chapter)30 b(7:)41
+b(CMIP5)30 b(Example)2333 b(251)485 299 y Fz
 (-48.75,-47.5,-46.25,-45,-4)o(3.75)o(,-4)o(2.5,)o(-41.)o(25,)o(-40,)o
 (-38.)o(75,)o(-37.)o(5,\\)485 408 y(-36.25,-35,-33.75,-32.5,-3)o(1.25)o
 (,-3)o(0,-2)o(8.75)o(,-2)o(7.5,)o(-26.)o(25,)o(-25,)o(-23.)o(75,)o(\\)
@@ -58084,16 +59274,16 @@ b(=)47 b("Global_Albedo_BSA_shortwa)o(ve";)390 3915 y
 4134 y(wsa_sw_less at missing_valu)o(e)42 b(=)47 b(32767.0;)390
 4244 y(wsa_sw_less at units)c(=)48 b("albedo,)d(no)i(units";)390
 4354 y(wsa_sw_less at long_name)42 b(=)47 b("Global_Albedo_WSA_shortwa)o
-(ve";)150 4583 y FB(7.6)68 b(Add)44 b(Co)t(ordinates)i(to)f
-Fu(MODIS)h FB(Data)150 4742 y Fq(Main)31 b(Script)390
-4902 y Fy(#!/bin/bash)390 5121 y(#=======================)o(====)o
+(ve";)150 4583 y FC(7.6)68 b(Add)44 b(Co)t(ordinates)i(to)f
+Fv(MODIS)h FC(Data)150 4742 y Fr(Main)31 b(Script)390
+4902 y Fz(#!/bin/bash)390 5121 y(#=======================)o(====)o
 (====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)390
 5230 y(#)47 b(Example)f(for)390 5340 y(#)334 b(-)47 b(regrid)f(\(using)
 g(bi_interp.nco\):)92 b(the)47 b(spatial)f(resolution)f(of)i(MODIS)f
 (data)p eop end
-%%Page: 240 246
-TeXDict begin 240 245 bop 150 -116 a FD(240)2565 b(NCO)29
-b(4.4.7)k(User)d(Guide)390 299 y Fy(#)716 b(is)47 b(much)f(finer)h
+%%Page: 252 258
+TeXDict begin 252 257 bop 150 -116 a FE(252)2565 b(NCO)29
+b(4.4.8)k(User)d(Guide)390 299 y Fz(#)716 b(is)47 b(much)f(finer)h
 (than)f(those)h(of)g(CMIP5)f(models.)94 b(In)47 b(order)f(to)i(compare)
 390 408 y(#)716 b(the)47 b(two,)f(we)h(can)g(regrid)f(MODIS)h(data)f
 (to)i(comform)d(to)j(CMIP5.)390 518 y(#)334 b(-)47 b(add)g(coordinates)
@@ -58126,30 +59316,30 @@ y(${drc_in}${fld_in}${var})o(.${s)o(fx})o(.nc)41 b
 y(#)48 b(Add)f(coordinates)485 3367 y(ncap2)g(-O)g(-S)g(crd.nco)f
 (${drc_in}${fld_in}${var})o(.${s)o(fx}.)o(nc)41 b(\\)581
 3477 y(${drc_in}${fld_in}${var})o(.${s)o(fx})o(.nc)390
-3587 y(done)275 3747 y Fq(crd.nco)390 3908 y Fy(//)47
+3587 y(done)275 3747 y Fr(crd.nco)390 3908 y Fz(//)47
 b(Add)g(coordinates)e(to)i(MODIS)f(HDF)h(data)390 4017
 y(//)g(Included)f(by)h(add_crd.sh)390 4127 y(//)g(Online:)94
 b(http://nco.sourceforge.)o(net/)o(nco.)o(htm)o(l#Ad)o(d-Co)o(ord)o
 (inat)o(es-t)o(o-M)o(ODIS)o(-Dat)o(a)390 4346 y(lon)47
 b(=)g(array\(0.f,)e(0.05,)i($lon\))f(-)i(180;)390 4456
 y(lat)f(=)g(90.f-)g(array\(0.f,)e(0.05,)h($lat\);)150
-4691 y FB(7.7)68 b(P)l(erm)l(ute)46 b Fu(MODIS)f FB(Co)t(ordinates)150
-4851 y FC(MODIS)f FD(orders)f(latitude)i(data)f(from)f(90)1651
-4818 y Fd(\016)1690 4851 y FD(N)h(to)h(-90)2047 4818
-y Fd(\016)2086 4851 y FD(N,)f(and)f(longitude)h(from)g(-180)3219
-4818 y Fd(\016)3258 4851 y FD(E)g(to)g(180)3623 4818
-y Fd(\016)3663 4851 y FD(E.)150 4960 y(Ho)m(w)m(ev)m(er,)h
-FC(CMIP5)38 b FD(orders)i(latitude)h(from)e(-90)1833
-4927 y Fd(\016)1872 4960 y FD(N)h(to)h(90)2191 4927 y
-Fd(\016)2230 4960 y FD(N,)f(and)g(longitude)g(from)f(0)3227
-4927 y Fd(\016)3266 4960 y FD(E)h(to)g(360)3623 4927
-y Fd(\016)3663 4960 y FD(E.)150 5070 y(This)30 b(script)g(c)m(hanges)h
-(the)g FC(MODIS)f FD(co)s(ordinates)h(to)g(follo)m(w)h(the)f
-FC(CMIP5)e FD(con)m(v)m(en)m(tion.)390 5230 y Fy(#!/bin/bash)p
+4691 y FC(7.7)68 b(P)l(erm)l(ute)46 b Fv(MODIS)f FC(Co)t(ordinates)150
+4851 y FD(MODIS)f FE(orders)f(latitude)i(data)f(from)f(90)1651
+4818 y Fc(\016)1690 4851 y FE(N)h(to)h(-90)2047 4818
+y Fc(\016)2086 4851 y FE(N,)f(and)f(longitude)h(from)g(-180)3219
+4818 y Fc(\016)3258 4851 y FE(E)g(to)g(180)3623 4818
+y Fc(\016)3663 4851 y FE(E.)150 4960 y(Ho)m(w)m(ev)m(er,)h
+FD(CMIP5)38 b FE(orders)i(latitude)h(from)e(-90)1833
+4927 y Fc(\016)1872 4960 y FE(N)h(to)h(90)2191 4927 y
+Fc(\016)2230 4960 y FE(N,)f(and)g(longitude)g(from)f(0)3227
+4927 y Fc(\016)3266 4960 y FE(E)h(to)g(360)3623 4927
+y Fc(\016)3663 4960 y FE(E.)150 5070 y(This)30 b(script)g(c)m(hanges)h
+(the)g FD(MODIS)f FE(co)s(ordinates)h(to)g(follo)m(w)h(the)f
+FD(CMIP5)e FE(con)m(v)m(en)m(tion.)390 5230 y Fz(#!/bin/bash)p
 eop end
-%%Page: 241 247
-TeXDict begin 241 246 bop 150 -116 a FD(Chapter)30 b(7:)41
-b FC(CMIP5)29 b FD(Example)2358 b(241)390 299 y Fy
+%%Page: 253 259
+TeXDict begin 253 258 bop 150 -116 a FE(Chapter)30 b(7:)41
+b FD(CMIP5)29 b FE(Example)2358 b(253)390 299 y Fz
 (##======================)o(====)o(====)o(===)o(====)o(====)o(===)o
 (====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(=)390
 408 y(##)47 b(Example)f(for)390 518 y(##)286 b(-)47 b(permute)f
@@ -58186,26 +59376,26 @@ b(#)48 b(Inverse)d(latitude)h(\(NB:)h(there)f(is)h('-')g(before)f
 3915 y(##)i(Add)f(new)f(longitude)g(coordinates)485 4025
 y(ncap2)h(-O)g(-s)g('lon=array\(0.0,1.25,$lon\))o(')42
 b(${fn})k(${fn})390 4134 y(done)p eop end
-%%Page: 242 248
-TeXDict begin 242 247 bop eop end
-%%Page: 243 249
-TeXDict begin 243 248 bop 150 -116 a FD(Chapter)30 b(8:)41
-b(P)m(arallel)2699 b(243)150 299 y Fx(8)80 b(P)l(arallel)150
-558 y FD(This)30 b(section)h(will)g(describ)s(e)f(scripting)g
-(strategies,)j(including)d(the)g(use)g(of)h FC(GNU)g
-FD(P)m(arallel,)h(to)f FC(NCO)p FD(.)390 717 y Fy(ls)47
+%%Page: 254 260
+TeXDict begin 254 259 bop eop end
+%%Page: 255 261
+TeXDict begin 255 260 bop 150 -116 a FE(Chapter)30 b(8:)41
+b(P)m(arallel)2699 b(255)150 299 y Fy(8)80 b(P)l(arallel)150
+558 y FE(This)30 b(section)h(will)g(describ)s(e)f(scripting)g
+(strategies,)j(including)d(the)g(use)g(of)h FD(GNU)g
+FE(P)m(arallel,)h(to)f FD(NCO)p FE(.)390 717 y Fz(ls)47
 b(*historical*.nc)d(|)j(parallel)f(ncks)g(-O)i(-d)f
 (time,"1950-01-01","2000-)o(01-)o(01")41 b({})48 b(50y/{})p
 eop end
-%%Page: 244 250
-TeXDict begin 244 249 bop eop end
-%%Page: 245 251
-TeXDict begin 245 250 bop 150 -116 a FD(Chapter)30 b(9:)41
-b(CCSM)29 b(Example)2357 b(245)150 299 y Fx(9)80 b(CCSM)53
-b(Example)150 575 y FD(This)41 b(c)m(hapter)i(illustrates)g(ho)m(w)f
-(to)g(use)g FC(NCO)g FD(to)g(pro)s(cess)g(and)f(analyze)j(the)e
-(results)f(of)i(a)f FC(CCSM)150 684 y FD(climate)32 b(sim)m(ulation.)
-390 847 y Fy(************************)o(****)o(****)o(***)o(****)o
+%%Page: 256 262
+TeXDict begin 256 261 bop eop end
+%%Page: 257 263
+TeXDict begin 257 262 bop 150 -116 a FE(Chapter)30 b(9:)41
+b(CCSM)29 b(Example)2357 b(257)150 299 y Fy(9)80 b(CCSM)53
+b(Example)150 575 y FE(This)41 b(c)m(hapter)i(illustrates)g(ho)m(w)f
+(to)g(use)g FD(NCO)g FE(to)g(pro)s(cess)g(and)f(analyze)j(the)e
+(results)f(of)i(a)f FD(CCSM)150 684 y FE(climate)32 b(sim)m(ulation.)
+390 847 y Fz(************************)o(****)o(****)o(***)o(****)o
 (****)o(***)o(****)o(****)o(***)o(****)o(****)o(***)o(****)390
 956 y(Task)47 b(0:)g(Finding)f(input)g(files)390 1066
 y(x***********************)o(****)o(****)o(***)o(****)o(****)o(***)o
@@ -58247,9 +59437,9 @@ y(Our)h(goal)g(is)g(to)g(create)f(a)h(single)g(file)f(containing)f(12)i
 (file)h(is)g(the)g(mean)g(of)g(100)g(input)f(files.)390
 5340 y(Normally,)f(we)i(store)g(the)g("reduced")e(data)i(in)g(a)g
 (smaller,)f(local)g(directory.)p eop end
-%%Page: 246 252
-TeXDict begin 246 251 bop 150 -116 a FD(246)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 408 y Fy(caseid='T42x1_40')390
+%%Page: 258 264
+TeXDict begin 258 263 bop 150 -116 a FE(258)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 408 y Fz(caseid='T42x1_40')390
 518 y(#drc_in="${DATA}/archive)o(/${c)o(asei)o(d}/)o(atm")390
 628 y(drc_in="${DATA}/${caseid)o(}")390 737 y(drc_out="${DATA}/${casei)
 o(d}")390 847 y(mkdir)46 b(-p)i(${drc_out})390 956 y(cd)f(${drc_out})
@@ -58284,9 +59474,9 @@ y(The)g(input)f(files)h(ncra)f(used)h(to)g(create)f(the)h
 (global)f(attribute)f(named)i('history'.)390 5121 y(Use)g(ncrcat)f(to)h
 (aggregate)e(the)i(climatological)d(monthly)i(means)485
 5340 y(ncrcat)h(-O)g(-D)g(1)g(\\)p eop end
-%%Page: 247 253
-TeXDict begin 247 252 bop 150 -116 a FD(Chapter)30 b(9:)41
-b(CCSM)29 b(Example)2357 b(247)581 299 y Fy(${drc_out}/${caseid}_clm)o
+%%Page: 259 265
+TeXDict begin 259 264 bop 150 -116 a FE(Chapter)30 b(9:)41
+b(CCSM)29 b(Example)2357 b(259)581 299 y Fz(${drc_out}/${caseid}_clm)o
 (??.n)o(c)42 b(${drc_out}/${caseid}_cl)o(m_01)o(12.n)o(c)390
 518 y(Finally,)k(create)g(climatological)e(means)i(for)h(reference.)390
 628 y(The)g(climatological)d(time-mean:)485 847 y(ncra)j(-O)g(-D)g(1)h
@@ -58329,9 +59519,9 @@ d(monthly)i(means)390 4902 y(for)h(mth)g(in)g({1..12};)f(do)485
 (${drc_out}/${caseid}_clm)o(${mm)o(}.n)o(c)h(${drc_out}/${caseid}_clm)o
 (${mm)o(}.n)o(c)390 5340 y(done)47 b(#)g(end)g(loop)g(over)f(mth)p
 eop end
-%%Page: 248 254
-TeXDict begin 248 253 bop 150 -116 a FD(248)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 408 y Fy(Method)46 b(2:)h(Create)f(dpm)h
+%%Page: 260 266
+TeXDict begin 260 265 bop 150 -116 a FE(260)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 408 y Fz(Method)46 b(2:)h(Create)f(dpm)h
 (by)g(aggregating)e(small)i(files)390 518 y(for)g(mth)g(in)g({1..12};)f
 (do)485 628 y(mm=`printf)f("\04502d")i(${mth}`)485 737
 y(ncap2)g(-O)g(-v)g(-s)g("dpm=${dpm[${mth}]}")c(~/nco/data/in.nc)g(\\)
@@ -58368,9 +59558,9 @@ y(Let's)h(say)h(you)g(are)g(interested)e(in)i(examining)f(the)g
 4902 y(${drc_out}/${caseid}_clm)o(_011)o(2_C)o(al.n)o(c)390
 5121 y(The)47 b(dataset)f(is)h(now)g(much)f(smaller!)390
 5230 y(To)h(examine)f(particular)f(metrics.)p eop end
-%%Page: 249 255
-TeXDict begin 249 254 bop 150 -116 a FD(Chapter)30 b(9:)41
-b(CCSM)29 b(Example)2357 b(249)390 299 y Fy(************************)o
+%%Page: 261 267
+TeXDict begin 261 266 bop 150 -116 a FE(Chapter)30 b(9:)41
+b(CCSM)29 b(Example)2357 b(261)390 299 y Fz(************************)o
 (****)o(****)o(***)o(****)o(****)o(***)o(****)o(****)o(***)o(****)o
 (****)o(***)o(****)390 408 y(Task)47 b(4:)g(Accessing)e(data)i(stored)f
 (remotely)390 518 y(************************)o(****)o(****)o(***)o
@@ -58421,9 +59611,9 @@ b(Average)f(surface)g(air)h(temperature)e(tas)i(for)g(SRESA1B)e
 5230 y(for)i(mdl)g(in)g('cccma_cgcm3_1)d(cccma_cgcm3_1_t63)f(cnrm_cm3)j
 (csiro_mk3_0)e(\\)390 5340 y(gfdl_cm2_0)h(gfdl_cm2_1)g(giss_aom)h
 (giss_model_e_h)d(giss_model_e_r)h(\\)p eop end
-%%Page: 250 256
-TeXDict begin 250 255 bop 150 -116 a FD(250)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)390 299 y Fy(iap_fgoals1_0_g)44
+%%Page: 262 268
+TeXDict begin 262 267 bop 150 -116 a FE(262)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)390 299 y Fz(iap_fgoals1_0_g)44
 b(inmcm3_0)h(ipsl_cm4)h(miroc3_2_hires)e(miroc3_2_medres)f(\\)390
 408 y(miub_echo_g)i(mpi_echam5)g(mri_cgcm2_3_2a)f(ncar_ccsm3_0)g
 (ncar_pcm1)h(\\)390 518 y(ukmo_hadcm3)g(ukmo_hadgem1';)f(do)390
@@ -58471,9 +59661,9 @@ b(\\)1106 4902 y(sresa1b_ukmo_hadcm3_run1)o(_200)o(101)o(_209)o(911.)o
 b(foo.nc)390 5340 y(/bin/cp)k(area_msk_ukmo_hadcm3.nc)41
 b(sresa1b_ukmo_hadcm3_run1_)o(2001)o(01_2)o(099)o(11.n)o(c)p
 eop end
-%%Page: 251 257
-TeXDict begin 251 256 bop 150 -116 a FD(Chapter)30 b(9:)41
-b(CCSM)29 b(Example)2357 b(251)390 299 y Fy(ncks)47 b(-A)g(-v)g(tas,pr)
+%%Page: 263 269
+TeXDict begin 263 268 bop 150 -116 a FE(Chapter)30 b(9:)41
+b(CCSM)29 b(Example)2357 b(263)390 299 y Fz(ncks)47 b(-A)g(-v)g(tas,pr)
 f(foo.nc)g(sresa1b_ukmo_hadcm3_run1_)o(2001)o(01_)o(2099)o(11.n)o(c)390
 518 y(Level)g(II:)h(Correct)f(#)i(years,)e(months)390
 628 y(Template:)f(${scn}_${mdl}_${run}_${va)o(r}_$)o({yyy)o(ymm)o(}_${)
@@ -58490,22 +59680,22 @@ y(sresa1b_ukmo_hadcm3_run1)o(_200)o(001_)o(209)o(912.)o(nc)c(\\)915
 2162 y(sresa1b_ukmo_hadcm3_run1)o(_200)o(001_)o(209)o(912.)o(nc)c(\\)
 915 2271 y(sresa1b_ukmo_hadcm3_run1)o(_200)o(001_)o(209)o(912_)o(xy_C)o
 (al.)o(nc)p eop end
-%%Page: 252 258
-TeXDict begin 252 257 bop eop end
-%%Page: 253 259
-TeXDict begin 253 258 bop 150 -116 a FD(Chapter)30 b(10:)41
-b(References)2536 b(253)150 299 y Fx(10)80 b(References)225
-533 y FA(\017)60 b FD([ZeM07])75 b(Zender,)37 b(C.)f(S.,)j(and)d(H.)g
+%%Page: 264 270
+TeXDict begin 264 269 bop eop end
+%%Page: 265 271
+TeXDict begin 265 270 bop 150 -116 a FE(Chapter)30 b(10:)41
+b(References)2536 b(265)150 299 y Fy(10)80 b(References)225
+533 y FB(\017)60 b FE([ZeM07])75 b(Zender,)37 b(C.)f(S.,)j(and)d(H.)g
 (J.)h(Mangalam)h(\(2007\),)j(Scaling)c(Prop)s(erties)g(of)f(Common)330
 643 y(Statistical)42 b(Op)s(erators)d(for)g(Gridded)f(Datasets,)44
 b(In)m(t.)68 b(J.)40 b(High)f(P)m(erform.)68 b(Comput.)f(Appl.,)330
 752 y(21\(4\),)33 b(485-498,)g(doi:10.1177/109434)q(20)q(07)q(08)q(380)
-q(2.)225 887 y FA(\017)60 b FD([Zen08])83 b(Zender,)43
+q(2.)225 887 y FB(\017)60 b FE([Zen08])83 b(Zender,)43
 b(C.)e(S.)g(\(2008\),)47 b(Analysis)41 b(of)g(Self-describing)h
 (Gridded)e(Geoscience)j(Data)330 996 y(with)58 b(netCDF)i(Op)s(erators)
 e(\(NCO\),)h(En)m(viron.)125 b(Mo)s(dell.)i(Soft)m(w.,)66
 b(23\(10\),)j(1338-1342,)330 1106 y(doi:10.1016/j.en)m(vsoft.2008)q(.0)
-q(3.0)q(04)q(.)225 1240 y FA(\017)60 b FD([WZJ07])e(W)-8
+q(3.0)q(04)q(.)225 1240 y FB(\017)60 b FE([WZJ07])e(W)-8
 b(ang,)30 b(D.)f(L.,)g(C.)f(S.)g(Zender,)g(and)f(S.)h(F.)h(Jenks)f
 (\(2007\),)j(D)m(AP-enabled)f(Serv)m(er-side)330 1350
 y(Data)40 b(Reduction)e(and)f(Analysis,)k(Pro)s(ceedings)d(of)g(the)g
@@ -58515,14 +59705,14 @@ y(tiv)m(e)f(Information)e(and)f(Pro)s(cessing)h(Systems)g(\(I)s(IPS\))g
 b(and)330 1569 y(Hydrology)-8 b(,)46 b(P)m(ap)s(er)41
 b(3B.2,)46 b(Jan)m(uary)41 b(14-18,)47 b(San)41 b(An)m(tonio,)46
 b(TX.)41 b(American)h(Meteorological)330 1679 y(So)s(ciet)m(y)-8
-b(,)32 b(AMS)f(Press,)f(Boston,)h(MA.)225 1813 y FA(\017)60
-b FD([ZMW06])78 b(Zender,)39 b(C.)f(S.,)i(H.)f(Mangalam,)j(and)37
+b(,)32 b(AMS)f(Press,)f(Boston,)h(MA.)225 1813 y FB(\017)60
+b FE([ZMW06])78 b(Zender,)39 b(C.)f(S.,)i(H.)f(Mangalam,)j(and)37
 b(D.)i(L.)f(W)-8 b(ang)39 b(\(2006\),)k(Impro)m(ving)38
 b(Scaling)330 1923 y(Prop)s(erties)45 b(of)g(Common)f(Statistical)k(Op)
 s(erators)c(for)h(Gridded)f(Geoscience)j(Datasets,)k(Eos)330
 2032 y(T)-8 b(rans.)40 b(A)m(GU,)32 b(87\(52\),)h(F)-8
 b(all)32 b(Meet.)42 b(Suppl.,)29 b(Abstract)i(IN53B-0827.)225
-2167 y FA(\017)60 b FD([ZeW07])75 b(Zender,)37 b(C.)f(S.,)j(and)c(D.)j
+2167 y FB(\017)60 b FE([ZeW07])75 b(Zender,)37 b(C.)f(S.,)j(and)c(D.)j
 (L.)e(W)-8 b(ang)38 b(\(2007\),)j(High)c(p)s(erformance)f(distributed)f
 (data)330 2276 y(reduction)j(and)f(analysis)h(with)g(the)g(netCDF)g(Op)
 s(erators)g(\(NCO\),)g(Pro)s(ceedings)g(of)g(the)g(23rd)330
@@ -58532,12 +59722,12 @@ s(erators)g(\(NCO\),)g(Pro)s(ceedings)g(of)g(the)g(23rd)330
 b(and)e(Hydrology)-8 b(,)33 b(P)m(ap)s(er)d(3B.4,)i(Jan)m(uary)f
 (14-18,)i(San)d(An)m(tonio,)i(TX.)330 2605 y(American)f(Meteorological)
 k(So)s(ciet)m(y)-8 b(,)32 b(AMS)e(Press,)h(Boston,)g(MA.)225
-2740 y FA(\017)60 b FD([WZJ06])86 b(W)-8 b(ang,)47 b(D.)c(L.,)j(C.)c
+2740 y FB(\017)60 b FE([WZJ06])86 b(W)-8 b(ang,)47 b(D.)c(L.,)j(C.)c
 (S.)h(Zender,)h(and)e(S.)g(F.)h(Jenks)f(\(2006\),)49
 b(Serv)m(er-side)42 b(netCDF)330 2849 y(Data)36 b(Reduction)e(and)g
 (Analysis,)i(Eos)e(T)-8 b(rans.)52 b(A)m(GU,)35 b(87\(52\),)j(F)-8
 b(all)36 b(Meet.)53 b(Suppl.,)34 b(Abstract)330 2959
-y(IN53B-0826.)225 3093 y FA(\017)60 b FD([WZJ073])84
+y(IN53B-0826.)225 3093 y FB(\017)60 b FE([WZJ073])84
 b(W)-8 b(ang,)46 b(D.)c(L.,)i(C.)d(S.)g(Zender,)i(and)e(S.)g(F.)h
 (Jenks)f(\(2007\),)46 b(Serv)m(er-side)c(parallel)330
 3203 y(data)c(reduction)f(and)g(analysis,)j(in)d(Adv)-5
@@ -58549,3754 +59739,3846 @@ b(Ma)m(y)f(2-4,)h(2007,)g(Pro)s(ceedings.)40 b(IEEE)330
 b(4459,)38 b(edited)e(b)m(y)f(C.)g(Cerin)f(and)h(K.-C.)g(Li,)i(pp.)330
 3532 y(744-750,)d(Springer-V)-8 b(erlag,)31 b(Berlin/Heidelb)s(erg,)h
 (doi:10.1007/978-3-5)q(40)q(-72)q(36)q(0-)q(8)p 3330
-3532 28 4 v 46 w(67.)225 3666 y FA(\017)60 b FD([WZJ074])69
+3532 28 4 v 46 w(67.)225 3666 y FB(\017)60 b FE([WZJ074])69
 b(W)-8 b(ang,)37 b(D.)d(L.,)i(C.)d(S.)h(Zender)f(and)h(S.)f(F.)i(Jenks)
 e(\(2007\),)38 b(A)c(System)g(for)f(Scripted)330 3776
 y(Data)i(Analysis)e(at)h(Remote)h(Data)f(Cen)m(ters,)h(Eos)e(T)-8
 b(rans.)49 b(A)m(GU,)34 b(88\(52\),)j(F)-8 b(all)35 b(Meet.)50
 b(Suppl.,)330 3885 y(Abstract)31 b(IN11B-0469.)225 4020
-y FA(\017)60 b FD([WZJ081])55 b(W)-8 b(ang,)29 b(D.)e(L.,)h(C.)f(S.)f
+y FB(\017)60 b FE([WZJ081])55 b(W)-8 b(ang,)29 b(D.)e(L.,)h(C.)f(S.)f
 (Zender)g(and)g(S.)h(F.)g(Jenks)f(\(2008\),)k(Cluster)d(W)-8
 b(ork\015o)m(w)28 b(Execu-)330 4130 y(tion)23 b(of)g(Retargeted)i(Data)
 g(Analysis)e(Scripts,)h(Pro)s(ceedings)f(of)g(the)g(8th)g(IEEE)f(In)m
 (t'l)i(Symp)s(osium)330 4239 y(on)30 b(Cluster)f(Computing)g(and)g(the)
 h(Grid)f(\(IEEE)g(CCGRID)h('08\),)h(pp.)39 b(449-458,)33
 b(Ly)m(on,)e(F)-8 b(rance,)330 4349 y(Ma)m(y)32 b(2008.)225
-4483 y FA(\017)60 b FD([WZJ091])86 b(W)-8 b(ang,)47 b(D.)c(L.,)j(C.)c
+4483 y FB(\017)60 b FE([WZJ091])86 b(W)-8 b(ang,)47 b(D.)c(L.,)j(C.)c
 (S.)g(Zender,)j(and)d(S.)g(F.)h(Jenks)f(\(2009\),)48
 b(E\016cien)m(t)43 b(Clustered)330 4593 y(Serv)m(er-side)26
 b(Data)i(Analysis)e(W)-8 b(ork\015o)m(ws)27 b(using)e(SW)-10
 b(AMP)i(,)27 b(Earth)f(Sci.)39 b(Inform.,)26 b(2\(3\),)j(141-155,)330
 4702 y(doi:10.1007/s12145-0)q(09)q(-00)q(21)q(-z)q(.)225
-4837 y FA(\017)60 b FD([PFT88])69 b(Press,)34 b(Flannery)-8
+4837 y FB(\017)60 b FE([PFT88])69 b(Press,)34 b(Flannery)-8
 b(,)36 b(T)-8 b(euk)m(olsky)g(,)36 b(and)d(V)-8 b(etterling)36
 b(\(1988\),)i(Numerical)c(Recip)s(es)h(in)e(C,)330 4946
 y(Cam)m(bridge)d(Univ.)41 b(Press,)30 b(New)h(Y)-8 b(ork,)31
 b(NY.)p eop end
-%%Page: 254 260
-TeXDict begin 254 259 bop eop end
-%%Page: 255 261
-TeXDict begin 255 260 bop 150 -116 a FD(General)31 b(Index)2902
-b(255)150 299 y Fx(General)53 b(Index)150 610 y Fc(")150
-728 y Fr(")26 b Fs(\(double)f(quote\))7 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g
+%%Page: 266 272
+TeXDict begin 266 271 bop eop end
+%%Page: 267 273
+TeXDict begin 267 272 bop 150 -116 a FE(General)31 b(Index)2902
+b(267)150 299 y Fy(General)53 b(Index)150 610 y Fb(")150
+728 y Fs(")26 b Ft(\(double)f(quote\))7 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(159)150 986 y FB(#)150
-1104 y Fr(#include)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)34 b Ft(171)150 986 y FC(#)150
+1104 y Fs(#include)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(105)150 1350
-y FB($)150 1468 y Fr($)26 b Fs(\(wildcard)g(c)n(haracter\))18
-b Fa(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(44)150 1733 y
-FB(\045)150 1851 y Fr(\045)26 b Fs(\(mo)r(dulus\))14
-b Fa(:)e(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(117)150 1350
+y FC($)150 1468 y Fs($)26 b Ft(\(wildcard)g(c)n(haracter\))18
+b Ff(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(44)150 1733 y
+FC(\045)150 1851 y Fs(\045)26 b Ft(\(mo)r(dulus\))14
+b Ff(:)e(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fs(151)150 2109 y FB(')150 2227 y Fr(')26 b Fs(\(end)f(quote\))7
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(163)150 2109 y FC(')150 2227 y Fs(')26 b Ft(\(end)f(quote\))7
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fs(159)150 2492 y FB(*)150 2609 y Fr(*)11 b Fa(:)i(:)g(:)g(:)g(:)h(:)
+b Ft(171)150 2492 y FC(*)150 2609 y Fs(*)11 b Ff(:)i(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)37 b Fs(162)150 2697 y Fr(*)26 b Fs(\(\014lename)g
-(expansion\))11 b Fa(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)h(:)f(:)37 b Ft(174)150 2697 y Fs(*)26 b Ft(\(\014lename)g
+(expansion\))11 b Ff(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b
-Fs(44)150 2785 y Fr(*)26 b Fs(\(m)n(ultiplication\))7
-b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+Ft(44)150 2785 y Fs(*)26 b Ft(\(m)n(ultiplication\))7
+b Ff(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fs(151)150 2873 y Fr(*)26 b Fs(\(wildcard)g(c)n(haracter\))18
-b Fa(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(44)150 3110 y
-Fc(+)150 3228 y Fr(+)11 b Fa(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Ft(163)150 2873 y Fs(*)26 b Ft(\(wildcard)g(c)n(haracter\))18
+b Ff(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(44)150 3110 y
+Fb(+)150 3228 y Fs(+)11 b Ff(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37
-b Fs(162)150 3316 y Fr(+)26 b Fs(\(addition\))17 b Fa(:)c(:)g(:)g(:)g
+b Ft(174)150 3316 y Fs(+)26 b Ft(\(addition\))17 b Ff(:)c(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b
-Fs(151)150 3403 y Fr(+)26 b Fs(\(wildcard)g(c)n(haracter\))18
-b Fa(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(44)150 3640 y
-FB(-)150 3758 y Fr(-)11 b Fa(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+Ft(163)150 3403 y Fs(+)26 b Ft(\(wildcard)g(c)n(haracter\))18
+b Ff(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(44)150 3640 y
+FC(-)150 3758 y Fs(-)11 b Ff(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37
-b Fs(162)150 3846 y Fr(-)26 b Fs(\(subtraction\))17 b
-Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(174)150 3846 y Fs(-)26 b Ft(\(subtraction\))17 b
+Ff(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fs(151)150 3934 y Fr(--3)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+b Ft(163)150 3934 y Fs(--3)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-34 b Fs(35)150 4022 y Fr(--4)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+34 b Ft(35)150 4022 y Fs(--4)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)34 b Fs(35)150 4110 y Fr(--5)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)34 b Ft(35)150 4110 y Fs(--5)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)34 b Fs(35)150 4197 y Fr(--6)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)34 b Ft(35)150 4197 y Fs(--6)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)34 b Fs(35)150 4285 y Fr(--64bit)15 b Fa(:)f(:)f(:)h(:)f(:)g
+(:)g(:)g(:)34 b Ft(35)150 4285 y Fs(--64bit)15 b Ff(:)f(:)f(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fs(35)150 4373 y Fr(--7)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Ft(35)150 4373 y Fs(--7)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
-b Fs(35)150 4461 y Fr(--abc)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(35)150 4461 y Fs(--abc)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(177)150 4549 y Fr(--alphabetize)14 b Fa(:)i(:)d(:)h(:)f(:)g(:)g(:)
+b Ft(189)150 4549 y Fs(--alphabetize)14 b Ff(:)i(:)d(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(177)150 4637 y Fr(--apn)13
-b Fa(:)i(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40
-b Fs(16,)26 b(98,)h(186)150 4725 y Fr(--append)e Fa(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)50 b Fs(16,)26
-b(98,)h(186)150 4813 y Fr(--auxiliary)d Fa(:)13 b(:)g(:)g(:)g(:)h(:)f
+(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Ft(189)150 4637 y Fs(--apn)11
+b Ff(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
+b Ft(16,)27 b(108,)g(198)150 4725 y Fs(--append)22 b
+Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Ft(16,)27
+b(108,)g(198)150 4813 y Fs(--auxiliary)d Ff(:)13 b(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fs(64)150
-4901 y Fr(--auxiliary)28 b Fh(lon_min)p Fr(,)p Fh(lon_max)p
-Fr(,)p Fh(lat_min)p Fr(,)p Fh(lat_m)q(ax)310 4988 y Fa(:)14
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Ft(64)150
+4901 y Fs(--auxiliary)28 b Fi(lon_min)p Fs(,)p Fi(lon_max)p
+Fs(,)p Fi(lat_min)p Fs(,)p Fi(lat_m)q(ax)310 4988 y Ff(:)14
 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fs(64)150 5076 y Fr(--bfr_sz_hnt)22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Ft(64)150 5076 y Fs(--bfr_sz_hnt)22
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fs(80)150 5164 y Fr(--binary)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h
+b Ft(90)150 5164 y Fs(--binary)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b
-Fs(178)150 5252 y Fr(--bnr)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+Ft(190)150 5252 y Fs(--bnr)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(178)150 5340 y Fr(--cdl)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Ft(190)150 5340 y Fs(--cdl)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(178)2025 610 y Fr(--cell_methods)12 b Fa(:)k(:)d(:)g(:)g(:)g(:)g
+b Ft(190)2025 610 y Fs(--cell_methods)12 b Ff(:)k(:)d(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(101)2025 698 y Fr(--chunk_byte)21
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)39 b Ft(111)2025 698 y Fs(--chunk_byte)21
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fs(72)2025 785 y Fr(--chunk_dimension)6 b Fa(:)17 b(:)c(:)g(:)g(:)g
+b Ft(72)2025 785 y Fs(--chunk_dimension)6 b Ff(:)17 b(:)c(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)33 b Fs(72)2025 873 y Fr(--chunk_map)24
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)g(:)g(:)33 b Ft(72)2025 873 y Fs(--chunk_map)24
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-48 b Fs(72)2025 961 y Fr(--chunk_min)24 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+48 b Ft(72)2025 961 y Fs(--chunk_min)24 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(72)2025
-1048 y Fr(--chunk_policy)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Ft(72)2025
+1048 y Fs(--chunk_policy)14 b Ff(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)40 b Fs(72)2025 1136 y Fr(--chunk_scalar)14
-b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+(:)g(:)h(:)f(:)40 b Ft(72)2025 1136 y Fs(--chunk_scalar)14
+b Ff(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fs(72)2025 1224 y Fr(--cll_mth)7 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g
+b Ft(72)2025 1224 y Fs(--cll_mth)7 b Ff(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Fs(101)2025
-1311 y Fr(--cnk_byt)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Ft(111)2025
+1311 y Fs(--cnk_byt)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(72)2025 1399
-y Fr(--cnk_dmn)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(72)2025 1399
+y Fs(--cnk_dmn)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(72)2025 1486 y
-Fr(--cnk_map)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(72)2025 1486 y
+Fs(--cnk_map)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(72)2025 1574 y Fr(--cnk_map)27
-b Fh(cnk_map)13 b Fa(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(72)2025 1574 y Fs(--cnk_map)27
+b Fi(cnk_map)13 b Ff(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39
-b Fs(75)2025 1662 y Fr(--cnk_min)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+b Ft(75)2025 1662 y Fs(--cnk_min)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b
-Fs(72)2025 1749 y Fr(--cnk_plc)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)
+Ft(72)2025 1749 y Fs(--cnk_plc)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(72)2025
-1837 y Fr(--cnk_scl)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(72)2025
+1837 y Fs(--cnk_scl)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(72)2025 1925
-y Fr(--coords)16 b Fa(:)f(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(72)2025 1925
+y Fs(--coords)16 b Ff(:)f(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)43 b Fs(45,)27 b(101)2025 2012 y Fr(--crd)7
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)43 b Ft(45,)27 b(111)2025 2012 y Fs(--crd)7
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)34 b Fs(45,)27 b(101)2025 2100 y Fr(--create_ram)8
-b Fa(:)16 b(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)34 b Ft(45,)27 b(111)2025 2100 y Fs(--create_ram)8
+b Ff(:)16 b(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34
-b Fs(16,)27 b(81)2025 2187 y Fr(--data)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g
+b Ft(16,)27 b(91)2025 2187 y Fs(--data)15 b Ff(:)f(:)f(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42
-b Fs(179)2025 2275 y Fr(--dbg_lvl)27 b Fh(debug-level)16
-b Fa(:)g(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)43
-b Fs(14,)26 b(22,)h(27)2025 2363 y Fr(--dbl)21 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)46 b Fs(92)2025 2450 y Fr(--debug-level)28
-b Fh(debug-level)16 b Fa(:)g(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)42 b Fs(14,)27 b(22)2025 2538 y Fr(--deflate)9
-b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)36 b Fs(78)2025 2626 y Fr(--dfl_lvl)9 b Fa(:)15
+b Ft(191)2025 2275 y Fs(--dbg_lvl)27 b Fi(debug-level)16
+b Ff(:)g(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)43
+b Ft(14,)26 b(22,)h(27)2025 2363 y Fs(--dbl)18 b Ff(:)c(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Ft(102)2025 2450 y Fs(--debug-level)28 b Fi(debug-level)16
+b Ff(:)g(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42
+b Ft(14,)27 b(22)2025 2538 y Fs(--deflate)9 b Ff(:)15
 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)36 b Fs(78)2025 2713 y Fr(--dimension)2178 2800 y
-Fh(dim)p Fr(,[)p Fh(min)p Fr(],[)p Fh(max)p Fr(],[)p
-Fh(stride)p Fr(],[)p Fh(su)q(bcyc)q(le)p Fr(])26 b Fa(:)13
-b(:)47 b Fs(59)2025 2888 y Fr(--dimension)28 b Fh(dim)p
-Fr(,[)p Fh(min)p Fr(],[)p Fh(max)p Fr(],)p Fh(stride)e
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Fs(57)2025 2976
-y Fr(--dimension)28 b Fh(dim)p Fr(,[)p Fh(min)p Fr(][,[)p
-Fh(max)p Fr(][,[)p Fh(stride)p Fr(]]])2187 3063 y Fa(:)13
-b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36
-b Fs(55,)27 b(60,)f(63,)h(66)2025 3150 y Fr(--diskless_all)c
-Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fs(22,)27
-b(81)2025 3238 y Fr(--dmn)f Fh(dim)p Fr(,[)p Fh(min)p
-Fr(],[)p Fh(max)p Fr(],[)p Fh(stride)p Fr(],)p Fh(su)q(bcyc)q(le)p
-Fr(])2185 3325 y Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33
-b Fs(59)2025 3413 y Fr(--dmn)26 b Fh(dim)p Fr(,[)p Fh(min)p
-Fr(],[)p Fh(max)p Fr(],)p Fh(stride)f Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46 b Fs(57)2025 3500 y
-Fr(--dmn)26 b Fh(dim)p Fr(,[)p Fh(min)p Fr(][,[)p Fh(max)p
-Fr(][,[)p Fh(stride)p Fr(]])q(])17 b Fa(:)i(:)13 b(:)g(:)43
-b Fs(55,)27 b(60,)2178 3588 y(63,)g(66)2025 3675 y Fr(--ensemble_file)9
-b Fa(:)16 b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
-b Fs(167)2025 3763 y Fr(--ensemble_group)7 b Fa(:)16
-b(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(167)2025
-3850 y Fr(--ensemble_suffix)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-48 b Fs(167)2025 3938 y Fr(--exclude)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)
+g(:)36 b Ft(88)2025 2626 y Fs(--dfl_lvl)9 b Ff(:)15 b(:)f(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
+b Ft(88)2025 2713 y Fs(--dimension)2178 2800 y Fi(dim)p
+Fs(,[)p Fi(min)p Fs(],[)p Fi(max)p Fs(],[)p Fi(stride)p
+Fs(],[)p Fi(su)q(bcyc)q(le)p Fs(])26 b Ff(:)13 b(:)47
+b Ft(59)2025 2888 y Fs(--dimension)28 b Fi(dim)p Fs(,[)p
+Fi(min)p Fs(],[)p Fi(max)p Fs(],)p Fi(stride)e Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Ft(57)2025 2976 y Fs(--dimension)28
+b Fi(dim)p Fs(,[)p Fi(min)p Fs(][,[)p Fi(max)p Fs(][,[)p
+Fi(stride)p Fs(]]])2187 3063 y Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(40,)27 b(186)2025
-4026 y Fr(--file_format)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)43 b Fs(35)2025 4113 y Fr(--file_list)24
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-48 b Fs(99)2025 4201 y Fr(--fix_rec_dmn)28 b(all)13 b
-Fa(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fs(39)2025
-4289 y Fr(--fix_rec_dmn)28 b Fh(dim)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)38 b Fs(178)2025 4376 y Fr(--fl_bnr)10 b Fa(:)15
-b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)37 b Fs(178)2025 4464 y Fr(--fl_fmt)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)36 b Ft(55,)27 b(60,)f(63,)h(66)2025
+3150 y Fs(--diskless_all)c Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46
+b Ft(22,)27 b(91)2025 3238 y Fs(--dmn)f Fi(dim)p Fs(,[)p
+Fi(min)p Fs(],[)p Fi(max)p Fs(],[)p Fi(stride)p Fs(],)p
+Fi(su)q(bcyc)q(le)p Fs(])2185 3325 y Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)33 b Ft(59)2025 3413 y Fs(--dmn)26 b Fi(dim)p Fs(,[)p
+Fi(min)p Fs(],[)p Fi(max)p Fs(],)p Fi(stride)f Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
+b Ft(57)2025 3500 y Fs(--dmn)26 b Fi(dim)p Fs(,[)p Fi(min)p
+Fs(][,[)p Fi(max)p Fs(][,[)p Fi(stride)p Fs(]])q(])17
+b Ff(:)i(:)13 b(:)g(:)43 b Ft(55,)27 b(60,)2178 3588
+y(63,)g(66)2025 3675 y Fs(--ensemble_file)9 b Ff(:)16
+b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(179)2025
+3763 y Fs(--ensemble_group)7 b Ff(:)16 b(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)33 b Ft(179)2025 3850 y Fs(--ensemble_suffix)25
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Ft(179)2025
+3938 y Fs(--exclude)14 b Ff(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)40 b Ft(40,)27 b(198)2025 4026 y Fs(--file_format)16
+b Ff(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
+b Ft(35)2025 4113 y Fs(--file_list)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Ft(109)2025
+4201 y Fs(--fix_rec_dmn)28 b(all)13 b Ff(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)39 b Ft(39)2025 4289 y Fs(--fix_rec_dmn)28
+b Fi(dim)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
+b Ft(190)2025 4376 y Fs(--fl_bnr)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(35)2025 4551 y Fr(--fl_lst_in)24 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
+Ft(190)2025 4464 y Fs(--fl_fmt)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b
+Ft(35)2025 4551 y Fs(--fl_lst_in)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(99)2025
-4639 y Fr(--fl_out)27 b Fh(fl_out)18 b Fa(:)d(:)e(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)45 b Fs(30)2025 4727 y Fr(--fl_spt)10
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Ft(109)2025 4639
+y Fs(--fl_out)27 b Fi(fl_out)18 b Ff(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)45 b Ft(30)2025 4727 y Fs(--fl_spt)10
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)37 b Fs(104)2025 4814 y Fr(--flt)21 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)46 b Fs(92)2025 4902 y Fr(--fnc_tbl)7
-b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)37 b Ft(116)2025 4814 y Fs(--flt)18 b Ff(:)c(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+44 b Ft(102)2025 4902 y Fs(--fnc_tbl)7 b Ff(:)15 b(:)e(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b
+Ft(165)2025 4989 y Fs(--fortran)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b
+Ft(54)2025 5077 y Fs(--gag)23 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Ft(183,)27 b(231)2025
+5165 y Fs(--glb_mtd_spp)14 b Ff(:)i(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)34 b Fs(153)2025 4989 y Fr(--fortran)9 b Fa(:)15
-b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)36 b Fs(54)2025 5077 y Fr(--gag)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)41 b Ft(183)2025 5252 y Fs(--gpe)26 b Fi(gpe_dsc)6
+b Ff(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33
+b Ft(46)2025 5340 y Fs(--group)27 b Fi(grp)11 b Ff(:)j(:)f(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fs(171,)27
-b(219)2025 5165 y Fr(--glb_mtd_spp)14 b Fa(:)i(:)d(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(171)2025 5252 y Fr(--gpe)26
-b Fh(gpe_dsc)6 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)33 b Fs(46)2025 5340 y Fr(--group)27 b Fh(grp)11
-b Fa(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)38 b Fs(40)p eop end
-%%Page: 256 262
-TeXDict begin 256 261 bop 150 -116 a FD(256)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fr(--grp)d Fh(grp)16
-b Fa(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b
+Ft(40)p eop end
+%%Page: 268 274
+TeXDict begin 268 273 bop 150 -116 a FE(268)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Fs(--grp)d Fi(grp)16
+b Ff(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)43 b Fs(40)150 387 y Fr(--grp_xtr_var_xcl)6
-b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fs(40)150
-476 y Fr(--gxvx)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)43 b Ft(40)150 387 y Fs(--grp_xtr_var_xcl)6
+b Ff(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Ft(40)150
+476 y Fs(--gxvx)17 b Ff(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fs(40)150
-564 y Fr(--hdf_unpack)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Ft(40)150
+564 y Fs(--hdf_unpack)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(82)150 653 y Fr(--hdf_upk)9
-b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)h(:)f(:)g(:)45 b Ft(92)150 653 y Fs(--hdf_upk)9
+b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)36 b Fs(82)150 741 y(`)p Fr(--hdf4)p Fs(')13
-b Fa(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)36 b Ft(92)150 741 y(`)p Fs(--hdf4)p Ft(')13
+b Ff(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)39 b Fs(11)150 830 y Fr(--hdn)18 b
-Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)h(:)f(:)g(:)39 b Ft(11)150 830 y Fs(--hdn)18 b
+Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)44 b Fs(178)150 918 y Fr(--hdr_pad)28
-b Fh(hdr_pad)13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)h(:)f(:)g(:)44 b Ft(190)150 918 y Fs(--hdr_pad)28
+b Fi(hdr_pad)13 b Ff(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fs(25)150 1006 y Fr(--header_pad)28 b Fh(hdr_pad)c
-Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(25)150 1095 y
-Fr(--hidden)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Ft(25)150 1006 y Fs(--header_pad)28 b Fi(hdr_pad)c
+Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(25)150 1095 y
+Fs(--hidden)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(178)150 1183 y Fr(--hieronymus)17
-b Fa(:)f(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(190)150 1183 y Fs(--hieronymus)17
+b Ff(:)f(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fs(179)150 1272 y Fr(--history)9 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b
-Fs(98)150 1360 y Fr(--hst)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46
-b Fs(98)150 1449 y Fr(--intersection)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fs(42)150 1537 y Fr(--lcl)27
-b Fh(output-path)13 b Fa(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fs(30)150 1625 y Fr(--local)27 b Fh(output-path)8 b
-Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(30)150
-1714 y Fr(--map)27 b Fh(cnk_map)6 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g
+b Ft(191)150 1272 y Fs(--history)7 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Ft(108)150
+1360 y Fs(--hst)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(108)150
+1449 y Fs(--intersection)14 b Ff(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)40 b Ft(42)150 1537 y Fs(--lcl)27 b Fi(output-path)13
+b Ff(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Ft(30)150
+1625 y Fs(--local)27 b Fi(output-path)8 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fs(75)150 1802 y
-Fr(--map)27 b Fh(pck_map)22 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)48 b Fs(191)150 1891 y Fr(--mask-value)28
-b Fh(mask_val)18 b Fa(:)d(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(207)150
-1979 y Fr(--mask-variable)29 b Fh(mask_var)10 b Fa(:)15
-b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)37 b Fs(206)150 2068 y Fr(--mask_comparator)29 b Fh(mask_comp)22
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(207)150 2156 y Fr(--mask_condition)29 b Fh(mask_cond)9
-b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
-b Fs(206,)27 b(207)150 2245 y Fr(--mask_value)h Fh(mask_val)18
-b Fa(:)d(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)44 b Fs(207)150 2333 y Fr(--mask_variable)29
-b Fh(mask_var)10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(206)150 2421 y Fr(--md5_dgs)9
-b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)36 b Fs(79)150 2510 y Fr(--md5_digest)22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fs(79)150 2598 y Fr(--md5_write_attribute)13 b Fa(:)18
+f(:)g(:)34 b Ft(30)150 1714 y Fs(--map)27 b Fi(cnk_map)6
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32
+b Ft(75)150 1802 y Fs(--map)27 b Fi(pck_map)22 b Ff(:)13
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48
+b Ft(203)150 1891 y Fs(--mask-value)28 b Fi(mask_val)18
+b Ff(:)d(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)44 b Ft(219)150 1979 y Fs(--mask-variable)29
+b Fi(mask_var)10 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(218)150 2068 y Fs
+(--mask_comparator)29 b Fi(mask_comp)22 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Ft(219)150 2156
+y Fs(--mask_condition)29 b Fi(mask_cond)9 b Ff(:)16 b(:)d(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(218,)27 b(219)150
+2245 y Fs(--mask_value)h Fi(mask_val)18 b Ff(:)d(:)e(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Ft(219)150 2333 y Fs(--mask_variable)29 b Fi(mask_var)10
+b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)37 b Ft(218)150 2421 y Fs(--md5_dgs)9 b Ff(:)16
+b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)36 b Ft(89)150 2510 y Fs(--md5_digest)22 b Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
+b Ft(89)150 2598 y Fs(--md5_write_attribute)13 b Ff(:)18
 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)39 b Fs(79)150 2687 y Fr(--md5_wrt_att)16
-b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)39 b Ft(89)150 2687 y Fs(--md5_wrt_att)16
+b Ff(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fs(79)150 2775 y Fr(--metadata)24 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+b Ft(89)150 2775 y Fs(--metadata)24 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(181)150 2864
-y Fr(--Metadata)24 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(193)150 2864
+y Fs(--Metadata)24 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)49 b Fs(180)150 2952 y Fr(--mk_rec_dmn)28
-b Fh(dim)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(172,)27 b(179)150
-3041 y Fr(--mrd)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)49 b Ft(192)150 2952 y Fs(--mk_rec_dmn)28
+b Fi(dim)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(184,)27 b(191)150
+3041 y Fs(--mrd)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b
-Fs(70)150 3129 y Fr(--mro)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+Ft(70)150 3129 y Fs(--mro)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46
-b Fs(59)150 3217 y Fr(--msa)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(59)150 3217 y Fs(--msa)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46
-b Fs(60)150 3306 y Fr(--msa_user_order)9 b Fa(:)16 b(:)e(:)f(:)g(:)g(:)
+b Ft(60)150 3306 y Fs(--msa_user_order)9 b Ff(:)16 b(:)e(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(60)150 3394 y Fr(--msa_usr_rdr)16
-b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+(:)g(:)h(:)f(:)g(:)g(:)35 b Ft(60)150 3394 y Fs(--msa_usr_rdr)16
+b Ff(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fs(60)150 3483 y Fr(--msk_cmp_typ)29 b Fh(mask_comp)13
-b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)39 b Fs(207)150 3571 y Fr(--msk_cnd)28 b
-Fh(mask_cond)c Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Fs(206)150
-3660 y Fr(--msk_cnd_sng)29 b Fh(mask_cond)13 b Fa(:)h(:)f(:)h(:)f(:)g
+b Ft(60)150 3483 y Fs(--msk_cmp_typ)29 b Fi(mask_comp)13
+b Ff(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)39 b Ft(219)150 3571 y Fs(--msk_cnd)28 b
+Fi(mask_cond)c Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Ft(218)150
+3660 y Fs(--msk_cnd_sng)29 b Fi(mask_cond)13 b Ff(:)h(:)f(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fs(207)150 3748 y Fr(--msk_nm)27 b Fh(mask_var)11 b
-Fa(:)k(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fs(206)150
-3836 y Fr(--msk_val)28 b Fh(mask_val)8 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h
+b Ft(219)150 3748 y Fs(--msk_nm)27 b Fi(mask_var)11 b
+Ff(:)k(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Ft(218)150
+3836 y Fs(--msk_val)28 b Fi(mask_val)8 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)35 b Fs(207)150 3925 y Fr(--msk_var)28 b Fh(mask_var)8
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(206)150
-4013 y Fr(--mtd)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)35 b Ft(219)150 3925 y Fs(--msk_var)28 b Fi(mask_var)8
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Ft(218)150
+4013 y Fs(--mtd)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(181)150
-4102 y Fr(--Mtd)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(193)150
+4102 y Fs(--Mtd)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(180)150
-4190 y Fr(--multiple_record_dimensions)13 b Fa(:)19 b(:)13
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(192)150
+4190 y Fs(--multiple_record_dimensions)13 b Ff(:)19 b(:)13
 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(70)150 4279 y Fr(--ncml)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)
+b Ft(70)150 4279 y Fs(--ncml)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(183)150 4367 y Fr(--netcdf4)9 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
+b Ft(195)150 4367 y Fs(--netcdf4)9 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b
-Fs(35)150 4456 y Fr(--nintap)27 b Fh(loop)6 b Fa(:)15
+Ft(35)150 4456 y Fs(--nintap)27 b Fi(loop)6 b Ff(:)15
 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32
-b Fs(28)150 4544 y Fr(--no-blank)24 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+b Ft(28)150 4544 y Fs(--no-blank)24 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(181)150 4632
-y Fr(--no-coords)9 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(193)150 4632
+y Fs(--no-coords)9 b Ff(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)35 b Fs(45,)27 b(101)150 4721 y Fr(--no-crd)16 b
-Fa(:)f(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)35 b Ft(45,)27 b(111)150 4721 y Fs(--no-crd)16 b
+Ff(:)f(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fs(45,)27 b(101)150 4809 y Fr(--no_blank)9 b Fa(:)15
+b Ft(45,)27 b(111)150 4809 y Fs(--no_blank)9 b Ff(:)15
 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fs(181,)27
-b(187)150 4898 y Fr(--no_cell_methods)e Fa(:)13 b(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Ft(193,)27
+b(199)150 4898 y Fs(--no_cell_methods)e Ff(:)13 b(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)48 b Fs(101)150 4986 y Fr(--no_cll_mth)17 b Fa(:)f(:)d(:)g(:)g
+g(:)g(:)48 b Ft(111)150 4986 y Fs(--no_cll_mth)17 b Ff(:)f(:)d(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fs(101)150
-5075 y Fr(--no_dmn_var_nm)13 b Fa(:)k(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Ft(111)150
+5075 y Fs(--no_dmn_var_nm)13 b Ff(:)k(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)40
-b Fs(182,)27 b(187)150 5163 y Fr(--no_nm_prn)7 b Fa(:)15
+b Ft(194,)27 b(199)150 5163 y Fs(--no_nm_prn)7 b Ff(:)15
 b(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fs(182,)27
-b(187)150 5252 y Fr(--no_rec_dmn)h Fh(dim)13 b Fa(:)i(:)e(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Ft(194,)27
+b(199)150 5252 y Fs(--no_rec_dmn)h Fi(dim)13 b Ff(:)i(:)e(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)40 b Fs(178)150 5340 y Fr(--no_tmp_fl)11
-b Fa(:)k(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)40 b Ft(190)150 5340 y Fs(--no_tmp_fl)11
+b Ff(:)k(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fs(16,)26 b(82)2025 299 y Fr(--noblank)7 b Fa(:)15
+b Ft(16,)26 b(92)2025 299 y Fs(--noblank)7 b Ff(:)15
 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-34 b Fs(181)2025 387 y Fr(--nsm_fl)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g
+34 b Ft(193)2025 387 y Fs(--nsm_fl)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
-b Fs(167)2025 476 y Fr(--nsm_grp)7 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g
+b Ft(179)2025 476 y Fs(--nsm_grp)7 b Ff(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Fs(167)2025
-564 y Fr(--nsm_sfx)7 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Ft(179)2025
+564 y Fs(--nsm_sfx)7 b Ff(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Fs(167)2025 653 y
-Fr(--nsx)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Ft(179)2025 653 y
+Fs(--nsx)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(42)2025
-741 y Fr(--omp_num_threads)29 b Fh(thr_nbr)10 b Fa(:)15
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Ft(42)2025
+741 y Fs(--omp_num_threads)29 b Fi(thr_nbr)10 b Ff(:)15
 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)36 b Fs(25)2025 830 y Fr(--op_rlt)27 b Fh(mask_comp)8
-b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(207)2025
-918 y Fr(--op_typ)27 b Fh(op_typ)d Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
+(:)36 b Ft(25)2025 830 y Fs(--op_rlt)27 b Fi(mask_comp)8
+b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Ft(219)2025
+918 y Fs(--op_typ)27 b Fi(op_typ)d Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)49
-b Fs(84,)27 b(162)2025 1006 y Fr(--open_ram)22 b Fa(:)13
+b Ft(94,)27 b(174)2025 1006 y Fs(--open_ram)22 b Ff(:)13
 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)47 b Fs(16,)26
-b(22,)h(81)2025 1095 y Fr(--operation)h Fh(op_typ)15
-b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)41 b Fs(84,)27 b(162)2025 1183 y
-Fr(--orphan_dimensions)16 b Fa(:)h(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)47 b Ft(16,)26
+b(22,)h(91)2025 1095 y Fs(--operation)h Fi(op_typ)15
+b Ff(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)41 b Ft(94,)27 b(174)2025 1183 y
+Fs(--orphan_dimensions)16 b Ff(:)h(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fs(182)2025 1272 y Fr(--output)27 b Fh(fl_out)18 b
-Fa(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(194)2025 1272 y Fs(--output)27 b Fi(fl_out)18 b
+Ff(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fs(30)2025 1360 y Fr(--overwrite)11 b Fa(:)k(:)e(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)37 b Fs(16,)27 b(98)2025 1449
-y Fr(--ovr)9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fs(16,)27 b(98)2025
-1537 y Fr(--pack_policy)h Fh(pck_plc)18 b Fa(:)d(:)e(:)g(:)g(:)g(:)g(:)
+b Ft(30)2025 1360 y Fs(--overwrite)9 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)35 b Ft(16,)27 b(108)2025 1449
+y Fs(--ovr)7 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Ft(16,)27 b(108)2025
+1537 y Fs(--pack_policy)h Fi(pck_plc)18 b Ff(:)d(:)e(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fs(190)2025 1625 y Fr(--path)27 b Fh(input-path)21
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46 b Fs(28,)27 b(30)2025
-1714 y Fr(--pck_map)g Fh(pck_map)11 b Fa(:)k(:)e(:)g(:)g(:)g(:)h(:)f(:)
+b Ft(202)2025 1625 y Fs(--path)27 b Fi(input-path)21
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46 b Ft(28,)27 b(30)2025
+1714 y Fs(--pck_map)g Fi(pck_map)11 b Ff(:)k(:)e(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)38 b Fs(191)2025 1802 y Fr(--pck_plc)27 b Fh(pck_plc)11
-b Fa(:)k(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(190)2025
-1891 y Fr(--print)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)38 b Ft(203)2025 1802 y Fs(--pck_plc)27 b Fi(pck_plc)11
+b Ff(:)k(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(202)2025
+1891 y Fs(--ppc)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b
+Ft(78)2025 1979 y Fs(--precision_preserving_compres)q(sion)15
+b Ff(:)k(:)13 b(:)g(:)g(:)g(:)g(:)g(:)41 b Ft(78)2025
+2068 y Fs(--print)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fs(182)2025
-1979 y Fr(--prn)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Ft(194)2025
+2156 y Fs(--prn)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(182)2025
-2068 y Fr(--prn_fnc_tbl)14 b Fa(:)i(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(194)2025
+2245 y Fs(--prn_fnc_tbl)14 b Ff(:)i(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)41 b Fs(153)2025 2156 y Fr(--pseudonym)7
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+h(:)f(:)g(:)41 b Ft(165)2025 2333 y Fs(--pseudonym)7
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)34 b Fs(8)2025 2245 y Fr(--pth)26 b Fh(input-path)f
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fs(28,)27 b(30)2025
-2333 y Fr(--quench)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(182)2025
-2421 y Fr(--quiet)17 b Fa(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)44 b Fs(182,)27 b(187)2025 2510 y Fr(--rad)18
-b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+g(:)g(:)34 b Ft(8)2025 2421 y Fs(--pth)26 b Fi(input-path)f
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Ft(28,)27 b(30)2025
+2510 y Fs(--quantize)7 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Ft(78)2025 2598
+y Fs(--quench)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(194)2025 2687
+y Fs(--quiet)17 b Ff(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)44 b Ft(194,)27 b(199)2025 2775 y Fs(--rad)18
+b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(182)2025 2598 y Fr(--ram_all)16
-b Fa(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(194)2025 2864 y Fs(--ram_all)16
+b Ff(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42
-b Fs(22,)27 b(81)2025 2687 y(`)p Fr(--rcd_nm)h Fh(ulm_nm)p
-Fs(')12 b Fa(:)i(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Ft(22,)27 b(91)2025 2952 y(`)p Fs(--rcd_nm)h Fi(ulm_nm)p
+Ft(')12 b Ff(:)i(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(170)2025 2775 y Fr(--rec_apn)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+b Ft(182)2025 3041 y Fs(--rec_apn)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b
-Fs(58)2025 2864 y Fr(--record_append)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g
+Ft(58)2025 3129 y Fs(--record_append)11 b Ff(:)17 b(:)c(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(58)2025 2952 y Fr(--retain)12
-b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+h(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(58)2025 3217 y Fs(--retain)12
+b Ff(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)39 b Fs(35)2025 3041 y Fr(--retain_all_dimensions)28
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)50 b Fs(182)2025 3129 y Fr(--revision)11 b
-Fa(:)k(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)39 b Ft(35)2025 3306 y Fs(--retain_all_dimensions)28
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)50 b Ft(194)2025 3394 y Fs(--revision)11 b
+Ff(:)k(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fs(14,)27 b(102)2025 3217 y Fr(--rph_dmn)7 b Fa(:)15
+b Ft(14,)27 b(112)2025 3483 y Fs(--rph_dmn)7 b Ff(:)15
 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-34 b Fs(182)2025 3306 y Fr(--rth_dbl)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g
+34 b Ft(194)2025 3571 y Fs(--rth_dbl)7 b Ff(:)15 b(:)e(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b
+Ft(102)2025 3660 y Fs(--rth_flt)7 b Ff(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
-b Fs(92)2025 3394 y Fr(--rth_flt)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b
-Fs(92)2025 3483 y Fr(--rtn)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Ft(102)2025
+3748 y Fs(--rtn)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b
+Ft(35)2025 3836 y Fs(--scr)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(35)2025 3571 y Fr(--scr)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(182)2025 3660 y Fr(--script)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Ft(194)2025 3925 y Fs(--script)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
-Fs(104)2025 3748 y Fr(--script-file)14 b Fa(:)i(:)d(:)g(:)g(:)h(:)f(:)g
+Ft(116)2025 4013 y Fs(--script-file)14 b Ff(:)i(:)d(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(104)2025 3836 y Fr(--secret)10
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)h(:)f(:)g(:)41 b Ft(116)2025 4102 y Fs(--secret)10
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)37 b Fs(182)2025 3925 y Fr(--sng_fmt)12 b
-Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)37 b Ft(194)2025 4190 y Fs(--sng_fmt)12 b
+Ff(:)j(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(182,)27 b(187)2025 4013 y Fr(--spt)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g
+b Ft(194,)27 b(199)2025 4279 y Fs(--spt)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(104)2025 4102 y Fr(--ssh)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Ft(116)2025 4367 y Fs(--ssh)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(182)2025 4190 y Fr(--string)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)
+b Ft(194)2025 4456 y Fs(--string)14 b Ff(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(182,)27 b(187)2025
-4279 y Fr(--thr_nbr)g Fh(thr_nbr)13 b Fa(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)
+(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Ft(194,)27 b(199)2025
+4544 y Fs(--thr_nbr)g Fi(thr_nbr)13 b Ff(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)39 b Fs(25)2025 4367 y Fr(--threads)27 b Fh(thr_nbr)13
-b Fa(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fs(25)2025
-4456 y(`)p Fr(--ulm_nm)28 b Fh(ulm_nm)p Fs(')12 b Fa(:)i(:)f(:)g(:)g(:)
+(:)g(:)h(:)39 b Ft(25)2025 4632 y Fs(--threads)27 b Fi(thr_nbr)13
+b Ff(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Ft(25)2025
+4721 y(`)p Fs(--ulm_nm)28 b Fi(ulm_nm)p Ft(')12 b Ff(:)i(:)f(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(170)2025 4544 y Fr(--union)22
-b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)39 b Ft(182)2025 4809 y Fs(--union)22
+b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)47 b Fs(40,)27 b(42)2025 4632 y Fr(--units)12 b Fa(:)j(:)e(:)g(:)g
+g(:)47 b Ft(40,)27 b(42)2025 4898 y Fs(--units)12 b Ff(:)j(:)e(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fs(182)2025 4721 y Fr(--unn)9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+b Ft(194)2025 4986 y Fs(--unn)9 b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b
-Fs(40,)27 b(42)2025 4809 y Fr(--unpack)10 b Fa(:)15 b(:)e(:)g(:)g(:)g
+Ft(40,)27 b(42)2025 5075 y Fs(--unpack)10 b Ff(:)15 b(:)e(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
-b Fs(191)2025 4898 y Fr(--upk)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Ft(203)2025 5163 y Fs(--upk)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(191)2025 4986 y Fr(--var_val)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)g
+b Ft(203)2025 5252 y Fs(--var_val)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(182,)27 b(187)2025 5075
-y Fr(--variable)h Fh(var)8 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)39 b Ft(194,)27 b(199)2025 5340
+y Fs(--variable)h Fi(var)8 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-34 b Fs(40,)27 b(186)2025 5163 y Fr(--version)14 b Fa(:)h(:)e(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(14,)27
-b(102)2025 5252 y Fr(--vrs)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
+34 b Ft(40,)27 b(198)p eop end
+%%Page: 269 275
+TeXDict begin 269 274 bop 150 -116 a FE(General)31 b(Index)2902
+b(269)150 299 y Fs(--version)14 b Ff(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(14,)27
-b(102)2025 5340 y Fr(--weight)g Fh(weight)16 b Fa(:)f(:)e(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)43 b Fs(206)p eop end
-%%Page: 257 263
-TeXDict begin 257 262 bop 150 -116 a FD(General)31 b(Index)2902
-b(257)150 299 y Fr(--weight)27 b Fh(wgt1)p Fr([,)p Fh(wgt2)p
-Fr(])c Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fs(173)150 387 y
-Fr(--wgt_var)28 b Fh(weight)13 b Fa(:)i(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)40 b Fs(206)150 476 y Fr(--wgt_var)28 b Fh(wgt1)p
-Fr([,)p Fh(wgt2)p Fr(])18 b Fa(:)d(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(173)150
-564 y Fr(--write_tmp_fl)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)40 b Fs(16)150 653 y Fr(--wrt_tmp_fl)22 b
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)h(:)f(:)g(:)40 b Ft(14,)27 b(112)150 387 y
+Fs(--vrs)7 b Ff(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)33 b Ft(14,)27 b(112)150 476
+y Fs(--weight)g Fi(weight)16 b Ff(:)f(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)43 b Ft(218)150 564 y Fs(--weight)27 b Fi(wgt1)p
+Fs([,)p Fi(wgt2)p Fs(])c Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
+b Ft(185)150 653 y Fs(--wgt_var)28 b Fi(weight)13 b Ff(:)i(:)e(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)40 b Ft(218)150 741 y Fs(--wgt_var)28
+b Fi(wgt1)p Fs([,)p Fi(wgt2)p Fs(])18 b Ff(:)d(:)e(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Ft(185)150 830 y Fs(--write_tmp_fl)14 b Ff(:)i(:)d(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Ft(16)150 918 y Fs(--wrt_tmp_fl)22
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fs(16)150 741 y Fr(--xcl)7 b Fa(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fs(40,)27
-b(186)150 830 y Fr(--xml)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(183)150 918 y Fr(--xml_no_location)25 b Fa(:)13
+b Ft(16)150 1007 y Fs(--xcl)7 b Ff(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Ft(40,)27
+b(198)150 1095 y Fs(--xml)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
+b Ft(195)150 1184 y Fs(--xml_no_location)25 b Ff(:)13
 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fs(183)150 1007 y
-Fr(--xml_spr_chr)14 b Fa(:)i(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Ft(195)150 1272 y
+Fs(--xml_spr_chr)14 b Ff(:)i(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)41 b Fs(183)150 1095 y Fr(--xml_spr_nmr)14 b Fa(:)i(:)d(:)h(:)f
+(:)g(:)41 b Ft(195)150 1360 y Fs(--xml_spr_nmr)14 b Ff(:)i(:)d(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(183)150 1184
-y Fr(-0)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Ft(195)150 1449
+y Fs(-0)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37
-b Fs(55)150 1272 y Fr(-3)17 b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Ft(55)150 1537 y Fs(-3)17 b Ff(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fs(10,)26 b(35)150 1360 y Fr(-4)17 b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g
+b Ft(10,)26 b(35)150 1626 y Fs(-4)17 b Ff(:)c(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fs(10,)26 b(35)150 1449 y Fr(-5)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(10,)26 b(35)150 1714 y Fs(-5)15 b Ff(:)e(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fs(35,)27 b(177)150 1537 y Fr(-6)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h
+b Ft(35,)27 b(189)150 1803 y Fs(-6)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)37 b Fs(35)150 1626 y Fr(-7)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)37 b Ft(35)150 1891 y Fs(-7)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)37 b Fs(35)150 1714 y Fr(-a)12 b Fa(:)i(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)37 b Ft(35)150 1980 y Fs(-a)12 b Ff(:)i(:)f(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39
-b Fs(177,)27 b(186)150 1803 y Fr(-A)21 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b
-Fs(16,)26 b(98,)h(186)150 1891 y(`)p Fr(-A)p Fs(')22
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(194)150 1980
-y(`)p Fr(-b)p Fs(')8 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(151,)27
-b(164)150 2068 y Fr(-b)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35
-b Fs(178)150 2157 y Fr(-B)26 b Fh(mask_cond)11 b Fa(:)k(:)e(:)g(:)g(:)h
+b Ft(189,)27 b(198)150 2068 y Fs(-A)19 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Ft(16,)27
+b(108,)g(198)150 2157 y(`)p Fs(-A)p Ft(')22 b Ff(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)48 b Ft(206)150 2245 y(`)p Fs(-b)p
+Ft(')8 b Ff(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)35 b Ft(163,)27 b(176)150 2334
+y Fs(-b)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35
+b Ft(190)150 2422 y Fs(-B)26 b Fi(mask_cond)11 b Ff(:)k(:)e(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)38 b Fs(206,)27 b(207)150 2245 y
-Fr(-c)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)g(:)g(:)38 b Ft(218,)27 b(219)150 2510 y
+Fs(-c)15 b Ff(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(45,)27 b(101)150
-2334 y Fr(-C)19 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Ft(45,)27 b(111)150
+2599 y Fs(-C)19 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)45 b Fs(45,)27 b(101,)g(151)150 2422
-y Fr(-D)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)h(:)f(:)45 b Ft(45,)27 b(111,)g(163)150 2687
+y Fs(-D)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37
-b Fs(13)150 2510 y Fr(-D)26 b Fh(debug-level)16 b Fa(:)g(:)d(:)g(:)g(:)
+b Ft(13)150 2776 y Fs(-D)26 b Fi(debug-level)16 b Ff(:)g(:)d(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)43 b Fs(14,)27 b(22,)f(27)150 2599 y Fr(-d)g Fh(dim)p
-Fr(,[)p Fh(min)p Fr(],[)p Fh(max)p Fr(],[)p Fh(stride)p
-Fr(],[)p Fh(sub)q(cycl)q(e)p Fr(])11 b Fa(:)19 b(:)13
-b(:)g(:)37 b Fs(59)150 2687 y Fr(-d)26 b Fh(dim)p Fr(,[)p
-Fh(min)p Fr(],[)p Fh(max)p Fr(],)p Fh(stride)10 b Fa(:)18
+(:)g(:)43 b Ft(14,)27 b(22,)f(27)150 2864 y Fs(-d)g Fi(dim)p
+Fs(,[)p Fi(min)p Fs(],[)p Fi(max)p Fs(],[)p Fi(stride)p
+Fs(],[)p Fi(sub)q(cycl)q(e)p Fs(])11 b Ff(:)19 b(:)13
+b(:)g(:)37 b Ft(59)150 2953 y Fs(-d)26 b Fi(dim)p Fs(,[)p
+Fi(min)p Fs(],[)p Fi(max)p Fs(],)p Fi(stride)10 b Ff(:)18
 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)36 b Fs(57)150 2776 y Fr(-d)26 b Fh(dim)p Fr(,[)p
-Fh(min)p Fr(][,[)p Fh(max)p Fr(][,[)p Fh(stride)p Fr(]]])14
-b Fa(:)19 b(:)13 b(:)g(:)41 b Fs(55,)26 b(60,)h(63,)304
-2863 y(66)150 2951 y Fr(-d)f Fh(dim)p Fr(,[)p Fh(min)p
-Fr(][,[)p Fh(max)p Fr(]])e Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)36 b Ft(57)150 3041 y Fs(-d)26 b Fi(dim)p Fs(,[)p
+Fi(min)p Fs(][,[)p Fi(max)p Fs(][,[)p Fi(stride)p Fs(]]])14
+b Ff(:)19 b(:)13 b(:)g(:)41 b Ft(55,)26 b(60,)h(63,)304
+3128 y(66)150 3217 y Fs(-d)f Fi(dim)p Fs(,[)p Fi(min)p
+Fs(][,[)p Fi(max)p Fs(]])e Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fs(206)150 3040 y Fr(-f)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Ft(218)150 3305 y Fs(-f)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35
-b Fs(153)150 3128 y Fr(-F)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(165)150 3394 y Fs(-F)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)37 b Fs(54)150 3217 y Fr(-G)26 b Fh(gpe_dsc)14 b Fa(:)h(:)e(:)g(:)g
+(:)37 b Ft(54)150 3482 y Fs(-G)26 b Fi(gpe_dsc)14 b Ff(:)h(:)e(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40
-b Fs(46)150 3305 y Fr(-g)26 b Fh(grp)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Ft(46)150 3571 y Fs(-g)26 b Fi(grp)7 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33
-b Fs(40)150 3394 y Fr(-h)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fs(98,)27 b(156)150 3482 y Fr(-H)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fs(99,)27 b(179)150 3571 y Fr(-I)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)35 b Fs(207)150 3659 y Fr(-L)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(40)150 3659 y Fs(-h)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Ft(108,)27
+b(168)150 3748 y Fs(-H)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Ft(109,)27
+b(191)150 3836 y Fs(-I)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35
+b Ft(219)150 3925 y Fs(-L)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)37 b Fs(78)150 3748 y Fr(-l)26 b Fh(output-path)10
-b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fs(30,)26
-b(32)150 3836 y Fr(-m)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)37 b Ft(88)150 4013 y Fs(-l)26 b Fi(output-path)10
+b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Ft(30,)26
+b(32)150 4101 y Fs(-m)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35
-b Fs(181)150 3925 y Fr(-M)19 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Ft(193)150 4190 y Fs(-M)19 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Fs(37,)27 b(171,)g(180)150
-4013 y Fr(-M)f Fh(cnk_map)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Ft(37,)27 b(183,)g(192)150
+4278 y Fs(-M)f Fi(cnk_map)14 b Ff(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fs(75)150 4101
-y Fr(-m)26 b Fh(mask_var)9 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Ft(75)150 4367
+y Fs(-m)26 b Fi(mask_var)9 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(206)150 4190 y Fr(-M)26
-b Fh(pck_map)12 b Fa(:)i(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Ft(218)150 4455 y Fs(-M)26
+b Fi(pck_map)12 b Ff(:)i(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)38 b Fs(191)150 4278 y Fr(-N)15 b
-Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)38 b Ft(203)150 4544 y Fs(-N)15 b
+Ff(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)41 b Fs(86,)27 b(208)150 4367 y Fr(-n)f
-Fh(loop)17 b Fa(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)41 b Ft(96,)27 b(220)150 4632 y Fs(-n)f
+Fi(loop)17 b Ff(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-44 b Fs(19,)27 b(21,)f(28)150 4455 y Fr(-O)17 b Fa(:)c(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)44 b Fs(16,)26 b(98)150 4544 y Fr(-o)g Fh(fl_out)e
-Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)50
-b Fs(20,)26 b(30)150 4632 y Fr(-P)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+44 b Ft(19,)27 b(21,)f(28)150 4721 y Fs(-O)15 b Ff(:)e(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
+b Ft(16,)27 b(108)150 4809 y Fs(-o)f Fi(fl_out)e Ff(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)50
+b Ft(20,)26 b(30)150 4898 y Fs(-P)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)35 b Fs(182)150 4721 y Fr(-p)26 b Fh(input-path)12
-b Fa(:)k(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)g(:)35 b Ft(194)150 4986 y Fs(-p)26 b Fi(input-path)12
+b Ff(:)k(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b
-Fs(28,)26 b(32)150 4809 y Fr(-P)g Fh(pck_plc)12 b Fa(:)i(:)g(:)f(:)g(:)
+Ft(28,)26 b(32)150 5075 y Fs(-P)g Fi(pck_plc)12 b Ff(:)i(:)g(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
-b Fs(190)150 4898 y Fr(-q)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Ft(202)150 5163 y Fs(-q)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35
-b Fs(182)150 4986 y Fr(-Q)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Ft(194)150 5252 y Fs(-Q)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b
-Fs(182,)27 b(187)150 5075 y Fr(-r)21 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
+Ft(194,)27 b(199)150 5340 y Fs(-r)21 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Fs(13,)26
-b(14,)h(102)150 5163 y Fr(-R)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)37 b Fs(35)150 5252 y Fr(-s)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Ft(13,)26
+b(14,)h(112)2025 299 y Fs(-R)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39
-b Fs(182,)27 b(187)150 5340 y Fr(-t)f Fh(thr_nbr)c Fa(:)13
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47
-b Fs(23,)26 b(25)2025 299 y Fr(-u)8 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)37 b Ft(35)2025 389 y Fs(-s)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)39
+b Ft(194,)27 b(199)2025 480 y Fs(-t)f Fi(thr_nbr)c Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46
+b Ft(23,)27 b(25)2025 571 y Fs(-u)8 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)35 b Fs(182)2025 388 y Fr(-U)8 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
+(:)g(:)35 b Ft(194)2025 661 y Fs(-U)8 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)35 b Fs(191)2025 478 y(`)p Fr(-u)26 b Fh(ulm_nm)p
-Fs(')10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)35 b Ft(203)2025 752 y(`)p Fs(-u)26 b Fi(ulm_nm)p
+Ft(')10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)37 b Fs(170)2025 567 y(`)p Fr(-v)p Fs(')22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)37 b Ft(182)2025 843 y(`)p Fs(-v)p Ft(')22
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fs(194)2025 657
-y Fr(-V)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Ft(206)2025 933
+y Fs(-V)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fs(182,)27 b(187)2025
-746 y Fr(-v)f Fh(var)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(40,)27 b(186)2025
-836 y Fr(-w)f Fh(weight)14 b Fa(:)g(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fs(206)2025 925
-y Fr(-w)26 b Fh(wgt1)p Fr([,)p Fh(wgt2)p Fr(])21 b Fa(:)13
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Ft(194,)27 b(199)2025
+1024 y Fs(-v)f Fi(var)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(40,)27 b(198)2025
+1114 y Fs(-w)f Fi(weight)14 b Ff(:)g(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Ft(218)2025 1205
+y Fs(-w)26 b Fi(wgt1)p Fs([,)p Fi(wgt2)p Fs(])21 b Ff(:)13
 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fs(173)2025
-1015 y Fr(-x)15 b Fa(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Ft(185)2025
+1296 y Fs(-x)15 b Ff(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(40,)27
-b(186)2025 1104 y Fr(-X)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Ft(40,)27
+b(198)2025 1386 y Fs(-X)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
-b Fs(64)2025 1193 y Fr(-X)26 b Fh(lon_min)p Fr(,)p Fh(lon_max)p
-Fr(,)p Fh(lat_min)p Fr(,)p Fh(lat_ma)q(x)h Fa(:)13 b(:)g(:)g(:)g(:)g(:)
-h(:)f(:)47 b Fs(64)2025 1283 y Fr(-y)26 b Fh(op_typ)c
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(64)2025 1477 y Fs(-X)26 b Fi(lon_min)p Fs(,)p Fi(lon_max)p
+Fs(,)p Fi(lat_min)p Fs(,)p Fi(lat_ma)q(x)h Ff(:)13 b(:)g(:)g(:)g(:)g(:)
+h(:)f(:)47 b Ft(64)2025 1568 y Fs(-y)26 b Fi(op_typ)c
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47
-b Fs(84,)27 b(162)2025 1528 y FB(.)2025 1648 y Fh(.)11
-b Fa(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Ft(94,)27 b(174)2025 1818 y FC(.)2025 1941 y Fi(.)11
+b Ff(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fs(202)2025
-1738 y Fr(.)26 b Fs(\(wildcard)g(c)n(haracter\))18 b
-Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(44)2025 1827 y
-Fr(.bashrc)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Ft(214)2025
+2032 y Fs(.)26 b Ft(\(wildcard)g(c)n(haracter\))18 b
+Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(44)2025 2123 y
+Fs(.bashrc)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fs(184)2025 1917 y Fr(.netrc)17
-b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Ft(196)2025 2213 y Fs(.netrc)17
+b Ff(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)44 b Fs(30)2025 2006 y Fr(.rhosts)15
-b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)g(:)g(:)g(:)g(:)g(:)44 b Ft(30)2025 2304 y Fs(.rhosts)15
+b Ff(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)41 b Fs(30)2025 2260 y FB(/)2025 2381
-y Fr(/)11 b Fa(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)41 b Ft(30)2025 2564 y FC(/)2025 2687
+y Fs(/)11 b Ff(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
-b Fs(162)2025 2471 y Fr(/)26 b Fs(\(division\))9 b Fa(:)k(:)h(:)f(:)g
+b Ft(174)2025 2778 y Fs(/)26 b Ft(\(division\))9 b Ff(:)k(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36
-b Fs(151)2025 2560 y Fr(/*...*/)27 b Fs(\(commen)n(t\))22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fs(105)2025
-2649 y Fr(//)26 b Fs(\(commen)n(t\))18 b Fa(:)12 b(:)i(:)f(:)g(:)g(:)g
+b Ft(163)2025 2869 y Fs(/*...*/)27 b Ft(\(commen)n(t\))22
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Ft(117)2025
+2959 y Fs(//)26 b Ft(\(commen)n(t\))18 b Ff(:)12 b(:)i(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(105)2025 2894
-y FB(:)2025 3015 y Fr(:)26 b Fs(\(separator)g(c)n(haracter\))d
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(46)2025 3260 y
-FB(;)2025 3380 y Fr(;)26 b Fs(\(end)f(of)h(statemen)n(t\))10
-b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Fs(105)2025
-3625 y Fc(<)2025 3745 y Fr(<arpa/nameser.h>)11 b Fa(:)16
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Ft(117)2025 3210
+y FC(:)2025 3333 y Fs(:)26 b Ft(\(separator)g(c)n(haracter\))d
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Ft(46)2025 3584 y
+FC(;)2025 3707 y Fs(;)26 b Ft(\(end)f(of)h(statemen)n(t\))10
+b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Ft(117)2025
+3958 y Fb(<)2025 4081 y Fs(<arpa/nameser.h>)11 b Ff(:)16
 b(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fs(8)2025
-3835 y Fr(<resolv.h>)9 b Fa(:)15 b(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Ft(8)2025
+4171 y Fs(<resolv.h>)9 b Ff(:)15 b(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fs(8)2025 4080
-y FB(?)2025 4200 y Fr(?)26 b Fs(\(\014lename)f(expansion\))11
-b Fa(:)j(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)38 b Fs(44)2025 4290
-y Fr(?)26 b Fs(\(question)f(mark\))19 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Ft(8)2025 4422
+y FC(?)2025 4545 y Fs(?)26 b Ft(\(\014lename)f(expansion\))11
+b Ff(:)j(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)38 b Ft(44)2025 4636
+y Fs(?)26 b Ft(\(question)f(mark\))19 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)46 b Fs(159)2025 4379 y Fr(?)26 b Fs(\(wildcard)g(c)n
-(haracter\))18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(44)2025
-4646 y FB(@)2025 4766 y Fr(@)26 b Fs(\(attribute\))6
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)46 b Ft(171)2025 4727 y Fs(?)26 b Ft(\(wildcard)g(c)n
+(haracter\))18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(44)2025
+4999 y FC(@)2025 5122 y Fs(@)26 b Ft(\(attribute\))6
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-33 b Fs(105)2025 4856 y Fr(@)26 b Fs(\(separator)g(c)n(haracter\))d
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(46)2025 5129 y
-FB([)2025 5249 y Fr([])26 b Fs(\(arra)n(y)g(delimiters\))8
-b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35 b Fs(105)p
-eop end
-%%Page: 258 264
-TeXDict begin 258 263 bop 150 -116 a FD(258)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fc(^)150 416 y Fr(^)c
-Fs(\(p)r(o)n(w)n(er\))c Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+33 b Ft(117)2025 5213 y Fs(@)26 b Ft(\(separator)g(c)n(haracter\))d
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Ft(46)p eop end
+%%Page: 270 276
+TeXDict begin 270 275 bop 150 -116 a FE(270)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC([)150 419 y Fs([])c
+Ft(\(arra)n(y)g(delimiters\))8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+34 b Ft(117)150 674 y Fb(^)150 794 y Fs(^)26 b Ft(\(p)r(o)n(w)n(er\))c
+Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)49 b Ft(163)150 883 y Fs(^)26 b Ft(\(wildcard)g(c)n(haracter\))
+18 b Ff(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(44)p 159 1127
+41 6 v 150 1247 a Fs(_ChunkSizes)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)49 b Fs(151)150 504 y
-Fr(^)26 b Fs(\(wildcard)g(c)n(haracter\))18 b Fa(:)c(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)44 b Fs(44)p 159 741 41 6 v 150 858 a Fr(_ChunkSizes)22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fs(178)150 946 y Fr(_DeflateLevel)14 b Fa(:)i(:)d(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(178)150 1034 y Fr(_Endianness)22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fs(178)150 1122 y Fr(_FillValue)13 b Fa(:)j(:)d(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)40 b Fs(71,)27 b(82,)g(156,)g(174,)g(192,)g(205)
-150 1210 y Fr(_Fletcher32)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Ft(190)150 1336
+y Fs(_DeflateLevel)14 b Ff(:)i(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)41 b Ft(190)150 1425 y Fs(_Endianness)22 b Ff(:)13
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
+b Ft(190)150 1514 y Fs(_FillValue)13 b Ff(:)j(:)d(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)40 b Ft(71,)27 b(92,)g(168,)g(186,)g(204,)g(217)
+150 1603 y Fs(_Fletcher32)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Fs(178)150 1298 y Fr(_Format)12
-b Fa(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Ft(190)150 1693 y Fs(_Format)12
+b Ff(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)39 b Fs(178)150 1385 y Fr(_NOFILL)12 b
-Fa(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)39 b Ft(190)150 1782 y Fs(_NOFILL)12 b
+Ff(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)39 b Fs(178)150 1473 y Fr(_Shuffle)10 b Fa(:)15
+h(:)f(:)g(:)39 b Ft(190)150 1871 y Fs(_Shuffle)10 b Ff(:)15
 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)37 b Fs(178)150 1561 y Fr(_SOURCE_FORMAT)12 b Fa(:)k(:)d(:)g(:)g(:)
+g(:)37 b Ft(190)150 1960 y Fs(_SOURCE_FORMAT)12 b Ff(:)k(:)d(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fs(178)150 1649 y
-Fr(_Storage)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Ft(190)150 2049 y
+Fs(_Storage)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(178)150 1905 y Fc(\\)150
-2023 y Fr(\\)26 b Fs(\(bac)n(kslash\))15 b Fa(:)e(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(190)150 2312 y Fb(\\)150
+2432 y Fs(\\)26 b Ft(\(bac)n(kslash\))15 b Ff(:)e(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(159)150 2111
-y Fr(\\")26 b Fs(\(protected)f(double)h(quote\))21 b
-Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)49 b Fs(159)150 2199 y Fr(\\')26 b Fs(\(protected)f(end)h
-(quote\))21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(159)150 2286 y
-Fr(\\?)26 b Fs(\(protected)f(question)h(mark\))16 b Fa(:)d(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Ft(171)150 2521
+y Fs(\\")26 b Ft(\(protected)f(double)h(quote\))21 b
+Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)49 b Ft(171)150 2611 y Fs(\\')26 b Ft(\(protected)f(end)h
+(quote\))21 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(171)150 2700 y
+Fs(\\?)26 b Ft(\(protected)f(question)h(mark\))16 b Ff(:)d(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fs(159)150 2374 y Fr(\\\\)26 b Fs(\()p Fp(ASCI)r(I)g
-Fr(\\)p Fs(,)g(bac)n(kslash\))12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+b Ft(171)150 2789 y Fs(\\\\)26 b Ft(\()p Fq(ASCI)r(I)g
+Fs(\\)p Ft(,)g(bac)n(kslash\))12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38
-b Fs(159)150 2462 y Fr(\\\\)26 b Fs(\(protected)f(bac)n(kslash\))12
-b Fa(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)39 b Fs(159)150 2550 y Fr(\\a)26
-b Fs(\()p Fp(ASCI)r(I)g Fs(BEL,)h(b)r(ell\))17 b Fa(:)d(:)f(:)g(:)g(:)g
+b Ft(171)150 2878 y Fs(\\\\)26 b Ft(\(protected)f(bac)n(kslash\))12
+b Ff(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)39 b Ft(171)150 2967 y Fs(\\a)26
+b Ft(\()p Fq(ASCI)r(I)g Ft(BEL,)h(b)r(ell\))17 b Ff(:)d(:)f(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)44 b Fs(159)150 2638 y Fr(\\b)26 b Fs(\()p Fp(ASCI)r(I)g
-Fs(BS,)g(bac)n(kspace\))9 b Fa(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fs(159)150
-2726 y Fr(\\f)26 b Fs(\()p Fp(ASCI)r(I)g Fs(FF,)h(formfeed\))11
-b Fa(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)38 b Fs(159)150 2814 y Fr(\\n)26
-b Fs(\()p Fp(ASCI)r(I)g Fs(LF,)g(linefeed\))14 b Fa(:)g(:)f(:)g(:)g(:)g
+g(:)g(:)44 b Ft(171)150 3057 y Fs(\\b)26 b Ft(\()p Fq(ASCI)r(I)g
+Ft(BS,)g(bac)n(kspace\))9 b Ff(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Ft(171)150
+3146 y Fs(\\f)26 b Ft(\()p Fq(ASCI)r(I)g Ft(FF,)h(formfeed\))11
+b Ff(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)38 b Ft(171)150 3235 y Fs(\\n)26
+b Ft(\()p Fq(ASCI)r(I)g Ft(LF,)g(linefeed\))14 b Ff(:)g(:)f(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-40 b Fs(159)150 2902 y Fr(\\n)26 b Fs(\(linefeed\))9
-b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+40 b Ft(171)150 3324 y Fs(\\n)26 b Ft(\(linefeed\))9
+b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-36 b Fs(187)150 2990 y Fr(\\r)26 b Fs(\()p Fp(ASCI)r(I)g
-Fs(CR,)g(carriage)i(return\))19 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fs(159)150 3077 y Fr(\\t)26
-b Fs(\()p Fp(ASCI)r(I)g Fs(HT,)g(horizon)n(tal)h(tab\))17
-b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fs(159)150 3165 y Fr(\\t)26 b Fs(\(horizon)n(tal)h(tab\))19
-b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fs(187)150
-3253 y Fr(\\v)26 b Fs(\()p Fp(ASCI)r(I)g Fs(VT,)g(v)n(ertical)h(tab\))9
-b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)36 b Fs(159)150 3512 y Fc(|)150 3629 y Fr(|)26
-b Fs(\(wildcard)g(c)n(haracter\))18 b Fa(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)
+36 b Ft(199)150 3413 y Fs(\\r)26 b Ft(\()p Fq(ASCI)r(I)g
+Ft(CR,)g(carriage)i(return\))19 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Ft(171)150 3502 y Fs(\\t)26
+b Ft(\()p Fq(ASCI)r(I)g Ft(HT,)g(horizon)n(tal)h(tab\))17
+b Ff(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)43
+b Ft(171)150 3592 y Fs(\\t)26 b Ft(\(horizon)n(tal)h(tab\))19
+b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Ft(199)150
+3681 y Fs(\\v)26 b Ft(\()p Fq(ASCI)r(I)g Ft(VT,)g(v)n(ertical)h(tab\))9
+b Ff(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)36 b Ft(171)150 3946 y Fb(|)150 4066 y Fs(|)26
+b Ft(\(wildcard)g(c)n(haracter\))18 b Ff(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(44)150 3881 y FB(0)150 3999 y Fr(0)26 b Fs(\(NUL\))c
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Ft(44)150 4325 y FC(0)150 4445 y Fs(0)26 b Ft(\(NUL\))c
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)50 b Fs(159)150 4251 y FB(3)150 4368 y Fs(32-bit)26
-b(o\013set)g(\014le)g(format)c Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)50 b Ft(171)150 4704 y FC(3)150 4824 y Ft(32-bit)26
+b(o\013set)g(\014le)g(format)c Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48
-b Fs(37)150 4605 y FB(6)150 4722 y Fs(64-bit)26 b(o\013set)g(\014le)g
-(format)c Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(37)150
-4810 y Fr(64BIT)27 b Fs(\014les)11 b Fa(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Ft(37)150 5068 y FC(6)150 5188 y Ft(64-bit)26 b(o\013set)g(\014le)g
+(format)c Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Ft(37)150
+5277 y Fs(64BIT)27 b Ft(\014les)11 b Ff(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)37 b Fs(35)150
-5047 y FB(A)150 5164 y Fm(abs)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)37 b Ft(35)2025
+299 y FC(A)2025 416 y Fn(abs)10 b Ff(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
+b Ft(163)2025 504 y(absolute)26 b(v)l(alue)14 b Ff(:)f(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34
-b Fs(151)150 5252 y(absolute)26 b(v)l(alue)14 b Fa(:)f(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Ft(163)2025
+592 y Fn(acos)12 b Ff(:)i(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41 b Fs(151)150 5340
-y Fm(acos)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(151)2025
-299 y Fm(acosh)7 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(151)2025
-387 y Fr(add)23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50 b
-Fs(162)2025 476 y Fm(add)p 2154 476 24 4 v 33 w(o\013set)20
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36 b
+Ft(163)2025 680 y Fn(acosh)7 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
+b Ft(163)2025 768 y Fs(add)23 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)44 b Fs(24)2025 564 y Fr(add_offset)22 b
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)47 b Fs(82,)27 b(171,)g(190,)g(200)2025
-653 y(adding)e(data)e Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-49 b Fs(162,)27 b(173)2025 741 y(addition)20 b Fa(:)13
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50
+b Ft(174)2025 856 y Fn(add)p 2154 856 24 4 v 33 w(o\013set)20
+b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)44 b Ft(24)2025 944 y Fs(add_offset)22 b
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)47 b Ft(92,)27 b(183,)g(202,)g(212)2025
+1032 y(adding)e(data)e Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)49 b Ft(174,)27 b(185)2025 1120 y(addition)20 b Ff(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(151,)27
-b(162,)g(173)2025 830 y(aggregation)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b Ft(163,)27
+b(174,)g(185)2025 1208 y(aggregation)7 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(219)2025
-918 y(Aleksandar)25 b(Jelenak)11 b Fa(:)k(:)e(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Ft(231)2025
+1296 y(Aleksandar)25 b(Jelenak)11 b Ff(:)k(:)e(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)38 b Fs(212)2025 1006 y(Alexander)25 b(Hansen)14
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(212)2025
-1095 y Fr(alias)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)38 b Ft(224)2025 1383 y(Alexander)25 b(Hansen)14
+b Ff(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Ft(224)2025
+1471 y Fs(alias)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(163)2025
-1183 y(alias)7 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(175)2025
+1559 y(alias)7 b Ff(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b
-Fs(184)2025 1272 y Fr(alias)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+Ft(196)2025 1647 y Fs(alias)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(191)2025 1360 y(`)p Fr(all)p Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g
+b Ft(203)2025 1735 y(`)p Fs(all)p Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)47 b Fs(73)2025 1449 y(alphab)r(etization)10 b
-Fa(:)k(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)47 b Ft(73)2025 1823 y(alphab)r(etization)10 b
+Ff(:)k(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fs(177)2025 1537 y(alphab)r(etize)26 b(output)20 b
-Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(186)2025
-1625 y(alternate)26 b(in)n(v)n(o)r(cations)d Fa(:)13
+b Ft(189)2025 1911 y(alphab)r(etize)26 b(output)20 b
+Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)48 b Ft(198)2025
+1999 y(alternate)26 b(in)n(v)n(o)r(cations)d Ff(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(162)2025 1714 y(anc)n(hor)23
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Ft(174)2025 2087 y(anc)n(hor)23
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)49 b Fs(41)2025 1802 y(anc)n(horing)23
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)49 b Ft(41)2025 2175 y(anc)n(horing)23
+b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)49 b Fs(41)2025 1891 y(ancillary)27 b(v)l(ariables)f(con)n
-(v)n(en)n(tion)13 b Fa(:)f(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)40 b Fs(101)2025 1979 y Fr(ancillary_variables)16
-b Fa(:)h(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fs(101)2025 2068 y(Andrea)25
-b(Cimatoribus)12 b Fa(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(212)2025 2156 y(Andrew)25 b(Witten)n(b)r(erg)19
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46 b Fs(212)2025
-2245 y(ann)n(ual)25 b(a)n(v)n(erage)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)46 b Fs(226)2025 2333 y(ann)n(ual)25
-b(a)n(v)n(erage)i(from)f(daily)g(data)20 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46 b Fs(215)2025
-2421 y(ann)n(ual)25 b(a)n(v)n(erage)i(from)f(mon)n(thly)f(data)14
-b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
-b Fs(215)2025 2510 y(anomalies)11 b Fa(:)k(:)e(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)h(:)f(:)49 b Ft(41)2025 2263 y(ancillary)27 b(v)l(ariables)f(con)n
+(v)n(en)n(tion)13 b Ff(:)f(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)40 b Ft(111)2025 2351 y Fs(ancillary_variables)30
+b Ft(attribute)12 b Ff(:)g(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39
+b Ft(111,)27 b(200)2025 2439 y(Andrea)e(Cimatoribus)12
+b Ff(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39 b Ft(224)2025
+2526 y(Andrew)25 b(Witten)n(b)r(erg)19 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)46 b Ft(224)2025 2614 y(ann)n(ual)25 b(a)n(v)n(erage)c
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46
+b Ft(238)2025 2702 y(ann)n(ual)25 b(a)n(v)n(erage)i(from)f(daily)g
+(data)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)46 b Ft(227)2025 2790 y(ann)n(ual)25 b(a)n(v)n(erage)i(from)f(mon)n
+(thly)f(data)14 b Ff(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
+b Ft(227)2025 2878 y(anomalies)11 b Ff(:)k(:)e(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)38 b Fs(164,)27 b(226,)g(233)2025 2598 y Fp(ANSI)18
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)38 b Ft(176,)27 b(238,)g(245)2025 2966 y Fq(ANSI)18
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fs(6)2025 2687
-y Fr(ANSI)26 b(C)c Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Ft(6)2025 3054
+y Fs(ANSI)26 b(C)c Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fs(153)2025
-2775 y(app)r(ending)25 b(data)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Ft(165)2025
+3142 y(app)r(ending)25 b(data)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-39 b Fs(151,)27 b(176)2025 2864 y(app)r(ending)e(to)h(\014les)18
-b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)45 b Fs(16,)27 b(98,)g(186)2025 2952
-y(app)r(ending)e(v)l(ariables)d Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(16,)27 b(17,)g(104,)g(194)2025
-3041 y Fp(AR4)11 b Fa(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b
-Fs(167)2025 3129 y(arccosine)27 b(function)18 b Fa(:)13
-b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(151)2025
-3217 y(arcsine)26 b(function)21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)47 b Fs(151)2025 3306 y(arctangen)n(t)26
-b(function)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36
-b Fs(151)2025 3394 y Fr(area)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
-b Fs(99)2025 3483 y(area-a)n(v)n(eraging)10 b Fa(:)k(:)f(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(226)2025 3571
-y(arithmetic)26 b(op)r(erators)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34 b Fs(71,)27
-b(72,)g(206)2025 3660 y(arithmetic)f(pro)r(cessor)14
-b Fa(:)g(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(104)2025
-3748 y Fp(ARM)25 b Fs(con)n(v)n(en)n(tions)11 b Fa(:)i(:)g(:)g(:)g(:)h
+39 b Ft(163,)27 b(188)2025 3230 y(app)r(ending)e(to)h(\014les)16
+b Ff(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)43 b Ft(16,)27 b(108,)g(198)2025 3318 y(app)r(ending)e(v)l
+(ariables)d Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)48 b Ft(16,)27 b(17,)g(116,)g(206)2025 3406 y Fq(AR4)11
+b Ff(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Ft(179)2025 3494
+y(arccosine)27 b(function)18 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)45 b Ft(163)2025 3582 y(arcsine)26 b(function)21
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47
+b Ft(163)2025 3669 y(arctangen)n(t)26 b(function)9 b
+Ff(:)k(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Ft(163)2025
+3757 y Fs(area)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b
+Ft(110)2025 3845 y(area-a)n(v)n(eraging)10 b Ff(:)k(:)f(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(238)2025 3933
+y(arithmetic)26 b(op)r(erators)7 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34 b Ft(71,)27
+b(72,)g(218)2025 4021 y(arithmetic)f(pro)r(cessor)14
+b Ff(:)g(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Ft(116)2025
+4109 y Fq(ARM)25 b Ft(con)n(v)n(en)n(tions)11 b Ff(:)i(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)38 b Fs(102)2025 3836 y(ARM)25
-b(con)n(v)n(en)n(tions)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)38 b Ft(112)2025 4197 y(ARM)25
+b(con)n(v)n(en)n(tions)c Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-48 b Fs(200)2025 3925 y Fr(array)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)
+48 b Ft(212)2025 4285 y Fs(array)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(110)2025 4013 y Fr(array)26 b Fs(function)21 b Fa(:)14
+b Ft(122)2025 4373 y Fs(array)26 b Ft(function)21 b Ff(:)14
 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48
-b Fs(110)2025 4102 y(arra)n(y)26 b(indexing)10 b Fa(:)i(:)h(:)h(:)f(:)g
+b Ft(122)2025 4461 y(arra)n(y)26 b(indexing)10 b Ff(:)i(:)h(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(105)2025
-4190 y(arra)n(y)26 b(storage)15 b Fa(:)f(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(117)2025
+4549 y(arra)n(y)26 b(storage)15 b Ff(:)f(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fs(105)2025 4279 y(arra)n(y)26
-b(syn)n(tax)7 b Fa(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Ft(117)2025 4637 y(arra)n(y)26
+b(syn)n(tax)7 b Ff(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)34 b Fs(105)2025 4367 y(arra)n(ys)13
-b Fa(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)34 b Ft(117)2025 4725 y(arra)n(ys)13
+b Ff(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)40 b Fs(110)2025 4456 y(arriv)l(al)26
-b(v)l(alue)11 b Fa(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)40 b Ft(122)2025 4812 y(arriv)l(al)26
+b(v)l(alue)11 b Ff(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)38 b Fs(173)2025 4544 y Fp(ASCI)r(I)18 b
-Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)38 b Ft(185)2025 4900 y Fq(ASCI)r(I)18 b
+Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(159)2025 4632 y Fm(asin)15
-b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+f(:)g(:)g(:)g(:)g(:)g(:)45 b Ft(171)2025 4988 y Fn(asin)15
+b Ff(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fs(151)2025 4721
-y Fm(asinh)11 b Fa(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Ft(163)2025 5076
+y Fn(asinh)11 b Ff(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(151)2025
-4809 y Fr(asort)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(163)2025
+5164 y Fs(asort)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(125)2025
-4898 y(assignmen)n(t)26 b(statemen)n(t)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(137)2025
+5252 y(assignmen)n(t)26 b(statemen)n(t)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)35 b Fs(105)2025 4986 y(async)n(hronous)25 b(\014le)h(access)8
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Fs(30)2025 5075 y
-Fm(atan)7 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34 b Fs(151)2025
-5163 y Fm(atanh)19 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)47 b Fs(151)2025
-5252 y(attribute)25 b(inheritance)7 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)34 b Fs(114)2025 5340 y(attribute)25 b(names)6 b
-Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(156,)27
-b(202)p eop end
-%%Page: 259 265
-TeXDict begin 259 264 bop 150 -116 a FD(General)31 b(Index)2902
-b(259)150 299 y Fs(attribute)25 b(propagation)9 b Fa(:)15
-b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fs(114)150 387 y(attribute)25
-b(syn)n(tax)14 b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41
-b Fs(105)150 474 y(attribute,)26 b Fr(units)17 b Fa(:)d(:)g(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Fs(66)150 562 y(attributes)19
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)46 b Fs(156)150 650 y(attributes,)26 b(app)r(ending)10
-b Fa(:)j(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36 b Fs(157)150 737 y(attributes,)26
-b(creating)15 b Fa(:)f(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(157)150 825 y(attributes,)26 b(deleting)17 b Fa(:)d(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)44 b Fs(157)150 913 y(attributes,)26
-b(editing)9 b Fa(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)36 b Fs(157,)27 b(226,)g(236)150
-1000 y(attributes,)f(global)21 b Fa(:)13 b(:)g(:)46 b
-Fs(20,)27 b(98,)g(99,)f(102,)h(157,)h(160,)f(176,)304
-1088 y(177,)g(186,)g(203,)g(205)150 1175 y(attributes,)f(mo)r(difying)8
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-34 b Fs(157,)27 b(226,)g(236)150 1263 y(attributes,)f(o)n(v)n
-(erwriting)21 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)47 b Fs(157,)27 b(226,)g(236)150 1351 y(attributes)p
-Fr(ncap2)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-33 b Fs(113)150 1438 y Fr(autoconf)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f
+(:)g(:)35 b Ft(117)2025 5340 y(async)n(hronous)25 b(\014le)h(access)8
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Ft(30)p eop end
+%%Page: 271 277
+TeXDict begin 271 276 bop 150 -116 a FE(General)31 b(Index)2902
+b(271)150 299 y Fn(atan)7 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)33
+b Ft(163)150 387 y Fn(atanh)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46
+b Ft(163)150 475 y(attribute)25 b(inheritance)7 b Ff(:)14
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Ft(126)150 563 y(attribute)25
+b(names)6 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33
+b Ft(168,)27 b(214)150 651 y(attribute)e(propagation)9
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Ft(126)150 739
+y(attribute)25 b(syn)n(tax)14 b Ff(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
-b Fs(14)150 1526 y(auto)r(con)n(v)n(ersion)22 b Fa(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
-b Fs(39)150 1614 y(automagic)23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)41 b Ft(117)150 827 y(attribute,)26 b Fs(units)17
+b Ff(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44
+b Ft(66)150 915 y(attributes)19 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Ft(168)150
+1003 y(attributes,)26 b(app)r(ending)10 b Ff(:)j(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)36 b Ft(169)150 1092 y(attributes,)26 b(creating)15
+b Ff(:)f(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Ft(169)150
+1180 y(attributes,)26 b(deleting)17 b Ff(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)44 b Ft(169)150 1268 y(attributes,)26 b(editing)9
+b Ff(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)36 b Ft(169,)27 b(238,)g(248)150 1356 y(attributes,)f(global)11
+b Ff(:)j(:)g(:)f(:)g(:)g(:)37 b Ft(20,)27 b(108,)g(109,)g(112,)h(169,)f
+(172,)304 1443 y(188,)g(189,)g(198,)g(215,)g(217)150
+1531 y(attributes,)f(mo)r(difying)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Ft(169,)27 b(238,)g(248)150
+1619 y(attributes,)f(o)n(v)n(erwriting)21 b Ff(:)13 b(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Ft(169,)27 b(238,)g(248)150
+1707 y(attributes)p Fs(ncap2)7 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)33 b Ft(125)150 1795 y Fs(autoconf)12
+b Ff(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)38 b Ft(14)150 1883 y(auto)r(con)n(v)n(ersion)22
+b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
+b Ft(39)150 1971 y(automagic)23 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(7,)26 b(19)150
-1701 y(automatic)h(t)n(yp)r(e)d(con)n(v)n(ersion)e Fa(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
-b Fs(90,)27 b(152)150 1789 y(auxiliary)f(co)r(ordinates)c
-Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fs(101)150 1877
-y(a)n(v)n(erage)18 b Fa(:)c(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fs(84,)26 b(207,)i(215,)f(216,)g(223,)g(226,)g(233)150
-1965 y(a)n(v)n(eraging)g(data)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fs(71,)27
-b(167,)g(198,)g(206)150 2052 y Fr(avg)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Ft(7,)26 b(19)150
+2059 y(automatic)h(t)n(yp)r(e)d(con)n(v)n(ersion)c Ff(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
+b Ft(100,)27 b(164)150 2148 y(auxiliary)f(co)r(ordinates)c
+Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Ft(111)150 2236
+y(a)n(v)n(erage)18 b Ff(:)c(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
+b Ft(94,)26 b(219,)i(227,)f(228,)g(235,)g(238,)g(245)150
+2324 y(a)n(v)n(eraging)g(data)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Ft(71,)27
+b(179,)g(210,)g(218)150 2412 y Fs(avg)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)34 b Fs(84)150 2140 y(a)n(vg\(\))11 b Fa(:)i(:)g(:)g(:)h(:)f
+(:)g(:)g(:)34 b Ft(94)150 2500 y(a)n(vg\(\))11 b Ff(:)i(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)38 b Fs(119)150 2228 y Fr(avgsqr)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g
+(:)38 b Ft(131)150 2588 y Fs(avgsqr)17 b Ff(:)e(:)e(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fs(84)150 2482 y FB(B)150 2599 y Fs(Barry)26 b(deF)-6
-b(reese)18 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Ft(94)150 2844 y FC(B)150 2962 y Ft(Barry)26 b(deF)-6
+b(reese)18 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-45 b Fs(212)150 2687 y Fr(base_time)7 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g
+45 b Ft(224)150 3050 y Fs(base_time)7 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b
-Fs(102)150 2774 y Fr(bash)9 b Fa(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+Ft(112)150 3138 y Fs(bash)9 b Ff(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(45,)27
-b(184)150 2862 y(Bash)f(shell)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Ft(45,)27
+b(196)150 3226 y(Bash)f(shell)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)44 b Fs(163,)27 b(184)150 2950 y(Bash)f(Shell)7
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)g(:)h(:)44 b Ft(175,)27 b(196)150 3314 y(Bash)f(Shell)7
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)34 b Fs(166)150 3037 y(batc)n(h)25 b(mo)r(de)7
-b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)33 b Fs(98)150 3125 y(b)r(eer)12 b Fa(:)h(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)38 b Fs(97)150 3213 y(b)r(enc)n(hmarks)20 b Fa(:)13
-b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)47
-b Fs(27)150 3300 y(Bessel)27 b(function)16 b Fa(:)e(:)f(:)g(:)g(:)h(:)f
+g(:)g(:)34 b Ft(178)150 3402 y(batc)n(h)25 b(mo)r(de)d
+Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+48 b Ft(108)150 3490 y(b)r(eer)10 b Ff(:)j(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37
+b Ft(107)150 3578 y(b)r(enc)n(hmarks)20 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)43 b Fs(134)150 3388 y(bilinear)27
-b(in)n(terp)r(olation)17 b Fa(:)d(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44
-b Fs(236)150 3476 y(Bill)27 b(Ko)r(cik)14 b Fa(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b
-Fs(212)150 3564 y(binary)25 b(format)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(178)150 3651 y(binary)25
-b(op)r(erations)15 b Fa(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41
-b Fs(23,)27 b(162)150 3739 y(binary)e(Op)r(erators)15
-b Fa(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)42 b
-Fs(107)150 3827 y(blank)22 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)47 b Ft(27)150
+3667 y(Bessel)27 b(function)16 b Ff(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)43 b Ft(147)150 3755 y(bilinear)27 b(in)n(terp)r
+(olation)17 b Ff(:)d(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Ft(248)150
+3843 y(Bill)27 b(Ko)r(cik)14 b Ff(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Ft(224)150 3931
+y(binary)25 b(format)c Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)46 b Ft(190)150 4019 y(binary)25 b(op)r(erations)15
+b Ff(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Ft(23,)27 b(174)150
+4107 y(binary)e(Op)r(erators)15 b Ff(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)42 b Ft(119)150 4195 y(bitmask)18 b Ff(:)c(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
+b Ft(80)150 4283 y(blank)22 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49
-b Fs(181)150 3914 y(blo)r(c)n(ksize)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Ft(193)150 4371 y(blo)r(c)n(ksize)21 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
-b Fs(73)150 4002 y Fr(bounds)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(101)150 4090 y(b)r(ounds)25 b(con)n(v)n(en)n(tion)8
-b Fa(:)k(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Fs(101)150
-4177 y(Bourne)26 b(Shell)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Ft(73)150 4459 y Fs(bounds)27 b Ft(attribute)17 b Ff(:)c(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
+b Ft(80,)27 b(111,)g(200)150 4547 y(b)r(ounds)e(con)n(v)n(en)n(tion)8
+b Ff(:)k(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Ft(111)150
+4635 y(Bourne)26 b(Shell)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)36 b Fs(57,)27 b(166)150 4265 y(Brian)f(Ma)n(ys)e
-Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)36 b Ft(57,)27 b(178)150 4723 y(Brian)f(Ma)n(ys)e
+Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-50 b Fs(212)150 4353 y(broadcasting)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+50 b Ft(224)150 4812 y(broadcasting)23 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fs(165)150 4440
-y(broadcasting)27 b(groups)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37 b Fs(10,)27 b(164,)g(165)150
-4528 y(broadcasting)g(v)l(ariables)12 b Fa(:)h(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)39 b Fs(106,)27 b(163,)g(175,)g(206)150 4616
-y Fr(BSD)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Ft(177)150 4900
+y(broadcasting)27 b(groups)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37 b Ft(10,)27 b(176,)g(177)150
+4988 y(broadcasting)g(v)l(ariables)12 b Ff(:)h(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)39 b Ft(118,)27 b(175,)g(187,)g(218)150 5076
+y Fs(BSD)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
-b Fs(27)150 4704 y(Bu\013er)26 b(sizes)12 b Fa(:)i(:)f(:)g(:)h(:)f(:)g
+b Ft(27)150 5164 y(Bu\013er)26 b(sizes)12 b Ff(:)i(:)f(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b
-Fs(80)150 4791 y(bu\013ering)20 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+Ft(90)150 5252 y(bu\013ering)20 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b
-Fs(24)150 4879 y(bugs,)26 b(rep)r(orting)16 b Fa(:)e(:)f(:)g(:)g(:)g(:)
+Ft(24)150 5340 y(bugs,)26 b(rep)r(orting)16 b Ff(:)e(:)f(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42 b Fs(13)150 4967
-y(b)n(yte\(\))13 b Fa(:)f(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42 b Ft(13)2025 299
+y(Burro)n(ws-Wheeler)27 b(algorithm)11 b Ff(:)j(:)f(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
+b Ft(85)2025 387 y(b)n(yte\(\))13 b Ff(:)f(:)h(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)40
+b Ft(133)2025 475 y Fs(bzip2)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b Fs(121)150
-5223 y FB(C)150 5340 y Fs(C)26 b(index)f(con)n(v)n(en)n(tion)16
-b Fa(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fs(54)2025
-299 y(C)26 b(language)15 b Fa(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)42 b Fs(7,)26 b(72,)h(91,)g(92,)g(105,)g(159,)g(182)2025
-387 y(C)f(Shell)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)44 b Fs(57,)27 b(166)2025 476 y Fr(c++)10
-b Fa(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fs(6)2025
-564 y(C)p Fr(++)19 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46
-b Fs(6)2025 653 y Fm(C)p 2085 653 24 4 v 34 w(format)13
-b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)38 b Fs(24)2025 741 y(C89)11 b Fa(:)j(:)f(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)38 b Fs(6,)27 b(7)2025 830 y(C99)11 b Fa(:)j(:)f(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
+b Ft(85)2025 731 y FC(C)2025 849 y Ft(C)26 b(index)f(con)n(v)n(en)n
+(tion)16 b Ff(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
+b Ft(54)2025 937 y(C)26 b(language)11 b Ff(:)j(:)g(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)38 b Ft(7,)27 b(72,)f(101,)h(102,)h(117,)f(171,)g(194)2025
+1025 y(C)f(Shell)17 b Ff(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-38 b Fs(7,)27 b(8)2025 918 y Fp(CAM3)16 b Fa(:)c(:)i(:)f(:)g(:)g(:)g(:)
+(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(57,)27 b(178)2025 1113
+y Fs(c++)10 b Ff(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Ft(6)2025 1201 y(C)p Fs(++)19 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)46 b Ft(6)2025 1289 y Fn(C)p 2085 1289 24 4 v 34 w(format)13
+b Ff(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)38 b Ft(24)2025 1377 y(C89)11 b Ff(:)j(:)f(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)38 b Ft(6,)27 b(7)2025 1465 y(C99)17 b Ff(:)e(:)e(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)42
-b Fs(95)2025 1006 y Fr(cc)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
+b Ft(7,)26 b(8,)g(81)2025 1553 y Fq(CAM)16 b Ff(:)d(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)43 b Ft(88)2025 1641 y Fq(CAM3)14 b Ff(:)e(:)h(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41
+b Ft(105)2025 1729 y Fs(cc)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)40 b Fs(6)2025 1095 y Fr(CC)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)h
+(:)g(:)40 b Ft(6)2025 1818 y Fs(CC)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)40 b Fs(6)2025 1183 y Fp(CCM)25 b Fs(Pro)r(cessor)7
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(28,)27 b(198,)g(200)2025
-1272 y Fp(CCSM)13 b Fa(:)f(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)40 b Ft(6)2025 1906 y Fq(CCM)25 b Ft(Pro)r(cessor)7
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Ft(28,)27 b(210,)g(212)2025
+1994 y Fq(CCSM)13 b Ff(:)f(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Fs(213)2025
-1360 y(CCSM)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Ft(225)2025
+2082 y(CCSM)21 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(245)2025
-1449 y Fp(CCSM)25 b Fs(con)n(v)n(en)n(tions)12 b Fa(:)h(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)39 b Fs(99)2025 1537 y Fp(CDL)7
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Ft(257)2025
+2170 y Fq(CCSM)25 b Ft(con)n(v)n(en)n(tions)10 b Ff(:)j(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)37 b Ft(110)2025 2258 y Fq(CDL)7
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b Fs(178)2025 1625
-y Fm(ceil)10 b Fa(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b Ft(190)2025 2346
+y Fn(ceil)10 b Ff(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b
-Fs(151)2025 1714 y(ceiling)27 b(function)12 b Fa(:)h(:)g(:)g(:)h(:)f(:)
+Ft(163)2025 2434 y(ceiling)27 b(function)12 b Ff(:)h(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fs(151)2025 1802
-y(cell)26 b(metho)r(ds)g(con)n(v)n(en)n(tion)20 b Fa(:)13
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Ft(163)2025 2522
+y(cell)26 b(metho)r(ds)g(con)n(v)n(en)n(tion)20 b Ff(:)13
 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)47 b Fs(101)2025 1891 y(cell-based)26
-b(grids)15 b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)47 b Ft(111)2025 2610 y(cell-based)26
+b(grids)15 b Ff(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-41 b Fs(64)2025 1979 y Fr(cell_methods)17 b Fa(:)e(:)f(:)f(:)g(:)g(:)g
+41 b Ft(64)2025 2698 y Fs(cell_methods)17 b Ff(:)e(:)f(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fs(101)2025 2068
-y Fp(CF)25 b Fs(compliance)i(c)n(hec)n(k)n(er)9 b Fa(:)k(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Ft(111)2025 2786
+y Fq(CF)25 b Ft(compliance)i(c)n(hec)n(k)n(er)9 b Ff(:)k(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)36 b Fs(51)2025 2156 y Fp(CF)25 b Fs(con)n(v)n(en)n(tions)d
-Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fs(45,)27 b(64,)f(68,)h(99,)g(164)2025 2245 y Fr(cfchecker)9
-b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)36 b Fs(51)2025 2333 y Fr(change_miss\(\))14
-b Fa(:)i(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41
-b Fs(118)2025 2421 y(c)n(har\(\))14 b Fa(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41
-b Fs(121)2025 2510 y(c)n(haracters,)27 b(sp)r(ecial)15
-b Fa(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(159)2025
-2598 y(Charlie)27 b(Zender)11 b Fa(:)h(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)37 b Fs(1,)27 b(211)2025 2687 y(c)n(ho)r(colate)11
-b Fa(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)38 b Fs(211)2025 2775 y(Chris)26 b(Bark)n(er)c
-Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-48 b Fs(75)2025 2864 y(c)n(h)n(unking)12 b Fa(:)g(:)h(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(10,)27 b(72,)g(181)2025
-2952 y(c)n(h)n(unking)d(map)8 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)34 b Fs(73,)27 b(75)2025 3041 y(c)n(h)n(unking)d(p)r
-(olicy)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)34 b Fs(73)2025 3129 y(c)n(h)n(unksize)10 b Fa(:)i(:)h(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36
-b Fs(73)2025 3217 y(citation)22 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)36 b Ft(51)2025 2874 y Fq(CF)25 b Ft(con)n(v)n(en)n(tions)14
+b Ff(:)f(:)g(:)g(:)g(:)g(:)g(:)41 b Ft(45,)26 b(64,)h(68,)g(80,)g(110,)
+g(176,)g(200)2025 2962 y Fs(cfchecker)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
+b Ft(51)2025 3050 y Fs(change_miss\(\))14 b Ff(:)i(:)d(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Ft(130)2025 3138 y(c)n(har\(\))14
+b Ff(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)41 b Ft(133)2025 3227 y(c)n(haracters,)27
+b(sp)r(ecial)15 b Ff(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
+b Ft(171)2025 3315 y(Charlie)27 b(Zender)11 b Ff(:)h(:)h(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)37 b Ft(1,)27 b(223)2025 3403
+y(c)n(ho)r(colate)11 b Ff(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)38 b Ft(223)2025 3491
+y(Chris)26 b(Bark)n(er)c Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)48 b Ft(75)2025 3579 y(c)n(h)n(unking)12
+b Ff(:)g(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
+b Ft(10,)27 b(72,)g(193)2025 3667 y(c)n(h)n(unking)d(map)8
+b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
+b Ft(73,)27 b(75)2025 3755 y(c)n(h)n(unking)d(p)r(olicy)8
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34
+b Ft(73)2025 3843 y(c)n(h)n(unksize)10 b Ff(:)i(:)h(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36
+b Ft(73)2025 3931 y(citation)22 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b
-Fs(213)2025 3306 y Fr(clang)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+Ft(225)2025 4019 y Fs(clang)23 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fs(6)2025 3394 y Fr(CLASSIC)27 b Fs(\014les)c Fa(:)13
+b Ft(6)2025 4107 y Fs(CLASSIC)27 b Ft(\014les)c Ff(:)13
 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)49
-b Fs(35)2025 3483 y(clien)n(t-serv)n(er)18 b Fa(:)13
+b Ft(35)2025 4195 y(clien)n(t-serv)n(er)18 b Ff(:)13
 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fs(32)2025 3571 y(Climate)27 b(and)e(F)-6 b(orecast)27
-b(Metadata)g(Con)n(v)n(en)n(tion)13 b Fa(:)g(:)g(:)g(:)40
-b Fs(68)2025 3660 y(climate)27 b(mo)r(del)c Fa(:)13 b(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)50 b Fs(15,)26
-b(18,)h(29,)g(171,)g(209)2025 3748 y(clipping)f(op)r(erators)18
-b Fa(:)d(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Fs(108)2025
-3836 y Fp(CMIP)8 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+b Ft(32)2025 4283 y(Climate)27 b(and)e(F)-6 b(orecast)27
+b(Metadata)g(Con)n(v)n(en)n(tion)13 b Ff(:)g(:)g(:)g(:)40
+b Ft(68)2025 4371 y(climate)27 b(mo)r(del)c Ff(:)13 b(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)50 b Ft(15,)26
+b(18,)h(29,)g(183,)g(221)2025 4459 y(clipping)f(op)r(erators)18
+b Ff(:)d(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Ft(120)2025
+4547 y Fq(CMIP)8 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fs(167,)27 b(170)2025
-3925 y Fp(CMIP5)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Ft(179,)27 b(182)2025
+4635 y Fq(CMIP5)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Fs(217)2025
-4013 y(`)p Fr(cnk_all)p Fs(')10 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Ft(229)2025
+4724 y(`)p Fs(cnk_all)p Ft(')10 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
-Fs(73)2025 4102 y(`)p Fr(cnk_dmn)p Fs(')10 b Fa(:)15
+Ft(73)2025 4812 y(`)p Fs(cnk_dmn)p Ft(')10 b Ff(:)15
 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)37 b Fs(75)2025 4190 y(`)p Fr(cnk_g2d)p Fs(')10
-b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)37 b Ft(75)2025 4900 y(`)p Fs(cnk_g2d)p Ft(')10
+b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)37 b Fs(73)2025 4279 y(`)p Fr(cnk_g3d)p
-Fs(')10 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)37 b Ft(73)2025 4988 y(`)p Fs(cnk_g3d)p
+Ft(')10 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(73)2025 4367 y(`)p Fr(cnk_lfp)p
-Fs(')10 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(73)2025 5076 y(`)p Fs(cnk_lfp)p
+Ft(')10 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(75)2025 4456 y Fm(cnk)p
-2148 4456 V 33 w(map)22 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(75)2025 5164 y Fn(cnk)p
+2148 5164 V 33 w(map)22 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46 b Fs(75)2025
-4544 y(`)p Fr(cnk_nc4)p Fs(')10 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46 b Ft(75)2025
+5252 y(`)p Fs(cnk_nc4)p Ft(')10 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
-Fs(75)2025 4632 y(`)p Fr(cnk_prd)p Fs(')10 b Fa(:)15
+Ft(75)2025 5340 y(`)p Fs(cnk_prd)p Ft(')10 b Ff(:)15
 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)37 b Fs(75)2025 4721 y(`)p Fr(cnk_r1d)p Fs(')10
-b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)37 b Fs(73)2025 4809 y(`)p Fr(cnk_rd1)p
-Fs(')10 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(75)2025 4898 y(`)p Fr(cnk_rew)p
-Fs(')10 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(75)2025 4986 y(`)p Fr(cnk_scl)p
-Fs(')10 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(75)2025 5075 y(`)p Fr(cnk_xpl)p
-Fs(')10 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(73)2025 5163 y(`)p Fr(cnk_xst)p
-Fs(')17 b Fa(:)e(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)43 b Fs(73,)27 b(75)2025 5252 y(Comeau)17 b Fa(:)d(:)g(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)45 b Fs(6)2025 5340 y(command)26 b(line)g(options)c
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Fs(27)p eop end
-%%Page: 260 266
-TeXDict begin 260 265 bop 150 -116 a FD(260)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fs(command)c(line)g(switc)n(hes)d
-Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)49
-b Fs(15,)27 b(25,)f(30,)h(103)150 387 y(commen)n(ts)16
-b Fa(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)37 b Ft(75)p eop end
+%%Page: 272 278
+TeXDict begin 272 277 bop 150 -116 a FE(272)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Ft(`)p Fs(cnk_r1d)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(73)150 387 y(`)p Fs(cnk_rd1)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 475 y(`)p Fs(cnk_rew)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 563 y(`)p Fs(cnk_scl)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 651 y(`)p Fs(cnk_xpl)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(73)150 739 y(`)p Fs(cnk_xst)p
+Ft(')17 b Ff(:)e(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)44 b Ft(73,)26 b(75)150 827 y(Comeau)17 b Ff(:)e(:)e(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44
+b Ft(6)150 916 y(command)26 b(line)g(options)c Ff(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Ft(27)150 1004 y(command)26
+b(line)g(switc)n(hes)d Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)49 b Ft(15,)27 b(25,)f(30,)h(115)150 1092 y(commen)n(ts)16
+b Ff(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)43 b Fs(105)150 475 y Fr(como)7 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g
+(:)g(:)43 b Ft(117)150 1180 y Fs(como)7 b Ff(:)14 b(:)f(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)34 b Fs(6)150 563 y(Compaq)14 b Fa(:)g(:)f(:)g(:)g(:)g(:)h
+(:)f(:)g(:)34 b Ft(6)150 1268 y(Compaq)14 b Ff(:)g(:)f(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41
-b Fs(6)150 651 y(comparator)9 b Fa(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g
+b Ft(6)150 1356 y(comparator)9 b Ff(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fs(207)150 739
-y(compatabilit)n(y)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Ft(219)150 1444
+y(compatabilit)n(y)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(6)150 827 y(compilers)11
-b Fa(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Ft(6)150 1532 y(compilers)11
+b Ff(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)37 b Fs(30)150 916 y(complemen)n(tary)26
-b(error)g(function)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(151)150 1004 y(compliance)27
-b(c)n(hec)n(k)n(er)19 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)f(:)g(:)g(:)37 b Ft(30)150 1620 y(complemen)n(tary)26
+b(error)g(function)7 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)34 b Ft(163)150 1708 y(compliance)27
+b(c)n(hec)n(k)n(er)19 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-46 b Fs(51)150 1092 y(compression)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
+46 b Ft(51)150 1796 y(compression)23 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(78,)27 b(181)150 1180
-y(concatenation)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(17,)27 b(170,)g(193,)g(200)150
-1268 y(conditional)g(Op)r(erator)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)g(:)g(:)48 b Ft(88,)27 b(193)150 1885
+y(concatenation)17 b Ff(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(17,)27 b(182,)g(205,)g(212)150
+1973 y(conditional)g(Op)r(erator)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-47 b Fs(108)150 1356 y Fr(config.guess)22 b Fa(:)13 b(:)g(:)g(:)g(:)g
+47 b Ft(120)150 2061 y Fs(config.guess)22 b Ff(:)13 b(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(14)150
-1444 y Fr(configure.eg)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Ft(14)150
+2149 y Fs(configure.eg)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(14)150 1532 y(constrain)n(t)26
-b(expressions)e Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)45 b Ft(14)150 2237 y(constrain)n(t)26
+b(expressions)e Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)49
-b Fs(33)150 1620 y(con)n(ten)n(ts)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(33)150 2325 y(con)n(ten)n(ts)15 b Ff(:)e(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42
-b Fs(5)150 1708 y(con)n(tributing)12 b Fa(:)h(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(5)150 2413 y(con)n(tributing)12 b Ff(:)h(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Fs(211)150 1796
-y(con)n(tributors)14 b Fa(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Ft(223)150 2501
+y(con)n(tributors)14 b Ff(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)41 b Fs(211)150 1885 y(co)r(ordinate)27
-b(limits)c Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)41 b Ft(223)150 2589 y(co)r(ordinate)27
+b(limits)c Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
-b Fs(55)150 1973 y(co)r(ordinate)27 b(v)l(ariable)22
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(67,)27
-b(85,)g(101,)g(164,)g(207)150 2061 y(co)r(ordinate)g(v)l(ariables)20
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Fs(204)150
-2149 y Fr(coordinates)9 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Ft(55)150 2677 y(co)r(ordinate)27 b(v)l(ariable)22
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Ft(67,)27
+b(95,)g(111,)g(176,)g(219)150 2766 y(co)r(ordinate)g(v)l(ariables)20
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Ft(216)150
+2854 y Fs(coordinates)9 b Ff(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)35 b Fs(64,)27 b(101)150 2237 y(co)r(ordinates)10
-b Fa(:)k(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)35 b Ft(64,)27 b(111)150 2942 y(co)r(ordinates)10
+b Ff(:)k(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)36 b Fs(239)150 2325 y(co)r(ordinates)27 b(con)n(v)n(en)n(tion)22
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)49 b Fs(101)150 2413 y(co)r(ordinates,)27
-b(mo)r(difying)6 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b
-Fs(240)150 2501 y(core)26 b(dump)9 b Fa(:)j(:)h(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(13)150
-2589 y Fr(core)27 b(dump)21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)47 b Fs(21,)27 b(188)150 2677 y Fm(cos)15
-b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b Fs(151)150 2766
-y Fm(cosh)9 b Fa(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fs(151)150
-2854 y(cosine)27 b(function)18 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)45 b Fs(151)150 2942 y(co)n(v)l(ariance)11
-b Fa(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)38 b Fs(150)150 3030 y Fr(cp)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+(:)36 b Ft(251)150 3030 y Fs(coordinates)28 b Ft(attribute)17
+b Ff(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)43 b Ft(80,)27 b(200)150 3118 y(co)r(ordinates)g(con)n(v)n
+(en)n(tion)22 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)49 b Ft(111)150
+3206 y(co)r(ordinates,)27 b(mo)r(difying)6 b Ff(:)15
+b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)33 b Ft(252)150 3294 y(core)26
+b(dump)9 b Ff(:)j(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)35 b Ft(13)150 3382 y Fs(core)27
+b(dump)21 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)47 b Ft(21,)27 b(200)150 3470 y Fn(cos)15 b Ff(:)e(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)38 b Ft(163)150 3558 y Fn(cosh)9 b Ff(:)k(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)37 b Fs(41)150 3118 y(Cra)n(y)11 b Fa(:)i(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
-b Fs(6,)26 b(21)150 3206 y Fr(csh)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)35 b Ft(163)150 3646 y(cosine)27 b(function)18 b
+Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45
+b Ft(163)150 3735 y(co)n(v)l(ariance)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Ft(162)150
+3823 y Fs(cp)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37
+b Ft(41)150 3911 y(Cra)n(y)11 b Ff(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
+b Ft(6,)26 b(21)150 3999 y Fs(csh)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)34 b Fs(45)150 3294 y(Csh)26 b(shell)15 b Fa(:)f(:)f(:)g(:)g(:)g
+(:)g(:)34 b Ft(45)150 4087 y(Csh)26 b(shell)15 b Ff(:)f(:)f(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(184)150 3382 y Fr(cxx)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Ft(196)150 4175 y Fs(cxx)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)37 b Fs(6)150 3470 y(Cygwin)10 b Fa(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+(:)37 b Ft(6)150 4263 y(Cygwin)10 b Ff(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fs(8)150 3725 y FB(D)150 3842 y Fs(daily)26 b(data)19
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(8)150 4517 y FC(D)150 4635 y Ft(daily)26 b(data)19
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45
-b Fs(215,)27 b(216)150 3930 y(Daniel)f(Baumann)21 b Fa(:)13
+b Ft(227,)27 b(228)150 4723 y(Daniel)f(Baumann)21 b Ff(:)13
 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fs(212)150
-4019 y(Daniel)26 b(W)-6 b(ang)18 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Ft(224)150
+4811 y(Daniel)26 b(W)-6 b(ang)18 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(211)150 4107 y
-Fp(D)n(AP)7 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Ft(223)150 4900 y
+Fq(D)n(AP)7 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b
-Fs(32)150 4195 y(data)26 b(access)h(proto)r(col)18 b
-Fa(:)c(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Fs(32)150
-4283 y(data)26 b(safet)n(y)d Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+Ft(32)150 4988 y(data)26 b(access)h(proto)r(col)18 b
+Ff(:)c(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Ft(32)150
+5076 y(data)26 b(safet)n(y)d Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)49 b Fs(15,)27 b(202)150 4371 y(data,)f(missing)21
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+h(:)f(:)g(:)g(:)49 b Ft(15,)27 b(214)150 5164 y(data,)f(missing)21
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
-b Fs(71,)27 b(156)150 4459 y Fr(date)c Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-49 b Fs(99)150 4547 y Fr(datesec)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fs(99)150 4635 y Fm(dbg)p 279 4635 24 4 v 34 w(lvl)12
-b Fa(:)g(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)35
-b Fs(14,)27 b(22,)f(26)150 4723 y Fp(DDRA)9 b Fa(:)k(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
-b Fs(213)150 4811 y(Debian)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42
-b Fs(12)150 4900 y Fm(debug-lev)n(el)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fs(14,)26 b(22)150
-4988 y(debugging)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)38 b Fs(13,)27 b(22,)f(26)150 5076 y Fp(DEC)9 b Fa(:)k(:)g(:)h(:)f
+b Ft(71,)27 b(168)150 5252 y Fs(date)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(110)150 5340 y Fs(datesec)12 b Ff(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b
+Ft(110)2025 299 y Fn(dbg)p 2154 299 24 4 v 33 w(lvl)12
+b Ff(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36
+b Ft(14,)26 b(22,)h(26)2025 387 y Fq(DDRA)9 b Ff(:)k(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36
+b Ft(225)2025 475 y(Debian)16 b Ff(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)36 b Fs(6)150 5164 y Fr(defdim\(\))10
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)37 b Fs(109)150 5252 y(de\014ning)25 b(dimensions)i(in)e
-Fr(ncap2)6 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)33 b Fs(109)150 5340 y(de\015ation)17
-b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fs(10,)26 b(78,)h(181)2025 299 y(degenerate)f(dimension)9
-b Fa(:)k(:)g(:)36 b Fs(75,)26 b(88,)h(151,)g(164,)g(172,)g(173,)2178
-386 y(197,)g(198,)h(206,)f(209)2025 474 y(delete)f(\(groups\))19
-b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)42
+b Ft(12)2025 563 y Fn(debug-lev)n(el)22 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)47 b Ft(14,)27 b(22)2025
+651 y(debugging)11 b Ff(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+38 b Ft(13,)26 b(22,)h(26)2025 739 y Fq(DEC)9 b Ff(:)k(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)36 b Ft(6)2025 828 y(Decimal)26 b(Signi\014can)n(t)g
+(Digits)c Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Ft(79)2025 916 y Fs(defdim\(\))10
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)37 b Ft(121)2025 1004 y(de\014ning)25 b(dimensions)h(in)g
+Fs(ncap2)6 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)33 b Ft(121)2025 1092 y Fq(DEFLA)-6
+b(TE)17 b Ff(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)44 b Ft(82)2025 1180 y(de\015ation)17
+b Ff(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44
+b Ft(10,)27 b(88,)g(193)2025 1268 y(degenerate)f(dimension)9
+b Ff(:)k(:)g(:)36 b Ft(75,)26 b(98,)h(163,)g(176,)g(184,)g(185,)2178
+1355 y(209,)g(210,)h(218,)f(221)2025 1443 y(delete)f(\(groups\))19
+b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46
-b Fs(46)2025 562 y Fr(delete_miss\(\))14 b Fa(:)i(:)d(:)g(:)g(:)h(:)f
+b Ft(46)2025 1531 y Fs(delete_miss\(\))14 b Ff(:)i(:)d(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(118)2025 650 y(demotion)13
-b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)40 b Fs(90)2025 738 y(Dennis)25 b(Heim)n(bigner)18
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(211)2025
-827 y(deriv)n(ed)25 b(\014elds)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Ft(130)2025 1620 y(demotion)11
+b Ff(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)38 b Ft(100)2025 1708 y(Dennis)25 b(Heim)n(bigner)18
+b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Ft(223)2025
+1796 y(deriv)n(ed)25 b(\014elds)15 b Ff(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(104)2025 915 y(digest)20
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Ft(116)2025 1884 y(digest)20
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Fs(79)2025 1003 y(Digital)23
-b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Ft(89)2025 1972 y(Digital)23
+b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Fs(6)2025 1091 y(dimension)26
-b(limits)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Ft(6)2025 2060 y(dimension)26
+b(limits)13 b Ff(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fs(55)2025 1179 y(dimension)26 b(names)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)
+b Ft(55)2025 2148 y(dimension)26 b(names)17 b Ff(:)d(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)44 b Fs(202)2025 1267 y(dimension)26
-b(order)17 b Fa(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)44 b Ft(214)2025 2236 y(dimension)26
+b(order)17 b Ff(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
-b Fs(226)2025 1355 y(dimensions,)26 b(gro)n(wing)16 b
-Fa(:)f(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)43 b Fs(149)2025 1443
-y(disaggregate)13 b Fa(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Ft(238)2025 2324 y(dimensions,)26 b(gro)n(wing)16 b
+Ff(:)f(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)43 b Ft(161)2025 2413
+y(disaggregate)13 b Ff(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)39 b Fs(49)2025 1531 y(disjoin)n(t)26
-b(\014les)20 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)39 b Ft(49)2025 2501 y(disjoin)n(t)26
+b(\014les)20 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)46 b Fs(17)2025 1620 y(diskless)26
-b(\014les)18 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)g(:)g(:)g(:)g(:)46 b Ft(17)2025 2589 y(diskless)26
+b(\014les)18 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)44 b Fs(81)2025 1708 y(dismem)n(b)r(er)21
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)h(:)f(:)g(:)44 b Ft(91)2025 2677 y(dismem)n(b)r(er)21
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)48 b Fs(49)2025 1796 y(Distributed)25 b(Data)h(Reduction)f(&)g
-(Analysis)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(213)2025
-1884 y(Distributed)25 b(Oceanographic)i(Data)f(System)17
-b Fa(:)12 b(:)h(:)g(:)g(:)h(:)f(:)43 b Fs(32)2025 1972
-y Fr(divide)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)48 b Ft(49)2025 2765 y(Distributed)25 b(Data)h(Reduction)f(&)g
+(Analysis)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(225)2025
+2853 y(Distributed)25 b(Oceanographic)i(Data)f(System)17
+b Ff(:)12 b(:)h(:)g(:)g(:)h(:)f(:)43 b Ft(32)2025 2941
+y Fs(divide)15 b Ff(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(162)2025 2060
-y(dividing)25 b(data)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Ft(174)2025 3029
+y(dividing)25 b(data)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)39 b Fs(162)2025 2148 y(division)21
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)h(:)f(:)g(:)g(:)39 b Ft(174)2025 3117 y(division)21
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)47 b Fs(151)2025 2236 y(`)p Fr(dmn)p
-Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)47 b Ft(163)2025 3206 y(`)p Fs(dmn)p
+Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fs(75)2025
-2324 y(do)r(cumen)n(tation)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Ft(75)2025
+3294 y(do)r(cumen)n(tation)7 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b Fs(5)2025 2413 y
-Fp(DODS)6 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b Ft(5)2025 3382 y
+Fq(DODS)6 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fs(32,)27 b(35)2025
-2501 y Fr(DODS_ROOT)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Ft(32,)27 b(35)2025
+3470 y Fs(DODS_ROOT)9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(32)2025 2589
-y(dot)25 b(pro)r(duct)18 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(32)2025 3558
+y(dot)25 b(pro)r(duct)18 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fs(208)2025 2677 y(double\(\))9
-b Fa(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Ft(220)2025 3646 y(double\(\))9
+b Ff(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)36 b Fs(121)2025 2765 y(double-precision)15
-b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+(:)g(:)g(:)g(:)36 b Ft(133)2025 3734 y(double-precision)15
+b Ff(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42
-b Fs(153)2025 2853 y Fr(dsort)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(125)2025 2941 y(duration)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Ft(165)2025 3822 y Fq(DSD)10 b Ff(:)j(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
+b Ft(79)2025 3910 y Fs(dsort)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Ft(137)2025 3999 y(duration)9 b Ff(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35
-b Fs(59)2025 3029 y(dynamic)25 b(linking)d Fa(:)13 b(:)g(:)g(:)h(:)f(:)
+b Ft(59)2025 4087 y(dynamic)25 b(linking)d Ff(:)13 b(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fs(9)2025 3284
-y FB(E)2025 3402 y Fs(Ed)25 b(Hartnett)12 b Fa(:)g(:)h(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Ft(9)2025 4341
+y FC(E)2025 4459 y Ft(Ed)25 b(Hartnett)12 b Ff(:)g(:)h(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fs(211)2025
-3490 y(Ed)25 b(Hill)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Ft(223)2025
+4547 y(Ed)25 b(Hill)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(212)2025
-3578 y(eddy)24 b(co)n(v)l(ariance)e Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Ft(224)2025
+4635 y(eddy)24 b(co)n(v)l(ariance)e Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)47 b Fs(150)2025 3666 y(editing)26
-b(attributes)11 b Fa(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)47 b Ft(162)2025 4723 y(editing)26
+b(attributes)11 b Ff(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
-b Fs(156)2025 3754 y Fr(egrep)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+b Ft(168)2025 4811 y Fs(egrep)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(43)2025 3842 y(Elliptic)27 b(in)n(tegrals)9 b Fa(:)14
+b Ft(43)2025 4899 y(Elliptic)27 b(in)n(tegrals)9 b Ff(:)14
 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(135)2025
-3930 y(ensem)n(ble)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(147)2025
+4988 y(ensem)n(ble)23 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)49 b Fs(18,)27 b(167)2025 4018 y(ensem)n(ble)f(a)n
-(v)n(erage)15 b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)49 b Ft(18,)27 b(179)2025 5076 y(ensem)n(ble)f(a)n
+(v)n(erage)15 b Ff(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42
-b Fs(167)2025 4106 y(ensem)n(ble)26 b(concatenation)10
-b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(170)2025 4195 y Fm(erf)28
-b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(179)2025 5164 y(ensem)n(ble)26 b(concatenation)10
+b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(182)2025 5252 y Fn(erf)28
+b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fs(151)2025
-4283 y Fm(erfc)23 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Ft(163)2025
+5340 y Fn(erfc)23 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45
-b Fs(151)2025 4371 y(Eric)26 b(Blak)n(e)9 b Fa(:)14 b(:)f(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36
-b Fs(212)2025 4459 y(error)26 b(function)21 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47
-b Fs(151)2025 4547 y(error)26 b(tolerance)9 b Fa(:)14
-b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fs(15)2025 4635 y(Etienne)25 b(T)-6 b(ourign)n(y)11
-b Fa(:)j(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b
-Fs(213)2025 4723 y(exclusion)8 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)34 b Fs(40,)27 b(186,)g(188)2025 4811 y(execution)e(time)10
-b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36 b Fs(9,)27
-b(16,)g(24,)f(25,)h(72,)g(156,)g(203)2025 4899 y Fm(exp)c
-Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(151)2025 4988
-y(exp)r(onen)n(t)16 b Fa(:)c(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fs(96)2025 5076
-y(exp)r(onen)n(tiation)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Ft(163)p eop end
+%%Page: 273 279
+TeXDict begin 273 278 bop 150 -116 a FE(General)31 b(Index)2902
+b(273)150 299 y Ft(Eric)26 b(Blak)n(e)9 b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)48 b Fs(151)2025 5164 y(exp)r(onen)n(tiation)25
-b(function)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(151)2025
-5252 y(expressions)14 b Fa(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)36 b
+Ft(224)150 387 y(error)26 b(function)21 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Ft(163)150 474 y(error)26
+b(tolerance)9 b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(105)2025 5340 y(extended)24
-b(\014le)i(format)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fs(37)p eop end
-%%Page: 261 267
-TeXDict begin 261 266 bop 150 -116 a FD(General)31 b(Index)2902
-b(261)150 299 y Fs(extended)24 b(regular)j(expressions)16
-b Fa(:)f(:)e(:)g(:)g(:)43 b Fs(20,)27 b(43,)g(150,)g(156,)304
-386 y(160)150 474 y(extraction)8 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)34 b Fs(40,)27 b(186,)g(188)150 727 y FB(F)150
-844 y Fr(f90)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
-b Fs(8)150 932 y(features,)27 b(requesting)13 b Fa(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)39 b Fs(13)150 1019 y(File)27 b(bu\013ers)14
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)35 b Ft(15)150 562 y(Etienne)26 b(T)-6 b(ourign)n(y)11
+b Ff(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b
+Ft(225)150 650 y(exclusion)8 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)34 b Ft(40,)27 b(198,)g(200)150 738 y(execution)f(time)10
+b Ff(:)j(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37 b Ft(9,)26
+b(16,)h(24,)f(25,)h(72,)g(168,)g(215)150 826 y Fn(exp)c
+Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Ft(163)150 913 y(exp)r(onen)n(t)14
+b Ff(:)e(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)41 b Ft(106)150 1001 y(exp)r(onen)n(tiation)21
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47
+b Ft(163)150 1089 y(exp)r(onen)n(tiation)26 b(function)7
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Ft(163)150 1177 y(expressions)14
+b Ff(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)40 b Ft(117)150 1265 y(extended)24 b(\014le)i(format)21
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46 b Ft(37)150
+1352 y(extended)24 b(regular)j(expressions)16 b Ff(:)f(:)e(:)g(:)g(:)43
+b Ft(20,)27 b(43,)g(162,)g(169,)304 1440 y(172)150 1527
+y(extraction)8 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34
+b Ft(40,)27 b(198,)g(200)150 1780 y FC(F)150 1897 y Fs(f90)10
+b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(8)150
+1985 y(features,)27 b(requesting)13 b Ff(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)39 b Ft(13)150 2073 y(File)27 b(bu\013ers)14
+b Ff(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)41 b Fs(80)150 1107 y(\014le)26 b(com)n(bination)19
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)41 b Ft(90)150 2161 y(\014le)26 b(com)n(bination)19
+b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fs(217)150 1195 y(\014le)26 b(deletion)9 b Fa(:)k(:)g(:)h(:)f(:)g(:)g
+b Ft(229)150 2248 y(\014le)26 b(deletion)9 b Ff(:)k(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b
-Fs(35)150 1283 y(\014le)26 b(m)n(ultiplication)8 b Fa(:)14
+Ft(35)150 2336 y(\014le)26 b(m)n(ultiplication)8 b Ff(:)14
 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35 b Fs(175)150
-1370 y(\014le)26 b(remo)n(v)l(al)11 b Fa(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35 b Ft(187)150
+2424 y(\014le)26 b(remo)n(v)l(al)11 b Ff(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Fs(35)150
-1458 y(\014le)26 b(reten)n(tion)8 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Ft(35)150
+2512 y(\014le)26 b(reten)n(tion)8 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fs(35)150
-1546 y(\014les,)26 b(m)n(ultiple)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Ft(35)150
+2600 y(\014les,)26 b(m)n(ultiple)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b Fs(29)150 1634
-y(\014les,)26 b(n)n(umerous)g(input)21 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b Ft(29)150 2687
+y(\014les,)26 b(n)n(umerous)g(input)21 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)49 b Fs(19)150 1722 y(Filip)r(e)27 b(F)-6 b(ernandes)8
-b Fa(:)k(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)49 b Ft(19)150 2775 y(Filip)r(e)27 b(F)-6 b(ernandes)8
+b Ff(:)k(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fs(212)150 1809 y(\014lters)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Ft(224)150 2863 y(\014lters)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
-b Fs(184)150 1897 y(\014ndgen-equiv)l(alen)n(t)16 b Fa(:)c(:)h(:)g(:)g
+b Ft(196)150 2951 y(\014ndgen-equiv)l(alen)n(t)16 b Ff(:)c(:)h(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)43 b Fs(110)150 1985 y(\014x)25
-b(record)h(dimension)d Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)49 b Fs(170,)27 b(172,)g(179)150
-2073 y(\014xed)e(dimension)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Fs(170,)27 b(172,)g(178,)g(179)150
-2161 y(\015ags)7 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)43 b Ft(122)150 3039 y(\014x)25
+b(record)h(dimension)d Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)49 b Ft(182,)27 b(184,)g(191)150
+3126 y(\014xed)e(dimension)c Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Ft(182,)27 b(184,)g(190,)g(191)150
+3214 y(\015ags)7 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33
-b Fs(149)150 2248 y(\015atten)25 b(\(groups\))9 b Fa(:)k(:)g(:)g(:)h(:)
+b Ft(162)150 3302 y(\015atten)25 b(\(groups\))9 b Ff(:)k(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(46)150
-2336 y(\015attening)9 b Fa(:)k(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Ft(46)150
+3390 y(\015attening)9 b Ff(:)k(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(39)150 2424
-y Fr(float)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Ft(39)150 3478
+y Fs(float)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(153)150 2512
-y(\015oat\(\))11 b Fa(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(165)150 3565
+y(\015oat\(\))11 b Ff(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(121)150
-2600 y Fm(\015o)r(or)26 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(133)150
+3653 y Fn(\015o)r(or)26 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
-b Fs(151)150 2687 y(\015o)r(or)26 b(function)9 b Fa(:)k(:)h(:)f(:)g(:)g
+b Ft(163)150 3741 y(\015o)r(or)26 b(function)9 b Ff(:)k(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)36 b Fs(151)150
-2775 y(`)p Fr(flt_byt)p Fs(')8 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)36 b Ft(163)150
+3829 y(`)p Fs(flt_byt)p Ft(')8 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(191)150
-2863 y(`)p Fr(flt_sht)p Fs(')8 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Ft(203)150
+3917 y(`)p Fs(flt_sht)p Ft(')8 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(191)150
-2951 y(for\(\))23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Ft(203)150
+4004 y(for\(\))23 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b
-Fs(124)150 3039 y(force)27 b(app)r(end)21 b Fa(:)13 b(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(98)150
-3126 y(force)27 b(o)n(v)n(erwrite)7 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33 b Fs(98)150 3214 y(forew)n(ord)9
-b Fa(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+Ft(136)150 4092 y(force)27 b(app)r(end)19 b Ff(:)13 b(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Ft(108)150
+4180 y(force)27 b(o)n(v)n(erwrite)22 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Ft(108)150 4268 y(forew)n(ord)9
+b Ff(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)36 b Fs(1)150 3302 y(F)-6 b(ortran)17
-b Fa(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)43
-b Fs(92,)27 b(198,)g(200)150 3390 y(F)-6 b(ortran)26
-b(index)f(con)n(v)n(en)n(tion)19 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(54)150 3478 y Fm(F)n(OR)-6 b(TRAN)p 542 3478 24
-4 v 32 w(format)20 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fs(24)150 3565 y(F)-6 b(rancesco)27 b(Lo)n(v)n(ergine)17
-b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Fs(212)150 3653
-y Fr(ftp)16 b Fa(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)43 b Fs(8,)26
-b(30)150 3741 y Fp(FTP)11 b Fa(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)36 b Ft(1)150 4356 y(F)-6 b(ortran)15
+b Ff(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)42 b
+Ft(102,)27 b(210,)g(212)150 4443 y(F)-6 b(ortran)26 b(index)f(con)n(v)n
+(en)n(tion)19 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Ft(54)150
+4531 y Fn(F)n(OR)-6 b(TRAN)p 542 4531 24 4 v 32 w(format)20
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Ft(24)150
+4619 y(F)-6 b(rancesco)27 b(Lo)n(v)n(ergine)17 b Ff(:)c(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)44 b Ft(224)150 4707 y Fs(ftp)16 b Ff(:)e(:)f(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)43 b Ft(8,)26 b(30)150 4795 y Fq(FTP)11 b Ff(:)i(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)37 b Ft(35)150 4882 y(funding)23 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)37
-b Fs(35)150 3829 y(funding)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b
-Fs(213)150 4081 y FB(G)150 4199 y Fr(g++)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)37 b Fs(6)150 4286 y Fr(g++)10 b Fa(:)k(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49
+b Ft(225)150 5135 y FC(G)150 5252 y Fs(g++)10 b Ff(:)k(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)37 b Fs(8)150 4374 y(`)p Fr(g2d)p
-Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(73)150
-4462 y(`)p Fr(g3d)p Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)37 b Ft(6)150 5340 y Fs(g++)10 b Ff(:)k(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
-b Fs(73)150 4550 y Fp(GA)n(G)18 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(170)150 4638 y Fm(gamma)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)47 b Fs(7,)26
-b(151)150 4725 y(gamma)h(function)19 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)45 b Fs(134,)27 b(151)150 4813 y(Gary)f(Strand)7 b
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-34 b Fs(212)150 4901 y(Gaussian)27 b(w)n(eigh)n(ts)14
-b Fa(:)g(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b
-Fs(209)150 4989 y(Ga)n(vin)26 b(Burris)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44 b Fs(212)150 5077
-y(Ga)n(y)n(athri)26 b(V)-6 b(enkitac)n(halam)14 b Fa(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41
-b Fs(212)150 5164 y Fr(gcc)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)37 b Fs(6)150 5252 y Fr(gcc)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(8)2025 299 y(`)p Fs(g2d)p
+Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Ft(73)2025
+388 y(`)p Fs(g3d)p Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47
+b Ft(73)2025 477 y Fq(GA)n(G)18 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
+b Ft(182)2025 565 y Fn(gamma)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Ft(7,)27
+b(163)2025 654 y(gamma)g(function)18 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)46 b Ft(146,)27 b(163)2025 743 y(Gary)f(Strand)7 b
+Ff(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+34 b Ft(224)2025 832 y(Gaussian)27 b(w)n(eigh)n(ts)14
+b Ff(:)g(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b
+Ft(221)2025 921 y(Ga)n(vin)25 b(Burris)17 b Ff(:)e(:)e(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Ft(224)2025
+1009 y(Ga)n(y)n(athri)26 b(V)-6 b(enkitac)n(halam)14
+b Ff(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)41 b Ft(224)2025 1098 y Fs(gcc)10
+b Ff(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Ft(6)2025
+1187 y Fs(gcc)10 b Ff(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Ft(8)2025 1276 y Fq(GCM)9 b Ff(:)k(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Ft(15,)27 b(88,)g(105)2025
+1365 y(geographical)h(w)n(eigh)n(t)7 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)37 b Fs(8)150 5340 y Fp(GCM)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(15,)26 b(95)2025 299 y(geographical)i(w)n(eigh)n(t)7
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(233)2025
-387 y(George)27 b(Shapa)n(v)l(alo)n(v)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)46 b Fs(212)2025 475 y(George)27 b(Shap)r(o)n(v)l(alo)n(v)
-18 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Fs(212)2025
-563 y(George)27 b(White)18 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)45 b Fs(212)2025 651 y Fr(get_miss\(\))24
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)34 b Ft(245)2025 1454 y(George)27 b(Shapa)n(v)l(alo)n(v)18
+b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Ft(224)2025
+1542 y(George)27 b(Shap)r(o)n(v)l(alo)n(v)18 b Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Ft(224)2025 1631
+y(George)27 b(White)18 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)45 b Ft(224)2025 1720 y Fs(get_miss\(\))24
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-49 b Fs(118)2025 739 y Fr(gethostname)7 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b
-Fs(8)2025 827 y Fr(getopt)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fs(27)2025 915 y Fr(getopt.h)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+49 b Ft(130)2025 1809 y Fs(gethostname)7 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34
+b Ft(8)2025 1898 y Fs(getopt)17 b Ff(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
+b Ft(27)2025 1987 y Fs(getopt.h)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b
-Fs(27)2025 1003 y Fr(getopt_long)24 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
+Ft(27)2025 2075 y Fs(getopt_long)24 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(27)2025 1092
-y Fr(getuid)20 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Ft(27)2025 2164
+y Fs(getuid)20 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fs(8)2025
-1180 y(Glenn)25 b(Da)n(vis)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Ft(8)2025
+2253 y(Glenn)25 b(Da)n(vis)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)38 b Fs(211)2025 1268 y Fr(global)27
-b Fs(attribute)11 b Fa(:)h(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)38 b Ft(223)2025 2342 y Fs(global)27
+b Ft(attribute)11 b Ff(:)h(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
-b Fs(160,)27 b(203)2025 1356 y(global)g(attributes)13
-b Fa(:)g(:)g(:)g(:)40 b Fs(20,)27 b(98,)f(99,)h(102,)g(157,)g(160,)g
-(176,)2178 1443 y(177,)g(186,)h(203,)f(205)2025 1531
-y(globbing)22 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
-b Fs(20,)27 b(28,)g(45,)f(150,)i(163,)f(198,)g(200)2025
-1619 y Fp(GNU)9 b Fa(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+b Ft(172,)27 b(215)2025 2431 y(global)f(attributes)10
+b Ff(:)k(:)37 b Ft(20,)26 b(108,)h(109,)f(112,)h(169,)g(172,)f(188,)
+2178 2518 y(189,)h(198,)h(215,)f(217)2025 2607 y(globbing)22
+b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
+b Ft(20,)27 b(28,)g(45,)f(162,)i(175,)f(210,)g(212)2025
+2695 y Fq(GNU)9 b Ff(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(27,)27 b(43)2025
-1707 y Fr(gnu-win32)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Ft(27,)27 b(43)2025
+2784 y Fs(gnu-win32)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Fs(8)2025 1795
-y Fp(GNU)p Fs(/Lin)n(ux)7 b Fa(:)12 b(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Ft(8)2025 2873
+y Fq(GNU)p Ft(/Lin)n(ux)7 b Ff(:)12 b(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fs(21)2025 1883
-y Fr(GNUmakefile)7 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Ft(21)2025 2962
+y Fs(GNUmakefile)7 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(8)2025 1971 y(Go)r(d)12
-b Fa(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Ft(8)2025 3051 y(Go)r(d)12
+b Ff(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fs(69)2025 2059
-y Fp(GOD)n(AD)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Ft(69)2025 3140
+y Fq(GOD)n(AD)15 b Ff(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42 b Fs(217)2025 2148
-y Fr(grep)26 b(-E)c Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42 b Ft(229)2025 3228
+y Fs(grep)26 b(-E)c Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(43)2025
-2236 y(group)26 b(aggregation)e Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Ft(43)2025
+3317 y(group)26 b(aggregation)e Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(170,)27 b(219)2025 2324 y(group)f(attributes)13
-b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+b Ft(182,)27 b(231)2025 3406 y(group)f(attributes)13
+b Ff(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40
-b Fs(205)2025 2412 y(group)26 b(names)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)
+b Ft(217)2025 3495 y(group)26 b(names)21 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(202)2025
-2500 y(group)26 b(path)17 b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Ft(214)2025
+3584 y(group)26 b(path)17 b Ff(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fs(46)2025 2588
-y(group,)26 b(aggregation)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Ft(46)2025 3673
+y(group,)26 b(aggregation)7 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)34 b Fs(231)2025 2676 y(group,)26 b(anomaly)8 b Fa(:)13
+g(:)34 b Ft(243)2025 3761 y(group,)26 b(anomaly)8 b Ff(:)13
 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35
-b Fs(231)2025 2764 y(group,)26 b(dimension)g(p)r(erm)n(utation)17
-b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
-b Fs(231)2025 2852 y(group,)26 b(spatial)h(a)n(v)n(eraging)21
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)47 b Fs(231)2025 2940 y(group,)26
-b(standard)f(deviation)e Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49 b Fs(231)2025
-3028 y(group,)26 b(temp)r(oral)g(a)n(v)n(eraging)15 b
-Fa(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)42 b Fs(231)2025 3116 y(groups)11 b Fa(:)i(:)g(:)g(:)h(:)f
+b Ft(243)2025 3850 y(group,)26 b(dimension)g(p)r(erm)n(utation)17
+b Ff(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
+b Ft(243)2025 3939 y(group,)26 b(spatial)h(a)n(v)n(eraging)21
+b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)47 b Ft(243)2025 4028 y(group,)26
+b(standard)f(deviation)e Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49 b Ft(243)2025
+4117 y(group,)26 b(temp)r(oral)g(a)n(v)n(eraging)15 b
+Ff(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)42 b Ft(243)2025 4205 y(groups)11 b Ff(:)i(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)37
-b Fs(10,)27 b(160)2025 3204 y(groups,)f(a)n(v)n(eraging)10
-b Fa(:)k(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+b Ft(10,)27 b(172)2025 4294 y(groups,)f(a)n(v)n(eraging)10
+b Ff(:)k(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b
-Fs(225)2025 3293 y(groups,)26 b(creating)17 b Fa(:)d(:)f(:)h(:)f(:)g(:)
+Ft(237)2025 4383 y(groups,)26 b(creating)17 b Ff(:)d(:)f(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)44 b Fs(219)2025 3381 y(groups,)26
-b(mo)n(ving)15 b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)44 b Ft(231)2025 4472 y(groups,)26
+b(mo)n(ving)15 b Ff(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)42 b Fs(48)2025 3469 y(groups,)26 b(renaming)15 b
-Fa(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)42 b Ft(48)2025 4561 y(groups,)26 b(renaming)15 b
+Ff(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)41
-b Fs(48)2025 3557 y(gro)n(wing)27 b(dimensions)9 b Fa(:)14
+b Ft(48)2025 4650 y(gro)n(wing)27 b(dimensions)9 b Ff(:)14
 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fs(149)2025 3645
-y Fp(GSL)8 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Ft(161)2025 4738
+y Fq(GSL)8 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)34 b Fs(7,)27 b(134,)g(142)2025 3733
-y Fm(gsl)p 2119 3733 V 35 w(sf)p 2207 3733 V 34 w(b)r(essel)p
-2435 3733 V 35 w(Jn)8 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)34 b Ft(7,)27 b(146,)g(154)2025 4827
+y Fn(gsl)p 2119 4827 V 35 w(sf)p 2207 4827 V 34 w(b)r(essel)p
+2435 4827 V 35 w(Jn)8 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)35 b Fs(134)2025 3821 y Fm(gsl)p 2119 3821
-V 35 w(sf)p 2207 3821 V 34 w(gamma)8 b Fa(:)14 b(:)f(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)35 b Ft(147)2025 4916 y Fn(gsl)p 2119 4916
+V 35 w(sf)p 2207 4916 V 34 w(gamma)8 b Ff(:)14 b(:)f(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35 b Fs(134)2025 3909
-y Fr(gsl_sf_legendre_Pl)22 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35 b Ft(146)2025 5005
+y Fs(gsl_sf_legendre_Pl)22 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fs(135)2025 3997 y Fr(gw)15 b Fa(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41
-b Fs(99,)27 b(209)2025 4253 y FB(H)2025 4371 y Fp(H4CF)8
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35 b Fs(12)2025 4459
-y Fr(h4tonccf)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(12)2025 4547
-y(Harry)25 b(Mangalam)16 b Fa(:)f(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)43 b Fs(211)2025 4635 y(hash)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
+b Ft(148)2025 5094 y Fs(gunzip)17 b Ff(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)33 b Fs(79)2025 4723 y Fp(HDF)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)34 b Fs(9,)26 b(35,)h(178,)g(213)2025
-4812 y Fp(HDF)e Fs(unpac)n(king)11 b Fa(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)38 b Fs(83)2025 4900 y Fr(hdf_name)12
-b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)39 b Fs(12)2025 4988 y Fp(HDF4)11 b Fa(:)i(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
-b Fs(11,)27 b(178)2025 5076 y Fr(HDF4_UNKNOWN)21 b Fa(:)14
-b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fs(11)2025 5164 y Fp(HDF5)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33
-b Fs(10)2025 5252 y Fr(hdp)23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50
-b Fs(178)2025 5340 y(help)13 b Fa(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40
-b Fs(13)p eop end
-%%Page: 262 268
-TeXDict begin 262 267 bop 150 -116 a FD(262)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fs(Henry)25 b(Buto)n(wsky)e
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)50
-b Fs(211)150 387 y(`)p Fr(hgh_byt)p Fs(')8 b Fa(:)16
-b(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)35 b Fs(191)150 475 y(`)p Fr(hgh_sht)p Fs(')8 b Fa(:)16
-b(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
+b Ft(82)2025 5183 y Fs(gw)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)35 b Fs(191)150 563 y(hidden)25 b(attributes)13 b
-Fa(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b Fs(178)150
-651 y(hidden)25 b(features)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b
+Ft(110,)27 b(221)2025 5271 y Fs(gzip)12 b Ff(:)h(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
+b Ft(78,)27 b(82)p eop end
+%%Page: 274 280
+TeXDict begin 274 279 bop 150 -116 a FE(274)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(H)150 416 y Fq(H4CF)8
+b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Ft(12)150 503 y
+Fs(h4tonccf)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Ft(12)150 591 y(Harry)25
+b(Mangalam)16 b Ff(:)g(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
+b Ft(223)150 679 y(hash)7 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)38 b Fs(182)150 739 y(Hierarc)n(hical)27
-b(Data)f(F)-6 b(ormat)13 b Fa(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40
-b Fs(9)150 827 y Fr(history)6 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fs(21,)26
-b(30,)h(98,)g(102,)g(156,)g(186)150 916 y Fr(hncgen)15
-b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)42 b Fs(178)150 1004 y Fp(HP)18 b
-Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)33
+b Ft(89)150 766 y Fq(HDF)7 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)34 b Ft(9,)26 b(35,)h(190,)g(225)150
+854 y Fq(HDF)e Ft(unpac)n(king)11 b Ff(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(6)150
-1092 y Fp(HPSS)11 b Fa(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b
-Fs(31)150 1180 y Fr(hsi)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+h(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(93)150 941 y Fs(hdf_name)12
+b Ff(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)38 b Ft(12)150 1029 y Fq(HDF4)11 b Ff(:)i(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37
+b Ft(11,)27 b(190)150 1117 y Fs(HDF4_UNKNOWN)22 b Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
+b Ft(11)150 1204 y Fq(HDF5)13 b Ff(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Ft(10,)26
+b(82)150 1292 y Fs(hdp)d Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49
+b Ft(190)150 1379 y(help)13 b Ff(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39
+b Ft(13)150 1467 y(Henry)25 b(Buto)n(wsky)e Ff(:)13 b(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)50 b Ft(223)150 1555 y(`)p Fs(hgh_byt)p
+Ft(')8 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)35 b Ft(203)150 1642 y(`)p Fs(hgh_sht)p
+Ft(')8 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)35 b Ft(203)150 1730 y(hidden)25
+b(attributes)13 b Ff(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
+b Ft(190)150 1817 y(hidden)25 b(features)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Ft(194)150 1905 y(Hierarc)n(hical)
+27 b(Data)f(F)-6 b(ormat)13 b Ff(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40
+b Ft(9)150 1993 y Fs(history)23 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Ft(21,)27 b(30,)g(108,)g(112,)g
+(168,)g(198)150 2080 y Fs(hncgen)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
+b Ft(190)150 2168 y Fq(HP)18 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)45 b Ft(6)150 2256 y Fq(HPSS)11 b Ff(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37
+b Ft(31)150 2343 y Fs(hsi)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
-b Fs(31)150 1268 y Fp(HTML)14 b Fa(:)e(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(31)150 2431 y Fq(HTML)14 b Ff(:)e(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)40
-b Fs(5)150 1356 y Fp(HTTP)25 b Fs(proto)r(col)c Fa(:)13
+b Ft(5)150 2518 y Fq(HTTP)25 b Ft(proto)r(col)c Ff(:)13
 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46
-b Fs(32)150 1444 y Fr(hyai)23 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(99)150 1532 y Fr(hyam)23 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(99)150 1620 y Fr(hybi)23 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(99)150 1708 y Fr(hybm)23 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(99)150 1796 y(h)n(ybrid)24 b(co)r(ordinate)j(system)15
-b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)41 b Fs(110)150 1885 y(h)n(yp)r(erb)r(olic)26
-b(arccosine)h(function)18 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fs(151)150 1973 y(h)n(yp)r(erb)r
-(olic)26 b(arcsine)g(function)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fs(151)150
-2061 y(h)n(yp)r(erb)r(olic)26 b(arctangen)n(t)g(function)9
-b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35
-b Fs(151)150 2149 y(h)n(yp)r(erb)r(olic)26 b(cosine)g(function)18
-b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)45 b Fs(151)150 2237 y(h)n(yp)r(erb)r(olic)26
-b(sine)g(function)20 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fs(151)150
-2325 y(h)n(yp)r(erb)r(olic)26 b(tangen)n(t)c Fa(:)13
+b Ft(32)150 2606 y(Hu\013man)25 b(co)r(ding)c Ff(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
+b Ft(78)150 2694 y Fs(hyai)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(110)150 2781 y Fs(hyam)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(110)150 2869 y Fs(hybi)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(110)150 2956 y Fs(hybm)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(110)150 3044 y(h)n(ybrid)24 b(co)r(ordinate)j(system)15
+b Ff(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)41 b Ft(122)150 3132 y(h)n(yp)r(erb)r(olic)26
+b(arccosine)h(function)18 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Ft(163)150 3219 y(h)n(yp)r(erb)r
+(olic)26 b(arcsine)g(function)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Ft(163)150
+3307 y(h)n(yp)r(erb)r(olic)26 b(arctangen)n(t)g(function)9
+b Ff(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35
+b Ft(163)150 3394 y(h)n(yp)r(erb)r(olic)26 b(cosine)g(function)18
+b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)45 b Ft(163)150 3482 y(h)n(yp)r(erb)r(olic)26
+b(sine)g(function)20 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Ft(163)150
+3570 y(h)n(yp)r(erb)r(olic)26 b(tangen)n(t)c Ff(:)13
 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Fs(151)150 2413
-y(h)n(yp)r(erslab)18 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)45
-b Fs(55,)27 b(73,)g(167,)g(170,)g(198,)g(200,)g(206)150
-2501 y(h)n(yp)r(erslabs)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Ft(163)150 3657
+y(h)n(yp)r(erslab)18 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)45
+b Ft(55,)27 b(73,)g(179,)g(182,)g(210,)g(212,)g(218)150
+3745 y(h)n(yp)r(erslabs)7 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fs(111)150 2755
-y FB(I)150 2873 y Fs(I/O)16 b Fa(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Ft(123)150 3997
+y FC(I)150 4113 y Ft(I/O)16 b Ff(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)43 b Fs(34,)27 b(54,)f(61)150
-2961 y(I/O)f(blo)r(c)n(k)h(size)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)43 b Ft(34,)27 b(54,)f(61)150
+4201 y(I/O)f(blo)r(c)n(k)h(size)17 b Ff(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Fs(80)150 3050 y(I18N)20
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Ft(90)150 4289 y(I18N)20
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Fs(25)150 3138 y
-Fp(IBM)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Ft(25)150 4376 y
+Fq(IBM)16 b Ff(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b
-Fs(6)150 3226 y Fr(icc)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+Ft(6)150 4464 y Fs(icc)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
-b Fs(6)150 3314 y(ID)25 b(Quoting)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(6)150 4551 y(ID)25 b(Quoting)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(153)150
-3402 y Fp(IDL)22 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Ft(166)150
+4639 y Fq(IDL)22 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
-b Fs(15)150 3490 y Fp(IEEE)16 b Fa(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42
-b Fs(91)150 3578 y Fp(IEEE)26 b Fs(NaN)10 b Fa(:)i(:)h(:)h(:)f(:)g(:)g
+b Ft(15)150 4727 y Fq(IEEE)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)47 b Ft(81,)27
+b(102)150 4814 y Fq(IEEE)f Ft(754)15 b Ff(:)e(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)40
+b Ft(80)150 4902 y Fq(IEEE)26 b Ft(NaN)10 b Ff(:)i(:)h(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36 b
-Fs(159)150 3666 y(if\(\))12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+Ft(171)150 4990 y(if\(\))12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fs(115)150 3754 y Fr(ilimit)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h
+b Ft(127)150 5077 y Fs(ilimit)17 b Ff(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fs(22)150 3842 y(illegal)28 b(names)22 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)
+b Ft(22)150 5165 y(illegal)28 b(names)22 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fs(12)150
-3930 y(implicit)27 b(con)n(v)n(ersion)8 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Ft(12)150
+5252 y(implicit)27 b(con)n(v)n(ersion)22 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)49 b Ft(102)150 5340 y Fs(include)12 b
+Ff(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)34 b Fs(92)150 4019 y Fr(include)12
-b Fa(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)39 b Fs(125)150 4107 y(including)26 b(\014les)c
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
-b Fs(105)150 4195 y(index)25 b(con)n(v)n(en)n(tion)d
-Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)49
-b Fs(54)150 4283 y(indgen-equiv)l(alen)n(t)10 b Fa(:)i(:)h(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(110)150 4371 y(inexact)26
-b(con)n(v)n(ersion)13 b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fs(152)150 4459 y(Info)20 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)47
-b Fs(5)150 4547 y(input)25 b(\014les)15 b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(20,)27 b(28,)f(30)150
-4635 y Fm(input-path)13 b Fa(:)f(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)40 b Fs(28,)26 b(32)150 4723 y(installation)7
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-33 b Fs(6,)26 b(14)150 4811 y(in)n(t\(\))c Fa(:)13 b(:)h(:)f(:)g(:)g(:)
+h(:)f(:)g(:)39 b Ft(137)2025 299 y(including)26 b(\014les)c
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48
+b Ft(117)2025 387 y(index)25 b(con)n(v)n(en)n(tion)d
+Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49
+b Ft(54)2025 475 y(indgen-equiv)l(alen)n(t)10 b Ff(:)i(:)h(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)37 b Ft(122)2025 563 y(inexact)25
+b(con)n(v)n(ersion)13 b Ff(:)h(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40
+b Ft(164)2025 651 y(Info)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(5)2025 739 y(input)25 b(\014les)15 b Ff(:)e(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-49 b Fs(121)150 4900 y(in)n(t64\(\))19 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fs(121)150 4988 y(in)n(tegration)18 b Fa(:)d(:)e(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)42 b Ft(20,)26 b(28,)h(30)2025
+827 y Fn(input-path)13 b Ff(:)e(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)39 b Ft(28,)27 b(32)2025 915 y(installation)7
+b Ff(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(208)150
-5076 y(in)n(tegrit)n(y)10 b Fa(:)j(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fs(79)150
-5164 y(In)n(tel)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36
-b Fs(6)150 5252 y(In)n(ternationalization)9 b Fa(:)14
-b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(25)150
-5340 y(in)n(terop)r(erabilit)n(y)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fs(83)2025 299 y(in)n(terp)r(olation)7
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+33 b Ft(6,)26 b(14)2025 1003 y(in)n(t\(\))c Ff(:)13 b(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)50 b Ft(133)2025 1091 y(in)n(t64\(\))19 b Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)45 b Ft(133)2025 1179 y(in)n(tegration)18
+b Ff(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)45 b Ft(220)2025 1267 y(in)n(tegrit)n(y)10 b Ff(:)j(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)36
+b Ft(89)2025 1355 y(In)n(tel)9 b Ff(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
+b Ft(6)2025 1443 y(In)n(ternationalization)9 b Ff(:)14
+b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Ft(25)2025
+1531 y(in)n(terop)r(erabilit)n(y)13 b Ff(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b Ft(93)2025 1619 y(in)n(terp)r(olation)7
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34
-b Fs(173,)27 b(236)2025 387 y(in)n(tersection)16 b Fa(:)e(:)f(:)g(:)g
+b Ft(185,)27 b(248)2025 1707 y(in)n(tersection)16 b Ff(:)e(:)f(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42 b Fs(40,)27
-b(42)2025 474 y(in)n(tro)r(duction)15 b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42 b Ft(40,)27
+b(42)2025 1795 y(in)n(tro)r(duction)15 b Ff(:)e(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)42 b Fs(5)2025
-562 y Fr(invert_map)24 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)42 b Ft(5)2025
+1883 y Fs(invert_map)24 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)49 b Fs(125)2025 650 y Fp(IPCC)15
-b Fa(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Ft(137)2025 1971 y Fq(IPCC)15
+b Ff(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)42 b Fs(167,)27 b(213)2025 738 y(irregular)g(grids)15
-b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+(:)g(:)42 b Ft(179,)27 b(225)2025 2059 y(irregular)g(grids)15
+b Ff(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(130)2025 825 y Fp(ISO)9 b Fa(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(142)2025 2147 y Fq(ISO)9 b Ff(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)36 b Fs(6)2025 1061 y FB(J)2025 1178 y Fs(James)27
-b(Gallagher)8 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)36 b Ft(6)2025 2384 y FC(J)2025 2502 y Ft(James)27
+b(Gallagher)8 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-35 b Fs(211)2025 1266 y(Jim)26 b(Edw)n(ards)15 b Fa(:)f(:)f(:)g(:)g(:)g
+35 b Ft(223)2025 2590 y(Jim)26 b(Edw)n(ards)15 b Ff(:)f(:)f(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(212)2025
-1354 y(Jo)r(e)27 b(Hamman)13 b Fa(:)f(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Ft(224)2025
+2678 y(Jo)r(e)27 b(Hamman)13 b Ff(:)f(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)40 b Fs(211)2025 1441 y(John)26
-b(Caron)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)40 b Ft(223)2025 2766 y(John)26
+b(Caron)c Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)48 b Fs(211)2025 1529 y(Juliana)27 b(Rew)10 b
-Fa(:)j(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)48 b Ft(223)2025 2854 y(Juliana)27 b(Rew)10 b
+Ff(:)j(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fs(212)2025 1765 y FB(K)2025 1882 y Fs(Karen)25 b(Sc)n(h)n(uc)n
-(hardt)18 b Fa(:)12 b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(224)2025 3091 y FC(K)2025 3208 y Ft(Karen)25 b(Sc)n(h)n(uc)n
+(hardt)18 b Ff(:)12 b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45
-b Fs(212)2025 1970 y(Keith)25 b(Lindsa)n(y)15 b Fa(:)e(:)g(:)g(:)g(:)g
+b Ft(224)2025 3296 y(Keith)25 b(Lindsa)n(y)15 b Ff(:)e(:)g(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(212)2025
-2057 y(kitc)n(hen)25 b(sink)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)42 b Ft(224)2025
+3385 y(kitc)n(hen)25 b(sink)16 b Ff(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Fs(176)2025 2145 y(Kyle)25
-b(Wilco)n(x)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Ft(188)2025 3473 y(Kyle)25
+b(Wilco)n(x)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)38 b Fs(212)2025 2397 y FB(L)2025 2515 y
-Fs(L10N)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)38 b Ft(224)2025 3726 y FC(L)2025 3844 y
+Ft(L10N)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(25)2025
-2602 y(large)27 b(datasets)13 b Fa(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(25)2025
+3932 y(large)27 b(datasets)13 b Ff(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)39 b Fs(21,)27 b(26)2025 2690 y(Large)f(File)h(Supp)r(ort)
-10 b Fa(:)i(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(21,)27 b(40)2025
-2778 y Fr(lat_bnds)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(99)2025 2866
-y Fr(LD_LIBRARY_PATH)13 b Fa(:)k(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)41 b Fs(9)2025 2953 y(left)26 b(hand)f(casting)12
-b Fa(:)i(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(23,)27 b(110)2025
-3041 y(Legendre)f(p)r(olynomial)c Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)39 b Ft(21,)27 b(26)2025 4020 y(Large)f(File)h(Supp)r(ort)
+10 b Ff(:)i(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(21,)27 b(40)2025
+4108 y Fs(lat_bnds)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(110)2025
+4196 y Fs(LD_LIBRARY_PATH)13 b Ff(:)k(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)41 b Ft(9)2025 4284 y(Least)26 b(Signi\014can)n(t)g
+(Digit)14 b Ff(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)41 b Ft(79)2025
+4372 y Fs(least_significant_digit)8 b Ff(:)18 b(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)34 b Ft(82)2025 4460 y(left)26 b(hand)f(casting)12
+b Ff(:)i(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Ft(23,)27 b(122)2025
+4548 y(Legendre)f(p)r(olynomial)c Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48
-b Fs(135)2025 3129 y(Lemp)r(el-Ziv)25 b(de\015ation)8
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(78)2025
-3216 y(Len)25 b(Makin)20 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Ft(148)2025 4636 y(Lemp)r(el-Ziv)25 b(de\015ation)8
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Ft(88)2025
+4724 y(Len)25 b(Makin)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Fs(212)2025 3304
-y(lexer)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Ft(224)2025 4812
+y(lexer)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Fs(104)2025
-3392 y(`)p Fr(lfp)p Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Ft(116)2025
+4900 y(`)p Fs(lfp)p Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47
-b Fs(75)2025 3480 y Fp(LFS)8 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+b Ft(75)2025 4988 y Fq(LFS)8 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35
-b Fs(21,)27 b(40)2025 3567 y Fp(LHS)13 b Fa(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Ft(21,)27 b(40)2025 5076 y Fq(LHS)13 b Ff(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fs(110)2025 3655 y Fr(libnco)20 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(122)2025 5164 y Fs(libnco)20 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46
-b Fs(6)2025 3743 y(libraries)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Ft(6)2025 5252 y(libraries)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46
-b Fs(9)2025 3831 y(link)n(ers)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Ft(9)2025 5340 y(link)n(ers)9 b Ff(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fs(30)2025 3918 y(Lin)n(ux)18 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fs(153)2025 4006 y Fp(LL)-8 b(VM)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)48 b Fs(6)2025 4094 y Fm(ln)15 b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Ft(30)p eop end
+%%Page: 275 281
+TeXDict begin 275 280 bop 150 -116 a FE(General)31 b(Index)2902
+b(275)150 299 y Ft(Lin)n(ux)18 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)42 b Fs(151)2025 4182 y Fr(ln)26 b(-s)12 b Fa(:)h(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(163,)27 b(191)2025 4269 y Fm(log)19 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)39 b Fs(151)2025 4357 y Fm(log10)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46
+b Ft(165)150 387 y Fq(LL)-8 b(VM)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48
+b Ft(6)150 476 y Fn(ln)15 b Ff(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42
+b Ft(163)150 564 y Fs(ln)26 b(-s)12 b Ff(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Ft(175,)27
+b(203)150 652 y Fn(log)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
+b Ft(163)150 741 y Fn(log10)14 b Ff(:)h(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35
+b Ft(163)150 829 y(logarithm,)27 b(base)f(10)11 b Ff(:)j(:)f(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)37 b Ft(163)150 917 y(logarithm,)27
+b(natural)13 b Ff(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40
+b Ft(163)150 1006 y Fs(lon_bnds)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b
+Ft(110)150 1094 y Fs(long)27 b(double)9 b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-35 b Fs(151)2025 4445 y(logarithm,)27 b(base)f(10)11
-b Fa(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Fs(151)2025
-4533 y(logarithm,)27 b(natural)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Ft(165)150
+1183 y(long)26 b(options)20 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)40 b Fs(151)2025 4620 y Fr(lon_bnds)12 b Fa(:)j(:)e(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(99)2025 4708 y Fr(long)26 b(double)9 b Fa(:)15 b(:)e(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(153)2025
-4796 y(long)26 b(options)20 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)46 b Fs(27,)27 b(196)2025 4883 y(long-term)f(a)n(v)n(erage)
-21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)47
-b Fs(223)2025 4971 y(longitude)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)46 b Ft(27,)27 b(208)150 1271 y(long-term)f(a)n(v)n(erage)
+21 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47
+b Ft(235)150 1359 y(longitude)13 b Ff(:)h(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b
+Ft(63)150 1448 y(Lori)26 b(Sen)n(tman)7 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b Ft(224)150 1536
+y(lossy)26 b(compression)9 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)35 b Ft(78)150 1624 y Fs(lrint\(\).)10 b
+Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)37 b Ft(102)150 1713 y Fs(lround\(\).)7 b
+Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40 b
-Fs(63)2025 5059 y(Lori)26 b(Sen)n(tman)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(212)2025
-5147 y Fr(lrint\(\).)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(91)2025
-5234 y Fr(lround\(\).)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(91)2025 5322
-y(Luk)25 b(Claes)16 b Fa(:)e(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)34 b Ft(102)150 1801 y Fq(LSD)15 b Ff(:)e(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)41 b Ft(79)150 1890 y(Luk)25 b(Claes)16 b Ff(:)e(:)f(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42
+b Ft(224)150 2129 y FC(M)150 2247 y Fs(mabs)23 b Ff(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(94)150 2335 y(mabs\(\))15
+b Ff(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)43 b Fs(212)p eop end
-%%Page: 263 269
-TeXDict begin 263 268 bop 150 -116 a FD(General)31 b(Index)2902
-b(263)150 299 y FB(M)150 416 y Fs(Macin)n(tosh)15 b Fa(:)f(:)f(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42
-b Fs(6)150 504 y Fr(Makefile)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)39 b Fs(6,)26 b(8,)g(33)150
-592 y Fr(malloc\(\))12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fs(23)150 680
-y(man)n(tissa)23 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(96)150 768
-y(man)n(ual)26 b(t)n(yp)r(e)f(con)n(v)n(ersion)12 b Fa(:)h(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)38 b Fs(90)150 856 y(`)p Fr(map_dmn)p Fs(')10
-b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)37 b Fs(75)150 944 y(`)p Fr(map_lfp)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)42 b Ft(131)150 2424 y(Macin)n(tosh)15
+b Ff(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)42 b Ft(6)150 2512 y Fs(Makefile)12 b
+Ff(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)39
+b Ft(6,)26 b(8,)g(33)150 2600 y Fs(malloc\(\))12 b Ff(:)j(:)e(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
+b Ft(23)150 2689 y(man)n(tissa)21 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b
+Ft(106)150 2777 y(man)n(ual)26 b(t)n(yp)r(e)f(con)n(v)n(ersion)10
+b Ff(:)j(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)36 b Ft(100)150 2866 y(`)p Fs(map_dmn)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(75)150 1032 y(`)p Fr(map_nc4)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 2954 y(`)p Fs(map_lfp)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(75)150 1120 y(`)p Fr(map_prd)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 3042 y(`)p Fs(map_nc4)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(75)150 1208 y(`)p Fr(map_rd1)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 3131 y(`)p Fs(map_prd)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(75)150 1296 y(`)p Fr(map_rew)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 3219 y(`)p Fs(map_rd1)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(75)150 1383 y(`)p Fr(map_scl)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 3307 y(`)p Fs(map_rew)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(75)150 1471 y(`)p Fr(map_xst)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 3396 y(`)p Fs(map_scl)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(75)150 1559 y(Mark)26
-b(Flanner)20 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 3484 y(`)p Fs(map_xst)p
+Ft(')10 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(75)150 3573 y(Mark)26
+b(Flanner)20 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)47 b Fs(212)150 1647 y(Markus)26 b(Liebig)10 b
-Fa(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)47 b Ft(224)150 3661 y(Markus)26 b(Liebig)10 b
+Ff(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fs(212)150 1735 y(Martin)26 b(Dix)12 b Fa(:)g(:)i(:)f(:)g(:)g(:)g(:)g
+b Ft(224)150 3749 y(Martin)26 b(Dix)12 b Ff(:)g(:)i(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b Fs(212)150
-1823 y(Martin)26 b(Otte)12 b Fa(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b Ft(224)150
+3838 y(Martin)26 b(Otte)12 b Ff(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)39 b Fs(213)150 1911 y(Martin)26
-b(Sc)n(hmidt)19 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+h(:)f(:)g(:)g(:)g(:)g(:)39 b Ft(225)150 3926 y(Martin)26
+b(Sc)n(hmidt)19 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-46 b Fs(212)150 1999 y(Martin)26 b(Sc)n(h)n(ultz)20 b
-Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+46 b Ft(224)150 4014 y(Martin)26 b(Sc)n(h)n(ultz)20 b
+Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fs(51)150 2087 y(mask)16 b Fa(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Ft(51)150 4103 y(mask)16 b Ff(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Fs(130,)27 b(149)150
-2175 y(mask)f(condition)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Ft(142,)27 b(162)150
+4191 y(mask)f(condition)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fs(207,)27 b(210)150 2263 y(mask)n(ed)f(a)n(v)n(erage)8
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Ft(219,)27 b(222)150 4280 y(mask)n(ed)f(a)n(v)n(erage)8
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fs(206)150 2351 y(Mass)27 b(Store)f(System)20 b Fa(:)13
+b Ft(218)150 4368 y(Mass)27 b(Store)f(System)20 b Ff(:)13
 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fs(30)150
-2439 y(Matej)27 b(V)-6 b(ela)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Ft(30)150
+4456 y(Matej)27 b(V)-6 b(ela)17 b Ff(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(212)150 2526
-y(mathematical)27 b(functions)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(224)150 4545
+y(mathematical)27 b(functions)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(151)150 2614 y(Matlab)14 b Fa(:)g(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+b Ft(163)150 4633 y(Matlab)14 b Ff(:)g(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)41
-b Fs(15)150 2702 y Fr(max)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Ft(15)150 4721 y Fs(max)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
-b Fs(84)150 2790 y(max\(\))14 b Fa(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Ft(94)150 4810 y(max\(\))14 b Ff(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fs(119)150 2878 y(maxim)n(um)19 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(131)150 4898 y(maxim)n(um)19 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b
-Fs(84)150 2966 y(MD5)26 b(digest)8 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g
+Ft(94)150 4986 y(MD5)26 b(digest)8 b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Fs(79)150
-3054 y(mean)11 b Fa(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Fs(84)150
-3142 y(memory)26 b(a)n(v)l(ailable)18 b Fa(:)c(:)g(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)45 b Fs(22,)26 b(81)150 3230 y(memory)g(leaks)6 b
-Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Ft(89)150
+5075 y(mean)11 b Ff(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-33 b Fs(23)150 3318 y(memory)26 b(requiremen)n(ts)c Fa(:)13
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)49
-b Fs(22,)27 b(43,)f(81)150 3406 y(merging)h(\014les)13
-b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fs(17,)27 b(176)150 3494 y(metadata)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36
-b Fs(181)150 3582 y(metadata)26 b(optimization)9 b Fa(:)15
-b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(25)150 3669 y(metadata,)27
-b(global)9 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(171,)27
-b(180)150 3757 y(Mic)n(hael)g(Dec)n(k)n(er)15 b Fa(:)d(:)h(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(51)150 3845
-y(Mic)n(hael)27 b(Prather)17 b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Ft(94)150
+5163 y Fs(mebs)23 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
+b Ft(94)150 5252 y(mebs\(\))17 b Ff(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b
+Ft(131)150 5340 y(memory)26 b(a)n(v)l(ailable)18 b Ff(:)c(:)g(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)45 b Ft(22,)26 b(91)2025 299 y(memory)f(leaks)6
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+33 b Ft(23)2025 387 y(memory)25 b(requiremen)n(ts)e Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49
+b Ft(22,)26 b(43,)h(91)2025 476 y(merging)f(\014les)13
+b Ff(:)h(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
+b Ft(17,)27 b(188)2025 564 y(metadata)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)43 b Fs(96)150 3933 y(Mic)n(hael)27 b(Sc)n(h)n(ulz)19
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46
-b Fs(212)150 4021 y(Microsoft)24 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(6,)26
-b(7)150 4109 y(Microsoft)i(Visual)e(Studio)12 b Fa(:)g(:)i(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)39 b Fs(7)150 4197 y(Mik)n(e)26 b(F)-6 b(olk)21
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)48 b Fs(9)150 4285 y(Mik)n(e)26 b(P)n(age)8
-b Fa(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
+b Ft(193)2025 652 y(metadata)26 b(optimization)9 b Ff(:)15
+b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Ft(25)2025 741 y(metadata,)26
+b(global)9 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Ft(183,)27
+b(192)2025 829 y Fs(mibs)c Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
+b Ft(94)2025 918 y(mibs\(\))7 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)35 b Fs(212)150 4373 y Fr(min)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)34 b Fs(84)150 4461 y(min\(\))21 b Fa(:)14
-b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)48 b Fs(119)150 4549 y(minim)n(um)10
-b Fa(:)j(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)36 b Fs(84)150 4637 y(missing)27 b(v)l(alues)18
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44
-b Fs(71,)27 b(86,)g(156,)g(174,)g(181)150 4725 y(missing)g(v)l(alues)f
-(ncap2)c Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fs(117)150
-4812 y Fr(missing_value)10 b Fa(:)16 b(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37
-b Fs(71,)26 b(82,)h(205)150 4900 y(MKS)e(units)10 b Fa(:)j(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(66,)26
-b(69)150 4988 y(MODIS)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(236,)27 b(239)150 5076
-y(mo)r(dulus)8 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
+b Ft(131)2025 1006 y(Mic)n(hael)27 b(Dec)n(k)n(er)15
+b Ff(:)d(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41
+b Ft(51)2025 1094 y(Mic)n(hael)27 b(Prather)15 b Ff(:)e(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)42 b Ft(106)2025 1183 y(Mic)n(hael)27
+b(Sc)n(h)n(ulz)19 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)47 b Ft(224)2025 1271 y(Microsoft)24 b Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+48 b Ft(6,)27 b(7)2025 1360 y(Microsoft)h(Visual)e(Studio)12
+b Ff(:)g(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Ft(7)2025 1448 y(Mik)n(e)26
+b(F)-6 b(olk)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Fs(151)150 5164
-y(monotonic)26 b(co)r(ordinates)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38
-b Fs(24)150 5252 y(mon)n(thly)25 b(a)n(v)n(erage)14 b
-Fa(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(215,)27 b(233)150
-5340 y(mon)n(thly)e(data)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)40 b Fs(215,)27 b(216)2025 299 y(mo)n(v)n(e)e(groups)10
-b Fa(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)36 b Fs(48)2025 387 y(MR)n(O)8 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
-b Fs(59)2025 476 y Fp(MSA)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fs(60)2025 564 y Fr(msk_*)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(99)2025 652 y Fr(msrcp)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(31)2025 741 y Fp(msrcp)8 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Ft(9)2025 1536 y(Mik)n(e)26
+b(P)n(age)8 b Ff(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)35 b Ft(224)2025 1625 y Fs(min)8
+b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Ft(94)2025
+1713 y(min\(\))21 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(131)2025
+1802 y(minim)n(um)10 b Ff(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(94)2025 1890
+y(missing)27 b(v)l(alues)18 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)45 b Ft(71,)27 b(96,)g(168,)g(186,)g(193)2025
+1978 y(missing)g(v)l(alues)e(ncap2)e Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+49 b Ft(129)2025 2067 y Fs(missing_value)10 b Ff(:)16
+b(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)36 b Ft(71,)27 b(92,)g(217)2025
+2155 y(MKS)e(units)10 b Ff(:)j(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)36 b Ft(66,)27 b(69)2025 2243 y(MODIS)7
+b Ff(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+34 b Ft(248,)27 b(251)2025 2332 y(mo)r(dulus)8 b Ff(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)35 b Ft(163)2025 2420 y(monotonic)26 b(co)r(ordinates)12
+b Ff(:)j(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Ft(24)2025 2509
+y(mon)n(thly)25 b(a)n(v)n(erage)14 b Ff(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41
+b Ft(227,)27 b(245)2025 2597 y(mon)n(thly)e(data)13 b
+Ff(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Ft(227,)27
+b(228)2025 2685 y(mo)n(v)n(e)e(groups)10 b Ff(:)j(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Ft(48)2025
+2774 y(MR)n(O)8 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b
+Ft(59)2025 2862 y Fq(MSA)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
+b Ft(60)2025 2951 y Fs(msk_*)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Ft(110)2025 3039 y Fs(msrcp)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
+b Ft(31)2025 3127 y Fq(msrcp)8 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35
-b Fs(35)2025 829 y Fr(msread)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fs(31)2025 918 y Fp(MSS)12 b Fa(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Ft(35)2025 3216 y Fs(msread)17 b Ff(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
+b Ft(31)2025 3304 y Fq(MSS)12 b Ff(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(30)2025 1006 y(m)n(ulti-\014le)25 b(op)r(erators)15
-b Fa(:)g(:)41 b Fs(22,)27 b(29,)g(30,)f(168,)i(171,)f(198,)g(200)2025
-1094 y(m)n(ulti-h)n(yp)r(erslab)9 b Fa(:)j(:)h(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(30)2025 3393 y(m)n(ulti-\014le)25 b(op)r(erators)15
+b Ff(:)g(:)41 b Ft(22,)27 b(29,)g(30,)f(180,)i(183,)f(210,)g(212)2025
+3481 y(m)n(ulti-h)n(yp)r(erslab)9 b Ff(:)j(:)h(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(60)2025 1183 y(Multi-Record)25
-b(Op)r(erator)20 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Ft(60)2025 3569 y(Multi-Record)25
+b(Op)r(erator)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b
-Fs(59)2025 1271 y(m)n(ultiplication)10 b Fa(:)k(:)f(:)g(:)g(:)h(:)f(:)g
+Ft(59)2025 3658 y(m)n(ultiplication)10 b Ff(:)k(:)f(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)37
-b Fs(151,)27 b(162,)g(175)2025 1360 y Fr(multiply)10
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Ft(163,)27 b(174,)g(187)2025 3746 y Fs(multiply)10
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)37 b Fs(162)2025 1448 y(m)n(ultiplying)25
-b(data)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b Fs(162,)27
-b(173)2025 1536 y(m)n(ultislab)14 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)37 b Ft(174)2025 3835 y(m)n(ultiplying)25
+b(data)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b Ft(174,)27
+b(185)2025 3923 y(m)n(ultislab)14 b Ff(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41 b
-Fs(60)2025 1625 y Fr(mv)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+Ft(60)2025 4011 y Fs(mv)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
-b Fs(41)2025 1713 y Fr(MVS)10 b Fa(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Ft(41)2025 4100 y Fs(MVS)10 b Ff(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)37 b Fs(6)2025 1802 y Fp(MVS)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)37 b Ft(6)2025 4188 y Fq(MVS)7 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)35 b Fs(7)2025 2041 y FB(N)2025 2159 y Fs(nak)n(ed)25
-b(c)n(haracters)e Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)35 b Ft(7)2025 4427 y FC(N)2025 4546 y Ft(nak)n(ed)25
+b(c)n(haracters)e Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49
-b Fs(163)2025 2248 y(NaN)21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Ft(175)2025 4634 y(NaN)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(159)2025 2336 y Fp(NARR)25 b Fs(\(North)g(American)h(Regional)h
-(Reanalysis\)a)2200 2423 y Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Ft(171)2025 4722 y Fq(NARR)25 b Ft(\(North)g(American)h(Regional)h
+(Reanalysis\)a)2200 4810 y Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(123)2025 2511 y Fp(NASA)17 b Fa(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(135)2025 4898 y Fq(NASA)17 b Ff(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fs(213)2025 2600 y Fp(NASA)23 b(EOSDIS)13 b Fa(:)h(:)f(:)g(:)g(:)h(:)
+b Ft(225)2025 4986 y Fq(NASA)23 b(EOSDIS)13 b Ff(:)h(:)f(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40 b Fs(19)2025
-2688 y(National)26 b(Virtual)g(Ocean)g(Data)g(System)c
-Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50 b Fs(33)2025
-2777 y Fr(nc__enddef\(\))21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40 b Ft(19)2025
+5075 y(National)26 b(Virtual)g(Ocean)g(Data)g(System)c
+Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50 b Ft(33)2025
+5163 y Fs(nc__enddef\(\))21 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)45 b Fs(25)2025 2865 y Fr(NC_BYTE)12
-b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)45 b Ft(25)2025 5252 y Fs(NC_BYTE)12
+b Ff(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)39 b Fs(191)2025 2953 y Fr(NC_CHAR)6 b
-Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)39 b Ft(203)2025 5340 y Fs(NC_CHAR)6 b
+Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33
-b Fs(56,)27 b(164,)g(191)2025 3042 y Fr(NC_DISKLESS)d
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-48 b Fs(81)2025 3130 y Fr(NC_DOUBLE)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(153,)27 b(191)2025 3219
-y Fr(NC_FLOAT)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(191)2025 3307
-y Fr(NC_FORMAT_DAP2)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)40 b Fs(37)2025 3395 y Fr(NC_FORMAT_DAP4)14 b
-Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fs(37)2025 3484 y Fr(NC_FORMAT_NC_HDF4)6 b Fa(:)17
-b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fs(37)2025
-3572 y Fr(NC_FORMAT_NC_HDF5)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)33 b Fs(37)2025 3661 y Fr(NC_FORMAT_NC3)16 b
-Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fs(37)2025 3749 y Fr(NC_FORMAT_PNETCDF)6 b Fa(:)17
-b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fs(37)2025
-3837 y Fr(NC_INT)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(191)2025
-3926 y Fr(NC_INT64)16 b Fa(:)f(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)43 b Fs(10,)27 b(191)2025 4014 y Fr(NC_SHORT)10
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)37 b Fs(191)2025 4102 y Fr(NC_UBYTE)16 b
-Fa(:)f(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fs(10,)27 b(191)2025 4191 y Fr(NC_UINT)20 b Fa(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fs(10,)27 b(191)2025 4279 y Fr(NC_UINT64)14 b Fa(:)h(:)e(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(10,)27 b(191)2025
-4368 y Fr(NC_USHORT)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Ft(56,)27 b(176,)g(203)p eop end
+%%Page: 276 282
+TeXDict begin 276 281 bop 150 -116 a FE(276)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y Fs(NC_DISKLESS)24
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)40 b Fs(10,)27 b(191)2025 4456 y(`)p Fr(nc4)p
-Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+48 b Ft(91)150 387 y Fs(NC_DOUBLE)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)38 b Ft(165,)27 b(203)150 476
+y Fs(NC_FLOAT)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(203)150 564 y
+Fs(NC_FORMAT_DAP2)14 b Ff(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fs(75)2025
-4544 y Fr(ncadd)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(162)2025
-4633 y Fr(ncap)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b
-Fs(104)2025 4721 y Fr(ncap2)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fs(7)2025 4810 y Fr(ncap2)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)40 b Ft(37)150 653 y Fs(NC_FORMAT_DAP4)14 b Ff(:)i(:)d(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Ft(37)150 741
+y Fs(NC_FORMAT_NC_HDF4)6 b Ff(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)32 b Ft(37)150 830 y Fs(NC_FORMAT_NC_HDF5)6 b Ff(:)17
+b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Ft(37)150
+918 y Fs(NC_FORMAT_NC3)16 b Ff(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)43 b Ft(37)150 1006 y Fs(NC_FORMAT_PNETCDF)6
+b Ff(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Ft(37)150
+1095 y Fs(NC_INT)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Ft(203)150
+1183 y Fs(NC_INT64)16 b Ff(:)f(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)43 b Ft(10,)27 b(203)150 1272 y Fs(NC_SHORT)10
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)37 b Ft(203)150 1360 y Fs(NC_UBYTE)16 b Ff(:)f(:)e(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Ft(10,)27
+b(203)150 1449 y Fs(NC_UINT)20 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)42 b Fs(23,)26 b(26,)h(98)2025
-4898 y Fr(ncap2)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Ft(10,)27 b(203)150
+1537 y Fs(NC_UINT64)14 b Ff(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)40 b Ft(10,)27 b(203)150 1625 y Fs(NC_USHORT)14
+b Ff(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)40
+b Ft(10,)27 b(203)150 1714 y Fs(nc3tonc4)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
+b Ft(11)150 1802 y(`)p Fs(nc4)p Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)47 b Ft(75)150 1891 y Fs(ncadd)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
+b Ft(174)150 1979 y Fs(ncap)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(116)150 2068 y Fs(ncap2)23 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(104)2025
-4986 y Fr(ncap2)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
+b Ft(7)150 2156 y Fs(ncap2)13 b Ff(:)i(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)40 b Ft(23,)26 b(26,)h(108)150
+2245 y Fs(ncap2)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(116)150
+2333 y Fs(ncap2)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(202)150
+2421 y Fq(NCAR)19 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Ft(15,)26 b(88)150
+2510 y Fq(NCAR)d(MSS)15 b Ff(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Ft(30)150 2598 y
+Fs(ncatted)15 b Ff(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Ft(43)150 2687 y
+Fs(ncatted)15 b Ff(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Ft(71)150 2775 y
+Fs(ncatted)20 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(190)2025
-5075 y Fp(NCAR)13 b Fa(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b Fs(15)2025
-5163 y Fp(NCAR)23 b(MSS)15 b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fs(30)2025 5252
-y Fr(ncatted)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fs(43)2025 5340
-y Fr(ncatted)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fs(71)p eop end
-%%Page: 264 270
-TeXDict begin 264 269 bop 150 -116 a FD(264)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fr(ncatted)23 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48
-b Fs(72,)26 b(99)150 387 y Fr(ncatted)12 b Fa(:)j(:)e(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39
-b Fs(156)150 476 y Fr(ncattget)14 b Fa(:)h(:)e(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)45 b Ft(72,)27 b(109)150 2864 y Fs(ncatted)12
+b Ff(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)39 b Ft(168)150 2952 y Fs(ncattget)14
+b Ff(:)h(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
+b Ft(168,)27 b(196)150 3041 y Fs(ncavg)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
+b Ft(196)150 3129 y Fs(ncbo)23 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
+b Ft(72)150 3217 y Fs(ncbo)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(156,)27 b(184)150 564
-y Fr(ncavg)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(174)150 3306 y Fs(ncdiff)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(184)150 653
-y Fr(ncbo)23 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(72)150
-741 y Fr(ncbo)21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(162)150
-830 y Fr(ncdiff)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(162)150 918
-y Fr(ncdismember)11 b Fa(:)k(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)38 b Fs(49,)26 b(51)150 1006 y Fr(ncdivide)10
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)37 b Fs(162)150 1095 y Fr(ncdmnsz)12 b Fa(:)j(:)e(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39
-b Fs(184)150 1183 y Fr(ncdump)13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-40 b Fs(37,)27 b(178,)g(181,)g(183)150 1272 y Fr(ncecat)17
-b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)43 b Fs(18)150 1360 y Fr(ncecat)15
-b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)42 b Fs(170)150 1449 y Fr(nces)12
-b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)39 b Fs(19,)26 b(72)150 1537 y Fr(nces)21
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(167)150 1625 y Fr(ncextr)15
-b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)42 b Fs(176)150 1714 y Fr(ncflint)23
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)48 b Fs(19,)26 b(72)150 1802 y Fr(ncflint)12 b Fa(:)j(:)e(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39
-b Fs(173)150 1891 y Fr(ncgen)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(178)150 1979 y Fr(ncgen-hdf)7 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fs(178)150
-2068 y Fr(ncks)23 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(37)150 2156 y Fr(ncks)14 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
+b Ft(174)150 3394 y Fs(ncdismember)11 b Ff(:)k(:)f(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(49,)26 b(51)150 3483
+y Fs(ncdivide)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(174)150 3571 y
+Fs(ncdmnsz)12 b Ff(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)40 b Fs(79,)27 b(151,)g(176)150
-2245 y Fp(NCL)14 b Fa(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fs(15,)27 b(195)150
-2333 y Fr(ncl_convert2nc)18 b Fa(:)e(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(11,)27 b(195)150 2421 y Fr(nclist)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(184)150 2510 y Fr(ncmax)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(184)150 2598 y Fr(ncmdn)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Ft(196)150 3660 y Fs(ncdump)13
+b Ff(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b Ft(37,)27 b(190,)g(193,)g(195)
+150 3748 y Fs(ncecat)17 b Ff(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(184)150 2687 y Fr(ncmin)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Ft(18)150
+3836 y Fs(ncecat)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(184)150 2775 y Fp(NcML)19 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46
-b Fs(183)150 2864 y Fr(ncmult)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Ft(182)150
+3925 y Fs(nces)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Ft(19,)26 b(72)150
+4013 y Fs(nces)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b
+Ft(179)150 4102 y Fs(ncextr)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b
+Ft(188)150 4190 y Fs(ncflint)23 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Ft(19,)26 b(72)150
+4279 y Fs(ncflint)12 b Ff(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Ft(185)150 4367
+y Fs(ncgen)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(162)150 2952 y Fr(ncmultiply)24 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(162)150
-3041 y Fp(NCO)25 b Fs(a)n(v)l(ailabilit)n(y)15 b Fa(:)f(:)f(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fs(5)150 3129
-y Fp(NCO)25 b Fs(homepage)15 b Fa(:)f(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(190)150 4456
+y Fs(ncgen-hdf)7 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Ft(190)150 4544 y Fs(ncks)23
+b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)42 b Fs(5)150 3217 y(nco)26 b(script)g(\014le)9
-b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
-b Fs(226)150 3306 y Fm(NCO)25 b(User)h(Guide)21 b Fa(:)13
-b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44
-b Fs(5)150 3394 y Fr(nco.config.log.${GNU_TRP}.foo)11
-b Fa(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
-b Fs(14)150 3483 y Fr(nco.configure.${GNU_TRP}.foo)13
-b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(14)150 3571 y Fr(nco.make.${GNU_TRP}.foo)8 b Fa(:)18
-b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)34 b Fs(14)150 3660 y Fr(nco_input_file_list)7
-b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Fs(20,)26 b(99)150 3748
-y Fr(nco_input_file_number)e Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fs(20,)26
-b(99)150 3836 y Fr(nco_openmp_thread_number)i Fa(:)13
-b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)49 b Fs(25)150 3925 y Fr(ncpack)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(37)150 4632 y
+Fs(ncks)14 b Ff(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)40 b Ft(89,)27 b(163,)g(188)150 4721 y Fq(NCL)14
+b Ff(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)40 b Ft(15,)27 b(207)150 4809 y Fs(ncl_convert2nc)18
+b Ff(:)e(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(11,)27 b(207)150
+4898 y Fs(nclist)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Ft(196)150
+4986 y Fs(ncmax)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(190)150 4013 y Fr(ncpdq)9 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b
-Fs(18,)26 b(26)150 4102 y Fr(ncpdq)15 b Fa(:)g(:)e(:)g(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(196)150
+5075 y Fs(ncmdn)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(196)150
+5163 y Fs(ncmin)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(196)150
+5252 y Fq(NcML)19 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46 b Ft(195)150
+5340 y Fs(ncmult)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Ft(174)2025
+299 y Fs(ncmultiply)24 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Ft(174)2025 387 y Fq(NCO)25
+b Ft(a)n(v)l(ailabilit)n(y)15 b Ff(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)42 b Ft(5)2025 476 y Fq(NCO)25 b
+Ft(homepage)15 b Ff(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)42 b Fs(73,)27 b(171,)g(190,)g(200)150 4190 y
-Fr(ncra)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(19,)26 b(72)150 4279
-y Fr(ncra)7 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)34 b Fs(151,)27 b(198)150 4367
-y Fr(ncrcat)6 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(18,)26 b(26)150 4456
-y Fr(ncrcat)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)42 b Ft(5)2025 564 y(nco)26 b(script)f(\014le)9
+b Ff(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)36
+b Ft(238)2025 653 y Fn(NCO)25 b(User)h(Guide)21 b Ff(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
+b Ft(5)2025 741 y Fs(nco.config.log.${GNU_TRP}.foo)10
+b Ff(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
+b Ft(14)2025 830 y Fs(nco.configure.${GNU_TRP}.foo)13
+b Ff(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
+b Ft(14)2025 918 y Fs(nco.make.${GNU_TRP}.foo)8 b Ff(:)18
+b(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)34 b Ft(14)2025 1007 y Fs(nco_input_file_list)26
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)49 b Ft(20,)27 b(109)2025 1095 y Fs
+(nco_input_file_number)17 b Ff(:)h(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Ft(20,)27 b(109)2025
+1184 y Fs(nco_openmp_thread_number)h Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Ft(25)2025
+1272 y Fs(ncpack)15 b Ff(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Ft(202)2025
+1360 y Fs(ncpdq)9 b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Ft(18,)27 b(26)2025
+1449 y Fs(ncpdq)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42
+b Ft(73,)27 b(183,)g(202,)g(212)2025 1537 y Fs(ncra)12
+b Ff(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)38 b Ft(19,)27 b(72)2025 1626 y Fs(ncra)7
+b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(200)150 4544
-y Fr(ncrecsz)12 b Fa(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Fs(184)150 4632 y
-Fr(ncrename)16 b Fa(:)f(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)43 b Fs(71,)27 b(202)150 4721 y Fr(ncrng)18 b
-Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)44 b Fs(184)150 4809 y Fp(NCSA)20
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)h(:)f(:)34 b Ft(163,)27 b(210)2025 1714 y Fs(ncrcat)6
+b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)33 b Ft(18,)27 b(26)2025 1803 y Fs(ncrcat)15
+b Ff(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)42 b Ft(212)2025 1891 y Fs(ncrecsz)12
+b Ff(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)39 b Ft(196)2025 1980 y Fs(ncrename)16
+b Ff(:)f(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
+b Ft(71,)27 b(214)2025 2068 y Fs(ncrng)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Ft(196)2025 2157 y Fq(NCSA)19 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46
+b Ft(10)2025 2245 y Fs(ncsub)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Ft(174)2025 2334 y Fs(ncsubtract)24 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Ft(174)2025
+2422 y Fs(ncunits)12 b Ff(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Ft(196)2025
+2510 y Fs(ncunpack)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Fs(10)150 4898 y Fr(ncsub)18
-b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(162)150 4986 y Fr(ncsubtract)24
-b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(202)2025
+2599 y Fs(ncwa)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-49 b Fs(162)150 5075 y Fr(ncunits)12 b Fa(:)j(:)e(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39
-b Fs(184)150 5163 y Fr(ncunpack)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b
-Fs(190)150 5252 y Fr(ncwa)18 b Fa(:)c(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(19,)27 b(26,)f(72)150
-5340 y Fr(ncwa)7 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fs(151,)27 b(206)2025
-299 y(ndims\(\))19 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46 b Fs(120)2025
-387 y Fm(nearb)n(yin)n(t)9 b Fa(:)i(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+h(:)f(:)g(:)g(:)g(:)45 b Ft(19,)26 b(26,)h(72)2025 2687
+y Fs(ncwa)7 b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b Fs(151)2025
-475 y(nearest)26 b(in)n(teger)g(function)g(\(exact\))14
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41
-b Fs(151)2025 564 y(nearest)26 b(in)n(teger)g(function)g(\(inexact\))16
-b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fs(151)2025 652 y Fp(NEC)10 b Fa(:)j(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)h(:)f(:)34 b Ft(163,)27 b(218)2025 2776
+y(ndims\(\))19 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46 b Ft(132)2025 2864
+y Fn(nearb)n(yin)n(t)9 b Ff(:)i(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b Ft(163)2025 2953
+y(nearest)26 b(in)n(teger)g(function)g(\(exact\))14 b
+Ff(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41
+b Ft(163)2025 3041 y(nearest)26 b(in)n(teger)g(function)g(\(inexact\))
+16 b Ff(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
+b Ft(163)2025 3130 y Fq(NEC)10 b Ff(:)j(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fs(6)2025 740 y(Neil)26 b(Da)n(vis)12 b Fa(:)h(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39
-b Fs(91)2025 828 y(nesting)13 b Fa(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(6)2025 3218 y(Neil)26 b(Da)n(vis)10 b Ff(:)j(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b
+Ft(101)2025 3307 y(nesting)13 b Ff(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b
-Fs(105)2025 917 y(netCDF)18 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
-b Fs(5)2025 1005 y(netCDF2)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+Ft(117)2025 3395 y(netCDF)18 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
+b Ft(5)2025 3484 y(netCDF2)23 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)50 b Fs(9,)26 b(35)2025
-1093 y Fr(NETCDF2_ONLY)e Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)50 b Ft(9,)26 b(35)2025
+3572 y Fs(NETCDF2_ONLY)e Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)48 b Fs(9)2025 1181 y(netCDF3)23
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)48 b Ft(9)2025 3660 y(netCDF3)23
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)50 b Fs(9,)26 b(35)2025 1270 y(netCDF3)g(classic)h(\014le)f(format)
-17 b Fa(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)43 b Fs(37)2025 1358 y(netCDF4)10 b Fa(:)j(:)g(:)g(:)h
+g(:)50 b Ft(9,)26 b(35)2025 3749 y(netCDF3)g(classic)h(\014le)f(format)
+17 b Ff(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)43 b Ft(37)2025 3837 y(netCDF4)10 b Ff(:)j(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fs(10,)26 b(35,)h(70)2025
-1446 y(netCDF4)f(classic)h(\014le)f(format)17 b Fa(:)d(:)f(:)g(:)h(:)f
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Ft(10,)26 b(35,)h(70)2025
+3926 y(netCDF4)f(classic)h(\014le)f(format)17 b Ff(:)d(:)f(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fs(37)2025 1534 y(netCDF4)26 b(\014le)f(format)15 b
-Fa(:)g(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fs(37)2025
-1623 y Fr(NETCDF4)27 b Fs(\014les)c Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
+b Ft(37)2025 4014 y(netCDF4)26 b(\014le)f(format)15 b
+Ff(:)g(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Ft(37)2025
+4103 y Fs(NETCDF4)27 b Ft(\014les)c Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Fs(35)2025 1711
-y Fr(NETCDF4_CLASSIC)29 b Fs(\014les)20 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Ft(35)2025 4191
+y Fs(NETCDF4_CLASSIC)29 b Ft(\014les)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)46 b Fs(35)2025 1799 y Fr(NETCDF4_ROOT)21 b Fa(:)14
+g(:)46 b Ft(35)2025 4280 y Fs(NETCDF4_ROOT)21 b Ff(:)14
 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fs(12)2025 1887 y(Nic)n(k)25 b(Bo)n(w)n(er)8 b Fa(:)14
+b Ft(12)2025 4368 y(Nic)n(k)25 b(Bo)n(w)n(er)8 b Ff(:)14
 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
-b Fs(212)2025 1976 y Fr(NINTAP)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)
+b Ft(224)2025 4457 y Fs(NINTAP)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)35 b Fs(28,)27 b(198,)g(200)2025
-2064 y Fr(NO_NETCDF_2)7 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)35 b Ft(28,)27 b(210,)g(212)2025
+4545 y Fs(NO_NETCDF_2)7 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(9)2025 2152 y(non-co)r
-(ordinate)26 b(grid)g(prop)r(erties)15 b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(100)2025 2240
-y(non-rectangular)26 b(grids)13 b Fa(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Ft(9)2025 4634 y(non-co)r
+(ordinate)26 b(grid)g(prop)r(erties)15 b Ff(:)f(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Ft(110)2025 4722
+y(non-rectangular)26 b(grids)13 b Ff(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40
-b Fs(130)2025 2329 y(non-standard)25 b(grids)d Fa(:)13
+b Ft(142)2025 4810 y(non-standard)25 b(grids)d Ff(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Fs(130)2025 2417
-y(normalization)23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Ft(142)2025 4899
+y(normalization)23 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)49 b Fs(208)2025 2505 y(North)25 b(American)h(Regional)h
-(Reanalysis)f(\()p Fp(NARR)p Fs(\))2200 2592 y Fa(:)13
+g(:)g(:)g(:)49 b Ft(220)2025 4987 y(North)25 b(American)h(Regional)h
+(Reanalysis)f(\()p Fq(NARR)p Ft(\))2200 5075 y Ff(:)13
 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)49 b Fs(123)2025 2681 y(Not-a-Num)n(b)r(er)9
-b Fa(:)i(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)49 b Ft(135)2025 5163 y(Not-a-Num)n(b)r(er)9
+b Ff(:)i(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36
-b Fs(159)2025 2769 y Fp(NRA)19 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Ft(171)2025 5252 y Fq(NRA)19 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)47
-b Fs(213)2025 2857 y Fr(nrnet)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+b Ft(225)2025 5340 y Fs(nrnet)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(31)2025 2945 y Fp(NSF)12 b Fa(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Ft(31)p eop end
+%%Page: 277 283
+TeXDict begin 277 282 bop 150 -116 a FE(General)31 b(Index)2902
+b(277)150 299 y Fq(NSD)11 b Ff(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Ft(79)150 387 y Fq(NSF)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39
+b Ft(225)150 475 y Fq(NT)25 b Ft(\(Microsoft)j(op)r(erating)f(system\))
+12 b Ff(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+39 b Ft(7)150 563 y(NUL)17 b Ff(:)12 b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
+b Ft(171)150 651 y Fs(NUL)23 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49
+b Ft(204)150 738 y(NUL-termination)13 b Ff(:)f(:)h(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)39 b Ft(171)150 826 y(n)n(ull)25 b(op)r(eration)17
+b Ff(:)e(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
+b Ft(187)150 914 y(n)n(um)n(b)r(er)25 b(literals)i Fs(ncap2)8
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Ft(126)150 1002
+y(Num)n(b)r(er)25 b(of)h(Signi\014can)n(t)g(Digits)12
+b Ff(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)39 b Ft(79)150 1090 y Fs(number_miss\(\))14 b
+Ff(:)i(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
+b Ft(130)150 1178 y Fs(number_of_significant_digits)13
+b Ff(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
+b Ft(82)150 1266 y Fs(numerator)14 b Ff(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)40 b Ft(96,)27 b(220)150 1354
+y Fq(NV)n(ODS)9 b Ff(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Ft(33)150
+1442 y(`)p Fs(nxt_lsr)p Ft(')8 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fs(213)2025 3034 y Fp(NT)25 b Fs(\(Microsoft)j(op)r(erating)f
-(system\))12 b Fa(:)g(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)39 b Fs(7)2025 3122 y(NUL)17 b Fa(:)12 b(:)h(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Ft(203)150
+1688 y FC(O)150 1805 y Ft(o)r(ceanograph)n(y)8 b Ff(:)14
+b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
+b Ft(32)150 1893 y(o)r(ctal)27 b(dump)12 b Ff(:)g(:)h(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b
+Ft(38)150 1981 y Fs(od)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37
+b Ft(38)150 2069 y Fs(OMP_NUM_THREADS)11 b Ff(:)17 b(:)c(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Ft(26)150 2157 y(on-line)26
+b(do)r(cumen)n(tation)17 b Ff(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44
+b Ft(5)150 2245 y(op)r(en)26 b(source)14 b Ff(:)f(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)41 b Ft(1,)26 b(33)150
+2333 y(Op)r(en-source)f(Pro)t(ject)i(for)g(a)f(Net)n(w)n(ork)f(Data)h
+(Access)304 2420 y(Proto)r(col)18 b Ff(:)d(:)e(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(32)150 2508 y
+Fq(OP)n(eND)n(AP)p Ft(.)6 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Ft(32)150
+2596 y(Op)r(enMP)13 b Ff(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)39 b Ft(22,)27 b(23,)f(25)150 2684 y(op)r(eration)h(t)n(yp)r(es)
+18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)46 b Ft(94,)27 b(210,)g(219)150
+2771 y(op)r(erator)g(sp)r(eed)9 b Ff(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)36 b Ft(9,)26 b(16,)h(24,)f(25,)h(72,)g(168,)g(215)150
+2859 y(op)r(erators)14 b Ff(:)g(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44
-b Fs(159)2025 3210 y Fr(NUL)23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41 b Ft(3)150
+2947 y(OptIPuter)9 b Ff(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(225)150 3035 y(Orion)26
+b(P)n(o)n(wla)n(wski)d Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)48 b Ft(224)150 3123 y Fs(ORO)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
+b Ft(110,)27 b(221)150 3211 y(orphan)e(dimensions)6 b
+Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)33 b Ft(194)150
+3299 y Fq(OS)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
+b Ft(6)150 3387 y(output)25 b(\014le)17 b Ff(:)c(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(20,)26 b(30)150
+3475 y Fn(output-path)17 b Ff(:)12 b(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Ft(32)150 3563 y(o)n(v)n(erview)7
+b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50
-b Fs(192)2025 3298 y(NUL-termination)13 b Fa(:)f(:)h(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)40 b Fs(159)2025 3387 y(n)n(ull)25
-b(op)r(eration)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)44 b Fs(175)2025 3475 y(n)n(um)n(b)r(er)24 b(literals)k
-Fr(ncap2)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Fs(114)2025
-3563 y Fr(number_miss\(\))14 b Fa(:)i(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)33 b Ft(24)150 3651 y(o)n(v)n(erwriting)27
+b(\014les)10 b Ff(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
+b Ft(16,)27 b(108)150 3904 y FC(P)150 4021 y Ft(pac)n(k\(\))9
+b Ff(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)36 b Ft(132)150 4109 y Fs(pack\(x\))15
+b Ff(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)41 b Ft(92)150 4197 y(pac)n(k)p 309
+4197 24 4 v 33 w(b)n(yte\(\))21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)41 b Fs(118)2025 3651 y Fr(numerator)14
-b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40
-b Fs(86,)27 b(208)2025 3740 y Fp(NV)n(ODS)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)35
-b Fs(33)2025 3828 y(`)p Fr(nxt_lsr)p Fs(')8 b Fa(:)15
-b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)35 b Fs(191)2025 4076 y FB(O)2025 4194 y Fs(o)r(ceanograph)n(y)8
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-34 b Fs(32)2025 4282 y(o)r(ctal)27 b(dump)12 b Fa(:)g(:)h(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(38)2025 4370 y Fr(od)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(132)150 4285
+y(pac)n(k)p 309 4285 V 33 w(in)n(t\(\))14 b Ff(:)f(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b
+Ft(132)150 4373 y(pac)n(k)p 309 4373 V 33 w(short\(\))9
+b Ff(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)35
+b Ft(132)150 4461 y(pac)n(king)15 b Ff(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)42 b Ft(34,)26
+b(73,)h(92,)g(183,)g(202,)g(212)150 4549 y(pac)n(king)f(map)21
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48
+b Ft(203)150 4637 y(pac)n(king)26 b(p)r(olicy)11 b Ff(:)i(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(202)150
+4725 y(pap)r(ers)8 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b
+Ft(24)150 4813 y Fs(parallel)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(255)150
+4900 y(parallelism)9 b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)35 b Ft(25,)27 b(225)150 4988 y(parser)13
+b Ff(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)39 b Ft(116)150 5076 y(pasting)26
+b(v)l(ariables)7 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)37 b Fs(38)2025 4459 y Fr(OMP_NUM_THREADS)11 b Fa(:)17
-b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(26)2025
-4547 y(on-line)26 b(do)r(cumen)n(tation)17 b Fa(:)c(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)45 b Fs(5)2025 4635 y(op)r(en)25 b(source)14
-b Fa(:)g(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41
-b Fs(1,)26 b(33)2025 4723 y(Op)r(en-source)f(Pro)t(ject)i(for)g(a)f
-(Net)n(w)n(ork)f(Data)h(Access)2178 4810 y(Proto)r(col)18
-b Fa(:)d(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(32)2025 4899 y Fp(OP)n(eND)n(AP)p Fs(.)6 b Fa(:)14
+(:)g(:)34 b Ft(17)150 5164 y Fs(pathcc)21 b Ff(:)13 b(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)46 b Ft(6)150 5252 y Fs(pathCC)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
+b Ft(6)150 5340 y(P)n(athScale)23 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)49
+b Ft(6)2025 299 y(P)n(atrice)26 b(Dumas)21 b Ff(:)13
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47
+b Ft(224)2025 388 y(P)n(atric)n(k)26 b(Kursa)n(w)n(e)9
+b Ff(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
+b Ft(224)2025 478 y(pattern)25 b(matc)n(hing)12 b Ff(:)h(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b
+Ft(20,)27 b(43,)g(169,)g(172)2025 568 y(P)n(a)n(yP)n(al)14
+b Ff(:)g(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)41 b Ft(223)2025 657 y Fn(p)r(c)n(k)p
+2148 657 V 33 w(map)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)45 b Ft(203)2025
+747 y Fn(p)r(c)n(k)p 2148 747 V 33 w(plc)27 b Ff(:)14
 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)33 b Fs(32)2025 4987 y(Op)r(enMP)13 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Fs(22,)26 b(23,)h(25)2025
-5075 y(op)r(eration)f(t)n(yp)r(es)19 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fs(84,)27 b(198,)g(207)2025 5163 y(op)r(erator)f(sp)r(eed)9
-b Fa(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Fs(9,)27
-b(16,)g(24,)f(25,)h(72,)g(156,)g(203)2025 5252 y(op)r(erators)14
-b Fa(:)g(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)41 b Fs(3)2025 5340 y(OptIPuter)9
-b Fa(:)j(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)50 b Ft(202)2025 836 y(p)r(eak)25 b(memory)h(usage)14
+b Ff(:)g(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)40 b Ft(22,)27 b(91)2025
+926 y(P)n(edro)f(Vicen)n(te)16 b Ff(:)c(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)43 b Ft(223)2025 1015 y(p)r(erformance)15
+b Ff(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)41
+b Ft(9,)27 b(16,)g(24,)f(25,)h(72,)g(168,)g(215)2025
+1105 y(P)n(erl)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)36 b Fs(213)p eop end
-%%Page: 265 271
-TeXDict begin 265 270 bop 150 -116 a FD(General)31 b(Index)2902
-b(265)150 299 y Fs(Orion)26 b(P)n(o)n(wla)n(wski)d Fa(:)13
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(212)150
-387 y Fr(ORO)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+(:)f(:)g(:)g(:)g(:)g(:)36 b Ft(15,)27 b(21,)g(171)2025
+1195 y(p)r(erm)n(ute)e(dimensions)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)46 b Ft(202)2025 1284 y(p)r(erm)n(ute\(\))15 b
+Ff(:)d(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)42 b Ft(125)2025 1374 y(P)n(eter)26 b(Campb)r(ell)6
+b Ff(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
+b Ft(224)2025 1463 y Fs(pgcc)7 b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fs(99,)27 b(209)150
-475 y(orphan)e(dimensions)6 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)34 b Ft(6)2025 1553 y Fs(pgCC)7 b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)34 b Ft(6)2025 1642 y Fq(PGI)22 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)33 b Fs(182)150 563 y Fp(OS)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)49 b Fs(6)150 651 y(output)25 b(\014le)17
-b Fa(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fs(20,)26 b(30)150 739 y Fm(output-path)17 b Fa(:)12
-b(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44
-b Fs(32)150 827 y(o)n(v)n(erview)7 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
-b Fs(24)150 916 y(o)n(v)n(erwriting)27 b(\014les)12 b
-Fa(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Fs(16,)26
-b(98)150 1170 y FB(P)150 1288 y Fs(pac)n(k\(\))9 b Fa(:)j(:)i(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)36 b Fs(119)150 1376 y Fr(pack\(x\))15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g
+(:)g(:)h(:)48 b Ft(6)2025 1732 y(philosoph)n(y)7 b Ff(:)12
+b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)33 b Ft(15)2025 1822 y(pip)r(es)14 b Ff(:)f(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fs(82)150 1464 y(pac)n(k)p 309 1464 24 4 v 33 w(b)n(yte\(\))21
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-49 b Fs(120)150 1552 y(pac)n(k)p 309 1552 V 33 w(in)n(t\(\))14
-b Fa(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)41 b Fs(120)150 1640 y(pac)n(k)p 309 1640 V 33
-w(short\(\))9 b Fa(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)35 b Fs(120)150 1728 y(pac)n(king)15 b Fa(:)e(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)42
-b Fs(34,)26 b(73,)h(82,)g(171,)g(190,)g(200)150 1816
-y(pac)n(king)f(map)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)48 b Fs(191)150 1904 y(pac)n(king)26
-b(p)r(olicy)11 b Fa(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)38 b Fs(190)150 1992 y(pap)r(ers)8 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)41
+b Ft(20)2025 1911 y(`)p Fs(plc_all)p Ft(')10 b Ff(:)15
+b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34
-b Fs(24)150 2080 y Fr(parallel)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b
-Fs(243)150 2169 y(parallelism)9 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(25,)27 b(213)150 2257
-y(parser)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fs(104)150 2345
-y(pasting)26 b(v)l(ariables)7 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)34 b Fs(17)150 2433 y Fr(pathcc)21
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(6)150 2521 y Fr(pathCC)21
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(6)150 2609 y(P)n(athScale)23
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)49 b Fs(6)150 2697 y(P)n(atrice)27 b(Dumas)20
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47
-b Fs(212)150 2785 y(P)n(atric)n(k)26 b(Kursa)n(w)n(e)9
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36
-b Fs(212)150 2873 y(pattern)25 b(matc)n(hing)12 b Fa(:)i(:)f(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b
-Fs(20,)27 b(43,)g(156,)g(160)150 2961 y(P)n(a)n(yP)n(al)14
-b Fa(:)g(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)41 b Fs(211)150 3050 y Fm(p)r(c)n(k)p
-273 3050 V 33 w(map)20 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Fs(191)150 3138
-y Fm(p)r(c)n(k)p 273 3138 V 33 w(plc)28 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50
-b Fs(190)150 3226 y(p)r(eak)25 b(memory)h(usage)14 b
-Fa(:)g(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(22,)26 b(81)150 3314
-y(P)n(edro)g(Vicen)n(te)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)42 b Fs(211)150 3402 y(p)r(erformance)15
-b Fa(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42
-b Fs(9,)26 b(16,)h(24,)f(25,)h(72,)g(156,)g(203)150 3490
-y(P)n(erl)9 b Fa(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)37 b Fs(15,)26 b(21,)h(159)150 3578 y(p)r(erm)n(ute)e
-(dimensions)20 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46
-b Fs(190)150 3666 y(p)r(erm)n(ute\(\))15 b Fa(:)e(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b
-Fs(113)150 3754 y(P)n(eter)26 b(Campb)r(ell)6 b Fa(:)14
-b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33
-b Fs(212)150 3842 y Fr(pgcc)7 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)34 b Fs(6)150 3930 y Fr(pgCC)7 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)37 b Ft(73)2025 2001 y(`)p Fs(plc_g2d)p Ft(')10
+b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)37 b Ft(73)2025 2090 y(`)p Fs(plc_g3d)p
+Ft(')10 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)34 b Fs(6)150 4019 y Fp(PGI)22 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(73)2025 2180 y(`)p Fs(plc_r1d)p
+Ft(')10 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(73)2025 2269 y(`)p Fs(plc_xpl)p
+Ft(')10 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(73)2025 2359 y(`)p Fs(plc_xst)p
+Ft(')10 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Ft(73)2025 2449 y(p)r(ortabilit)n(y)10
+b Ff(:)j(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)37 b Ft(6)2025 2538 y(p)r(ositional)27
+b(argumen)n(ts)6 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33
+b Ft(30)2025 2628 y Fq(POSIX)14 b Ff(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)48 b Fs(6)150 4107 y(philosoph)n(y)7 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)40 b Ft(27,)27
+b(44)2025 2717 y Fn(p)r(o)n(w)16 b Ff(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)33 b Fs(15)150 4195 y(pip)r(es)14 b Fa(:)f(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fs(20)150 4283 y(`)p Fr(plc_all)p Fs(')10 b Fa(:)16
-b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)37 b Fs(73)150 4371 y(`)p Fr(plc_g2d)p Fs(')10
-b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)37 b Fs(73)150 4459 y(`)p Fr(plc_g3d)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(73)150 4547 y(`)p Fr(plc_r1d)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(73)150 4635 y(`)p Fr(plc_xpl)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(73)150 4723 y(`)p Fr(plc_xst)p
-Fs(')10 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(73)150 4811 y(p)r(ortabilit)n(y)10
-b Fa(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)37 b Fs(6)150 4900 y(p)r(ositional)27
-b(argumen)n(ts)6 b Fa(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
-b Fs(30)150 4988 y Fp(POSIX)14 b Fa(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(27,)26
-b(44)150 5076 y Fm(p)r(o)n(w)16 b Fa(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
-b Fs(151)150 5164 y(p)r(o)n(w)n(er)16 b Fa(:)e(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43
-b Fs(151)150 5252 y(p)r(o)n(w)n(er)26 b(function)20 b
-Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(151)150 5340 y(`)p Fr(prd)p Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)47 b Fs(75)2025 299 y(precision)20 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Ft(163)2025 2807 y(p)r(o)n(w)n(er)16 b Ff(:)e(:)f(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)43
+b Ft(163)2025 2896 y(p)r(o)n(w)n(er)26 b(function)20
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46
+b Ft(163)2025 2986 y Fq(PPC)10 b Ff(:)j(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
+b Ft(79)2025 3076 y(`)p Fs(prd)p Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)47 b Ft(75)2025 3165 y(precision)20 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(153)2025 387 y(prepro)r(cessor)27 b(tok)n(ens)13
-b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+b Ft(165)2025 3255 y(prepro)r(cessor)27 b(tok)n(ens)13
+b Ff(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b
-Fs(8)2025 474 y(presen)n(tations)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(5)2025
-562 y(prin)n(t\(\))25 b Fr(ncap2)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fs(117)2025 650 y
-Fr(printf)20 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fs(6)2025
-738 y Fr(printf\(\))18 b Fa(:)d(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
-b Fs(159,)27 b(182,)g(187)2025 826 y(prin)n(ting)e(\014les)h(con)n(ten)
-n(ts)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fs(176)2025
-913 y(prin)n(ting)25 b(v)l(ariables)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)38 b Fs(176)2025 1001 y(Pro)r(cessor)11
-b Fa(:)k(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+Ft(8)2025 3344 y(presen)n(tations)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Ft(5)2025
+3434 y(prin)n(t\(\))25 b Fs(ncap2)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Ft(129)2025 3523
+y Fs(printf)20 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Ft(6)2025
+3613 y Fs(printf\(\))18 b Ff(:)d(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
+b Ft(171,)27 b(194,)g(199)2025 3703 y(prin)n(ting)e(\014les)h(con)n
+(ten)n(ts)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Ft(188)2025
+3792 y(prin)n(ting)25 b(v)l(ariables)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)38 b Ft(188)2025 3882 y(Pro)r(cessor)11
+b Ff(:)k(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)38
-b Fs(198,)27 b(200)2025 1089 y(Pro)r(cessor,)h Fp(CCM)21
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Ft(210,)27 b(212)2025 3971 y(Pro)r(cessor,)h Fq(CCM)21
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48
-b Fs(28)2025 1177 y(promotion)7 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)33 b Fs(90,)27 b(92,)g(152)2025 1265 y(prop)r(osals)9
-b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Ft(28)2025 4061 y(promotion)20 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)47 b Ft(100,)27 b(102,)g(164)2025 4150 y(prop)r(osals)9
+b Ff(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)36 b Fs(213)2025 1352 y(pseudon)n(ym)17 b
-Fa(:)12 b(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)h(:)36 b Ft(225)2025 4240 y(pseudon)n(ym)17 b
+Ff(:)12 b(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)44 b Fs(8)2025 1440 y(publications)20 b Fa(:)13
+g(:)g(:)h(:)44 b Ft(8)2025 4330 y(publications)20 b Ff(:)13
 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-47 b Fs(5)2025 1693 y FB(Q)2025 1810 y Fs(QLogic)17 b
-Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+47 b Ft(5)2025 4592 y FC(Q)2025 4712 y Ft(QLogic)17 b
+Ff(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)44 b Fs(6)2025 1898 y(Qt)7 b
-Fa(:)12 b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)44 b Ft(6)2025 4802 y(Qt)7 b
+Ff(:)12 b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b
-Fs(8)2025 1986 y(quadruple-precision)10 b Fa(:)i(:)h(:)g(:)h(:)f(:)g(:)
+Ft(8)2025 4892 y(quadruple-precision)10 b Ff(:)i(:)h(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)37 b Fs(153)2025 2073 y(quenc)n(h)15 b Fa(:)d(:)h(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42
-b Fs(182)2025 2161 y(Quic)n(k)25 b(Start)c Fa(:)13 b(:)g(:)g(:)h(:)f(:)
+(:)g(:)g(:)37 b Ft(165)2025 4981 y(quan)n(tization)17
+b Ff(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44
+b Ft(78,)27 b(79)2025 5071 y(quenc)n(h)15 b Ff(:)d(:)h(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42
+b Ft(194)2025 5160 y(Quic)n(k)25 b(Start)c Ff(:)13 b(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(215)2025
-2249 y(quotes)22 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(227)2025
+5250 y(quotes)22 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49
-b Fs(45,)27 b(150,)g(163,)g(196)2025 2502 y FB(R)2025
-2619 y Fs(`)p Fr(r1d)p Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47
-b Fs(73)2025 2707 y Fp(RA)n(G)19 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)
+b Ft(45,)27 b(162,)g(175,)g(208)p eop end
+%%Page: 278 284
+TeXDict begin 278 283 bop 150 -116 a FE(278)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(R)150 416 y Ft(`)p
+Fs(r1d)p Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46
-b Fs(170)2025 2795 y Fp(RAM)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b
-Fs(22,)27 b(81)2025 2882 y Fp(RAM)e Fs(disks)12 b Fa(:)h(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(16,)27
-b(81)2025 2970 y Fp(RAM)e Fs(\014les)14 b Fa(:)f(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b Fs(16,)27
-b(81)2025 3058 y Fp(RAM)e Fs(v)l(ariables)15 b Fa(:)e(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)41 b Fs(81,)27 b(121)2025 3146 y(ram)p
-2162 3146 V 34 w(delete\(\))7 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34 b Fs(122)2025 3234
-y(ram)p 2162 3234 V 34 w(write\(\))20 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)47 b Fs(122)2025
-3321 y(random)26 b(w)n(alk)20 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(73)150 504 y Fq(RA)n(G)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Fs(96)2025 3409
-y(rank)22 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)49 b Fs(106,)27 b(163,)h(164,)f
-(165,)g(206)2025 3497 y Fr(rcp)16 b Fa(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43
-b Fs(8,)26 b(30)2025 3585 y Fp(R)n(CS)11 b Fa(:)i(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)38 b Fs(102)2025 3672 y(`)p Fr(rd1)p Fs(')22 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)47 b Fs(75)2025 3760 y(re-dimension)21
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48
-b Fs(190)2025 3848 y(re-order)25 b(dimensions)8 b Fa(:)15
-b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(190)2025 3936
-y(record)26 b(aggregation)9 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)36 b Fs(170)2025 4024 y(record)26 b(app)r(end)14
-b Fa(:)e(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41
-b Fs(58)2025 4111 y(record)26 b(a)n(v)n(erage)10 b Fa(:)j(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(198)2025
-4199 y(record)26 b(concatenation)c Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)48
-b Fs(200)2025 4287 y(record)26 b(dimension)c Fa(:)13
-b(:)g(:)48 b Fs(17,)27 b(54,)f(78,)h(167,)g(170,)g(172,)g(178,)2178
-4374 y(179,)g(193,)h(197,)f(198,)g(200)2025 4462 y(record)f(v)l
-(ariable)10 b Fa(:)j(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36
-b Fs(54,)27 b(193)2025 4550 y(rectangular)f(grids)20
-b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fs(130)2025 4638 y(recursion)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b
-Fs(41)2025 4725 y(recursiv)n(e)21 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
+b Ft(182)150 592 y Fq(RAM)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Ft(22,)26
+b(91)150 680 y Fq(RAM)f Ft(disks)12 b Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Ft(16,)26 b(91)150
+768 y Fq(RAM)f Ft(\014les)14 b Ff(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48
-b Fs(41)2025 4813 y Fr(regex)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)41 b Ft(16,)26 b(91)150 856
+y Fq(RAM)f Ft(v)l(ariables)15 b Ff(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)41 b Ft(91,)27 b(134)150 944 y(ram)p 287 944 24 4
+v 34 w(delete\(\))7 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fs(44)2025 4901 y(regression)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)34 b Ft(134)150 1032 y(ram)p 287
+1032 V 34 w(write\(\))20 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)46 b Ft(134)150 1120 y(random)26
+b(w)n(alk)17 b Ff(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Fs(226)2025
-4989 y(regressions)27 b(arc)n(hiv)n(e)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)38 b Fs(14)2025 5077 y(regrid)17
-b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)44 b Ft(106)150 1208 y(rank)22 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)50
+b Ft(118,)27 b(175,)g(176,)g(177,)g(218)150 1296 y Fs(rcp)16
+b Ff(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)43 b Ft(8,)26 b(30)150 1384
+y Fq(R)n(CS)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)38 b Ft(112)150
+1472 y(`)p Fs(rd1)p Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(75)150 1560 y(re-dimension)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Ft(202)150 1647
+y(re-order)26 b(dimensions)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(236)2025 5164 y(regular)26
-b(expressions)13 b Fa(:)i(:)e(:)g(:)g(:)g(:)g(:)40 b
-Fs(20,)27 b(28,)g(43,)g(150,)g(156,)g(160)2025 5252 y
-Fr(remap)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(125)2025 5340
-y(Remik)25 b(Ziemlinski)10 b Fa(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)37 b Fs(212)p eop end
-%%Page: 266 272
-TeXDict begin 266 271 bop 150 -116 a FD(266)2582 b FC(NCO)30
-b FD(4.4.7)j(User)d(Guide)150 299 y Fs(remote)c(\014les)20
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46
-b Fs(8,)26 b(30)150 387 y(rename)g(groups)9 b Fa(:)k(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Fs(48)150
-475 y(renaming)26 b(attributes)9 b Fa(:)k(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)35 b Ft(202)150 1735 y(record)26 b(aggregation)9 b
+Ff(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Ft(182)150
+1823 y(record)26 b(app)r(end)14 b Ff(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Ft(58)150 1911 y(record)26
+b(a)n(v)n(erage)10 b Ff(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)36 b Ft(210)150 1999 y(record)26 b(concatenation)d
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Ft(212)150 2087
+y(record)26 b(dimension)c Ff(:)13 b(:)g(:)48 b Ft(17,)27
+b(54,)g(78,)f(179,)h(182,)h(184,)f(190,)304 2174 y(191,)g(205,)g(209,)g
+(210,)g(212)150 2262 y(record)f(v)l(ariable)10 b Ff(:)j(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)36 b Ft(54,)27 b(205)150 2350 y(rectangular)g
+(grids)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46
+b Ft(142)150 2438 y(recursion)17 b Ff(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)43 b
+Ft(41)150 2526 y(recursiv)n(e)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48
+b Ft(41)150 2614 y Fs(regex)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46
+b Ft(44)150 2702 y(regression)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46 b Ft(238)150
+2790 y(regressions)28 b(arc)n(hiv)n(e)11 b Ff(:)i(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)37 b Ft(14)150 2878 y(regrid)17 b
+Ff(:)d(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)44 b Ft(248)150 2966 y(regular)27
+b(expressions)13 b Ff(:)h(:)f(:)g(:)g(:)g(:)h(:)40 b
+Ft(20,)26 b(28,)h(43,)g(162,)g(169,)g(172)150 3054 y
+Fs(remap)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Ft(137)150 3142
+y(Remik)25 b(Ziemlinski)10 b Ff(:)k(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)37 b Ft(224)150 3230 y(remote)26 b(\014les)20 b Ff(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46
+b Ft(8,)26 b(30)150 3317 y(rename)g(groups)9 b Ff(:)k(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Ft(48)150
+3405 y(renaming)26 b(attributes)9 b Ff(:)k(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
-b Fs(202,)27 b(236)150 563 y(renaming)f(dimensions)6
-b Fa(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)33 b Fs(202,)27 b(236)150 651 y(renaming)f(groups)6
-b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Ft(214,)27 b(248)150 3493 y(renaming)f(dimensions)6
+b Ff(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)33 b Ft(214,)27 b(248)150 3581 y(renaming)f(groups)6
+b Ff(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
-b Fs(202)150 739 y(renaming)26 b(v)l(ariables)14 b Fa(:)g(:)f(:)g(:)h
+b Ft(214)150 3669 y(renaming)26 b(v)l(ariables)14 b Ff(:)g(:)f(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41
-b Fs(202,)27 b(226,)g(236)150 828 y(rep)r(orting)f(bugs)10
-b Fa(:)j(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+b Ft(214,)27 b(238,)g(248)150 3757 y(rep)r(orting)f(bugs)10
+b Ff(:)j(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
-b Fs(13)150 916 y(reshap)r(e)26 b(v)l(ariables)17 b Fa(:)d(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Fs(190)150 1004 y Fr(restrict)14
-b Fa(:)h(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)41 b Fs(7)150 1092 y(rev)n(erse)26
-b(data)15 b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)42 b Fs(196)150 1180 y(rev)n(erse)26 b(dimensions)17
-b Fa(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)44 b Fs(190,)27 b(195,)g(196)150 1268 y(rev)n(erse\(\))21
-b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)48 b Fs(113)150 1356 y(`)p Fr(rew)p Fs(')22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(75)150 1444 y(Ric)n(h)25
-b(Signell)18 b Fa(:)c(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)45 b Fs(212)150 1532 y Fm(rin)n(t)21 b Fa(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)47 b Fs(151)150 1621 y Fr(rms)8
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fs(84)150
-1709 y Fr(rmssdn)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fs(84)150
-1797 y(rmssdn\(\))17 b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fs(119)150 1885
-y(ro)r(ot-mean-square)13 b Fa(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Ft(13)150 3845 y(reshap)r(e)26 b(v)l(ariables)17 b
+Ff(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Ft(202)150
+3933 y Fs(restrict)14 b Ff(:)h(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)39 b Fs(84)150 1973 y(Rorik)25 b(P)n(eterson)18
-b Fa(:)c(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Ft(7)150
+4021 y(rev)n(erse)26 b(data)15 b Ff(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Ft(208)150 4109 y(rev)n(erse)26
+b(dimensions)17 b Ff(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)44 b Ft(202,)27 b(207,)g(208)150
+4197 y(rev)n(erse\(\))21 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Ft(125)150
+4285 y(`)p Fs(rew)p Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
+b Ft(75)150 4373 y(Ric)n(h)25 b(Signell)18 b Ff(:)c(:)f(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Ft(224)150
+4461 y Fn(rin)n(t)21 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)47
+b Ft(163)150 4549 y Fs(rint\(\))17 b Ff(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
+b Ft(81)150 4636 y Fs(rms)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
+b Ft(94)150 4724 y Fs(rmssdn)17 b Ff(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
+b Ft(94)150 4812 y(rmssdn\(\))17 b Ff(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Ft(131)150
+4900 y(ro)r(ot-mean-square)13 b Ff(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)39 b Ft(94)150 4988 y(Rorik)25 b(P)n(eterson)18
+b Ff(:)c(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)45
-b Fs(211)150 2061 y Fm(round)18 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(223)150 5076 y Fn(round)18 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fs(151)150 2149 y(rounding)19 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46 b
-Fs(96)150 2237 y(rounding)25 b(functions)e Fa(:)14 b(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)49 b Fs(151)150 2325 y Fp(RPM)18 b Fa(:)13
-b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(12)150 2414 y(running)25
-b(a)n(v)n(erage)18 b Fa(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-45 b Fs(198)150 2502 y(Russ)25 b(Rew)e Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)49 b Fs(211,)27 b(212)150
-2756 y FB(S)150 2874 y Fs(safeguards)16 b Fa(:)f(:)e(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42 b Fs(15,)27 b(202)150
-2962 y Fr(scale_factor)15 b Fa(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fs(82,)27 b(171,)g(190,)g(200)
-150 3050 y Fm(scale)p 312 3050 24 4 v 35 w(format)13
-b Fa(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)38 b Fs(24)150 3138 y(scaling)9 b Fa(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g
+b Ft(163)150 5164 y(rounding)7 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Ft(78,)27 b(106)150
+5252 y(rounding)e(functions)e Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+49 b Ft(163)150 5340 y Fq(RPM)18 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
+b Ft(12)2025 299 y(running)25 b(a)n(v)n(erage)18 b Ff(:)c(:)f(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Ft(210)2025 387
+y(Russ)25 b(Rew)e Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(24,)27
-b(175)150 3226 y(Scien)n(ti\014c)e(Data)h(Op)r(erators)13
-b Fa(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)40 b Fs(213)150 3314 y(`)p Fr(scl)p Fs(')22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(75)150 3402 y(Scott)26
-b(Capps)13 b Fa(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)40 b Fs(212)150 3491 y Fr(scp)16 b Fa(:)e(:)f(:)g(:)g(:)h(:)f
+h(:)49 b Ft(223,)27 b(224)2025 641 y FC(S)2025 759 y
+Ft(safeguards)16 b Ff(:)f(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)43 b Ft(15,)27 b(214)2025 847 y Fs(scale_factor)15
+b Ff(:)g(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)42 b Ft(92,)27 b(183,)g(202,)g(212)2025 935 y
+Fn(scale)p 2187 935 V 35 w(format)13 b Ff(:)h(:)f(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Ft(24)2025
+1024 y(scaling)9 b Ff(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Ft(24,)27 b(187)2025
+1112 y(Scien)n(ti\014c)e(Data)h(Op)r(erators)13 b Ff(:)h(:)f(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
+b Ft(225)2025 1200 y(`)p Fs(scl)p Ft(')22 b Ff(:)13 b(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)47 b Ft(75)2025 1288 y(Scott)25 b(Capps)13 b Ff(:)h(:)f(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b
+Ft(224)2025 1376 y Fs(scp)16 b Ff(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43
+b Ft(8,)26 b(30)2025 1464 y(script)g(\014le)11 b Ff(:)i(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
+b Ft(116)2025 1552 y Fq(SDO)7 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34
+b Ft(225)2025 1640 y(seasonal)27 b(a)n(v)n(erage)12 b
+Ff(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
+b Ft(227)2025 1728 y(securit)n(y)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48
+b Ft(89)2025 1816 y Fq(SEI)r(I)r(I)15 b Ff(:)f(:)f(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42
+b Ft(225)2025 1905 y(semi-colon)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)43
-b Fs(8,)26 b(30)150 3579 y(script)g(\014le)11 b Fa(:)i(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36 b Ft(117)2025
+1993 y(separator)11 b Ff(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Ft(195)2025 2081
+y(serv)n(er)15 b Ff(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)37
-b Fs(104)150 3667 y Fp(SDO)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fs(213)150 3755 y(seasonal)28 b(a)n(v)n(erage)12 b
-Fa(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
-b Fs(215)150 3843 y(securit)n(y)21 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
-b Fs(79)150 3931 y Fp(SEI)r(I)r(I)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(213)150 4019 y(semi-colon)9 b Fa(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fs(105)150
-4107 y(separator)11 b Fa(:)j(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Fs(183)150 4195 y(serv)n(er)15
-b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(21,)27 b(32,)f(35)150 4284 y(Serv)n(er-Side)e(Distributed)i(Data)g
-(Reduction)f(&)304 4371 y(Analysis)17 b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)42 b Ft(21,)26 b(32,)h(35)2025 2169 y(Serv)n(er-Side)d
+(Distributed)h(Data)h(Reduction)f(&)2178 2256 y(Analysis)17
+b Ff(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
+b Ft(225)2025 2344 y(serv)n(er-side)25 b(pro)r(cessing)17
+b Ff(:)e(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)44 b Ft(33,)27 b(225)2025 2432 y Fs(set_miss\(\))d
+Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Fs(213)150 4459
-y(serv)n(er-side)26 b(pro)r(cessing)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44
-b Fs(33,)27 b(213)150 4547 y Fr(set_miss\(\))d Fa(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(118)150 4635 y Fr(sftp)14 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fs(8,)26 b(30)150 4723 y Fp(SGI)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h
+49 b Ft(130)2025 2520 y Fs(sftp)14 b Ff(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)41
+b Ft(8,)26 b(30)2025 2609 y Fq(SGI)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)36 b Ft(6)2025 2697 y(Sh)25 b(shell)20 b
+Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)46 b Ft(196)2025 2785 y(shared)26 b(memory)f(mac)n
+(hines)20 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Ft(22)2025 2873
+y(shared)26 b(memory)f(parallelism)7 b Ff(:)16 b(:)d(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34
+b Ft(25)2025 2961 y(shell)17 b Ff(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Ft(20,)27
+b(45,)g(67,)g(162,)g(175,)g(196)2025 3049 y Fn(signedness)14
+b Ff(:)g(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)36 b Fs(6)150 4811 y(Sh)25 b(shell)20 b Fa(:)13
-b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)46 b Fs(184)150 4899 y(shared)26 b(memory)g(mac)n(hines)19
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)45 b Fs(22)150 4988 y(shared)26
-b(memory)g(parallelism)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(25)150
-5076 y(shell)17 b Fa(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Fs(20,)26 b(45,)h(67,)g(150,)g
-(163,)g(184)150 5164 y Fm(signedness)14 b Fa(:)g(:)f(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37
-b Fs(24)150 5252 y Fm(sin)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44
-b Fs(151)150 5340 y(sine)26 b(function)21 b Fa(:)13 b(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fs(151)2025
-299 y(single-precision)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)42 b Fs(153)2025 387 y Fm(sinh)13 b Fa(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)40 b Fs(151)2025 475 y(size\(\))9 b Fa(:)k(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36
-b Fs(120)2025 563 y Fp(SLD)26 b Fs(\(Sw)n(ath-lik)n(e)f(Data\))8
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(123)2025 651 y
-Fp(SMP)8 b Fa(:)k(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)38 b Ft(24)2025 3137 y(signi\014cand)15 b
+Ff(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)41
+b Ft(80,)27 b(81)2025 3225 y Fn(sin)17 b Ff(:)c(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)44 b Ft(163)2025 3313 y(sine)26 b(function)20 b Ff(:)14
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)47
+b Ft(163)2025 3402 y(single-precision)15 b Ff(:)f(:)g(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(25)2025
-739 y Fr(sort)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fs(125)2025
-827 y(sort)26 b(alphab)r(etically)13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40
-b Fs(177,)27 b(186)2025 916 y(source)f(co)r(de)12 b Fa(:)h(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)39
-b Fs(5)2025 1004 y(spatial)27 b(distribution)17 b Fa(:)c(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)44 b Fs(223)2025 1092 y(sp)r(ecial)27
-b(attributes)14 b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41
-b Fs(178)2025 1180 y(sp)r(ecial)27 b(c)n(haracters)8
-b Fa(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fs(159)2025 1268 y(sp)r(eed)16 b Fa(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)43 b Fs(9,)26 b(16,)h(22,)g(24,)f(25,)h(72,)
-g(156,)g(203)2025 1356 y Fr(sqravg)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Ft(165)2025 3490 y Fn(sinh)13
+b Ff(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b Ft(163)2025 3578
+y(size\(\))9 b Ff(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36 b Ft(132)2025
+3666 y Fq(SLD)26 b Ft(\(Sw)n(ath-lik)n(e)f(Data\))8 b
+Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Ft(135)2025 3754
+y Fq(SMP)8 b Ff(:)k(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fs(84)2025 1444 y(sqra)n(vg\(\))12 b Fa(:)h(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Ft(25)2025
+3842 y Fs(sort)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b
+Ft(137)2025 3930 y(sort)26 b(alphab)r(etically)13 b Ff(:)h(:)f(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)40 b Ft(189,)27 b(198)2025 4018 y(source)f(co)r(de)12
+b Ff(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)39 b Ft(5)2025 4106 y(spatial)27 b(distribution)17
+b Ff(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Ft(235)2025
+4195 y(sp)r(ecial)27 b(attributes)14 b Ff(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)41 b Ft(190)2025 4283 y(sp)r(ecial)27
+b(c)n(haracters)8 b Ff(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+35 b Ft(171)2025 4371 y(sp)r(eed)16 b Ff(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)43 b Ft(9,)26 b(16,)h(22,)g(24,)f(25,)h
+(72,)g(168,)g(215)2025 4459 y Fs(sqravg)17 b Ff(:)d(:)g(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
+b Ft(94)2025 4547 y(sqra)n(vg\(\))12 b Ff(:)h(:)g(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fs(119)2025 1532 y Fr(sqrt)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Ft(131)2025 4635 y Fs(sqrt)23 b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
-b Fs(84)2025 1620 y Fm(sqrt)17 b Fa(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g
+b Ft(94)2025 4723 y Fn(sqrt)17 b Ff(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42
-b Fs(151)2025 1708 y(square)25 b(ro)r(ot)i(function)14
-b Fa(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41 b Fs(151)2025
-1796 y Fp(SSDDRA)21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Ft(163)2025 4811 y(square)25 b(ro)r(ot)i(function)14
+b Ff(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41 b Ft(163)2025
+4899 y Fq(SSDDRA)21 b Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(213)2025 1885
-y Fp(SSH)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Ft(225)2025 4988
+y Fq(SSH)9 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36 b Fs(8,)26
-b(35)2025 1973 y(sshort\(\))19 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36 b Ft(8,)26
+b(35)2025 5076 y(sshort\(\))19 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b
-Fs(121)2025 2061 y(standard)25 b(deviation)18 b Fa(:)c(:)f(:)g(:)g(:)h
+Ft(133)2025 5164 y(standard)25 b(deviation)18 b Ff(:)c(:)f(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fs(84,)27 b(88,)g(226)2025 2149 y(standard)e(input)c
-Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)48
-b Fs(20,)26 b(168,)i(171,)f(198,)g(200)2025 2237 y Fr(standard_name)16
-b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Ft(94,)27 b(98,)g(238)2025 5252 y(standard)e(input)c
+Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)48
+b Ft(20,)26 b(180,)i(183,)f(210,)g(212)2025 5340 y Fs(standard_name)16
+b Ff(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fs(64)2025 2325 y Fr(stat\(\))27 b(system)g(call)17
-b Fa(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Fs(80)2025
-2413 y(statemen)n(t)18 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(105)2025 2501
-y(static)26 b(linking)21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(9)2025 2589 y
-Fr(stdin)9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(20,)27 b(99,)f(168,)i(171,)f(198,)g(200)
-2025 2677 y(Stev)n(e)e(Emmerson)e Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)50 b Fs(211)2025 2766 y(stride)9 b Fa(:)k(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(56,)26 b(57,)h(61,)g(67,)f(198,)i
-(199,)f(200,)g(201)2025 2854 y(strings)22 b Fa(:)13 b(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
-b Fs(159)2025 2942 y(Stu)25 b(Muller)c Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(212)2025
-3030 y(stub)11 b Fa(:)h(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)37 b
-Fs(32)2025 3118 y(sub-cycle)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Ft(64)p eop end
+%%Page: 279 285
+TeXDict begin 279 284 bop 150 -116 a FE(General)31 b(Index)2902
+b(279)150 299 y Fs(stat\(\))27 b(system)g(call)17 b Ff(:)d(:)f(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fs(59)2025
-3206 y(sub)r(cycle)11 b Fa(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)37 b Fs(59)2025
-3294 y(subsetting)17 b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fs(40,)27 b(45,)g(101,)g(186,)g
-(188)2025 3382 y Fr(subtract)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(162)2025
-3470 y(subtracting)26 b(data)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)36 b Fs(162)2025 3558 y(subtraction)15 b
-Fa(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42
-b Fs(151,)27 b(162)2025 3646 y(summary)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)43
-b Fs(3)2025 3735 y(Sun)20 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fs(6)2025 3823 y(sw)n(ap)26 b(space)14 b Fa(:)g(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)44 b Ft(90)150 387 y(statemen)n(t)18
+b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)45 b Ft(117)150 474 y(static)26 b(linking)21 b
+Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)41 b Fs(21,)26 b(22,)h(81)2025 3911
-y(Sw)n(ath-lik)n(e)e(Data)h(\()p Fp(SLD)p Fs(\))8 b Fa(:)13
-b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(123)2025 3999 y(switc)n(hes)14
-b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)40 b Fs(27)2025 4087 y(sym)n(b)r(olic)26
-b(links)6 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)33 b Fs(8,)26 b(18,)h(21,)g(163,)g(191)2025
-4175 y(sync)n(hronous)e(\014le)h(access)10 b Fa(:)k(:)f(:)h(:)f(:)g(:)g
+f(:)47 b Ft(9)150 562 y Fs(stdin)7 b Ff(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34 b Ft(20,)27
+b(109,)g(180,)g(183,)g(210,)g(212)150 650 y(Stev)n(e)e(Emmerson)f
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)50
+b Ft(223)150 737 y(stride)9 b Ff(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)36 b Ft(56,)27 b(57,)f(61,)h(67,)g(210,)g(211,)g(212,)g(213)150
+825 y(strings)22 b Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Ft(171)150
+913 y(Stu)25 b(Muller)c Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Ft(224)150 1001 y(stub)11
+b Ff(:)h(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)37 b Ft(32)150 1088
+y(sub-cycle)16 b Ff(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)42 b Ft(59)150 1176 y(sub)r(cycle)11
+b Ff(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)37 b Ft(59)150 1264 y(subsetting)17
+b Ff(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)43 b Ft(40,)27 b(45,)g(111,)g(198,)g(200)150
+1352 y Fs(subtract)10 b Ff(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)37 b Fs(30)2025 4263 y(synon)n(ym)21 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)50
-b Fs(8)2025 4351 y(syn)n(tax)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50
-b Fs(105)2025 4439 y(System)25 b(calls)14 b Fa(:)g(:)f(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fs(80)2025
-4694 y FB(T)2025 4811 y Fs(T)-6 b(ak)n(eshi)26 b(Enomoto)11
-b Fa(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b
-Fs(212)2025 4900 y Fm(tan)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
-b Fs(151)2025 4988 y Fm(tanh)21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Ft(174)150 1439
+y(subtracting)26 b(data)9 b Ff(:)k(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(151)2025 5076 y(temp)r(orary)26 b(\014les)9 b Fa(:)k(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Fs(15,)27 b(82)2025
-5164 y(temp)r(orary)f(output)e(\014les)6 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33 b Fs(15,)27
-b(82,)g(202)2025 5252 y(T)2067 5268 y(E)2110 5252 y(Xinfo)20
-b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)35 b Ft(174)150 1527 y(subtraction)15 b Ff(:)e(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Ft(163,)27 b(174)150
+1615 y(summary)16 b Ff(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Ft(3)150 1702
+y(Sun)21 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
+b Ft(6)150 1790 y(sw)n(ap)26 b(space)14 b Ff(:)g(:)f(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)41 b Ft(21,)27 b(22,)f(91)150 1878
+y(Sw)n(ath-lik)n(e)f(Data)h(\()p Fq(SLD)p Ft(\))8 b Ff(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)35 b Ft(135)150 1966 y(switc)n(hes)14
+b Ff(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)40 b Ft(27)150 2053 y(sym)n(b)r(olic)26
+b(links)6 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)33 b Ft(8,)26 b(18,)h(21,)g(175,)g(203)150
+2141 y(sync)n(hronous)e(\014le)h(access)10 b Ff(:)15
+b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Ft(30)150 2229 y(synon)n(ym)22
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)49 b Ft(8)150 2316 y(syn)n(tax)22
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)49 b Ft(117)150 2404 y(System)25
+b(calls)14 b Ff(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(5)2025 5340 y Fm(thr)p
-2133 5340 V 33 w(n)n(br)13 b Fa(:)f(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34 b
-Fs(26)p eop end
-%%Page: 267 273
-TeXDict begin 267 272 bop 150 -116 a FD(General)31 b(Index)2902
-b(267)150 299 y Fs(threads)6 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+h(:)f(:)g(:)40 b Ft(90)150 2656 y FC(T)150 2773 y Ft(T)-6
+b(ak)n(eshi)26 b(Enomoto)11 b Ff(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)38 b Ft(224)150 2861 y Fn(tan)9 b Ff(:)k(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)36 b Ft(163)150 2949 y Fn(tanh)21 b Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48
+b Ft(163)150 3037 y(temp)r(orary)26 b(\014les)9 b Ff(:)k(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)36 b Ft(15,)26 b(92)150 3124
+y(temp)r(orary)g(output)f(\014les)6 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Ft(15,)26
+b(92,)h(214)150 3212 y(T)192 3228 y(E)235 3212 y(Xinfo)20
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)47 b Ft(5)150 3300 y Fn(thr)p
+258 3300 24 4 v 33 w(n)n(br)13 b Ff(:)f(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34
+b Ft(26)150 3388 y(threads)6 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fs(22,)27 b(23,)f(25)150
-387 y Fr(time)9 b Fa(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(67,)27 b(102)150
-476 y(time-a)n(v)n(eraging)10 b Fa(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)36
-b Fs(151,)28 b(215,)f(216,)g(223,)g(226,)g(233)150 564
-y Fr(time_offset)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Ft(22,)27 b(23,)f(25)150
+3475 y Fs(time)9 b Ff(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Ft(67,)27 b(112)150
+3563 y(time-a)n(v)n(eraging)10 b Ff(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)36
+b Ft(163,)28 b(227,)f(228,)g(235,)g(238,)g(245)150 3651
+y Fs(time_offset)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)46 b Fs(102)150 652 y(timestamp)9 b Fa(:)k(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fs(98)150 741 y(total)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48
-b Fs(84)150 829 y(transp)r(ose)14 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)40 b Fs(54,)27 b(193)150
-917 y Fp(TREFHT)18 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)45 b Fs(95)150 1006
-y Fm(trunc)11 b Fa(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fs(151)150
-1094 y Fr(trunc\(\))15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(91)150
-1182 y(truncate)25 b(\(groups\))11 b Fa(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)37 b Fs(46)150 1271 y(truncation)26 b(function)12
-b Fa(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Fs(151)150
-1359 y(truth)25 b(condition)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+h(:)f(:)g(:)g(:)46 b Ft(112)150 3738 y(timestamp)7 b
+Ff(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)33 b Ft(108)150 3826 y(total)23 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)48 b Ft(94)150 3914 y(transp)r(ose)14 b Ff(:)g(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)40 b Ft(54,)27 b(205)150
+4002 y Fq(TREFHT)16 b Ff(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)43 b Ft(105)150 4089 y
+Fn(trunc)11 b Ff(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Ft(163)150
+4177 y Fs(trunc\(\))12 b Ff(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Ft(101)150 4265
+y(truncate)25 b(\(groups\))11 b Ff(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)37 b Ft(46)150 4352 y(truncation)26 b(function)12
+b Ff(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Ft(163)150
+4440 y(truth)25 b(condition)17 b Ff(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(207,)27 b(210)150 1447 y Fr(ttl)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Ft(219,)27 b(222)150 4528 y Fs(ttl)8 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)34 b Fs(84)150 1536 y(ttl\(\))11 b Fa(:)i(:)g(:)g(:)g(:)h(:)
+(:)g(:)g(:)34 b Ft(94)150 4616 y(ttl\(\))11 b Ff(:)i(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)38 b Fs(119)150 1624 y(t)n(yp)r(e)25 b(con)n(v)n(ersion)11
-b Fa(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37
-b Fs(89)150 1712 y(t)n(yp)r(e\(\))12 b Fa(:)g(:)h(:)g(:)h(:)f(:)g(:)g
+g(:)38 b Ft(131)150 4703 y(t)n(yp)r(e)25 b(con)n(v)n(ersion)9
+b Ff(:)k(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
+b Ft(100)150 4791 y(t)n(yp)r(e\(\))12 b Ff(:)g(:)h(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fs(120)150 1972 y FB(U)150 2090 y Fs(ub)n(yte\(\))9
-b Fa(:)j(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+b Ft(132)150 5047 y FC(U)150 5165 y Ft(ub)n(yte\(\))9
+b Ff(:)j(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)36 b Fs(121)150 2179 y(UDUnits)18
-b Fa(:)12 b(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(6,)27 b(66,)f(99)150 2267 y(uin)n(t\(\))18 b Fa(:)13
+(:)g(:)g(:)g(:)g(:)36 b Ft(133)150 5252 y(UDUnits)16
+b Ff(:)c(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)42
+b Ft(6,)26 b(66,)h(110)150 5340 y(uin)n(t\(\))18 b Ff(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)45 b Fs(121)150 2355 y Fr(ulimit)17 b
-Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)43 b Fs(21)150 2444 y(unary)25 b(op)r(erations)e
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48
-b Fs(23)150 2532 y(underlying)25 b(\014le)h(format)9
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(37)150
-2620 y Fp(UNICOS)14 b Fa(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fs(21)150
-2709 y(Unidata)14 b Fa(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)41 b Fs(6,)27 b(10,)f(66)150 2797 y(union)13
-b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)40 b Fs(40,)26 b(42)150 2885 y(union)f(of)i(\014les)c
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-49 b Fs(17)150 2974 y(unit64\(\))13 b Fa(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40
-b Fs(121)150 3062 y Fr(units)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)44 b Fs(66,)27 b(67,)g(160,)g(175)150 3150 y Fp(UNIX)9
-b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(6,)27 b(8,)f(20,)h(27,)f(28,)h
-(184)150 3239 y(unlimited)f(dimension)13 b Fa(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)40 b Fs(170)150 3327 y Fr(unmap)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)45 b Ft(133)2025 299 y Fs(ulimit)17 b
+Ff(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(125)150 3415 y(unpac)n(k\(\))17 b Fa(:)12 b(:)h(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44
-b Fs(120)150 3504 y Fr(unpack\(x\))9 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36
-b Fs(82)150 3592 y(unpac)n(king)17 b Fa(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fs(34,)27
-b(82,)g(171,)g(190,)g(200)150 3680 y Fp(URL)9 b Fa(:)k(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)g(:)g(:)44 b Ft(21)2025 387 y(unary)25 b(op)r(erations)d
+Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48
+b Ft(23)2025 475 y(underlying)25 b(\014le)h(format)9
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Ft(37)2025
+564 y Fq(UNICOS)14 b Ff(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Ft(21)2025 652
+y(Unidata)14 b Ff(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)41 b Ft(6,)26 b(10,)h(66)2025 740 y(union)13
+b Ff(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)39 b Ft(40,)27 b(42)2025 828 y(union)e(of)i(\014les)c
+Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)35 b Fs(30)150 3769 y Fm(User)26 b(Guide)18
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)41 b Fs(5)150 3857 y(ushort\(\))13 b Fa(:)g(:)g(:)g(:)g(:)g
+49 b Ft(17)2025 917 y(unit64\(\))13 b Ff(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)40
+b Ft(133)2025 1005 y Fs(units)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)44 b Ft(66,)27 b(67,)g(172,)g(187)2025 1093 y
+Fq(UNIX)9 b Ff(:)k(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Ft(6,)26
+b(8,)h(20,)f(27,)h(28,)g(196)2025 1181 y(unlimited)e(dimension)13
+b Ff(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b Ft(182)2025
+1270 y Fs(unmap)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(137)2025
+1358 y(unpac)n(k\(\))17 b Ff(:)12 b(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(132)2025
+1446 y Fs(unpack\(x\))9 b Ff(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(92)2025 1534
+y(unpac)n(king)17 b Ff(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)44 b Ft(34,)27 b(92,)g(183,)g(202,)g(212)
+2025 1623 y Fq(URL)9 b Ff(:)k(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40
-b Fs(121)2025 299 y FB(V)2025 417 y Fs(v)l(alue)25 b(list)16
-b Fa(:)e(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36
+b Ft(30)2025 1711 y Fn(User)25 b(Guide)18 b Ff(:)c(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
+b Ft(5)2025 1799 y(ushort\(\))13 b Ff(:)f(:)i(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40 b
+Ft(133)2025 2058 y FC(V)2025 2177 y Ft(v)l(alue)25 b(list)16
+b Ff(:)e(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)43 b Fs(113)2025 506 y(v)l(ariable)26 b(names)21
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)43 b Ft(126)2025 2265 y(v)l(ariable)26 b(names)21
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47
-b Fs(202)2025 594 y(v)l(ariables,)27 b(app)r(ending)11
-b Fa(:)h(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Fs(226)2025
-683 y(v)l(ariance)14 b Fa(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Ft(214)2025 2353 y(v)l(ariables,)27 b(app)r(ending)11
+b Ff(:)h(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Ft(238)2025
+2441 y(v)l(ariance)14 b Ff(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41 b Fs(84)2025
-771 y(v)n(ersion)15 b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(102)2025
-859 y(Vista)26 b(\(Microsoft)i(op)r(erating)e(system\))9
-b Fa(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
-b Fs(7)2025 1119 y FB(W)2025 1238 y Fs(W)-6 b(eather)25
-b(and)g(Researc)n(h)h(F)-6 b(orecast)27 b(\()p Fp(WRF)p
-Fs(\))f(Mo)r(del)2200 1325 y Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41 b Ft(94)2025
+2530 y(v)n(ersion)15 b Ff(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Ft(112)2025
+2618 y(Vista)26 b(\(Microsoft)i(op)r(erating)e(system\))9
+b Ff(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
+b Ft(7)2025 2877 y FC(W)2025 2995 y Ft(W)-6 b(eather)25
+b(and)g(Researc)n(h)h(F)-6 b(orecast)27 b(\()p Fq(WRF)p
+Ft(\))f(Mo)r(del)2200 3082 y Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(123)2025 1413 y(w)n(eigh)n(ted)26 b(a)n(v)n(erage)d
-Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)50 b Fs(206,)27 b(233)2025
-1502 y(W)-6 b(enshan)25 b(W)-6 b(ang)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)g
+b Ft(135)2025 3171 y(w)n(eigh)n(ted)26 b(a)n(v)n(erage)d
+Ff(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)50 b Ft(218,)27 b(245)2025
+3259 y(W)-6 b(enshan)25 b(W)-6 b(ang)9 b Ff(:)k(:)g(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)36 b Fs(213)2025 1590 y Fr(wget)23
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)36 b Ft(225)2025 3347 y Fs(wget)23
+b Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fs(30)2025 1679
-y(where\(\))22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Ft(30)2025 3435
+y(where\(\))22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(122)2025 1767
-y(while\(\))15 b Fa(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(134)2025 3524
+y(while\(\))15 b Ff(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42 b Fs(124)2025 1856
-y(whitespace)22 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)42 b Ft(136)2025 3612
+y(whitespace)22 b Ff(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)48 b Fs(67)2025 1944 y(wildcards)9
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(28,)27 b(43,)g(156,)g(160)
-2025 2032 y Fr(WIN32)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)48 b Ft(67)2025 3700 y(wildcards)9
+b Ff(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Ft(28,)27 b(43,)g(169,)g(172)
+2025 3789 y Fs(WIN32)c Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fs(8)2025 2121 y(Windo)n(ws)9 b Fa(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+b Ft(8)2025 3877 y(Windo)n(ws)9 b Ff(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(6,)27
-b(7)2025 2209 y(wrapp)r(ed)f(co)r(ordinates)6 b Fa(:)15
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Ft(6,)27
+b(7)2025 3965 y(wrapp)r(ed)f(co)r(ordinates)6 b Ff(:)15
 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)33
-b Fs(56,)27 b(63,)g(130,)g(189)2025 2298 y(wrapp)r(ed)f(\014lenames)12
-b Fa(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+b Ft(56,)27 b(63,)g(143,)g(201)2025 4053 y(wrapp)r(ed)f(\014lenames)12
+b Ff(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b
-Fs(29)2025 2386 y Fp(WRF)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+Ft(29)2025 4142 y Fq(WRF)13 b Ff(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fs(131)2025 2474 y Fp(WRF)26 b Fs(\(W)-6 b(eather)25
+b Ft(144)2025 4230 y Fq(WRF)26 b Ft(\(W)-6 b(eather)25
 b(and)g(Researc)n(h)h(F)-6 b(orecast)27 b(Mo)r(del\))2200
-2562 y Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+4317 y Ff(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(123)2025 2650
-y Fp(WWW)27 b Fs(do)r(cumen)n(tation)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Ft(135)2025 4405
+y Fq(WWW)27 b Ft(do)r(cumen)n(tation)22 b Ff(:)13 b(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)49 b Fs(5)2025 2889 y FB(X)2025 3008 y Fr(xargs)9
-b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)49 b Ft(5)2025 4644 y FC(X)2025 4762 y Fs(xargs)9
+b Ff(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)35 b Fs(20,)27 b(30)2025 3096 y Fr(xlc)10
-b Fa(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)35 b Ft(20,)27 b(30)2025 4850 y Fs(xlc)10
+b Ff(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fs(6)2025
-3185 y Fr(xlC)10 b Fa(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Ft(6)2025
+4938 y Fs(xlC)10 b Ff(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fs(6)2025 3273 y Fp(XML)17 b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Ft(6)2025 5027 y Fq(XML)17 b Ff(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fs(183)2025 3361 y Fp(XP)25 b Fs(\(Microsoft)j(op)r(erating)f
-(system\))13 b Fa(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)40 b Fs(7)2025 3450 y(`)p Fr(xpl)p Fs(')22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Ft(195)2025 5115 y Fq(XP)25 b Ft(\(Microsoft)j(op)r(erating)f
+(system\))13 b Ff(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)40 b Ft(7)2025 5203 y(`)p Fs(xpl)p Ft(')22
+b Ff(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fs(73)2025 3538
-y(`)p Fr(xst)p Fs(')10 b Fa(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Ft(73)2025 5291
+y(`)p Fs(xst)p Ft(')10 b Ff(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(73,)27
-b(75)2025 3794 y FB(Y)2025 3912 y Fs(Y)-6 b(oric)n(k)17
-b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)44 b Fs(15,)27 b(24)p eop end
-%%Page: 268 274
-TeXDict begin 268 273 bop eop end
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Ft(73,)27
+b(75)p eop end
+%%Page: 280 286
+TeXDict begin 280 285 bop 150 -116 a FE(280)2582 b FD(NCO)30
+b FE(4.4.8)j(User)d(Guide)150 299 y FC(Y)150 419 y Ft(Y)-6
+b(oric)n(k)17 b Ff(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)44 b Ft(15,)26 b(24)2025 299
+y FC(Z)2025 496 y Fs(zlib)d Ff(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
+b Ft(78)p eop end
 %%Trailer
 
 userdict /end-hook known{end-hook}if
diff --git a/doc/nco.texi b/doc/nco.texi
index d11b6be..6260429 100644
--- a/doc/nco.texi
+++ b/doc/nco.texi
@@ -7,13 +7,13 @@
 
 @ignore
 
-$Header: /cvsroot/nco/nco/doc/nco.texi,v 1.1049 2014/11/26 21:11:28 zender Exp $
+$Header: /cvsroot/nco/nco/doc/nco.texi,v 1.1088 2015/02/16 23:36:50 zender Exp $
 
 Purpose: TeXInfo documentation for netCDF Operators (NCO)
 
 URL: http://nco.sf.net/nco.texi
 
-Copyright (C) 1995--2014 Charlie Zender
+Copyright (C) 1995--2015 Charlie Zender
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3
 or any later version published by the Free Software Foundation;
@@ -31,7 +31,7 @@ Irvine, CA 92697-3100
 
 After editing any hyperlink locations, Emacs users update indices with
 C-c C-u C-a	texinfo-all-menus-update
-C-c C-u C-e	texinfo-every-node-updatexb
+C-c C-u C-e	texinfo-every-node-update
 
 Multiple files:
 M-x texinfo-multiple-files-update
@@ -114,12 +114,12 @@ Octave TeXInfo manual shows clean TeXInfo structure
 @setfilename nco.info
 
 @c Define edition, date, ...
- at set nco-edition 4.4.7
- at set doc-edition 4.4.7
- at set copyright-years 1995--2014
- at set update-year 2014
- at set update-date 26 November 2014
- at set update-month November 2014
+ at set nco-edition 4.4.8
+ at set doc-edition 4.4.8
+ at set copyright-years 1995--2015
+ at set update-year 2015
+ at set update-date 16 February 2015
+ at set update-month February 2015
 
 @settitle @acronym{NCO} @value{nco-edition} User Guide
 
@@ -168,6 +168,7 @@ x
 \gdef\shrnbr{S} % [nbr] Share number
 \gdef\dfr{{\rm d}} % [frc] Math differential fxm: upright
 \gdef\idx{i} % [idx] Index
+\gdef\psl{\epsilon} % [frc] epsilon
 \gdef\iii{i} % [idx] i
 \gdef\jjj{j} % [idx] j
 \gdef\kkk{k} % [idx] k
@@ -181,15 +182,23 @@ x
 \gdef\mpp{\cal{M}} % [map] Map
 \gdef\mskflg{m} % [flg] Mask flag
 \gdef\mssflg{\mu} % [flg] Missing value flag
+\gdef\qqq{q} % [ltr] q
 \gdef\tm{t} % [s] Time
 \gdef\prmsbs{\prime} % [sbs] Prime subscript
 \gdef\wgt{w} % [frc] Weight
 \gdef\wndmrd{v} % [m s-1] Meridional wind speed
 \gdef\wndznl{u} % [m s-1] Zonal wind speed
+\gdef\vvv{v} % [ltr] v
 \gdef\xxx{x} % [ltr] x
 \gdef\yyy{y} % [ltr] y
 
 % 2. Derived commands
+\gdef\pslavg{\bar{\epsilon}} % [frc] Mean error
+\gdef\pslmax{\epsilon_{\rm max}} % [frc] Maximum error
+\gdef\pslmin{\epsilon_{\rm min}} % [frc] Minimum error
+\gdef\pslmabs{\epsilon_{\rm mabs}^{+}} % [frc] Maximum absolute error
+\gdef\pslmibs{\epsilon_{\rm mibs}^{+}} % [frc] Minimum absolute error
+\gdef\pslmebs{\bar{\epsilon}^{+}} % [frc] Mean absolute error
 \gdef\dmnvct{{\bf \dmn}} % [vct] Dimension vector
 \gdef\dmnprm{\dmn^{\prmsbs}} % [vct] Dimension prime
 \gdef\dmnsubnnn{\dmn_{\dmnidx}} % [dmn] Dimension sub nnn
@@ -284,8 +293,6 @@ ncflint, ncks, ncra, ncrcat, ncrename, ncwa">
 <body text="#000000" link="#0000EF" vlink="#008080" alink="#FF0000">
 <font face="Arial">
 @end html
- at ignore
- at end ignore
 @title NCO User Guide
 @subtitle A suite of netCDF operators
 @subtitle Edition @value{doc-edition}, for @acronym{NCO} Version @value{nco-edition}
@@ -396,8 +403,8 @@ Charlie Zender
 * Summary::
 * Introduction::
 * Strategies::
-* Common features::
-* Operator Reference Manual::
+* Shared features::
+* Reference Manual::
 * Contributing::
 * Quick Start::
 * CMIP5 Example::
@@ -510,7 +517,7 @@ Irvine, California@*
 @ignore
 @sp 2
 The @acronym{NASA} @acronym{ACCESS} 2011 program generously supported 
-(Cooperative Agreement NNX12AF48A) @acronym{NCO} from 2012--2014.
+(Cooperative Agreement NNX12AF48A) @acronym{NCO} from 2012--2015.
 We accomplished our goals and produced the first iteration of a
 Group-oriented Data Analysis and Distribution (@acronym{GODAD}) software 
 ecosystem. 
@@ -664,11 +671,11 @@ are on our homepage
 (@uref{http://nco.sf.net/}).
 
 There are twelve operators in the current version (@value{nco-edition}).
-The function of each is explained in @ref{Operator Reference Manual, Operator Reference Manual}.
+The function of each is explained in @ref{Reference Manual, Reference Manual}.
 Many of the tasks that @acronym{NCO} can accomplish are described during
-the explanation of common @acronym{NCO} Features (@pxref{Common features}).
+the explanation of common @acronym{NCO} Features (@pxref{Shared features}).
 More specific use examples for each operator can be seen by visiting the
-operator-specific examples in the @ref{Operator Reference Manual}.
+operator-specific examples in the @ref{Reference Manual}.
 These can be found directly by prepending the operator name with the
 @code{xmp_} tag, e.g., @uref{http://nco.sf.net/nco.html#xmp_ncks}.
 Also, users can type the operator name on the shell command line to 
@@ -676,7 +683,7 @@ see all the available options, or type, e.g., @samp{man ncks} to see
 a help man-page.
 
 @acronym{NCO} is a command-line language.
-You can either use an operator after the prompt (e.g., @samp{$} here),
+You may either use an operator after the prompt (e.g., @samp{$} here),
 like, 
 @example
 $ @command{operator} @option{[options]} @file{input} @file{[output]}
@@ -717,19 +724,22 @@ If these resources do not help enough, please
 @cindex compatability
 @cindex portability
 @cindex installation
- at acronym{NCO} has been successfully ported and tested and is known to
-work on the following 32- and 64-bit platforms:  
+In its time on Earth, @acronym{NCO} has been successfully ported and
+tested on so many 32- and 64-bit platforms that if we did not write
+them down here we would forget their names:  
 @c alphabetize by OS name
 @acronym{IBM AIX} 4.x, 5.x,
 FreeBSD 4.x, 
 @acronym{GNU}/Linux 2.x, LinuxPPC, LinuxAlpha, LinuxARM, LinuxSparc64,
+LinuxAMD64, 
 @acronym{SGI IRIX} 5.x and 6.x,
 @w{MacOS X} 10.x, 
- at acronym{NEC} Super-UX 10.x, 
 @acronym{DEC OSF}, 
+ at acronym{NEC} Super-UX 10.x, 
 Sun SunOS 4.1.x, Solaris 2.x, 
 @acronym{Cray UNICOS} 8.x--10.x,
-and MS Windows95 and all later versions.
+and Microsoft Windows (95, 98, @acronym{NT}, 2000, @acronym{XP}, Vista,
+7, 8, 10).
 If you port the code to a new operating system, please send me a note 
 and any patches you required.
 
@@ -1298,9 +1308,10 @@ Conversion of @acronym{HDF4} to netCDF4 as above suffices when the data
 will only be processed by @acronym{NCO} and other netCDF4-aware tools.  
 
 @cindex @command{ncl_convert2nc}
+ at cindex @command{nc3tonc4}
 However, many tools are not fully netCDF4-aware, and so conversion to
 netCDF3 may be desirable.
-Obtaining a netCDF3 file from an @acronym{HDF4} is now easy:
+Obtaining any netCDF file from an @acronym{HDF4} is easy:
 @example
 ncks -3 fl.hdf fl.nc      # HDF4->netCDF3 (NCO 4.4.0+, netCDF 4.3.1+)
 ncks -4 fl.hdf fl.nc      # HDF4->netCDF4 (NCO 4.4.0+, netCDF 4.3.1+)
@@ -1320,9 +1331,10 @@ Prior to @acronym{NCO} version 4.4.0 (January, 2014), we recommended the
 @command{ncl_convert2nc} tool to convert @acronym{HDF} to netCDF3 when
 both these are true: @w{1. You} must have netCDF3 and @w{2. the}
 @acronym{HDF} file contains netCDF4 atomic types. 
-More recent versions of @acronym{NCO} handle this problem fine, so we
-no longer recommend @command{ncl_convert2nc} because @command{ncks}
-is faster and more space-efficient.
+More recent versions of @acronym{NCO} handle this problem fine, and
+include other advantages so we no longer recommend
+ at command{ncl_convert2nc} because @command{ncks} is faster and more
+space-efficient. 
 Both automatically convert netCDF4 types to netCDF3 types, yet
 @command{ncl_convert2nc} cannot produce full netCDF4 files.
 In contrast, @command{ncks} will happily convert @acronym{HDF} straight
@@ -1332,7 +1344,9 @@ Unsigned bytes stay unsigned bytes.
 64-bit integers stay 64-bit integers. 
 Strings stay strings. 
 Hence, @command{ncks} conversions often result in smaller files than
- at command{ncl_convert2nc} conversions.}. 
+ at command{ncl_convert2nc} conversions.
+A tool useful for converting netCDF3 to netCDF4 files is the Python
+script @command{nc3tonc4} by Jeff Whitaker.}. 
 
 @cindex @code{hdf_name}
 @cindex illegal names
@@ -1525,7 +1539,7 @@ differences between these files and your own.
 @html
 <a name="str"></a> <!-- http://nco.sf.net/nco.html#str -->
 @end html
- at node Strategies, Common features, Introduction, Top
+ at node Strategies, Shared features, Introduction, Top
 @chapter Operator Strategies
 
 @menu
@@ -2485,8 +2499,8 @@ been reduced or eliminated.
 @html
 <a name="ftr"></a> <!-- http://nco.sf.net/nco.html#ftr -->
 @end html
- at node Common features, Operator Reference Manual, Strategies, Top
- at chapter NCO Features
+ at node Shared features, Reference Manual, Strategies, Top
+ at chapter Shared Features
 
 Many features have been implemented in more than one operator and are
 described here for brevity. 
@@ -2525,6 +2539,7 @@ feature is automatic and cannot be controlled by the user.
 * Multiple Record Dimensions::
 * Missing Values::
 * Chunking::
+* Compression::
 * Deflation::
 * MD5 digests::
 * Buffer sizes::
@@ -2543,7 +2558,7 @@ feature is automatic and cannot be controlled by the user.
 @html
 <a name="i18n"></a> <!-- http://nco.sf.net/nco.html#i18n -->
 @end html
- at node Internationalization, Metadata Optimization, Common features, Common features
+ at node Internationalization, Metadata Optimization, Shared features, Shared features
 @section Internationalization
 @cindex Internationalization
 @cindex I18N
@@ -2564,7 +2579,7 @@ favorite languages.
 <a name="hdr"></a> <!-- http://nco.sf.net/nco.html#hdr -->
 <a name="hdr_pad"></a> <!-- http://nco.sf.net/nco.html#hdr_pad -->
 @end html
- at node Metadata Optimization, OpenMP Threading, Internationalization, Common features
+ at node Metadata Optimization, OpenMP Threading, Internationalization, Shared features
 @section Metadata Optimization
 @cindex metadata optimization
 @cindex performance
@@ -2604,7 +2619,7 @@ library (@pxref{File Formats and Conversion}).
 <a name="omp"></a> <!-- http://nco.sf.net/nco.html#omp -->
 <a name="openmp"></a> <!-- http://nco.sf.net/nco.html#openmp -->
 @end html
- at node OpenMP Threading, Command Line Options, Metadata Optimization, Common features
+ at node OpenMP Threading, Command Line Options, Metadata Optimization, Shared features
 @section OpenMP Threading
 @cindex OpenMP
 @cindex threads
@@ -2712,7 +2727,7 @@ This information is also useful for benchmarking.
 @html
 <a name="cmd_ln"></a> <!-- http://nco.sf.net/nco.html#cmd_ln -->
 @end html
- at node Command Line Options, Specifying Input Files, OpenMP Threading, Common features
+ at node Command Line Options, Specifying Input Files, OpenMP Threading, Shared features
 @section Command Line Options
 @cindex command line options
 @cartouche
@@ -2822,7 +2837,7 @@ name that most suits their taste.
 <a name="in"></a> <!-- http://nco.sf.net/nco.html#in -->
 <a name="input"></a> <!-- http://nco.sf.net/nco.html#input -->
 @end html
- at node Specifying Input Files, Specifying Output Files, Command Line Options, Common features
+ at node Specifying Input Files, Specifying Output Files, Command Line Options, Shared features
 @section Specifying Input Files
 @cindex input files
 @cindex globbing
@@ -2979,7 +2994,7 @@ automatically generate, in order, the filenames @file{85_12.nc},
 <a name="out"></a> <!-- http://nco.sf.net/nco.html#out -->
 <a name="output"></a> <!-- http://nco.sf.net/nco.html#output -->
 @end html
- at node Specifying Output Files, Remote storage, Specifying Input Files, Common features
+ at node Specifying Output Files, Remote storage, Specifying Input Files, Shared features
 @section Specifying Output Files
 @cindex output file
 @cindex input files
@@ -3017,7 +3032,7 @@ Second, specification of a long list of input files may be difficult
 (@pxref{Large Numbers of Files}).
 Making the input file list the final argument to an operator facilitates 
 using @command{xargs} for this purpose.
-Some alternatives to @command{xargs} are very ugly and undesirable.
+Some alternatives to @command{xargs} are heinous and undesirable.
 Finally, many users are more comfortable specifying output files 
 with @samp{-o @var{fl_out}} near the beginning of an argument list.
 @cindex compilers
@@ -3032,7 +3047,7 @@ precedence.
 @html
 <a name="rmt"></a> <!-- http://nco.sf.net/nco.html#rmt -->
 @end html
- at node Remote storage, Retaining Retrieved Files, Specifying Output Files, Common features
+ at node Remote storage, Retaining Retrieved Files, Specifying Output Files, Shared features
 @section Accessing Remote Files
 @cindex @code{rcp}
 @cindex @code{scp}
@@ -3444,7 +3459,7 @@ which to test @acronym{NCO} are welcome.
 @html
 <a name="rtn"></a> <!-- http://nco.sf.net/nco.html#rtn -->
 @end html
- at node Retaining Retrieved Files, File Formats and Conversion, Remote storage, Common features
+ at node Retaining Retrieved Files, File Formats and Conversion, Remote storage, Shared features
 @section Retaining Retrieved Files
 @cindex file deletion
 @cindex file removal
@@ -3518,7 +3533,7 @@ when your other preferred methods are not available locally.
 <a name="64bit"></a> <!-- http://nco.sf.net/nco.html#64bit -->
 <a name="netcdf4"></a> <!-- http://nco.sf.net/nco.html#netcdf4 -->
 @end html
- at node File Formats and Conversion, Large File Support, Retaining Retrieved Files, Common features
+ at node File Formats and Conversion, Large File Support, Retaining Retrieved Files, Shared features
 @section File Formats and Conversion
 @cindex @acronym{HDF}
 @cindex netCDF2
@@ -3543,7 +3558,7 @@ when your other preferred methods are not available locally.
 @cindex @code{--file_format}
 @cindex @code{--64bit}
 @cartouche
-Availability: @command{ncap2}, @command{ncbo}, @command{nces},
+Availability: @command{ncap2}, @command{nces},
 @command{ncecat}, @command{ncflint}, @command{ncks}, @command{ncpdq},
 @command{ncra}, @command{ncrcat}, @command{ncwa}@*
 Short options: @samp{-3}, @samp{-4}, @samp{-6}, @samp{-7}@*
@@ -3578,7 +3593,8 @@ netCDF2 and netCDF3.
 As of 2005, nearly all netCDF datasets were in @code{CLASSIC} format. 
 The @code{64BIT} format was added in Fall, 2004.
 As of 2010, many netCDF datasets were in @code{64BIT} format. 
-As of 2013, many netCDF datasets are in @code{NETCDF4_CLASSIC} format. 
+As of 2013, an increasing number of netCDF datasets were in
+ at code{NETCDF4_CLASSIC} format.
 
 The @code{NETCDF4} format uses @acronym{HDF5} as the file storage layer. 
 The files are (usually) created, accessed, and manipulated using the 
@@ -3882,7 +3898,7 @@ If this feature would interest you, please let us know.
 @html
 <a name="lfs"></a> <!-- http://nco.sf.net/nco.html#lfs -->
 @end html
- at node Large File Support, Subsetting Files, File Formats and Conversion, Common features
+ at node Large File Support, Subsetting Files, File Formats and Conversion, Shared features
 @section Large File Support
 @cindex @acronym{LFS}
 @cindex Large File Support
@@ -3929,7 +3945,7 @@ build time.
 <a name="sbs"></a> <!-- http://nco.sf.net/nco.html#sbs -->
 <a name="subset"></a> <!-- http://nco.sf.net/nco.html#subset -->
 @end html
- at node Subsetting Files, Subsetting Coordinate Variables, Large File Support, Common features
+ at node Subsetting Files, Subsetting Coordinate Variables, Large File Support, Shared features
 @section Subsetting Files
 @cindex subsetting
 @cindex union
@@ -4336,7 +4352,7 @@ filename expansion (globbing).
 <a name="-C"></a> <!-- http://nco.sf.net/nco.html#-C -->
 <a name="-c"></a> <!-- http://nco.sf.net/nco.html#-c -->
 @end html
- at node Subsetting Coordinate Variables, Group Path Editing, Subsetting Files, Common features
+ at node Subsetting Coordinate Variables, Group Path Editing, Subsetting Files, Shared features
 @section Subsetting Coordinate Variables
 @cindex subsetting
 @cindex @code{-C}
@@ -4382,7 +4398,7 @@ convention described in @ref{CF Conventions}.
 @html
 <a name="gpe"></a> <!-- http://nco.sf.net/nco.html#gpe -->
 @end html
- at node Group Path Editing, C and Fortran Index Conventions, Subsetting Coordinate Variables, Common features
+ at node Group Path Editing, C and Fortran Index Conventions, Subsetting Coordinate Variables, Shared features
 @section Group Path Editing
 @cindex @code{-G @var{gpe_dsc}}
 @cindex @code{--gpe @var{gpe_dsc}}
@@ -4804,6 +4820,9 @@ Example compliance checks of common @acronym{NASA} datasets are at
 Our long-term goal is to enrich the hierarchical data model with the 
 expressivity and syntactic power of @acronym{CF} conventions.
 
+ at html
+<a name="daac"></a> <!-- http://nco.sf.net/nco.html#daac -->
+ at end html
 @acronym{NASA} asked the @acronym{DIWG} to prepare a one-page summary
 of the procedure necessary to check @acronym{HDF} files for
 @acronym{CF}-compliance: 
@@ -4917,7 +4936,7 @@ A @acronym{PDF} version of these instructions is available
 <a name="ftn"></a> <!-- http://nco.sf.net/nco.html#ftn -->
 <a name="-F"></a> <!-- http://nco.sf.net/nco.html#-F -->
 @end html
- at node C and Fortran Index Conventions, Hyperslabs, Group Path Editing, Common features
+ at node C and Fortran Index Conventions, Hyperslabs, Group Path Editing, Shared features
 @section C and Fortran Index conventions
 @cindex index convention
 @cindex Fortran index convention
@@ -4980,7 +4999,7 @@ lon(1)=0 lev(1)=100 lat(1)=-90 three_dmn_var(1)=0
 <a name="hyp"></a> <!-- http://nco.sf.net/nco.html#hyp -->
 <a name="hyperslab"></a> <!-- http://nco.sf.net/nco.html#hyperslab -->
 @end html
- at node Hyperslabs, Stride, C and Fortran Index Conventions, Common features
+ at node Hyperslabs, Stride, C and Fortran Index Conventions, Shared features
 @section Hyperslabs 
 @cindex hyperslab
 @cindex dimension limits
@@ -5142,7 +5161,7 @@ This option may be specified more than once in a single command
 <a name="srd"></a> <!-- http://nco.sf.net/nco.html#srd -->
 <a name="stride"></a> <!-- http://nco.sf.net/nco.html#stride -->
 @end html
- at node Stride, Record Appending, Hyperslabs, Common features
+ at node Stride, Record Appending, Hyperslabs, Shared features
 @section Stride 
 @cindex stride
 @cindex @code{-d @var{dim},[@var{min}],[@var{max}], at var{stride}}
@@ -5234,7 +5253,7 @@ ncrcat -F -d time,3,,12 85.nc 86.nc 87.nc 88.nc 89.nc 8503_8903.nc
 <a name="rec_apn"></a> <!-- http://nco.sf.net/nco.html#rec_apn -->
 <a name="record_append"></a> <!-- http://nco.sf.net/nco.html#record_append -->
 @end html
- at node Record Appending, Subcycle, Stride, Common features
+ at node Record Appending, Subcycle, Stride, Shared features
 @section Record Appending
 @cindex record append
 @cindex @code{--rec_apn}
@@ -5310,7 +5329,7 @@ We recommend users try to understand the safety trade-offs involved.
 <a name="drn"></a> <!-- http://nco.sf.net/nco.html#drn -->
 <a name="mro"></a> <!-- http://nco.sf.net/nco.html#mro -->
 @end html
- at node Subcycle, Multislabs, Record Appending, Common features
+ at node Subcycle, Multislabs, Record Appending, Shared features
 @section Subcycle
 @cindex duration
 @cindex sub-cycle
@@ -5417,7 +5436,7 @@ records.
 <a name="msa"></a> <!-- http://nco.sf.net/nco.html#msa -->
 <a name="mlt"></a> <!-- http://nco.sf.net/nco.html#mlt -->
 @end html
- at node Multislabs, Wrapped Coordinates, Subcycle, Common features
+ at node Multislabs, Wrapped Coordinates, Subcycle, Shared features
 @section Multislabs 
 @cindex multislab
 @cindex multi-hyperslab
@@ -5614,7 +5633,7 @@ hyperslabs makes this clearer.
 @html
 <a name="wrp"></a> <!-- http://nco.sf.net/nco.html#wrp -->
 @end html
- at node Wrapped Coordinates, Auxiliary Coordinates, Multislabs, Common features
+ at node Wrapped Coordinates, Auxiliary Coordinates, Multislabs, Shared features
 @section Wrapped Coordinates
 @cindex wrapped coordinates
 @cindex longitude
@@ -5690,7 +5709,7 @@ values (@pxref{Hyperslabs}).
 <a name="std_nm"></a> <!-- http://nco.sf.net/nco.html#std_nm -->
 <a name="standard_name"></a> <!-- http://nco.sf.net/nco.html#standard_name -->
 @end html
- at node Auxiliary Coordinates, UDUnits Support, Wrapped Coordinates, Common features
+ at node Auxiliary Coordinates, UDUnits Support, Wrapped Coordinates, Shared features
 @section Auxiliary Coordinates
 @cindex @code{-X}
 @cindex @code{--auxiliary}
@@ -5833,7 +5852,7 @@ to avoid confusion.
 <a name="UDUnits"></a> <!-- http://nco.sf.net/nco.html#UDUnits -->
 <a name="UDUnits2"></a> <!-- http://nco.sf.net/nco.html#UDUnits2 -->
 @end html
- at node UDUnits Support, Rebasing Time Coordinate, Auxiliary Coordinates, Common features
+ at node UDUnits Support, Rebasing Time Coordinate, Auxiliary Coordinates, Shared features
 @section UDUnits Support 
 @cindex UDUnits
 @cindex Unidata
@@ -6061,7 +6080,7 @@ esoteric units (e.g., furlongs, pounds per square inch, fortnights).
 <a name="time_rebase"></a> <!-- http://nco.sf.net/nco.html#time_rebase -->
 <a name="rbs"></a> <!-- http://nco.sf.net/nco.html#rbs -->
 @end html
- at node Rebasing Time Coordinate, Multiple Record Dimensions, UDUnits Support, Common features
+ at node Rebasing Time Coordinate, Multiple Record Dimensions, UDUnits Support, Shared features
 @section Rebasing Time Coordinate
 @cartouche
 Availability: 
@@ -6124,7 +6143,7 @@ but also any bounds associated with the record coordinate (e.g.,
 @html
 <a name="mrd"></a> <!-- http://nco.sf.net/nco.html#mrd -->
 @end html
- at node Multiple Record Dimensions, Missing Values, Rebasing Time Coordinate, Common features
+ at node Multiple Record Dimensions, Missing Values, Rebasing Time Coordinate, Shared features
 @section Multiple Record Dimensions
 @cindex netCDF4
 @cindex @code{--mrd}
@@ -6182,7 +6201,7 @@ Use @samp{--mrd} to override this.
 <a name="mss_val"></a> <!-- http://nco.sf.net/nco.html#mss_val -->
 <a name="mss"></a> <!-- http://nco.sf.net/nco.html#mss -->
 @end html
- at node Missing Values, Chunking, Multiple Record Dimensions, Common features
+ at node Missing Values, Chunking, Multiple Record Dimensions, Shared features
 @section Missing values
 @cindex missing values
 @cindex data, missing 
@@ -6351,7 +6370,7 @@ important information from being lost.
 <a name="cnk_sz"></a> <!-- http://nco.sf.net/nco.html#cnk_sz -->
 <a name="chunk_size"></a> <!-- http://nco.sf.net/nco.html#chunk_size -->
 @end html
- at node Chunking, Deflation, Missing Values, Common features
+ at node Chunking, Compression, Missing Values, Shared features
 @section Chunking
 @cindex @code{--cnk_byt}
 @cindex @code{--cnk_dmn}
@@ -6501,6 +6520,17 @@ and copies the chunking parameters from the input to the output file.
 Alternate invocation: none@*
 @var{cnk_plc} key values: @samp{xst}, @samp{cnk_xst}, @samp{plc_xst}@*
 Mnemonic: E at emph{X}i at emph{ST}ing chunked variables@*
+ at item Chunk Variables with @acronym{NCO} recommendations
+Definition: Chunk all variables according to @acronym{NCO} best
+practices. 
+This is a virtual option that ensures the chunking policy is (in the 
+subjective opinion of the authors) the best policy for typical usage.
+As of @acronym{NCO} version 4.4.8 (February, 2015), this virtual policy
+implements @samp{map_rew} for 3-D variables and @samp{map_lfp} for all
+other variables.@*
+Alternate invocation: none@*
+ at var{cnk_plc} key values: @samp{nco}, @samp{cnk_nco}, @samp{plc_nco}@*
+Mnemonic: @emph{N}et at emph{C}DF at emph{O}perator@*
 @item Unchunking
 Definition: Unchunk all variables possible. 
 The @acronym{HDF5} storge layer requires that record variables (i.e.,
@@ -6625,6 +6655,17 @@ This map can be used to reset (portions of) previously chunked files to
 default chunking values.@*
 @var{cnk_map} key values: @samp{nc4}, @samp{cnk_nc4}, @samp{map_nc4}@*
 Mnemonic: @emph{N}et at emph{C}DF at emph{4}@*
+ at item Chunksizes use @acronym{NCO} recommendations
+Definition: Chunksizes are determined by the currently recommended
+ at acronym{NCO} map.
+This is a virtual option that ensures the chunking map is (in the 
+subjective opinion of the authors) the best map for typical usage.
+As of @acronym{NCO} version 4.4.8 (February, 2015), this virtual map
+calls @samp{map_rew} for 3-D variables and @samp{map_lfp} for all
+others.@*  
+ at var{cnk_map} key values: @samp{nco}, @samp{cnk_nco}, @samp{map_nco}@*
+Mnemonic: @emph{N}et at emph{C}DF at emph{O}perator@*
+
 @end table
 @noindent
 It is possible to combine the above chunking map algorithms with
@@ -6705,7 +6746,7 @@ ncwa -O -4 -D 4 -a time --cnk_plc=g2d --cnk_map=rd1 --cnk_dmn lat,32 \
 <a name="r1d"></a> <!-- http://nco.sf.net/nco.html#r1d -->
 @end html
 Chunking policy @samp{r1d} changes the chunksize of 1-D record variables
-(and no other variables) to the specified (with @samp{--cnk_dmn})
+(and no other variables) to that specified (with @samp{--cnk_dmn})
 chunksize. 
 Any specified record dimension chunksizes will be applied to 1-D
 record variables only. 
@@ -6735,6 +6776,831 @@ instructions to activate chunking nevertheless contain chunked
 variables. 
 
 @html
+<a name="ppc"></a> <!-- http://nco.sf.net/nco.html#ppc -->
+<a name="PPC"></a> <!-- http://nco.sf.net/nco.html#PPC -->
+<a name="compression"></a> <!-- http://nco.sf.net/nco.html#compression -->
+<a name="cmp"></a> <!-- http://nco.sf.net/nco.html#cmp -->
+<a name="nsd"></a> <!-- http://nco.sf.net/nco.html#nsd -->
+<a name="NSD"></a> <!-- http://nco.sf.net/nco.html#NSD -->
+<a name="dsd"></a> <!-- http://nco.sf.net/nco.html#dsd -->
+<a name="DSD"></a> <!-- http://nco.sf.net/nco.html#DSD -->
+<a name="qnt"></a> <!-- http://nco.sf.net/nco.html#qnt -->
+ at end html
+ at node Compression, Deflation, Chunking, Shared features
+ at section Compression
+ at cindex @code{--ppc}
+ at cindex @code{--precision_preserving_compression}
+ at cindex @code{--quantize}
+ at cindex lossy compression
+ at cindex quantization
+ at cindex rounding
+ at cindex Huffman coding
+ at cindex @command{gzip}
+ at cindex @command{zlib}
+ at cartouche
+Availability: @command{ncbo}, @command{ncecat}, @command{nces},
+ at command{ncflint}, @command{ncks}, @command{ncpdq}, @command{ncra},
+ at command{ncrcat}, @command{ncwa}@* 
+Short options: None@*
+Long options: @samp{--ppc @var{var1}[, at var{var2}[,...]]=@var{prc}},@*
+ at samp{--precision_preserving_compression @var{var1}[, at var{var2}[,...]]=@var{prc}},@*
+ at samp{--quantize @var{var1}[, at var{var2}[,...]]=@var{prc}}@*
+ at end cartouche
+
+ at acronym{NCO} implements or accesses four different compression
+algorithms, the standard lossless @acronym{DEFLATE} algorithm
+and three lossy compression algorithms.
+All four algorithms reduce the on-disk size of a dataset while
+sacrificing no (lossless) or a tolerable amount (lossy) of precision. 
+First, @acronym{NCO} can access the lossless @acronym{DEFLATE} algorithm,
+a combination of Lempel-Ziv encoding and Huffman coding, algorithm on
+any netCDF4 dataset (@pxref{Deflation}). 
+Because it is lossless, this algorithm can inflate deflated data to
+their full original precision. 
+This algorithm is accessed via the @acronym{HDF5} library layer
+(which itself calls the @command{zlib} library also used by
+ at command{gzip}), and is unavailable with netCDF3.   
+
+The three lossy compression algorithms are Packing 
+(@pxref{Packed data}), and two precision-preserving algorithms.
+Packing quantizes data of a higher precision type into a lower precision 
+type (often @code{NC_SHORT}) and thus stores a fewer (though constant)
+number of bytes per value. 
+As shown in the examples, packed data can (and should) be deflated for 
+additional space savings.
+
+ at cindex @acronym{PPC}
+ at cindex @acronym{LSD}
+ at cindex Least Significant Digit
+ at cindex quantization
+ at acronym{NCO} implemented the final two lossy compression algorithms
+in version 4.4.8 (February, 2015).
+These are both @dfn{Precision-Preserving Compression} (@acronym{PPC})
+algorithms and since standard terminology for precision is remarkably 
+imprecise, so is our nomenclature. 
+The operational definition of ``significant digit'' in our precision
+preserving algorithms is that the exact value, before rounding or
+quantization, is within one-half the value of the decimal place occupied
+by the @dfn{Least Significant Digit} (@acronym{LSD}) of the rounded value.
+For example, the value @math{pi = 3.14} correctly represents the exact
+mathematical constant @var{pi} to three significant digits because the
+ at acronym{LSD} of the rounded value @w{(i.e., 4)} is in the one-hundredths 
+digit place, and the difference between the exact value and the rounded
+value is less than one-half of one one-hundredth, i.e., 
+(@math{3.14159265358979323844 - 3.14 = 0.00159 < 0.005}).
+
+ at cindex Number of Significant Digits
+ at cindex @acronym{NSD}
+One @acronym{PPC} algorithm preserves the specified total 
+ at dfn{Number of Signifcant Digits} (@acronym{NSD}) of the value.
+For example there is only one significant digit in the weight of
+most ``eight-hundred pound gorillas'' that you will encounter, 
+i.e., so @math{@var{nsd=1}}.
+This is the most straightforward measure of precision, and thus
+ at acronym{NSD} is the default @acronym{PPC} algorithm.
+
+ at cindex Decimal Significant Digits
+ at cindex @acronym{DSD}
+The other @acronym{PPC} algorithm preserves the number of 
+ at dfn{Decimal Significant Digits} (@acronym{DSD}), i.e., the number of
+significant digits following (positive, by convention) or preceding
+(negative) the decimal point.  
+For example, ``0.008'' and ``800'' have, respectively, three and
+negative two digits digits following the decimal point, corresponding 
+ at math{@var{dsd=3}} and @math{@var{dsd=-2}}. 
+
+The only justifiable @acronym{NSD} for a given value depends on 
+intrinsic accuracy and error characteristics of the model or
+measurements, and not on the units with which the value is stored.
+The appropriate @acronym{DSD} for a given value depends on these
+intrinsic characteristics and, in addition, the units of storage.
+This is the fundamental difference between the @acronym{NSD} and 
+ at acronym{DSD} approaches. 
+The eight-hundred pound gorilla always has @math{@var{nsd=1}} regardless 
+of whether the value is store in pounds or in some other unit.
+ at acronym{DSD} corresponding to this weight is @math{@var{dsd=-2}} if the
+value is store in pounds, @math{@var{dsd=4}} if stored in megapounds.
+
+Users may wish to express the precision to be preserved as either
+ at acronym{NSD} or @acronym{DSD}.
+Invoke @acronym{PPC} with the long option @samp{--ppc var=prc}, or give
+the same arguments to the synonyms
+ at samp{--precision_preserving_compression}, or to @samp{--quantize}. 
+Here @var{var} is the variable to quantize, and @var{prc} is the 
+precision.
+The default algorithm assumes @var{prc} specifies @acronym{NSD}
+precision, e.g., @samp{T=2} means @math{@var{nsd=2}}.
+Prepend @var{prc} with a decimal point to specify @acronym{DSD}
+precision, e.g., @samp{T=.2} means @math{@var{dsd=2}}.
+ at acronym{NSD} precision must be specified as a positive integer.
+ at acronym{DSD} precision may be a positive or negative integer;
+and is specified as the negative @w{base 10} logarithm of the desired 
+precision, in accord with common usage. 
+For example, specifying @samp{T=.3} or @samp{T=.-2} tells the
+ at acronym{DSD} algorithm to store only enough bits to preserve the  
+value of @var{T} rounded to the nearest thousandth or hundred,
+respectively. 
+
+ at cindex @acronym{CF} conventions
+ at cindex @code{coordinates} attribute
+ at cindex @code{bounds} attribute
+Setting @var{var} to @code{default} has the special meaning of applying 
+the associated @acronym{NSD} or @acronym{DSD} algorithm to all floating
+point variables except coordinate variables.
+Variables @emph{not affected} by @code{default} include integer and
+non-numeric atomic types, coordinates, and variables mentioned in 
+the @code{coordinates} or @code{bounds} attribute of any variable.
+ at acronym{NCO} applies @acronym{PPC} to coordinate variables only if 
+those variables are explicitly specified (i.e., not with the
+ at samp{default=@var{prc}} mechanism. 
+ at acronym{NCO} applies @acronym{PPC} to integer-type variables only if 
+those variables are explicitly specified (i.e., not with the
+ at samp{default=@var{prc}}, and only if the @acronym{DSD} algorithm is
+invoked with a negative @var{prc}.
+To prevent @acronym{PPC} from applying to certain non-coordinate
+variables (e.g., @code{gridcell_area} or @code{gaussian_weight}),
+explicitly specify a precision @w{exceeding 7} (for @code{NC_FLOAT})
+ at w{or 15} (for @code{NC_DOUBLE}) for those variables. 
+Since these are the maximum representable precisions in decimal digits,
+ at acronym{NCO} @emph{turns-off} @acronym{PPC} (i.e., does nothing)
+when more precision is requested.
+
+ at cindex bitmask
+ at cindex significand
+ at cindex @w{@acronym{IEEE} 754}
+The time penalty for compressing and uncompressing data varies according 
+to the algorithm.
+The Number of Significant Digit (@acronym{NSD}) algorithm quantizes by
+bitmasking, and employs no floating point math.
+The Decimal Significant Digit (@acronym{DSD}) algorithm quantizes by
+rounding, which does require floating point math.
+Hence @acronym{NSD} is likely faster than @acronym{DSD}, though
+the difference has not been measured.
+ at acronym{NSD} creates a bitmask to alter the @dfn{significand} of
+ at w{@acronym{IEEE} 754} floating point data.
+The bitmask is one for all bits to be retained and zero or one for all
+bits to be ignored.
+The algorithm assumes that the number of binary digits (i.e., bits)
+necessary to represent a single base-10 digit is 
+ at math{ln(10)/ln(2) = 3.32}.
+The exact numbers of bits @var{Nbit} retained for single and double
+precision values are @math{ceil(3.32*@var{nsd})+1} and
+ at math{ceil(3.32*@var{nsd})+2}, respectively.
+Once these @w{reach 23} @w{and 53}, respectively, bitmasking is
+completely ineffective. 
+This occurs at @math{@var{nsd}=6.3} @w{and 15.4}, respectively.
+
+The @acronym{DSD} algorithm, by contrast, uses rounding to remove
+undesired precision.  
+ at cindex @command{rint()}
+ at cindex C99
+ at cindex @acronym{IEEE}
+ at cindex significand
+The rounding 
+ at footnote{
+Rounding is performed by the internal math library @command{rint()} 
+family of functions that were standardized in C99.
+The exact alorithm employed is
+ at math{@var{val} := rint(@var{scale}*@var{val})/@var{scale}} where
+ at var{scale} is the nearest power @w{of 2} that exceeds 
+ at math{10**@var{prc}}, and the inverse of @var{scale} is used when 
+ at math{@var{prc} < 0}.
+For @math{@var{ppc} = 3} or @math{@var{ppc} = -2}, for example, we have
+ at math{@var{scale} = 1024} and @math{@var{scale} = 1/128}.}
+zeroes the greatest number of significand bits consistent with
+the desired precision.
+
+To demonstrate the change in @acronym{IEEE} representation caused by
+ at acronym{PPC} rounding algorithms, consider again the case of @var{pi},
+represented as an @code{NC_FLOAT}.
+The @w{@acronym{IEEE} 754} single precision representations of the exact
+value (3.141592...), the value with only three significant digits treated
+as exact (3.140000...), and the value as stored (3.140625) after
+ at acronym{PPC}-rounding with either the @acronym{NSD} (@math{@var{prc}=3})
+or @acronym{DSD} (@math{@var{prc}=2}) algorithm are, respectively,
+ at ignore
+ncks -O -v pi --ppc pi=1  ~/nco/data/in.nc ~/foo_nsd1.nc 
+ncks -O -v pi --ppc pi=2  ~/nco/data/in.nc ~/foo_nsd2.nc 
+ncks -O -v pi --ppc pi=3  ~/nco/data/in.nc ~/foo_nsd3.nc 
+ncks -O -v pi --ppc pi=4  ~/nco/data/in.nc ~/foo_nsd4.nc 
+ncks -O -v pi --ppc pi=5  ~/nco/data/in.nc ~/foo_nsd5.nc 
+ncks -O -v pi --ppc pi=6  ~/nco/data/in.nc ~/foo_nsd6.nc 
+ncks -O -v pi --ppc pi=7  ~/nco/data/in.nc ~/foo_nsd7.nc 
+ncks -O -v pi --ppc pi=8  ~/nco/data/in.nc ~/foo_nsd8.nc 
+ncks -O -v pi --ppc pi=9  ~/nco/data/in.nc ~/foo_nsd9.nc 
+ncks -O -v pi --ppc pi=.2 ~/nco/data/in.nc ~/foo_dsd2.nc 
+ncks -s %20.16e -C -H ~/foo_nsd.nc
+ncks -s %20.16e -C -H ~/foo_dsd.nc
+ccc --tst=bnr --flt_foo=3.14159265358979323844 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.14000000000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.00000000000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.12500000000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.14062500000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.14062500000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.14147949218750000000 2> /dev/null | grep "Binary of float"
+ at end ignore
+ at example
+S Exponent  Fraction (Significand)   Decimal    Notes
+0 100000001 0010010000111111011011 # 3.14159265 Exact
+0 100000001 0010001111010111000011 # 3.14000000
+0 100000001 0010010000000000000000 # 3.14062500 NSD = 3
+0 100000001 0010010000000000000000 # 3.14062500 DSD = 2
+ at end example
+The string of trailing zero-bits in the rounded values facilitates
+byte-stream compression. 
+Note that the @acronym{NSD} and @acronym{DSD} algorithms do not always
+produce results that are bit-for-bit identical, although they do in this
+particular case.
+
+ at html
+<a name="ppc_tbl_bit"></a> <!-- http://nco.sf.net/nco.html#ppc_tbl_bit -->
+ at end html
+Reducing the preserved precision of @acronym{NSD}-rounding produces
+increasingly long strings of identical-bits amenable to compression: 
+ at example
+S Exponent  Fraction (Significand)   Decimal    Notes
+0 100000001 0010010000111111011011 # 3.14159265 Exact
+0 100000001 0010010000111111011011 # 3.14159265 NSD = 8
+0 100000001 0010010000111111011010 # 3.14159262 NSD = 7
+0 100000001 0010010000111111011000 # 3.14159203 NSD = 6
+0 100000001 0010010000111111000000 # 3.14158630 NSD = 5
+0 100000001 0010010000111100000000 # 3.14154053 NSD = 4
+0 100000001 0010010000000000000000 # 3.14062500 NSD = 3
+0 100000001 0010010000000000000000 # 3.14062500 NSD = 2
+0 100000001 0010000000000000000000 # 3.12500000 NSD = 1
+ at end example
+The consumption of about @w{3 bits} per digit of base-10 precision is
+evident, as is the coincidence of a quantized value that greatly
+exceeds the mandated precision for @math{@acronym{NSD} = 2}.
+Although the @acronym{NSD} algorithm generally masks some bits for all 
+ at math{@var{nsd} <= 7} (for @code{NC_FLOAT}), compression algorithms like
+ at acronym{DEFLATE} may need byte-size-or-greater (i.e., at least
+eight-bit) bit patterns before their algorithms can take advantage of
+of encoding such patterns for compression.
+Do not expect significantly enhanced compression from 
+ at math{@var{nsd} > 5} (for @code{NC_FLOAT}) or @math{@var{nsd} > 14} (for
+ at code{NC_DOUBLE}). 
+Clearly values stored as @code{NC_DOUBLE} (i.e., eight-bytes) are
+susceptible to much greater compression than @code{NC_FLOAT} for a given
+precision because their significands explicitly contain @w{53 bits}
+rather than @w{23 bits}.
+
+Maintaining non-biased statistical properties during lossy compression
+requires special attention. 
+The @acronym{DSD} algorithm uses @code{rint()}, which rounds toward the
+nearest even integer. 
+Thus @acronym{DSD} has no systematic bias.
+However, the @acronym{NSD} algorithm uses a bitmask technique
+susceptible to statistical bias.
+Zeroing all non-significant bits is guaranteed to produce numbers 
+quantized to the specified tolerance, i.e., half of the decimal value
+of the position occupied by the @acronym{LSD}. 
+However, always zeroing the non-significant bits results in quantized
+numbers that never exceed the exact number.
+This would produce a negative bias in statistical quantities (e.g., the
+average) subsequently derived from the quantized numbers. 
+To avoid this bias, @acronym{NSD} rounds non-significant bits down (to
+zero) or up (to one) in an alternating fashion when processing array
+data.
+In general, the first element is rounded down, the second up, and so
+on. 
+This results in a mean bias quite close to zero.
+The only exception is that the floating point value of zero is never 
+quantized upwards.
+For simplicity, @acronym{NSD} always rounds scalars downwards.
+
+ at cindex @acronym{DEFLATE}
+ at cindex @acronym{HDF5}
+ at cindex @command{gzip}
+ at cindex @command{gunzip}
+Although @acronym{NSD} or @acronym{DSD} are different algorithms under
+the hood, they both replace the (unwanted) least siginificant bits of
+the @acronym{IEEE} significand with a string of consecutive zeroes.  
+Byte-stream compression techniques, such as the @command{gzip}
+ at acronym{DEFLATE} algorithm compression available in @acronym{HDF5}, 
+always compress zero-strings more efficiently than random digits. 
+The net result is netCDF files that utilize compression can be
+significantly reduced in size.  
+This feature only works when the data are compressed, either internally 
+(by netCDF) or externally (by another user-supplied mechanism).
+It is most straightfoward to compress data internally using the built-in 
+compression and decompression supported by netCDF4.
+For convenience, @acronym{NCO} automatically activates file-wide
+Lempel-Ziv deflation (@pxref{Deflation}) level one (i.e., @samp{-L 1})
+when @acronym{PPC} is invoked on any variable in a netCDF4 output file. 
+This makes @acronym{PPC} easier to use effectively, since the user
+need not explicitly specify deflation.
+Any explicitly specified deflation (including no deflation, @samp{-L 0}) 
+will override the @acronym{PPC} deflation default.
+If the output file is a netCDF3 format, @acronym{NCO} will emit a
+message suggesting internal netCDF4 or external netCDF3 compression. 
+netCDF3 files compressed by an external utility such as @command{gzip}
+accrue approximately the same benefits (shrinkage) as netCDF4, although
+with netCDF3 the user or provider must uncompress (e.g.,
+ at command{gunzip}) the file before accessing the data. 
+There is no benefit to rounding numbers and storing them in netCDF3
+files unless such custom compression/decompression is employed.
+Without that, one may as well maintain the undesired precision. 
+
+The user accesses @acronym{PPC} through a single switch, @samp{--ppc},
+repeated as many times as necessary.
+To apply the @acronym{NSD} algorithm to variable @var{u} use, e.g., 
+ at example
+ncks -7 --ppc u=2 in.nc out.nc
+ at end example
+The output file will preserve only two significant digits of @var{u}.
+The options @samp{-4} or @samp{-7} ensure a netCDF4-format output 
+(regardless of the input file format) to support internal compression.
+It is recommended though not required to write netCDF4 files after 
+ at acronym{PPC}.
+For clarity the @samp{-4/-7} switches are omitted in subsequent
+examples. 
+ at cindex @code{number_of_significant_digits}
+ at cindex @code{least_significant_digit}
+ at acronym{NCO} attaches attributes that indicate the algorithm used and
+degree of precision retained for each variable affected by
+ at acronym{PPC}. 
+The @acronym{NSD} and @acronym{DSD} algorithms store the attributes
+ at code{number_of_significant_digits} and @code{least_significant_digit}
+ at footnote{The @command{nc3tonc4} tool by Jeff Whitaker inspired
+ at acronym{NCO} to implement @acronym{PPC}.
+ at acronym{NCO} implements a different @acronym{DSD} algorithm than 
+ at command{nc3tonc4}, and produces slightly different (not bit-for-bit) 
+though self-consistent and equivalent results.
+ at command{nc3tonc4} records the precision of its @acronym{DSD} algorithm 
+in the attribute @code{least_significant_digit} and @acronym{NCO} 
+does the same for consistency.}, respectively.
+
+It is safe to attempt @acronym{PPC} on input that has already been
+rounded. 
+Variables can be made rounder, not sharper, i.e., variables cannot be
+``un-rounded''. 
+Thus @acronym{PPC} attempted on an input variable with an existing
+ at acronym{PPC} attribute proceeds only if the new rounding level exceeds
+the old, otherwise no new rounding occurs (i.e., a ``no-op''), and the
+original @acronym{PPC} attribute is retained rather than replaced with
+the newer value of @var{prc}.
+
+To request, say, five significant digits (@math{@var{nsd=5}}) for all
+fields, except, say, wind speeds which are only known to integer values
+(@math{@var{dsd=0}}) in the supplied units, requires @samp{--ppc} twice: 
+ at example
+ncks -4 --ppc default=5 --ppc u,v=.0 in.nc out.nc
+ at end example
+To preserve five digits in all variables except coordinate variables
+and @var{u} and @var{v}, use the @samp{default} option and separately
+specify the exceptions:
+ at example
+ncks --ppc default=5 --ppc u,v=20 in.nc out.nc
+ at end example
+The @samp{--ppc} option may be specified any number of times to
+support varying precision types and levels, and each option may
+aggregate all the variables with the same precision
+ at example
+ncks --ppc p,w,z=5 --ppc q,RH=4 --ppc T,u,v=3 in.nc out.nc
+ at end example
+Any @var{var} argument may be a regular expression.
+This simplifies generating lists of related variables:
+ at example
+ncks --ppc Q.?=5 --ppc FS.?,FL.?=4 --ppc RH=.3 in.nc out.nc
+ at end example
+Although @acronym{PPC}-rounding instantly reduces data precision,
+on-disk storage reduction only occurs once the data are compressed.  
+
+ at html
+<a name="ppc_tbl_ffc"></a> <!-- http://nco.sf.net/nco.html#ppc_tbl_ffc -->
+ at end html
+How can one be sure the lossy data are sufficiently precise?
+ at acronym{PPC} preserves all significant digits of every value.
+The @acronym{DSD} algorithm uses floating point math to round each 
+value optimally so that it has the maximum number of zeroed bits
+that preserve the specified precision.
+The @acronym{NSD} algorithm uses a theoretical approach (3.2 bits per
+base-10 digit), tuned and tested to ensure the @emph{worst} case
+quantization error is less than half the value of the minimum increment
+in the least significant digit. 
+
+ at ifhtml
+ at cartouche
+ at html
+<p><b>Note for HTML users</b>: 
+<br>The definition of error metrics relies heavily on mathematical
+expressions which cannot easily be represented in HTML.  
+<b>See the <a href="./nco.pdf">printed manual</a> for much more detailed
+and complete documentation of this subject.</b>
+ at end html
+ at end cartouche
+ at end ifhtml
+ at ifnothtml
+ at ifinfo
+ at emph{Note for Info users}: 
+The definition of error metrics relies heavily on mathematical
+expressions which cannot be easily represented in Info.
+ at emph{See the @uref{./nco.pdf, printed manual} for much more detailed
+and complete documentation of this subject.}
+ at end ifinfo
+ at end ifnothtml
+
+ at tex
+We define several metrics to quantify the quantization error.
+The mean error~$\pslavg$ and mean absolute error~$\pslmebs$ incurred in
+quantizing a variable from its true values~$\xxx_{\idx}$ to quantized
+values~$\qqq_{\idx}$ are, respectively,
+$$
+\pslavg = {\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx}
+\mskflg_{\idx} \wgt_{\idx} ( \xxx_{\idx} - \qqq_{\idx} ) \over
+\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx} \mskflg_{\idx} \wgt_{\idx}}\qquad\hbox{and}\qquad
+\pslmebs = {\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx}
+\mskflg_{\idx} \wgt_{\idx} | \xxx_{\idx} - \qqq_{\idx} | \over
+\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx} \mskflg_{\idx} \wgt_{\idx}}  
+$$
+where $\mssflg_{\idx}$ is~1 unless $\xxx_{\idx}$~equals the missing
+value, $\mskflg_{\idx}$ is~1 unless $\xxx_{\idx}$~is masked, and
+$\wgt_{\idx}$~is the weight.
+The maximum and minimum errors $\pslmax$ and~$\pslmin$ are both signed 
+$$
+\pslmax = {\rm max}(\xxx_{\idx} - \qqq_{\idx})\qquad\hbox{and}\qquad
+\pslmin = {\rm min}(\xxx_{\idx} - \qqq_{\idx})
+$$
+while the maximum and minimum absolute errors $\pslmabs$ are positive-definite.
+$$
+\pslmabs = {\rm max}|\xxx_{\idx} - \qqq_{\idx}| = {\rm max}(|\pslmax|,|\pslmin|)
+$$
+$$
+\pslmibs = {\rm min}|\xxx_{\idx} - \qqq_{\idx}| = {\rm min}(|\pslmax|,|\pslmin|)
+$$
+Typically $\pslmibs = 0$ for quantization, since many exact values
+need no quantization.
+Bit-shifting zeros into the least significant bits (@acronym{LSB}s)
+always underestimates true values so that $\pslmax = 0$.
+Conversely, bit-shifting ones into the @acronym{LSB}s always
+overestimates true values so that $\pslmin = 0$. 
+Our @acronym{NSD} algorithm is balanced because it alternates
+bit-shifting zeroes and ones.
+Balanced algorithms should yield $\pslmax \approx -\pslmin$,
+$\pslmabs \approx \pslmibs$, and $\pslavg \approx 0$.
+
+The three most important error metrics for quantization are 
+$\pslmabs$, $\pslmebs$, and~$\pslavg$.
+The upper bound (worst case) quantization performance is~$\pslmabs$.
+$\pslmebs$~measures the absolute mean accuracy of quantization, and does
+not allow positive and negative offsets to compensate eachother and
+conceal poor performance.
+The difference bewtween~$\pslmabs$ and~$\pslmebs$ indicates how much 
+of an outlier the worst case is.
+The mean accuracy~$\pslavg$ indicates whether statistical properties of 
+quantized numbers will accurately reflect the true values. 
+ at end tex
+
+All three metrics are expressed in terms of the fraction of the ten's
+place occupied by the @acronym{LSD}.
+If the @acronym{LSD} is the hundreds digit or the thousandths digit,
+then the metrics are fractions @w{of 100}, or @w{of 1/100},
+respectively. 
+ at acronym{PPC} algorithms should produce maximum absolute errors no
+greater @w{than 0.5} in these units.
+If the @acronym{LSD} is the hundreds digit, then quantized versions of
+true values will be within fifty of the true value.
+It is much easier to satisfy this tolerance for a true value 
+ at w{of 100} (only 50% accuracy required) than @w{for 999} 
+ at w{(5% accuracy} required). 
+Thus the minimum accuracy guaranteed for @math{@var{nsd}=1} ranges
+from 5--50%.
+For this reason, the best and worst cast performance usually occurs for
+true values whose @acronym{LSD} value is close to one and nine,
+respectively. 
+Of course most users prefer @math{@var{prc} > 1} because accuracies
+increase exponentially with @var{prc}.
+Continuing the previous example to @math{@var{prc}=2}, 
+quantized versions of true values from 1000--9999 will also be 
+ at w{within 50} of the true value, i.e., have accuracies from 0.5--5%.
+In other words, only two significant digits are necessary to guarantee 
+better @w{than 5%} accuracy in quantization. 
+We recommend that dataset producers and users consider quantizing
+datasets with @math{@var{nsd}=3}.
+This guarantees accuracy of 0.05--0.5% for individual values.
+Statistics computed from ensembles of quantized values will, assuming
+the mean error 
+ at set flg
+ at tex
+$\pslavg$
+ at clear flg
+ at end tex
+ at ifinfo
+ at math{@var{Emean}}
+ at clear flg
+ at end ifinfo
+ at ifset flg
+ at c texi2html does not like @math{}
+ at var{Emean}
+ at clear flg
+ at end ifset
+is small, have much better accuracy @w{than 0.5%}.
+This accuracy is the most that can be justified for many applications.   
+
+To demonstrate these principles we conduct error analyses on an
+artificial, reproducible dataset, and on an actual dataset of
+observational analysis values. 
+ at footnote{The artificial dataset employed is one million evenly spaced
+values from 1.0--2.0.
+The analysis data are @math{N=13934592} values of the temperature field
+from the @acronym{NASA} @acronym{MERRA} analysis of 20130601.}
+The table summarizes quantization accuracy based on the three metrics.
+ at table @code
+ at item NSD
+Number of Significant Digits.
+ at item Emabs
+Maximum absolute error.
+ at item Emebs
+Mean absolute error.
+ at item Emean
+Mean error.
+ at end table
+
+ at ignore
+9.9692099683868690e+36f = 0 1111100 111100000000000000000000 NC_FILL_FLOAT
+2.3509885615147286E-38f = 0 0000000 111111111111111111111111 Recommended
+9.9692099683868690e+36  = 0 1000111100 11110000000000000000000000000000000000000000000000000 NC_FILL_DOUBLE
+2.84809453888921745415348453979E-306 = 0 0000000111 11111111111111111111111111111111111111111111111111111 Recommended
+
+2.22507385850720088902458687609E-308 = 0 0000000000 11111111111111111111111111111111111111111111111111111
+1.17549435082228737746264717725E-38  = 0 0111000000 11111111111111111111111111111111111111111111111111111
+1.17549435082228737746264717725E-38  = 0 0000000    100000000000000000000000
+
+# Accuracy tests
+
+# Satellite:
+ncks -3 -O -v T ${DATA}/hdf/MERRA300.prod.assim.inst3_3d_asm_Cp.20130601.nc ~/foo_T.nc
+ncatted -a scale_factor,,d,, -a add_offset,,d,, ~/foo_T.nc
+ncap2 -O -v -s 'ppc=T;nsd1=ppc;nsd2=ppc;nsd3=ppc;nsd4=ppc;nsd5=ppc;nsd6=ppc;nsd7=ppc' ~/foo_T.nc ~/foo_ppc_in.nc
+# Artificial double
+ncap2 -O -v -s 'defdim("dmn",1000000);ppc=array(1.0,1.e-6,$dmn);nsd1=ppc;nsd2=ppc;nsd3=ppc;nsd4=ppc;nsd5=ppc;nsd6=ppc;nsd7=ppc' ~/nco/data/in.nc ~/foo_ppc_in.nc
+# Artificial float
+ncap2 -O -v -s 'defdim("dmn",1000000);ppc=float(array(1.0,1.e-6,$dmn));nsd1=ppc;nsd2=ppc;nsd3=ppc;nsd4=ppc;nsd5=ppc;nsd6=ppc;nsd7=ppc' ~/nco/data/in.nc ~/foo_ppc_in.nc
+
+# nc3tonc4
+nc3tonc4 -o --quantize=nsd1=1,nsd2=2,nsd3=3,nsd4=4,nsd5=5,nsd6=6,nsd7=7 --quiet=1 ~/foo_ppc_in.nc ~/foo_ppc_out.nc
+# DSD
+ncks -O -C --ppc nsd1=.1 --ppc nsd2=.2 --ppc nsd3=.3 --ppc nsd4=.4 --ppc nsd5=.5 --ppc nsd6=.6 --ppc nsd7=.7 ~/foo_ppc_in.nc ~/foo_ppc_out.nc
+# NSD
+ncks -O -C --ppc nsd1=1 --ppc nsd2=2 --ppc nsd3=3 --ppc nsd4=4 --ppc nsd5=5 --ppc nsd6=6 --ppc nsd7=7 ~/foo_ppc_in.nc ~/foo_ppc_out.nc
+
+# Generic rounding test:
+ncbo -O -C ~/foo_ppc_out.nc ~/foo_ppc_in.nc ~/foo_ppc_dff.nc
+ncbo -O -C -y dvd ~/foo_ppc_dff.nc ~/foo_ppc_in.nc ~/foo_ppc_rat.nc
+ncap2 -O -v -s 'nsd1*=10;nsd2*=100;nsd3*=1000;nsd4*=10000;nsd5*=100000;nsd6*=1000000;nsd7*=10000000' ~/foo_ppc_rat.nc ~/foo_ppc_rat_scl.nc
+ncwa -O -C -y avg ~/foo_ppc_rat_scl.nc ~/foo_ppc_avg.nc
+ncwa -O -C -y max ~/foo_ppc_rat_scl.nc ~/foo_ppc_max.nc
+ncwa -O -C -y min ~/foo_ppc_rat_scl.nc ~/foo_ppc_min.nc
+ncwa -O -C -y mabs ~/foo_ppc_rat_scl.nc ~/foo_ppc_mabs.nc
+ncwa -O -C -y mebs ~/foo_ppc_rat_scl.nc ~/foo_ppc_mebs.nc
+ncwa -O -C -y mibs ~/foo_ppc_rat_scl.nc ~/foo_ppc_mibs.nc
+ at end ignore
+ at example
+Artificial Data: N=1000000 values in [1.0,2.0) in steps of 1.0e-6
+Single-Precision        Double-Precision   Single-Precision
+NSD Emabs Emebs Emean   Emabs Emebs Emean  DSD Emabs Emebs Emean
+ 1  0.31  0.11  4.1e-4  0.31  0.11  4.0e-4  1  0.30  0.11 -8.1e-4  
+ 2  0.39  0.14  6.8e-5  0.39  0.14  5.5e-5  2  0.39  0.14 -1.3e-4
+ 3  0.49  0.17  1.0e-6  0.49  0.17 -5.5e-7  3  0.49  0.17 -2.0e-5
+ 4  0.30  0.11  3.2e-7  0.30  0.11 -6.1e-6  4  0.30  0.11  5.1e-8
+ 5  0.37  0.13  3.1e-7  0.38  0.13 -5.6e-6  5  0.38  0.13  2.6e-6
+ 6  0.36  0.12 -4.4e-7  0.48  0.17 -4.1e-7  6  0.48  0.17  7.2e-6
+ 7  0.00  0.00  0.0     0.30  0.10  1.5e-7  7  0.00  0.00  0.0     
+
+Observational Analysis: N=13934592 values MERRA Temperature 20130601
+Single-Precision        
+NSD Emabs Emebs Emean   
+ 1  0.31  0.11  2.4e-3
+ 2  0.39  0.14  3.8e-4
+ 3  0.49  0.17 -9.6e-5 
+ 4  0.30  0.11  2.3e-3
+ 5  0.37  0.13  2.2e-3
+ 6  0.36  0.13  1.7e-2
+ 7  0.00  0.00  0.0     
+ at end example
+All results show that @acronym{PPC} quantization performs as expected.
+Absolute maximum errors @math{@var{Emabs} < 0.5} for all @var{prc}.
+For @math{1 <= @var{prc} <= 6}, quantization results in comparable
+maximum absolute and mean absolute errors @var{Emabs} and @var{Emebs},
+respectively. 
+Mean errors @var{Emean} are orders of magnitude smaller because 
+quantization produces over- and under-estimated values in balance.
+When @math{@var{prc}=7}, quantization of single-precision values is
+ineffective, because all available bits are used to represent the 
+maximum precision of seven digits.
+The maximum and mean absolute errors @var{Emabs} and @var{Emebs} are
+nearly identical across algorithms, precisions, and dataset types.
+This is consistent with both the artificial data and empirical data
+being random, and thus exercising equally strengths and weaknesses of
+the algorithms over the course of millions of input values.
+We generated artificial arrays with many different starting values
+and interval spacing and all gave qualitatively similar results.
+The results presented are the worst obtained.
+
+The artificial data has much smaller mean error @var{Emean} than the
+observational analysis. 
+The reason why is unclear.
+It may be because the temperature field is concentrated in particular
+ranges of values (and associated quantization errors) prevalent on
+Earth, e.g., @math{200 < @var{T} < 320}. 
+It is worth noting that the mean error @math{@var{Emean} < 0.01} for
+ at math{1 <= @var{prc} < 6}, and that @var{Emean} is typically at least 
+two or more orders of magnitude less than @var{Emabs}.
+Thus quantized values with precisions as low as @math{@var{prc}=1} 
+still yield highly significant statistics by contemporary scientific
+standards. 
+
+Testing shows that @acronym{PPC} quantization enhances compression of 
+typical climate datasets. 
+The degree of enhancement depends, of course, on the required
+precision. 
+Model results are often computed as @code{NC_DOUBLE} then archived 
+as @code{NC_FLOAT} to save space. 
+ at ignore
+# Table entries
+fl=${DATA}/dstmch90/dstmch90_clm.nc
+fl=${DATA}/hdf/b1850c5cn_doe_polar_merged_0_cesm1_2_0_HD+MAM4+tun2b.hp.e003.cam.h0.0001-01.nc
+fl=${DATA}/hdf/MERRA300.prod.assim.inst3_3d_asm_Cp.20130601.nc
+fl=${DATA}/hdf/OMI-Aura_L2-OMIAuraSO2_2012m1222-o44888_v01-00-2014m0107t114720.h5
+
+# ncks PPC only
+sz_rgn=`ls -l ${fl} | cut -d ' ' -f 5`
+fmt_fnc(){ gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}';} 
+cmd="ls -l ${fl}";sz_new=`${cmd} | cut -d ' ' -f 5`;fmt_fnc ${sz_rgn} ${sz_new}
+
+sz_new=`bzip2 -1 -f ${fl};ls -l ${fl}.bz2 | cut -d ' ' -f 5`;bunzip2 ${fl}.bz2;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`bzip2 -9 -f ${fl};ls -l ${fl}.bz2 | cut -d ' ' -f 5`;bunzip2 ${fl}.bz2;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 0 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 9 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -7 -L 0 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -7 -L 1 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=7 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=6 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=5 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=4 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=3 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=2 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -7 -L 1 --ppc default=4 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -7 -L 9 --ppc default=4 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -3 --ppc default=4 ${fl} ~/foo.nc;bzip2 -1 -f ~/foo.nc;ls -l ~/foo.nc.bz2 | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+ at end ignore
+ at html
+<a name="ppc_tbl_nc"></a> <!-- http://nco.sf.net/nco.html#ppc_tbl_nc -->
+ at end html
+ at cindex Burrows-Wheeler algorithm
+ at cindex @command{bzip2}
+This table summarizes the performance of lossless and lossy compression
+on two typical, or at least random, netCDF data files.  
+The files were taken from representative model-simulated and
+satellite-retrieved datasets.
+Only floating point data were compressed.
+No attempt was made to compress integer-type variables as they occupy an 
+insignificant fraction of every dataset.
+The columns are
+ at table @code
+ at item Type 
+File-type: 
+ at kbd{N3} for netCDF @code{CLASSIC},
+ at kbd{N4} for @code{NETCDF4}), 
+ at kbd{N7} for @code{NETCDF4_CLASSIC} (which comprises netCDF3
+data types and structures with netCDF4 storage features like
+compression),  
+ at kbd{H4} for @acronym{HDF4}, and
+ at kbd{H5} for @acronym{HDF5}.
+ at kbd{N4/7} means results apply to both @kbd{N4} and @kbd{N7} filetypes.
+ at item LLC
+Type of lossless compression employed, if any.
+Bare numbers refer to the strength of the @acronym{DEFLATE} algorithm
+employed internally by netCDF4/@acronym{HDF5}, while numbers prefixed
+with @kbd{B} refer to the block size employed by the Burrows-Wheeler
+algorithm in @command{bzip2}. 
+ at item PPC 
+Number of significant digits retained by the precision-preserving
+compression @acronym{NSD} algorithm.  
+ at item Pck 
+ at kbd{Y} if the default @command{ncpdq} packing algorithm (convert
+floating point types to @code{NC_SHORT}) was employed.
+A dash (@kbd{-}) indicates the associated compression feature
+was not employed.
+ at item Size
+Resulting filesize in @acronym{MB}.
+ at item %
+Compression ratio, i.e., resulting filesize relative to original size,
+in percent. 
+In some cases the original files is already losslessly compressed. 
+The compression ratios reported are relative to the size of the original
+file as distributed, not as optimally losslessly compressed. 
+ at end table
+ at example
+# dstmch90_clm.nc
+Type LLC PPC Pck  Size   %    Flags and Notes
+  N3   -   -  -   34.7 100.0  Original is not compressed
+  N3  B1   -  -   28.9  83.2  bzip2 -1
+  N3  B9   -  -   29.3  84.4  bzip2 -9
+  N7   -   -  -   35.0 101.0     
+  N7   1   -  -   28.2  81.3  -L 1
+  N7   9   -  -   28.0  80.8  -L 9
+  N7   -   -  Y   17.6  50.9  ncpdq -L 0
+  N7   1   -  Y    7.9  22.8  ncpdq -L 1
+  N7   1   7  -   28.2  81.3  --ppc default=7
+  N7   1   6  -   27.9  80.6  --ppc default=6
+  N7   1   5  -   25.9  74.6  --ppc default=5
+  N7   1   4  -   22.3  64.3  --ppc default=4
+  N7   1   3  -   18.9  54.6  --ppc default=3
+  N7   1   3  -   14.5  43.2  --ppc default=2
+  N7   1   4  Y    7.9  22.9  ncpdq --ppc default=4
+  N7   9   4  Y    7.7  22.1  ncpdq -L 9 --ppc default=4
+  N3  B1   4  Y    6.3  18.1  ncpdq --ppc default=4 bzip2 -1
+
+# b1850c5cn_doe_polar_merged_0_cesm1_2_0_HD+MAM4+tun2b.hp.e003.cam.h0.0001-01.nc
+Type LLC PPC Pck  Size   %    Flags and Notes
+  N3   -   -  -  119.8 100.0  Original is not compressed
+  N3  B1   -  -   84.2  70.3  bzip2 -1
+  N3  B9   -  -   84.8  70.9  bzip2 -9
+  N7   -   -  -  120.5 100.7     
+  N7   1   -  -   82.6  69.0  -L 1
+  N7   9   -  -   82.1  68.6  -L 9
+  N7   -   -  Y   60.7  50.7  ncpdq -L 0
+  N7   1   -  Y   26.0  21.8  ncpdq -L 1
+  N7   1   7  -   82.6  69.0  --ppc default=7
+  N7   1   6  -   81.9  68.4  --ppc default=6
+  N7   1   5  -   77.2  64.5  --ppc default=5
+  N7   1   4  -   69.0  57.6  --ppc default=4
+  N7   1   3  -   59.3  49.5  --ppc default=3
+  N7   1   2  -   49.5  41.3  --ppc default=2
+  N7   1   4  Y   26.3  21.9  ncpdq --ppc default=4
+  N7   9   4  Y   25.6  21.4  ncpdq -L 9 --ppc default=4
+  N3  B1   4  Y   20.9  17.4  ncpdq --ppc default=4 bzip2 -1
+
+# MERRA300.prod.assim.inst3_3d_asm_Cp.20130601.hdf
+Type LLC PPC Pck  Size   %    Flags and Notes
+  H4   5   -  -  244.3 100.0  Original is compressed
+  H4  B1   -  -  244.7 100.1  bzip2 -1
+  N4   5   -  -  214.5  87.8
+  N7   5   -  -  210.6  86.2  
+  N4  B1   -  -  215.4  88.2  bzip2 -1
+  N4  B9   -  -  214.8  87.9  bzip2 -9
+  N3   -   -  -  617.1 252.6
+N4/7   -   -  -  694.0 284.0  -L 0
+N4/7   1   -  -  223.2  91.3  -L 1
+N4/7   9   -  -  207.3  84.9  -L 9
+N4/7   -   -  Y  347.1 142.1  ncpdq -L 0
+N4/7   1   -  Y  133.6  54.7  ncpdq -L 1
+N4/7   1   7  -  223.1  91.3  --ppc default=7
+N4/7   1   6  -  225.1  92.1  --ppc default=6
+N4/7   1   5  -  221.4  90.6  --ppc default=5
+N4/7   1   4  -  201.4  82.4  --ppc default=4
+N4/7   1   3  -  185.3  75.9  --ppc default=3
+N4/7   1   2  -  150.0  61.4  --ppc default=2
+N4/7   1   4  Y  133.6  54.7  ncpdq -L 1 --ppc default=4
+N4/7   9   4  Y  127.0  52.0  ncpdq -L 9 --ppc default=4
+  N3  B1   4  Y  114.0  46.7  ncpdq --ppc default=4 bzip2 -1
+
+# OMI-Aura_L2-OMIAuraSO2_2012m1222-o44888_v01-00-2014m0107t114720.h5
+Type LLC PPC Pck  Size   %    Flags and Notes
+  H5   5   -  -   29.5 100.0  Original is compressed
+  H5  B1   -  -   29.3  99.6  bzip2 -1
+  N4   5   -  -   29.5 100.0
+  N4  B1   -  -   29.3  99.6  bzip2 -1
+  N4  B9   -  -   29.3  99.4  bzip2 -9
+  N4   -   -  -   50.7 172.3  -L 0
+  N4   1   -  -   29.8 101.3  -L 1
+  N4   9   -  -   29.4  99.8  -L 9
+  N4   -   -  Y   27.7  94.0  ncpdq -L 0
+  N4   1   -  Y   12.9  43.9  ncpdq -L 1
+  N4   1   7  -   29.7 100.7  --ppc default=7
+  N4   1   6  -   29.7 100.8  --ppc default=6
+  N4   1   5  -   27.3  92.8  --ppc default=5
+  N4   1   4  -   23.8  80.7  --ppc default=4
+  N4   1   3  -   20.3  69.0  --ppc default=3
+  N4   1   2  -   15.1  51.2  --ppc default=2
+  N4   1   4  Y   13.0  44.0  ncpdq -L 1 --ppc default=4
+  N4   9   4  Y   12.5  42.5  ncpdq -L 9 --ppc default=4
+ at end example
+
+ at cindex @acronym{NCAR}
+ at cindex @acronym{CAM}
+ at cindex @acronym{GCM}
+A selective, per-variable approach to @acronym{PPC} yields the
+best balance of precision and compression yet requires the dataset
+producer to understand the intrinsic precision of each variable.
+Such a specification for a @acronym{GCM} dataset might look like this 
+(using names for the @acronym{NCAR} @acronym{CAM} model):
+ at example
+# Be conservative on non-explicit quantities, so default=5
+# Some quantities deserve four significant digits
+# Many quantities, such as aerosol optical depths and burdens, are 
+# highly uncertain and only useful to three significant digits.
+ncks -7 -O \
+--ppc default=5 \
+--ppc AN.?,AQ.?=4 \
+--ppc AER.?,AOD.?,ARE.?,AW.?,BURDEN.?=3 \
+ncar_cam.nc ~/foo.nc
+ at end example
+
+ at html
 <a name="dfl_lvl"></a> <!-- http://nco.sf.net/nco.html#dfl_lvl -->
 <a name="dfl"></a> <!-- http://nco.sf.net/nco.html#dfl -->
 <a name="lz"></a> <!-- http://nco.sf.net/nco.html#lz -->
@@ -6742,7 +7608,7 @@ variables.
 <a name="deflate"></a> <!-- http://nco.sf.net/nco.html#deflate -->
 <a name="deflation"></a> <!-- http://nco.sf.net/nco.html#deflation -->
 @end html
- at node Deflation, MD5 digests, Chunking, Common features
+ at node Deflation, MD5 digests, Compression, Shared features
 @section Deflation
 @cindex @code{-L}
 @cindex @code{--deflate}
@@ -6758,22 +7624,24 @@ Short options: @samp{-L}@*
 Long options: @samp{--dfl_lvl}, @samp{--deflate}@*  
 @end cartouche
 
-All @acronym{NCO} operators that define variables support 
-the netCDF4 feature of storing variables compressed with Lempel-Ziv
-deflation. 
-The Lempel-Ziv algorithm is a lossless data compression technique.
-Activate this deflation with the @code{-L @var{dfl_lvl}} short option
-(or with the same argument to the @samp{--dfl_lvl} or @samp{--deflate} 
-long options).
-Specify the deflation level @var{dfl_lvl} on a scale from 
-no deflation (@var{dfl_lvl = 0}) to maximum deflation 
-(@var{dfl_lvl = 9}).
+All @acronym{NCO} operators that define variables support the netCDF4
+feature of storing variables compressed with the lossless
+ at acronym{DEFLATE} compression algorithm.
+ at acronym{DEFLATE} combines the Lempel-Ziv encoding with Huffman coding.
+The specific version used by netCDF4/@acronym{HDF5} is that implemented
+in the @command{zlib} library used by @command{gzip}.
+Activate deflation with the @code{-L @var{dfl_lvl}} short option (or
+with the same argument to the @samp{--dfl_lvl} or @samp{--deflate} long
+options). 
+Specify the deflation level @var{dfl_lvl} on a scale from no deflation
+(@var{dfl_lvl = 0}) to maximum deflation (@var{dfl_lvl = 9}).
+Under the hood, this selects the compression blocksize.
 Minimal deflation (@var{dfl_lvl = 1}) achieves considerable storage
 compression with little time penalty.
 Higher deflation levels require more time for compression.
 File sizes resulting from minimal (@var{dfl_lvl = 1}) and maximal   
-(@var{dfl_lvl = 9}) deflation levels typically differ by a few
-percent in size. 
+(@var{dfl_lvl = 9}) deflation levels typically differ by less 
+ at w{than 10%} in size. 
 
 To compress an entire file using deflation, use
 @example
@@ -6804,7 +7672,7 @@ ncpdq -4 -L 9 in.nc out.nc # Deflated packing  (~80% compression)
 <a name="integrity"></a> <!-- http://nco.sf.net/nco.html#integrity -->
 <a name="security"></a> <!-- http://nco.sf.net/nco.html#security -->
 @end html
- at node MD5 digests, Buffer sizes, Deflation, Common features
+ at node MD5 digests, Buffer sizes, Deflation, Shared features
 @section MD5 digests
 @cindex @code{--md5_digest}
 @cindex @code{--md5_dgs}
@@ -6906,7 +7774,7 @@ We welcome feedback and suggestions from users.
 <a name="bfr"></a> <!-- http://nco.sf.net/nco.html#bfr -->
 <a name="buffer"></a> <!-- http://nco.sf.net/nco.html#buffer -->
 @end html
- at node Buffer sizes, RAM disks, MD5 digests, Common features
+ at node Buffer sizes, RAM disks, MD5 digests, Shared features
 @section Buffer sizes
 @cindex @code{--bfr_sz_hnt}
 @cindex Buffer sizes
@@ -6951,7 +7819,7 @@ ncks: INFO nc__open() opened file with buffer size = 2097152 bytes
 <a name="ram"></a> <!-- http://nco.sf.net/nco.html#ram -->
 <a name="diskless"></a> <!-- http://nco.sf.net/nco.html#diskless -->
 @end html
- at node RAM disks, Packed data, Buffer sizes, Common features
+ at node RAM disks, Packed data, Buffer sizes, Shared features
 @section RAM disks
 @cindex @code{--ram_all}
 @cindex @code{--create_ram}
@@ -7079,7 +7947,7 @@ This is accomplished with the @samp{--no_tmp_fl} switch
 <a name="pck"></a> <!-- http://nco.sf.net/nco.html#pck -->
 <a name="pack"></a> <!-- http://nco.sf.net/nco.html#pack -->
 @end html
- at node Packed data, Operation Types, RAM disks, Common features
+ at node Packed data, Operation Types, RAM disks, Shared features
 @section Packed data
 @cindex packing
 @cindex unpacking
@@ -7297,7 +8165,7 @@ Pack and unpack individual variables with @command{ncpdq} and the
 @html
 <a name="op_typ"></a> <!-- http://nco.sf.net/nco.html#op_typ -->
 @end html
- at node Operation Types, Type Conversion, Packed data, Common features
+ at node Operation Types, Type Conversion, Packed data, Shared features
 @section Operation Types
 @cindex operation types
 @cindex @code{avg}
@@ -7305,6 +8173,9 @@ Pack and unpack individual variables with @command{ncpdq} and the
 @cindex @code{avgsqr}
 @cindex @code{min}
 @cindex @code{max}
+ at cindex @code{mabs}
+ at cindex @code{mebs}
+ at cindex @code{mibs}
 @cindex @code{rmssdn}
 @cindex @code{rms}
 @cindex @code{ttl}
@@ -7337,9 +8208,15 @@ Square of the mean
 @item avgsqr
 Mean of sum of squares
 @item max
-Maximium value
+Maximum value
 @item min
-Minimium value
+Minimum value
+ at item mabs
+Maximum absolute value
+ at item mebs
+Mean absolute value
+ at item mabs
+Minimum absolute value
 @item rms
 Root-mean-square (normalized by @var{N})
 @item rmssdn
@@ -7479,6 +8356,27 @@ $$
 $$
 Thus the minima and maxima are determined after any weights are applied.
 
+The minimum absolute value of~$\xxx$ (@code{-y mibs}) is 
+$$
+\bar \xxx_{\jjj} = \min [ \mssflg_{1} \mskflg_{1} \wgt_{1} |\xxx_{1}|,
+\mssflg_{2} \mskflg_{2} \wgt_{2} |\xxx_{2}|, \ldots, \mssflg_{\lmnnbr} 
+\mskflg_{\lmnnbr} \wgt_{\lmnnbr} |\xxx_{\lmnnbr}| ] 
+$$
+Analogously, the maximum absolute value of~$\xxx$ (@code{-y mabs}) is 
+$$
+\bar \xxx_{\jjj} = \max [ \mssflg_{1} \mskflg_{1} \wgt_{1} |\xxx_{1}|,
+\mssflg_{2} \mskflg_{2} \wgt_{2} |\xxx_{2}|, \ldots, \mssflg_{\lmnnbr} 
+\mskflg_{\lmnnbr} \wgt_{\lmnnbr} |\xxx_{\lmnnbr}| ] 
+$$
+Thus the minimum and maximum absolute values are determined after any weights are applied.
+The mean absolute value of~$\xxx$ (@code{-y mebs}) is 
+$$
+\bar \xxx_{\jjj} = \left( {\sum_{\idx=1}^{\idx=\lmnnbr}
+\mssflg_{\idx} \mskflg_{\idx} \wgt_{\idx} |\xxx_{\idx}| \over
+\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx} \mskflg_{\idx} \wgt_{\idx}} 
+\right)^{2}    
+$$
+
 The square of the mean value of~$\xxx$ (@code{-y sqravg}) is 
 $$
 \bar \xxx_{\jjj} = \left( {\sum_{\idx=1}^{\idx=\lmnnbr}
@@ -7572,6 +8470,9 @@ defined in @acronym{NCO} please contact the @acronym{NCO} project
 EXAMPLES
 
 @html
+<a name="mabs"></a> <!-- http://nco.sf.net/nco.html#mabs -->
+<a name="mebs"></a> <!-- http://nco.sf.net/nco.html#mebs -->
+<a name="mibs"></a> <!-- http://nco.sf.net/nco.html#mibs -->
 <a name="min"></a> <!-- http://nco.sf.net/nco.html#min -->
 <a name="max"></a> <!-- http://nco.sf.net/nco.html#max -->
 <a name="rms"></a> <!-- http://nco.sf.net/nco.html#rms -->
@@ -7580,7 +8481,7 @@ EXAMPLES
 Suppose you wish to examine the variable @code{prs_sfc(time,lat,lon)} 
 which contains a time series of the surface pressure as a function of
 latitude and longitude.
-Find the minimium value of @code{prs_sfc} over all dimensions:
+Find the minimum value of @code{prs_sfc} over all dimensions:
 @example
 ncwa -y min -v prs_sfc in.nc foo.nc 
 @end example
@@ -7612,7 +8513,7 @@ These operations work as expected in multi-file operators.
 Suppose that @code{prs_sfc} is stored in multiple timesteps per file
 across multiple files, say @file{jan.nc}, @file{feb.nc},
 @file{march.nc}.  
-We can now find the three month maximium surface pressure at every point.
+We can now find the three month maximum surface pressure at every point.
 @example
 nces -y max -v prs_sfc jan.nc feb.nc march.nc out.nc
 @end example
@@ -7713,7 +8614,7 @@ less required by the @command{ncbo} operation in the third step.
 @html
 <a name="typ_cnv"></a> <!-- http://nco.sf.net/nco.html#typ_cnv -->
 @end html
- at node Type Conversion, Batch Mode, Operation Types, Common features
+ at node Type Conversion, Batch Mode, Operation Types, Shared features
 @section Type Conversion
 @cindex type conversion
 @cartouche
@@ -7931,23 +8832,25 @@ Single-precision (four-byte) numbers contain about seven significant
 figures, while double-precision contain about sixteen.
 More, err, precisely, the @acronym{IEEE} single-precision representation
 gives from @w{6 to 9} significant decimal digits precision
- at footnote{According to Wikipedia's summary of @acronym{IEEE} standard
-754, ``If a decimal string with at most 6 significant digits is
-converted to @acronym{IEEE} 754 single-precision and then converted back to the
-same number of significant decimal, then the final string should match
-the original; and if an @acronym{IEEE} 754 single-precision is converted to a
-decimal string with at least 9 significant decimal and then converted
-back to single, then the final number must match the original''.}.
+ at footnote{According to Wikipedia's summary of @acronym{IEEE} 
+ at w{standard 754}, ``If a decimal string with at most @w{6 significant} 
+digits is converted to @w{@acronym{IEEE} 754} single-precision and then
+converted back to the same number of significant decimal, then the final
+string should match the original; and if an @w{@acronym{IEEE} 754}
+single-precision is converted to a decimal string with at @w{leastn 9}
+significant decimal and then converted back to single, then the final
+number must match the original''.}. 
 And the @acronym{IEEE} double-precision representation
 gives from @w{15 to 17} significant decimal digits precision
- at footnote{According to Wikipedia's summary of @acronym{IEEE} standard
-754, ``If a decimal string with at most 15 significant digits is
-converted to @acronym{IEEE} 754 double-precision representation and then converted
-back to a string with the same number of significant digits, then the
-final string should match the original; and if an @acronym{IEEE} 754 double
-precision is converted to a decimal string with at least 17 significant
-digits and then converted back to double, then the final number must
-match the original''.}. 
+ at footnote{According to Wikipedia's summary of @acronym{IEEE} 
+ at w{standard 754}, ``If a decimal string with at most @w{15 significant}
+digits is converted to @w{@acronym{IEEE} 754} double-precision
+representation and then converted back to a string with the same number
+of significant digits, then the final string should match the original;
+and if an @w{@acronym{IEEE} 754} double precision is converted to a
+decimal string with at least @w{17 significant} digits and then
+converted back to double, then the final number must match the
+original''.}.  
 Hence double-precision numbers represent about nine digits more
 precision than single-precision numbers.
 
@@ -8347,7 +9250,7 @@ ncap2 -s 'tpt=short(tpt);prs=double(prs)' in.nc out.nc
 <a name="ovr"></a> <!-- http://nco.sf.net/nco.html#ovr -->
 <a name="-O"></a> <!-- http://nco.sf.net/nco.html#-O -->
 @end html
- at node Batch Mode, History Attribute, Type Conversion, Common features
+ at node Batch Mode, History Attribute, Type Conversion, Shared features
 @section Batch Mode
 @cindex batch mode
 @cindex overwriting files
@@ -8387,7 +9290,7 @@ already contain the appended dimensions.
 <a name="history"></a> <!-- http://nco.sf.net/nco.html#history -->
 <a name="-h"></a> <!-- http://nco.sf.net/nco.html#-h -->
 @end html
- at node History Attribute, File List Attributes, Batch Mode, Common features
+ at node History Attribute, File List Attributes, Batch Mode, Shared features
 @section History Attribute
 @cindex @code{history}
 @cindex timestamp
@@ -8434,7 +9337,7 @@ Note that the @samp{-h} switch also turns off writing the
 @html
 <a name="fl_lst_in_att"></a> <!-- http://nco.sf.net/nco.html#fl_lst_in_att -->
 @end html
- at node File List Attributes, CF Conventions, History Attribute, Common features
+ at node File List Attributes, CF Conventions, History Attribute, Shared features
 @section File List Attributes
 @cindex @code{nco_input_file_list}
 @cindex @code{nco_input_file_number}
@@ -8485,7 +9388,7 @@ may amount to many thousands of filenames in a metadata attribute.
 <a name="cnv_CF"></a> <!-- http://nco.sf.net/nco.html#cnv_CF -->
 <a name="cnv_CCSM"></a> <!-- http://nco.sf.net/nco.html#cnv_CCSM -->
 @end html
- at node CF Conventions, ARM Conventions, File List Attributes, Common features
+ at node CF Conventions, ARM Conventions, File List Attributes, Shared features
 @section @acronym{CF} Conventions
 @cindex @acronym{CF} conventions
 @cindex @acronym{CCSM} conventions
@@ -8611,7 +9514,7 @@ or alter the @code{Conventions} attribute.
 <a name="cnv_CF_bnd"></a> <!-- http://nco.sf.net/nco.html#cnv_CF_bnd -->
 <a name="bnd"></a> <!-- http://nco.sf.net/nco.html#bnd -->
 @end html
- at cindex @code{bounds}
+ at cindex @code{bounds} attribute
 @cindex bounds convention
 As of @acronym{NCO} version 4.0.8 (April, 2011), @acronym{NCO} 
 supports the @acronym{CF} @code{bounds} convention for cell boundaries
@@ -8634,7 +9537,7 @@ Bounds are subject to the user-specified override switches
 <a name="cnv_CF_ncl"></a> <!-- http://nco.sf.net/nco.html#cnv_CF_ncl -->
 <a name="ncl"></a> <!-- http://nco.sf.net/nco.html#ncl -->
 @end html
- at cindex @code{ancillary_variables}
+ at cindex @code{ancillary_variables} attribute
 @cindex ancillary variables convention
 As of @acronym{NCO} version 4.4.5 (July, 2014), @acronym{NCO} 
 supports the @acronym{CF} @code{ancillary_variables} convention for 
@@ -8719,7 +9622,7 @@ These options are only available in the operators @command{ncwa} and
 @html
 <a name="cnv_ARM"></a> <!-- http://nco.sf.net/nco.html#cnv_ARM -->
 @end html
- at node ARM Conventions, Operator Version, CF Conventions, Common features
+ at node ARM Conventions, Operator Version, CF Conventions, Shared features
 @section @acronym{ARM} Conventions
 @cindex @acronym{ARM} conventions
 @cindex @code{time_offset}
@@ -8770,7 +9673,7 @@ whenever these @acronym{ARM}-specific procedures are executed.
 <a name="vrs"></a> <!-- http://nco.sf.net/nco.html#vrs -->
 <a name="version"></a> <!-- http://nco.sf.net/nco.html#version -->
 @end html
- at node Operator Version,  , ARM Conventions, Common features
+ at node Operator Version,  , ARM Conventions, Shared features
 @section Operator Version
 @cindex version
 @cindex @acronym{RCS}
@@ -8803,8 +9706,8 @@ This tells you that @command{ncks} contains all patches up to version
 @html
 <a name="rfr"></a> <!-- http://nco.sf.net/nco.html#rfr -->
 @end html
- at node Operator Reference Manual, Contributing, Common features, Top
- at chapter Operator Reference Manual
+ at node Reference Manual, Contributing, Shared features, Top
+ at chapter Reference Manual
 
 This chapter presents reference pages for each of the operators
 individually. 
@@ -8812,7 +9715,7 @@ The operators are presented in alphabetical order.
 @cindex command line switches
 All valid command line switches are included in the syntax statement.
 Recall that descriptions of many of these command line switches are
-provided only in @ref{Common features}, to avoid redundancy.
+provided only in @ref{Shared features}, to avoid redundancy.
 Only options specific to, or most useful with, a particular operator are 
 described in any detail in the sections below.  
 
@@ -8836,7 +9739,7 @@ described in any detail in the sections below.
 <a name="ncap"></a> <!-- http://nco.sf.net/nco.html#ncap -->
 <a name="ncap2"></a> <!-- http://nco.sf.net/nco.html#ncap2 -->
 @end html
- at node ncap2 netCDF Arithmetic Processor, ncatted netCDF Attribute Editor, Operator Reference Manual, Operator Reference Manual
+ at node ncap2 netCDF Arithmetic Processor, ncatted netCDF Attribute Editor, Reference Manual, Reference Manual
 @section @command{ncap2} netCDF Arithmetic Processor
 @cindex parser
 @cindex lexer
@@ -9226,7 +10129,11 @@ RDM2=RDM <<  90s  // 1, 9, 36, 84, 90, 90, 84, 36, 9, 1 int
 @cindex @code{defdim()}
 Dimensions are defined in Output using the @code{defdim()} function.
 @example
-defdim("cnt",10);
+defdim("cnt",10); # Dimension size is fixed by default
+defdim("cnt",10,NC_UNLIMITED); # Dimension is unlimited (record dimension)
+defdim("cnt",10,0); # Dimension is unlimited (record dimension)
+defdim("cnt",10,1); # Dimension size is fixed
+defdim("cnt",10,737); # All non-zero values indicate dimension size is fixed
 @end example
 
 This dimension name must then be prefixed with a dollar-sign @samp{$}
@@ -9961,6 +10868,15 @@ Maximum value
 @item min()
 @cindex min()
 Minimum value
+ at item mabs()
+ at cindex mabs()
+Maximum absolute value
+ at item mebs()
+ at cindex mebs()
+Mean absolute value
+ at item mibs()
+ at cindex mibs()
+Minimum absolute value
 @item rms()
 Root-mean-square (normalize by @var{N})
 @item rmssdn()
@@ -10049,7 +10965,7 @@ lat_2D_rrg_new=0,90,-30,30,-30,30,-90,0
 
 @sp 1
 @noindent @strong{Type Conversion Methods @*}
- at noindent These methods allow @command{ncap2} to convert variables and attributes to the different netcdf types. For more details on automatic and manual type conversion see (@pxref{Type Conversion}). You can only use the new netCDF4 types if you have compiled/links @acronym{NCO} with the netCDF4 library and the Output file is HDF5.
+ at noindent These methods allow @command{ncap2} to convert variables and attributes to the different netcdf types. For more details on automatic and manual type conversion see (@pxref{Type Conversion}). You may only use the new netCDF4 types if you have compiled/links @acronym{NCO} with the netCDF4 library and the Output file is HDF5.
 
 @table @code
 @item @strong{netCDF3/4 Types}
@@ -11595,16 +12511,16 @@ print(dmin);print(dmax);
 
 @node GSL random number generation, Examples ncap2, GSL statistics, ncap2 netCDF Arithmetic Processor
 @subsection GSL random number generation
-The @acronym{GSL} library has a large number of random number generators. In addition there are a large set of functions for turning uniform random numbers into discrete or continuous probabilty distributions. The random number generator algorithms vary in terms of quality numbers output, speed of execution and maximium number output. For more information see the @acronym{GSL} documentation. The algorithm and seed are set via environment variables, these are picked up by the @code{ncap2} code.
+The @acronym{GSL} library has a large number of random number generators. In addition there are a large set of functions for turning uniform random numbers into discrete or continuous probabilty distributions. The random number generator algorithms vary in terms of quality numbers output, speed of execution and maximum number output. For more information see the @acronym{GSL} documentation. The algorithm and seed are set via environment variables, these are picked up by the @code{ncap2} code.
 
 @noindent @strong{Setup} @*  
 The number algorithm is set by the environment variable @code{GSL_RNG_TYPE}. If this variable isn't set then the default rng algorithm is gsl_rng_19937. The seed is set with the environment variable @code{GSL_RNG_SEED}. The following wrapper functions in ncap2 provide information about the chosen algorithm. @* 
 
 @table @code
 @item gsl_rng_min() 
-the minimium value returned by the rng algorithm.
+the minimum value returned by the rng algorithm.
 @item gsl_rng_max()
-the maximium value returned by the rng algorithm. 
+the maximum value returned by the rng algorithm. 
 @end table
 
 @noindent @strong{Uniformly Distributed Random Numbers} 
@@ -11612,7 +12528,7 @@ the maximium value returned by the rng algorithm.
 @item gsl_rng_get(var_in)
 This function returns var_in with integers from the chosen rng algorithm. The min and max values depend uoon the chosen rng algorthm.
 @item gsl_rng_uniform_int(var_in)
-This function returns var_in with random integers from 0 to n-1. The value n must be less than or equal to the maximium value of the chosen rng algorithm. 
+This function returns var_in with random integers from 0 to n-1. The value n must be less than or equal to the maximum value of the chosen rng algorithm. 
 @item gsl_rng_uniform(var_in)
 This function returns var_in with double-precision numbers in the range [0.0,1). The range includes 0.0 and excludes 1.0.
 @item gsl_rng_uniform_pos(var_in)
@@ -11634,14 +12550,14 @@ a2 = 1, 1, 6, 9, 11, 13, 13, 15, 16, 19 ;
 
 @end example
 
- at noindent The following example produces an @code{ncap2} runtime error. This is because the chose rng algorithm has a maximium value greater than @code{ NC_MAX_INT=2147483647 }; the wrapper functions to @code{gsl_rng_get()} and @code{gsl_rng_uniform_int()} return variable of type @code{NC_INT}. Please be aware of this when using random number distribution functions functions from the @acronym{GSL} library which return @code{unsigned int}. Examples of these are @code{gsl_ran_geometric()}  [...]
+ at noindent The following example produces an @code{ncap2} runtime error. This is because the chose rng algorithm has a maximum value greater than @code{ NC_MAX_INT=2147483647 }; the wrapper functions to @code{gsl_rng_get()} and @code{gsl_rng_uniform_int()} return variable of type @code{NC_INT}. Please be aware of this when using random number distribution functions functions from the @acronym{GSL} library which return @code{unsigned int}. Examples of these are @code{gsl_ran_geometric()} a [...]
 
 @example
 export GSL_RNG_TYPE=mt19937
 ncap2 -v -O -s 'a1[time]=0;a2=gsl_rng_get(a1);' in.nc foo.nc 
 @end example
 
- at noindent To find the maximium value of the chosen rng algorithm use the following code snippet.
+ at noindent To find the maximum value of the chosen rng algorithm use the following code snippet.
 @example
 ncap2 -v -O -s 'rng_max=gsl_rng_max();print(rng_max)' in.nc foo.nc
 @end example
@@ -12535,7 +13451,7 @@ netcdf-4.0 Final  2008/08/28@*
 @html
 <a name="ncatted"></a> <!-- http://nco.sf.net/nco.html#ncatted -->
 @end html
- at node ncatted netCDF Attribute Editor, ncbo netCDF Binary Operator, ncap2 netCDF Arithmetic Processor, Operator Reference Manual
+ at node ncatted netCDF Attribute Editor, ncbo netCDF Binary Operator, ncap2 netCDF Arithmetic Processor, Reference Manual
 @section @command{ncatted} netCDF Attribute Editor
 @cindex attributes
 @cindex attribute names
@@ -12605,8 +13521,12 @@ concatenated, e.g., by @command{ncrcat}, without losing information.
 To master @command{ncatted} one must understand the meaning of the
 structure that describes the attribute modification, @var{att_dsc} 
 specified by the required option @samp{-a} or @samp{--attribute}. 
-Each @var{att_dsc} contains five elements, which makes using
- at command{ncatted} somewhat complicated, yet powerful.
+This option is repeatable and may be used multiple time in a single
+ at command{ncatted} invocation to increase the efficiency of altering
+multiple attributes.
+Each @var{att_dsc} contains five elements.
+This makes using @command{ncatted} somewhat complicated, though
+powerful. 
 The @var{att_dsc} fields are in the following order:@* 
 
 @var{att_dsc} = @var{att_nm}, @var{var_nm}, @var{mode}, @var{att_type},
@@ -12644,8 +13564,7 @@ arguments.
 The description of these arguments follows in their order of
 appearance. 
 
-The value of @var{att_nm} is the name of the attribute you want to
-edit. 
+The value of @var{att_nm} is the name of the attribute to edit. 
 This meaning of this should be clear to all @command{ncatted} users.
 Recall, as mentioned above, that @var{var_nm} (but not @var{att_nm}) may
 be specified as a regular expression. 
@@ -12700,7 +13619,7 @@ effect.
 Create variable @var{var_nm} attribute @var{att_nm} with @var{att_val}
 if @var{att_nm} does not yet exist.  
 If @var{var_nm} already has an attribute @var{att_nm}, there is no
-effect. 
+effect, so the existing attribute is preserved without change.
 @item d
 @dfn{Delete}.
 Delete current @var{var_nm} attribute @var{att_nm}.
@@ -12914,7 +13833,7 @@ positive infinity and negative infinity
 @footnote{Arithmetic comparisons to NaN and NaN-like numbers always
 return False, contrary to the behavior of all other numbers.
 This is difficult to inuit, yet is the behavior defined for NaN by
- at acronym{IEEE} 754.
+ at w{@acronym{IEEE} 754}.
 Using NaN for the missing value in datasets is legal.
 We strongly discourage it.}. 
 One way to work-around this problem is to change @acronym{IEEE} NaNs to
@@ -13038,7 +13957,7 @@ omitted in batch scripts.
 <a name="ncmultiply"></a> <!-- http://nco.sf.net/nco.html#ncmultiply -->
 <a name="ncdivide"></a> <!-- http://nco.sf.net/nco.html#ncdivide -->
 @end html
- at node ncbo netCDF Binary Operator, nces netCDF Ensemble Statistics, ncatted netCDF Attribute Editor, Operator Reference Manual
+ at node ncbo netCDF Binary Operator, nces netCDF Ensemble Statistics, ncatted netCDF Attribute Editor, Reference Manual
 @section @command{ncbo} netCDF Binary Operator
 @findex ncbo
 @findex ncdiff
@@ -13478,7 +14397,7 @@ ncrcat t_anm_8589_??.nc t_anm_8589_0112.nc
 <a name="nces"></a> <!-- http://nco.sf.net/nco.html#nces -->
 <a name="ncea"></a> <!-- http://nco.sf.net/nco.html#ncea -->
 @end html
- at node nces netCDF Ensemble Statistics, ncecat netCDF Ensemble Concatenator, ncbo netCDF Binary Operator, Operator Reference Manual
+ at node nces netCDF Ensemble Statistics, ncecat netCDF Ensemble Concatenator, ncbo netCDF Binary Operator, Reference Manual
 @section @command{nces} netCDF Ensemble Statistics
 @cindex averaging data
 @cindex ensemble average
@@ -13492,7 +14411,7 @@ nces [-3] [-4] [-6] [-7] [-A] [-C] [-c]
 [-D @var{dbg}] [-d @var{dim},[@var{min}][,[@var{max}][,[@var{stride}]]] [-F]
 [-G @var{gpe_dsc}] [-g @var{grp}[, at dots{}]] [-h] [--hdf] [--hdr_pad @var{nbr}] 
 [-L @var{dfl_lvl}] [-l @var{path}] [-n @var{loop}] [--no_tmp_fl] [--nsm_fl|grp] [--nsm_sfx sfx]
-[-O] [-o @var{output-file}] [-p @var{path}] [-R] [-r] [--ram_all] [--rth_dbl|flt]
+[-O] [-o @var{output-file}] [-p @var{path}] [--ppc ...] [-R] [-r] [--ram_all] [--rth_dbl|flt]
 [-t @var{thr_nbr}] [--unn] [-v @var{var}[, at dots{}]] [-X ...] [-x] [-y @var{op_typ}]
 [@var{input-files}] [@var{output-file}]
 @end example
@@ -13702,7 +14621,7 @@ member in the first file.
 @html
 <a name="ncecat"></a> <!-- http://nco.sf.net/nco.html#ncecat -->
 @end html
- at node ncecat netCDF Ensemble Concatenator, ncflint netCDF File Interpolator, nces netCDF Ensemble Statistics, Operator Reference Manual
+ at node ncecat netCDF Ensemble Concatenator, ncflint netCDF File Interpolator, nces netCDF Ensemble Statistics, Reference Manual
 @section @command{ncecat} netCDF Ensemble Concatenator
 @cindex concatenation
 @cindex ensemble concatenation
@@ -13716,7 +14635,7 @@ ncecat [-3] [-4] [-6] [-7] [-A] [-C] [-c]
 [-D @var{dbg}] [-d @var{dim},[@var{min}][,[@var{max}][,[@var{stride}]]] [-F]
 [-G @var{gpe_dsc}] [-g @var{grp}[, at dots{}]] [--gag] [-h] [--hdf] [--hdr_pad @var{nbr}]
 [-L @var{dfl_lvl}] [-l @var{path}] [-M] [--md5_digest] [--mrd] [-n @var{loop}] [--no_tmp_fl] 
-[-O] [-o @var{output-file}] [-p @var{path}] [-R] [-r] [--ram_all] 
+[-O] [-o @var{output-file}] [-p @var{path}] [--ppc ...] [-R] [-r] [--ram_all] 
 [-t @var{thr_nbr}] [-u @var{ulm_nm}] [--unn] [-v @var{var}[, at dots{}]] [-X ...] [-x] 
 [@var{input-files}] [@var{output-file}]
 @end example
@@ -13732,7 +14651,7 @@ single output file using using one of two methods.
 @dfn{Group AGgregation} (@acronym{GAG}) stores @var{input-files} as top-level
 groups in the netCDF4 @var{output-file}.
 Record Aggregation (@acronym{RAG}) makes numerous assumptions about the
-structure of input files and Group Aggregation (@acronym{GAG}) makes
+structure of input files whereas Group Aggregation (@acronym{GAG}) makes
 none. 
 Both methods are described in detail below.
 Since @command{ncecat} aggregates all the contents of the input files,
@@ -13958,7 +14877,7 @@ of changing variable dimensionality, including the record dimension.
 @html
 <a name="ncflint"></a> <!-- http://nco.sf.net/nco.html#ncflint -->
 @end html
- at node ncflint netCDF File Interpolator, ncks netCDF Kitchen Sink, ncecat netCDF Ensemble Concatenator, Operator Reference Manual
+ at node ncflint netCDF File Interpolator, ncks netCDF Kitchen Sink, ncecat netCDF Ensemble Concatenator, Reference Manual
 @section @command{ncflint} netCDF File Interpolator
 @cindex interpolation
 @cindex adding data
@@ -13974,7 +14893,7 @@ ncflint [-3] [-4] [-6] [-7] [-A] [-C] [-c]
 [-D @var{dbg}] [-d @var{dim},[@var{min}][,[@var{max}][,[@var{stride}]]]
 [-F] [--fix_rec_crd] [-G @var{gpe_dsc}] [-g @var{grp}[, at dots{}]] [-h] [--hdr_pad @var{nbr}]
 [-i @var{var}, at var{val3}] [-L @var{dfl_lvl}] [-l @var{path}] [--no_tmp_fl] 
-[-O] [-o @var{file_3}] [-p @var{path}] [-R] [-r] [--ram_all] 
+[-O] [-o @var{file_3}] [-p @var{path}] [--ppc ...] [-R] [-r] [--ram_all] 
 [-t @var{thr_nbr}] [--unn] [-v @var{var}[, at dots{}]] [-w @var{wgt1}[, at var{wgt2}]] [-X ...] [-x]
 @var{file_1} @var{file_2} [@var{file_3}]
 @end example
@@ -14221,7 +15140,7 @@ ncatted -a units,prs_sfc,o,c,millibar out.nc
 @html
 <a name="ncks"></a> <!-- http://nco.sf.net/nco.html#ncks -->
 @end html
- at node ncks netCDF Kitchen Sink, ncpdq netCDF Permute Dimensions Quickly, ncflint netCDF File Interpolator, Operator Reference Manual
+ at node ncks netCDF Kitchen Sink, ncpdq netCDF Permute Dimensions Quickly, ncflint netCDF File Interpolator, Reference Manual
 @section @command{ncks} netCDF Kitchen Sink
 @cindex kitchen sink
 @cindex printing files contents
@@ -14236,7 +15155,7 @@ ncks [-3] [-4] [-5] [-6] [-7] [-A] [-a] [-b @var{binary-file}] [-C] [-c] [--cdl]
 [-D @var{dbg}] [-d @var{dim},[@var{min}][,[@var{max}][,[@var{stride}]]] [-F] [--fix_rec_dmn @var{dim}] 
 [-G @var{gpe_dsc}] [-g @var{grp}[, at dots{}]] [--grp_xtr_var_xcl] [-H] [-h] [--hdn] [--hdr_pad @var{nbr}]
 [-L @var{dfl_lvl}] [-l @var{path}] [-M] [-m] [--mk_rec_dmn @var{dim}] [--md5_digest]
-[--no_blank] [--no_tmp_fl] [-O] [-o @var{output-file}] [-P] [-p @var{path}] 
+[--no_blank] [--no_tmp_fl] [-O] [-o @var{output-file}] [-P] [-p @var{path}] [--ppc ...]
 [-Q] [-q] [-R] [-r] [--rad] [--ram_all] [-s @var{format}] 
 [-u] [--unn] [-V] [-v @var{var}[, at dots{}]] [-X ...] [-x] [--xml]
 @var{input-file} [[@var{output-file}]]
@@ -14363,7 +15282,7 @@ existing files and variables, respectively.
 
 The following summarizes features unique to @command{ncks}.  
 Features common to many operators are described in 
- at ref{Common features}. 
+ at ref{Shared features}. 
 
 @table @samp
 
@@ -15326,15 +16245,20 @@ Using the @code{%s} format code on strings which are not NUL-terminated
 @cindex subsetting
 @cindex exclusion
 @cindex extraction
+ at cindex @acronym{CF} conventions
+ at cindex @code{coordinates} attribute
+ at cindex @code{bounds} attribute
+ at cindex @code{ancillary_variables} attribute
 Create netCDF @file{out.nc} containing all variables, and any associated 
 coordinates, except variable @code{time}, from netCDF @file{in.nc}:
 @example
 ncks -x -v time in.nc out.nc
 @end example
 As a special case of this, consider how to remove a 
- at acronym{CF} Convention comliant @code{ancillary_variables},
- at code{bounds}, or @code{coordinates} variable (@pxref{CF Conventions})
-such as @code{time_bounds}. 
+variable such as @code{time_bounds} that is identified in a
+ at acronym{CF} Convention (@pxref{CF Conventions}) compliant
+ at code{ancillary_variables}, @code{bounds}, or @code{coordinates}
+attribute. 
 @acronym{NCO} subsetting assumes the user wants all ancillary variables,
 axes, bounds and coordinates associated with all extracted variables 
 (@pxref{Subsetting Coordinate Variables}).
@@ -15402,7 +16326,7 @@ For more details @xref{Wrapped Coordinates}.
 <a name="ncpack"></a> <!-- http://nco.sf.net/nco.html#ncpack -->
 <a name="ncunpack"></a> <!-- http://nco.sf.net/nco.html#ncunpack -->
 @end html
- at node ncpdq netCDF Permute Dimensions Quickly, ncra netCDF Record Averager, ncks netCDF Kitchen Sink, Operator Reference Manual
+ at node ncpdq netCDF Permute Dimensions Quickly, ncra netCDF Record Averager, ncks netCDF Kitchen Sink, Reference Manual
 @section @command{ncpdq} netCDF Permute Dimensions Quickly
 @findex ncpdq
 @findex ncpack
@@ -15423,7 +16347,7 @@ ncpdq [-3] [-4] [-6] [-7] [-A] [-a [-]@var{dim}[, at dots{}]] [-C] [-c]
 [-D @var{dbg}] [-d @var{dim},[@var{min}][,[@var{max}][,[@var{stride}]]]
 [-F] [-G @var{gpe_dsc}] [-g @var{grp}[, at dots{}]] [-h] [--hdf] [--hdr_pad @var{nbr}]
 [-L @var{dfl_lvl}] [-l @var{path}] [-M @var{pck_map}] [--mrd] [--no_tmp_fl] 
-[-O] [-o @var{output-file}] [-P @var{pck_plc}] [-p @var{path}] 
+[-O] [-o @var{output-file}] [-P @var{pck_plc}] [-p @var{path}] [--ppc ...]
 [-R] [-r] [--ram_all] [-t @var{thr_nbr}] [-U] [--unn] [-v @var{var}[, at dots{}]] [-X ...] [-x]
 @var{input-file} [@var{output-file}]
 @end example
@@ -15998,7 +16922,7 @@ changing variable dimensionality, including the record dimension.
 @html
 <a name="ncra"></a> <!-- http://nco.sf.net/nco.html#ncra -->
 @end html
- at node ncra netCDF Record Averager, ncrcat netCDF Record Concatenator, ncpdq netCDF Permute Dimensions Quickly, Operator Reference Manual
+ at node ncra netCDF Record Averager, ncrcat netCDF Record Concatenator, ncpdq netCDF Permute Dimensions Quickly, Reference Manual
 @section @command{ncra} netCDF Record Averager
 @cindex averaging data
 @cindex record average
@@ -16014,7 +16938,7 @@ ncra [-3] [-4] [-6] [-7] [-A] [-C] [-c]
 [-D @var{dbg}] [-d @var{dim},[@var{min}][,[@var{max}][,[@var{stride}][,[@var{subcycle}]]]] [-F]
 [-G @var{gpe_dsc}] [-g @var{grp}[, at dots{}]] [-h] [--hdf] [--hdr_pad @var{nbr}] 
 [-L @var{dfl_lvl}] [-l @var{path}] [--mro] [-n @var{loop}] [--no_tmp_fl]
-[-O] [-o @var{output-file}] [-p @var{path}] [-R] [-r] [--ram_all] [--rec_apn] [--rth_dbl|flt]
+[-O] [-o @var{output-file}] [-p @var{path}] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn] [--rth_dbl|flt]
 [-t @var{thr_nbr}] [--unn] [-v @var{var}[, at dots{}]] [-X ...] [-x] [-y @var{op_typ}]
 [@var{input-files}] [@var{output-file}]
 @end example
@@ -16114,7 +17038,7 @@ ncra -d time,6.,54. ??.nc 8506_8906.nc
 @html
 <a name="ncrcat"></a> <!-- http://nco.sf.net/nco.html#ncrcat -->
 @end html
- at node ncrcat netCDF Record Concatenator, ncrename netCDF Renamer, ncra netCDF Record Averager, Operator Reference Manual
+ at node ncrcat netCDF Record Concatenator, ncrename netCDF Renamer, ncra netCDF Record Averager, Reference Manual
 @section @command{ncrcat} netCDF Record Concatenator
 @cindex concatenation
 @cindex record concatenation
@@ -16128,7 +17052,7 @@ ncrcat [-3] [-4] [-6] [-7] [-A] [-C] [-c]
 [-D @var{dbg}] [-d @var{dim},[@var{min}][,[@var{max}][,[@var{stride}][,[@var{subcycle}]]]] [-F]
 [-G @var{gpe_dsc}] [-g @var{grp}[, at dots{}]] [-h] [--hdr_pad @var{nbr}]
 [-L @var{dfl_lvl}] [-l @var{path}] [--md5_digest] [-n @var{loop}] [--no_tmp_fl]
-[-O] [-o @var{output-file}] [-p @var{path}] [-R] [-r] [--ram_all] [--rec_apn]
+[-O] [-o @var{output-file}] [-p @var{path}] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn]
 [-t @var{thr_nbr}] [--unn] [-v @var{var}[, at dots{}]] [-X ...] [-x] 
 [@var{input-files}] [@var{output-file}]
 @end example
@@ -16248,7 +17172,7 @@ ncrcat -d time,6.,54. ??.nc 8506_8906.nc
 @html
 <a name="ncrename"></a> <!-- http://nco.sf.net/nco.html#ncrename -->
 @end html
- at node ncrename netCDF Renamer, ncwa netCDF Weighted Averager, ncrcat netCDF Record Concatenator, Operator Reference Manual
+ at node ncrename netCDF Renamer, ncwa netCDF Weighted Averager, ncrcat netCDF Record Concatenator, Reference Manual
 @section @command{ncrename} netCDF Renamer
 @cindex renaming variables
 @cindex renaming groups
@@ -16576,7 +17500,7 @@ Variables not prefixed with a period (@code{global}) must be present.
 @html
 <a name="ncwa"></a> <!-- http://nco.sf.net/nco.html#ncwa -->
 @end html
- at node ncwa netCDF Weighted Averager,  , ncrename netCDF Renamer, Operator Reference Manual
+ at node ncwa netCDF Weighted Averager,  , ncrename netCDF Renamer, Reference Manual
 @section @command{ncwa} netCDF Weighted Averager
 @cindex averaging data
 @cindex weighted average
@@ -16592,7 +17516,7 @@ ncwa [-3] [-4] [-6] [-7] [-A] [-a @var{dim}[, at dots{}]] [-B @var{mask_cond}] [-b]
 [-D @var{dbg}] [-d @var{dim},[@var{min}][,[@var{max}][,[@var{stride}]]] [-F]
 [-G @var{gpe_dsc}] [-g @var{grp}[, at dots{}]] [-h] [--hdr_pad @var{nbr}] [-I]
 [-L @var{dfl_lvl}] [-l @var{path}] [-M @var{mask_val}] [-m @var{mask_var}] [-N] [--no_tmp_fl]
-[-O] [-o @var{output-file}] [-p @var{path}] [-R] [-r] [--ram_all] [--rth_dbl|flt]
+[-O] [-o @var{output-file}] [-p @var{path}] [--ppc ...] [-R] [-r] [--ram_all] [--rth_dbl|flt]
 [-T @var{mask_comp}] [-t @var{thr_nbr}] [--unn] [-v @var{var}[, at dots{}]] [-w @var{weight}]
 [-X ...] [-x] [-y @var{op_typ}]
 @var{input-file} [@var{output-file}]
@@ -17090,7 +18014,7 @@ where @math{@var{thr_min} <= @var{msk_var} <= @var{thr_max}}.
 @html
 <a name="ctr"></a> <!-- http://nco.sf.net/nco.html#ctr -->
 @end html
- at node Contributing, Quick Start, Operator Reference Manual, Top
+ at node Contributing, Quick Start, Reference Manual, Top
 @chapter Contributing
 @cindex contributing
 We welcome contributions from anyone.
diff --git a/doc/nco.txt b/doc/nco.txt
index 74c50b1..80b706e 100644
--- a/doc/nco.txt
+++ b/doc/nco.txt
@@ -1,7 +1,7 @@
 This file documents NCO, a collection of utilities to manipulate and
 analyze netCDF files.
 
-   Copyright (C) 1995-2014 Charlie Zender
+   Copyright (C) 1995-2015 Charlie Zender
 
    This is the first edition of the 'NCO User Guide',
 and is consistent with version 2 of 'texinfo.tex'.
@@ -49,7 +49,7 @@ Summary
     2.9.1 Single and Multi-file Operators
     2.9.2 Memory for 'ncap2'
   2.10 Performance
-3 NCO Features
+3 Shared Features
   3.1 Internationalization
   3.2 Metadata Optimization
   3.3 OpenMP Threading
@@ -85,27 +85,28 @@ Summary
   3.24 Multiple Record Dimensions
   3.25 Missing values
   3.26 Chunking
-  3.27 Deflation
-  3.28 MD5 digests
-  3.29 Buffer sizes
-  3.30 RAM disks
-  3.31 Packed data
+  3.27 Compression
+  3.28 Deflation
+  3.29 MD5 digests
+  3.30 Buffer sizes
+  3.31 RAM disks
+  3.32 Packed data
     Packing Algorithm
     Unpacking Algorithm
     Default Handling of Packed Data
     Default Handling of Packed Data
-  3.32 Operation Types
-  3.33 Type Conversion
-    3.33.1 Automatic type conversion
-    3.33.2 Promoting Single-precision to Double
-    3.33.3 Manual type conversion
-  3.34 Batch Mode
-  3.35 History Attribute
-  3.36 File List Attributes
-  3.37 CF Conventions
-  3.38 ARM Conventions
-  3.39 Operator Version
-4 Operator Reference Manual
+  3.33 Operation Types
+  3.34 Type Conversion
+    3.34.1 Automatic type conversion
+    3.34.2 Promoting Single-precision to Double
+    3.34.3 Manual type conversion
+  3.35 Batch Mode
+  3.36 History Attribute
+  3.37 File List Attributes
+  3.38 CF Conventions
+  3.39 ARM Conventions
+  3.40 Operator Version
+4 Reference Manual
   4.1 'ncap2' netCDF Arithmetic Processor
     4.1.1 Syntax of 'ncap2' statements
     4.1.2 Expressions
@@ -196,8 +197,8 @@ illustrates NCO use with examples from the field of climate modeling and
 analysis.  The NCO homepage is <http://nco.sf.net>, and there is a
 mirror at <http://dust.ess.uci.edu/nco>.
 
-   This documentation is for NCO version 4.4.7.  It was last updated 26
-November 2014.  Corrections, additions, and rewrites of this
+   This documentation is for NCO version 4.4.8.  It was last updated 17
+February 2015.  Corrections, additions, and rewrites of this
 documentation are very welcome.
 
    Enjoy,
@@ -358,19 +359,18 @@ Detailed instructions about how to download the newest version
 descriptions of Known Problems (http://nco.sf.net/#bug) etc.  are on our
 homepage (<http://nco.sf.net/>).
 
-   There are twelve operators in the current version (4.4.7).  The
-function of each is explained in *note Operator Reference Manual:
-Operator Reference Manual.  Many of the tasks that NCO can accomplish
-are described during the explanation of common NCO Features (*note
-Common features::).  More specific use examples for each operator can be
-seen by visiting the operator-specific examples in the *note Operator
-Reference Manual::.  These can be found directly by prepending the
-operator name with the 'xmp_' tag, e.g.,
-<http://nco.sf.net/nco.html#xmp_ncks>.  Also, users can type the
+   There are twelve operators in the current version (4.4.8).  The
+function of each is explained in *note Reference Manual: Reference
+Manual.  Many of the tasks that NCO can accomplish are described during
+the explanation of common NCO Features (*note Shared features::).  More
+specific use examples for each operator can be seen by visiting the
+operator-specific examples in the *note Reference Manual::.  These can
+be found directly by prepending the operator name with the 'xmp_' tag,
+e.g., <http://nco.sf.net/nco.html#xmp_ncks>.  Also, users can type the
 operator name on the shell command line to see all the available
 options, or type, e.g., 'man ncks' to see a help man-page.
 
-   NCO is a command-line language.  You can either use an operator after
+   NCO is a command-line language.  You may either use an operator after
 the prompt (e.g., '$' here), like,
      $ operator [options] input [output]
    or write all commands lines into a shell script, as in the CMIP5
@@ -386,13 +386,14 @@ enough, please *note Help Requests and Bug Reports::.
 1.3 Operating systems compatible with NCO
 =========================================
 
-NCO has been successfully ported and tested and is known to work on the
-following 32- and 64-bit platforms: IBM AIX 4.x, 5.x, FreeBSD 4.x,
-GNU/Linux 2.x, LinuxPPC, LinuxAlpha, LinuxARM, LinuxSparc64, SGI IRIX
-5.x and 6.x, MacOS X 10.x, NEC Super-UX 10.x, DEC OSF, Sun SunOS 4.1.x,
-Solaris 2.x, Cray UNICOS 8.x-10.x, and MS Windows95 and all later
-versions.  If you port the code to a new operating system, please send
-me a note and any patches you required.
+In its time on Earth, NCO has been successfully ported and tested on so
+many 32- and 64-bit platforms that if we did not write them down here we
+would forget their names: IBM AIX 4.x, 5.x, FreeBSD 4.x, GNU/Linux 2.x,
+LinuxPPC, LinuxAlpha, LinuxARM, LinuxSparc64, LinuxAMD64, SGI IRIX 5.x
+and 6.x, MacOS X 10.x, DEC OSF, NEC Super-UX 10.x, Sun SunOS 4.1.x,
+Solaris 2.x, Cray UNICOS 8.x-10.x, and Microsoft Windows (95, 98, NT,
+2000, XP, Vista, 7, 8, 10).  If you port the code to a new operating
+system, please send me a note and any patches you required.
 
    The major prerequisite for installing NCO on a particular platform is
 the successful, prior installation of the netCDF library (and, as of
@@ -714,7 +715,7 @@ suffices when the data will only be processed by NCO and other
 netCDF4-aware tools.
 
    However, many tools are not fully netCDF4-aware, and so conversion to
-netCDF3 may be desirable.  Obtaining a netCDF3 file from an HDF4 is now
+netCDF3 may be desirable.  Obtaining any netCDF file from an HDF4 is
 easy:
      ncks -3 fl.hdf fl.nc      # HDF4->netCDF3 (NCO 4.4.0+, netCDF 4.3.1+)
      ncks -4 fl.hdf fl.nc      # HDF4->netCDF4 (NCO 4.4.0+, netCDF 4.3.1+)
@@ -787,15 +788,17 @@ trouble.
    (4) Prior to NCO version 4.4.0 (January, 2014), we recommended the
 'ncl_convert2nc' tool to convert HDF to netCDF3 when both these are
 true: 1. You must have netCDF3 and 2. the HDF file contains netCDF4
-atomic types.  More recent versions of NCO handle this problem fine, so
-we no longer recommend 'ncl_convert2nc' because 'ncks' is faster and
-more space-efficient.  Both automatically convert netCDF4 types to
-netCDF3 types, yet 'ncl_convert2nc' cannot produce full netCDF4 files.
-In contrast, 'ncks' will happily convert HDF straight to netCDF4 files
-with netCDF4 types.  Hence 'ncks' can and does preserve the variable
-types.  Unsigned bytes stay unsigned bytes.  64-bit integers stay 64-bit
-integers.  Strings stay strings.  Hence, 'ncks' conversions often result
-in smaller files than 'ncl_convert2nc' conversions.
+atomic types.  More recent versions of NCO handle this problem fine, and
+include other advantages so we no longer recommend 'ncl_convert2nc'
+because 'ncks' is faster and more space-efficient.  Both automatically
+convert netCDF4 types to netCDF3 types, yet 'ncl_convert2nc' cannot
+produce full netCDF4 files.  In contrast, 'ncks' will happily convert
+HDF straight to netCDF4 files with netCDF4 types.  Hence 'ncks' can and
+does preserve the variable types.  Unsigned bytes stay unsigned bytes.
+64-bit integers stay 64-bit integers.  Strings stay strings.  Hence,
+'ncks' conversions often result in smaller files than 'ncl_convert2nc'
+conversions.  A tool useful for converting netCDF3 to netCDF4 files is
+the Python script 'nc3tonc4' by Jeff Whitaker.
 
    (5) Two real-world examples: NCO translates the NASA CERES dimension
 '(FOV) Footprints' to '_FOV_ Footprints', and 'Cloud & Aerosol, Cloud
@@ -1483,8 +1486,8 @@ its performance:
      present day (2007) netCDF/NCO environments, where unnecessary
      byte-swapping has been reduced or eliminated.
 
-3 NCO Features
-**************
+3 Shared Features
+*****************
 
 Many features have been implemented in more than one operator and are
 described here for brevity.  The description of each feature is preceded
@@ -1796,7 +1799,7 @@ the only syntactic distinction between input and output files is their
 position.  Second, specification of a long list of input files may be
 difficult (*note Large Numbers of Files::).  Making the input file list
 the final argument to an operator facilitates using 'xargs' for this
-purpose.  Some alternatives to 'xargs' are very ugly and undesirable.
+purpose.  Some alternatives to 'xargs' are heinous and undesirable.
 Finally, many users are more comfortable specifying output files with
 '-o FL_OUT' near the beginning of an argument list.  Compilers and
 linkers are usually invoked this way.
@@ -2099,8 +2102,8 @@ other preferred methods are not available locally.
 3.9 File Formats and Conversion
 ===============================
 
-Availability: 'ncap2', 'ncbo', 'nces', 'ncecat', 'ncflint', 'ncks',
-'ncpdq', 'ncra', 'ncrcat', 'ncwa'
+Availability: 'ncap2', 'nces', 'ncecat', 'ncflint', 'ncks', 'ncpdq',
+'ncra', 'ncrcat', 'ncwa'
 Short options: '-3', '-4', '-6', '-7'
 Long options: '--3', '--4', '--6', '--64bit', '--7', '--fl_fmt',
 '--netcdf4'
@@ -2121,8 +2124,8 @@ netCDF supports four types of files: 'CLASSIC', '64BIT', 'NETCDF4', and
 'NETCDF4_CLASSIC', The 'CLASSIC' format is the traditional 32-bit offset
 written by netCDF2 and netCDF3.  As of 2005, nearly all netCDF datasets
 were in 'CLASSIC' format.  The '64BIT' format was added in Fall, 2004.
-As of 2010, many netCDF datasets were in '64BIT' format.  As of 2013,
-many netCDF datasets are in 'NETCDF4_CLASSIC' format.
+As of 2010, many netCDF datasets were in '64BIT' format.  As of 2013, an
+increasing number of netCDF datasets were in 'NETCDF4_CLASSIC' format.
 
    The 'NETCDF4' format uses HDF5 as the file storage layer.  The files
 are (usually) created, accessed, and manipulated using the traditional
@@ -4186,6 +4189,16 @@ implemented:
      to the output file.  Alternate invocation: none
      CNK_PLC key values: 'xst', 'cnk_xst', 'plc_xst'
      Mnemonic: E_X_i_ST_ing chunked variables
+"Chunk Variables with NCO recommendations"
+     Definition: Chunk all variables according to NCO best practices.
+     This is a virtual option that ensures the chunking policy is (in
+     the subjective opinion of the authors) the best policy for typical
+     usage.  As of NCO version 4.4.8 (February, 2015), this virtual
+     policy implements 'map_rew' for 3-D variables and 'map_lfp' for all
+     other variables.
+     Alternate invocation: none
+     CNK_PLC key values: 'nco', 'cnk_nco', 'plc_nco'
+     Mnemonic: _N_et_C_DF_O_perator
 "Unchunking"
      Definition: Unchunk all variables possible.  The HDF5 storge layer
      requires that record variables (i.e., variables that contain at
@@ -4270,6 +4283,15 @@ argument.  Eight chunking maps are currently implemented:
      files to default chunking values.
      CNK_MAP key values: 'nc4', 'cnk_nc4', 'map_nc4'
      Mnemonic: _N_et_C_DF_4_
+"Chunksizes use NCO recommendations"
+     Definition: Chunksizes are determined by the currently recommended
+     NCO map.  This is a virtual option that ensures the chunking map is
+     (in the subjective opinion of the authors) the best map for typical
+     usage.  As of NCO version 4.4.8 (February, 2015), this virtual map
+     calls 'map_rew' for 3-D variables and 'map_lfp' for all others.
+     CNK_MAP key values: 'nco', 'cnk_nco', 'map_nco'
+     Mnemonic: _N_et_C_DF_O_perator
+
 It is possible to combine the above chunking map algorithms with
 user-specified per-dimension (though not per-variable) chunksizes that
 override specific chunksizes determined by the maps above.  The user
@@ -4334,7 +4356,7 @@ it thinks is) the optimal chunking map.  This has always been map
       --cnk_dmn lon,128 dstmch90_clm_0112.nc ~/foo.nc
 
    Chunking policy 'r1d' changes the chunksize of 1-D record variables
-(and no other variables) to the specified (with '--cnk_dmn') chunksize.
+(and no other variables) to that specified (with '--cnk_dmn') chunksize.
 Any specified record dimension chunksizes will be applied to 1-D record
 variables only.  Other dimensions may be chunked with their own
 '--cnk_dmn' options that will apply to all variables.  For example,
@@ -4362,7 +4384,510 @@ version 4.4.7.  Prior versions would always use netCDF default chunking
 in the output file when no NCO chunking switches were activated,
 regardless of the chunking in the input file.
 
-3.27 Deflation
+3.27 Compression
+================
+
+Availability: 'ncbo', 'ncecat', 'nces', 'ncflint', 'ncks', 'ncpdq',
+'ncra', 'ncrcat', 'ncwa'
+Short options: None
+Long options: '--ppc VAR1[,VAR2[,...]]=PRC',
+'--precision_preserving_compression VAR1[,VAR2[,...]]=PRC',
+'--quantize VAR1[,VAR2[,...]]=PRC'
+
+   NCO implements or accesses four different compression algorithms, the
+standard lossless DEFLATE algorithm and three lossy compression
+algorithms.  All four algorithms reduce the on-disk size of a dataset
+while sacrificing no (lossless) or a tolerable amount (lossy) of
+precision.  First, NCO can access the lossless DEFLATE algorithm, a
+combination of Lempel-Ziv encoding and Huffman coding, algorithm on any
+netCDF4 dataset (*note Deflation::).  Because it is lossless, this
+algorithm re-inflates deflated data to their full original precision.
+This algorithm is accessed via the HDF5 library layer (which itself
+calls the 'zlib' library also used by 'gzip'), and is unavailable with
+netCDF3.
+
+   The three lossy compression algorithms are Packing (*note Packed
+data::), and two precision-preserving algorithms.  Packing quantizes
+data of a higher precision type into a lower precision type (often
+'NC_SHORT') that thus stores a fewer (though constant) number of bytes
+per value.  Packed data almost unpacks into a (much) smaller dynamic
+range than the floating-point data can represent.  The type-conversion
+and reduced dynamic range of the data allows packing to eliminate bits
+typically used to store an exponent, thus improving its packing
+efficiency.  Packed data also can also be deflated for additional space
+savings.
+
+   A limitation of packing is that unpacking data stored as integers
+into the linear range defined by 'scale_factor' and 'add_offset' rapidly
+loses precision outside of a narrow range of floating point values.
+Variables packed as 'NC_SHORT', for example, can represent only about
+64000 discrete values in the range -32768*scale_factor+add_offset to
+32767*scale_factor+add_offset.  The precision of packed data equals the
+value of 'scale_factor', and 'scale_factor' is usually chosen to span
+the range of valid data, not to represent the intrinsic precision of the
+variable.  In other words, the precision of packed data cannot be
+specified in advance because it depends on the range of values to
+quantize.
+
+   NCO implemented the final two lossy compression algorithms in version
+4.4.8 (February, 2015).  These are both "Precision-Preserving
+Compression" (PPC) algorithms and since standard terminology for
+precision is remarkably imprecise, so is our nomenclature.  The
+operational definition of "significant digit" in our precision
+preserving algorithms is that the exact value, before rounding or
+quantization, is within one-half the value of the decimal place occupied
+by the "Least Significant Digit" (LSD) of the rounded value.  For
+example, the value pi = 3.14 correctly represents the exact mathematical
+constant PI to three significant digits because the LSD of the rounded
+value (i.e., 4) is in the one-hundredths digit place, and the difference
+between the exact value and the rounded value is less than one-half of
+one one-hundredth, i.e., (3.14159265358979323844 - 3.14 = 0.00159 <
+0.005).
+
+   One PPC algorithm preserves the specified total "Number of Signifcant
+Digits" (NSD) of the value.  For example there is only one significant
+digit in the weight of most "eight-hundred pound gorillas" that you will
+encounter, i.e., so NSD=1.  This is the most straightforward measure of
+precision, and thus NSD is the default PPC algorithm.
+
+   The other PPC algorithm preserves the number of "Decimal Significant
+Digits" (DSD), i.e., the number of significant digits following
+(positive, by convention) or preceding (negative) the decimal point.
+For example, "0.008" and "800" have, respectively, three and negative
+two digits digits following the decimal point, corresponding DSD=3 and
+DSD=-2.
+
+   The only justifiable NSD for a given value depends on intrinsic
+accuracy and error characteristics of the model or measurements, and not
+on the units with which the value is stored.  The appropriate DSD for a
+given value depends on these intrinsic characteristics and, in addition,
+the units of storage.  This is the fundamental difference between the
+NSD and DSD approaches.  The eight-hundred pound gorilla always has
+NSD=1 regardless of whether the value is store in pounds or in some
+other unit.  DSD corresponding to this weight is DSD=-2 if the value is
+store in pounds, DSD=4 if stored in megapounds.
+
+   Users may wish to express the precision to be preserved as either NSD
+or DSD.  Invoke PPC with the long option '--ppc var=prc', or give the
+same arguments to the synonyms '--precision_preserving_compression', or
+to '--quantize'.  Here VAR is the variable to quantize, and PRC is the
+precision.  The default algorithm assumes PRC specifies NSD precision,
+e.g., 'T=2' means NSD=2.  Prepend PRC with a decimal point to specify
+DSD precision, e.g., 'T=.2' means DSD=2.  NSD precision must be
+specified as a positive integer.  DSD precision may be a positive or
+negative integer; and is specified as the negative base 10 logarithm of
+the desired precision, in accord with common usage.  For example,
+specifying 'T=.3' or 'T=.-2' tells the DSD algorithm to store only
+enough bits to preserve the value of T rounded to the nearest thousandth
+or hundred, respectively.
+
+   Setting VAR to 'default' has the special meaning of applying the
+associated NSD or DSD algorithm to all floating point variables except
+coordinate variables.  Variables _not affected_ by 'default' include
+integer and non-numeric atomic types, coordinates, and variables
+mentioned in the 'coordinates' or 'bounds' attribute of any variable.
+NCO applies PPC to coordinate variables only if those variables are
+explicitly specified (i.e., not with the 'default=PRC' mechanism.  NCO
+applies PPC to integer-type variables only if those variables are
+explicitly specified (i.e., not with the 'default=PRC', and only if the
+DSD algorithm is invoked with a negative PRC.  To prevent PPC from
+applying to certain non-coordinate variables (e.g., 'gridcell_area' or
+'gaussian_weight'), explicitly specify a precision exceeding 7 (for
+'NC_FLOAT') or 15 (for 'NC_DOUBLE') for those variables.  Since these
+are the maximum representable precisions in decimal digits, NCO
+_turns-off_ PPC (i.e., does nothing) when more precision is requested.
+
+   The time penalty for compressing and uncompressing data varies
+according to the algorithm.  The Number of Significant Digit (NSD)
+algorithm quantizes by bitmasking, and employs no floating point math.
+The Decimal Significant Digit (DSD) algorithm quantizes by rounding,
+which does require floating point math.  Hence NSD is likely faster than
+DSD, though the difference has not been measured.  NSD creates a bitmask
+to alter the "significand" of IEEE 754 floating point data.  The bitmask
+is one for all bits to be retained and zero or one for all bits to be
+ignored.  The algorithm assumes that the number of binary digits (i.e.,
+bits) necessary to represent a single base-10 digit is ln(10)/ln(2) =
+3.32.  The exact numbers of bits NBIT retained for single and double
+precision values are ceil(3.32*NSD)+1 and ceil(3.32*NSD)+2,
+respectively.  Once these reach 23 and 53, respectively, bitmasking is
+completely ineffective.  This occurs at NSD=6.3 and 15.4, respectively.
+
+   The DSD algorithm, by contrast, uses rounding to remove undesired
+precision.  The rounding (1) zeroes the greatest number of significand
+bits consistent with the desired precision.
+
+   To demonstrate the change in IEEE representation caused by PPC
+rounding algorithms, consider again the case of PI, represented as an
+'NC_FLOAT'.  The IEEE 754 single precision representations of the exact
+value (3.141592...), the value with only three significant digits
+treated as exact (3.140000...), and the value as stored (3.140625) after
+PPC-rounding with either the NSD (PRC=3) or DSD (PRC=2) algorithm are,
+respectively,
+     S Exponent  Fraction (Significand)   Decimal    Notes
+     0 100000001 0010010000111111011011 # 3.14159265 Exact
+     0 100000001 0010001111010111000011 # 3.14000000
+     0 100000001 0010010000000000000000 # 3.14062500 NSD = 3
+     0 100000001 0010010000000000000000 # 3.14062500 DSD = 2
+   The string of trailing zero-bits in the rounded values facilitates
+byte-stream compression.  Note that the NSD and DSD algorithms do not
+always produce results that are bit-for-bit identical, although they do
+in this particular case.
+
+   Reducing the preserved precision of NSD-rounding produces
+increasingly long strings of identical-bits amenable to compression:
+     S Exponent  Fraction (Significand)   Decimal    Notes
+     0 100000001 0010010000111111011011 # 3.14159265 Exact
+     0 100000001 0010010000111111011011 # 3.14159265 NSD = 8
+     0 100000001 0010010000111111011010 # 3.14159262 NSD = 7
+     0 100000001 0010010000111111011000 # 3.14159203 NSD = 6
+     0 100000001 0010010000111111000000 # 3.14158630 NSD = 5
+     0 100000001 0010010000111100000000 # 3.14154053 NSD = 4
+     0 100000001 0010010000000000000000 # 3.14062500 NSD = 3
+     0 100000001 0010010000000000000000 # 3.14062500 NSD = 2
+     0 100000001 0010000000000000000000 # 3.12500000 NSD = 1
+   The consumption of about 3 bits per digit of base-10 precision is
+evident, as is the coincidence of a quantized value that greatly exceeds
+the mandated precision for NSD = 2.  Although the NSD algorithm
+generally masks some bits for all NSD <= 7 (for 'NC_FLOAT'), compression
+algorithms like DEFLATE may need byte-size-or-greater (i.e., at least
+eight-bit) bit patterns before their algorithms can take advantage of of
+encoding such patterns for compression.  Do not expect significantly
+enhanced compression from NSD > 5 (for 'NC_FLOAT') or NSD > 14 (for
+'NC_DOUBLE').  Clearly values stored as 'NC_DOUBLE' (i.e., eight-bytes)
+are susceptible to much greater compression than 'NC_FLOAT' for a given
+precision because their significands explicitly contain 53 bits rather
+than 23 bits.
+
+   Maintaining non-biased statistical properties during lossy
+compression requires special attention.  The DSD algorithm uses
+'rint()', which rounds toward the nearest even integer.  Thus DSD has no
+systematic bias.  However, the NSD algorithm uses a bitmask technique
+susceptible to statistical bias.  Zeroing all non-significant bits is
+guaranteed to produce numbers quantized to the specified tolerance,
+i.e., half of the decimal value of the position occupied by the LSD.
+However, always zeroing the non-significant bits results in quantized
+numbers that never exceed the exact number.  This would produce a
+negative bias in statistical quantities (e.g., the average) subsequently
+derived from the quantized numbers.  To avoid this bias, NSD rounds
+non-significant bits down (to zero) or up (to one) in an alternating
+fashion when processing array data.  In general, the first element is
+rounded down, the second up, and so on.  This results in a mean bias
+quite close to zero.  The only exception is that the floating point
+value of zero is never quantized upwards.  For simplicity, NSD always
+rounds scalars downwards.
+
+   Although NSD or DSD are different algorithms under the hood, they
+both replace the (unwanted) least siginificant bits of the IEEE
+significand with a string of consecutive zeroes.  Byte-stream
+compression techniques, such as the 'gzip' DEFLATE algorithm compression
+available in HDF5, always compress zero-strings more efficiently than
+random digits.  The net result is netCDF files that utilize compression
+can be significantly reduced in size.  This feature only works when the
+data are compressed, either internally (by netCDF) or externally (by
+another user-supplied mechanism).  It is most straightfoward to compress
+data internally using the built-in compression and decompression
+supported by netCDF4.  For convenience, NCO automatically activates
+file-wide Lempel-Ziv deflation (*note Deflation::) level one (i.e., '-L
+1') when PPC is invoked on any variable in a netCDF4 output file.  This
+makes PPC easier to use effectively, since the user need not explicitly
+specify deflation.  Any explicitly specified deflation (including no
+deflation, '-L 0') will override the PPC deflation default.  If the
+output file is a netCDF3 format, NCO will emit a message suggesting
+internal netCDF4 or external netCDF3 compression.  netCDF3 files
+compressed by an external utility such as 'gzip' accrue approximately
+the same benefits (shrinkage) as netCDF4, although with netCDF3 the user
+or provider must uncompress (e.g., 'gunzip') the file before accessing
+the data.  There is no benefit to rounding numbers and storing them in
+netCDF3 files unless such custom compression/decompression is employed.
+Without that, one may as well maintain the undesired precision.
+
+   The user accesses PPC through a single switch, '--ppc', repeated as
+many times as necessary.  To apply the NSD algorithm to variable U use,
+e.g.,
+     ncks -7 --ppc u=2 in.nc out.nc
+   The output file will preserve only two significant digits of U.  The
+options '-4' or '-7' ensure a netCDF4-format output (regardless of the
+input file format) to support internal compression.  It is recommended
+though not required to write netCDF4 files after PPC.  For clarity the
+'-4/-7' switches are omitted in subsequent examples.  NCO attaches
+attributes that indicate the algorithm used and degree of precision
+retained for each variable affected by PPC.  The NSD and DSD algorithms
+store the attributes 'number_of_significant_digits' and
+'least_significant_digit' (2), respectively.
+
+   It is safe to attempt PPC on input that has already been rounded.
+Variables can be made rounder, not sharper, i.e., variables cannot be
+"un-rounded".  Thus PPC attempted on an input variable with an existing
+PPC attribute proceeds only if the new rounding level exceeds the old,
+otherwise no new rounding occurs (i.e., a "no-op"), and the original PPC
+attribute is retained rather than replaced with the newer value of PRC.
+
+   To request, say, five significant digits (NSD=5) for all fields,
+except, say, wind speeds which are only known to integer values (DSD=0)
+in the supplied units, requires '--ppc' twice:
+     ncks -4 --ppc default=5 --ppc u,v=.0 in.nc out.nc
+   To preserve five digits in all variables except coordinate variables
+and U and V, use the 'default' option and separately specify the
+exceptions:
+     ncks --ppc default=5 --ppc u,v=20 in.nc out.nc
+   The '--ppc' option may be specified any number of times to support
+varying precision types and levels, and each option may aggregate all
+the variables with the same precision
+     ncks --ppc p,w,z=5 --ppc q,RH=4 --ppc T,u,v=3 in.nc out.nc
+   Any VAR argument may be a regular expression.  This simplifies
+generating lists of related variables:
+     ncks --ppc Q.?=5 --ppc FS.?,FL.?=4 --ppc RH=.3 in.nc out.nc
+   Although PPC-rounding instantly reduces data precision, on-disk
+storage reduction only occurs once the data are compressed.
+
+   How can one be sure the lossy data are sufficiently precise?  PPC
+preserves all significant digits of every value.  The DSD algorithm uses
+floating point math to round each value optimally so that it has the
+maximum number of zeroed bits that preserve the specified precision.
+The NSD algorithm uses a theoretical approach (3.2 bits per base-10
+digit), tuned and tested to ensure the _worst_ case quantization error
+is less than half the value of the minimum increment in the least
+significant digit.
+
+   _Note for Info users_: The definition of error metrics relies heavily
+on mathematical expressions which cannot be easily represented in Info.
+_See the printed manual (./nco.pdf) for much more detailed and complete
+documentation of this subject._
+
+   All three metrics are expressed in terms of the fraction of the ten's
+place occupied by the LSD.  If the LSD is the hundreds digit or the
+thousandths digit, then the metrics are fractions of 100, or of 1/100,
+respectively.  PPC algorithms should produce maximum absolute errors no
+greater than 0.5 in these units.  If the LSD is the hundreds digit, then
+quantized versions of true values will be within fifty of the true
+value.  It is much easier to satisfy this tolerance for a true value of 100
+(only 50% accuracy required) than for 999 (5% accuracy required).  Thus
+the minimum accuracy guaranteed for NSD=1 ranges from 5-50%.  For this
+reason, the best and worst cast performance usually occurs for true
+values whose LSD value is close to one and nine, respectively.  Of
+course most users prefer PRC > 1 because accuracies increase
+exponentially with PRC.  Continuing the previous example to PRC=2,
+quantized versions of true values from 1000-9999 will also be within 50
+of the true value, i.e., have accuracies from 0.5-5%.  In other words,
+only two significant digits are necessary to guarantee better than 5%
+accuracy in quantization.  We recommend that dataset producers and users
+consider quantizing datasets with NSD=3.  This guarantees accuracy of
+0.05-0.5% for individual values.  Statistics computed from ensembles of
+quantized values will, assuming the mean error EMEAN is small, have much
+better accuracy than 0.5%.  This accuracy is the most that can be
+justified for many applications.
+
+   To demonstrate these principles we conduct error analyses on an
+artificial, reproducible dataset, and on an actual dataset of
+observational analysis values.  (3) The table summarizes quantization
+accuracy based on the three metrics.
+'NSD'
+     Number of Significant Digits.
+'Emabs'
+     Maximum absolute error.
+'Emebs'
+     Mean absolute error.
+'Emean'
+     Mean error.
+
+     Artificial Data: N=1000000 values in [1.0,2.0) in steps of 1.0e-6
+     Single-Precision        Double-Precision   Single-Precision
+     NSD Emabs Emebs Emean   Emabs Emebs Emean  DSD Emabs Emebs Emean
+      1  0.31  0.11  4.1e-4  0.31  0.11  4.0e-4  1  0.30  0.11 -8.1e-4
+      2  0.39  0.14  6.8e-5  0.39  0.14  5.5e-5  2  0.39  0.14 -1.3e-4
+      3  0.49  0.17  1.0e-6  0.49  0.17 -5.5e-7  3  0.49  0.17 -2.0e-5
+      4  0.30  0.11  3.2e-7  0.30  0.11 -6.1e-6  4  0.30  0.11  5.1e-8
+      5  0.37  0.13  3.1e-7  0.38  0.13 -5.6e-6  5  0.38  0.13  2.6e-6
+      6  0.36  0.12 -4.4e-7  0.48  0.17 -4.1e-7  6  0.48  0.17  7.2e-6
+      7  0.00  0.00  0.0     0.30  0.10  1.5e-7  7  0.00  0.00  0.0
+
+     Observational Analysis: N=13934592 values MERRA Temperature 20130601
+     Single-Precision
+     NSD Emabs Emebs Emean
+      1  0.31  0.11  2.4e-3
+      2  0.39  0.14  3.8e-4
+      3  0.49  0.17 -9.6e-5
+      4  0.30  0.11  2.3e-3
+      5  0.37  0.13  2.2e-3
+      6  0.36  0.13  1.7e-2
+      7  0.00  0.00  0.0
+   All results show that PPC quantization performs as expected.
+Absolute maximum errors EMABS < 0.5 for all PRC.  For 1 <= PRC <= 6,
+quantization results in comparable maximum absolute and mean absolute
+errors EMABS and EMEBS, respectively.  Mean errors EMEAN are orders of
+magnitude smaller because quantization produces over- and
+under-estimated values in balance.  When PRC=7, quantization of
+single-precision values is ineffective, because all available bits are
+used to represent the maximum precision of seven digits.  The maximum
+and mean absolute errors EMABS and EMEBS are nearly identical across
+algorithms, precisions, and dataset types.  This is consistent with both
+the artificial data and empirical data being random, and thus exercising
+equally strengths and weaknesses of the algorithms over the course of
+millions of input values.  We generated artificial arrays with many
+different starting values and interval spacing and all gave
+qualitatively similar results.  The results presented are the worst
+obtained.
+
+   The artificial data has much smaller mean error EMEAN than the
+observational analysis.  The reason why is unclear.  It may be because
+the temperature field is concentrated in particular ranges of values
+(and associated quantization errors) prevalent on Earth, e.g., 200 < T <
+320.  It is worth noting that the mean error EMEAN < 0.01 for 1 <= PRC <
+6, and that EMEAN is typically at least two or more orders of magnitude
+less than EMABS.  Thus quantized values with precisions as low as PRC=1
+still yield highly significant statistics by contemporary scientific
+standards.
+
+   Testing shows that PPC quantization enhances compression of typical
+climate datasets.  The degree of enhancement depends, of course, on the
+required precision.  Model results are often computed as 'NC_DOUBLE'
+then archived as 'NC_FLOAT' to save space.  This table summarizes the
+performance of lossless and lossy compression on two typical, or at
+least random, netCDF data files.  The files were taken from
+representative model-simulated and satellite-retrieved datasets.  Only
+floating point data were compressed.  No attempt was made to compress
+integer-type variables as they occupy an insignificant fraction of every
+dataset.  The columns are
+'Type'
+     File-type: 'N3' for netCDF 'CLASSIC', 'N4' for 'NETCDF4'), 'N7' for
+     'NETCDF4_CLASSIC' (which comprises netCDF3 data types and
+     structures with netCDF4 storage features like compression), 'H4'
+     for HDF4, and 'H5' for HDF5.  'N4/7' means results apply to both
+     'N4' and 'N7' filetypes.
+'LLC'
+     Type of lossless compression employed, if any.  Bare numbers refer
+     to the strength of the DEFLATE algorithm employed internally by
+     netCDF4/HDF5, while numbers prefixed with 'B' refer to the block
+     size employed by the Burrows-Wheeler algorithm in 'bzip2'.
+'PPC'
+     Number of significant digits retained by the precision-preserving
+     compression NSD algorithm.
+'Pck'
+     'Y' if the default 'ncpdq' packing algorithm (convert floating
+     point types to 'NC_SHORT') was employed.  A dash ('-') indicates
+     the associated compression feature was not employed.
+'Size'
+     Resulting filesize in MB.
+'%'
+     Compression ratio, i.e., resulting filesize relative to original
+     size, in percent.  In some cases the original files is already
+     losslessly compressed.  The compression ratios reported are
+     relative to the size of the original file as distributed, not as
+     optimally losslessly compressed.
+     # dstmch90_clm.nc
+     Type LLC PPC Pck  Size   %    Flags and Notes
+       N3   -   -  -   34.7 100.0  Original is not compressed
+       N3  B1   -  -   28.9  83.2  bzip2 -1
+       N3  B9   -  -   29.3  84.4  bzip2 -9
+       N7   -   -  -   35.0 101.0
+       N7   1   -  -   28.2  81.3  -L 1
+       N7   9   -  -   28.0  80.8  -L 9
+       N7   -   -  Y   17.6  50.9  ncpdq -L 0
+       N7   1   -  Y    7.9  22.8  ncpdq -L 1
+       N7   1   7  -   28.2  81.3  --ppc default=7
+       N7   1   6  -   27.9  80.6  --ppc default=6
+       N7   1   5  -   25.9  74.6  --ppc default=5
+       N7   1   4  -   22.3  64.3  --ppc default=4
+       N7   1   3  -   18.9  54.6  --ppc default=3
+       N7   1   2  -   14.5  43.2  --ppc default=2
+       N7   1   1  -   10.0  29.0  --ppc default=1
+
+     # b1850c5cn_doe_polar_merged_0_cesm1_2_0_HD+MAM4+tun2b.hp.e003.cam.h0.0001-01.nc
+     Type LLC PPC Pck  Size   %    Flags and Notes
+       N3   -   -  -  119.8 100.0  Original is not compressed
+       N3  B1   -  -   84.2  70.3  bzip2 -1
+       N3  B9   -  -   84.8  70.9  bzip2 -9
+       N7   -   -  -  120.5 100.7
+       N7   1   -  -   82.6  69.0  -L 1
+       N7   9   -  -   82.1  68.6  -L 9
+       N7   -   -  Y   60.7  50.7  ncpdq -L 0
+       N7   1   -  Y   26.0  21.8  ncpdq -L 1
+       N7   1   7  -   82.6  69.0  --ppc default=7
+       N7   1   6  -   81.9  68.4  --ppc default=6
+       N7   1   5  -   77.2  64.5  --ppc default=5
+       N7   1   4  -   69.0  57.6  --ppc default=4
+       N7   1   3  -   59.3  49.5  --ppc default=3
+       N7   1   2  -   49.5  41.3  --ppc default=2
+       N7   1   1  -   38.2  31.9  --ppc default=1
+
+     # MERRA300.prod.assim.inst3_3d_asm_Cp.20130601.hdf
+     Type LLC PPC Pck  Size   %    Flags and Notes
+       H4   5   -  -  244.3 100.0  Original is compressed
+       H4  B1   -  -  244.7 100.1  bzip2 -1
+       N4   5   -  -  214.5  87.8
+       N7   5   -  -  210.6  86.2
+       N4  B1   -  -  215.4  88.2  bzip2 -1
+       N4  B9   -  -  214.8  87.9  bzip2 -9
+       N3   -   -  -  617.1 252.6
+     N4/7   -   -  -  694.0 284.0  -L 0
+     N4/7   1   -  -  223.2  91.3  -L 1
+     N4/7   9   -  -  207.3  84.9  -L 9
+     N4/7   -   -  Y  347.1 142.1  ncpdq -L 0
+     N4/7   1   -  Y  133.6  54.7  ncpdq -L 1
+     N4/7   1   7  -  223.1  91.3  --ppc default=7
+     N4/7   1   6  -  225.1  92.1  --ppc default=6
+     N4/7   1   5  -  221.4  90.6  --ppc default=5
+     N4/7   1   4  -  201.4  82.4  --ppc default=4
+     N4/7   1   3  -  185.3  75.9  --ppc default=3
+     N4/7   1   2  -  150.0  61.4  --ppc default=2
+     N4/7   1   1  -  100.8  41.3  --ppc default=1
+
+     # OMI-Aura_L2-OMIAuraSO2_2012m1222-o44888_v01-00-2014m0107t114720.h5
+     Type LLC PPC Pck  Size   %    Flags and Notes
+       H5   5   -  -   29.5 100.0  Original is compressed
+       H5  B1   -  -   29.3  99.6  bzip2 -1
+       N4   5   -  -   29.5 100.0
+       N4  B1   -  -   29.3  99.6  bzip2 -1
+       N4  B9   -  -   29.3  99.4  bzip2 -9
+       N4   -   -  -   50.7 172.3  -L 0
+       N4   1   -  -   29.8 101.3  -L 1
+       N4   9   -  -   29.4  99.8  -L 9
+       N4   -   -  Y   27.7  94.0  ncpdq -L 0
+       N4   1   -  Y   12.9  43.9  ncpdq -L 1
+       N4   1   7  -   29.7 100.7  --ppc default=7
+       N4   1   6  -   29.7 100.8  --ppc default=6
+       N4   1   5  -   27.3  92.8  --ppc default=5
+       N4   1   4  -   23.8  80.7  --ppc default=4
+       N4   1   3  -   20.3  69.0  --ppc default=3
+       N4   1   2  -   15.1  51.2  --ppc default=2
+       N4   1   1  -    9.9  33.6  --ppc default=1
+
+   A selective, per-variable approach to PPC yields the best balance of
+precision and compression yet requires the dataset producer to
+understand the intrinsic precision of each variable.  Such a
+specification for a GCM dataset might look like this (using names for
+the NCAR CAM model):
+     # Be conservative on non-explicit quantities, so default=5
+     # Some quantities deserve four significant digits
+     # Many quantities, such as aerosol optical depths and burdens, are
+     # highly uncertain and only useful to three significant digits.
+     ncks -7 -O \
+     --ppc default=5 \
+     --ppc AN.?,AQ.?=4 \
+     --ppc AER.?,AOD.?,ARE.?,AW.?,BURDEN.?=3 \
+     ncar_cam.nc ~/foo.nc
+
+   ---------- Footnotes ----------
+
+   (1) Rounding is performed by the internal math library 'rint()'
+family of functions that were standardized in C99.  The exact alorithm
+employed is VAL := rint(SCALE*VAL)/SCALE where SCALE is the nearest
+power of 2 that exceeds 10**PRC, and the inverse of SCALE is used when
+PRC < 0.  For PPC = 3 or PPC = -2, for example, we have SCALE = 1024 and
+SCALE = 1/128.
+
+   (2) The 'nc3tonc4' tool by Jeff Whitaker inspired NCO to implement
+PPC.  NCO implements a different DSD algorithm than 'nc3tonc4', and
+produces slightly different (not bit-for-bit) though self-consistent and
+equivalent results.  'nc3tonc4' records the precision of its DSD
+algorithm in the attribute 'least_significant_digit' and NCO does the
+same for consistency.
+
+   (3) The artificial dataset employed is one million evenly spaced
+values from 1.0-2.0.  The analysis data are N=13934592 values of the
+temperature field from the NASA MERRA analysis of 20130601.
+
+3.28 Deflation
 ==============
 
 Availability: 'ncap2', 'ncbo', 'nces', 'ncecat', 'ncflint', 'ncks',
@@ -4371,16 +4896,19 @@ Short options: '-L'
 Long options: '--dfl_lvl', '--deflate'
 
    All NCO operators that define variables support the netCDF4 feature
-of storing variables compressed with Lempel-Ziv deflation.  The
-Lempel-Ziv algorithm is a lossless data compression technique.  Activate
-this deflation with the '-L DFL_LVL' short option (or with the same
-argument to the '--dfl_lvl' or '--deflate' long options).  Specify the
-deflation level DFL_LVL on a scale from no deflation (DFL_LVL = 0) to
-maximum deflation (DFL_LVL = 9).  Minimal deflation (DFL_LVL = 1)
-achieves considerable storage compression with little time penalty.
-Higher deflation levels require more time for compression.  File sizes
-resulting from minimal (DFL_LVL = 1) and maximal (DFL_LVL = 9) deflation
-levels typically differ by a few percent in size.
+of storing variables compressed with the lossless DEFLATE compression
+algorithm.  DEFLATE combines the Lempel-Ziv encoding with Huffman
+coding.  The specific version used by netCDF4/HDF5 is that implemented
+in the 'zlib' library used by 'gzip'.  Activate deflation with the '-L
+DFL_LVL' short option (or with the same argument to the '--dfl_lvl' or
+'--deflate' long options).  Specify the deflation level DFL_LVL on a
+scale from no deflation (DFL_LVL = 0) to maximum deflation (DFL_LVL =
+9).  Under the hood, this selects the compression blocksize.  Minimal
+deflation (DFL_LVL = 1) achieves considerable storage compression with
+little time penalty.  Higher deflation levels require more time for
+compression.  File sizes resulting from minimal (DFL_LVL = 1) and
+maximal (DFL_LVL = 9) deflation levels typically differ by less than 10%
+in size.
 
    To compress an entire file using deflation, use
      ncks -4 -L 0 in.nc out.nc # No deflation (fast, no time penalty)
@@ -4399,7 +4927,7 @@ files by 50%.  Packed data may be deflated to squeeze datasets by about
    'ncks' prints deflation parameters, if any, to screen (*note ncks
 netCDF Kitchen Sink::).
 
-3.28 MD5 digests
+3.29 MD5 digests
 ================
 
 Availability: 'ncecat', 'ncks', 'ncrcat'
@@ -4469,7 +4997,7 @@ file disagree.
    These rules are evolving and as NCO pays more attention to data
 integrity.  We welcome feedback and suggestions from users.
 
-3.29 Buffer sizes
+3.30 Buffer sizes
 =================
 
 Availability: All operators
@@ -4499,7 +5027,7 @@ an INFO statement.
    (1) On modern Linux systems the block size defaults to 8192 B. The
 GLADE filesystem at NCAR has a block size of 512 kB.
 
-3.30 RAM disks
+3.31 RAM disks
 ==============
 
 Availability: All operators
@@ -4586,7 +5114,7 @@ substitute for benchmarking with real files.
 refrain from writing temporary output files.  This is accomplished with
 the '--no_tmp_fl' switch (*note Temporary Output Files::).
 
-3.31 Packed data
+3.32 Packed data
 ================
 
 Availability: 'ncap2', 'ncbo', 'nces', 'ncflint', 'ncpdq', 'ncra',
@@ -4722,7 +5250,7 @@ Methods and functions::).
 the '_FillValue' attribute, if any, of a packed variable is also stored
 at the original precision.
 
-3.32 Operation Types
+3.33 Operation Types
 ====================
 
 Availability: 'ncap2', 'ncra', 'nces', 'ncwa'
@@ -4738,9 +5266,15 @@ operation:
 'avgsqr'
      Mean of sum of squares
 'max'
-     Maximium value
+     Maximum value
 'min'
-     Minimium value
+     Minimum value
+'mabs'
+     Maximum absolute value
+'mebs'
+     Mean absolute value
+'mabs'
+     Minimum absolute value
 'rms'
      Root-mean-square (normalized by N)
 'rmssdn'
@@ -4783,8 +5317,7 @@ EXAMPLES
 
 Suppose you wish to examine the variable 'prs_sfc(time,lat,lon)' which
 contains a time series of the surface pressure as a function of latitude
-and longitude.  Find the minimium value of 'prs_sfc' over all
-dimensions:
+and longitude.  Find the minimum value of 'prs_sfc' over all dimensions:
      ncwa -y min -v prs_sfc in.nc foo.nc
 Find the maximum value of 'prs_sfc' at each time interval for each
 latitude:
@@ -4802,7 +5335,7 @@ said to be "degenerate".  By default, 'ncra' leaves the (degenerate)
 These operations work as expected in multi-file operators.  Suppose that
 'prs_sfc' is stored in multiple timesteps per file across multiple
 files, say 'jan.nc', 'feb.nc', 'march.nc'.  We can now find the three
-month maximium surface pressure at every point.
+month maximum surface pressure at every point.
      nces -y max -v prs_sfc jan.nc feb.nc march.nc out.nc
 
 It is possible to use a combination of these operations to compute the
@@ -4869,7 +5402,7 @@ first be collected into one file.
 this may consume a lot of temporary disk space, it is more or less
 required by the 'ncbo' operation in the third step.
 
-3.33 Type Conversion
+3.34 Type Conversion
 ====================
 
 Availability (automatic type conversion): 'ncap2', 'ncbo', 'nces',
@@ -4889,7 +5422,7 @@ user commands to change the type of a variable or attribute.  Most type
 conversion happens automatically, yet there are situations in which
 manual type conversion is advantageous.
 
-3.33.1 Automatic type conversion
+3.34.1 Automatic type conversion
 --------------------------------
 
 There are at least two reasons to avoid type conversions.  First, type
@@ -5009,7 +5542,7 @@ performed unnecessary type conversion for arithmetic.
 intrinsic type conversion, so the 'trunc()' function was never
 explicitly called, although the results would be the same if it were.
 
-3.33.2 Promoting Single-precision to Double
+3.34.2 Promoting Single-precision to Double
 -------------------------------------------
 
 Promotion of real numbers from single- to double-precision is
@@ -5324,17 +5857,17 @@ Please let us know what you think of the selected defaults and options.
    ---------- Footnotes ----------
 
    (1) According to Wikipedia's summary of IEEE standard 754, "If a
-decimal string with at most 6 significant digits is converted to IEEE
-754 single-precision and then converted back to the same number of
+decimal string with at most 6 significant digits is converted to IEEE 754
+single-precision and then converted back to the same number of
 significant decimal, then the final string should match the original;
 and if an IEEE 754 single-precision is converted to a decimal string
-with at least 9 significant decimal and then converted back to single,
+with at leastn 9 significant decimal and then converted back to single,
 then the final number must match the original".
 
    (2) According to Wikipedia's summary of IEEE standard 754, "If a
-decimal string with at most 15 significant digits is converted to IEEE
-754 double-precision representation and then converted back to a string
-with the same number of significant digits, then the final string should
+decimal string with at most 15 significant digits is converted to IEEE 754
+double-precision representation and then converted back to a string with
+the same number of significant digits, then the final string should
 match the original; and if an IEEE 754 double precision is converted to
 a decimal string with at least 17 significant digits and then converted
 back to double, then the final number must match the original".
@@ -5350,7 +5883,7 @@ average timeseries in 50-year chunks.
 
    (5) Thanks to Michael J. Prather for explaining this to me.
 
-3.33.3 Manual type conversion
+3.34.3 Manual type conversion
 -----------------------------
 
 'ncap2' provides intrinsic functions for performing manual type
@@ -5360,7 +5893,7 @@ type 'NC_SHORT' (a C-type 'short'), and variable 'prs' to external type
      ncap2 -s 'tpt=short(tpt);prs=double(prs)' in.nc out.nc
    *Note ncap2 netCDF Arithmetic Processor::, for more details.
 
-3.34 Batch Mode
+3.35 Batch Mode
 ===============
 
 Availability: All operators
@@ -5380,7 +5913,7 @@ they suppress interactive keyboard input.  NB: As of 20120515, 'ncap2'
 is unable to append to files that already contain the appended
 dimensions.
 
-3.35 History Attribute
+3.36 History Attribute
 ======================
 
 Availability: All operators
@@ -5408,7 +5941,7 @@ Attribute Editor::).  Note that the '-h' switch also turns off writing
 the 'nco_input_file_list' attribute for multi-file operators (*note File
 List Attributes::).
 
-3.36 File List Attributes
+3.37 File List Attributes
 =========================
 
 Availability: 'nces', 'ncecat', 'ncra', 'ncrcat'
@@ -5439,7 +5972,7 @@ the input file list global attributes when input is from 'stdin'.  The
 users to avoid storing what may amount to many thousands of filenames in
 a metadata attribute.
 
-3.37 CF Conventions
+3.38 CF Conventions
 ===================
 
 Availability: 'ncbo', 'nces', 'ncecat', 'ncflint', 'ncpdq', 'ncra',
@@ -5571,7 +6104,7 @@ specified in the 'units' attribute of 'time' from the first file.  The
 analogous problem has been fixed in ARM files (*note ARM Conventions::)
 and could be fixed for CF files if there is sufficient lobbying.
 
-3.38 ARM Conventions
+3.39 ARM Conventions
 ====================
 
 Availability: 'ncrcat'
@@ -5602,7 +6135,7 @@ contain the 'time' coordinate.  A short message is added to the
 'history' global attribute whenever these ARM-specific procedures are
 executed.
 
-3.39 Operator Version
+3.40 Operator Version
 =====================
 
 Availability: All operators
@@ -5622,14 +6155,14 @@ last modified 2008/05/11 built May 12 2008 on neige by zender Copyright
 that 'ncks' contains all patches up to version '3.9.5', which dates from
 May 11, 2008.
 
-4 Operator Reference Manual
-***************************
+4 Reference Manual
+******************
 
 This chapter presents reference pages for each of the operators
 individually.  The operators are presented in alphabetical order.  All
 valid command line switches are included in the syntax statement.
 Recall that descriptions of many of these command line switches are
-provided only in *note Common features::, to avoid redundancy.  Only
+provided only in *note Shared features::, to avoid redundancy.  Only
 options specific to, or most useful with, a particular operator are
 described in any detail in the sections below.
 
@@ -5899,7 +6432,11 @@ returned else exp3 is returned.
 ----------------
 
 Dimensions are defined in Output using the 'defdim()' function.
-     defdim("cnt",10);
+     defdim("cnt",10); # Dimension size is fixed by default
+     defdim("cnt",10,NC_UNLIMITED); # Dimension is unlimited (record dimension)
+     defdim("cnt",10,0); # Dimension is unlimited (record dimension)
+     defdim("cnt",10,1); # Dimension size is fixed
+     defdim("cnt",10,737); # All non-zero values indicate dimension size is fixed
 
    This dimension name must then be prefixed with a dollar-sign '$' when
 referred to in method arguments or left-hand-casting, e.g.,
@@ -6447,6 +6984,12 @@ manually created and applied as needed.
      Maximum value
 'min()'
      Minimum value
+'mabs()'
+     Maximum absolute value
+'mebs()'
+     Mean absolute value
+'mibs()'
+     Minimum absolute value
 'rms()'
      Root-mean-square (normalize by N)
 'rmssdn()'
@@ -6524,7 +7067,7 @@ variables.  *note Missing values ncap2::
 *Type Conversion Methods
 * These methods allow 'ncap2' to convert variables and attributes to the
 different netcdf types.  For more details on automatic and manual type
-conversion see (*note Type Conversion::).  You can only use the new
+conversion see (*note Type Conversion::).  You may only use the new
 netCDF4 types if you have compiled/links NCO with the netCDF4 library
 and the Output file is HDF5.
 
@@ -7850,7 +8393,7 @@ The GSL library has a large number of random number generators.  In
 addition there are a large set of functions for turning uniform random
 numbers into discrete or continuous probabilty distributions.  The
 random number generator algorithms vary in terms of quality numbers
-output, speed of execution and maximium number output.  For more
+output, speed of execution and maximum number output.  For more
 information see the GSL documentation.  The algorithm and seed are set
 via environment variables, these are picked up by the 'ncap2' code.
 
@@ -7862,9 +8405,9 @@ gsl_rng_19937.  The seed is set with the environment variable
 information about the chosen algorithm.
 
 'gsl_rng_min()'
-     the minimium value returned by the rng algorithm.
+     the minimum value returned by the rng algorithm.
 'gsl_rng_max()'
-     the maximium value returned by the rng algorithm.
+     the maximum value returned by the rng algorithm.
 
 *Uniformly Distributed Random Numbers*
 'gsl_rng_get(var_in)'
@@ -7873,7 +8416,7 @@ information about the chosen algorithm.
      algorthm.
 'gsl_rng_uniform_int(var_in)'
      This function returns var_in with random integers from 0 to n-1.
-     The value n must be less than or equal to the maximium value of the
+     The value n must be less than or equal to the maximum value of the
      chosen rng algorithm.
 'gsl_rng_uniform(var_in)'
      This function returns var_in with double-precision numbers in the
@@ -7895,8 +8438,9 @@ action.
      // 10 random numbers from the range 0 - 20
      a2 = 1, 1, 6, 9, 11, 13, 13, 15, 16, 19 ;
 
+
 The following example produces an 'ncap2' runtime error.  This is
-because the chose rng algorithm has a maximium value greater than '
+because the chose rng algorithm has a maximum value greater than '
 NC_MAX_INT=2147483647 '; the wrapper functions to 'gsl_rng_get()' and
 'gsl_rng_uniform_int()' return variable of type 'NC_INT'.  Please be
 aware of this when using random number distribution functions functions
@@ -7906,7 +8450,7 @@ from the GSL library which return 'unsigned int'.  Examples of these are
      export GSL_RNG_TYPE=mt19937
      ncap2 -v -O -s 'a1[time]=0;a2=gsl_rng_get(a1);' in.nc foo.nc
 
-To find the maximium value of the chosen rng algorithm use the following
+To find the maximum value of the chosen rng algorithm use the following
 code snippet.
      ncap2 -v -O -s 'rng_max=gsl_rng_max();print(rng_max)' in.nc foo.nc
 
@@ -8358,8 +8902,10 @@ losing information.  *Note Missing Values::, for more information.
 
    To master 'ncatted' one must understand the meaning of the structure
 that describes the attribute modification, ATT_DSC specified by the
-required option '-a' or '--attribute'.  Each ATT_DSC contains five
-elements, which makes using 'ncatted' somewhat complicated, yet
+required option '-a' or '--attribute'.  This option is repeatable and
+may be used multiple time in a single 'ncatted' invocation to increase
+the efficiency of altering multiple attributes.  Each ATT_DSC contains
+five elements.  This makes using 'ncatted' somewhat complicated, though
 powerful.  The ATT_DSC fields are in the following order:
 
    ATT_DSC = ATT_NM, VAR_NM, MODE, ATT_TYPE, ATT_VAL
@@ -8382,8 +8928,8 @@ ATT_VAL
 There should be no empty space between these five consecutive arguments.
 The description of these arguments follows in their order of appearance.
 
-   The value of ATT_NM is the name of the attribute you want to edit.
-This meaning of this should be clear to all 'ncatted' users.  Recall, as
+   The value of ATT_NM is the name of the attribute to edit.  This
+meaning of this should be clear to all 'ncatted' users.  Recall, as
 mentioned above, that VAR_NM (but not ATT_NM) may be specified as a
 regular expression.  If ATT_NM is omitted (i.e., left blank) and
 "Delete" mode is selected, then all attributes associated with the
@@ -8413,7 +8959,8 @@ you decide to change the conventions you use for describing the data.
 'c'
      "Create".  Create variable VAR_NM attribute ATT_NM with ATT_VAL if
      ATT_NM does not yet exist.  If VAR_NM already has an attribute
-     ATT_NM, there is no effect.
+     ATT_NM, there is no effect, so the existing attribute is preserved
+     without change.
 'd'
      "Delete".  Delete current VAR_NM attribute ATT_NM.  If VAR_NM does
      not have an attribute ATT_NM, there is no effect.  If ATT_NM is
@@ -8893,7 +9440,7 @@ SYNTAX
      [-D DBG] [-d DIM,[MIN][,[MAX][,[STRIDE]]] [-F]
      [-G GPE_DSC] [-g GRP[,...]] [-h] [--hdf] [--hdr_pad NBR]
      [-L DFL_LVL] [-l PATH] [-n LOOP] [--no_tmp_fl] [--nsm_fl|grp] [--nsm_sfx sfx]
-     [-O] [-o OUTPUT-FILE] [-p PATH] [-R] [-r] [--ram_all] [--rth_dbl|flt]
+     [-O] [-o OUTPUT-FILE] [-p PATH] [--ppc ...] [-R] [-r] [--ram_all] [--rth_dbl|flt]
      [-t THR_NBR] [--unn] [-v VAR[,...]] [-X ...] [-x] [-y OP_TYP]
      [INPUT-FILES] [OUTPUT-FILE]
 
@@ -9048,7 +9595,7 @@ SYNTAX
      [-D DBG] [-d DIM,[MIN][,[MAX][,[STRIDE]]] [-F]
      [-G GPE_DSC] [-g GRP[,...]] [--gag] [-h] [--hdf] [--hdr_pad NBR]
      [-L DFL_LVL] [-l PATH] [-M] [--md5_digest] [--mrd] [-n LOOP] [--no_tmp_fl]
-     [-O] [-o OUTPUT-FILE] [-p PATH] [-R] [-r] [--ram_all]
+     [-O] [-o OUTPUT-FILE] [-p PATH] [--ppc ...] [-R] [-r] [--ram_all]
      [-t THR_NBR] [-u ULM_NM] [--unn] [-v VAR[,...]] [-X ...] [-x]
      [INPUT-FILES] [OUTPUT-FILE]
 
@@ -9060,7 +9607,7 @@ the traditional method employed on (flat) netCDF3 files and still the
 default method, stores INPUT-FILES as consecutive records in the
 OUTPUT-FILE.  "Group AGgregation" (GAG) stores INPUT-FILES as top-level
 groups in the netCDF4 OUTPUT-FILE.  Record Aggregation (RAG) makes
-numerous assumptions about the structure of input files and Group
+numerous assumptions about the structure of input files whereas Group
 Aggregation (GAG) makes none.  Both methods are described in detail
 below.  Since 'ncecat' aggregates all the contents of the input files,
 it can easily produce large output files so it is often helpful to
@@ -9207,7 +9754,7 @@ SYNTAX
      [-D DBG] [-d DIM,[MIN][,[MAX][,[STRIDE]]]
      [-F] [--fix_rec_crd] [-G GPE_DSC] [-g GRP[,...]] [-h] [--hdr_pad NBR]
      [-i VAR,VAL3] [-L DFL_LVL] [-l PATH] [--no_tmp_fl]
-     [-O] [-o FILE_3] [-p PATH] [-R] [-r] [--ram_all]
+     [-O] [-o FILE_3] [-p PATH] [--ppc ...] [-R] [-r] [--ram_all]
      [-t THR_NBR] [--unn] [-v VAR[,...]] [-w WGT1[,WGT2]] [-X ...] [-x]
      FILE_1 FILE_2 [FILE_3]
 
@@ -9358,7 +9905,7 @@ SYNTAX
      [-D DBG] [-d DIM,[MIN][,[MAX][,[STRIDE]]] [-F] [--fix_rec_dmn DIM]
      [-G GPE_DSC] [-g GRP[,...]] [--grp_xtr_var_xcl] [-H] [-h] [--hdn] [--hdr_pad NBR]
      [-L DFL_LVL] [-l PATH] [-M] [-m] [--mk_rec_dmn DIM] [--md5_digest]
-     [--no_blank] [--no_tmp_fl] [-O] [-o OUTPUT-FILE] [-P] [-p PATH]
+     [--no_blank] [--no_tmp_fl] [-O] [-o OUTPUT-FILE] [-P] [-p PATH] [--ppc ...]
      [-Q] [-q] [-R] [-r] [--rad] [--ram_all] [-s FORMAT]
      [-u] [--unn] [-V] [-v VAR[,...]] [-X ...] [-x] [--xml]
      INPUT-FILE [[OUTPUT-FILE]]
@@ -9451,7 +9998,7 @@ Options specific to 'ncks'
 --------------------------
 
 The following summarizes features unique to 'ncks'.  Features common to
-many operators are described in *note Common features::.
+many operators are described in *note Shared features::.
 
 '-5'
      Print data to screen alphabetically by group, and alphabetically by
@@ -10024,14 +10571,15 @@ thus not technically strings) is likely to result in a core dump.
    Create netCDF 'out.nc' containing all variables, and any associated
 coordinates, except variable 'time', from netCDF 'in.nc':
      ncks -x -v time in.nc out.nc
-   As a special case of this, consider how to remove a CF Convention
-comliant 'ancillary_variables', 'bounds', or 'coordinates' variable
-(*note CF Conventions::) such as 'time_bounds'.  NCO subsetting assumes
-the user wants all ancillary variables, axes, bounds and coordinates
-associated with all extracted variables (*note Subsetting Coordinate
-Variables::).  Hence to exclude a 'ancillary_variables', 'bounds', or
-'coordinates' variable while retaining the "parent" variable (here
-'time'), one must use the '-C' switch:
+   As a special case of this, consider how to remove a variable such as
+'time_bounds' that is identified in a CF Convention (*note CF
+Conventions::) compliant 'ancillary_variables', 'bounds', or
+'coordinates' attribute.  NCO subsetting assumes the user wants all
+ancillary variables, axes, bounds and coordinates associated with all
+extracted variables (*note Subsetting Coordinate Variables::).  Hence to
+exclude a 'ancillary_variables', 'bounds', or 'coordinates' variable
+while retaining the "parent" variable (here 'time'), one must use the
+'-C' switch:
      ncks -C -x -v time_bounds in.nc out.nc
    The '-C' switch tells the operator _NOT_ to necessarily include all
 the CF ancillary variables, axes, bounds, and coordinates.  Hence the
@@ -10077,7 +10625,7 @@ SYNTAX
      [-D DBG] [-d DIM,[MIN][,[MAX][,[STRIDE]]]
      [-F] [-G GPE_DSC] [-g GRP[,...]] [-h] [--hdf] [--hdr_pad NBR]
      [-L DFL_LVL] [-l PATH] [-M PCK_MAP] [--mrd] [--no_tmp_fl]
-     [-O] [-o OUTPUT-FILE] [-P PCK_PLC] [-p PATH]
+     [-O] [-o OUTPUT-FILE] [-P PCK_PLC] [-p PATH] [--ppc ...]
      [-R] [-r] [--ram_all] [-t THR_NBR] [-U] [--unn] [-v VAR[,...]] [-X ...] [-x]
      INPUT-FILE [OUTPUT-FILE]
 
@@ -10443,7 +10991,7 @@ SYNTAX
      [-D DBG] [-d DIM,[MIN][,[MAX][,[STRIDE][,[SUBCYCLE]]]] [-F]
      [-G GPE_DSC] [-g GRP[,...]] [-h] [--hdf] [--hdr_pad NBR]
      [-L DFL_LVL] [-l PATH] [--mro] [-n LOOP] [--no_tmp_fl]
-     [-O] [-o OUTPUT-FILE] [-p PATH] [-R] [-r] [--ram_all] [--rec_apn] [--rth_dbl|flt]
+     [-O] [-o OUTPUT-FILE] [-p PATH] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn] [--rth_dbl|flt]
      [-t THR_NBR] [--unn] [-v VAR[,...]] [-X ...] [-x] [-y OP_TYP]
      [INPUT-FILES] [OUTPUT-FILE]
 
@@ -10512,7 +11060,7 @@ SYNTAX
      [-D DBG] [-d DIM,[MIN][,[MAX][,[STRIDE][,[SUBCYCLE]]]] [-F]
      [-G GPE_DSC] [-g GRP[,...]] [-h] [--hdr_pad NBR]
      [-L DFL_LVL] [-l PATH] [--md5_digest] [-n LOOP] [--no_tmp_fl]
-     [-O] [-o OUTPUT-FILE] [-p PATH] [-R] [-r] [--ram_all] [--rec_apn]
+     [-O] [-o OUTPUT-FILE] [-p PATH] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn]
      [-t THR_NBR] [--unn] [-v VAR[,...]] [-X ...] [-x]
      [INPUT-FILES] [OUTPUT-FILE]
 
@@ -10807,7 +11355,7 @@ SYNTAX
      [-D DBG] [-d DIM,[MIN][,[MAX][,[STRIDE]]] [-F]
      [-G GPE_DSC] [-g GRP[,...]] [-h] [--hdr_pad NBR] [-I]
      [-L DFL_LVL] [-l PATH] [-M MASK_VAL] [-m MASK_VAR] [-N] [--no_tmp_fl]
-     [-O] [-o OUTPUT-FILE] [-p PATH] [-R] [-r] [--ram_all] [--rth_dbl|flt]
+     [-O] [-o OUTPUT-FILE] [-p PATH] [--ppc ...] [-R] [-r] [--ram_all] [--rth_dbl|flt]
      [-T MASK_COMP] [-t THR_NBR] [--unn] [-v VAR[,...]] [-w WEIGHT]
      [-X ...] [-x] [-y OP_TYP]
      INPUT-FILE [OUTPUT-FILE]
@@ -12721,2971 +13269,3027 @@ General Index
 * Menu:
 
 * '"' (double quote):                    ncatted netCDF Attribute Editor.
-                                                            (line  8561)
+                                                            (line  9120)
 * '#include':                            Syntax of ncap2 statements.
-                                                            (line  5763)
-* '$' (wildcard character):              Subsetting Files.  (line  2588)
+                                                            (line  6308)
+* '$' (wildcard character):              Subsetting Files.  (line  2591)
 * '%' (modulus):                         Intrinsic mathematical methods.
-                                                            (line  8134)
+                                                            (line  8690)
 * ''' (end quote):                       ncatted netCDF Attribute Editor.
-                                                            (line  8561)
+                                                            (line  9120)
 * '*':                                   ncbo netCDF Binary Operator.
-                                                            (line  8693)
-* '*' (filename expansion):              Subsetting Files.  (line  2588)
+                                                            (line  9253)
+* '*' (filename expansion):              Subsetting Files.  (line  2591)
 * '*' (multiplication):                  Intrinsic mathematical methods.
-                                                            (line  8134)
-* '*' (wildcard character):              Subsetting Files.  (line  2595)
+                                                            (line  8690)
+* '*' (wildcard character):              Subsetting Files.  (line  2598)
 * '+':                                   ncbo netCDF Binary Operator.
-                                                            (line  8693)
+                                                            (line  9253)
 * '+' (addition):                        Intrinsic mathematical methods.
-                                                            (line  8134)
-* '+' (wildcard character):              Subsetting Files.  (line  2595)
+                                                            (line  8690)
+* '+' (wildcard character):              Subsetting Files.  (line  2598)
 * '-':                                   ncbo netCDF Binary Operator.
-                                                            (line  8693)
+                                                            (line  9253)
 * '-' (subtraction):                     Intrinsic mathematical methods.
-                                                            (line  8134)
+                                                            (line  8690)
 * '--3':                                 File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '--4':                                 File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '--5':                                 File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '--6':                                 File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '--64bit':                             File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '--7':                                 File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '--abc':                               ncks netCDF Kitchen Sink.
-                                                            (line  9519)
+                                                            (line 10079)
 * '--alphabetize':                       ncks netCDF Kitchen Sink.
-                                                            (line  9519)
+                                                            (line 10079)
 * '--apn':                               Temporary Output Files.
-                                                            (line  1004)
-* '--apn' <1>:                           Batch Mode.        (line  5409)
+                                                            (line  1007)
+* '--apn' <1>:                           Batch Mode.        (line  5954)
 * '--apn' <2>:                           Filters for 'ncks'.
-                                                            (line  9995)
+                                                            (line 10555)
 * '--append':                            Temporary Output Files.
-                                                            (line  1004)
-* '--append' <1>:                        Batch Mode.        (line  5409)
+                                                            (line  1007)
+* '--append' <1>:                        Batch Mode.        (line  5954)
 * '--append' <2>:                        Filters for 'ncks'.
-                                                            (line  9995)
+                                                            (line 10555)
 * '--auxiliary':                         Auxiliary Coordinates.
-                                                            (line  3664)
+                                                            (line  3667)
 * '--auxiliary LON_MIN,LON_MAX,LAT_MIN,LAT_MAX': Auxiliary Coordinates.
-                                                            (line  3664)
-* '--bfr_sz_hnt':                        Buffer sizes.      (line  4512)
+                                                            (line  3667)
+* '--bfr_sz_hnt':                        Buffer sizes.      (line  5048)
 * '--binary':                            ncks netCDF Kitchen Sink.
-                                                            (line  9529)
+                                                            (line 10089)
 * '--bnr':                               ncks netCDF Kitchen Sink.
-                                                            (line  9529)
+                                                            (line 10089)
 * '--cdl':                               ncks netCDF Kitchen Sink.
-                                                            (line  9584)
-* '--cell_methods':                      CF Conventions.    (line  5577)
-* '--chunk_byte':                        Chunking.          (line  4132)
-* '--chunk_dimension':                   Chunking.          (line  4132)
-* '--chunk_map':                         Chunking.          (line  4132)
-* '--chunk_min':                         Chunking.          (line  4132)
-* '--chunk_policy':                      Chunking.          (line  4132)
-* '--chunk_scalar':                      Chunking.          (line  4132)
-* '--cll_mth':                           CF Conventions.    (line  5577)
-* '--cnk_byt':                           Chunking.          (line  4132)
-* '--cnk_dmn':                           Chunking.          (line  4132)
-* '--cnk_map':                           Chunking.          (line  4132)
-* '--cnk_map CNK_MAP':                   Chunking.          (line  4239)
-* '--cnk_min':                           Chunking.          (line  4132)
-* '--cnk_plc':                           Chunking.          (line  4132)
-* '--cnk_scl':                           Chunking.          (line  4132)
+                                                            (line 10144)
+* '--cell_methods':                      CF Conventions.    (line  6122)
+* '--chunk_byte':                        Chunking.          (line  4135)
+* '--chunk_dimension':                   Chunking.          (line  4135)
+* '--chunk_map':                         Chunking.          (line  4135)
+* '--chunk_min':                         Chunking.          (line  4135)
+* '--chunk_policy':                      Chunking.          (line  4135)
+* '--chunk_scalar':                      Chunking.          (line  4135)
+* '--cll_mth':                           CF Conventions.    (line  6122)
+* '--cnk_byt':                           Chunking.          (line  4135)
+* '--cnk_dmn':                           Chunking.          (line  4135)
+* '--cnk_map':                           Chunking.          (line  4135)
+* '--cnk_map CNK_MAP':                   Chunking.          (line  4252)
+* '--cnk_min':                           Chunking.          (line  4135)
+* '--cnk_plc':                           Chunking.          (line  4135)
+* '--cnk_scl':                           Chunking.          (line  4135)
 * '--coords':                            Subsetting Coordinate Variables.
-                                                            (line  2665)
-* '--coords' <1>:                        CF Conventions.    (line  5566)
+                                                            (line  2668)
+* '--coords' <1>:                        CF Conventions.    (line  6111)
 * '--crd':                               Subsetting Coordinate Variables.
-                                                            (line  2665)
-* '--crd' <1>:                           CF Conventions.    (line  5566)
+                                                            (line  2668)
+* '--crd' <1>:                           CF Conventions.    (line  6111)
 * '--create_ram':                        Temporary Output Files.
-                                                            (line   962)
-* '--create_ram' <1>:                    RAM disks.         (line  4543)
+                                                            (line   965)
+* '--create_ram' <1>:                    RAM disks.         (line  5079)
 * '--data':                              ncks netCDF Kitchen Sink.
-                                                            (line  9632)
+                                                            (line 10192)
 * '--dbg_lvl DEBUG-LEVEL':               Help Requests and Bug Reports.
-                                                            (line   877)
-* '--dbg_lvl DEBUG-LEVEL' <1>:           Large Datasets.    (line  1340)
+                                                            (line   880)
+* '--dbg_lvl DEBUG-LEVEL' <1>:           Large Datasets.    (line  1343)
 * '--dbg_lvl DEBUG-LEVEL' <2>:           Command Line Options.
-                                                            (line  1628)
+                                                            (line  1631)
 * '--dbl':                               Promoting Single-precision to Double.
-                                                            (line  5056)
+                                                            (line  5597)
 * '--debug-level DEBUG-LEVEL':           Help Requests and Bug Reports.
-                                                            (line   877)
-* '--debug-level DEBUG-LEVEL' <1>:       Large Datasets.    (line  1340)
-* '--deflate':                           Deflation.         (line  4405)
-* '--dfl_lvl':                           Deflation.         (line  4405)
-* '--dimension DIM,[MIN],[MAX],STRIDE':  Stride.            (line  3282)
+                                                            (line   880)
+* '--debug-level DEBUG-LEVEL' <1>:       Large Datasets.    (line  1343)
+* '--deflate':                           Deflation.         (line  4938)
+* '--dfl_lvl':                           Deflation.         (line  4938)
+* '--dimension DIM,[MIN],[MAX],STRIDE':  Stride.            (line  3285)
 * '--dimension DIM,[MIN],[MAX],[STRIDE],[SUBCYCLE]': Subcycle.
-                                                            (line  3394)
-* '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]': Hyperslabs.   (line  3163)
+                                                            (line  3397)
+* '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]': Hyperslabs.   (line  3166)
 * '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.
-                                                            (line  3470)
+                                                            (line  3473)
 * '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]' <2>: Wrapped Coordinates.
-                                                            (line  3614)
+                                                            (line  3617)
 * '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]' <3>: UDUnits Support.
-                                                            (line  3774)
+                                                            (line  3777)
 * '--diskless_all':                      Memory Requirements.
-                                                            (line  1351)
-* '--diskless_all' <1>:                  RAM disks.         (line  4543)
-* '--dmn DIM,[MIN],[MAX],STRIDE':        Stride.            (line  3282)
-* '--dmn DIM,[MIN],[MAX],[STRIDE],SUBCYCLE]': Subcycle.     (line  3394)
-* '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]':  Hyperslabs.        (line  3163)
-* '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.     (line  3470)
+                                                            (line  1354)
+* '--diskless_all' <1>:                  RAM disks.         (line  5079)
+* '--dmn DIM,[MIN],[MAX],STRIDE':        Stride.            (line  3285)
+* '--dmn DIM,[MIN],[MAX],[STRIDE],SUBCYCLE]': Subcycle.     (line  3397)
+* '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]':  Hyperslabs.        (line  3166)
+* '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.     (line  3473)
 * '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]' <2>: Wrapped Coordinates.
-                                                            (line  3614)
+                                                            (line  3617)
 * '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]' <3>: UDUnits Support.
-                                                            (line  3774)
+                                                            (line  3777)
 * '--ensemble_file':                     nces netCDF Ensemble Statistics.
-                                                            (line  8985)
+                                                            (line  9545)
 * '--ensemble_group':                    nces netCDF Ensemble Statistics.
-                                                            (line  8985)
+                                                            (line  9545)
 * '--ensemble_suffix':                   nces netCDF Ensemble Statistics.
-                                                            (line  8985)
-* '--exclude':                           Subsetting Files.  (line  2407)
+                                                            (line  9545)
+* '--exclude':                           Subsetting Files.  (line  2410)
 * '--exclude' <1>:                       Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * '--file_format':                       File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '--file_list':                         File List Attributes.
-                                                            (line  5457)
-* '--fix_rec_dmn all':                   Autoconversion.    (line  2338)
+                                                            (line  6002)
+* '--fix_rec_dmn all':                   Autoconversion.    (line  2341)
 * '--fix_rec_dmn DIM':                   ncks netCDF Kitchen Sink.
-                                                            (line  9545)
+                                                            (line 10105)
 * '--flt':                               Promoting Single-precision to Double.
-                                                            (line  5056)
+                                                            (line  5597)
 * '--fl_bnr':                            ncks netCDF Kitchen Sink.
-                                                            (line  9529)
+                                                            (line 10089)
 * '--fl_fmt':                            File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '--fl_lst_in':                         File List Attributes.
-                                                            (line  5457)
+                                                            (line  6002)
 * '--fl_out FL_OUT':                     Specifying Output Files.
-                                                            (line  1792)
+                                                            (line  1795)
 * '--fl_spt':                            ncap2 netCDF Arithmetic Processor.
-                                                            (line  5701)
+                                                            (line  6246)
 * '--fnc_tbl':                           Intrinsic mathematical methods.
-                                                            (line  8241)
+                                                            (line  8797)
 * '--fortran':                           C and Fortran Index Conventions.
-                                                            (line  3126)
+                                                            (line  3129)
 * '--gag':                               ncecat netCDF Ensemble Concatenator.
-                                                            (line  9157)
-* '--gag' <1>:                           Combine Files.     (line 11510)
+                                                            (line  9717)
+* '--gag' <1>:                           Combine Files.     (line 12071)
 * '--glb_mtd_spp':                       ncecat netCDF Ensemble Concatenator.
-                                                            (line  9183)
+                                                            (line  9743)
 * '--gpe GPE_DSC':                       Group Path Editing.
-                                                            (line  2692)
-* '--group GRP':                         Subsetting Files.  (line  2407)
-* '--grp GRP':                           Subsetting Files.  (line  2407)
-* '--grp_xtr_var_xcl':                   Subsetting Files.  (line  2407)
-* '--gxvx':                              Subsetting Files.  (line  2407)
+                                                            (line  2695)
+* '--group GRP':                         Subsetting Files.  (line  2410)
+* '--grp GRP':                           Subsetting Files.  (line  2410)
+* '--grp_xtr_var_xcl':                   Subsetting Files.  (line  2410)
+* '--gxvx':                              Subsetting Files.  (line  2410)
 * '--hdf4':                              netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   679)
-* '--hdf_unpack':                        Packed data.       (line  4630)
-* '--hdf_upk':                           Packed data.       (line  4630)
+                                                            (line   680)
+* '--hdf_unpack':                        Packed data.       (line  5166)
+* '--hdf_upk':                           Packed data.       (line  5166)
 * '--hdn':                               ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * '--hdr_pad HDR_PAD':                   Metadata Optimization.
-                                                            (line  1524)
+                                                            (line  1527)
 * '--header_pad HDR_PAD':                Metadata Optimization.
-                                                            (line  1524)
+                                                            (line  1527)
 * '--hidden':                            ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * '--hieronymus':                        ncks netCDF Kitchen Sink.
-                                                            (line  9632)
-* '--history':                           History Attribute. (line  5429)
-* '--hst':                               History Attribute. (line  5429)
-* '--intersection':                      Subsetting Files.  (line  2513)
-* '--lcl OUTPUT-PATH':                   Remote storage.    (line  1824)
-* '--local OUTPUT-PATH':                 Remote storage.    (line  1824)
-* '--map CNK_MAP':                       Chunking.          (line  4239)
+                                                            (line 10192)
+* '--history':                           History Attribute. (line  5974)
+* '--hst':                               History Attribute. (line  5974)
+* '--intersection':                      Subsetting Files.  (line  2516)
+* '--lcl OUTPUT-PATH':                   Remote storage.    (line  1827)
+* '--local OUTPUT-PATH':                 Remote storage.    (line  1827)
+* '--map CNK_MAP':                       Chunking.          (line  4252)
 * '--map PCK_MAP':                       ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10222)
-* '--mask-value MASK_VAL':               Mask condition.    (line 10972)
+                                                            (line 10783)
+* '--mask-value MASK_VAL':               Mask condition.    (line 11533)
 * '--mask-variable MASK_VAR':            ncwa netCDF Weighted Averager.
-                                                            (line 10904)
-* '--mask_comparator MASK_COMP':         Mask condition.    (line 10958)
+                                                            (line 11465)
+* '--mask_comparator MASK_COMP':         Mask condition.    (line 11519)
 * '--mask_condition MASK_COND':          ncwa netCDF Weighted Averager.
-                                                            (line 10904)
-* '--mask_condition MASK_COND' <1>:      Mask condition.    (line 10958)
-* '--mask_value MASK_VAL':               Mask condition.    (line 10972)
+                                                            (line 11465)
+* '--mask_condition MASK_COND' <1>:      Mask condition.    (line 11519)
+* '--mask_value MASK_VAL':               Mask condition.    (line 11533)
 * '--mask_variable MASK_VAR':            ncwa netCDF Weighted Averager.
-                                                            (line 10904)
-* '--md5_dgs':                           MD5 digests.       (line  4442)
-* '--md5_digest':                        MD5 digests.       (line  4442)
-* '--md5_write_attribute':               MD5 digests.       (line  4442)
-* '--md5_wrt_att':                       MD5 digests.       (line  4442)
+                                                            (line 11465)
+* '--md5_dgs':                           MD5 digests.       (line  4978)
+* '--md5_digest':                        MD5 digests.       (line  4978)
+* '--md5_write_attribute':               MD5 digests.       (line  4978)
+* '--md5_wrt_att':                       MD5 digests.       (line  4978)
 * '--Metadata':                          ncks netCDF Kitchen Sink.
-                                                            (line  9677)
+                                                            (line 10237)
 * '--metadata':                          ncks netCDF Kitchen Sink.
-                                                            (line  9720)
+                                                            (line 10280)
 * '--mk_rec_dmn DIM':                    ncecat netCDF Ensemble Concatenator.
-                                                            (line  9242)
+                                                            (line  9802)
 * '--mk_rec_dmn DIM' <1>:                ncks netCDF Kitchen Sink.
-                                                            (line  9624)
+                                                            (line 10184)
 * '--mrd':                               Multiple Record Dimensions.
-                                                            (line  3981)
-* '--mro':                               Subcycle.          (line  3394)
-* '--msa':                               Multislabs.        (line  3470)
-* '--msa_user_order':                    Multislabs.        (line  3470)
-* '--msa_usr_rdr':                       Multislabs.        (line  3470)
-* '--msk_cmp_typ MASK_COMP':             Mask condition.    (line 10958)
+                                                            (line  3984)
+* '--mro':                               Subcycle.          (line  3397)
+* '--msa':                               Multislabs.        (line  3473)
+* '--msa_user_order':                    Multislabs.        (line  3473)
+* '--msa_usr_rdr':                       Multislabs.        (line  3473)
+* '--msk_cmp_typ MASK_COMP':             Mask condition.    (line 11519)
 * '--msk_cnd MASK_COND':                 ncwa netCDF Weighted Averager.
-                                                            (line 10904)
-* '--msk_cnd_sng MASK_COND':             Mask condition.    (line 10958)
+                                                            (line 11465)
+* '--msk_cnd_sng MASK_COND':             Mask condition.    (line 11519)
 * '--msk_nm MASK_VAR':                   ncwa netCDF Weighted Averager.
-                                                            (line 10904)
-* '--msk_val MASK_VAL':                  Mask condition.    (line 10972)
+                                                            (line 11465)
+* '--msk_val MASK_VAL':                  Mask condition.    (line 11533)
 * '--msk_var MASK_VAR':                  ncwa netCDF Weighted Averager.
-                                                            (line 10904)
+                                                            (line 11465)
 * '--Mtd':                               ncks netCDF Kitchen Sink.
-                                                            (line  9677)
+                                                            (line 10237)
 * '--mtd':                               ncks netCDF Kitchen Sink.
-                                                            (line  9720)
+                                                            (line 10280)
 * '--multiple_record_dimensions':        Multiple Record Dimensions.
-                                                            (line  3981)
+                                                            (line  3984)
 * '--ncml':                              ncks netCDF Kitchen Sink.
-                                                            (line  9804)
+                                                            (line 10364)
 * '--netcdf4':                           File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '--nintap LOOP':                       Specifying Input Files.
-                                                            (line  1684)
+                                                            (line  1687)
 * '--no-blank':                          ncks netCDF Kitchen Sink.
-                                                            (line  9733)
+                                                            (line 10293)
 * '--no-coords':                         Subsetting Coordinate Variables.
-                                                            (line  2665)
-* '--no-coords' <1>:                     CF Conventions.    (line  5566)
+                                                            (line  2668)
+* '--no-coords' <1>:                     CF Conventions.    (line  6111)
 * '--no-crd':                            Subsetting Coordinate Variables.
-                                                            (line  2665)
-* '--no-crd' <1>:                        CF Conventions.    (line  5566)
+                                                            (line  2668)
+* '--no-crd' <1>:                        CF Conventions.    (line  6111)
 * '--noblank':                           ncks netCDF Kitchen Sink.
-                                                            (line  9733)
+                                                            (line 10293)
 * '--no_blank':                          ncks netCDF Kitchen Sink.
-                                                            (line  9733)
+                                                            (line 10293)
 * '--no_blank' <1>:                      Filters for 'ncks'.
-                                                            (line 10043)
-* '--no_cell_methods':                   CF Conventions.    (line  5577)
-* '--no_cll_mth':                        CF Conventions.    (line  5577)
+                                                            (line 10603)
+* '--no_cell_methods':                   CF Conventions.    (line  6122)
+* '--no_cll_mth':                        CF Conventions.    (line  6122)
 * '--no_dmn_var_nm':                     ncks netCDF Kitchen Sink.
-                                                            (line  9793)
+                                                            (line 10353)
 * '--no_dmn_var_nm' <1>:                 Filters for 'ncks'.
-                                                            (line 10055)
+                                                            (line 10615)
 * '--no_nm_prn':                         ncks netCDF Kitchen Sink.
-                                                            (line  9793)
+                                                            (line 10353)
 * '--no_nm_prn' <1>:                     Filters for 'ncks'.
-                                                            (line 10055)
+                                                            (line 10615)
 * '--no_rec_dmn DIM':                    ncks netCDF Kitchen Sink.
-                                                            (line  9545)
+                                                            (line 10105)
 * '--no_tmp_fl':                         Temporary Output Files.
-                                                            (line   962)
-* '--no_tmp_fl' <1>:                     RAM disks.         (line  4623)
+                                                            (line   965)
+* '--no_tmp_fl' <1>:                     RAM disks.         (line  5159)
 * '--nsm_fl':                            nces netCDF Ensemble Statistics.
-                                                            (line  8985)
+                                                            (line  9545)
 * '--nsm_grp':                           nces netCDF Ensemble Statistics.
-                                                            (line  8985)
+                                                            (line  9545)
 * '--nsm_sfx':                           nces netCDF Ensemble Statistics.
-                                                            (line  8985)
-* '--nsx':                               Subsetting Files.  (line  2513)
-* '--omp_num_threads THR_NBR':           OpenMP Threading.  (line  1547)
+                                                            (line  9545)
+* '--nsx':                               Subsetting Files.  (line  2516)
+* '--omp_num_threads THR_NBR':           OpenMP Threading.  (line  1550)
 * '--open_ram':                          Temporary Output Files.
-                                                            (line   962)
+                                                            (line   965)
 * '--open_ram' <1>:                      Memory Requirements.
-                                                            (line  1351)
-* '--open_ram' <2>:                      RAM disks.         (line  4543)
-* '--operation OP_TYP':                  Operation Types.   (line  4767)
+                                                            (line  1354)
+* '--open_ram' <2>:                      RAM disks.         (line  5079)
+* '--operation OP_TYP':                  Operation Types.   (line  5303)
 * '--operation OP_TYP' <1>:              ncbo netCDF Binary Operator.
-                                                            (line  8693)
-* '--op_rlt MASK_COMP':                  Mask condition.    (line 10958)
-* '--op_typ OP_TYP':                     Operation Types.   (line  4767)
+                                                            (line  9253)
+* '--op_rlt MASK_COMP':                  Mask condition.    (line 11519)
+* '--op_typ OP_TYP':                     Operation Types.   (line  5303)
 * '--op_typ OP_TYP' <1>:                 ncbo netCDF Binary Operator.
-                                                            (line  8693)
+                                                            (line  9253)
 * '--orphan_dimensions':                 ncks netCDF Kitchen Sink.
-                                                            (line  9767)
+                                                            (line 10327)
 * '--output FL_OUT':                     Specifying Output Files.
-                                                            (line  1792)
+                                                            (line  1795)
 * '--overwrite':                         Temporary Output Files.
-                                                            (line  1004)
-* '--overwrite' <1>:                     Batch Mode.        (line  5409)
+                                                            (line  1007)
+* '--overwrite' <1>:                     Batch Mode.        (line  5954)
 * '--ovr':                               Temporary Output Files.
-                                                            (line  1004)
-* '--ovr' <1>:                           Batch Mode.        (line  5409)
+                                                            (line  1007)
+* '--ovr' <1>:                           Batch Mode.        (line  5954)
 * '--pack_policy PCK_PLC':               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10155)
+                                                            (line 10716)
 * '--path INPUT-PATH':                   Specifying Input Files.
-                                                            (line  1684)
-* '--path INPUT-PATH' <1>:               Remote storage.    (line  1824)
+                                                            (line  1687)
+* '--path INPUT-PATH' <1>:               Remote storage.    (line  1827)
 * '--pck_map PCK_MAP':                   ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10222)
+                                                            (line 10783)
 * '--pck_plc PCK_PLC':                   ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10155)
+                                                            (line 10716)
+* '--ppc':                               Compression.       (line  4427)
+* '--precision_preserving_compression':  Compression.       (line  4427)
 * '--print':                             ncks netCDF Kitchen Sink.
-                                                            (line  9741)
+                                                            (line 10301)
 * '--prn':                               ncks netCDF Kitchen Sink.
-                                                            (line  9741)
+                                                            (line 10301)
 * '--prn_fnc_tbl':                       Intrinsic mathematical methods.
-                                                            (line  8241)
-* '--pseudonym':                         Symbolic Links.    (line   539)
+                                                            (line  8797)
+* '--pseudonym':                         Symbolic Links.    (line   540)
 * '--pth INPUT-PATH':                    Specifying Input Files.
-                                                            (line  1684)
-* '--pth INPUT-PATH' <1>:                Remote storage.    (line  1824)
+                                                            (line  1687)
+* '--pth INPUT-PATH' <1>:                Remote storage.    (line  1827)
+* '--quantize':                          Compression.       (line  4427)
 * '--quench':                            ncks netCDF Kitchen Sink.
-                                                            (line  9759)
+                                                            (line 10319)
 * '--quiet':                             ncks netCDF Kitchen Sink.
-                                                            (line  9747)
+                                                            (line 10307)
 * '--quiet' <1>:                         Filters for 'ncks'.
-                                                            (line 10055)
+                                                            (line 10615)
 * '--rad':                               ncks netCDF Kitchen Sink.
-                                                            (line  9767)
+                                                            (line 10327)
 * '--ram_all':                           Memory Requirements.
-                                                            (line  1351)
-* '--ram_all' <1>:                       RAM disks.         (line  4543)
+                                                            (line  1354)
+* '--ram_all' <1>:                       RAM disks.         (line  5079)
 * '--rcd_nm ULM_NM':                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  9132)
-* '--record_append':                     Record Appending.  (line  3343)
-* '--rec_apn':                           Record Appending.  (line  3343)
+                                                            (line  9692)
+* '--record_append':                     Record Appending.  (line  3346)
+* '--rec_apn':                           Record Appending.  (line  3346)
 * '--retain':                            Retaining Retrieved Files.
-                                                            (line  2078)
+                                                            (line  2081)
 * '--retain_all_dimensions':             ncks netCDF Kitchen Sink.
-                                                            (line  9767)
+                                                            (line 10327)
 * '--revision':                          Help Requests and Bug Reports.
-                                                            (line   877)
-* '--revision' <1>:                      Operator Version.  (line  5651)
+                                                            (line   880)
+* '--revision' <1>:                      Operator Version.  (line  6196)
 * '--rph_dmn':                           ncks netCDF Kitchen Sink.
-                                                            (line  9767)
+                                                            (line 10327)
 * '--rth_dbl':                           Promoting Single-precision to Double.
-                                                            (line  5056)
+                                                            (line  5597)
 * '--rth_flt':                           Promoting Single-precision to Double.
-                                                            (line  5056)
+                                                            (line  5597)
 * '--rtn':                               Retaining Retrieved Files.
-                                                            (line  2078)
+                                                            (line  2081)
 * '--scr':                               ncks netCDF Kitchen Sink.
-                                                            (line  9782)
+                                                            (line 10342)
 * '--script':                            ncap2 netCDF Arithmetic Processor.
-                                                            (line  5701)
+                                                            (line  6246)
 * '--script-file':                       ncap2 netCDF Arithmetic Processor.
-                                                            (line  5701)
+                                                            (line  6246)
 * '--secret':                            ncks netCDF Kitchen Sink.
-                                                            (line  9782)
+                                                            (line 10342)
 * '--sng_fmt':                           ncks netCDF Kitchen Sink.
-                                                            (line  9778)
+                                                            (line 10338)
 * '--sng_fmt' <1>:                       Filters for 'ncks'.
-                                                            (line 10016)
+                                                            (line 10576)
 * '--spt':                               ncap2 netCDF Arithmetic Processor.
-                                                            (line  5701)
+                                                            (line  6246)
 * '--ssh':                               ncks netCDF Kitchen Sink.
-                                                            (line  9782)
+                                                            (line 10342)
 * '--string':                            ncks netCDF Kitchen Sink.
-                                                            (line  9778)
+                                                            (line 10338)
 * '--string' <1>:                        Filters for 'ncks'.
-                                                            (line 10016)
-* '--threads THR_NBR':                   OpenMP Threading.  (line  1547)
-* '--thr_nbr THR_NBR':                   OpenMP Threading.  (line  1547)
+                                                            (line 10576)
+* '--threads THR_NBR':                   OpenMP Threading.  (line  1550)
+* '--thr_nbr THR_NBR':                   OpenMP Threading.  (line  1550)
 * '--ulm_nm ULM_NM':                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  9132)
-* '--union':                             Subsetting Files.  (line  2407)
-* '--union' <1>:                         Subsetting Files.  (line  2513)
+                                                            (line  9692)
+* '--union':                             Subsetting Files.  (line  2410)
+* '--union' <1>:                         Subsetting Files.  (line  2516)
 * '--units':                             ncks netCDF Kitchen Sink.
-                                                            (line  9789)
-* '--unn':                               Subsetting Files.  (line  2407)
-* '--unn' <1>:                           Subsetting Files.  (line  2513)
+                                                            (line 10349)
+* '--unn':                               Subsetting Files.  (line  2410)
+* '--unn' <1>:                           Subsetting Files.  (line  2516)
 * '--unpack':                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10206)
+                                                            (line 10767)
 * '--upk':                               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10206)
-* '--variable VAR':                      Subsetting Files.  (line  2407)
+                                                            (line 10767)
+* '--variable VAR':                      Subsetting Files.  (line  2410)
 * '--variable VAR' <1>:                  Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * '--var_val':                           ncks netCDF Kitchen Sink.
-                                                            (line  9793)
+                                                            (line 10353)
 * '--var_val' <1>:                       Filters for 'ncks'.
-                                                            (line 10055)
+                                                            (line 10615)
 * '--version':                           Help Requests and Bug Reports.
-                                                            (line   877)
-* '--version' <1>:                       Operator Version.  (line  5651)
+                                                            (line   880)
+* '--version' <1>:                       Operator Version.  (line  6196)
 * '--vrs':                               Help Requests and Bug Reports.
-                                                            (line   877)
-* '--vrs' <1>:                           Operator Version.  (line  5651)
+                                                            (line   880)
+* '--vrs' <1>:                           Operator Version.  (line  6196)
 * '--weight WEIGHT':                     ncwa netCDF Weighted Averager.
-                                                            (line 10904)
+                                                            (line 11465)
 * '--weight WGT1[,WGT2]':                ncflint netCDF File Interpolator.
-                                                            (line  9282)
+                                                            (line  9842)
 * '--wgt_var WEIGHT':                    ncwa netCDF Weighted Averager.
-                                                            (line 10904)
+                                                            (line 11465)
 * '--wgt_var WGT1[,WGT2]':               ncflint netCDF File Interpolator.
-                                                            (line  9282)
+                                                            (line  9842)
 * '--write_tmp_fl':                      Temporary Output Files.
-                                                            (line   962)
+                                                            (line   965)
 * '--wrt_tmp_fl':                        Temporary Output Files.
-                                                            (line   962)
-* '--xcl':                               Subsetting Files.  (line  2407)
+                                                            (line   965)
+* '--xcl':                               Subsetting Files.  (line  2410)
 * '--xcl' <1>:                           Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * '--xml':                               ncks netCDF Kitchen Sink.
-                                                            (line  9804)
+                                                            (line 10364)
 * '--xml_no_location':                   ncks netCDF Kitchen Sink.
-                                                            (line  9834)
+                                                            (line 10394)
 * '--xml_spr_chr':                       ncks netCDF Kitchen Sink.
-                                                            (line  9834)
+                                                            (line 10394)
 * '--xml_spr_nmr':                       ncks netCDF Kitchen Sink.
-                                                            (line  9834)
-* '-0':                                  Hyperslabs.        (line  3163)
+                                                            (line 10394)
+* '-0':                                  Hyperslabs.        (line  3166)
 * '-3':                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   672)
+                                                            (line   673)
 * '-3' <1>:                              File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '-4':                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   672)
+                                                            (line   673)
 * '-4' <1>:                              File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '-5':                                  File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '-5' <1>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9512)
+                                                            (line 10072)
 * '-6':                                  File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '-7':                                  File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * '-A':                                  Temporary Output Files.
-                                                            (line  1004)
-* '-A' <1>:                              Batch Mode.        (line  5409)
+                                                            (line  1007)
+* '-A' <1>:                              Batch Mode.        (line  5954)
 * '-a':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9519)
+                                                            (line 10079)
 * '-a' <1>:                              Filters for 'ncks'.
-                                                            (line  9983)
+                                                            (line 10543)
 * '-A' <2>:                              Filters for 'ncks'.
-                                                            (line  9995)
+                                                            (line 10555)
 * '-A' <3>:                              ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10338)
-* '-b':                                  Examples ncap2.    (line  8112)
+                                                            (line 10899)
+* '-b':                                  Examples ncap2.    (line  8668)
 * '-b' <1>:                              ncbo netCDF Binary Operator.
-                                                            (line  8791)
+                                                            (line  9351)
 * '-b' <2>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9529)
+                                                            (line 10089)
 * '-B MASK_COND':                        ncwa netCDF Weighted Averager.
-                                                            (line 10904)
-* '-B MASK_COND' <1>:                    Mask condition.    (line 10958)
+                                                            (line 11465)
+* '-B MASK_COND' <1>:                    Mask condition.    (line 11519)
 * '-C':                                  Subsetting Coordinate Variables.
-                                                            (line  2665)
+                                                            (line  2668)
 * '-c':                                  Subsetting Coordinate Variables.
-                                                            (line  2665)
-* '-C' <1>:                              CF Conventions.    (line  5566)
-* '-c' <1>:                              CF Conventions.    (line  5566)
-* '-C' <2>:                              Examples ncap2.    (line  8124)
+                                                            (line  2668)
+* '-C' <1>:                              CF Conventions.    (line  6111)
+* '-c' <1>:                              CF Conventions.    (line  6111)
+* '-C' <2>:                              Examples ncap2.    (line  8680)
 * '-D':                                  Help Requests and Bug Reports.
-                                                            (line   862)
+                                                            (line   865)
 * '-D DEBUG-LEVEL':                      Help Requests and Bug Reports.
-                                                            (line   877)
-* '-D DEBUG-LEVEL' <1>:                  Large Datasets.    (line  1340)
+                                                            (line   880)
+* '-D DEBUG-LEVEL' <1>:                  Large Datasets.    (line  1343)
 * '-D DEBUG-LEVEL' <2>:                  Command Line Options.
-                                                            (line  1628)
-* '-d DIM,[MIN],[MAX],STRIDE':           Stride.            (line  3282)
-* '-d DIM,[MIN],[MAX],[STRIDE],[SUBCYCLE]': Subcycle.       (line  3394)
-* '-d DIM,[MIN][,[MAX][,[STRIDE]]]':     Hyperslabs.        (line  3163)
-* '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.        (line  3470)
+                                                            (line  1631)
+* '-d DIM,[MIN],[MAX],STRIDE':           Stride.            (line  3285)
+* '-d DIM,[MIN],[MAX],[STRIDE],[SUBCYCLE]': Subcycle.       (line  3397)
+* '-d DIM,[MIN][,[MAX][,[STRIDE]]]':     Hyperslabs.        (line  3166)
+* '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.        (line  3473)
 * '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <2>: Wrapped Coordinates.
-                                                            (line  3614)
-* '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <3>: UDUnits Support.   (line  3774)
+                                                            (line  3617)
+* '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <3>: UDUnits Support.   (line  3777)
 * '-d DIM,[MIN][,[MAX]]':                ncwa netCDF Weighted Averager.
-                                                            (line 10896)
+                                                            (line 11457)
 * '-F':                                  C and Fortran Index Conventions.
-                                                            (line  3126)
+                                                            (line  3129)
 * '-f':                                  Intrinsic mathematical methods.
-                                                            (line  8241)
+                                                            (line  8797)
 * '-G GPE_DSC':                          Group Path Editing.
-                                                            (line  2692)
-* '-g GRP':                              Subsetting Files.  (line  2407)
-* '-h':                                  History Attribute. (line  5429)
+                                                            (line  2695)
+* '-g GRP':                              Subsetting Files.  (line  2410)
+* '-h':                                  History Attribute. (line  5974)
 * '-H':                                  File List Attributes.
-                                                            (line  5457)
+                                                            (line  6002)
 * '-h' <1>:                              ncatted netCDF Attribute Editor.
-                                                            (line  8388)
+                                                            (line  8944)
 * '-H' <1>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9632)
+                                                            (line 10192)
 * '-I':                                  ncwa netCDF Weighted Averager.
-                                                            (line 10932)
-* '-L':                                  Deflation.         (line  4405)
-* '-l OUTPUT-PATH':                      Remote storage.    (line  1824)
-* '-l OUTPUT-PATH' <1>:                  Remote storage.    (line  1887)
+                                                            (line 11493)
+* '-L':                                  Deflation.         (line  4938)
+* '-l OUTPUT-PATH':                      Remote storage.    (line  1827)
+* '-l OUTPUT-PATH' <1>:                  Remote storage.    (line  1890)
 * '-M':                                  Determining File Format.
-                                                            (line  2204)
+                                                            (line  2207)
 * '-M' <1>:                              ncecat netCDF Ensemble Concatenator.
-                                                            (line  9183)
+                                                            (line  9743)
 * '-M' <2>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9677)
+                                                            (line 10237)
 * '-m':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9720)
-* '-M CNK_MAP':                          Chunking.          (line  4239)
+                                                            (line 10280)
+* '-M CNK_MAP':                          Chunking.          (line  4252)
 * '-m MASK_VAR':                         ncwa netCDF Weighted Averager.
-                                                            (line 10904)
+                                                            (line 11465)
 * '-M PCK_MAP':                          ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10222)
+                                                            (line 10783)
 * '-N':                                  Normalization and Integration.
-                                                            (line 10987)
+                                                            (line 11548)
 * '-n LOOP':                             Large Numbers of Files.
-                                                            (line  1206)
+                                                            (line  1209)
 * '-n LOOP' <1>:                         Large Numbers of Files.
-                                                            (line  1276)
+                                                            (line  1279)
 * '-n LOOP' <2>:                         Specifying Input Files.
-                                                            (line  1684)
+                                                            (line  1687)
 * '-O':                                  Temporary Output Files.
-                                                            (line  1004)
-* '-O' <1>:                              Batch Mode.        (line  5409)
+                                                            (line  1007)
+* '-O' <1>:                              Batch Mode.        (line  5954)
 * '-o FL_OUT':                           Large Numbers of Files.
-                                                            (line  1260)
+                                                            (line  1263)
 * '-o FL_OUT' <1>:                       Specifying Output Files.
-                                                            (line  1792)
+                                                            (line  1795)
 * '-P':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9741)
+                                                            (line 10301)
 * '-p INPUT-PATH':                       Specifying Input Files.
-                                                            (line  1684)
-* '-p INPUT-PATH' <1>:                   Remote storage.    (line  1887)
+                                                            (line  1687)
+* '-p INPUT-PATH' <1>:                   Remote storage.    (line  1890)
 * '-P PCK_PLC':                          ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10155)
+                                                            (line 10716)
 * '-Q':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9747)
+                                                            (line 10307)
 * '-q':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9759)
+                                                            (line 10319)
 * '-Q' <1>:                              Filters for 'ncks'.
-                                                            (line 10055)
+                                                            (line 10615)
 * '-r':                                  Help Requests and Bug Reports.
-                                                            (line   862)
+                                                            (line   865)
 * '-r' <1>:                              Help Requests and Bug Reports.
-                                                            (line   877)
+                                                            (line   880)
 * '-R':                                  Retaining Retrieved Files.
-                                                            (line  2078)
-* '-r' <2>:                              Operator Version.  (line  5651)
+                                                            (line  2081)
+* '-r' <2>:                              Operator Version.  (line  6196)
 * '-s':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9778)
+                                                            (line 10338)
 * '-s' <1>:                              Filters for 'ncks'.
-                                                            (line 10016)
+                                                            (line 10576)
 * '-t THR_NBR':                          Single and Multi-file Operators.
-                                                            (line  1434)
-* '-t THR_NBR' <1>:                      OpenMP Threading.  (line  1547)
+                                                            (line  1437)
+* '-t THR_NBR' <1>:                      OpenMP Threading.  (line  1550)
 * '-u':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9789)
+                                                            (line 10349)
 * '-U':                                  ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10206)
+                                                            (line 10767)
 * '-u ULM_NM':                           ncecat netCDF Ensemble Concatenator.
-                                                            (line  9132)
+                                                            (line  9692)
 * '-V':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9793)
+                                                            (line 10353)
 * '-V' <1>:                              Filters for 'ncks'.
-                                                            (line 10055)
+                                                            (line 10615)
 * '-v':                                  ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10338)
-* '-v VAR':                              Subsetting Files.  (line  2407)
+                                                            (line 10899)
+* '-v VAR':                              Subsetting Files.  (line  2410)
 * '-v VAR' <1>:                          Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * '-w WEIGHT':                           ncwa netCDF Weighted Averager.
-                                                            (line 10904)
+                                                            (line 11465)
 * '-w WGT1[,WGT2]':                      ncflint netCDF File Interpolator.
-                                                            (line  9282)
-* '-x':                                  Subsetting Files.  (line  2407)
+                                                            (line  9842)
+* '-x':                                  Subsetting Files.  (line  2410)
 * '-X':                                  Auxiliary Coordinates.
-                                                            (line  3664)
+                                                            (line  3667)
 * '-x' <1>:                              Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * '-X LON_MIN,LON_MAX,LAT_MIN,LAT_MAX':  Auxiliary Coordinates.
-                                                            (line  3664)
-* '-y OP_TYP':                           Operation Types.   (line  4767)
+                                                            (line  3667)
+* '-y OP_TYP':                           Operation Types.   (line  5303)
 * '-y OP_TYP' <1>:                       ncbo netCDF Binary Operator.
-                                                            (line  8693)
+                                                            (line  9253)
 * '.':                                   ncrename netCDF Renamer.
-                                                            (line 10659)
-* '.' (wildcard character):              Subsetting Files.  (line  2588)
+                                                            (line 11220)
+* '.' (wildcard character):              Subsetting Files.  (line  2591)
 * '.bashrc':                             Filters for 'ncks'.
-                                                            (line  9888)
-* '.netrc':                              Remote storage.    (line  1824)
-* '.rhosts':                             Remote storage.    (line  1824)
+                                                            (line 10448)
+* '.netrc':                              Remote storage.    (line  1827)
+* '.rhosts':                             Remote storage.    (line  1827)
 * '/':                                   ncbo netCDF Binary Operator.
-                                                            (line  8693)
+                                                            (line  9253)
 * '/' (division):                        Intrinsic mathematical methods.
-                                                            (line  8134)
+                                                            (line  8690)
 * '/*...*/' (comment):                   Syntax of ncap2 statements.
-                                                            (line  5760)
+                                                            (line  6305)
 * '//' (comment):                        Syntax of ncap2 statements.
-                                                            (line  5760)
+                                                            (line  6305)
 * '0' (NUL):                             ncatted netCDF Attribute Editor.
-                                                            (line  8570)
+                                                            (line  9129)
 * 32-bit offset file format:             Determining File Format.
-                                                            (line  2204)
+                                                            (line  2207)
 * 64-bit offset file format:             Determining File Format.
-                                                            (line  2204)
+                                                            (line  2207)
 * '64BIT' files:                         File Formats and Conversion.
-                                                            (line  2118)
-* ':' (separator character):             Flattening Groups. (line  2733)
+                                                            (line  2121)
+* ':' (separator character):             Flattening Groups. (line  2736)
 * ';' (end of statement):                Syntax of ncap2 statements.
-                                                            (line  5758)
+                                                            (line  6303)
 * '<arpa/nameser.h>':                    Windows Operating System.
-                                                            (line   507)
+                                                            (line   508)
 * '<resolv.h>':                          Windows Operating System.
-                                                            (line   507)
-* '?' (filename expansion):              Subsetting Files.  (line  2588)
+                                                            (line   508)
+* '?' (filename expansion):              Subsetting Files.  (line  2591)
 * '?' (question mark):                   ncatted netCDF Attribute Editor.
-                                                            (line  8561)
-* '?' (wildcard character):              Subsetting Files.  (line  2595)
+                                                            (line  9120)
+* '?' (wildcard character):              Subsetting Files.  (line  2598)
 * '@' (attribute):                       Syntax of ncap2 statements.
-                                                            (line  5768)
-* '@' (separator character):             Flattening Groups. (line  2733)
+                                                            (line  6313)
+* '@' (separator character):             Flattening Groups. (line  2736)
 * '[]' (array delimiters):               Syntax of ncap2 statements.
-                                                            (line  5752)
+                                                            (line  6297)
 * '\' (backslash):                       ncatted netCDF Attribute Editor.
-                                                            (line  8561)
+                                                            (line  9120)
 * '\"' (protected double quote):         ncatted netCDF Attribute Editor.
-                                                            (line  8561)
+                                                            (line  9120)
 * '\'' (protected end quote):            ncatted netCDF Attribute Editor.
-                                                            (line  8561)
+                                                            (line  9120)
 * '\?' (protected question mark):        ncatted netCDF Attribute Editor.
-                                                            (line  8561)
+                                                            (line  9120)
 * '\a' (ASCII BEL, bell):                ncatted netCDF Attribute Editor.
-                                                            (line  8556)
+                                                            (line  9115)
 * '\b' (ASCII BS, backspace):            ncatted netCDF Attribute Editor.
-                                                            (line  8556)
+                                                            (line  9115)
 * '\f' (ASCII FF, formfeed):             ncatted netCDF Attribute Editor.
-                                                            (line  8556)
+                                                            (line  9115)
 * '\n' (ASCII LF, linefeed):             ncatted netCDF Attribute Editor.
-                                                            (line  8546)
+                                                            (line  9105)
 * '\n' (linefeed):                       Filters for 'ncks'.
-                                                            (line 10016)
+                                                            (line 10576)
 * '\r' (ASCII CR, carriage return):      ncatted netCDF Attribute Editor.
-                                                            (line  8556)
+                                                            (line  9115)
 * '\t' (ASCII HT, horizontal tab):       ncatted netCDF Attribute Editor.
-                                                            (line  8546)
+                                                            (line  9105)
 * '\t' (horizontal tab):                 Filters for 'ncks'.
-                                                            (line 10016)
+                                                            (line 10576)
 * '\v' (ASCII VT, vertical tab):         ncatted netCDF Attribute Editor.
-                                                            (line  8556)
+                                                            (line  9115)
 * '\\' (ASCII \, backslash):             ncatted netCDF Attribute Editor.
-                                                            (line  8556)
+                                                            (line  9115)
 * '\\' (protected backslash):            ncatted netCDF Attribute Editor.
-                                                            (line  8561)
+                                                            (line  9120)
 * '^' (power):                           Intrinsic mathematical methods.
-                                                            (line  8134)
-* '^' (wildcard character):              Subsetting Files.  (line  2588)
+                                                            (line  8690)
+* '^' (wildcard character):              Subsetting Files.  (line  2591)
 * '_ChunkSizes':                         ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * '_DeflateLevel':                       ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * '_Endianness':                         ncks netCDF Kitchen Sink.
-                                                            (line  9570)
-* '_FillValue':                          Missing Values.    (line  4019)
-* '_FillValue' <1>:                      Packed data.       (line  4630)
+                                                            (line 10130)
+* '_FillValue':                          Missing Values.    (line  4022)
+* '_FillValue' <1>:                      Packed data.       (line  5166)
 * '_FillValue' <2>:                      ncatted netCDF Attribute Editor.
-                                                            (line  8402)
+                                                            (line  8958)
 * '_FillValue' <3>:                      ncflint netCDF File Interpolator.
-                                                            (line  9331)
+                                                            (line  9891)
 * _FILLVALUE:                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10266)
+                                                            (line 10827)
 * '_FillValue' <4>:                      ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10266)
+                                                            (line 10827)
 * '_FillValue' <5>:                      ncrename netCDF Renamer.
-                                                            (line 10825)
+                                                            (line 11386)
 * '_Fletcher32':                         ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * '_Format':                             ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * '_NOFILL':                             ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * '_Shuffle':                            ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * '_SOURCE_FORMAT':                      ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * '_Storage':                            ncks netCDF Kitchen Sink.
-                                                            (line  9570)
-* '|' (wildcard character):              Subsetting Files.  (line  2595)
+                                                            (line 10130)
+* '|' (wildcard character):              Subsetting Files.  (line  2598)
 * ABS:                                   Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * absolute value:                        Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * ACOS:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * ACOSH:                                 Intrinsic mathematical methods.
-                                                            (line  8137)
-* 'add':                                 ncbo netCDF Binary Operator.
                                                             (line  8693)
+* 'add':                                 ncbo netCDF Binary Operator.
+                                                            (line  9253)
 * adding data:                           ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * adding data <1>:                       ncflint netCDF File Interpolator.
-                                                            (line  9258)
+                                                            (line  9818)
 * addition:                              Intrinsic mathematical methods.
-                                                            (line  8134)
+                                                            (line  8690)
 * addition <1>:                          ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * addition <2>:                          ncflint netCDF File Interpolator.
-                                                            (line  9258)
-* ADD_OFFSET:                            Performance.       (line  1487)
-* 'add_offset':                          Packed data.       (line  4630)
+                                                            (line  9818)
+* ADD_OFFSET:                            Performance.       (line  1490)
+* 'add_offset':                          Packed data.       (line  5166)
 * 'add_offset' <1>:                      ncecat netCDF Ensemble Concatenator.
-                                                            (line  9205)
+                                                            (line  9765)
 * 'add_offset' <2>:                      ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10148)
+                                                            (line 10709)
 * 'add_offset' <3>:                      ncrcat netCDF Record Concatenator.
-                                                            (line 10596)
-* aggregation:                           Combine Files.     (line 11510)
-* Aleksandar Jelenak:                    Contributors.      (line 11196)
-* Alexander Hansen:                      Contributors.      (line 11204)
+                                                            (line 11157)
+* aggregation:                           Combine Files.     (line 12071)
+* Aleksandar Jelenak:                    Contributors.      (line 11757)
+* Alexander Hansen:                      Contributors.      (line 11765)
 * 'alias':                               ncbo netCDF Binary Operator.
-                                                            (line  8737)
+                                                            (line  9297)
 * alias:                                 Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * 'alias' <1>:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10216)
-* 'all':                                 Chunking.          (line  4186)
+                                                            (line 10777)
+* 'all':                                 Chunking.          (line  4189)
 * alphabetization:                       ncks netCDF Kitchen Sink.
-                                                            (line  9519)
+                                                            (line 10079)
 * alphabetize output:                    Filters for 'ncks'.
-                                                            (line  9983)
+                                                            (line 10543)
 * alternate invocations:                 ncbo netCDF Binary Operator.
-                                                            (line  8693)
-* anchor:                                Subsetting Files.  (line  2464)
-* anchoring:                             Subsetting Files.  (line  2464)
-* ancillary variables convention:        CF Conventions.    (line  5556)
-* 'ancillary_variables':                 CF Conventions.    (line  5556)
-* Andrea Cimatoribus:                    Contributors.      (line 11210)
-* Andrew Wittenberg:                     Contributors.      (line 11194)
+                                                            (line  9253)
+* anchor:                                Subsetting Files.  (line  2467)
+* anchoring:                             Subsetting Files.  (line  2467)
+* ancillary variables convention:        CF Conventions.    (line  6101)
+* 'ancillary_variables' attribute:       CF Conventions.    (line  6101)
+* 'ancillary_variables' attribute <1>:   Filters for 'ncks'.
+                                                            (line 10640)
+* Andrea Cimatoribus:                    Contributors.      (line 11771)
+* Andrew Wittenberg:                     Contributors.      (line 11755)
 * annual average:                        Annual Average over Regions.
-                                                            (line 11737)
+                                                            (line 12298)
 * annual average from daily data:        Daily data in one file.
-                                                            (line 11285)
+                                                            (line 11846)
 * annual average from monthly data:      Monthly data in one file.
-                                                            (line 11308)
+                                                            (line 11869)
 * anomalies:                             ncbo netCDF Binary Operator.
-                                                            (line  8775)
+                                                            (line  9335)
 * anomalies <1>:                         Annual Average over Regions.
-                                                            (line 11737)
-* anomalies <2>:                         Monthly Cycle.     (line 12028)
-* ANSI:                                  Compatability.     (line   420)
+                                                            (line 12298)
+* anomalies <2>:                         Monthly Cycle.     (line 12589)
+* ANSI:                                  Compatability.     (line   421)
 * 'ANSI C':                              Intrinsic mathematical methods.
-                                                            (line  8240)
-* appending data:                        Examples ncap2.    (line  8112)
+                                                            (line  8796)
+* appending data:                        Examples ncap2.    (line  8668)
 * appending data <1>:                    ncks netCDF Kitchen Sink.
-                                                            (line  9460)
+                                                            (line 10020)
 * appending to files:                    Temporary Output Files.
-                                                            (line  1004)
-* appending to files <1>:                Batch Mode.        (line  5409)
+                                                            (line  1007)
+* appending to files <1>:                Batch Mode.        (line  5954)
 * appending to files <2>:                Filters for 'ncks'.
-                                                            (line  9995)
+                                                            (line 10555)
 * appending variables:                   Temporary Output Files.
-                                                            (line  1004)
+                                                            (line  1007)
 * appending variables <1>:               Appending Variables.
-                                                            (line  1029)
+                                                            (line  1032)
 * appending variables <2>:               ncap2 netCDF Arithmetic Processor.
-                                                            (line  5716)
+                                                            (line  6261)
 * appending variables <3>:               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10338)
+                                                            (line 10899)
 * AR4:                                   nces netCDF Ensemble Statistics.
-                                                            (line  8982)
+                                                            (line  9542)
 * arccosine function:                    Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * arcsine function:                      Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * arctangent function:                   Intrinsic mathematical methods.
-                                                            (line  8137)
-* 'area':                                CF Conventions.    (line  5488)
+                                                            (line  8693)
+* 'area':                                CF Conventions.    (line  6033)
 * area-averaging:                        Annual Average over Regions.
-                                                            (line 11737)
-* arithmetic operators:                  Missing Values.    (line  4025)
-* arithmetic operators <1>:              Missing Values.    (line  4078)
+                                                            (line 12298)
+* arithmetic operators:                  Missing Values.    (line  4028)
+* arithmetic operators <1>:              Missing Values.    (line  4081)
 * arithmetic operators <2>:              ncwa netCDF Weighted Averager.
-                                                            (line 10896)
+                                                            (line 11457)
 * arithmetic processor:                  ncap2 netCDF Arithmetic Processor.
-                                                            (line  5683)
-* ARM conventions:                       ARM Conventions.   (line  5620)
+                                                            (line  6228)
+* ARM conventions:                       ARM Conventions.   (line  6165)
 * ARM conventions <1>:                   ncrcat netCDF Record Concatenator.
-                                                            (line 10609)
+                                                            (line 11170)
 * array:                                 Arrays and hyperslabs.
-                                                            (line  6046)
+                                                            (line  6595)
 * 'array' function:                      Arrays and hyperslabs.
-                                                            (line  6046)
+                                                            (line  6595)
 * array indexing:                        Syntax of ncap2 statements.
-                                                            (line  5754)
+                                                            (line  6299)
 * array storage:                         Syntax of ncap2 statements.
-                                                            (line  5756)
+                                                            (line  6301)
 * array syntax:                          Syntax of ncap2 statements.
-                                                            (line  5752)
+                                                            (line  6297)
 * arrays:                                Arrays and hyperslabs.
-                                                            (line  6046)
+                                                            (line  6595)
 * arrival value:                         ncflint netCDF File Interpolator.
-                                                            (line  9298)
+                                                            (line  9858)
 * ASCII:                                 ncatted netCDF Attribute Editor.
-                                                            (line  8544)
+                                                            (line  9103)
 * ASCII <1>:                             ncatted netCDF Attribute Editor.
-                                                            (line  8561)
+                                                            (line  9120)
 * ASIN:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * ASINH:                                 Intrinsic mathematical methods.
-                                                            (line  8137)
-* 'asort':                               Sort methods.      (line  6808)
+                                                            (line  8693)
+* 'asort':                               Sort methods.      (line  7363)
 * assignment statement:                  Syntax of ncap2 statements.
-                                                            (line  5758)
-* asynchronous file access:              Remote storage.    (line  1824)
+                                                            (line  6303)
+* asynchronous file access:              Remote storage.    (line  1827)
 * ATAN:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * ATANH:                                 Intrinsic mathematical methods.
-                                                            (line  8137)
-* attribute inheritance:                 Attributes.        (line  6221)
+                                                            (line  8693)
+* attribute inheritance:                 Attributes.        (line  6770)
 * attribute names:                       ncatted netCDF Attribute Editor.
-                                                            (line  8370)
+                                                            (line  8926)
 * attribute names <1>:                   ncrename netCDF Renamer.
-                                                            (line 10650)
-* attribute propagation:                 Attributes.        (line  6221)
+                                                            (line 11211)
+* attribute propagation:                 Attributes.        (line  6770)
 * attribute syntax:                      Syntax of ncap2 statements.
-                                                            (line  5768)
-* attribute, 'units':                    UDUnits Support.   (line  3774)
+                                                            (line  6313)
+* attribute, 'units':                    UDUnits Support.   (line  3777)
 * attributes:                            ncatted netCDF Attribute Editor.
-                                                            (line  8370)
+                                                            (line  8926)
 * attributes, appending:                 ncatted netCDF Attribute Editor.
-                                                            (line  8461)
+                                                            (line  9019)
 * attributes, creating:                  ncatted netCDF Attribute Editor.
-                                                            (line  8461)
+                                                            (line  9019)
 * attributes, deleting:                  ncatted netCDF Attribute Editor.
-                                                            (line  8461)
+                                                            (line  9019)
 * attributes, editing:                   ncatted netCDF Attribute Editor.
-                                                            (line  8461)
+                                                            (line  9019)
 * attributes, editing <1>:               Annual Average over Regions.
-                                                            (line 11737)
-* attributes, editing <2>:               Regrid MODIS Data. (line 12192)
+                                                            (line 12298)
+* attributes, editing <2>:               Regrid MODIS Data. (line 12753)
 * attributes, global:                    Large Numbers of Files.
-                                                            (line  1234)
-* attributes, global <1>:                History Attribute. (line  5429)
+                                                            (line  1237)
+* attributes, global <1>:                History Attribute. (line  5974)
 * attributes, global <2>:                File List Attributes.
-                                                            (line  5457)
-* attributes, global <3>:                ARM Conventions.   (line  5644)
+                                                            (line  6002)
+* attributes, global <3>:                ARM Conventions.   (line  6189)
 * attributes, global <4>:                ncatted netCDF Attribute Editor.
-                                                            (line  8444)
+                                                            (line  9002)
 * attributes, global <5>:                ncatted netCDF Attribute Editor.
-                                                            (line  8611)
+                                                            (line  9170)
 * attributes, global <6>:                ncks netCDF Kitchen Sink.
-                                                            (line  9446)
+                                                            (line 10006)
 * attributes, global <7>:                ncks netCDF Kitchen Sink.
-                                                            (line  9480)
+                                                            (line 10040)
 * attributes, global <8>:                Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * attributes, global <9>:                ncrename netCDF Renamer.
-                                                            (line 10722)
+                                                            (line 11283)
 * attributes, global <10>:               ncrename netCDF Renamer.
-                                                            (line 10825)
+                                                            (line 11386)
 * attributes, modifying:                 ncatted netCDF Attribute Editor.
-                                                            (line  8461)
+                                                            (line  9019)
 * attributes, modifying <1>:             Annual Average over Regions.
-                                                            (line 11737)
-* attributes, modifying <2>:             Regrid MODIS Data. (line 12192)
+                                                            (line 12298)
+* attributes, modifying <2>:             Regrid MODIS Data. (line 12753)
 * attributes, overwriting:               ncatted netCDF Attribute Editor.
-                                                            (line  8461)
+                                                            (line  9019)
 * attributes, overwriting <1>:           Annual Average over Regions.
-                                                            (line 11737)
-* attributes, overwriting <2>:           Regrid MODIS Data. (line 12192)
-* attributes'ncap2':                     Attributes.        (line  6188)
+                                                            (line 12298)
+* attributes, overwriting <2>:           Regrid MODIS Data. (line 12753)
+* attributes'ncap2':                     Attributes.        (line  6737)
 * 'autoconf':                            Help Requests and Bug Reports.
-                                                            (line   885)
-* autoconversion:                        Autoconversion.    (line  2311)
-* automagic:                             Compatability.     (line   460)
+                                                            (line   888)
+* autoconversion:                        Autoconversion.    (line  2314)
+* automagic:                             Compatability.     (line   461)
 * automagic <1>:                         Large Numbers of Files.
-                                                            (line  1207)
-* automatic type conversion:             Type Conversion.   (line  4920)
+                                                            (line  1210)
+* automatic type conversion:             Type Conversion.   (line  5461)
 * automatic type conversion <1>:         Intrinsic mathematical methods.
-                                                            (line  8207)
-* auxiliary coordinates:                 CF Conventions.    (line  5566)
-* average:                               Operation Types.   (line  4767)
+                                                            (line  8763)
+* auxiliary coordinates:                 CF Conventions.    (line  6111)
+* average:                               Operation Types.   (line  5303)
 * average <1>:                           ncwa netCDF Weighted Averager.
-                                                            (line 10940)
+                                                            (line 11501)
 * average <2>:                           Daily data in one file.
-                                                            (line 11271)
+                                                            (line 11832)
 * average <3>:                           Daily data in one file.
-                                                            (line 11285)
+                                                            (line 11846)
 * average <4>:                           Monthly data in one file.
-                                                            (line 11305)
+                                                            (line 11866)
 * average <5>:                           Monthly data in one file.
-                                                            (line 11308)
+                                                            (line 11869)
 * average <6>:                           One time point one file.
-                                                            (line 11334)
+                                                            (line 11895)
 * average <7>:                           Global Distribution of Long-term Average.
-                                                            (line 11634)
+                                                            (line 12195)
 * average <8>:                           Annual Average over Regions.
-                                                            (line 11737)
-* average <9>:                           Monthly Cycle.     (line 12028)
-* averaging data:                        Missing Values.    (line  4019)
+                                                            (line 12298)
+* average <9>:                           Monthly Cycle.     (line 12589)
+* averaging data:                        Missing Values.    (line  4022)
 * averaging data <1>:                    nces netCDF Ensemble Statistics.
-                                                            (line  8943)
+                                                            (line  9503)
 * averaging data <2>:                    ncra netCDF Record Averager.
-                                                            (line 10497)
+                                                            (line 11058)
 * averaging data <3>:                    ncwa netCDF Weighted Averager.
-                                                            (line 10864)
-* 'avg':                                 Operation Types.   (line  4767)
+                                                            (line 11425)
+* 'avg':                                 Operation Types.   (line  5303)
 * avg():                                 Methods and functions.
-                                                            (line  6489)
-* 'avgsqr':                              Operation Types.   (line  4767)
-* Barry deFreese:                        Contributors.      (line 11196)
-* 'base_time':                           ARM Conventions.   (line  5620)
-* 'bash':                                Subsetting Files.  (line  2640)
+                                                            (line  7038)
+* 'avgsqr':                              Operation Types.   (line  5303)
+* Barry deFreese:                        Contributors.      (line 11757)
+* 'base_time':                           ARM Conventions.   (line  6165)
+* 'bash':                                Subsetting Files.  (line  2643)
 * 'bash' <1>:                            Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * Bash shell:                            ncbo netCDF Binary Operator.
-                                                            (line  8722)
+                                                            (line  9282)
 * Bash Shell:                            ncbo netCDF Binary Operator.
-                                                            (line  8891)
+                                                            (line  9451)
 * Bash shell <1>:                        Filters for 'ncks'.
-                                                            (line  9888)
-* batch mode:                            Batch Mode.        (line  5409)
+                                                            (line 10448)
+* batch mode:                            Batch Mode.        (line  5954)
 * beer:                                  Promoting Single-precision to Double.
-                                                            (line  5307)
-* benchmarks:                            OpenMP Threading.  (line  1606)
+                                                            (line  5848)
+* benchmarks:                            OpenMP Threading.  (line  1609)
 * Bessel function:                       GSL special functions.
-                                                            (line  7295)
-* bilinear interpolation:                Regrid MODIS Data. (line 12192)
-* Bill Kocik:                            Contributors.      (line 11180)
+                                                            (line  7850)
+* bilinear interpolation:                Regrid MODIS Data. (line 12753)
+* Bill Kocik:                            Contributors.      (line 11741)
 * binary format:                         ncks netCDF Kitchen Sink.
-                                                            (line  9529)
-* binary operations:                     Memory for ncap2.  (line  1440)
+                                                            (line 10089)
+* binary operations:                     Memory for ncap2.  (line  1443)
 * binary operations <1>:                 ncbo netCDF Binary Operator.
-                                                            (line  8675)
-* binary Operators:                      Expressions.       (line  5855)
+                                                            (line  9235)
+* binary Operators:                      Expressions.       (line  6400)
+* bitmask:                               Compression.       (line  4538)
 * blank:                                 ncks netCDF Kitchen Sink.
-                                                            (line  9733)
-* blocksize:                             Chunking.          (line  4153)
-* 'bounds':                              CF Conventions.    (line  5543)
-* bounds convention:                     CF Conventions.    (line  5543)
-* Bourne Shell:                          Stride.            (line  3320)
+                                                            (line 10293)
+* blocksize:                             Chunking.          (line  4156)
+* 'bounds' attribute:                    Compression.       (line  4522)
+* 'bounds' attribute <1>:                CF Conventions.    (line  6088)
+* 'bounds' attribute <2>:                Filters for 'ncks'.
+                                                            (line 10640)
+* bounds convention:                     CF Conventions.    (line  6088)
+* Bourne Shell:                          Stride.            (line  3323)
 * Bourne Shell <1>:                      ncbo netCDF Binary Operator.
-                                                            (line  8891)
-* Brian Mays:                            Contributors.      (line 11176)
+                                                            (line  9451)
+* Brian Mays:                            Contributors.      (line 11737)
 * broadcasting:                          ncbo netCDF Binary Operator.
-                                                            (line  8828)
+                                                            (line  9388)
 * broadcasting groups:                   netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   666)
+                                                            (line   667)
 * broadcasting groups <1>:               ncbo netCDF Binary Operator.
-                                                            (line  8807)
+                                                            (line  9367)
 * broadcasting groups <2>:               ncbo netCDF Binary Operator.
-                                                            (line  8856)
-* broadcasting variables:                Expressions.       (line  5804)
+                                                            (line  9416)
+* broadcasting variables:                Expressions.       (line  6349)
 * broadcasting variables <1>:            ncbo netCDF Binary Operator.
-                                                            (line  8764)
+                                                            (line  9324)
 * broadcasting variables <2>:            ncbo netCDF Binary Operator.
-                                                            (line  8766)
+                                                            (line  9326)
 * broadcasting variables <3>:            ncflint netCDF File Interpolator.
-                                                            (line  9396)
+                                                            (line  9956)
 * broadcasting variables <4>:            ncwa netCDF Weighted Averager.
-                                                            (line 10864)
+                                                            (line 11425)
 * 'BSD':                                 Command Line Options.
-                                                            (line  1625)
-* Buffer sizes:                          Buffer sizes.      (line  4512)
-* buffering:                             Performance.       (line  1478)
+                                                            (line  1628)
+* Buffer sizes:                          Buffer sizes.      (line  5048)
+* buffering:                             Performance.       (line  1481)
 * bugs, reporting:                       Help Requests and Bug Reports.
-                                                            (line   822)
+                                                            (line   825)
+* Burrows-Wheeler algorithm:             Compression.       (line  4788)
 * byte():                                Methods and functions.
-                                                            (line  6581)
+                                                            (line  7136)
+* 'bzip2':                               Compression.       (line  4788)
 * C index convention:                    C and Fortran Index Conventions.
-                                                            (line  3126)
-* C language:                            Compatability.     (line   442)
-* C language <1>:                        Missing Values.    (line  4067)
+                                                            (line  3129)
+* C language:                            Compatability.     (line   443)
+* C language <1>:                        Missing Values.    (line  4070)
 * C language <2>:                        Automatic type conversion.
-                                                            (line  5049)
+                                                            (line  5590)
 * C language <3>:                        Promoting Single-precision to Double.
-                                                            (line  5068)
+                                                            (line  5609)
 * C language <4>:                        Syntax of ncap2 statements.
-                                                            (line  5746)
-* C language <5>:                        Expressions.       (line  5775)
+                                                            (line  6291)
+* C language <5>:                        Expressions.       (line  6320)
 * C language <6>:                        ncatted netCDF Attribute Editor.
-                                                            (line  8570)
+                                                            (line  9129)
 * C language <7>:                        ncks netCDF Kitchen Sink.
-                                                            (line  9778)
-* C Shell:                               Stride.            (line  3320)
+                                                            (line 10338)
+* C Shell:                               Stride.            (line  3323)
 * C Shell <1>:                           ncbo netCDF Binary Operator.
-                                                            (line  8891)
-* 'c++':                                 Compatability.     (line   407)
-* C++:                                   Compatability.     (line   412)
-* C89:                                   Compatability.     (line   420)
-* C89 <1>:                               Compatability.     (line   444)
-* C99:                                   Compatability.     (line   424)
-* C99 <1>:                               Compatability.     (line   444)
+                                                            (line  9451)
+* 'c++':                                 Compatability.     (line   408)
+* C++:                                   Compatability.     (line   413)
+* C89:                                   Compatability.     (line   421)
+* C89 <1>:                               Compatability.     (line   445)
+* C99:                                   Compatability.     (line   425)
+* C99 <1>:                               Compatability.     (line   445)
 * C99 <2>:                               Windows Operating System.
-                                                            (line   495)
+                                                            (line   496)
+* C99 <3>:                               Compression.       (line  4554)
+* CAM:                                   Compression.       (line  4899)
 * CAM3:                                  Promoting Single-precision to Double.
-                                                            (line  5207)
-* 'CC':                                  Compatability.     (line   407)
-* 'cc':                                  Compatability.     (line   407)
+                                                            (line  5748)
+* 'CC':                                  Compatability.     (line   408)
+* 'cc':                                  Compatability.     (line   408)
 * CCM Processor:                         Specifying Input Files.
-                                                            (line  1684)
+                                                            (line  1687)
 * CCM Processor <1>:                     ncra netCDF Record Averager.
-                                                            (line 10537)
+                                                            (line 11098)
 * CCM Processor <2>:                     ncrcat netCDF Record Concatenator.
-                                                            (line 10615)
+                                                            (line 11176)
 * CCSM:                                  Proposals for Institutional Funding.
-                                                            (line 11241)
-* CCSM <1>:                              CCSM Example.      (line 12431)
-* CCSM conventions:                      CF Conventions.    (line  5488)
+                                                            (line 11802)
+* CCSM <1>:                              CCSM Example.      (line 12992)
+* CCSM conventions:                      CF Conventions.    (line  6033)
 * CDL:                                   ncks netCDF Kitchen Sink.
-                                                            (line  9584)
+                                                            (line 10144)
 * CEIL:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * ceiling function:                      Intrinsic mathematical methods.
-                                                            (line  8137)
-* cell methods convention:               CF Conventions.    (line  5577)
+                                                            (line  8693)
+* cell methods convention:               CF Conventions.    (line  6122)
 * cell-based grids:                      Auxiliary Coordinates.
-                                                            (line  3681)
-* 'cell_methods':                        CF Conventions.    (line  5577)
+                                                            (line  3684)
+* 'cell_methods':                        CF Conventions.    (line  6122)
 * CF compliance checker:                 Checking CF-compliance.
-                                                            (line  2973)
+                                                            (line  2976)
 * CF conventions:                        Subsetting Coordinate Variables.
-                                                            (line  2681)
+                                                            (line  2684)
 * CF conventions <1>:                    Auxiliary Coordinates.
-                                                            (line  3664)
-* CF conventions <2>:                    UDUnits Support.   (line  3872)
-* CF conventions <3>:                    CF Conventions.    (line  5488)
-* CF conventions <4>:                    ncbo netCDF Binary Operator.
-                                                            (line  8800)
+                                                            (line  3667)
+* CF conventions <2>:                    UDUnits Support.   (line  3875)
+* CF conventions <3>:                    Compression.       (line  4522)
+* CF conventions <4>:                    CF Conventions.    (line  6033)
+* CF conventions <5>:                    ncbo netCDF Binary Operator.
+                                                            (line  9360)
+* CF conventions <6>:                    Filters for 'ncks'.
+                                                            (line 10640)
 * cfchecker:                             Checking CF-compliance.
-                                                            (line  2973)
+                                                            (line  2976)
 * 'change_miss()':                       Missing values ncap2.
-                                                            (line  6426)
+                                                            (line  6975)
 * char():                                Methods and functions.
-                                                            (line  6583)
+                                                            (line  7138)
 * characters, special:                   ncatted netCDF Attribute Editor.
-                                                            (line  8546)
-* Charlie Zender:                        Foreword.          (line   208)
-* Charlie Zender <1>:                    Contributors.      (line 11151)
-* chocolate:                             Contributing.      (line 11130)
-* Chris Barker:                          Chunking.          (line  4245)
+                                                            (line  9105)
+* Charlie Zender:                        Foreword.          (line   209)
+* Charlie Zender <1>:                    Contributors.      (line 11712)
+* chocolate:                             Contributing.      (line 11691)
+* Chris Barker:                          Chunking.          (line  4258)
 * chunking:                              netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   654)
-* chunking <1>:                          Chunking.          (line  4132)
+                                                            (line   655)
+* chunking <1>:                          Chunking.          (line  4135)
 * chunking <2>:                          ncks netCDF Kitchen Sink.
-                                                            (line  9724)
-* chunking map:                          Chunking.          (line  4153)
-* chunking map <1>:                      Chunking.          (line  4239)
-* chunking policy:                       Chunking.          (line  4153)
-* chunksize:                             Chunking.          (line  4153)
-* citation:                              Citation.          (line 11222)
-* 'clang':                               Compatability.     (line   407)
+                                                            (line 10284)
+* chunking map:                          Chunking.          (line  4156)
+* chunking map <1>:                      Chunking.          (line  4252)
+* chunking policy:                       Chunking.          (line  4156)
+* chunksize:                             Chunking.          (line  4156)
+* citation:                              Citation.          (line 11783)
+* 'clang':                               Compatability.     (line   408)
 * 'CLASSIC' files:                       File Formats and Conversion.
-                                                            (line  2118)
-* client-server:                         OPeNDAP.           (line  1938)
+                                                            (line  2121)
+* client-server:                         OPeNDAP.           (line  1941)
 * Climate and Forecast Metadata Convention: UDUnits Support.
-                                                            (line  3872)
-* climate model:                         Philosophy.        (line   904)
+                                                            (line  3875)
+* climate model:                         Philosophy.        (line   907)
 * climate model <1>:                     Climate Model Paradigm.
-                                                            (line   930)
-* climate model <2>:                     Concatenation.     (line  1129)
+                                                            (line   933)
+* climate model <2>:                     Concatenation.     (line  1132)
 * climate model <3>:                     Specifying Input Files.
-                                                            (line  1750)
+                                                            (line  1753)
 * climate model <4>:                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  9194)
+                                                            (line  9754)
 * climate model <5>:                     Normalization and Integration.
-                                                            (line 11050)
+                                                            (line 11611)
 * climate model <6>:                     Normalization and Integration.
-                                                            (line 11061)
-* clipping operators:                    Expressions.       (line  5927)
+                                                            (line 11622)
+* clipping operators:                    Expressions.       (line  6472)
 * CMIP:                                  nces netCDF Ensemble Statistics.
-                                                            (line  8982)
+                                                            (line  9542)
 * CMIP <1>:                              ncecat netCDF Ensemble Concatenator.
-                                                            (line  9138)
-* CMIP5:                                 CMIP5 Example.     (line 11360)
-* 'cnk_all':                             Chunking.          (line  4186)
-* 'cnk_dmn':                             Chunking.          (line  4245)
-* 'cnk_g2d':                             Chunking.          (line  4186)
-* 'cnk_g3d':                             Chunking.          (line  4186)
-* 'cnk_lfp':                             Chunking.          (line  4245)
-* CNK_MAP:                               Chunking.          (line  4239)
-* 'cnk_nc4':                             Chunking.          (line  4245)
-* 'cnk_prd':                             Chunking.          (line  4245)
-* 'cnk_r1d':                             Chunking.          (line  4186)
-* 'cnk_rd1':                             Chunking.          (line  4245)
-* 'cnk_rew':                             Chunking.          (line  4245)
-* 'cnk_scl':                             Chunking.          (line  4245)
-* 'cnk_xpl':                             Chunking.          (line  4186)
-* 'cnk_xst':                             Chunking.          (line  4186)
-* 'cnk_xst' <1>:                         Chunking.          (line  4245)
+                                                            (line  9698)
+* CMIP5:                                 CMIP5 Example.     (line 11921)
+* 'cnk_all':                             Chunking.          (line  4189)
+* 'cnk_dmn':                             Chunking.          (line  4258)
+* 'cnk_g2d':                             Chunking.          (line  4189)
+* 'cnk_g3d':                             Chunking.          (line  4189)
+* 'cnk_lfp':                             Chunking.          (line  4258)
+* CNK_MAP:                               Chunking.          (line  4252)
+* 'cnk_nc4':                             Chunking.          (line  4258)
+* 'cnk_prd':                             Chunking.          (line  4258)
+* 'cnk_r1d':                             Chunking.          (line  4189)
+* 'cnk_rd1':                             Chunking.          (line  4258)
+* 'cnk_rew':                             Chunking.          (line  4258)
+* 'cnk_scl':                             Chunking.          (line  4258)
+* 'cnk_xpl':                             Chunking.          (line  4189)
+* 'cnk_xst':                             Chunking.          (line  4189)
+* 'cnk_xst' <1>:                         Chunking.          (line  4258)
 * Comeau:                                Compatability.     (line   389)
 * command line options:                  Command Line Options.
-                                                            (line  1611)
-* command line switches:                 Philosophy.        (line   920)
-* command line switches <1>:             Common features.   (line  1504)
+                                                            (line  1614)
+* command line switches:                 Philosophy.        (line   923)
+* command line switches <1>:             Shared features.   (line  1507)
 * command line switches <2>:             Specifying Output Files.
-                                                            (line  1792)
-* command line switches <3>:             Operator Reference Manual.
-                                                            (line  5673)
+                                                            (line  1795)
+* command line switches <3>:             Reference Manual.  (line  6218)
 * comments:                              Syntax of ncap2 statements.
-                                                            (line  5760)
-* 'como':                                Compatability.     (line   407)
+                                                            (line  6305)
+* 'como':                                Compatability.     (line   408)
 * Compaq:                                Compatability.     (line   389)
-* comparator:                            Mask condition.    (line 10966)
+* comparator:                            Mask condition.    (line 11527)
 * compatability:                         Compatability.     (line   389)
 * compilers:                             Specifying Output Files.
-                                                            (line  1814)
+                                                            (line  1817)
 * complementary error function:          Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * compliance checker:                    Checking CF-compliance.
-                                                            (line  2973)
-* compression:                           Deflation.         (line  4405)
+                                                            (line  2976)
+* compression:                           Deflation.         (line  4938)
 * compression <1>:                       ncks netCDF Kitchen Sink.
-                                                            (line  9724)
+                                                            (line 10284)
 * concatenation:                         Appending Variables.
-                                                            (line  1029)
+                                                            (line  1032)
 * concatenation <1>:                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  9098)
+                                                            (line  9658)
 * concatenation <2>:                     ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10296)
+                                                            (line 10857)
 * concatenation <3>:                     ncrcat netCDF Record Concatenator.
-                                                            (line 10568)
-* conditional Operator:                  Expressions.       (line  5917)
+                                                            (line 11129)
+* conditional Operator:                  Expressions.       (line  6462)
 * 'config.guess':                        Help Requests and Bug Reports.
-                                                            (line   885)
+                                                            (line   888)
 * 'configure.eg':                        Help Requests and Bug Reports.
-                                                            (line   885)
-* constraint expressions:                OPeNDAP.           (line  2064)
+                                                            (line   888)
+* constraint expressions:                OPeNDAP.           (line  2067)
 * contents:                              How to Use This guide.
-                                                            (line   355)
-* contributing:                          Contributing.      (line 11119)
-* contributors:                          Contributors.      (line 11150)
-* coordinate limits:                     Hyperslabs.        (line  3163)
-* coordinate variable:                   UDUnits Support.   (line  3808)
-* coordinate variable <1>:               Operation Types.   (line  4791)
-* coordinate variable <2>:               CF Conventions.    (line  5566)
+                                                            (line   356)
+* contributing:                          Contributing.      (line 11680)
+* contributors:                          Contributors.      (line 11711)
+* coordinate limits:                     Hyperslabs.        (line  3166)
+* coordinate variable:                   UDUnits Support.   (line  3811)
+* coordinate variable <1>:               Operation Types.   (line  5333)
+* coordinate variable <2>:               CF Conventions.    (line  6111)
 * coordinate variable <3>:               ncbo netCDF Binary Operator.
-                                                            (line  8797)
+                                                            (line  9357)
 * coordinate variable <4>:               ncwa netCDF Weighted Averager.
-                                                            (line 10932)
+                                                            (line 11493)
 * coordinate variables:                  ncrename netCDF Renamer.
-                                                            (line 10775)
+                                                            (line 11336)
 * 'coordinates':                         Auxiliary Coordinates.
-                                                            (line  3664)
-* 'coordinates' <1>:                     CF Conventions.    (line  5566)
+                                                            (line  3667)
+* 'coordinates' <1>:                     CF Conventions.    (line  6111)
 * coordinates:                           Add Coordinates to MODIS Data.
-                                                            (line 12330)
-* coordinates convention:                CF Conventions.    (line  5566)
+                                                            (line 12891)
+* 'coordinates' attribute:               Compression.       (line  4522)
+* 'coordinates' attribute <1>:           Filters for 'ncks'.
+                                                            (line 10640)
+* coordinates convention:                CF Conventions.    (line  6111)
 * coordinates, modifying:                Permute MODIS Coordinates.
-                                                            (line 12378)
+                                                            (line 12939)
 * core dump:                             Help Requests and Bug Reports.
-                                                            (line   822)
-* 'core dump':                           Large Datasets.    (line  1321)
+                                                            (line   825)
+* 'core dump':                           Large Datasets.    (line  1324)
 * 'core dump' <1>:                       Filters for 'ncks'.
-                                                            (line 10077)
+                                                            (line 10637)
 * COS:                                   Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * COSH:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * cosine function:                       Intrinsic mathematical methods.
-                                                            (line  8137)
-* covariance:                            Examples ncap2.    (line  8064)
-* 'cp':                                  Subsetting Files.  (line  2464)
+                                                            (line  8693)
+* covariance:                            Examples ncap2.    (line  8620)
+* 'cp':                                  Subsetting Files.  (line  2467)
 * Cray:                                  Compatability.     (line   389)
-* Cray <1>:                              Large Datasets.    (line  1321)
-* 'csh':                                 Subsetting Files.  (line  2640)
+* Cray <1>:                              Large Datasets.    (line  1324)
+* 'csh':                                 Subsetting Files.  (line  2643)
 * Csh shell:                             Filters for 'ncks'.
-                                                            (line  9888)
-* 'cxx':                                 Compatability.     (line   407)
+                                                            (line 10448)
+* 'cxx':                                 Compatability.     (line   408)
 * Cygwin:                                Windows Operating System.
-                                                            (line   503)
-* Cygwin <1>:                            Symbolic Links.    (line   539)
-* C_FORMAT:                              Performance.       (line  1487)
+                                                            (line   504)
+* Cygwin <1>:                            Symbolic Links.    (line   540)
+* C_FORMAT:                              Performance.       (line  1490)
 * daily data:                            Daily data in one file.
-                                                            (line 11268)
+                                                            (line 11829)
 * daily data <1>:                        One time point one file.
-                                                            (line 11334)
+                                                            (line 11895)
 * daily data <2>:                        Multiple files with multiple time points.
-                                                            (line 11352)
-* Daniel Baumann:                        Contributors.      (line 11196)
-* Daniel Wang:                           Contributors.      (line 11168)
-* DAP:                                   OPeNDAP.           (line  1938)
-* data access protocol:                  OPeNDAP.           (line  1938)
+                                                            (line 11913)
+* Daniel Baumann:                        Contributors.      (line 11757)
+* Daniel Wang:                           Contributors.      (line 11729)
+* DAP:                                   OPeNDAP.           (line  1941)
+* data access protocol:                  OPeNDAP.           (line  1941)
 * data safety:                           Temporary Output Files.
-                                                            (line   941)
+                                                            (line   944)
 * data safety <1>:                       ncrename netCDF Renamer.
-                                                            (line 10694)
-* data, missing:                         Missing Values.    (line  4019)
+                                                            (line 11255)
+* data, missing:                         Missing Values.    (line  4022)
 * data, missing <1>:                     ncatted netCDF Attribute Editor.
-                                                            (line  8402)
-* 'date':                                CF Conventions.    (line  5488)
-* 'datesec':                             CF Conventions.    (line  5488)
+                                                            (line  8958)
+* 'date':                                CF Conventions.    (line  6033)
+* 'datesec':                             CF Conventions.    (line  6033)
 * DBG_LVL:                               Help Requests and Bug Reports.
-                                                            (line   877)
-* DBG_LVL <1>:                           Large Datasets.    (line  1340)
-* DBG_LVL <2>:                           OpenMP Threading.  (line  1595)
+                                                            (line   880)
+* DBG_LVL <1>:                           Large Datasets.    (line  1343)
+* DBG_LVL <2>:                           OpenMP Threading.  (line  1598)
 * DDRA:                                  Proposals for Institutional Funding.
-                                                            (line 11241)
+                                                            (line 11802)
 * Debian:                                netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   759)
+                                                            (line   760)
 * DEBUG-LEVEL:                           Help Requests and Bug Reports.
-                                                            (line   877)
-* DEBUG-LEVEL <1>:                       Large Datasets.    (line  1340)
+                                                            (line   880)
+* DEBUG-LEVEL <1>:                       Large Datasets.    (line  1343)
 * debugging:                             Help Requests and Bug Reports.
-                                                            (line   862)
-* debugging <1>:                         Large Datasets.    (line  1340)
-* debugging <2>:                         OpenMP Threading.  (line  1595)
+                                                            (line   865)
+* debugging <1>:                         Large Datasets.    (line  1343)
+* debugging <2>:                         OpenMP Threading.  (line  1598)
 * DEC:                                   Compatability.     (line   389)
-* 'defdim()':                            Dimensions.        (line  5948)
-* defining dimensions in 'ncap2':        Dimensions.        (line  5948)
+* Decimal Significant Digits:            Compression.       (line  4491)
+* 'defdim()':                            Dimensions.        (line  6493)
+* defining dimensions in 'ncap2':        Dimensions.        (line  6493)
+* DEFLATE:                               Compression.       (line  4619)
 * deflation:                             netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   650)
-* deflation <1>:                         Deflation.         (line  4405)
+                                                            (line   651)
+* deflation <1>:                         Deflation.         (line  4938)
 * deflation <2>:                         ncks netCDF Kitchen Sink.
-                                                            (line  9724)
-* degenerate dimension:                  Chunking.          (line  4239)
-* degenerate dimension <1>:              Operation Types.   (line  4836)
-* degenerate dimension <2>:              Examples ncap2.    (line  8112)
+                                                            (line 10284)
+* degenerate dimension:                  Chunking.          (line  4252)
+* degenerate dimension <1>:              Operation Types.   (line  5377)
+* degenerate dimension <2>:              Examples ncap2.    (line  8668)
 * degenerate dimension <3>:              ncbo netCDF Binary Operator.
-                                                            (line  8791)
+                                                            (line  9351)
 * degenerate dimension <4>:              ncecat netCDF Ensemble Concatenator.
-                                                            (line  9247)
+                                                            (line  9807)
 * degenerate dimension <5>:              ncflint netCDF File Interpolator.
-                                                            (line  9309)
+                                                            (line  9869)
 * degenerate dimension <6>:              ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10458)
+                                                            (line 11019)
 * degenerate dimension <7>:              ncra netCDF Record Averager.
-                                                            (line 10510)
+                                                            (line 11071)
 * degenerate dimension <8>:              ncwa netCDF Weighted Averager.
-                                                            (line 10884)
+                                                            (line 11445)
 * degenerate dimension <9>:              Normalization and Integration.
-                                                            (line 11041)
-* delete (groups):                       Flattening Groups. (line  2733)
+                                                            (line 11602)
+* delete (groups):                       Flattening Groups. (line  2736)
 * 'delete_miss()':                       Missing values ncap2.
-                                                            (line  6436)
-* demotion:                              Type Conversion.   (line  4920)
-* Dennis Heimbigner:                     Contributors.      (line 11142)
+                                                            (line  6985)
+* demotion:                              Type Conversion.   (line  5461)
+* Dennis Heimbigner:                     Contributors.      (line 11703)
 * derived fields:                        ncap2 netCDF Arithmetic Processor.
-                                                            (line  5708)
+                                                            (line  6253)
 * derived fields <1>:                    ncap2 netCDF Arithmetic Processor.
-                                                            (line  5720)
-* digest:                                MD5 digests.       (line  4442)
+                                                            (line  6265)
+* digest:                                MD5 digests.       (line  4978)
 * Digital:                               Compatability.     (line   389)
-* dimension limits:                      Hyperslabs.        (line  3163)
+* dimension limits:                      Hyperslabs.        (line  3166)
 * dimension names:                       ncrename netCDF Renamer.
-                                                            (line 10650)
+                                                            (line 11211)
 * dimension order:                       Annual Average over Regions.
-                                                            (line 11737)
-* dimensions, growing:                   Examples ncap2.    (line  8034)
+                                                            (line 12298)
+* dimensions, growing:                   Examples ncap2.    (line  8590)
 * disaggregate:                          Dismembering Files.
-                                                            (line  2866)
+                                                            (line  2869)
 * disjoint files:                        Appending Variables.
-                                                            (line  1051)
-* diskless files:                        RAM disks.         (line  4543)
+                                                            (line  1054)
+* diskless files:                        RAM disks.         (line  5079)
 * dismember:                             Dismembering Files.
-                                                            (line  2866)
+                                                            (line  2869)
 * Distributed Data Reduction & Analysis: Proposals for Institutional Funding.
-                                                            (line 11241)
-* Distributed Oceanographic Data System: OPeNDAP.           (line  1938)
+                                                            (line 11802)
+* Distributed Oceanographic Data System: OPeNDAP.           (line  1941)
 * 'divide':                              ncbo netCDF Binary Operator.
-                                                            (line  8693)
+                                                            (line  9253)
 * dividing data:                         ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * division:                              Intrinsic mathematical methods.
-                                                            (line  8134)
-* 'dmn':                                 Chunking.          (line  4245)
-* documentation:                         Availability.      (line   315)
-* DODS:                                  OPeNDAP.           (line  1938)
+                                                            (line  8690)
+* 'dmn':                                 Chunking.          (line  4258)
+* documentation:                         Availability.      (line   316)
+* DODS:                                  OPeNDAP.           (line  1941)
 * DODS <1>:                              Retaining Retrieved Files.
-                                                            (line  2106)
-* 'DODS_ROOT':                           OPeNDAP.           (line  1938)
+                                                            (line  2109)
+* 'DODS_ROOT':                           OPeNDAP.           (line  1941)
 * dot product:                           Normalization and Integration.
-                                                            (line 10987)
+                                                            (line 11548)
 * dot product <1>:                       Normalization and Integration.
-                                                            (line 11006)
+                                                            (line 11567)
 * double():                              Methods and functions.
-                                                            (line  6592)
+                                                            (line  7147)
 * double-precision:                      Intrinsic mathematical methods.
-                                                            (line  8240)
-* 'dsort':                               Sort methods.      (line  6808)
-* duration:                              Subcycle.          (line  3394)
-* dynamic linking:                       Libraries.         (line   565)
-* Ed Hartnett:                           Contributors.      (line 11142)
-* Ed Hill:                               Contributors.      (line 11198)
-* eddy covariance:                       Examples ncap2.    (line  8070)
+                                                            (line  8796)
+* DSD:                                   Compression.       (line  4491)
+* 'dsort':                               Sort methods.      (line  7363)
+* duration:                              Subcycle.          (line  3397)
+* dynamic linking:                       Libraries.         (line   566)
+* Ed Hartnett:                           Contributors.      (line 11703)
+* Ed Hill:                               Contributors.      (line 11759)
+* eddy covariance:                       Examples ncap2.    (line  8626)
 * editing attributes:                    ncatted netCDF Attribute Editor.
-                                                            (line  8370)
-* 'egrep':                               Subsetting Files.  (line  2565)
+                                                            (line  8926)
+* 'egrep':                               Subsetting Files.  (line  2568)
 * Elliptic integrals:                    GSL special functions.
-                                                            (line  7315)
-* ensemble:                              Concatenation.     (line  1129)
+                                                            (line  7870)
+* ensemble:                              Concatenation.     (line  1132)
 * ensemble <1>:                          nces netCDF Ensemble Statistics.
-                                                            (line  8959)
+                                                            (line  9519)
 * ensemble average:                      nces netCDF Ensemble Statistics.
-                                                            (line  8943)
+                                                            (line  9503)
 * ensemble concatenation:                ncecat netCDF Ensemble Concatenator.
-                                                            (line  9098)
+                                                            (line  9658)
 * ERF:                                   Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * ERFC:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
-* Eric Blake:                            Contributors.      (line 11206)
+                                                            (line  8693)
+* Eric Blake:                            Contributors.      (line 11767)
 * error function:                        Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * error tolerance:                       Temporary Output Files.
-                                                            (line   941)
-* Etienne Tourigny:                      Contributors.      (line 11212)
-* exclusion:                             Subsetting Files.  (line  2407)
+                                                            (line   944)
+* Etienne Tourigny:                      Contributors.      (line 11773)
+* exclusion:                             Subsetting Files.  (line  2410)
 * exclusion <1>:                         Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * exclusion <2>:                         Filters for 'ncks'.
-                                                            (line 10080)
-* execution time:                        Libraries.         (line   566)
+                                                            (line 10640)
+* execution time:                        Libraries.         (line   567)
 * execution time <1>:                    Temporary Output Files.
-                                                            (line   956)
-* execution time <2>:                    Performance.       (line  1479)
+                                                            (line   959)
+* execution time <2>:                    Performance.       (line  1482)
 * execution time <3>:                    Metadata Optimization.
-                                                            (line  1524)
-* execution time <4>:                    Missing Values.    (line  4078)
+                                                            (line  1527)
+* execution time <4>:                    Missing Values.    (line  4081)
 * execution time <5>:                    ncatted netCDF Attribute Editor.
-                                                            (line  8393)
+                                                            (line  8949)
 * execution time <6>:                    ncrename netCDF Renamer.
-                                                            (line 10709)
+                                                            (line 11270)
 * EXP:                                   Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * exponent:                              Promoting Single-precision to Double.
-                                                            (line  5285)
+                                                            (line  5826)
 * exponentiation:                        Intrinsic mathematical methods.
-                                                            (line  8134)
+                                                            (line  8690)
 * exponentiation function:               Intrinsic mathematical methods.
-                                                            (line  8137)
-* expressions:                           Expressions.       (line  5770)
+                                                            (line  8693)
+* expressions:                           Expressions.       (line  6315)
 * extended file format:                  Determining File Format.
-                                                            (line  2213)
+                                                            (line  2216)
 * extended regular expressions:          Large Numbers of Files.
-                                                            (line  1242)
-* extended regular expressions <1>:      Subsetting Files.  (line  2565)
-* extended regular expressions <2>:      Examples ncap2.    (line  8089)
+                                                            (line  1245)
+* extended regular expressions <1>:      Subsetting Files.  (line  2568)
+* extended regular expressions <2>:      Examples ncap2.    (line  8645)
 * extended regular expressions <3>:      ncatted netCDF Attribute Editor.
-                                                            (line  8422)
+                                                            (line  8980)
 * extended regular expressions <4>:      ncatted netCDF Attribute Editor.
-                                                            (line  8629)
-* extraction:                            Subsetting Files.  (line  2407)
+                                                            (line  9188)
+* extraction:                            Subsetting Files.  (line  2410)
 * extraction <1>:                        Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * extraction <2>:                        Filters for 'ncks'.
-                                                            (line 10080)
+                                                            (line 10640)
 * 'f90':                                 Windows Operating System.
-                                                            (line   503)
+                                                            (line   504)
 * features, requesting:                  Help Requests and Bug Reports.
-                                                            (line   822)
-* File buffers:                          Buffer sizes.      (line  4512)
-* file combination:                      Combine Files.     (line 11404)
+                                                            (line   825)
+* File buffers:                          Buffer sizes.      (line  5048)
+* file combination:                      Combine Files.     (line 11965)
 * file deletion:                         Retaining Retrieved Files.
-                                                            (line  2078)
+                                                            (line  2081)
 * file multiplication:                   ncflint netCDF File Interpolator.
-                                                            (line  9385)
+                                                            (line  9945)
 * file removal:                          Retaining Retrieved Files.
-                                                            (line  2078)
+                                                            (line  2081)
 * file retention:                        Retaining Retrieved Files.
-                                                            (line  2078)
+                                                            (line  2081)
 * files, multiple:                       Specifying Input Files.
-                                                            (line  1721)
+                                                            (line  1724)
 * files, numerous input:                 Large Numbers of Files.
-                                                            (line  1206)
-* Filipe Fernandes:                      Contributors.      (line 11202)
+                                                            (line  1209)
+* Filipe Fernandes:                      Contributors.      (line 11763)
 * filters:                               Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * findgen-equivalent:                    Arrays and hyperslabs.
-                                                            (line  6046)
+                                                            (line  6595)
 * fix record dimension:                  ncecat netCDF Ensemble Concatenator.
-                                                            (line  9142)
+                                                            (line  9702)
 * fix record dimension <1>:              ncecat netCDF Ensemble Concatenator.
-                                                            (line  9242)
+                                                            (line  9802)
 * fix record dimension <2>:              ncks netCDF Kitchen Sink.
-                                                            (line  9624)
+                                                            (line 10184)
 * fixed dimension:                       ncecat netCDF Ensemble Concatenator.
-                                                            (line  9142)
+                                                            (line  9702)
 * fixed dimension <1>:                   ncecat netCDF Ensemble Concatenator.
-                                                            (line  9242)
+                                                            (line  9802)
 * fixed dimension <2>:                   ncks netCDF Kitchen Sink.
-                                                            (line  9545)
+                                                            (line 10105)
 * fixed dimension <3>:                   ncks netCDF Kitchen Sink.
-                                                            (line  9624)
-* flags:                                 Examples ncap2.    (line  8048)
-* flatten (groups):                      Flattening Groups. (line  2733)
-* flattening:                            Autoconversion.    (line  2349)
+                                                            (line 10184)
+* flags:                                 Examples ncap2.    (line  8604)
+* flatten (groups):                      Flattening Groups. (line  2736)
+* flattening:                            Autoconversion.    (line  2352)
 * 'float':                               Intrinsic mathematical methods.
-                                                            (line  8240)
+                                                            (line  8796)
 * float():                               Methods and functions.
-                                                            (line  6589)
+                                                            (line  7144)
 * FLOOR:                                 Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * floor function:                        Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * 'flt_byt':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'flt_sht':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
-* for():                                 Loops.             (line  6753)
-* force append:                          Batch Mode.        (line  5409)
-* force overwrite:                       Batch Mode.        (line  5409)
-* foreword:                              Foreword.          (line   208)
+                                                            (line 10789)
+* for():                                 Loops.             (line  7308)
+* force append:                          Batch Mode.        (line  5954)
+* force overwrite:                       Batch Mode.        (line  5954)
+* foreword:                              Foreword.          (line   209)
 * Fortran:                               Promoting Single-precision to Double.
-                                                            (line  5068)
+                                                            (line  5609)
 * Fortran <1>:                           ncra netCDF Record Averager.
-                                                            (line 10545)
+                                                            (line 11106)
 * Fortran <2>:                           ncrcat netCDF Record Concatenator.
-                                                            (line 10622)
+                                                            (line 11183)
 * Fortran index convention:              C and Fortran Index Conventions.
-                                                            (line  3126)
-* FORTRAN_FORMAT:                        Performance.       (line  1487)
-* Francesco Lovergine:                   Contributors.      (line 11196)
+                                                            (line  3129)
+* FORTRAN_FORMAT:                        Performance.       (line  1490)
+* Francesco Lovergine:                   Contributors.      (line 11757)
 * 'ftp':                                 Windows Operating System.
-                                                            (line   509)
-* 'ftp' <1>:                             Remote storage.    (line  1824)
+                                                            (line   510)
+* 'ftp' <1>:                             Remote storage.    (line  1827)
 * FTP:                                   Retaining Retrieved Files.
-                                                            (line  2095)
+                                                            (line  2098)
 * funding:                               Proposals for Institutional Funding.
-                                                            (line 11241)
-* 'g++':                                 Compatability.     (line   407)
+                                                            (line 11802)
+* 'g++':                                 Compatability.     (line   408)
 * 'g++' <1>:                             Windows Operating System.
-                                                            (line   523)
-* 'g2d':                                 Chunking.          (line  4186)
-* 'g3d':                                 Chunking.          (line  4186)
+                                                            (line   524)
+* 'g2d':                                 Chunking.          (line  4189)
+* 'g3d':                                 Chunking.          (line  4189)
 * GAG:                                   ncecat netCDF Ensemble Concatenator.
-                                                            (line  9150)
-* GAMMA:                                 Compatability.     (line   458)
+                                                            (line  9710)
+* GAMMA:                                 Compatability.     (line   459)
 * GAMMA <1>:                             Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * gamma function:                        GSL special functions.
-                                                            (line  7281)
+                                                            (line  7836)
 * gamma function <1>:                    Intrinsic mathematical methods.
-                                                            (line  8137)
-* Gary Strand:                           Contributors.      (line 11194)
+                                                            (line  8693)
+* Gary Strand:                           Contributors.      (line 11755)
 * Gaussian weights:                      Normalization and Integration.
-                                                            (line 11050)
-* Gavin Burris:                          Contributors.      (line 11208)
-* Gayathri Venkitachalam:                Contributors.      (line 11190)
-* 'gcc':                                 Compatability.     (line   407)
+                                                            (line 11611)
+* Gavin Burris:                          Contributors.      (line 11769)
+* Gayathri Venkitachalam:                Contributors.      (line 11751)
+* 'gcc':                                 Compatability.     (line   408)
 * 'gcc' <1>:                             Windows Operating System.
-                                                            (line   523)
+                                                            (line   524)
 * GCM:                                   Climate Model Paradigm.
-                                                            (line   930)
-* GCM <1>:                               Promoting Single-precision to Double.
-                                                            (line  5207)
-* geographical weight:                   Monthly Cycle.     (line 12028)
-* George Shapavalov:                     Contributors.      (line 11200)
-* George Shapovalov:                     Contributors.      (line 11178)
-* George White:                          Contributors.      (line 11194)
+                                                            (line   933)
+* GCM <1>:                               Compression.       (line  4899)
+* GCM <2>:                               Promoting Single-precision to Double.
+                                                            (line  5748)
+* geographical weight:                   Monthly Cycle.     (line 12589)
+* George Shapavalov:                     Contributors.      (line 11761)
+* George Shapovalov:                     Contributors.      (line 11739)
+* George White:                          Contributors.      (line 11755)
 * 'gethostname':                         Windows Operating System.
-                                                            (line   507)
+                                                            (line   508)
 * 'getopt':                              Command Line Options.
-                                                            (line  1625)
+                                                            (line  1628)
 * 'getopt.h':                            Command Line Options.
-                                                            (line  1625)
+                                                            (line  1628)
 * 'getopt_long':                         Command Line Options.
-                                                            (line  1625)
+                                                            (line  1628)
 * 'getuid':                              Windows Operating System.
-                                                            (line   507)
+                                                            (line   508)
 * 'get_miss()':                          Missing values ncap2.
-                                                            (line  6431)
-* Glenn Davis:                           Contributors.      (line 11142)
+                                                            (line  6980)
+* Glenn Davis:                           Contributors.      (line 11703)
 * 'global' attribute:                    ncatted netCDF Attribute Editor.
-                                                            (line  8611)
+                                                            (line  9170)
 * 'global' attribute <1>:                ncrename netCDF Renamer.
-                                                            (line 10722)
+                                                            (line 11283)
 * global attributes:                     Large Numbers of Files.
-                                                            (line  1234)
-* global attributes <1>:                 History Attribute. (line  5429)
+                                                            (line  1237)
+* global attributes <1>:                 History Attribute. (line  5974)
 * global attributes <2>:                 File List Attributes.
-                                                            (line  5457)
-* global attributes <3>:                 ARM Conventions.   (line  5644)
+                                                            (line  6002)
+* global attributes <3>:                 ARM Conventions.   (line  6189)
 * global attributes <4>:                 ncatted netCDF Attribute Editor.
-                                                            (line  8444)
+                                                            (line  9002)
 * global attributes <5>:                 ncatted netCDF Attribute Editor.
-                                                            (line  8611)
+                                                            (line  9170)
 * global attributes <6>:                 ncks netCDF Kitchen Sink.
-                                                            (line  9446)
+                                                            (line 10006)
 * global attributes <7>:                 ncks netCDF Kitchen Sink.
-                                                            (line  9480)
+                                                            (line 10040)
 * global attributes <8>:                 Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * global attributes <9>:                 ncrename netCDF Renamer.
-                                                            (line 10722)
+                                                            (line 11283)
 * global attributes <10>:                ncrename netCDF Renamer.
-                                                            (line 10825)
+                                                            (line 11386)
 * globbing:                              Large Numbers of Files.
-                                                            (line  1242)
+                                                            (line  1245)
 * globbing <1>:                          Specifying Input Files.
-                                                            (line  1684)
-* globbing <2>:                          Subsetting Files.  (line  2640)
-* globbing <3>:                          Examples ncap2.    (line  8089)
+                                                            (line  1687)
+* globbing <2>:                          Subsetting Files.  (line  2643)
+* globbing <3>:                          Examples ncap2.    (line  8645)
 * globbing <4>:                          ncbo netCDF Binary Operator.
-                                                            (line  8723)
+                                                            (line  9283)
 * globbing <5>:                          ncra netCDF Record Averager.
-                                                            (line 10537)
+                                                            (line 11098)
 * globbing <6>:                          ncrcat netCDF Record Concatenator.
-                                                            (line 10615)
+                                                            (line 11176)
 * GNU:                                   Command Line Options.
-                                                            (line  1612)
-* GNU <1>:                               Subsetting Files.  (line  2565)
+                                                            (line  1615)
+* GNU <1>:                               Subsetting Files.  (line  2568)
 * 'gnu-win32':                           Windows Operating System.
-                                                            (line   503)
-* GNU/Linux:                             Large Datasets.    (line  1321)
+                                                            (line   504)
+* GNU/Linux:                             Large Datasets.    (line  1324)
 * 'GNUmakefile':                         Windows Operating System.
-                                                            (line   503)
-* God:                                   UDUnits Support.   (line  3918)
-* GODAD:                                 CMIP5 Example.     (line 11360)
-* 'grep -E':                             Subsetting Files.  (line  2565)
+                                                            (line   504)
+* God:                                   UDUnits Support.   (line  3921)
+* GODAD:                                 CMIP5 Example.     (line 11921)
+* 'grep -E':                             Subsetting Files.  (line  2568)
 * group aggregation:                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  9150)
-* group aggregation <1>:                 Combine Files.     (line 11510)
+                                                            (line  9710)
+* group aggregation <1>:                 Combine Files.     (line 12071)
 * group attributes:                      ncrename netCDF Renamer.
-                                                            (line 10825)
+                                                            (line 11386)
 * group names:                           ncrename netCDF Renamer.
-                                                            (line 10650)
+                                                            (line 11211)
 * group path:                            Group Path Editing.
-                                                            (line  2711)
+                                                            (line  2714)
 * group, aggregation:                    Annual Average over Regions.
-                                                            (line 11962)
+                                                            (line 12523)
 * group, anomaly:                        Annual Average over Regions.
-                                                            (line 11962)
+                                                            (line 12523)
 * group, dimension permutation:          Annual Average over Regions.
-                                                            (line 11962)
+                                                            (line 12523)
 * group, spatial averaging:              Annual Average over Regions.
-                                                            (line 11962)
+                                                            (line 12523)
 * group, standard deviation:             Annual Average over Regions.
-                                                            (line 11962)
+                                                            (line 12523)
 * group, temporal averaging:             Annual Average over Regions.
-                                                            (line 11962)
+                                                            (line 12523)
 * groups:                                netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   659)
+                                                            (line   660)
 * groups <1>:                            ncatted netCDF Attribute Editor.
-                                                            (line  8636)
+                                                            (line  9195)
 * groups, averaging:                     Global Distribution of Long-term Average.
-                                                            (line 11715)
-* groups, creating:                      Combine Files.     (line 11510)
-* groups, moving:                        Moving Groups.     (line  2823)
-* groups, renaming:                      Moving Groups.     (line  2823)
-* growing dimensions:                    Examples ncap2.    (line  8034)
-* GSL:                                   Compatability.     (line   451)
+                                                            (line 12276)
+* groups, creating:                      Combine Files.     (line 12071)
+* groups, moving:                        Moving Groups.     (line  2826)
+* groups, renaming:                      Moving Groups.     (line  2826)
+* growing dimensions:                    Examples ncap2.    (line  8590)
+* GSL:                                   Compatability.     (line   452)
 * GSL <1>:                               GSL special functions.
-                                                            (line  7266)
-* GSL <2>:                               GSL interpolation. (line  7658)
+                                                            (line  7821)
+* GSL <2>:                               GSL interpolation. (line  8213)
 * GSL_SF_BESSEL_JN:                      GSL special functions.
-                                                            (line  7295)
+                                                            (line  7850)
 * GSL_SF_GAMMA:                          GSL special functions.
-                                                            (line  7281)
+                                                            (line  7836)
 * gsl_sf_legendre_Pl:                    GSL special functions.
-                                                            (line  7350)
-* 'gw':                                  CF Conventions.    (line  5488)
+                                                            (line  7905)
+* 'gunzip':                              Compression.       (line  4619)
+* 'gw':                                  CF Conventions.    (line  6033)
 * 'gw' <1>:                              Normalization and Integration.
-                                                            (line 11050)
+                                                            (line 11611)
+* 'gzip':                                Compression.       (line  4427)
+* 'gzip' <1>:                            Compression.       (line  4619)
 * H4CF:                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   750)
+                                                            (line   751)
 * 'h4tonccf':                            netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   750)
-* Harry Mangalam:                        Contributors.      (line 11171)
-* hash:                                  MD5 digests.       (line  4442)
+                                                            (line   751)
+* Harry Mangalam:                        Contributors.      (line 11732)
+* hash:                                  MD5 digests.       (line  4978)
 * HDF:                                   netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   602)
+                                                            (line   603)
 * HDF <1>:                               File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * HDF <2>:                               ncks netCDF Kitchen Sink.
-                                                            (line  9584)
+                                                            (line 10144)
 * HDF <3>:                               Proposals for Institutional Funding.
-                                                            (line 11248)
-* HDF unpacking:                         Packed data.       (line  4699)
+                                                            (line 11809)
+* HDF unpacking:                         Packed data.       (line  5235)
 * HDF4:                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   679)
+                                                            (line   680)
 * HDF4 <1>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9584)
+                                                            (line 10144)
 * 'HDF4_UNKNOWN':                        netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   698)
+                                                            (line   699)
 * HDF5:                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   616)
+                                                            (line   617)
 * HDF5 <1>:                              netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   672)
+                                                            (line   673)
+* HDF5 <2>:                              Compression.       (line  4619)
 * 'hdf_name':                            netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   741)
+                                                            (line   742)
 * 'hdp':                                 ncks netCDF Kitchen Sink.
-                                                            (line  9584)
+                                                            (line 10144)
 * help:                                  Help Requests and Bug Reports.
-                                                            (line   822)
-* Henry Butowsky:                        Contributors.      (line 11157)
+                                                            (line   825)
+* Henry Butowsky:                        Contributors.      (line 11718)
 * 'hgh_byt':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'hgh_sht':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * hidden attributes:                     ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * hidden features:                       ncks netCDF Kitchen Sink.
-                                                            (line  9782)
+                                                            (line 10342)
 * Hierarchical Data Format:              netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   602)
+                                                            (line   603)
 * 'history':                             Large Numbers of Files.
-                                                            (line  1286)
-* 'history' <1>:                         Remote storage.    (line  1824)
-* 'history' <2>:                         History Attribute. (line  5429)
-* 'history' <3>:                         ARM Conventions.   (line  5644)
+                                                            (line  1289)
+* 'history' <1>:                         Remote storage.    (line  1827)
+* 'history' <2>:                         History Attribute. (line  5974)
+* 'history' <3>:                         ARM Conventions.   (line  6189)
 * 'history' <4>:                         ncatted netCDF Attribute Editor.
-                                                            (line  8388)
+                                                            (line  8944)
 * 'history' <5>:                         Filters for 'ncks'.
-                                                            (line  9981)
+                                                            (line 10541)
 * 'hncgen':                              ncks netCDF Kitchen Sink.
-                                                            (line  9584)
+                                                            (line 10144)
 * HP:                                    Compatability.     (line   389)
-* HPSS:                                  Remote storage.    (line  1864)
-* 'hsi':                                 Remote storage.    (line  1864)
-* HTML:                                  Availability.      (line   315)
-* HTTP protocol:                         OPeNDAP.           (line  1938)
-* 'hyai':                                CF Conventions.    (line  5488)
-* 'hyam':                                CF Conventions.    (line  5488)
-* 'hybi':                                CF Conventions.    (line  5488)
-* 'hybm':                                CF Conventions.    (line  5488)
-* hybrid coordinate system:              Left hand casting. (line  6000)
+* HPSS:                                  Remote storage.    (line  1867)
+* 'hsi':                                 Remote storage.    (line  1867)
+* HTML:                                  Availability.      (line   316)
+* HTTP protocol:                         OPeNDAP.           (line  1941)
+* Huffman coding:                        Compression.       (line  4427)
+* 'hyai':                                CF Conventions.    (line  6033)
+* 'hyam':                                CF Conventions.    (line  6033)
+* 'hybi':                                CF Conventions.    (line  6033)
+* 'hybm':                                CF Conventions.    (line  6033)
+* hybrid coordinate system:              Left hand casting. (line  6549)
 * hyperbolic arccosine function:         Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * hyperbolic arcsine function:           Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * hyperbolic arctangent function:        Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * hyperbolic cosine function:            Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * hyperbolic sine function:              Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * hyperbolic tangent:                    Intrinsic mathematical methods.
-                                                            (line  8137)
-* hyperslab:                             Hyperslabs.        (line  3163)
-* hyperslab <1>:                         Chunking.          (line  4171)
+                                                            (line  8693)
+* hyperslab:                             Hyperslabs.        (line  3166)
+* hyperslab <1>:                         Chunking.          (line  4174)
 * hyperslab <2>:                         nces netCDF Ensemble Statistics.
-                                                            (line  8977)
+                                                            (line  9537)
 * hyperslab <3>:                         ncecat netCDF Ensemble Concatenator.
-                                                            (line  9136)
+                                                            (line  9696)
 * hyperslab <4>:                         ncra netCDF Record Averager.
-                                                            (line 10521)
+                                                            (line 11082)
 * hyperslab <5>:                         ncrcat netCDF Record Concatenator.
-                                                            (line 10591)
+                                                            (line 11152)
 * hyperslab <6>:                         ncwa netCDF Weighted Averager.
-                                                            (line 10896)
+                                                            (line 11457)
 * hyperslabs:                            Arrays and hyperslabs.
-                                                            (line  6073)
-* I/O:                                   OPeNDAP.           (line  2010)
+                                                            (line  6622)
+* I/O:                                   OPeNDAP.           (line  2013)
 * I/O <1>:                               C and Fortran Index Conventions.
-                                                            (line  3130)
-* I/O <2>:                               Multislabs.        (line  3520)
-* I/O block size:                        Buffer sizes.      (line  4512)
+                                                            (line  3133)
+* I/O <2>:                               Multislabs.        (line  3523)
+* I/O block size:                        Buffer sizes.      (line  5048)
 * I18N:                                  Internationalization.
-                                                            (line  1513)
+                                                            (line  1516)
 * IBM:                                   Compatability.     (line   389)
-* 'icc':                                 Compatability.     (line   407)
-* ID Quoting:                            ID Quoting.        (line  8305)
-* IDL:                                   Philosophy.        (line   913)
-* IEEE:                                  Automatic type conversion.
-                                                            (line  5026)
+* 'icc':                                 Compatability.     (line   408)
+* ID Quoting:                            ID Quoting.        (line  8861)
+* IDL:                                   Philosophy.        (line   916)
+* IEEE:                                  Compression.       (line  4554)
+* IEEE <1>:                              Automatic type conversion.
+                                                            (line  5567)
+* IEEE 754:                              Compression.       (line  4538)
 * IEEE NaN:                              ncatted netCDF Attribute Editor.
-                                                            (line  8592)
-* if():                                  if statement.      (line  6292)
-* 'ilimit':                              Large Datasets.    (line  1331)
+                                                            (line  9151)
+* if():                                  if statement.      (line  6841)
+* 'ilimit':                              Large Datasets.    (line  1334)
 * illegal names:                         netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   741)
+                                                            (line   742)
 * implicit conversion:                   Promoting Single-precision to Double.
-                                                            (line  5056)
-* 'include':                             Include files.     (line  6793)
+                                                            (line  5597)
+* 'include':                             Include files.     (line  7348)
 * including files:                       Syntax of ncap2 statements.
-                                                            (line  5763)
+                                                            (line  6308)
 * index convention:                      C and Fortran Index Conventions.
-                                                            (line  3126)
+                                                            (line  3129)
 * indgen-equivalent:                     Arrays and hyperslabs.
-                                                            (line  6046)
+                                                            (line  6595)
 * inexact conversion:                    Intrinsic mathematical methods.
-                                                            (line  8204)
-* Info:                                  Availability.      (line   315)
+                                                            (line  8760)
+* Info:                                  Availability.      (line   316)
 * input files:                           Large Numbers of Files.
-                                                            (line  1260)
+                                                            (line  1263)
 * input files <1>:                       Specifying Input Files.
-                                                            (line  1684)
+                                                            (line  1687)
 * input files <2>:                       Specifying Output Files.
-                                                            (line  1792)
+                                                            (line  1795)
 * input files <3>:                       Specifying Output Files.
-                                                            (line  1809)
+                                                            (line  1812)
 * INPUT-PATH:                            Specifying Input Files.
-                                                            (line  1684)
-* INPUT-PATH <1>:                        Remote storage.    (line  1887)
+                                                            (line  1687)
+* INPUT-PATH <1>:                        Remote storage.    (line  1890)
 * installation:                          Compatability.     (line   389)
 * installation <1>:                      Help Requests and Bug Reports.
-                                                            (line   885)
+                                                            (line   888)
 * int():                                 Methods and functions.
-                                                            (line  6587)
+                                                            (line  7142)
 * int64():                               Methods and functions.
-                                                            (line  6602)
+                                                            (line  7157)
 * integration:                           Normalization and Integration.
-                                                            (line 10987)
-* integrity:                             MD5 digests.       (line  4442)
+                                                            (line 11548)
+* integrity:                             MD5 digests.       (line  4978)
 * Intel:                                 Compatability.     (line   389)
 * Internationalization:                  Internationalization.
-                                                            (line  1513)
-* interoperability:                      Packed data.       (line  4699)
+                                                            (line  1516)
+* interoperability:                      Packed data.       (line  5235)
 * interpolation:                         ncflint netCDF File Interpolator.
-                                                            (line  9258)
-* interpolation <1>:                     Regrid MODIS Data. (line 12192)
-* intersection:                          Subsetting Files.  (line  2407)
-* intersection <1>:                      Subsetting Files.  (line  2513)
-* introduction:                          Introduction.      (line   304)
+                                                            (line  9818)
+* interpolation <1>:                     Regrid MODIS Data. (line 12753)
+* intersection:                          Subsetting Files.  (line  2410)
+* intersection <1>:                      Subsetting Files.  (line  2516)
+* introduction:                          Introduction.      (line   305)
 * introduction <1>:                      How to Use This guide.
-                                                            (line   355)
-* 'invert_map':                          Sort methods.      (line  6808)
+                                                            (line   356)
+* 'invert_map':                          Sort methods.      (line  7363)
 * IPCC:                                  nces netCDF Ensemble Statistics.
-                                                            (line  8982)
+                                                            (line  9542)
 * IPCC <1>:                              Proposals for Institutional Funding.
-                                                            (line 11241)
-* irregular grids:                       Irregular grids.   (line  7053)
-* ISO:                                   Compatability.     (line   412)
-* James Gallagher:                       Contributors.      (line 11142)
-* Jim Edwards:                           Contributors.      (line 11184)
-* Joe Hamman:                            Contributors.      (line 11166)
-* John Caron:                            Contributors.      (line 11142)
-* Juliana Rew:                           Contributors.      (line 11186)
-* Karen Schuchardt:                      Contributors.      (line 11188)
-* Keith Lindsay:                         Contributors.      (line 11194)
+                                                            (line 11802)
+* irregular grids:                       Irregular grids.   (line  7608)
+* ISO:                                   Compatability.     (line   413)
+* James Gallagher:                       Contributors.      (line 11703)
+* Jim Edwards:                           Contributors.      (line 11745)
+* Joe Hamman:                            Contributors.      (line 11727)
+* John Caron:                            Contributors.      (line 11703)
+* Juliana Rew:                           Contributors.      (line 11747)
+* Karen Schuchardt:                      Contributors.      (line 11749)
+* Keith Lindsay:                         Contributors.      (line 11755)
 * kitchen sink:                          ncks netCDF Kitchen Sink.
-                                                            (line  9411)
-* Kyle Wilcox:                           Contributors.      (line 11208)
+                                                            (line  9971)
+* Kyle Wilcox:                           Contributors.      (line 11769)
 * L10N:                                  Internationalization.
-                                                            (line  1514)
-* large datasets:                        Large Datasets.    (line  1303)
-* large datasets <1>:                    OpenMP Threading.  (line  1573)
-* Large File Support:                    Large Datasets.    (line  1303)
+                                                            (line  1517)
+* large datasets:                        Large Datasets.    (line  1306)
+* large datasets <1>:                    OpenMP Threading.  (line  1576)
+* Large File Support:                    Large Datasets.    (line  1306)
 * Large File Support <1>:                Large File Support.
-                                                            (line  2373)
-* 'lat_bnds':                            CF Conventions.    (line  5488)
-* 'LD_LIBRARY_PATH':                     Libraries.         (line   565)
-* left hand casting:                     Memory for ncap2.  (line  1440)
-* left hand casting <1>:                 Left hand casting. (line  6000)
+                                                            (line  2376)
+* 'lat_bnds':                            CF Conventions.    (line  6033)
+* 'LD_LIBRARY_PATH':                     Libraries.         (line   566)
+* Least Significant Digit:               Compression.       (line  4469)
+* 'least_significant_digit':             Compression.       (line  4652)
+* left hand casting:                     Memory for ncap2.  (line  1443)
+* left hand casting <1>:                 Left hand casting. (line  6549)
 * Legendre polynomial:                   GSL special functions.
-                                                            (line  7350)
-* Lempel-Ziv deflation:                  Deflation.         (line  4405)
-* Len Makin:                             Contributors.      (line 11182)
+                                                            (line  7905)
+* Lempel-Ziv deflation:                  Deflation.         (line  4938)
+* Len Makin:                             Contributors.      (line 11743)
 * lexer:                                 ncap2 netCDF Arithmetic Processor.
-                                                            (line  5683)
-* 'lfp':                                 Chunking.          (line  4245)
-* LFS:                                   Large Datasets.    (line  1303)
+                                                            (line  6228)
+* 'lfp':                                 Chunking.          (line  4258)
+* LFS:                                   Large Datasets.    (line  1306)
 * LFS <1>:                               Large File Support.
-                                                            (line  2373)
-* LHS:                                   Left hand casting. (line  6000)
-* 'libnco':                              Compatability.     (line   412)
-* libraries:                             Libraries.         (line   565)
+                                                            (line  2376)
+* LHS:                                   Left hand casting. (line  6549)
+* 'libnco':                              Compatability.     (line   413)
+* libraries:                             Libraries.         (line   566)
 * linkers:                               Specifying Output Files.
-                                                            (line  1814)
+                                                            (line  1817)
 * Linux:                                 Intrinsic mathematical methods.
-                                                            (line  8242)
-* LLVM:                                  Compatability.     (line   410)
+                                                            (line  8798)
+* LLVM:                                  Compatability.     (line   411)
 * LN:                                    Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * 'ln -s':                               ncbo netCDF Binary Operator.
-                                                            (line  8737)
+                                                            (line  9297)
 * 'ln -s' <1>:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10216)
+                                                            (line 10777)
 * LOG:                                   Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * LOG10:                                 Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * logarithm, base 10:                    Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * logarithm, natural:                    Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * 'long double':                         Intrinsic mathematical methods.
-                                                            (line  8240)
+                                                            (line  8796)
 * long options:                          Command Line Options.
-                                                            (line  1624)
+                                                            (line  1627)
 * long options <1>:                      ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10390)
+                                                            (line 10951)
 * long-term average:                     Global Distribution of Long-term Average.
-                                                            (line 11634)
+                                                            (line 12195)
 * longitude:                             Wrapped Coordinates.
-                                                            (line  3614)
-* 'lon_bnds':                            CF Conventions.    (line  5488)
-* Lori Sentman:                          Contributors.      (line 11194)
+                                                            (line  3617)
+* 'lon_bnds':                            CF Conventions.    (line  6033)
+* Lori Sentman:                          Contributors.      (line 11755)
+* lossy compression:                     Compression.       (line  4427)
 * 'lrint()'.:                            Automatic type conversion.
-                                                            (line  5026)
+                                                            (line  5567)
 * 'lround()'.:                           Automatic type conversion.
-                                                            (line  5018)
-* Luk Claes:                             Contributors.      (line 11196)
+                                                            (line  5559)
+* LSD:                                   Compression.       (line  4469)
+* Luk Claes:                             Contributors.      (line 11757)
+* 'mabs':                                Operation Types.   (line  5303)
+* mabs():                                Methods and functions.
+                                                            (line  7048)
 * Macintosh:                             Compatability.     (line   389)
-* 'Makefile':                            Compatability.     (line   417)
+* 'Makefile':                            Compatability.     (line   418)
 * 'Makefile' <1>:                        Windows Operating System.
-                                                            (line   503)
-* 'Makefile' <2>:                        OPeNDAP.           (line  1950)
-* malloc():                              Memory for ncap2.  (line  1449)
+                                                            (line   504)
+* 'Makefile' <2>:                        OPeNDAP.           (line  1953)
+* malloc():                              Memory for ncap2.  (line  1452)
 * mantissa:                              Promoting Single-precision to Double.
-                                                            (line  5285)
-* manual type conversion:                Type Conversion.   (line  4920)
-* 'map_dmn':                             Chunking.          (line  4245)
-* 'map_lfp':                             Chunking.          (line  4245)
-* 'map_nc4':                             Chunking.          (line  4245)
-* 'map_prd':                             Chunking.          (line  4245)
-* 'map_rd1':                             Chunking.          (line  4245)
-* 'map_rew':                             Chunking.          (line  4245)
-* 'map_scl':                             Chunking.          (line  4245)
-* 'map_xst':                             Chunking.          (line  4245)
-* Mark Flanner:                          Contributors.      (line 11194)
-* Markus Liebig:                         Contributors.      (line 11194)
-* Martin Dix:                            Contributors.      (line 11194)
-* Martin Otte:                           Contributors.      (line 11212)
-* Martin Schmidt:                        Contributors.      (line 11194)
+                                                            (line  5826)
+* manual type conversion:                Type Conversion.   (line  5461)
+* 'map_dmn':                             Chunking.          (line  4258)
+* 'map_lfp':                             Chunking.          (line  4258)
+* 'map_nc4':                             Chunking.          (line  4258)
+* 'map_prd':                             Chunking.          (line  4258)
+* 'map_rd1':                             Chunking.          (line  4258)
+* 'map_rew':                             Chunking.          (line  4258)
+* 'map_scl':                             Chunking.          (line  4258)
+* 'map_xst':                             Chunking.          (line  4258)
+* Mark Flanner:                          Contributors.      (line 11755)
+* Markus Liebig:                         Contributors.      (line 11755)
+* Martin Dix:                            Contributors.      (line 11755)
+* Martin Otte:                           Contributors.      (line 11773)
+* Martin Schmidt:                        Contributors.      (line 11755)
 * Martin Schultz:                        Checking CF-compliance.
-                                                            (line  2973)
-* mask:                                  Irregular grids.   (line  7053)
-* mask <1>:                              Examples ncap2.    (line  8057)
-* mask condition:                        Mask condition.    (line 10958)
+                                                            (line  2976)
+* mask:                                  Irregular grids.   (line  7608)
+* mask <1>:                              Examples ncap2.    (line  8613)
+* mask condition:                        Mask condition.    (line 11519)
 * mask condition <1>:                    Normalization and Integration.
-                                                            (line 11089)
+                                                            (line 11650)
 * masked average:                        ncwa netCDF Weighted Averager.
-                                                            (line 10864)
-* Mass Store System:                     Remote storage.    (line  1824)
-* Matej Vela:                            Contributors.      (line 11196)
+                                                            (line 11425)
+* Mass Store System:                     Remote storage.    (line  1827)
+* Matej Vela:                            Contributors.      (line 11757)
 * mathematical functions:                Intrinsic mathematical methods.
-                                                            (line  8137)
-* Matlab:                                Philosophy.        (line   913)
-* 'max':                                 Operation Types.   (line  4767)
+                                                            (line  8693)
+* Matlab:                                Philosophy.        (line   916)
+* 'max':                                 Operation Types.   (line  5303)
 * max():                                 Methods and functions.
-                                                            (line  6495)
-* maximum:                               Operation Types.   (line  4767)
-* MD5 digest:                            MD5 digests.       (line  4442)
-* mean:                                  Operation Types.   (line  4767)
+                                                            (line  7044)
+* maximum:                               Operation Types.   (line  5303)
+* MD5 digest:                            MD5 digests.       (line  4978)
+* mean:                                  Operation Types.   (line  5303)
+* 'mebs':                                Operation Types.   (line  5303)
+* mebs():                                Methods and functions.
+                                                            (line  7050)
 * memory available:                      Memory Requirements.
-                                                            (line  1351)
-* memory available <1>:                  RAM disks.         (line  4543)
-* memory leaks:                          Memory for ncap2.  (line  1440)
+                                                            (line  1354)
+* memory available <1>:                  RAM disks.         (line  5079)
+* memory leaks:                          Memory for ncap2.  (line  1443)
 * memory requirements:                   Memory Requirements.
-                                                            (line  1351)
-* memory requirements <1>:               Subsetting Files.  (line  2546)
-* memory requirements <2>:               RAM disks.         (line  4543)
+                                                            (line  1354)
+* memory requirements <1>:               Subsetting Files.  (line  2549)
+* memory requirements <2>:               RAM disks.         (line  5079)
 * merging files:                         Appending Variables.
-                                                            (line  1029)
+                                                            (line  1032)
 * merging files <1>:                     ncks netCDF Kitchen Sink.
-                                                            (line  9460)
+                                                            (line 10020)
 * metadata:                              ncks netCDF Kitchen Sink.
-                                                            (line  9720)
+                                                            (line 10280)
 * metadata optimization:                 Metadata Optimization.
-                                                            (line  1524)
+                                                            (line  1527)
 * metadata, global:                      ncecat netCDF Ensemble Concatenator.
-                                                            (line  9183)
+                                                            (line  9743)
 * metadata, global <1>:                  ncks netCDF Kitchen Sink.
-                                                            (line  9677)
+                                                            (line 10237)
+* 'mibs':                                Operation Types.   (line  5303)
+* mibs():                                Methods and functions.
+                                                            (line  7052)
 * Michael Decker:                        Checking CF-compliance.
-                                                            (line  2973)
+                                                            (line  2976)
 * Michael Prather:                       Promoting Single-precision to Double.
-                                                            (line  5394)
-* Michael Schulz:                        Contributors.      (line 11194)
+                                                            (line  5939)
+* Michael Schulz:                        Contributors.      (line 11755)
 * Microsoft:                             Compatability.     (line   389)
 * Microsoft <1>:                         Windows Operating System.
-                                                            (line   488)
+                                                            (line   489)
 * Microsoft Visual Studio:               Windows Operating System.
-                                                            (line   488)
+                                                            (line   489)
 * Mike Folk:                             netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   602)
-* Mike Page:                             Contributors.      (line 11194)
-* 'min':                                 Operation Types.   (line  4767)
+                                                            (line   603)
+* Mike Page:                             Contributors.      (line 11755)
+* 'min':                                 Operation Types.   (line  5303)
 * min():                                 Methods and functions.
-                                                            (line  6497)
-* minimum:                               Operation Types.   (line  4767)
-* missing values:                        Missing Values.    (line  4019)
+                                                            (line  7046)
+* minimum:                               Operation Types.   (line  5303)
+* missing values:                        Missing Values.    (line  4022)
 * missing values <1>:                    ncatted netCDF Attribute Editor.
-                                                            (line  8402)
+                                                            (line  8958)
 * missing values <2>:                    ncflint netCDF File Interpolator.
-                                                            (line  9331)
+                                                            (line  9891)
 * missing values <3>:                    ncks netCDF Kitchen Sink.
-                                                            (line  9733)
+                                                            (line 10293)
 * missing values ncap2:                  Missing values ncap2.
-                                                            (line  6388)
-* 'missing_value':                       Missing Values.    (line  4019)
-* 'missing_value' <1>:                   Packed data.       (line  4630)
+                                                            (line  6937)
+* 'missing_value':                       Missing Values.    (line  4022)
+* 'missing_value' <1>:                   Packed data.       (line  5166)
 * 'missing_value' <2>:                   ncrename netCDF Renamer.
-                                                            (line 10825)
-* MKS units:                             UDUnits Support.   (line  3788)
-* MKS units <1>:                         UDUnits Support.   (line  3918)
-* MODIS:                                 Regrid MODIS Data. (line 12192)
+                                                            (line 11386)
+* MKS units:                             UDUnits Support.   (line  3791)
+* MKS units <1>:                         UDUnits Support.   (line  3921)
+* MODIS:                                 Regrid MODIS Data. (line 12753)
 * MODIS <1>:                             Add Coordinates to MODIS Data.
-                                                            (line 12330)
+                                                            (line 12891)
 * modulus:                               Intrinsic mathematical methods.
-                                                            (line  8134)
-* monotonic coordinates:                 Performance.       (line  1482)
+                                                            (line  8690)
+* monotonic coordinates:                 Performance.       (line  1485)
 * monthly average:                       Daily data in one file.
-                                                            (line 11271)
-* monthly average <1>:                   Monthly Cycle.     (line 12028)
+                                                            (line 11832)
+* monthly average <1>:                   Monthly Cycle.     (line 12589)
 * monthly data:                          Monthly data in one file.
-                                                            (line 11302)
+                                                            (line 11863)
 * monthly data <1>:                      One time point one file.
-                                                            (line 11334)
+                                                            (line 11895)
 * monthly data <2>:                      Multiple files with multiple time points.
-                                                            (line 11352)
-* move groups:                           Moving Groups.     (line  2823)
-* MRO:                                   Subcycle.          (line  3394)
-* MSA:                                   Multislabs.        (line  3470)
-* 'msk_*':                               CF Conventions.    (line  5488)
-* 'msrcp':                               Remote storage.    (line  1864)
+                                                            (line 11913)
+* move groups:                           Moving Groups.     (line  2826)
+* MRO:                                   Subcycle.          (line  3397)
+* MSA:                                   Multislabs.        (line  3473)
+* 'msk_*':                               CF Conventions.    (line  6033)
+* 'msrcp':                               Remote storage.    (line  1867)
 * msrcp:                                 Retaining Retrieved Files.
-                                                            (line  2095)
-* 'msread':                              Remote storage.    (line  1864)
-* MSS:                                   Remote storage.    (line  1824)
+                                                            (line  2098)
+* 'msread':                              Remote storage.    (line  1867)
+* MSS:                                   Remote storage.    (line  1827)
 * multi-file operators:                  Single and Multi-file Operators.
-                                                            (line  1369)
+                                                            (line  1372)
 * multi-file operators <1>:              Specifying Input Files.
-                                                            (line  1721)
+                                                            (line  1724)
 * multi-file operators <2>:              Specifying Output Files.
-                                                            (line  1804)
+                                                            (line  1807)
 * multi-file operators <3>:              nces netCDF Ensemble Statistics.
-                                                            (line  9012)
+                                                            (line  9572)
 * multi-file operators <4>:              ncecat netCDF Ensemble Concatenator.
-                                                            (line  9178)
+                                                            (line  9738)
 * multi-file operators <5>:              ncra netCDF Record Averager.
-                                                            (line 10514)
+                                                            (line 11075)
 * multi-file operators <6>:              ncrcat netCDF Record Concatenator.
-                                                            (line 10584)
-* multi-hyperslab:                       Multislabs.        (line  3470)
-* Multi-Record Operator:                 Subcycle.          (line  3394)
+                                                            (line 11145)
+* multi-hyperslab:                       Multislabs.        (line  3473)
+* Multi-Record Operator:                 Subcycle.          (line  3397)
 * multiplication:                        Intrinsic mathematical methods.
-                                                            (line  8134)
+                                                            (line  8690)
 * multiplication <1>:                    ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * multiplication <2>:                    ncflint netCDF File Interpolator.
-                                                            (line  9385)
+                                                            (line  9945)
 * 'multiply':                            ncbo netCDF Binary Operator.
-                                                            (line  8693)
+                                                            (line  9253)
 * multiplying data:                      ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * multiplying data <1>:                  ncflint netCDF File Interpolator.
-                                                            (line  9258)
-* multislab:                             Multislabs.        (line  3470)
-* 'mv':                                  Subsetting Files.  (line  2464)
-* 'MVS':                                 Compatability.     (line   407)
+                                                            (line  9818)
+* multislab:                             Multislabs.        (line  3473)
+* 'mv':                                  Subsetting Files.  (line  2467)
+* 'MVS':                                 Compatability.     (line   408)
 * MVS:                                   Windows Operating System.
-                                                            (line   488)
+                                                            (line   489)
 * naked characters:                      ncbo netCDF Binary Operator.
-                                                            (line  8722)
+                                                            (line  9282)
 * NaN:                                   ncatted netCDF Attribute Editor.
-                                                            (line  8592)
+                                                            (line  9151)
 * NARR (North American Regional Reanalysis)a: Where statement.
-                                                            (line  6714)
+                                                            (line  7269)
 * NASA:                                  Proposals for Institutional Funding.
-                                                            (line 11248)
+                                                            (line 11809)
 * NASA EOSDIS:                           Large Numbers of Files.
-                                                            (line  1207)
-* National Virtual Ocean Data System:    OPeNDAP.           (line  2040)
-* 'nc4':                                 Chunking.          (line  4245)
+                                                            (line  1210)
+* National Virtual Ocean Data System:    OPeNDAP.           (line  2043)
+* 'nc3tonc4':                            netCDF2/3/4 and HDF4/5 Support.
+                                                            (line   726)
+* 'nc4':                                 Chunking.          (line  4258)
 * ncadd:                                 ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * ncap:                                  ncap2 netCDF Arithmetic Processor.
-                                                            (line  5683)
-* ncap2:                                 Compatability.     (line   451)
+                                                            (line  6228)
+* ncap2:                                 Compatability.     (line   452)
 * ncap2 <1>:                             ncap2 netCDF Arithmetic Processor.
-                                                            (line  5683)
-* 'ncap2':                               Memory for ncap2.  (line  1440)
-* 'ncap2' <1>:                           OpenMP Threading.  (line  1573)
+                                                            (line  6228)
+* 'ncap2':                               Memory for ncap2.  (line  1443)
+* 'ncap2' <1>:                           OpenMP Threading.  (line  1576)
 * 'ncap2' <2>:                           Manual type conversion.
-                                                            (line  5399)
+                                                            (line  5944)
 * 'ncap2' <3>:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10148)
+                                                            (line 10709)
 * NCAR:                                  Climate Model Paradigm.
-                                                            (line   930)
-* NCAR MSS:                              Remote storage.    (line  1824)
-* ncatted:                               Missing Values.    (line  4046)
+                                                            (line   933)
+* NCAR <1>:                              Compression.       (line  4899)
+* NCAR MSS:                              Remote storage.    (line  1827)
+* ncatted:                               Missing Values.    (line  4049)
 * ncatted <1>:                           ncatted netCDF Attribute Editor.
-                                                            (line  8370)
-* 'ncatted':                             Subsetting Files.  (line  2565)
-* 'ncatted' <1>:                         Missing Values.    (line  4071)
-* 'ncatted' <2>:                         History Attribute. (line  5447)
+                                                            (line  8926)
+* 'ncatted':                             Subsetting Files.  (line  2568)
+* 'ncatted' <1>:                         Missing Values.    (line  4074)
+* 'ncatted' <2>:                         History Attribute. (line  5992)
 * 'ncattget':                            ncatted netCDF Attribute Editor.
-                                                            (line  8377)
+                                                            (line  8933)
 * 'ncattget' <1>:                        Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * 'ncavg':                               Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * ncbo:                                  ncbo netCDF Binary Operator.
-                                                            (line  8675)
-* 'ncbo':                                Missing Values.    (line  4094)
+                                                            (line  9235)
+* 'ncbo':                                Missing Values.    (line  4097)
 * ncdiff:                                ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * ncdismember:                           Dismembering Files.
-                                                            (line  2866)
+                                                            (line  2869)
 * ncdismember <1>:                       Checking CF-compliance.
-                                                            (line  2973)
+                                                            (line  2976)
 * ncdivide:                              ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * 'ncdmnsz':                             Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * 'ncdump':                              Determining File Format.
-                                                            (line  2235)
+                                                            (line  2238)
 * 'ncdump' <1>:                          ncks netCDF Kitchen Sink.
-                                                            (line  9584)
+                                                            (line 10144)
 * 'ncdump' <2>:                          ncks netCDF Kitchen Sink.
-                                                            (line  9720)
+                                                            (line 10280)
 * 'ncdump' <3>:                          ncks netCDF Kitchen Sink.
-                                                            (line  9804)
+                                                            (line 10364)
 * ncecat:                                ncecat netCDF Ensemble Concatenator.
-                                                            (line  9098)
-* 'ncecat':                              Concatenation.     (line  1116)
+                                                            (line  9658)
+* 'ncecat':                              Concatenation.     (line  1119)
 * nces:                                  nces netCDF Ensemble Statistics.
-                                                            (line  8943)
-* 'nces':                                Averaging.         (line  1174)
-* 'nces' <1>:                            Missing Values.    (line  4094)
+                                                            (line  9503)
+* 'nces':                                Averaging.         (line  1177)
+* 'nces' <1>:                            Missing Values.    (line  4097)
 * 'ncextr':                              ncks netCDF Kitchen Sink.
-                                                            (line  9424)
+                                                            (line  9984)
 * ncflint:                               ncflint netCDF File Interpolator.
-                                                            (line  9258)
-* 'ncflint':                             Interpolating.     (line  1196)
-* 'ncflint' <1>:                         Missing Values.    (line  4094)
+                                                            (line  9818)
+* 'ncflint':                             Interpolating.     (line  1199)
+* 'ncflint' <1>:                         Missing Values.    (line  4097)
 * 'ncgen':                               ncks netCDF Kitchen Sink.
-                                                            (line  9584)
+                                                            (line 10144)
 * 'ncgen-hdf':                           ncks netCDF Kitchen Sink.
-                                                            (line  9584)
-* ncks:                                  Deflation.         (line  4436)
-* ncks <1>:                              Examples ncap2.    (line  8112)
+                                                            (line 10144)
+* ncks:                                  Deflation.         (line  4972)
+* ncks <1>:                              Examples ncap2.    (line  8668)
 * ncks <2>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9411)
+                                                            (line  9971)
 * 'ncks':                                Determining File Format.
-                                                            (line  2204)
-* NCL:                                   Philosophy.        (line   913)
+                                                            (line  2207)
+* NCL:                                   Philosophy.        (line   916)
 * NCL <1>:                               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10344)
+                                                            (line 10905)
 * 'nclist':                              Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * 'ncl_convert2nc':                      netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   725)
+                                                            (line   726)
 * 'ncl_convert2nc' <1>:                  ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10344)
+                                                            (line 10905)
 * 'ncmax':                               Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * 'ncmdn':                               Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * 'ncmin':                               Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * NcML:                                  ncks netCDF Kitchen Sink.
-                                                            (line  9804)
+                                                            (line 10364)
 * ncmult:                                ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * ncmultiply:                            ncbo netCDF Binary Operator.
-                                                            (line  8675)
-* NCO availability:                      Availability.      (line   307)
-* NCO homepage:                          Availability.      (line   331)
+                                                            (line  9235)
+* NCO availability:                      Availability.      (line   308)
+* NCO homepage:                          Availability.      (line   332)
 * nco script file:                       Annual Average over Regions.
-                                                            (line 11737)
-* 'NCO User Guide':                      Availability.      (line   315)
+                                                            (line 12298)
+* 'NCO User Guide':                      Availability.      (line   316)
 * 'nco.config.log.${GNU_TRP}.foo':       Help Requests and Bug Reports.
-                                                            (line   885)
+                                                            (line   888)
 * 'nco.configure.${GNU_TRP}.foo':        Help Requests and Bug Reports.
-                                                            (line   885)
+                                                            (line   888)
 * 'nco.make.${GNU_TRP}.foo':             Help Requests and Bug Reports.
-                                                            (line   885)
+                                                            (line   888)
 * 'nco_input_file_list':                 Large Numbers of Files.
-                                                            (line  1234)
+                                                            (line  1237)
 * 'nco_input_file_list' <1>:             File List Attributes.
-                                                            (line  5457)
+                                                            (line  6002)
 * 'nco_input_file_number':               Large Numbers of Files.
-                                                            (line  1234)
+                                                            (line  1237)
 * 'nco_input_file_number' <1>:           File List Attributes.
-                                                            (line  5457)
-* 'nco_openmp_thread_number':            OpenMP Threading.  (line  1547)
+                                                            (line  6002)
+* 'nco_openmp_thread_number':            OpenMP Threading.  (line  1550)
 * ncpack:                                ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
-* ncpdq:                                 Chunking.          (line  4171)
+                                                            (line 10691)
+* ncpdq:                                 Chunking.          (line  4174)
 * ncpdq <1>:                             ncecat netCDF Ensemble Concatenator.
-                                                            (line  9205)
+                                                            (line  9765)
 * ncpdq <2>:                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
+                                                            (line 10691)
 * ncpdq <3>:                             ncrcat netCDF Record Concatenator.
-                                                            (line 10596)
-* 'ncpdq':                               Concatenation.     (line  1149)
-* 'ncpdq' <1>:                           OpenMP Threading.  (line  1573)
-* ncra:                                  Examples ncap2.    (line  8112)
+                                                            (line 11157)
+* 'ncpdq':                               Concatenation.     (line  1152)
+* 'ncpdq' <1>:                           OpenMP Threading.  (line  1576)
+* ncra:                                  Examples ncap2.    (line  8668)
 * ncra <1>:                              ncra netCDF Record Averager.
-                                                            (line 10497)
-* 'ncra':                                Averaging.         (line  1174)
-* 'ncra' <1>:                            Missing Values.    (line  4094)
+                                                            (line 11058)
+* 'ncra':                                Averaging.         (line  1177)
+* 'ncra' <1>:                            Missing Values.    (line  4097)
 * ncrcat:                                ncrcat netCDF Record Concatenator.
-                                                            (line 10568)
-* 'ncrcat':                              Concatenation.     (line  1116)
-* 'ncrcat' <1>:                          OpenMP Threading.  (line  1573)
+                                                            (line 11129)
+* 'ncrcat':                              Concatenation.     (line  1119)
+* 'ncrcat' <1>:                          OpenMP Threading.  (line  1576)
 * 'ncrecsz':                             Filters for 'ncks'.
-                                                            (line  9888)
-* ncrename:                              Missing Values.    (line  4046)
+                                                            (line 10448)
+* ncrename:                              Missing Values.    (line  4049)
 * ncrename <1>:                          ncrename netCDF Renamer.
-                                                            (line 10650)
+                                                            (line 11211)
 * 'ncrng':                               Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * NCSA:                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   616)
+                                                            (line   617)
 * ncsub:                                 ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * ncsubtract:                            ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * 'ncunits':                             Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * ncunpack:                              ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
-* ncwa:                                  Examples ncap2.    (line  8112)
+                                                            (line 10691)
+* ncwa:                                  Examples ncap2.    (line  8668)
 * ncwa <1>:                              ncwa netCDF Weighted Averager.
-                                                            (line 10864)
-* 'ncwa':                                Averaging.         (line  1174)
-* 'ncwa' <1>:                            OpenMP Threading.  (line  1573)
-* 'ncwa' <2>:                            Missing Values.    (line  4094)
+                                                            (line 11425)
+* 'ncwa':                                Averaging.         (line  1177)
+* 'ncwa' <1>:                            OpenMP Threading.  (line  1576)
+* 'ncwa' <2>:                            Missing Values.    (line  4097)
 * 'NC_BYTE':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
-* 'NC_CHAR':                             Hyperslabs.        (line  3249)
+                                                            (line 10789)
+* 'NC_CHAR':                             Hyperslabs.        (line  3252)
 * 'NC_CHAR' <1>:                         ncbo netCDF Binary Operator.
-                                                            (line  8797)
+                                                            (line  9357)
 * 'NC_CHAR' <2>:                         ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
-* 'NC_DISKLESS':                         RAM disks.         (line  4543)
+                                                            (line 10789)
+* 'NC_DISKLESS':                         RAM disks.         (line  5079)
 * 'NC_DOUBLE':                           Intrinsic mathematical methods.
-                                                            (line  8240)
+                                                            (line  8796)
 * 'NC_DOUBLE' <1>:                       ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'NC_FLOAT':                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'NC_FORMAT_DAP2':                      Determining File Format.
-                                                            (line  2213)
+                                                            (line  2216)
 * 'NC_FORMAT_DAP4':                      Determining File Format.
-                                                            (line  2213)
+                                                            (line  2216)
 * 'NC_FORMAT_NC3':                       Determining File Format.
-                                                            (line  2213)
+                                                            (line  2216)
 * 'NC_FORMAT_NC_HDF4':                   Determining File Format.
-                                                            (line  2213)
+                                                            (line  2216)
 * 'NC_FORMAT_NC_HDF5':                   Determining File Format.
-                                                            (line  2213)
+                                                            (line  2216)
 * 'NC_FORMAT_PNETCDF':                   Determining File Format.
-                                                            (line  2213)
+                                                            (line  2216)
 * 'NC_INT':                              ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'NC_INT64':                            netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   641)
+                                                            (line   642)
 * 'NC_INT64' <1>:                        ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'NC_SHORT':                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'NC_UBYTE':                            netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   641)
+                                                            (line   642)
 * 'NC_UBYTE' <1>:                        ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'NC_UINT':                             netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   641)
+                                                            (line   642)
 * 'NC_UINT' <1>:                         ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'NC_UINT64':                           netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   641)
+                                                            (line   642)
 * 'NC_UINT64' <1>:                       ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'NC_USHORT':                           netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   641)
+                                                            (line   642)
 * 'NC_USHORT' <1>:                       ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
+                                                            (line 10789)
 * 'nc__enddef()':                        Metadata Optimization.
-                                                            (line  1524)
+                                                            (line  1527)
 * ndims():                               Methods and functions.
-                                                            (line  6531)
+                                                            (line  7086)
 * NEARBYINT:                             Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * nearest integer function (exact):      Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * nearest integer function (inexact):    Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * NEC:                                   Compatability.     (line   389)
 * Neil Davis:                            Automatic type conversion.
-                                                            (line  5012)
+                                                            (line  5553)
 * nesting:                               Syntax of ncap2 statements.
-                                                            (line  5763)
-* netCDF:                                Availability.      (line   335)
+                                                            (line  6308)
+* netCDF:                                Availability.      (line   336)
 * netCDF2:                               netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   590)
+                                                            (line   591)
 * netCDF2 <1>:                           File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * 'NETCDF2_ONLY':                        netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   611)
+                                                            (line   612)
 * netCDF3:                               netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   590)
+                                                            (line   591)
 * netCDF3 <1>:                           File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * netCDF3 classic file format:           Determining File Format.
-                                                            (line  2204)
+                                                            (line  2207)
 * netCDF4:                               netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   616)
+                                                            (line   617)
 * netCDF4 <1>:                           File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * netCDF4 <2>:                           Multiple Record Dimensions.
-                                                            (line  3981)
+                                                            (line  3984)
 * netCDF4 classic file format:           Determining File Format.
-                                                            (line  2204)
+                                                            (line  2207)
 * netCDF4 file format:                   Determining File Format.
-                                                            (line  2204)
+                                                            (line  2207)
 * 'NETCDF4' files:                       File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * 'NETCDF4_CLASSIC' files:               File Formats and Conversion.
-                                                            (line  2118)
+                                                            (line  2121)
 * 'NETCDF4_ROOT':                        netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   764)
-* Nick Bower:                            Contributors.      (line 11196)
+                                                            (line   765)
+* Nick Bower:                            Contributors.      (line 11757)
 * 'NINTAP':                              Specifying Input Files.
-                                                            (line  1684)
+                                                            (line  1687)
 * 'NINTAP' <1>:                          ncra netCDF Record Averager.
-                                                            (line 10537)
+                                                            (line 11098)
 * 'NINTAP' <2>:                          ncrcat netCDF Record Concatenator.
-                                                            (line 10615)
-* non-coordinate grid properties:        CF Conventions.    (line  5519)
-* non-rectangular grids:                 Irregular grids.   (line  7053)
-* non-standard grids:                    Irregular grids.   (line  7053)
+                                                            (line 11176)
+* non-coordinate grid properties:        CF Conventions.    (line  6064)
+* non-rectangular grids:                 Irregular grids.   (line  7608)
+* non-standard grids:                    Irregular grids.   (line  7608)
 * normalization:                         Normalization and Integration.
-                                                            (line 10987)
+                                                            (line 11548)
 * North American Regional Reanalysis (NARR): Where statement.
-                                                            (line  6714)
+                                                            (line  7269)
 * Not-a-Number:                          ncatted netCDF Attribute Editor.
-                                                            (line  8592)
+                                                            (line  9151)
 * 'NO_NETCDF_2':                         netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   600)
+                                                            (line   601)
 * NRA:                                   Proposals for Institutional Funding.
-                                                            (line 11248)
-* 'nrnet':                               Remote storage.    (line  1864)
+                                                            (line 11809)
+* 'nrnet':                               Remote storage.    (line  1867)
+* NSD:                                   Compression.       (line  4485)
 * NSF:                                   Proposals for Institutional Funding.
-                                                            (line 11241)
+                                                            (line 11802)
 * NSF <1>:                               Proposals for Institutional Funding.
-                                                            (line 11241)
+                                                            (line 11802)
 * NT (Microsoft operating system):       Windows Operating System.
-                                                            (line   488)
+                                                            (line   489)
 * NUL:                                   ncatted netCDF Attribute Editor.
-                                                            (line  8570)
+                                                            (line  9129)
 * 'NUL':                                 ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10266)
+                                                            (line 10827)
 * NUL-termination:                       ncatted netCDF Attribute Editor.
-                                                            (line  8570)
+                                                            (line  9129)
 * null operation:                        ncflint netCDF File Interpolator.
-                                                            (line  9382)
-* number literals 'ncap2':               Number literals.   (line  6242)
+                                                            (line  9942)
+* number literals 'ncap2':               Number literals.   (line  6791)
+* Number of Significant Digits:          Compression.       (line  4485)
 * 'number_miss()':                       Missing values ncap2.
-                                                            (line  6438)
+                                                            (line  6987)
+* 'number_of_significant_digits':        Compression.       (line  4652)
 * 'numerator':                           Normalization and Integration.
-                                                            (line 10987)
-* NVODS:                                 OPeNDAP.           (line  2040)
+                                                            (line 11548)
+* NVODS:                                 OPeNDAP.           (line  2043)
 * 'nxt_lsr':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10228)
-* oceanography:                          OPeNDAP.           (line  1938)
+                                                            (line 10789)
+* oceanography:                          OPeNDAP.           (line  1941)
 * octal dump:                            Determining File Format.
-                                                            (line  2247)
+                                                            (line  2250)
 * 'od':                                  Determining File Format.
-                                                            (line  2247)
-* 'OMP_NUM_THREADS':                     OpenMP Threading.  (line  1573)
-* on-line documentation:                 Availability.      (line   315)
-* open source:                           Foreword.          (line   227)
-* open source <1>:                       OPeNDAP.           (line  2040)
+                                                            (line  2250)
+* 'OMP_NUM_THREADS':                     OpenMP Threading.  (line  1576)
+* on-line documentation:                 Availability.      (line   316)
+* open source:                           Foreword.          (line   228)
+* open source <1>:                       OPeNDAP.           (line  2043)
 * Open-source Project for a Network Data Access Protocol: OPeNDAP.
-                                                            (line  1938)
-* OPeNDAP.:                              OPeNDAP.           (line  1938)
+                                                            (line  1941)
+* OPeNDAP.:                              OPeNDAP.           (line  1941)
 * OpenMP:                                Memory Requirements.
-                                                            (line  1358)
+                                                            (line  1361)
 * OpenMP <1>:                            Single and Multi-file Operators.
-                                                            (line  1433)
-* OpenMP <2>:                            OpenMP Threading.  (line  1547)
-* operation types:                       Operation Types.   (line  4767)
+                                                            (line  1436)
+* OpenMP <2>:                            OpenMP Threading.  (line  1550)
+* operation types:                       Operation Types.   (line  5303)
 * operation types <1>:                   ncra netCDF Record Averager.
-                                                            (line 10530)
+                                                            (line 11091)
 * operation types <2>:                   ncwa netCDF Weighted Averager.
-                                                            (line 10940)
-* operator speed:                        Libraries.         (line   566)
+                                                            (line 11501)
+* operator speed:                        Libraries.         (line   567)
 * operator speed <1>:                    Temporary Output Files.
-                                                            (line   956)
-* operator speed <2>:                    Performance.       (line  1479)
+                                                            (line   959)
+* operator speed <2>:                    Performance.       (line  1482)
 * operator speed <3>:                    Metadata Optimization.
-                                                            (line  1524)
-* operator speed <4>:                    Missing Values.    (line  4078)
+                                                            (line  1527)
+* operator speed <4>:                    Missing Values.    (line  4081)
 * operator speed <5>:                    ncatted netCDF Attribute Editor.
-                                                            (line  8393)
+                                                            (line  8949)
 * operator speed <6>:                    ncrename netCDF Renamer.
-                                                            (line 10709)
-* operators:                             Summary.           (line   290)
+                                                            (line 11270)
+* operators:                             Summary.           (line   291)
 * OptIPuter:                             Proposals for Institutional Funding.
-                                                            (line 11241)
-* Orion Powlawski:                       Contributors.      (line 11198)
-* 'ORO':                                 CF Conventions.    (line  5488)
+                                                            (line 11802)
+* Orion Powlawski:                       Contributors.      (line 11759)
+* 'ORO':                                 CF Conventions.    (line  6033)
 * 'ORO' <1>:                             Normalization and Integration.
-                                                            (line 11061)
+                                                            (line 11622)
 * orphan dimensions:                     ncks netCDF Kitchen Sink.
-                                                            (line  9767)
+                                                            (line 10327)
 * OS:                                    Compatability.     (line   389)
 * output file:                           Large Numbers of Files.
-                                                            (line  1260)
+                                                            (line  1263)
 * output file <1>:                       Specifying Output Files.
-                                                            (line  1792)
-* OUTPUT-PATH:                           Remote storage.    (line  1887)
-* overview:                              Performance.       (line  1464)
+                                                            (line  1795)
+* OUTPUT-PATH:                           Remote storage.    (line  1890)
+* overview:                              Performance.       (line  1467)
 * overwriting files:                     Temporary Output Files.
-                                                            (line  1004)
-* overwriting files <1>:                 Batch Mode.        (line  5409)
+                                                            (line  1007)
+* overwriting files <1>:                 Batch Mode.        (line  5954)
 * pack():                                Methods and functions.
-                                                            (line  6513)
-* 'pack(x)':                             Packed data.       (line  4630)
-* packing:                               OPeNDAP.           (line  2002)
-* packing <1>:                           Chunking.          (line  4171)
-* packing <2>:                           Packed data.       (line  4630)
+                                                            (line  7068)
+* 'pack(x)':                             Packed data.       (line  5166)
+* packing:                               OPeNDAP.           (line  2005)
+* packing <1>:                           Chunking.          (line  4174)
+* packing <2>:                           Packed data.       (line  5166)
 * packing <3>:                           ncecat netCDF Ensemble Concatenator.
-                                                            (line  9205)
+                                                            (line  9765)
 * packing <4>:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
+                                                            (line 10691)
 * packing <5>:                           ncrcat netCDF Record Concatenator.
-                                                            (line 10596)
+                                                            (line 11157)
 * packing map:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10222)
+                                                            (line 10783)
 * packing policy:                        ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10147)
+                                                            (line 10708)
 * pack_byte():                           Methods and functions.
-                                                            (line  6516)
+                                                            (line  7071)
 * pack_int():                            Methods and functions.
-                                                            (line  6520)
+                                                            (line  7075)
 * pack_short():                          Methods and functions.
-                                                            (line  6518)
-* papers:                                Performance.       (line  1464)
-* 'parallel':                            Parallel.          (line 12424)
-* parallelism:                           OpenMP Threading.  (line  1547)
+                                                            (line  7073)
+* papers:                                Performance.       (line  1467)
+* 'parallel':                            Parallel.          (line 12985)
+* parallelism:                           OpenMP Threading.  (line  1550)
 * parallelism <1>:                       Proposals for Institutional Funding.
-                                                            (line 11243)
+                                                            (line 11804)
 * parser:                                ncap2 netCDF Arithmetic Processor.
-                                                            (line  5683)
+                                                            (line  6228)
 * pasting variables:                     Appending Variables.
-                                                            (line  1029)
-* 'pathcc':                              Compatability.     (line   407)
-* 'pathCC':                              Compatability.     (line   407)
+                                                            (line  1032)
+* 'pathcc':                              Compatability.     (line   408)
+* 'pathCC':                              Compatability.     (line   408)
 * PathScale:                             Compatability.     (line   389)
-* Patrice Dumas:                         Contributors.      (line 11198)
-* Patrick Kursawe:                       Contributors.      (line 11200)
+* Patrice Dumas:                         Contributors.      (line 11759)
+* Patrick Kursawe:                       Contributors.      (line 11761)
 * pattern matching:                      Large Numbers of Files.
-                                                            (line  1242)
-* pattern matching <1>:                  Subsetting Files.  (line  2565)
+                                                            (line  1245)
+* pattern matching <1>:                  Subsetting Files.  (line  2568)
 * pattern matching <2>:                  ncatted netCDF Attribute Editor.
-                                                            (line  8422)
+                                                            (line  8980)
 * pattern matching <3>:                  ncatted netCDF Attribute Editor.
-                                                            (line  8629)
-* PayPal:                                Contributing.      (line 11123)
+                                                            (line  9188)
+* PayPal:                                Contributing.      (line 11684)
 * PCK_MAP:                               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10222)
+                                                            (line 10783)
 * PCK_PLC:                               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10155)
+                                                            (line 10716)
 * peak memory usage:                     Memory Requirements.
-                                                            (line  1351)
-* peak memory usage <1>:                 RAM disks.         (line  4543)
-* Pedro Vicente:                         Contributors.      (line 11172)
-* performance:                           Libraries.         (line   566)
+                                                            (line  1354)
+* peak memory usage <1>:                 RAM disks.         (line  5079)
+* Pedro Vicente:                         Contributors.      (line 11733)
+* performance:                           Libraries.         (line   567)
 * performance <1>:                       Temporary Output Files.
-                                                            (line   956)
-* performance <2>:                       Performance.       (line  1470)
-* performance <3>:                       Performance.       (line  1479)
+                                                            (line   959)
+* performance <2>:                       Performance.       (line  1473)
+* performance <3>:                       Performance.       (line  1482)
 * performance <4>:                       Metadata Optimization.
-                                                            (line  1524)
-* performance <5>:                       Missing Values.    (line  4078)
+                                                            (line  1527)
+* performance <5>:                       Missing Values.    (line  4081)
 * performance <6>:                       ncatted netCDF Attribute Editor.
-                                                            (line  8393)
+                                                            (line  8949)
 * performance <7>:                       ncrename netCDF Renamer.
-                                                            (line 10709)
-* Perl:                                  Philosophy.        (line   913)
+                                                            (line 11270)
+* Perl:                                  Philosophy.        (line   916)
 * Perl <1>:                              Large Numbers of Files.
-                                                            (line  1273)
+                                                            (line  1276)
 * Perl <2>:                              ncatted netCDF Attribute Editor.
-                                                            (line  8544)
+                                                            (line  9103)
 * permute dimensions:                    ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
+                                                            (line 10691)
 * permute():                             Arrays and hyperslabs.
-                                                            (line  6165)
-* Peter Campbell:                        Contributors.      (line 11194)
-* 'pgcc':                                Compatability.     (line   407)
-* 'pgCC':                                Compatability.     (line   407)
+                                                            (line  6714)
+* Peter Campbell:                        Contributors.      (line 11755)
+* 'pgcc':                                Compatability.     (line   408)
+* 'pgCC':                                Compatability.     (line   408)
 * PGI:                                   Compatability.     (line   389)
-* philosophy:                            Philosophy.        (line   904)
+* philosophy:                            Philosophy.        (line   907)
 * pipes:                                 Large Numbers of Files.
-                                                            (line  1255)
-* 'plc_all':                             Chunking.          (line  4186)
-* 'plc_g2d':                             Chunking.          (line  4186)
-* 'plc_g3d':                             Chunking.          (line  4186)
-* 'plc_r1d':                             Chunking.          (line  4186)
-* 'plc_xpl':                             Chunking.          (line  4186)
-* 'plc_xst':                             Chunking.          (line  4186)
+                                                            (line  1258)
+* 'plc_all':                             Chunking.          (line  4189)
+* 'plc_g2d':                             Chunking.          (line  4189)
+* 'plc_g3d':                             Chunking.          (line  4189)
+* 'plc_r1d':                             Chunking.          (line  4189)
+* 'plc_xpl':                             Chunking.          (line  4189)
+* 'plc_xst':                             Chunking.          (line  4189)
 * portability:                           Compatability.     (line   389)
 * positional arguments:                  Specifying Output Files.
-                                                            (line  1792)
+                                                            (line  1795)
 * POSIX:                                 Command Line Options.
-                                                            (line  1612)
-* POSIX <1>:                             Subsetting Files.  (line  2583)
+                                                            (line  1615)
+* POSIX <1>:                             Subsetting Files.  (line  2586)
 * POW:                                   Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * power:                                 Intrinsic mathematical methods.
-                                                            (line  8134)
+                                                            (line  8690)
 * power function:                        Intrinsic mathematical methods.
-                                                            (line  8137)
-* 'prd':                                 Chunking.          (line  4245)
+                                                            (line  8693)
+* PPC:                                   Compression.       (line  4469)
+* 'prd':                                 Chunking.          (line  4258)
 * precision:                             Intrinsic mathematical methods.
-                                                            (line  8240)
+                                                            (line  8796)
 * preprocessor tokens:                   Windows Operating System.
-                                                            (line   503)
-* presentations:                         Availability.      (line   325)
-* print() 'ncap2':                       print statement.   (line  6359)
-* 'printf':                              Compatability.     (line   420)
+                                                            (line   504)
+* presentations:                         Availability.      (line   326)
+* print() 'ncap2':                       print statement.   (line  6908)
+* 'printf':                              Compatability.     (line   421)
 * 'printf()':                            ncatted netCDF Attribute Editor.
-                                                            (line  8546)
+                                                            (line  9105)
 * 'printf()' <1>:                        ncks netCDF Kitchen Sink.
-                                                            (line  9778)
+                                                            (line 10338)
 * 'printf()' <2>:                        Filters for 'ncks'.
-                                                            (line 10016)
+                                                            (line 10576)
 * printing files contents:               ncks netCDF Kitchen Sink.
-                                                            (line  9411)
+                                                            (line  9971)
 * printing variables:                    ncks netCDF Kitchen Sink.
-                                                            (line  9411)
+                                                            (line  9971)
 * Processor:                             ncra netCDF Record Averager.
-                                                            (line 10537)
+                                                            (line 11098)
 * Processor <1>:                         ncrcat netCDF Record Concatenator.
-                                                            (line 10615)
+                                                            (line 11176)
 * Processor, CCM:                        Specifying Input Files.
-                                                            (line  1684)
-* promotion:                             Type Conversion.   (line  4920)
+                                                            (line  1687)
+* promotion:                             Type Conversion.   (line  5461)
 * promotion <1>:                         Promoting Single-precision to Double.
-                                                            (line  5056)
+                                                            (line  5597)
 * promotion <2>:                         Intrinsic mathematical methods.
-                                                            (line  8207)
+                                                            (line  8763)
 * proposals:                             Proposals for Institutional Funding.
-                                                            (line 11241)
-* pseudonym:                             Symbolic Links.    (line   539)
-* publications:                          Availability.      (line   325)
+                                                            (line 11802)
+* pseudonym:                             Symbolic Links.    (line   540)
+* publications:                          Availability.      (line   326)
 * QLogic:                                Compatability.     (line   389)
 * Qt:                                    Windows Operating System.
-                                                            (line   495)
+                                                            (line   496)
 * quadruple-precision:                   Intrinsic mathematical methods.
-                                                            (line  8240)
+                                                            (line  8796)
+* quantization:                          Compression.       (line  4427)
+* quantization <1>:                      Compression.       (line  4469)
 * quench:                                ncks netCDF Kitchen Sink.
-                                                            (line  9759)
-* Quick Start:                           Quick Start.       (line 11261)
-* quotes:                                Subsetting Files.  (line  2640)
-* quotes <1>:                            Examples ncap2.    (line  8089)
+                                                            (line 10319)
+* Quick Start:                           Quick Start.       (line 11822)
+* quotes:                                Subsetting Files.  (line  2643)
+* quotes <1>:                            Examples ncap2.    (line  8645)
 * quotes <2>:                            ncbo netCDF Binary Operator.
-                                                            (line  8723)
+                                                            (line  9283)
 * quotes <3>:                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10390)
-* 'r1d':                                 Chunking.          (line  4186)
+                                                            (line 10951)
+* 'r1d':                                 Chunking.          (line  4189)
 * RAG:                                   ncecat netCDF Ensemble Concatenator.
-                                                            (line  9122)
+                                                            (line  9682)
 * RAM:                                   Memory Requirements.
-                                                            (line  1351)
-* RAM <1>:                               RAM disks.         (line  4543)
+                                                            (line  1354)
+* RAM <1>:                               RAM disks.         (line  5079)
 * RAM disks:                             Temporary Output Files.
-                                                            (line   962)
-* RAM disks <1>:                         RAM disks.         (line  4543)
+                                                            (line   965)
+* RAM disks <1>:                         RAM disks.         (line  5079)
 * RAM files:                             Temporary Output Files.
-                                                            (line   962)
-* RAM files <1>:                         RAM disks.         (line  4543)
-* RAM variables:                         RAM disks.         (line  4583)
+                                                            (line   965)
+* RAM files <1>:                         RAM disks.         (line  5079)
+* RAM variables:                         RAM disks.         (line  5119)
 * RAM variables <1>:                     Methods and functions.
-                                                            (line  6619)
-* ram_delete():                          RAM variables.     (line  6631)
-* ram_write():                           RAM variables.     (line  6631)
+                                                            (line  7174)
+* ram_delete():                          RAM variables.     (line  7186)
+* ram_write():                           RAM variables.     (line  7186)
 * random walk:                           Promoting Single-precision to Double.
-                                                            (line  5273)
-* rank:                                  Expressions.       (line  5804)
+                                                            (line  5814)
+* rank:                                  Expressions.       (line  6349)
 * rank <1>:                              ncbo netCDF Binary Operator.
-                                                            (line  8764)
+                                                            (line  9324)
 * rank <2>:                              ncbo netCDF Binary Operator.
-                                                            (line  8777)
+                                                            (line  9337)
 * rank <3>:                              ncbo netCDF Binary Operator.
-                                                            (line  8828)
+                                                            (line  9388)
 * rank <4>:                              ncwa netCDF Weighted Averager.
-                                                            (line 10905)
+                                                            (line 11466)
 * 'rcp':                                 Windows Operating System.
-                                                            (line   509)
-* 'rcp' <1>:                             Remote storage.    (line  1824)
-* RCS:                                   Operator Version.  (line  5651)
-* 'rd1':                                 Chunking.          (line  4245)
+                                                            (line   510)
+* 'rcp' <1>:                             Remote storage.    (line  1827)
+* RCS:                                   Operator Version.  (line  6196)
+* 'rd1':                                 Chunking.          (line  4258)
 * re-dimension:                          ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
+                                                            (line 10691)
 * re-order dimensions:                   ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
+                                                            (line 10691)
 * record aggregation:                    ncecat netCDF Ensemble Concatenator.
-                                                            (line  9122)
-* record append:                         Record Appending.  (line  3343)
+                                                            (line  9682)
+* record append:                         Record Appending.  (line  3346)
 * record average:                        ncra netCDF Record Averager.
-                                                            (line 10497)
+                                                            (line 11058)
 * record concatenation:                  ncrcat netCDF Record Concatenator.
-                                                            (line 10568)
+                                                            (line 11129)
 * record dimension:                      Appending Variables.
-                                                            (line  1032)
+                                                            (line  1035)
 * record dimension <1>:                  C and Fortran Index Conventions.
-                                                            (line  3144)
-* record dimension <2>:                  Chunking.          (line  4382)
+                                                            (line  3147)
+* record dimension <2>:                  Chunking.          (line  4404)
 * record dimension <3>:                  nces netCDF Ensemble Statistics.
-                                                            (line  8977)
+                                                            (line  9537)
 * record dimension <4>:                  ncecat netCDF Ensemble Concatenator.
-                                                            (line  9132)
+                                                            (line  9692)
 * record dimension <5>:                  ncecat netCDF Ensemble Concatenator.
-                                                            (line  9136)
+                                                            (line  9696)
 * record dimension <6>:                  ncecat netCDF Ensemble Concatenator.
-                                                            (line  9242)
+                                                            (line  9802)
 * record dimension <7>:                  ncks netCDF Kitchen Sink.
-                                                            (line  9545)
+                                                            (line 10105)
 * record dimension <8>:                  ncks netCDF Kitchen Sink.
-                                                            (line  9624)
+                                                            (line 10184)
 * record dimension <9>:                  ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10294)
+                                                            (line 10855)
 * record dimension <10>:                 ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10296)
+                                                            (line 10857)
 * record dimension <11>:                 ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10445)
+                                                            (line 11006)
 * record dimension <12>:                 ncra netCDF Record Averager.
-                                                            (line 10497)
+                                                            (line 11058)
 * record dimension <13>:                 ncra netCDF Record Averager.
-                                                            (line 10510)
+                                                            (line 11071)
 * record dimension <14>:                 ncrcat netCDF Record Concatenator.
-                                                            (line 10581)
+                                                            (line 11142)
 * record variable:                       C and Fortran Index Conventions.
-                                                            (line  3139)
+                                                            (line  3142)
 * record variable <1>:                   ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10298)
-* rectangular grids:                     Irregular grids.   (line  7053)
-* recursion:                             Subsetting Files.  (line  2464)
-* recursive:                             Subsetting Files.  (line  2464)
-* 'regex':                               Subsetting Files.  (line  2583)
+                                                            (line 10859)
+* rectangular grids:                     Irregular grids.   (line  7608)
+* recursion:                             Subsetting Files.  (line  2467)
+* recursive:                             Subsetting Files.  (line  2467)
+* 'regex':                               Subsetting Files.  (line  2586)
 * regression:                            Annual Average over Regions.
-                                                            (line 11737)
+                                                            (line 12298)
 * regressions archive:                   Help Requests and Bug Reports.
-                                                            (line   892)
-* regrid:                                Regrid MODIS Data. (line 12192)
+                                                            (line   895)
+* regrid:                                Regrid MODIS Data. (line 12753)
 * regular expressions:                   Large Numbers of Files.
-                                                            (line  1242)
+                                                            (line  1245)
 * regular expressions <1>:               Specifying Input Files.
-                                                            (line  1684)
-* regular expressions <2>:               Subsetting Files.  (line  2565)
-* regular expressions <3>:               Examples ncap2.    (line  8089)
+                                                            (line  1687)
+* regular expressions <2>:               Subsetting Files.  (line  2568)
+* regular expressions <3>:               Examples ncap2.    (line  8645)
 * regular expressions <4>:               ncatted netCDF Attribute Editor.
-                                                            (line  8422)
+                                                            (line  8980)
 * regular expressions <5>:               ncatted netCDF Attribute Editor.
-                                                            (line  8629)
-* 'remap':                               Sort methods.      (line  6808)
-* Remik Ziemlinski:                      Contributors.      (line 11194)
+                                                            (line  9188)
+* 'remap':                               Sort methods.      (line  7363)
+* Remik Ziemlinski:                      Contributors.      (line 11755)
 * remote files:                          Windows Operating System.
-                                                            (line   509)
-* remote files <1>:                      Remote storage.    (line  1824)
-* rename groups:                         Moving Groups.     (line  2823)
+                                                            (line   510)
+* remote files <1>:                      Remote storage.    (line  1827)
+* rename groups:                         Moving Groups.     (line  2826)
 * renaming attributes:                   ncrename netCDF Renamer.
-                                                            (line 10650)
-* renaming attributes <1>:               Regrid MODIS Data. (line 12192)
+                                                            (line 11211)
+* renaming attributes <1>:               Regrid MODIS Data. (line 12753)
 * renaming dimensions:                   ncrename netCDF Renamer.
-                                                            (line 10650)
-* renaming dimensions <1>:               Regrid MODIS Data. (line 12192)
+                                                            (line 11211)
+* renaming dimensions <1>:               Regrid MODIS Data. (line 12753)
 * renaming groups:                       ncrename netCDF Renamer.
-                                                            (line 10650)
+                                                            (line 11211)
 * renaming variables:                    ncrename netCDF Renamer.
-                                                            (line 10650)
+                                                            (line 11211)
 * renaming variables <1>:                Annual Average over Regions.
-                                                            (line 11737)
-* renaming variables <2>:                Regrid MODIS Data. (line 12192)
+                                                            (line 12298)
+* renaming variables <2>:                Regrid MODIS Data. (line 12753)
 * reporting bugs:                        Help Requests and Bug Reports.
-                                                            (line   822)
+                                                            (line   825)
 * reshape variables:                     ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
-* 'restrict':                            Compatability.     (line   444)
+                                                            (line 10691)
+* 'restrict':                            Compatability.     (line   445)
 * reverse data:                          ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10420)
+                                                            (line 10981)
 * reverse dimensions:                    ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
+                                                            (line 10691)
 * reverse dimensions <1>:                ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10377)
+                                                            (line 10938)
 * reverse dimensions <2>:                ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10399)
+                                                            (line 10960)
 * reverse():                             Arrays and hyperslabs.
-                                                            (line  6158)
-* 'rew':                                 Chunking.          (line  4245)
-* Rich Signell:                          Contributors.      (line 11194)
+                                                            (line  6707)
+* 'rew':                                 Chunking.          (line  4258)
+* Rich Signell:                          Contributors.      (line 11755)
 * RINT:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
-* 'rms':                                 Operation Types.   (line  4767)
-* 'rmssdn':                              Operation Types.   (line  4767)
+                                                            (line  8693)
+* 'rint()':                              Compression.       (line  4554)
+* 'rms':                                 Operation Types.   (line  5303)
+* 'rmssdn':                              Operation Types.   (line  5303)
 * rmssdn():                              Methods and functions.
-                                                            (line  6501)
-* root-mean-square:                      Operation Types.   (line  4767)
-* Rorik Peterson:                        Contributors.      (line 11163)
+                                                            (line  7056)
+* root-mean-square:                      Operation Types.   (line  5303)
+* Rorik Peterson:                        Contributors.      (line 11724)
 * ROUND:                                 Intrinsic mathematical methods.
-                                                            (line  8137)
-* rounding:                              Promoting Single-precision to Double.
-                                                            (line  5273)
+                                                            (line  8693)
+* rounding:                              Compression.       (line  4427)
+* rounding <1>:                          Promoting Single-precision to Double.
+                                                            (line  5814)
 * rounding functions:                    Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * RPM:                                   netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   759)
+                                                            (line   760)
 * running average:                       ncra netCDF Record Averager.
-                                                            (line 10497)
-* Russ Rew:                              Contributors.      (line 11142)
-* Russ Rew <1>:                          Contributors.      (line 11174)
+                                                            (line 11058)
+* Russ Rew:                              Contributors.      (line 11703)
+* Russ Rew <1>:                          Contributors.      (line 11735)
 * safeguards:                            Temporary Output Files.
-                                                            (line   941)
+                                                            (line   944)
 * safeguards <1>:                        ncrename netCDF Renamer.
-                                                            (line 10694)
-* 'scale_factor':                        Packed data.       (line  4630)
+                                                            (line 11255)
+* 'scale_factor':                        Packed data.       (line  5166)
 * 'scale_factor' <1>:                    ncecat netCDF Ensemble Concatenator.
-                                                            (line  9205)
+                                                            (line  9765)
 * 'scale_factor' <2>:                    ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10148)
+                                                            (line 10709)
 * 'scale_factor' <3>:                    ncrcat netCDF Record Concatenator.
-                                                            (line 10596)
-* SCALE_FORMAT:                          Performance.       (line  1487)
-* scaling:                               Performance.       (line  1470)
+                                                            (line 11157)
+* SCALE_FORMAT:                          Performance.       (line  1490)
+* scaling:                               Performance.       (line  1473)
 * scaling <1>:                           ncflint netCDF File Interpolator.
-                                                            (line  9385)
+                                                            (line  9945)
 * Scientific Data Operators:             Proposals for Institutional Funding.
-                                                            (line 11241)
-* 'scl':                                 Chunking.          (line  4245)
-* Scott Capps:                           Contributors.      (line 11192)
+                                                            (line 11802)
+* 'scl':                                 Chunking.          (line  4258)
+* Scott Capps:                           Contributors.      (line 11753)
 * 'scp':                                 Windows Operating System.
-                                                            (line   509)
-* 'scp' <1>:                             Remote storage.    (line  1824)
+                                                            (line   510)
+* 'scp' <1>:                             Remote storage.    (line  1827)
 * script file:                           ncap2 netCDF Arithmetic Processor.
-                                                            (line  5701)
+                                                            (line  6246)
 * SDO:                                   Proposals for Institutional Funding.
-                                                            (line 11241)
+                                                            (line 11802)
 * seasonal average:                      Monthly data in one file.
-                                                            (line 11305)
-* security:                              MD5 digests.       (line  4442)
+                                                            (line 11866)
+* security:                              MD5 digests.       (line  4978)
 * SEIII:                                 Proposals for Institutional Funding.
-                                                            (line 11241)
+                                                            (line 11802)
 * semi-colon:                            Syntax of ncap2 statements.
-                                                            (line  5758)
+                                                            (line  6303)
 * separator:                             ncks netCDF Kitchen Sink.
-                                                            (line  9834)
-* server:                                Large Datasets.    (line  1321)
-* server <1>:                            OPeNDAP.           (line  1938)
+                                                            (line 10394)
+* server:                                Large Datasets.    (line  1324)
+* server <1>:                            OPeNDAP.           (line  1941)
 * server <2>:                            Retaining Retrieved Files.
-                                                            (line  2098)
+                                                            (line  2101)
 * server <3>:                            Retaining Retrieved Files.
-                                                            (line  2106)
+                                                            (line  2109)
 * Server-Side Distributed Data Reduction & Analysis: Proposals for Institutional Funding.
-                                                            (line 11241)
-* server-side processing:                OPeNDAP.           (line  2064)
+                                                            (line 11802)
+* server-side processing:                OPeNDAP.           (line  2067)
 * server-side processing <1>:            Proposals for Institutional Funding.
-                                                            (line 11241)
+                                                            (line 11802)
 * 'set_miss()':                          Missing values ncap2.
-                                                            (line  6416)
+                                                            (line  6965)
 * 'sftp':                                Windows Operating System.
-                                                            (line   509)
-* 'sftp' <1>:                            Remote storage.    (line  1824)
+                                                            (line   510)
+* 'sftp' <1>:                            Remote storage.    (line  1827)
 * SGI:                                   Compatability.     (line   389)
 * Sh shell:                              Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * shared memory machines:                Memory Requirements.
-                                                            (line  1358)
-* shared memory parallelism:             OpenMP Threading.  (line  1547)
+                                                            (line  1361)
+* shared memory parallelism:             OpenMP Threading.  (line  1550)
 * shell:                                 Large Numbers of Files.
-                                                            (line  1242)
-* shell <1>:                             Subsetting Files.  (line  2640)
-* shell <2>:                             UDUnits Support.   (line  3845)
-* shell <3>:                             Examples ncap2.    (line  8089)
+                                                            (line  1245)
+* shell <1>:                             Subsetting Files.  (line  2643)
+* shell <2>:                             UDUnits Support.   (line  3848)
+* shell <3>:                             Examples ncap2.    (line  8645)
 * shell <4>:                             ncbo netCDF Binary Operator.
-                                                            (line  8723)
+                                                            (line  9283)
 * shell <5>:                             Filters for 'ncks'.
-                                                            (line  9888)
-* SIGNEDNESS:                            Performance.       (line  1487)
+                                                            (line 10448)
+* SIGNEDNESS:                            Performance.       (line  1490)
+* significand:                           Compression.       (line  4538)
+* significand <1>:                       Compression.       (line  4554)
 * SIN:                                   Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * sine function:                         Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * single-precision:                      Intrinsic mathematical methods.
-                                                            (line  8240)
+                                                            (line  8796)
 * SINH:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * size():                                Methods and functions.
-                                                            (line  6529)
-* SLD (Swath-like Data):                 Where statement.   (line  6697)
-* SMP:                                   OpenMP Threading.  (line  1547)
-* 'sort':                                Sort methods.      (line  6808)
+                                                            (line  7084)
+* SLD (Swath-like Data):                 Where statement.   (line  7252)
+* SMP:                                   OpenMP Threading.  (line  1550)
+* 'sort':                                Sort methods.      (line  7363)
 * sort alphabetically:                   ncks netCDF Kitchen Sink.
-                                                            (line  9519)
+                                                            (line 10079)
 * sort alphabetically <1>:               Filters for 'ncks'.
-                                                            (line  9983)
-* source code:                           Availability.      (line   307)
+                                                            (line 10543)
+* source code:                           Availability.      (line   308)
 * spatial distribution:                  Global Distribution of Long-term Average.
-                                                            (line 11634)
+                                                            (line 12195)
 * special attributes:                    ncks netCDF Kitchen Sink.
-                                                            (line  9570)
+                                                            (line 10130)
 * special characters:                    ncatted netCDF Attribute Editor.
-                                                            (line  8561)
-* speed:                                 Libraries.         (line   566)
+                                                            (line  9120)
+* speed:                                 Libraries.         (line   567)
 * speed <1>:                             Temporary Output Files.
-                                                            (line   956)
-* speed <2>:                             Large Datasets.    (line  1334)
-* speed <3>:                             Performance.       (line  1479)
+                                                            (line   959)
+* speed <2>:                             Large Datasets.    (line  1337)
+* speed <3>:                             Performance.       (line  1482)
 * speed <4>:                             Metadata Optimization.
-                                                            (line  1524)
-* speed <5>:                             Missing Values.    (line  4078)
+                                                            (line  1527)
+* speed <5>:                             Missing Values.    (line  4081)
 * speed <6>:                             ncatted netCDF Attribute Editor.
-                                                            (line  8393)
+                                                            (line  8949)
 * speed <7>:                             ncrename netCDF Renamer.
-                                                            (line 10709)
-* 'sqravg':                              Operation Types.   (line  4767)
+                                                            (line 11270)
+* 'sqravg':                              Operation Types.   (line  5303)
 * sqravg():                              Methods and functions.
-                                                            (line  6491)
-* 'sqrt':                                Operation Types.   (line  4767)
+                                                            (line  7040)
+* 'sqrt':                                Operation Types.   (line  5303)
 * SQRT:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * square root function:                  Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * SSDDRA:                                Proposals for Institutional Funding.
-                                                            (line 11241)
+                                                            (line 11802)
 * SSH:                                   Windows Operating System.
-                                                            (line   509)
+                                                            (line   510)
 * SSH <1>:                               Retaining Retrieved Files.
-                                                            (line  2095)
+                                                            (line  2098)
 * sshort():                              Methods and functions.
-                                                            (line  6585)
-* standard deviation:                    Operation Types.   (line  4767)
-* standard deviation <1>:                Operation Types.   (line  4847)
+                                                            (line  7140)
+* standard deviation:                    Operation Types.   (line  5303)
+* standard deviation <1>:                Operation Types.   (line  5388)
 * standard deviation <2>:                Annual Average over Regions.
-                                                            (line 11737)
+                                                            (line 12298)
 * standard input:                        Large Numbers of Files.
-                                                            (line  1225)
+                                                            (line  1228)
 * standard input <1>:                    nces netCDF Ensemble Statistics.
-                                                            (line  9012)
+                                                            (line  9572)
 * standard input <2>:                    ncecat netCDF Ensemble Concatenator.
-                                                            (line  9178)
+                                                            (line  9738)
 * standard input <3>:                    ncra netCDF Record Averager.
-                                                            (line 10514)
+                                                            (line 11075)
 * standard input <4>:                    ncrcat netCDF Record Concatenator.
-                                                            (line 10584)
+                                                            (line 11145)
 * 'standard_name':                       Auxiliary Coordinates.
-                                                            (line  3664)
-* 'stat() system call':                  Buffer sizes.      (line  4512)
+                                                            (line  3667)
+* 'stat() system call':                  Buffer sizes.      (line  5048)
 * statement:                             Syntax of ncap2 statements.
-                                                            (line  5744)
-* static linking:                        Libraries.         (line   565)
+                                                            (line  6289)
+* static linking:                        Libraries.         (line   566)
 * 'stdin':                               Large Numbers of Files.
-                                                            (line  1225)
+                                                            (line  1228)
 * 'stdin' <1>:                           File List Attributes.
-                                                            (line  5457)
+                                                            (line  6002)
 * 'stdin' <2>:                           nces netCDF Ensemble Statistics.
-                                                            (line  9012)
+                                                            (line  9572)
 * 'stdin' <3>:                           ncecat netCDF Ensemble Concatenator.
-                                                            (line  9178)
+                                                            (line  9738)
 * 'stdin' <4>:                           ncra netCDF Record Averager.
-                                                            (line 10514)
+                                                            (line 11075)
 * 'stdin' <5>:                           ncrcat netCDF Record Concatenator.
-                                                            (line 10584)
-* Steve Emmerson:                        Contributors.      (line 11142)
-* stride:                                Hyperslabs.        (line  3219)
-* stride <1>:                            Stride.            (line  3282)
-* stride <2>:                            Multislabs.        (line  3509)
-* stride <3>:                            UDUnits Support.   (line  3836)
+                                                            (line 11145)
+* Steve Emmerson:                        Contributors.      (line 11703)
+* stride:                                Hyperslabs.        (line  3222)
+* stride <1>:                            Stride.            (line  3285)
+* stride <2>:                            Multislabs.        (line  3512)
+* stride <3>:                            UDUnits Support.   (line  3839)
 * stride <4>:                            ncra netCDF Record Averager.
-                                                            (line 10522)
+                                                            (line 11083)
 * stride <5>:                            ncra netCDF Record Averager.
-                                                            (line 10553)
+                                                            (line 11114)
 * stride <6>:                            ncrcat netCDF Record Concatenator.
-                                                            (line 10592)
+                                                            (line 11153)
 * stride <7>:                            ncrcat netCDF Record Concatenator.
-                                                            (line 10633)
+                                                            (line 11194)
 * strings:                               ncatted netCDF Attribute Editor.
-                                                            (line  8570)
-* Stu Muller:                            Contributors.      (line 11194)
-* stub:                                  Remote storage.    (line  1896)
-* sub-cycle:                             Subcycle.          (line  3394)
-* subcycle:                              Subcycle.          (line  3394)
-* subsetting:                            Subsetting Files.  (line  2407)
+                                                            (line  9129)
+* Stu Muller:                            Contributors.      (line 11755)
+* stub:                                  Remote storage.    (line  1899)
+* sub-cycle:                             Subcycle.          (line  3397)
+* subcycle:                              Subcycle.          (line  3397)
+* subsetting:                            Subsetting Files.  (line  2410)
 * subsetting <1>:                        Subsetting Coordinate Variables.
-                                                            (line  2665)
-* subsetting <2>:                        CF Conventions.    (line  5566)
+                                                            (line  2668)
+* subsetting <2>:                        CF Conventions.    (line  6111)
 * subsetting <3>:                        Filters for 'ncks'.
-                                                            (line  9989)
+                                                            (line 10549)
 * subsetting <4>:                        Filters for 'ncks'.
-                                                            (line 10080)
+                                                            (line 10640)
 * 'subtract':                            ncbo netCDF Binary Operator.
-                                                            (line  8693)
+                                                            (line  9253)
 * subtracting data:                      ncbo netCDF Binary Operator.
-                                                            (line  8675)
+                                                            (line  9235)
 * subtraction:                           Intrinsic mathematical methods.
-                                                            (line  8134)
+                                                            (line  8690)
 * subtraction <1>:                       ncbo netCDF Binary Operator.
-                                                            (line  8675)
-* summary:                               Summary.           (line   290)
+                                                            (line  9235)
+* summary:                               Summary.           (line   291)
 * Sun:                                   Compatability.     (line   389)
-* swap space:                            Large Datasets.    (line  1308)
+* swap space:                            Large Datasets.    (line  1311)
 * swap space <1>:                        Memory Requirements.
-                                                            (line  1351)
-* swap space <2>:                        RAM disks.         (line  4543)
-* Swath-like Data (SLD):                 Where statement.   (line  6697)
+                                                            (line  1354)
+* swap space <2>:                        RAM disks.         (line  5079)
+* Swath-like Data (SLD):                 Where statement.   (line  7252)
 * switches:                              Command Line Options.
-                                                            (line  1612)
-* symbolic links:                        Symbolic Links.    (line   529)
+                                                            (line  1615)
+* symbolic links:                        Symbolic Links.    (line   530)
 * symbolic links <1>:                    Statistics vs. Concatenation.
-                                                            (line  1085)
+                                                            (line  1088)
 * symbolic links <2>:                    Large Numbers of Files.
-                                                            (line  1267)
+                                                            (line  1270)
 * symbolic links <3>:                    ncbo netCDF Binary Operator.
-                                                            (line  8737)
+                                                            (line  9297)
 * symbolic links <4>:                    ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10216)
-* synchronous file access:               Remote storage.    (line  1824)
-* synonym:                               Symbolic Links.    (line   539)
+                                                            (line 10777)
+* synchronous file access:               Remote storage.    (line  1827)
+* synonym:                               Symbolic Links.    (line   540)
 * syntax:                                Syntax of ncap2 statements.
-                                                            (line  5744)
-* System calls:                          Buffer sizes.      (line  4512)
-* Takeshi Enomoto:                       Contributors.      (line 11204)
+                                                            (line  6289)
+* System calls:                          Buffer sizes.      (line  5048)
+* Takeshi Enomoto:                       Contributors.      (line 11765)
 * TAN:                                   Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * TANH:                                  Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * temporary files:                       Temporary Output Files.
-                                                            (line   941)
-* temporary files <1>:                   RAM disks.         (line  4623)
+                                                            (line   944)
+* temporary files <1>:                   RAM disks.         (line  5159)
 * temporary output files:                Temporary Output Files.
-                                                            (line   941)
-* temporary output files <1>:            RAM disks.         (line  4623)
+                                                            (line   944)
+* temporary output files <1>:            RAM disks.         (line  5159)
 * temporary output files <2>:            ncrename netCDF Renamer.
-                                                            (line 10694)
-* TeXinfo:                               Availability.      (line   315)
+                                                            (line 11255)
+* TeXinfo:                               Availability.      (line   316)
 * threads:                               Memory Requirements.
-                                                            (line  1358)
+                                                            (line  1361)
 * threads <1>:                           Single and Multi-file Operators.
-                                                            (line  1433)
-* threads <2>:                           OpenMP Threading.  (line  1547)
-* THR_NBR:                               OpenMP Threading.  (line  1573)
-* 'time':                                UDUnits Support.   (line  3827)
-* 'time' <1>:                            ARM Conventions.   (line  5620)
-* time-averaging:                        Examples ncap2.    (line  8112)
+                                                            (line  1436)
+* threads <2>:                           OpenMP Threading.  (line  1550)
+* THR_NBR:                               OpenMP Threading.  (line  1576)
+* 'time':                                UDUnits Support.   (line  3830)
+* 'time' <1>:                            ARM Conventions.   (line  6165)
+* time-averaging:                        Examples ncap2.    (line  8668)
 * time-averaging <1>:                    Daily data in one file.
-                                                            (line 11271)
+                                                            (line 11832)
 * time-averaging <2>:                    Daily data in one file.
-                                                            (line 11285)
+                                                            (line 11846)
 * time-averaging <3>:                    Monthly data in one file.
-                                                            (line 11305)
+                                                            (line 11866)
 * time-averaging <4>:                    Monthly data in one file.
-                                                            (line 11308)
+                                                            (line 11869)
 * time-averaging <5>:                    One time point one file.
-                                                            (line 11334)
+                                                            (line 11895)
 * time-averaging <6>:                    Global Distribution of Long-term Average.
-                                                            (line 11634)
+                                                            (line 12195)
 * time-averaging <7>:                    Annual Average over Regions.
-                                                            (line 11737)
-* time-averaging <8>:                    Monthly Cycle.     (line 12028)
-* timestamp:                             History Attribute. (line  5429)
-* 'time_offset':                         ARM Conventions.   (line  5620)
-* total:                                 Operation Types.   (line  4767)
+                                                            (line 12298)
+* time-averaging <8>:                    Monthly Cycle.     (line 12589)
+* timestamp:                             History Attribute. (line  5974)
+* 'time_offset':                         ARM Conventions.   (line  6165)
+* total:                                 Operation Types.   (line  5303)
 * transpose:                             C and Fortran Index Conventions.
-                                                            (line  3137)
+                                                            (line  3140)
 * transpose <1>:                         ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10308)
+                                                            (line 10869)
 * TREFHT:                                Promoting Single-precision to Double.
-                                                            (line  5207)
+                                                            (line  5748)
 * TRUNC:                                 Intrinsic mathematical methods.
-                                                            (line  8137)
+                                                            (line  8693)
 * 'trunc()':                             Automatic type conversion.
-                                                            (line  4999)
-* truncate (groups):                     Flattening Groups. (line  2733)
+                                                            (line  5540)
+* truncate (groups):                     Flattening Groups. (line  2736)
 * truncation function:                   Intrinsic mathematical methods.
-                                                            (line  8137)
-* truth condition:                       Mask condition.    (line 10958)
+                                                            (line  8693)
+* truth condition:                       Mask condition.    (line 11519)
 * truth condition <1>:                   Normalization and Integration.
-                                                            (line 11089)
-* 'ttl':                                 Operation Types.   (line  4767)
+                                                            (line 11650)
+* 'ttl':                                 Operation Types.   (line  5303)
 * ttl():                                 Methods and functions.
-                                                            (line  6503)
-* type conversion:                       Type Conversion.   (line  4914)
+                                                            (line  7058)
+* type conversion:                       Type Conversion.   (line  5455)
 * type():                                Methods and functions.
-                                                            (line  6533)
+                                                            (line  7088)
 * ubyte():                               Methods and functions.
-                                                            (line  6596)
-* UDUnits:                               Compatability.     (line   398)
-* UDUnits <1>:                           UDUnits Support.   (line  3774)
-* UDUnits <2>:                           CF Conventions.    (line  5488)
+                                                            (line  7151)
+* UDUnits:                               Compatability.     (line   399)
+* UDUnits <1>:                           UDUnits Support.   (line  3777)
+* UDUnits <2>:                           CF Conventions.    (line  6033)
 * uint():                                Methods and functions.
-                                                            (line  6600)
-* 'ulimit':                              Large Datasets.    (line  1321)
-* unary operations:                      Memory for ncap2.  (line  1440)
+                                                            (line  7155)
+* 'ulimit':                              Large Datasets.    (line  1324)
+* unary operations:                      Memory for ncap2.  (line  1443)
 * underlying file format:                Determining File Format.
-                                                            (line  2213)
-* UNICOS:                                Large Datasets.    (line  1321)
-* Unidata:                               Compatability.     (line   398)
+                                                            (line  2216)
+* UNICOS:                                Large Datasets.    (line  1324)
+* Unidata:                               Compatability.     (line   399)
 * Unidata <1>:                           netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   616)
-* Unidata <2>:                           UDUnits Support.   (line  3774)
-* union:                                 Subsetting Files.  (line  2407)
-* union <1>:                             Subsetting Files.  (line  2513)
+                                                            (line   617)
+* Unidata <2>:                           UDUnits Support.   (line  3777)
+* union:                                 Subsetting Files.  (line  2410)
+* union <1>:                             Subsetting Files.  (line  2516)
 * union of files:                        Appending Variables.
-                                                            (line  1051)
+                                                            (line  1054)
 * unit64():                              Methods and functions.
-                                                            (line  6604)
-* 'units':                               UDUnits Support.   (line  3774)
-* 'units' <1>:                           UDUnits Support.   (line  3795)
-* 'units' <2>:                           UDUnits Support.   (line  3827)
+                                                            (line  7159)
+* 'units':                               UDUnits Support.   (line  3777)
+* 'units' <1>:                           UDUnits Support.   (line  3798)
+* 'units' <2>:                           UDUnits Support.   (line  3830)
 * 'units' <3>:                           ncatted netCDF Attribute Editor.
-                                                            (line  8618)
+                                                            (line  9177)
 * 'units' <4>:                           ncatted netCDF Attribute Editor.
-                                                            (line  8621)
+                                                            (line  9180)
 * 'units' <5>:                           ncflint netCDF File Interpolator.
-                                                            (line  9403)
-* UNIX:                                  Compatability.     (line   398)
+                                                            (line  9963)
+* UNIX:                                  Compatability.     (line   399)
 * UNIX <1>:                              Windows Operating System.
-                                                            (line   507)
+                                                            (line   508)
 * UNIX <2>:                              Large Numbers of Files.
-                                                            (line  1242)
+                                                            (line  1245)
 * UNIX <3>:                              Command Line Options.
-                                                            (line  1612)
+                                                            (line  1615)
 * UNIX <4>:                              Specifying Input Files.
-                                                            (line  1690)
+                                                            (line  1693)
 * UNIX <5>:                              Filters for 'ncks'.
-                                                            (line  9888)
+                                                            (line 10448)
 * unlimited dimension:                   ncecat netCDF Ensemble Concatenator.
-                                                            (line  9132)
-* 'unmap':                               Sort methods.      (line  6808)
+                                                            (line  9692)
+* 'unmap':                               Sort methods.      (line  7363)
 * unpack():                              Methods and functions.
-                                                            (line  6522)
-* 'unpack(x)':                           Packed data.       (line  4630)
-* unpacking:                             OPeNDAP.           (line  2002)
-* unpacking <1>:                         Packed data.       (line  4630)
+                                                            (line  7077)
+* 'unpack(x)':                           Packed data.       (line  5166)
+* unpacking:                             OPeNDAP.           (line  2005)
+* unpacking <1>:                         Packed data.       (line  5166)
 * unpacking <2>:                         ncecat netCDF Ensemble Concatenator.
-                                                            (line  9205)
+                                                            (line  9765)
 * unpacking <3>:                         ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
+                                                            (line 10691)
 * unpacking <4>:                         ncrcat netCDF Record Concatenator.
-                                                            (line 10596)
-* URL:                                   Remote storage.    (line  1824)
-* 'User Guide':                          Availability.      (line   315)
+                                                            (line 11157)
+* URL:                                   Remote storage.    (line  1827)
+* 'User Guide':                          Availability.      (line   316)
 * ushort():                              Methods and functions.
-                                                            (line  6598)
-* value list:                            Attributes.        (line  6200)
+                                                            (line  7153)
+* value list:                            Attributes.        (line  6749)
 * variable names:                        ncrename netCDF Renamer.
-                                                            (line 10650)
+                                                            (line 11211)
 * variables, appending:                  Annual Average over Regions.
-                                                            (line 11737)
-* variance:                              Operation Types.   (line  4767)
-* version:                               Operator Version.  (line  5651)
+                                                            (line 12298)
+* variance:                              Operation Types.   (line  5303)
+* version:                               Operator Version.  (line  6196)
 * Vista (Microsoft operating system):    Windows Operating System.
-                                                            (line   488)
+                                                            (line   489)
 * Weather and Research Forecast (WRF) Model: Where statement.
-                                                            (line  6697)
+                                                            (line  7252)
 * weighted average:                      ncwa netCDF Weighted Averager.
-                                                            (line 10864)
-* weighted average <1>:                  Monthly Cycle.     (line 12028)
-* Wenshan Wang:                          Contributors.      (line 11214)
-* 'wget':                                Remote storage.    (line  1824)
-* where():                               Where statement.   (line  6646)
-* while():                               Loops.             (line  6753)
-* whitespace:                            UDUnits Support.   (line  3836)
+                                                            (line 11425)
+* weighted average <1>:                  Monthly Cycle.     (line 12589)
+* Wenshan Wang:                          Contributors.      (line 11775)
+* 'wget':                                Remote storage.    (line  1827)
+* where():                               Where statement.   (line  7201)
+* while():                               Loops.             (line  7308)
+* whitespace:                            UDUnits Support.   (line  3839)
 * wildcards:                             Specifying Input Files.
-                                                            (line  1684)
-* wildcards <1>:                         Subsetting Files.  (line  2565)
+                                                            (line  1687)
+* wildcards <1>:                         Subsetting Files.  (line  2568)
 * wildcards <2>:                         ncatted netCDF Attribute Editor.
-                                                            (line  8422)
+                                                            (line  8980)
 * wildcards <3>:                         ncatted netCDF Attribute Editor.
-                                                            (line  8629)
+                                                            (line  9188)
 * 'WIN32':                               Windows Operating System.
-                                                            (line   503)
+                                                            (line   504)
 * Windows:                               Compatability.     (line   389)
 * Windows <1>:                           Windows Operating System.
-                                                            (line   488)
-* wrapped coordinates:                   Hyperslabs.        (line  3254)
+                                                            (line   489)
+* wrapped coordinates:                   Hyperslabs.        (line  3257)
 * wrapped coordinates <1>:               Wrapped Coordinates.
-                                                            (line  3614)
-* wrapped coordinates <2>:               Irregular grids.   (line  7082)
+                                                            (line  3617)
+* wrapped coordinates <2>:               Irregular grids.   (line  7637)
 * wrapped coordinates <3>:               Filters for 'ncks'.
-                                                            (line 10119)
+                                                            (line 10680)
 * wrapped filenames:                     Specifying Input Files.
-                                                            (line  1750)
-* WRF:                                   Irregular grids.   (line  7140)
+                                                            (line  1753)
+* WRF:                                   Irregular grids.   (line  7695)
 * WRF (Weather and Research Forecast Model): Where statement.
-                                                            (line  6697)
-* WWW documentation:                     Availability.      (line   315)
+                                                            (line  7252)
+* WWW documentation:                     Availability.      (line   316)
 * 'xargs':                               Large Numbers of Files.
-                                                            (line  1242)
+                                                            (line  1245)
 * 'xargs' <1>:                           Specifying Output Files.
-                                                            (line  1809)
-* 'xlC':                                 Compatability.     (line   407)
-* 'xlc':                                 Compatability.     (line   407)
+                                                            (line  1812)
+* 'xlC':                                 Compatability.     (line   408)
+* 'xlc':                                 Compatability.     (line   408)
 * XML:                                   ncks netCDF Kitchen Sink.
-                                                            (line  9804)
+                                                            (line 10364)
 * XP (Microsoft operating system):       Windows Operating System.
-                                                            (line   488)
-* 'xpl':                                 Chunking.          (line  4186)
-* 'xst':                                 Chunking.          (line  4186)
-* 'xst' <1>:                             Chunking.          (line  4245)
-* Yorick:                                Philosophy.        (line   913)
-* Yorick <1>:                            Performance.       (line  1490)
+                                                            (line   489)
+* 'xpl':                                 Chunking.          (line  4189)
+* 'xst':                                 Chunking.          (line  4189)
+* 'xst' <1>:                             Chunking.          (line  4258)
+* Yorick:                                Philosophy.        (line   916)
+* Yorick <1>:                            Performance.       (line  1493)
+* 'zlib':                                Compression.       (line  4427)
 
diff --git a/doc/nco.xml b/doc/nco.xml
index 4330199..362bda7 100644
--- a/doc/nco.xml
+++ b/doc/nco.xml
@@ -17,7 +17,7 @@ Purpose: TeXInfo documentation for netCDF Operators (NCO)
 
 URL: http://nco.sf.net/nco.texi
 
-Copyright (C) 1995--2014 Charlie Zender
+Copyright (C) 1995--2015 Charlie Zender
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3
 or any later version published by the Free Software Foundation;
@@ -35,7 +35,7 @@ Irvine, CA 92697-3100
 
 After editing any hyperlink locations, Emacs users update indices with
 C-c C-u C-a	texinfo-all-menus-update
-C-c C-u C-e	texinfo-every-node-updatexb
+C-c C-u C-e	texinfo-every-node-update
 
 Multiple files:
 M-x texinfo-multiple-files-update
@@ -118,14 +118,14 @@ Octave TeXInfo manual shows clean TeXInfo structure
 <setfilename file="nco.info" spaces=" ">nco.info</setfilename>
 
 <!-- c Define edition, date, ... -->
-<set name="nco-edition" line=" nco-edition 4.4.7">4.4.7</set>
-<set name="doc-edition" line=" doc-edition 4.4.7">4.4.7</set>
-<set name="copyright-years" line=" copyright-years 1995--2014">1995--2014</set>
-<set name="update-year" line=" update-year 2014">2014</set>
-<set name="update-date" line=" update-date 26 November 2014">26 November 2014</set>
-<set name="update-month" line=" update-month November 2014">November 2014</set>
+<set name="nco-edition" line=" nco-edition 4.4.8">4.4.8</set>
+<set name="doc-edition" line=" doc-edition 4.4.8">4.4.8</set>
+<set name="copyright-years" line=" copyright-years 1995--2015">1995--2015</set>
+<set name="update-year" line=" update-year 2015">2015</set>
+<set name="update-date" line=" update-date 17 February 2015">17 February 2015</set>
+<set name="update-month" line=" update-month February 2015">February 2015</set>
 
-<settitle spaces=" "><acronym><acronymword>NCO</acronymword></acronym> 4.4.7 User Guide</settitle>
+<settitle spaces=" "><acronym><acronymword>NCO</acronymword></acronym> 4.4.8 User Guide</settitle>
 
 <!-- c Uncomment following line to produce guide in smallbook format -->
 <!-- c @smallbook -->
@@ -396,6 +396,7 @@ Octave TeXInfo manual shows clean TeXInfo structure
 \gdef\shrnbr{S} % [nbr] Share number
 \gdef\dfr{{\rm d}} % [frc] Math differential fxm: upright
 \gdef\idx{i} % [idx] Index
+\gdef\psl{\epsilon} % [frc] epsilon
 \gdef\iii{i} % [idx] i
 \gdef\jjj{j} % [idx] j
 \gdef\kkk{k} % [idx] k
@@ -409,15 +410,23 @@ Octave TeXInfo manual shows clean TeXInfo structure
 \gdef\mpp{\cal{M}} % [map] Map
 \gdef\mskflg{m} % [flg] Mask flag
 \gdef\mssflg{\mu} % [flg] Missing value flag
+\gdef\qqq{q} % [ltr] q
 \gdef\tm{t} % [s] Time
 \gdef\prmsbs{\prime} % [sbs] Prime subscript
 \gdef\wgt{w} % [frc] Weight
 \gdef\wndmrd{v} % [m s-1] Meridional wind speed
 \gdef\wndznl{u} % [m s-1] Zonal wind speed
+\gdef\vvv{v} % [ltr] v
 \gdef\xxx{x} % [ltr] x
 \gdef\yyy{y} % [ltr] y
 
 % 2. Derived commands
+\gdef\pslavg{\bar{\epsilon}} % [frc] Mean error
+\gdef\pslmax{\epsilon_{\rm max}} % [frc] Maximum error
+\gdef\pslmin{\epsilon_{\rm min}} % [frc] Minimum error
+\gdef\pslmabs{\epsilon_{\rm mabs}^{+}} % [frc] Maximum absolute error
+\gdef\pslmibs{\epsilon_{\rm mibs}^{+}} % [frc] Minimum absolute error
+\gdef\pslmebs{\bar{\epsilon}^{+}} % [frc] Mean absolute error
 \gdef\dmnvct{{\bf \dmn}} % [vct] Dimension vector
 \gdef\dmnprm{\dmn^{\prmsbs}} % [vct] Dimension prime
 \gdef\dmnsubnnn{\dmn_{\dmnidx}} % [dmn] Dimension sub nnn
@@ -465,7 +474,7 @@ Octave TeXInfo manual shows clean TeXInfo structure
 <para>This file documents <acronym><acronymword>NCO</acronymword></acronym>, a collection of utilities to
 manipulate and analyze netCDF files.
 </para>
-<para>Copyright ©right; 1995&textndash;2014 Charlie Zender
+<para>Copyright ©right; 1995&textndash;2015 Charlie Zender
 </para>
 <para>This is the first edition of the <cite>NCO User Guide</cite>,&linebreak;
 and is consistent with <w>version 2</w> of <file>texinfo.tex</file>.
@@ -505,12 +514,10 @@ ncflint, ncks, ncra, ncrcat, ncrename, ncwa">
 <body text="#000000" link="#0000EF" vlink="#008080" alink="#FF0000">
 <font face="Arial">
 </html>
-<ignore>
-</ignore>
 <title spaces=" ">NCO User Guide</title>
 <subtitle spaces=" ">A suite of netCDF operators</subtitle>
-<subtitle spaces=" ">Edition 4.4.7, for <acronym><acronymword>NCO</acronymword></acronym> Version 4.4.7</subtitle>
-<subtitle spaces=" ">November 2014</subtitle>
+<subtitle spaces=" ">Edition 4.4.8, for <acronym><acronymword>NCO</acronymword></acronym> Version 4.4.8</subtitle>
+<subtitle spaces=" ">February 2015</subtitle>
 
 <author spaces=" ">by Charlie Zender</author>
 <author spaces=" ">Department of Earth System Science</author>
@@ -523,7 +530,7 @@ ncflint, ncks, ncra, ncrcat, ncrename, ncwa">
 <!-- c Include Distribution inside titlepage so that headings are turned off -->
 <page></page>
 <vskip> 0pt plus 1filll</vskip>
-<para>Copyright ©right; 1995&textndash;2014 Charlie Zender.
+<para>Copyright ©right; 1995&textndash;2015 Charlie Zender.
 </para>
 <sp value="2" line=" 2"></sp>
 <para>This is the first edition of the <cite>NCO User Guide</cite>,&linebreak;
@@ -586,8 +593,8 @@ examples from the field of climate modeling and analysis.
 The <acronym><acronymword>NCO</acronymword></acronym> homepage is <uref><urefurl>http://nco.sf.net</urefurl></uref>, and
 there is a mirror at <uref><urefurl>http://dust.ess.uci.edu/nco</urefurl></uref>.
 </para>
-<para>This documentation is for <acronym><acronymword>NCO</acronymword></acronym> version 4.4.7.
-It was last updated 26 November 2014.
+<para>This documentation is for <acronym><acronymword>NCO</acronymword></acronym> version 4.4.8.
+It was last updated 17 February 2015.
 Corrections, additions, and rewrites of this documentation are very
 welcome.
 </para>
@@ -599,8 +606,8 @@ Charlie Zender
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Summary</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Introduction</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Strategies</menunode><menudescription><pre xml:space="preserve">
-</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Common features</menunode><menudescription><pre xml:space="preserve">
-</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Operator Reference Manual</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Shared features</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Reference Manual</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Contributing</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Quick Start</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">CMIP5 Example</menunode><menudescription><pre xml:space="preserve">
@@ -714,7 +721,7 @@ Irvine, California&linebreak;
 <ignore>
 @sp 2
 The @acronym{NASA} @acronym{ACCESS} 2011 program generously supported 
-(Cooperative Agreement NNX12AF48A) @acronym{NCO} from 2012--2014.
+(Cooperative Agreement NNX12AF48A) @acronym{NCO} from 2012--2015.
 We accomplished our goals and produced the first iteration of a
 Group-oriented Data Analysis and Distribution (@acronym{GODAD}) software 
 ecosystem. 
@@ -869,12 +876,12 @@ descriptions of <uref><urefurl>http://nco.sf.net/#bug</urefurl><urefdesc spaces=
 are on our homepage 
 (<uref><urefurl>http://nco.sf.net/</urefurl></uref>).
 </para>
-<para>There are twelve operators in the current version (4.4.7).
-The function of each is explained in <ref label="Operator-Reference-Manual"><xrefnodename>Operator Reference Manual</xrefnodename><xrefinfoname spaces=" ">Operator Reference Manual</xrefinfoname></ref>.
+<para>There are twelve operators in the current version (4.4.8).
+The function of each is explained in <ref label="Reference-Manual"><xrefnodename>Reference Manual</xrefnodename><xrefinfoname spaces=" ">Reference Manual</xrefinfoname></ref>.
 Many of the tasks that <acronym><acronymword>NCO</acronymword></acronym> can accomplish are described during
-the explanation of common <acronym><acronymword>NCO</acronymword></acronym> Features (<pxref label="Common-features"><xrefnodename>Common features</xrefnodename></pxref>).
+the explanation of common <acronym><acronymword>NCO</acronymword></acronym> Features (<pxref label="Shared-features"><xrefnodename>Shared features</xrefnodename></pxref>).
 More specific use examples for each operator can be seen by visiting the
-operator-specific examples in the <ref label="Operator-Reference-Manual"><xrefnodename>Operator Reference Manual</xrefnodename></ref>.
+operator-specific examples in the <ref label="Reference-Manual"><xrefnodename>Reference Manual</xrefnodename></ref>.
 These can be found directly by prepending the operator name with the
 <code>xmp_</code> tag, e.g., <uref><urefurl>http://nco.sf.net/nco.html#xmp_ncks</urefurl></uref>.
 Also, users can type the operator name on the shell command line to 
@@ -882,7 +889,7 @@ see all the available options, or type, e.g., <samp>man ncks</samp> to see
 a help man-page.
 </para>
 <para><acronym><acronymword>NCO</acronymword></acronym> is a command-line language.
-You can either use an operator after the prompt (e.g., <samp>$</samp> here),
+You may either use an operator after the prompt (e.g., <samp>$</samp> here),
 like, 
 </para><example endspaces=" ">
 <pre xml:space="preserve">$ <command>operator</command> <option>[options]</option> <file>input</file> <file>[output]</file>
@@ -924,19 +931,22 @@ If these resources do not help enough, please
 <cindex index="cp" spaces=" "><indexterm index="cp" number="41">compatability</indexterm></cindex>
 <cindex index="cp" spaces=" "><indexterm index="cp" number="42">portability</indexterm></cindex>
 <cindex index="cp" spaces=" "><indexterm index="cp" number="43">installation</indexterm></cindex>
-<para><acronym><acronymword>NCO</acronymword></acronym> has been successfully ported and tested and is known to
-work on the following 32- and 64-bit platforms:  
+<para>In its time on Earth, <acronym><acronymword>NCO</acronymword></acronym> has been successfully ported and
+tested on so many 32- and 64-bit platforms that if we did not write
+them down here we would forget their names:  
 <!-- c alphabetize by OS name -->
 <acronym><acronymword>IBM AIX</acronymword></acronym> 4.x, 5.x,
 FreeBSD 4.x, 
 <acronym><acronymword>GNU</acronymword></acronym>/Linux 2.x, LinuxPPC, LinuxAlpha, LinuxARM, LinuxSparc64,
+LinuxAMD64, 
 <acronym><acronymword>SGI IRIX</acronymword></acronym> 5.x and 6.x,
 <w>MacOS X</w> 10.x, 
-<acronym><acronymword>NEC</acronymword></acronym> Super-UX 10.x, 
 <acronym><acronymword>DEC OSF</acronymword></acronym>, 
+<acronym><acronymword>NEC</acronymword></acronym> Super-UX 10.x, 
 Sun SunOS 4.1.x, Solaris 2.x, 
 <acronym><acronymword>Cray UNICOS</acronymword></acronym> 8.x&textndash;10.x,
-and MS Windows95 and all later versions.
+and Microsoft Windows (95, 98, <acronym><acronymword>NT</acronymword></acronym>, 2000, <acronym><acronymword>XP</acronymword></acronym>, Vista,
+7, 8, 10).
 If you port the code to a new operating system, please send me a note 
 and any patches you required.
 </para>
@@ -1508,9 +1518,10 @@ Conversion of <acronym><acronymword>HDF4</acronymword></acronym> to netCDF4 as a
 will only be processed by <acronym><acronymword>NCO</acronymword></acronym> and other netCDF4-aware tools.  
 </para>
 <cindex index="cp" spaces=" "><indexterm index="cp" number="145"><command>ncl_convert2nc</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="146"><command>nc3tonc4</command></indexterm></cindex>
 <para>However, many tools are not fully netCDF4-aware, and so conversion to
 netCDF3 may be desirable.
-Obtaining a netCDF3 file from an <acronym><acronymword>HDF4</acronymword></acronym> is now easy:
+Obtaining any netCDF file from an <acronym><acronymword>HDF4</acronymword></acronym> is easy:
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncks -3 fl.hdf fl.nc      # HDF4->netCDF3 (NCO 4.4.0+, netCDF 4.3.1+)
 ncks -4 fl.hdf fl.nc      # HDF4->netCDF4 (NCO 4.4.0+, netCDF 4.3.1+)
@@ -1529,9 +1540,10 @@ everything to atomic types supported by netCDF3
 <command>ncl_convert2nc</command> tool to convert <acronym><acronymword>HDF</acronymword></acronym> to netCDF3 when
 both these are true: <w>1. You</w> must have netCDF3 and <w>2. the</w>
 <acronym><acronymword>HDF</acronymword></acronym> file contains netCDF4 atomic types. 
-More recent versions of <acronym><acronymword>NCO</acronymword></acronym> handle this problem fine, so we
-no longer recommend <command>ncl_convert2nc</command> because <command>ncks</command>
-is faster and more space-efficient.
+More recent versions of <acronym><acronymword>NCO</acronymword></acronym> handle this problem fine, and
+include other advantages so we no longer recommend
+<command>ncl_convert2nc</command> because <command>ncks</command> is faster and more
+space-efficient. 
 Both automatically convert netCDF4 types to netCDF3 types, yet
 <command>ncl_convert2nc</command> cannot produce full netCDF4 files.
 In contrast, <command>ncks</command> will happily convert <acronym><acronymword>HDF</acronymword></acronym> straight
@@ -1541,10 +1553,12 @@ Unsigned bytes stay unsigned bytes.
 64-bit integers stay 64-bit integers. 
 Strings stay strings. 
 Hence, <command>ncks</command> conversions often result in smaller files than
-<command>ncl_convert2nc</command> conversions.</para></footnote>. 
+<command>ncl_convert2nc</command> conversions.
+A tool useful for converting netCDF3 to netCDF4 files is the Python
+script <command>nc3tonc4</command> by Jeff Whitaker.</para></footnote>. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="146"><code>hdf_name</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="147">illegal names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="147"><code>hdf_name</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="148">illegal names</indexterm></cindex>
 <para>As of <acronym><acronymword>NCO</acronymword></acronym> version 4.4.4 (May, 2014) both
 <command>ncl_convert2nc</command> and <acronym><acronymword>NCO</acronymword></acronym> have built-in, automatic
 workarounds to handle element names that contain characters that are
@@ -1565,8 +1579,8 @@ attributes named <code>hdf_name</code>
 slightly different manner, and also stores the original name in the
 <code>hdf_name</code> attribute.</para></footnote>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="148"><acronym><acronymword>H4CF</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="149"><command>h4tonccf</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="149"><acronym><acronymword>H4CF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="150"><command>h4tonccf</command></indexterm></cindex>
 <para>Finally, in February 2014, we learned that the <acronym><acronymword>HDF</acronymword></acronym> group
 has a project called <acronym><acronymword>H4CF</acronymword></acronym> 
 (described <uref><urefurl>http://hdfeos.org/software/h4cflib.php</urefurl><urefdesc spaces=" ">here</urefdesc></uref>)
@@ -1578,14 +1592,14 @@ We are not yet sure what advantages or features <command>h4tonccf</command> has
 that are not in <acronym><acronymword>NCO</acronymword></acronym>, though we suspect both methods have their
 own advantages. Corrections welcome.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="150"><acronym><acronymword>RPM</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="151">Debian</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="151"><acronym><acronymword>RPM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="152">Debian</indexterm></cindex>
 <para>As of 2012, netCDF4 is relatively stable software.
 Problems with netCDF4 and <acronym><acronymword>HDF</acronymword></acronym> libraries have mainly been fixed.
 Binary <acronym><acronymword>NCO</acronymword></acronym> distributions shipped as <acronym><acronymword>RPM</acronymword></acronym>s and as debs
 have used the netCDF4 library since 2010 and 2011, respectively.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="152"><code>NETCDF4_ROOT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="153"><code>NETCDF4_ROOT</code></indexterm></cindex>
 <para>One must often build <acronym><acronymword>NCO</acronymword></acronym> from source to obtain netCDF4
 support. 
 Typically, one specifies the root of the netCDF4
@@ -1612,11 +1626,11 @@ operators.
 </section>
 <node name="Help-Requests-and-Bug-Reports" spaces=" "><nodename>Help Requests and Bug Reports</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">netCDF2/3/4 and HDF4/5 Support</nodeprev><nodeup spaces=" ">Introduction</nodeup></node>
 <section spaces=" "><sectiontitle>Help Requests and Bug Reports</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="153">reporting bugs</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="154">bugs, reporting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="155">core dump</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="156">help</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="157">features, requesting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="154">reporting bugs</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="155">bugs, reporting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="156">core dump</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="157">help</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="158">features, requesting</indexterm></cindex>
 <para>We generally receive three categories of mail from users: help requests,
 bug reports, and feature requests.
 Notes saying the equivalent of &textldquo;Hey, <acronym><acronymword>NCO</acronymword></acronym> continues to work
@@ -1663,9 +1677,9 @@ publicly released version of <acronym><acronymword>NCO</acronymword></acronym>.
 <acronym><acronymword>NCO</acronymword></acronym> to perform a documented function, submit a help request.
 Follow the same procedure as described below for reporting bugs
 (after all, it might be a bug).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="158">debugging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="159"><code>-r</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="160"><code>-D</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="159">debugging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="160"><code>-r</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="161"><code>-D</code></indexterm></cindex>
 That is, describe what you are trying to do, and include the complete
 commands (run with <samp>-D 5</samp>), error messages, and version of
 <acronym><acronymword>NCO</acronymword></acronym> (with <samp>-r</samp>).  
@@ -1689,15 +1703,15 @@ two small dimensions ought to suffice.
 <a name="dbg"></a> <!&textndash; http://nco.sf.net/nco.html#dbg &textndash;>
 <a name="-D"></a> <!&textndash; http://nco.sf.net/nco.html#-D &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="161"><code>-r</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="162"><code>--revision</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="163"><code>--version</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="164"><code>--vrs</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="165"><code>-D <var>debug-level</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="166"><code>--debug-level <var>debug-level</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="167"><code>--dbg_lvl <var>debug-level</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="168"><var>debug-level</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="169"><var>dbg_lvl</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="162"><code>-r</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="163"><code>--revision</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="164"><code>--version</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="165"><code>--vrs</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="166"><code>-D <var>debug-level</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="167"><code>--debug-level <var>debug-level</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="168"><code>--dbg_lvl <var>debug-level</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="169"><var>debug-level</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="170"><var>dbg_lvl</var></indexterm></cindex>
 Run the operator with <samp>-r</samp> and then run the command with 
 <samp>-D 5</samp> to increase the verbosity of the debugging output.
 It is very important that your report contain the exact error messages 
@@ -1707,13 +1721,13 @@ publically accessible location, of the file(s).
 Post the full bug report to the 
 <uref><urefurl>http://sf.net/bugs/?group_id=3331</urefurl><urefdesc spaces=" ">NCO Project buglist</urefdesc></uref>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="170">installation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="171"><command>autoconf</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="172"><file>nco.configure.${GNU_TRP}.foo</file></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="173"><file>nco.config.log.${GNU_TRP}.foo</file></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="174"><file>nco.make.${GNU_TRP}.foo</file></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="175"><file>config.guess</file></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="176"><file>configure.eg</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="171">installation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="172"><command>autoconf</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="173"><file>nco.configure.${GNU_TRP}.foo</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="174"><file>nco.config.log.${GNU_TRP}.foo</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="175"><file>nco.make.${GNU_TRP}.foo</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="176"><file>config.guess</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="177"><file>configure.eg</file></indexterm></cindex>
 <para>Build failures count as bugs.
 Our limited machine access means we cannot fix all build failures.
 The information we need to diagnose, and often fix, build failures
@@ -1726,7 +1740,7 @@ Here <code>${GNU_TRP}</code> is the &textldquo;<acronym><acronymwo
 the <var>chip-vendor-OS</var> string returned by <file>config.guess</file>.
 Please send us your improvements to the examples supplied in
 <file>configure.eg</file>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="177">regressions archive</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="178">regressions archive</indexterm></cindex>
 The regressions archive at <url><urefurl>http://dust.ess.uci.edu/nco/rgr</urefurl></url>
 contains the build output from our standard test systems.
 You may find you can solve the build problem yourself by examining the
@@ -1737,7 +1751,7 @@ differences between these files and your own.
 </html>
 </section>
 </chapter>
-<node name="Strategies" spaces=" "><nodename>Strategies</nodename><nodenext spaces=" ">Common features</nodenext><nodeprev spaces=" ">Introduction</nodeprev><nodeup spaces=" ">Top</nodeup></node>
+<node name="Strategies" spaces=" "><nodename>Strategies</nodename><nodenext spaces=" ">Shared features</nodenext><nodeprev spaces=" ">Introduction</nodeprev><nodeup spaces=" ">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>Operator Strategies</sectiontitle>
 
 <menu endspaces=" ">
@@ -1758,8 +1772,8 @@ differences between these files and your own.
 </html>
 <node name="Philosophy" spaces=" "><nodename>Philosophy</nodename><nodenext spaces=" ">Climate Model Paradigm</nodenext><nodeprev spaces=" ">Strategies</nodeprev><nodeup spaces=" ">Strategies</nodeup></node>
 <section spaces=" "><sectiontitle>Philosophy</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="178">philosophy</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="179">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="179">philosophy</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="180">climate model</indexterm></cindex>
 
 <para>The main design goal is command line operators which perform useful,
 scriptable operations on netCDF files.  
@@ -1773,11 +1787,11 @@ statistical packages, and are often more suitable for archival and
 dissemination to the scientific community.
 <acronym><acronymword>NCO</acronymword></acronym> performs a suite of operations useful in manipulating data
 from the primary to the second level state.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="180"><acronym><acronymword>IDL</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="181">Matlab</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="182"><acronym><acronymword>NCL</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="183">Perl</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="184">Yorick</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="181"><acronym><acronymword>IDL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="182">Matlab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="183"><acronym><acronymword>NCL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="184">Perl</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="185">Yorick</indexterm></cindex>
 Higher level interpretive languages (e.g., <acronym><acronymword>IDL</acronymword></acronym>, Yorick,
 Matlab, <acronym><acronymword>NCL</acronymword></acronym>, Perl, Python),
 and lower level compiled languages (e.g., C, Fortran) can always perform  
@@ -1785,7 +1799,7 @@ any task performed by <acronym><acronymword>NCO</acronymword></acronym>, but oft
 NCO, on the other hand, is limited to a much smaller set of arithmetic
 and metadata operations than these full blown languages.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="185">command line switches</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="186">command line switches</indexterm></cindex>
 <para>Another goal has been to implement enough command line switches so that 
 frequently used sequences of these operators can be executed from a
 shell script or batch file.
@@ -1800,9 +1814,9 @@ usage is detailed in <ref label="Memory-Requirements"><xrefnodename>Memory Requi
 </section>
 <node name="Climate-Model-Paradigm" spaces=" "><nodename>Climate Model Paradigm</nodename><nodenext spaces=" ">Temporary Output Files</nodenext><nodeprev spaces=" ">Philosophy</nodeprev><nodeup spaces=" ">Strategies</nodeup></node>
 <section spaces=" "><sectiontitle>Climate Model Paradigm</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="186">climate model</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="187"><acronym><acronymword>NCAR</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="188"><acronym><acronymword>GCM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="187">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="188"><acronym><acronymword>NCAR</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="189"><acronym><acronymword>GCM</acronymword></acronym></indexterm></cindex>
 
 <para><acronym><acronymword>NCO</acronymword></acronym> was developed at <acronym><acronymword>NCAR</acronymword></acronym> to aid analysis and
 manipulation of datasets produced by General Circulation Models
@@ -1820,11 +1834,11 @@ environment are as easy to visualize for the layman as the expert.
 </section>
 <node name="Temporary-Output-Files" spaces=" "><nodename>Temporary Output Files</nodename><nodenext spaces=" ">Appending Variables</nodenext><nodeprev spaces=" ">Climate Model Paradigm</nodeprev><nodeup spaces=" ">Strategies</nodeup></node>
 <section spaces=" "><sectiontitle>Temporary Output Files </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="189">data safety</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="190">error tolerance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="191">safeguards</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="192">temporary output files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="193">temporary files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="190">data safety</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="191">error tolerance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="192">safeguards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="193">temporary output files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="194">temporary files</indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> operators are designed to be reasonably fault tolerant, so
 that a system failure or user-abort of the operation (e.g., with
 <kbd>C-c</kbd>) does not cause loss of data.
@@ -1848,10 +1862,10 @@ than just overwriting existing files &textldquo;in place&textrdquo; (because the
 two copies of the same file on disk until the <acronym><acronymword>NCO</acronymword></acronym> operation
 successfully concludes and the temporary output file overwrites the
 existing <var>output-file</var>).  
-<cindex index="cp" spaces=" "><indexterm index="cp" number="194">performance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="195">operator speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="196">speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="197">execution time</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="195">performance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="196">operator speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="197">speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="198">execution time</indexterm></cindex>
 Also, note this feature increases the execution time of the operator
 by approximately the time it takes to copy the <var>output-file</var>
 <footnote><para>The OS-specific system move command is used.
@@ -1865,13 +1879,13 @@ to be the same as the <var>input-file</var> without any danger of
 <a name="no_tmp_fl"></a> <!&textndash; http://nco.sf.net/nco.html#no_tmp_fl &textndash;>
 <a name="wrt_tmp_fl"></a> <!&textndash; http://nco.sf.net/nco.html#wrt_tmp_fl &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="198"><code>--no_tmp_fl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="199"><code>--wrt_tmp_fl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="200"><code>--write_tmp_fl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="201"><code>--create_ram</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="202"><code>--open_ram</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="203"><acronym><acronymword>RAM</acronymword></acronym> disks</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="204"><acronym><acronymword>RAM</acronymword></acronym> files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="199"><code>--no_tmp_fl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="200"><code>--wrt_tmp_fl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="201"><code>--write_tmp_fl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="202"><code>--create_ram</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="203"><code>--open_ram</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="204"><acronym><acronymword>RAM</acronymword></acronym> disks</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="205"><acronym><acronymword>RAM</acronymword></acronym> files</indexterm></cindex>
 <para>Over time many &textldquo;power users&textrdquo; have requested a way to turn-off the
 fault-tolerance safety feature of automatically creating a temporary
 file. 
@@ -1928,15 +1942,15 @@ We welcome accounts of your experiences posted to the forums.
 <a name="-A"></a> <!&textndash; http://nco.sf.net/nco.html#-A &textndash;>
 <a name="-O"></a> <!&textndash; http://nco.sf.net/nco.html#-O &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="205"><code>-A</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="206"><code>-O</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="207"><code>--apn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="208"><code>--append</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="209"><code>--ovr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="210"><code>--overwrite</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="211">overwriting files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="212">appending variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="213">appending to files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="206"><code>-A</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="207"><code>-O</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="208"><code>--apn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="209"><code>--append</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="210"><code>--ovr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="211"><code>--overwrite</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="212">overwriting files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="213">appending variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="214">appending to files</indexterm></cindex>
 <para>Other safeguards exist to protect the user from inadvertently
 overwriting data.
 If the <var>output-file</var> specified for a command is a pre-existing file,
@@ -1962,10 +1976,10 @@ interactive keyboard input.
 <node name="Appending-Variables" spaces=" "><nodename>Appending Variables</nodename><nodenext spaces=" ">Simple Arithmetic and Interpolation</nodenext><nodeprev spaces=" ">Temporary Output Files</nodeprev><nodeup spaces=" ">Strategies</nodeup></node>
 <section spaces=" "><sectiontitle>Appending Variables</sectiontitle>
 <para>Adding variables from one file to another is often desirable.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="214">concatenation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="215">appending variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="216">merging files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="217">pasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="215">concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="216">appending variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="217">merging files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="218">pasting variables</indexterm></cindex>
 This is referred to as <dfn>appending</dfn>, although some prefer the
 terminology <dfn>merging</dfn> <footnote><para>The terminology <dfn>merging</dfn> is
 reserved for an (unwritten) operator which replaces hyperslabs of a
@@ -1973,7 +1987,7 @@ variable in one file with hyperslabs of the same variable from another
 file</para></footnote> or <dfn>pasting</dfn>. 
 Appending is often confused with what <acronym><acronymword>NCO</acronymword></acronym> calls
 <dfn>concatenation</dfn>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="218">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="219">record dimension</indexterm></cindex>
 In <acronym><acronymword>NCO</acronymword></acronym>, concatenation refers to splicing a variable
 along the record dimension.  
 The length along the record dimension of the output is the sum of the
@@ -2004,8 +2018,8 @@ the results of the operation in the existing <var>output-file</var>,
 <html endspaces=" ">
 <a name="unn"></a> <!&textndash; http://nco.sf.net/nco.html#unn &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="219">union of files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="220">disjoint files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="220">union of files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="221">disjoint files</indexterm></cindex>
 <para>The simplest way to create the union of two files is
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncks -A fl_1.nc fl_2.nc
@@ -2050,7 +2064,7 @@ operations from the command line.
 <a name="sym_nces"></a> <!&textndash; http://nco.sf.net/nco.html#sym_nces &textndash;>
 <a name="sym_ncrcat"></a> <!&textndash; http://nco.sf.net/nco.html#sym_ncrcat &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="221">symbolic links</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="222">symbolic links</indexterm></cindex>
 <para>The most frequently used operators of <acronym><acronymword>NCO</acronymword></acronym> are probably the
 <dfn>statisticians</dfn> (i.e., tools that do statistics) and concatenators.
 Because there are so many types of statistics like averaging (e.g.,
@@ -2090,8 +2104,8 @@ First, let&textrsquo;s describe the concatenators, then the statistics tools.
 </html>
 <node name="Concatenation" spaces=" "><nodename>Concatenation</nodename><nodenext spaces=" ">Averaging</nodenext><nodeprev spaces=" ">Statistics vs. Concatenation</nodeprev><nodeup spaces=" ">Statistics vs. Concatenation</nodeup></node>
 <subsection spaces=" "><sectiontitle>Concatenators <command>ncrcat</command> and <command>ncecat</command></sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="222"><command>ncecat</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="223"><command>ncrcat</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="223"><command>ncecat</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="224"><command>ncrcat</command></indexterm></cindex>
 
 <para>Joining together independent files along a common record dimension is
 called <dfn>concatenation</dfn>.    
@@ -2111,8 +2125,8 @@ file to file.
 </para>
 <para>However, suppose the annual files have no record variable, and thus
 their data are all fixed length. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="224">ensemble</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="225">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="225">ensemble</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="226">climate model</indexterm></cindex>
 For example, the files may not be conceptually sequential, but rather
 members of the same group, or <dfn>ensemble</dfn>. 
 Members of an ensemble may have no reason to contain a record dimension.
@@ -2137,7 +2151,7 @@ data on different realizations of the same variables.
 <xref label="ncecat-netCDF-Ensemble-Concatenator"><xrefnodename>ncecat netCDF Ensemble Concatenator</xrefnodename></xref>, for a complete description
 of <command>ncecat</command>. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="226"><command>ncpdq</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="227"><command>ncpdq</command></indexterm></cindex>
 <html endspaces=" ">
 <a name="dmn_cat"></a> <!&textndash; http://nco.sf.net/nco.html#dmn_cat &textndash;>
 </html>
@@ -2176,9 +2190,9 @@ To conserve system memory, use <command>ncrcat</command> where possible.
 </subsection>
 <node name="Averaging" spaces=" "><nodename>Averaging</nodename><nodenext spaces=" ">Interpolating</nodenext><nodeprev spaces=" ">Concatenation</nodeprev><nodeup spaces=" ">Statistics vs. Concatenation</nodeup></node>
 <subsection spaces=" "><sectiontitle>Averagers <command>nces</command>, <command>ncra</command>, and <command>ncwa</command> </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="227"><command>nces</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="228"><command>ncra</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="229"><command>ncwa</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="228"><command>nces</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="229"><command>ncra</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="230"><command>ncwa</command></indexterm></cindex>
 
 <para>The differences between the averagers <command>ncra</command> and <command>nces</command>
 are analogous to the differences between the concatenators.
@@ -2210,7 +2224,7 @@ description of <command>ncra</command>).
 </subsection>
 <node name="Interpolating" spaces=" "><nodename>Interpolating</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Averaging</nodeprev><nodeup spaces=" ">Statistics vs. Concatenation</nodeup></node>
 <subsection spaces=" "><sectiontitle>Interpolator <command>ncflint</command></sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="230"><command>ncflint</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="231"><command>ncflint</command></indexterm></cindex>
 
 <para><command>ncflint</command> can interpolate data between or two files.
 Since no other operators have this ability, the description of
@@ -2227,13 +2241,13 @@ units.
 </section>
 <node name="Large-Numbers-of-Files" spaces=" "><nodename>Large Numbers of Files</nodename><nodenext spaces=" ">Large Datasets</nodenext><nodeprev spaces=" ">Statistics vs. Concatenation</nodeprev><nodeup spaces=" ">Strategies</nodeup></node>
 <section spaces=" "><sectiontitle>Large Numbers of Files</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="231">files, numerous input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="232"><code>-n <var>loop</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="232">files, numerous input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="233"><code>-n <var>loop</var></code></indexterm></cindex>
 
 <para>Occasionally one desires to digest (i.e., concatenate or average)
 hundreds or thousands of input files.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="233">automagic</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="234"><acronym><acronymword>NASA EOSDIS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="234">automagic</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="235"><acronym><acronymword>NASA EOSDIS</acronymword></acronym></indexterm></cindex>
 Unfortunately, data archives (e.g., <acronym><acronymword>NASA EOSDIS</acronymword></acronym>) may not
 name netCDF files in a format understood by the <samp>-n <var>loop</var></samp>
 switch (<pxref label="Specifying-Input-Files"><xrefnodename>Specifying Input Files</xrefnodename></pxref>) that automagically generates
@@ -2266,8 +2280,8 @@ filenames to <acronym><acronymword>NCO</acronymword></acronym> in environment-li
 <html endspaces=" ">
 <a name="stdin"></a> <!&textndash; http://nco.sf.net/nco.html#stdin &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="235">standard input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="236"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="236">standard input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="237"><code>stdin</code></indexterm></cindex>
 <para>The recommended method for sending very large numbers (hundreds or
 more, typically) of input filenames to the multi-file operators is
 to pass the filenames with the <acronym><acronymword>UNIX</acronymword></acronym> <dfn>standard input</dfn>
@@ -2284,10 +2298,10 @@ A drawback to this method is that the <code>history</code> attribute
 (<pxref label="History-Attribute"><xrefnodename>History Attribute</xrefnodename></pxref>) does not record the name of any input 
 files since the names were not passed on the command line.
 This makes determining the data provenance at a later date difficult.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="237"><code>nco_input_file_number</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="238"><code>nco_input_file_list</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="239">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="240">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="238"><code>nco_input_file_number</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="239"><code>nco_input_file_list</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="240">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="241">attributes, global</indexterm></cindex>
 To remedy this situation, multi-file operators store the number of
 input files in the <code>nco_input_file_number</code> global attribute and the
 input file list itself in the <code>nco_input_file_list</code> global attribute
@@ -2296,13 +2310,13 @@ Although this does not preserve the exact command used to generate the
 file, it does retains all the information required to reconstruct the
 command and determine the data provenance.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="241">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="242">shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="243">extended regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="244">regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="245">pattern matching</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="246"><command>xargs</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="247"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="242">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="243">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="244">extended regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="245">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="246">pattern matching</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="247"><command>xargs</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="248"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
 <para>A second option is to use the <acronym><acronymword>UNIX</acronymword></acronym> <command>xargs</command> command.
 This simple example selects as input to <command>xargs</command> all the
 filenames in the current directory that match a given pattern.
@@ -2323,7 +2337,7 @@ matching filenames to an <acronym><acronymword>NCO</acronymword></acronym> multi
 /bin/ls | grep ${CASEID}_'......'.nc | xargs -x ncecat -o foo.nc
 </verbatim>
 </example>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="248">pipes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="249">pipes</indexterm></cindex>
 <para>The single quotes protect the only sensitive parts of the extended
 regular expression (the <command>grep</command> argument), and allow shell
 interpolation (the <code>${CASEID}</code> variable substitution) to
@@ -2331,9 +2345,9 @@ proceed unhindered on the rest of the command.
 <command>xargs</command> uses the <acronym><acronymword>UNIX</acronymword></acronym> pipe feature to append the
 suitably filtered input file list to the end of the <command>ncecat</command>
 command options.  
-<cindex index="cp" spaces=" "><indexterm index="cp" number="249">output file</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="250">input files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="251"><code>-o <var>fl_out</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="250">output file</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="251">input files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="252"><code>-o <var>fl_out</var></code></indexterm></cindex>
 The <code>-o foo.nc</code> switch ensures that the input files supplied by
 <command>xargs</command> are not confused with the output file name. 
 <command>xargs</command> does, unfortunately, have its own limit (usually about 
@@ -2343,7 +2357,7 @@ reaches this internal limit.
 When this occurs, use either the <code>stdin</code> method above, or the
 symbolic link presented next.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="252">symbolic links</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="253">symbolic links</indexterm></cindex>
 <para>Even when its internal limits have not been reached, the
 <command>xargs</command> technique may not be sophisticated enough to handle 
 all situations. 
@@ -2352,12 +2366,12 @@ of filtering input filenames, and any number of filenames.
 The technique of last resort is to write a script that creates symbolic 
 links between the irregular input filenames and a set of regular,
 arithmetic filenames that the <samp>-n <var>loop</var></samp> switch understands. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="253">Perl</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="254">Perl</indexterm></cindex>
 For example, the following Perl script creates a monotonically
 enumerated symbolic link to up to one million <file>.nc</file> files in a
 directory. If there are 999,999 netCDF files present, the links are
 named <file>000001.nc</file> to <file>999999.nc</file>: 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="254"><code>-n <var>loop</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="255"><code>-n <var>loop</var></code></indexterm></cindex>
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
 # Create enumerated symbolic links
@@ -2372,7 +2386,7 @@ ncecat -n 999999,6,1 000001.nc foo.nc
 automatically generate the filnames of the symbolic links.
 This circumvents any <acronym><acronymword>OS</acronymword></acronym> and shell limits on command line size.
 The symbolic links are easily removed once <acronym><acronymword>NCO</acronymword></acronym> is finished.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="255"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="256"><code>history</code></indexterm></cindex>
 One drawback to this method is that the <code>history</code> attribute
 (<pxref label="History-Attribute"><xrefnodename>History Attribute</xrefnodename></pxref>) retains the filename list of the symbolic
 links, rather than the data files themselves. 
@@ -2382,9 +2396,9 @@ date.
 </section>
 <node name="Large-Datasets" spaces=" "><nodename>Large Datasets</nodename><nodenext spaces=" ">Memory Requirements</nodenext><nodeprev spaces=" ">Large Numbers of Files</nodeprev><nodeup spaces=" ">Strategies</nodeup></node>
 <section spaces=" "><sectiontitle>Large Datasets</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="256">large datasets</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="257"><acronym><acronymword>LFS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="258">Large File Support</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="257">large datasets</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="258"><acronym><acronymword>LFS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="259">Large File Support</indexterm></cindex>
 
 <para><dfn>Large datasets</dfn> are those files that are comparable in size to the
 amount of random access memory (<acronym><acronymword>RAM</acronymword></acronym>) in your computer.
@@ -2392,7 +2406,7 @@ Many users of <acronym><acronymword>NCO</acronymword></acronym> work with files
 Files this large not only push the current edge of storage technology, 
 they present special problems for programs which attempt to access the  
 entire file at once, such as <command>nces</command> and <command>ncecat</command>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="259">swap space</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="260">swap space</indexterm></cindex>
 If you work with a <w>300 MB</w> files on a machine with only <w>32 MB</w> of
 memory then you will need large amounts of swap space (virtual memory on
 disk) and <acronym><acronymword>NCO</acronymword></acronym> will work slowly, or even fail. 
@@ -2411,12 +2425,12 @@ divide the problem into pieces solvable in memory-limited situations.
 <html endspaces=" ">
 <a name="ulimit"></a> <!&textndash; http://nco.sf.net/nco.html#ulimit &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="260">server</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="261"><acronym><acronymword>UNICOS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="262">Cray</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="263"><acronym><acronymword>GNU</acronymword></acronym>/Linux</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="264"><code>ulimit</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="265"><code>core dump</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="261">server</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="262"><acronym><acronymword>UNICOS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="263">Cray</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="264"><acronym><acronymword>GNU</acronymword></acronym>/Linux</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="265"><code>ulimit</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="266"><code>core dump</code></indexterm></cindex>
 <para>If your local machine has problems working with large files, try running
 <acronym><acronymword>NCO</acronymword></acronym> from a more powerful machine, such as a network server.  
 If you get a memory-related core dump 
@@ -2431,11 +2445,11 @@ resources exist yet where system administrators felt it wise to prevent
 any individual user from consuming too much of resource. 
 Certain machine architectures, e.g., Cray <acronym><acronymword>UNICOS</acronymword></acronym>, have special 
 commands which allow one to increase the amount of interactive memory.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="266"><code>ilimit</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="267"><code>ilimit</code></indexterm></cindex>
 On Cray systems, try to increase the available memory with the
 <code>ilimit</code> command.    
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="267">speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="268">speed</indexterm></cindex>
 <para>The speed of the <acronym><acronymword>NCO</acronymword></acronym> operators also depends on file size.
 When processing large files the operators may appear to hang, or do
 nothing, for large periods of time.
@@ -2444,12 +2458,12 @@ activate a more verbose output mode.
 This is accomplished by supplying a number greater <w>than 0</w> to the
 <samp>-D <var>debug-level</var></samp> (or <samp>--debug-level</samp>, or
 <samp>--dbg_lvl</samp>) switch.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="268"><code>-D <var>debug-level</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="269"><code>--debug-level <var>debug-level</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="270"><code>--dbg_lvl <var>debug-level</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="271"><var>debug-level</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="272"><var>dbg_lvl</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="273">debugging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="269"><code>-D <var>debug-level</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="270"><code>--debug-level <var>debug-level</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="271"><code>--dbg_lvl <var>debug-level</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="272"><var>debug-level</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="273"><var>dbg_lvl</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="274">debugging</indexterm></cindex>
 When the <var>debug-level</var> is nonzero, the operators report their
 current status to the terminal through the <var>stderr</var> facility.
 Using <samp>-D</samp> does not slow the operators down. 
@@ -2465,14 +2479,14 @@ multi-file <acronym><acronymword>NCO</acronymword></acronym> operators consume i
 </section>
 <node name="Memory-Requirements" spaces=" "><nodename>Memory Requirements</nodename><nodenext spaces=" ">Performance</nodenext><nodeprev spaces=" ">Large Datasets</nodeprev><nodeup spaces=" ">Strategies</nodeup></node>
 <section spaces=" "><sectiontitle>Memory Requirements</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="274">memory requirements</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="275">memory available</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="276"><acronym><acronymword>RAM</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="277">swap space</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="278">peak memory usage</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="279"><code>--ram_all</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="280"><code>--open_ram</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="281"><code>--diskless_all</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="275">memory requirements</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="276">memory available</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="277"><acronym><acronymword>RAM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="278">swap space</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="279">peak memory usage</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="280"><code>--ram_all</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="281"><code>--open_ram</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="282"><code>--diskless_all</code></indexterm></cindex>
 
 <para>Many people use <acronym><acronymword>NCO</acronymword></acronym> on gargantuan files which dwarf the
 memory available (free <acronym><acronymword>RAM</acronymword></acronym> plus swap space) even on today&textrsquo;s powerful
@@ -2482,9 +2496,9 @@ so that their scripts do not have to tediously cut files into smaller
 pieces that fit into memory. 
 We commend these greedy users for pushing <acronym><acronymword>NCO</acronymword></acronym> to its limits!
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="282">threads</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="283">OpenMP</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="284">shared memory machines</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="283">threads</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="284">OpenMP</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="285">shared memory machines</indexterm></cindex>
 <para>This section describes the memory <acronym><acronymword>NCO</acronymword></acronym> requires during
 operation.
 The required memory is based on the underlying algorithms.
@@ -2504,7 +2518,7 @@ the exception of <command>ncap2</command>.
 <node name="Single-and-Multi_002dfile-Operators" spaces=" "><nodename>Single and Multi-file Operators</nodename><nodenext spaces=" ">Memory for ncap2</nodenext><nodeprev spaces=" ">Memory Requirements</nodeprev><nodeup spaces=" ">Memory Requirements</nodeup></node>
 <subsection spaces=" "><sectiontitle>Single and Multi-file Operators</sectiontitle>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="285">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="286">multi-file operators</indexterm></cindex>
 <para>The multi-file operators currently comprise the record operators,
 <command>ncra</command> and <command>ncrcat</command>, and the ensemble operators,
 <command>nces</command> and <command>ncecat</command>. 
@@ -2594,22 +2608,22 @@ If weights and masks are <emph>not</emph> specified
 then <command>ncwa</command> requirements drop to <math>MS <= 3VT</math>
 (one input variable, one tally array, and the output variable). 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="286">OpenMP</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="287">threads</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="287">OpenMP</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="288">threads</indexterm></cindex>
 <para>The above memory requirements must be multiplied by the number of
 threads <var>thr_nbr</var> (<pxref label="OpenMP-Threading"><xrefnodename>OpenMP Threading</xrefnodename></pxref>).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="288"><code>-t <var>thr_nbr</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="289"><code>-t <var>thr_nbr</var></code></indexterm></cindex>
 If this causes problems then reduce (with <samp>-t <var>thr_nbr</var></samp>) the
 number of threads.
 </para>
 </subsection>
 <node name="Memory-for-ncap2" spaces=" "><nodename>Memory for ncap2</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Single and Multi-file Operators</nodeprev><nodeup spaces=" ">Memory Requirements</nodeup></node>
 <subsection spaces=" "><sectiontitle>Memory for <command>ncap2</command></sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="289"><command>ncap2</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="290">binary operations</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="291">unary operations</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="292">memory leaks</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="293">left hand casting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="290"><command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="291">binary operations</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="292">unary operations</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="293">memory leaks</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="294">left hand casting</indexterm></cindex>
 <para><command>ncap2</command> has unique memory requirements due its ability to process
 arbitrarily long scripts of any complexity.
 All scripts acceptable to <command>ncap2</command> are ultimately processed as a
@@ -2644,8 +2658,8 @@ interested in receiving a detailed bug report.
 <node name="Performance" spaces=" "><nodename>Performance</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Memory Requirements</nodeprev><nodeup spaces=" ">Strategies</nodeup></node>
 <section spaces=" "><sectiontitle>Performance</sectiontitle>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="294">papers</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="295">overview</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="295">papers</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="296">overview</indexterm></cindex>
 <para>An overview of <acronym><acronymword>NCO</acronymword></acronym> capabilities as of about 2006 is in
 Zender, C. S. (2008), 
 &textldquo;Analysis of Self-describing Gridded Geoscience Data with netCDF Operators (NCO)&textrdquo;,
@@ -2653,8 +2667,8 @@ Environ. Modell. Softw., doi:10.1016/j.envsoft.2008.03.004.
 This paper is also available at
 <url><urefurl>http://dust.ess.uci.edu/ppr/ppr_Zen08.pdf</urefurl></url>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="296">scaling</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="297">performance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="297">scaling</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="298">performance</indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> performance and scaling for arithmetic operations is
 described in 
 Zender, C. S., and H. J. Mangalam (2007), 
@@ -2668,35 +2682,35 @@ This paper is also available at
 that can limit its performance:
 </para><enumerate first="1" endspaces=" ">
 <listitem> 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="298">buffering</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="299">buffering</indexterm></cindex>
 <para>No data buffering is performed during <command>nc_get_var</command> and
 <command>nc_put_var</command> operations.  
-<cindex index="cp" spaces=" "><indexterm index="cp" number="299">performance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="300">operator speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="301">speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="302">execution time</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="300">performance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="301">operator speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="302">speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="303">execution time</indexterm></cindex>
 Hyperslabs too large too hold in core memory will suffer substantial
 performance penalties because of this. 
 </para>
 </listitem><listitem> 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="303">monotonic coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="304">monotonic coordinates</indexterm></cindex>
 <para>Since coordinate variables are assumed to be monotonic, the search for 
 bracketing the user-specified limits should employ a quicker algorithm,
 like bisection, than the two-sided incremental search currently
 implemented.  
 </para>
 </listitem><listitem> 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="304"><var>C_format</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="305"><var>FORTRAN_format</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="306"><var>signedness</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="307"><var>scale_format</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="308"><var>add_offset</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="305"><var>C_format</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="306"><var>FORTRAN_format</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="307"><var>signedness</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="308"><var>scale_format</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="309"><var>add_offset</var></indexterm></cindex>
 <para><var>C_format</var>, <var>FORTRAN_format</var>, <var>signedness</var>,
 <var>scale_format</var> and <var>add_offset</var> attributes are ignored by
 <command>ncks</command> when printing variables to screen. 
 </para>
 </listitem><listitem>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="309">Yorick</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="310">Yorick</indexterm></cindex>
 <para>In the late 1990s it was discovered that some random access operations
 on large files on certain architectures (e.g., <acronym><acronymword>UNICOS</acronymword></acronym>) were
 much slower with <acronym><acronymword>NCO</acronymword></acronym> than with similar operations performed
@@ -2713,14 +2727,14 @@ been reduced or eliminated.
 </html>
 </section>
 </chapter>
-<node name="Common-features" spaces=" "><nodename>Common features</nodename><nodenext spaces=" ">Operator Reference Manual</nodenext><nodeprev spaces=" ">Strategies</nodeprev><nodeup spaces=" ">Top</nodeup></node>
-<chapter spaces=" "><sectiontitle>NCO Features</sectiontitle>
+<node name="Shared-features" spaces=" "><nodename>Shared features</nodename><nodenext spaces=" ">Reference Manual</nodenext><nodeprev spaces=" ">Strategies</nodeprev><nodeup spaces=" ">Top</nodeup></node>
+<chapter spaces=" "><sectiontitle>Shared Features</sectiontitle>
 
 <para>Many features have been implemented in more than one operator and are
 described here for brevity. 
 The description of each feature is preceded by a box listing the
 operators for which the feature is implemented. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="310">command line switches</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="311">command line switches</indexterm></cindex>
 Command line switches for a given feature are consistent across all
 operators wherever possible. 
 If no &textldquo;key switches&textrdquo; are listed for a feature, then that particular
@@ -2753,6 +2767,7 @@ feature is automatic and cannot be controlled by the user.
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Multiple Record Dimensions</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Missing Values</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Chunking</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Compression</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Deflation</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">MD5 digests</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Buffer sizes</menunode><menudescription><pre xml:space="preserve">
@@ -2771,14 +2786,14 @@ feature is automatic and cannot be controlled by the user.
 <html endspaces=" ">
 <a name="i18n"></a> <!&textndash; http://nco.sf.net/nco.html#i18n &textndash;>
 </html>
-<node name="Internationalization" spaces=" "><nodename>Internationalization</nodename><nodenext spaces=" ">Metadata Optimization</nodenext><nodeprev spaces=" ">Common features</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Internationalization" spaces=" "><nodename>Internationalization</nodename><nodenext spaces=" ">Metadata Optimization</nodenext><nodeprev spaces=" ">Shared features</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Internationalization</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="311">Internationalization</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="312">I18N</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="312">Internationalization</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="313">I18N</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 </para></cartouche>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="313">L10N</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="314">L10N</indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> support for <dfn>internationalization</dfn> of textual input
 and output (e.g., Warning messages) is nascent.
 We introduced the first foreign language string catalogues (French and
@@ -2793,16 +2808,16 @@ favorite languages.
 <a name="hdr_pad"></a> <!&textndash; http://nco.sf.net/nco.html#hdr_pad &textndash;>
 </html>
 </section>
-<node name="Metadata-Optimization" spaces=" "><nodename>Metadata Optimization</nodename><nodenext spaces=" ">OpenMP Threading</nodenext><nodeprev spaces=" ">Internationalization</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Metadata-Optimization" spaces=" "><nodename>Metadata Optimization</nodename><nodenext spaces=" ">OpenMP Threading</nodenext><nodeprev spaces=" ">Internationalization</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Metadata Optimization</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="314">metadata optimization</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="315">performance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="316">operator speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="317">speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="318">execution time</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="319"><code>nc__enddef()</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="320"><code>--hdr_pad <var>hdr_pad</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="321"><code>--header_pad <var>hdr_pad</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="315">metadata optimization</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="316">performance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="317">operator speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="318">speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="319">execution time</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="320"><code>nc__enddef()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="321"><code>--hdr_pad <var>hdr_pad</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="322"><code>--header_pad <var>hdr_pad</var></code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: None&linebreak;
@@ -2834,18 +2849,18 @@ library (<pxref label="File-Formats-and-Conversion"><xrefnodename>File Formats a
 <a name="openmp"></a> <!&textndash; http://nco.sf.net/nco.html#openmp &textndash;>
 </html>
 </section>
-<node name="OpenMP-Threading" spaces=" "><nodename>OpenMP Threading</nodename><nodenext spaces=" ">Command Line Options</nodenext><nodeprev spaces=" ">Metadata Optimization</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="OpenMP-Threading" spaces=" "><nodename>OpenMP Threading</nodename><nodenext spaces=" ">Command Line Options</nodenext><nodeprev spaces=" ">Metadata Optimization</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>OpenMP Threading</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="322">OpenMP</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="323">threads</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="324"><acronym><acronymword>SMP</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="325">shared memory parallelism</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="326">parallelism</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="327"><code>nco_openmp_thread_number</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="328"><code>--thr_nbr <var>thr_nbr</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="329"><code>--threads <var>thr_nbr</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="330"><code>--omp_num_threads <var>thr_nbr</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="331"><code>-t <var>thr_nbr</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="323">OpenMP</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="324">threads</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="325"><acronym><acronymword>SMP</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="326">shared memory parallelism</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="327">parallelism</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="328"><code>nco_openmp_thread_number</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="329"><code>--thr_nbr <var>thr_nbr</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="330"><code>--threads <var>thr_nbr</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="331"><code>--omp_num_threads <var>thr_nbr</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="332"><code>-t <var>thr_nbr</var></code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncap2</command>, <command>ncbo</command>, <command>nces</command>, <command>ncecat</command>,
 <command>ncflint</command>, <command>ncpdq</command>, <command>ncra</command>, <command>ncrcat</command>,
@@ -2885,13 +2900,13 @@ Implementation of the parallel output calls in <acronym><acronymword>NCO</acrony
 goal of our current funding and would require new volunteers or funding.  
 </para></cartouche>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="332"><var>thr_nbr</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="333"><code>OMP_NUM_THREADS</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="334"><command>ncrcat</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="335"><command>ncwa</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="336"><command>ncap2</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="337"><command>ncpdq</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="338">large datasets</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="333"><var>thr_nbr</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="334"><code>OMP_NUM_THREADS</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="335"><command>ncrcat</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="336"><command>ncwa</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="337"><command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="338"><command>ncpdq</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="339">large datasets</indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> may modify <var>thr_nbr</var> according to its own internal
 settings before it requests any threads from the system.
 Certain operators contain hard-code limits to the number of threads they
@@ -2920,8 +2935,8 @@ Hence we restrict <math><var>thr_nbr</var> <= 4</math> for all operators.
 We encourage users to play with these limits (edit file
 <file>nco_omp.c</file>) and send us their feedback.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="339">debugging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="340"><var>dbg_lvl</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="340">debugging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="341"><var>dbg_lvl</var></indexterm></cindex>
 <para>Once the initial <var>thr_nbr</var> has been modified for any
 operator-specific limits, <acronym><acronymword>NCO</acronymword></acronym> requests the system to allocate 
 a team of <var>thr_nbr</var> threads for the body of the code.
@@ -2936,23 +2951,23 @@ This attribute contains the number of threads the operator used to
 process the input files. 
 This information helps to verify that the answers with threaded and
 non-threaded operators are equal to within machine precision.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="341">benchmarks</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="342">benchmarks</indexterm></cindex>
 This information is also useful for benchmarking.
 </para>
 <html endspaces=" ">
 <a name="cmd_ln"></a> <!&textndash; http://nco.sf.net/nco.html#cmd_ln &textndash;>
 </html>
 </section>
-<node name="Command-Line-Options" spaces=" "><nodename>Command Line Options</nodename><nodenext spaces=" ">Specifying Input Files</nodenext><nodeprev spaces=" ">OpenMP Threading</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Command-Line-Options" spaces=" "><nodename>Command Line Options</nodename><nodenext spaces=" ">Specifying Input Files</nodenext><nodeprev spaces=" ">OpenMP Threading</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Command Line Options</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="342">command line options</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="343">command line options</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 </para></cartouche>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="343"><acronym><acronymword>POSIX</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="344"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="345"><acronym><acronymword>GNU</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="346">switches</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="344"><acronym><acronymword>POSIX</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="345"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="346"><acronym><acronymword>GNU</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="347">switches</indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> achieves flexibility by using <dfn>command line options</dfn>.
 These options are implemented in all traditional <acronym><acronymword>UNIX</acronymword></acronym> commands 
 as single letter <dfn>switches</dfn>, e.g., <samp>ls -l</samp>.
@@ -2969,13 +2984,13 @@ More importantly, mnemonics for single letter options are often
 non-intuitive so that long options provide a more natural way of
 expressing intent.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="347">long options</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="348">long options</indexterm></cindex>
 <para>Extended options, also called long options, are implemented using the
 system-supplied <file>getopt.h</file> header file, if possible. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="348"><code>BSD</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="349"><code>getopt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="350"><code>getopt_long</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="351"><file>getopt.h</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="349"><code>BSD</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="350"><code>getopt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="351"><code>getopt_long</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="352"><file>getopt.h</file></indexterm></cindex>
 This provides the <command>getopt_long</command> function to <acronym><acronymword>NCO</acronymword></acronym>
 <footnote spaces="\n"><para>If a <command>getopt_long</command> function cannot be found on the system, 
 <acronym><acronymword>NCO</acronymword></acronym> will use the <command>getopt_long</command> from the
@@ -2984,8 +2999,8 @@ This provides the <command>getopt_long</command> function to <acronym><acronymwo
 This is <acronym><acronymword>BSD</acronymword></acronym>-licensed software available from  
 <uref><urefurl>http://www.geocities.com/ResearchTriangle/Node/9405/#my_getopt</urefurl></uref>.</para></footnote>. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="352"><code>-D <var>debug-level</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="353"><code>--dbg_lvl <var>debug-level</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="353"><code>-D <var>debug-level</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="354"><code>--dbg_lvl <var>debug-level</var></code></indexterm></cindex>
 <para>The syntax of <dfn>short options</dfn> (single letter options) is
 <kbd>-<var>key</var> <var>value</var></kbd> (dash-key-space-value).
 Here, <var>key</var> is the single letter option name, e.g., 
@@ -3053,21 +3068,21 @@ name that most suits their taste.
 <a name="input"></a> <!&textndash; http://nco.sf.net/nco.html#input &textndash;>
 </html>
 </section>
-<node name="Specifying-Input-Files" spaces=" "><nodename>Specifying Input Files</nodename><nodenext spaces=" ">Specifying Output Files</nodenext><nodeprev spaces=" ">Command Line Options</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Specifying-Input-Files" spaces=" "><nodename>Specifying Input Files</nodename><nodenext spaces=" ">Specifying Output Files</nodenext><nodeprev spaces=" ">Command Line Options</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Specifying Input Files</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="354">input files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="355">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="356">regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="357">wildcards</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="358"><code>NINTAP</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="359">Processor, <acronym><acronymword>CCM</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="360"><acronym><acronymword>CCM</acronymword></acronym> Processor</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="361"><code>-n <var>loop</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="362"><code>--nintap <var>loop</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="363"><code>-p <var>input-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="364"><code>--pth <var>input-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="365"><code>--path <var>input-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="366"><var>input-path</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="355">input files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="356">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="357">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="358">wildcards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="359"><code>NINTAP</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="360">Processor, <acronym><acronymword>CCM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="361"><acronym><acronymword>CCM</acronymword></acronym> Processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="362"><code>-n <var>loop</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="363"><code>--nintap <var>loop</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="364"><code>-p <var>input-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="365"><code>--pth <var>input-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="366"><code>--path <var>input-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="367"><var>input-path</var></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability (<code>-n</code>): <command>nces</command>, <command>ncecat</command>, <command>ncra</command>, <command>ncrcat</command>&linebreak;
 Availability (<code>-p</code>): All operators&linebreak;
@@ -3077,7 +3092,7 @@ Long options: <samp>--nintap</samp>, <samp>--pth</samp>, <samp>--path</samp>&lin
 <para>It is important that users be able to specify multiple input files
 without typing every filename in full, often a tedious task even
 by graduate student standards.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="367"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="368"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
 There are four different ways of specifying input files to <acronym><acronymword>NCO</acronymword></acronym>:
 explicitly typing each, using <acronym><acronymword>UNIX</acronymword></acronym> shell wildcards, and using
 the <acronym><acronymword>NCO</acronymword></acronym> <samp>-n</samp> and <samp>-p</samp> switches (or their long option
@@ -3126,8 +3141,8 @@ for many years by Lawrence Buja at <acronym><acronymword>NCAR</acronymword></acr
 the late 1990s.
 <acronym><acronymword>NCO</acronymword></acronym> stole some ideas, like <code>NINTAP</code>-functionality,
 from the <acronym><acronymword>CCM</acronymword></acronym> Processor capabilities.</para></footnote>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="368">multi-file operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="369">files, multiple</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="369">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="370">files, multiple</indexterm></cindex>
 This option is only available with the <dfn>multi-file operators</dfn>:
 <command>ncra</command>, <command>ncrcat</command>, <command>nces</command>, and <command>ncecat</command>.
 By definition, multi-file operators are able to process an arbitrary
@@ -3164,8 +3179,8 @@ are ignored by <acronym><acronymword>NCO</acronymword></acronym> as it uses the
 locate, evaluate, and compute the <var>numeric_suffix</var> component of
 filenames. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="370">wrapped filenames</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="371">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="371">wrapped filenames</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="372">climate model</indexterm></cindex>
 <para>Recently the <samp>-n</samp> option has been extended to allow convenient
 specification of filenames with &textldquo;circular&textrdquo; characteristics.
 This means it is now possible for <acronym><acronymword>NCO</acronymword></acronym> to automatically
@@ -3211,15 +3226,15 @@ automatically generate, in order, the filenames <file>85_12.nc</file>,
 <a name="output"></a> <!&textndash; http://nco.sf.net/nco.html#output &textndash;>
 </html>
 </section>
-<node name="Specifying-Output-Files" spaces=" "><nodename>Specifying Output Files</nodename><nodenext spaces=" ">Remote storage</nodenext><nodeprev spaces=" ">Specifying Input Files</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Specifying-Output-Files" spaces=" "><nodename>Specifying Output Files</nodename><nodenext spaces=" ">Remote storage</nodenext><nodeprev spaces=" ">Specifying Input Files</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Specifying Output Files</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="372">output file</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="373">input files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="374">positional arguments</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="375">command line switches</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="376"><code>-o <var>fl_out</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="377"><code>--output <var>fl_out</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="378"><code>--fl_out <var>fl_out</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="373">output file</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="374">input files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="375">positional arguments</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="376">command line switches</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="377"><code>-o <var>fl_out</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="378"><code>--output <var>fl_out</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="379"><code>--fl_out <var>fl_out</var></code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: <samp>-o</samp>&linebreak;
@@ -3237,23 +3252,23 @@ line switch argument method, <samp>-o <var>fl_out</var></samp>.
 <para>Specifying <var>fl_out</var> with a switch, rather than as a positional
 argument, allows <var>fl_out</var> to precede input files in the argument
 list. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="379">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="380">multi-file operators</indexterm></cindex>
 This is particularly useful with multi-file operators for three reasons.
 Multi-file operators may be invoked with hundreds (or more) filenames.
 Visual or automatic location of <var>fl_out</var> in such a list is
 difficult when the only syntactic distinction between input and output
 files is their position.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="380"><command>xargs</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="381">input files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="381"><command>xargs</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="382">input files</indexterm></cindex>
 Second, specification of a long list of input files may be difficult
 (<pxref label="Large-Numbers-of-Files"><xrefnodename>Large Numbers of Files</xrefnodename></pxref>).
 Making the input file list the final argument to an operator facilitates 
 using <command>xargs</command> for this purpose.
-Some alternatives to <command>xargs</command> are very ugly and undesirable.
+Some alternatives to <command>xargs</command> are heinous and undesirable.
 Finally, many users are more comfortable specifying output files 
 with <samp>-o <var>fl_out</var></samp> near the beginning of an argument list.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="382">compilers</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="383">linkers</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="383">compilers</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="384">linkers</indexterm></cindex>
 Compilers and linkers are usually invoked this way.
 </para>
 <para>Users should specify <var>fl_out</var> using either (not both) method.
@@ -3265,28 +3280,28 @@ precedence.
 <a name="rmt"></a> <!&textndash; http://nco.sf.net/nco.html#rmt &textndash;>
 </html>
 </section>
-<node name="Remote-storage" spaces=" "><nodename>Remote storage</nodename><nodenext spaces=" ">Retaining Retrieved Files</nodenext><nodeprev spaces=" ">Specifying Output Files</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Remote-storage" spaces=" "><nodename>Remote storage</nodename><nodenext spaces=" ">Retaining Retrieved Files</nodenext><nodeprev spaces=" ">Specifying Output Files</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Accessing Remote Files</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="384"><code>rcp</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="385"><code>scp</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="386"><file>.rhosts</file></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="387"><acronym><acronymword>NCAR MSS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="388"><acronym><acronymword>MSS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="389">Mass Store System</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="390"><acronym><acronymword>URL</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="391"><code>ftp</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="392"><code>sftp</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="393"><code>wget</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="394">remote files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="395">synchronous file access</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="396">asynchronous file access</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="397"><code>--pth <var>input-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="398"><code>--path <var>input-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="399"><code>--lcl <var>output-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="400"><code>--local <var>output-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="401"><code>-l <var>output-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="402"><file>.netrc</file></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="403"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="385"><code>rcp</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="386"><code>scp</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="387"><file>.rhosts</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="388"><acronym><acronymword>NCAR MSS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="389"><acronym><acronymword>MSS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="390">Mass Store System</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="391"><acronym><acronymword>URL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="392"><code>ftp</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="393"><code>sftp</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="394"><code>wget</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="395">remote files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="396">synchronous file access</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="397">asynchronous file access</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="398"><code>--pth <var>input-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="399"><code>--path <var>input-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="400"><code>--lcl <var>output-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="401"><code>--local <var>output-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="402"><code>-l <var>output-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="403"><file>.netrc</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="404"><code>history</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: <samp>-p</samp>, <samp>-l</samp>&linebreak;
@@ -3357,11 +3372,11 @@ to the remote machine.
 This means that <file>~/.rhosts</file> or <file>~/ssh/authorized_keys</file> must
 be set accordingly on both local and remote machines.   
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="404"><acronym><acronymword>HPSS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="405"><command>hsi</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="406"><command>msrcp</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="407"><command>msread</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="408"><command>nrnet</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="405"><acronym><acronymword>HPSS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="406"><command>hsi</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="407"><command>msrcp</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="408"><command>msread</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="409"><command>nrnet</command></indexterm></cindex>
 <html endspaces=" ">
 <a name="hpss"></a> <!&textndash; http://nco.sf.net/nco.html#hpss &textndash;>
 <a name="HPSS"></a> <!&textndash; http://nco.sf.net/nco.html#HPSS &textndash;>
@@ -3422,10 +3437,10 @@ The sixth command works if your local version of <acronym><acronymword>NCO</acro
 or if the remote file is accessible via <command>wget</command>.
 The above commands can be rewritten using the <samp>-p <var>input-path</var></samp> 
 option as follows: 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="409"><code>-p <var>input-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="410"><var>input-path</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="411"><code>-l <var>output-path</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="412"><var>output-path</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="410"><code>-p <var>input-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="411"><var>input-path</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="412"><code>-l <var>output-path</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="413"><var>output-path</var></indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncks -p ftp://dust.ess.uci.edu/pub/zender/nco -l . in.nc
 ncks -p sftp://dust.ess.uci.edu:/home/ftp/pub/zender/nco -l . in.nc
@@ -3439,7 +3454,7 @@ ncks -p http://thredds-test.ucar.edu/thredds/dodsC/testdods \
 <para>Using <samp>-p</samp> is recommended because it clearly separates the
 <var>input-path</var> from the filename itself, sometimes called the
 <dfn>stub</dfn>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="413">stub</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="414">stub</indexterm></cindex>
 When <var>input-path</var> is not explicitly specified using <samp>-p</samp>,
 <acronym><acronymword>NCO</acronymword></acronym> internally generates an <var>input-path</var> from the first
 input filename.  
@@ -3477,17 +3492,17 @@ syntactically more clear.
 </html>
 <node name="OPeNDAP" spaces=" "><nodename>OPeNDAP</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Remote storage</nodeprev><nodeup spaces=" ">Remote storage</nodeup></node>
 <subsection spaces=" "><sectiontitle><acronym><acronymword>OPeNDAP</acronymword></acronym></sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="414"><acronym><acronymword>DAP</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="415"><acronym><acronymword>DODS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="416"><acronym><acronymword>HTTP</acronymword></acronym> protocol</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="417"><env>DODS_ROOT</env></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="418">Distributed Oceanographic Data System</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="419">oceanography</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="420">data access protocol</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="421">Open-source Project for a Network Data Access Protocol</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="422"><acronym><acronymword>OPeNDAP</acronymword></acronym>.</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="423">server</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="424">client-server</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="415"><acronym><acronymword>DAP</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="416"><acronym><acronymword>DODS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="417"><acronym><acronymword>HTTP</acronymword></acronym> protocol</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="418"><env>DODS_ROOT</env></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="419">Distributed Oceanographic Data System</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="420">oceanography</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="421">data access protocol</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="422">Open-source Project for a Network Data Access Protocol</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="423"><acronym><acronymword>OPeNDAP</acronymword></acronym>.</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="424">server</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="425">client-server</indexterm></cindex>
 <para>The Distributed Oceanographic Data System (<acronym><acronymword>DODS</acronymword></acronym>) provides
 useful replacements for common data interface libraries like netCDF.
 The <acronym><acronymword>DODS</acronymword></acronym> versions of these libraries implement network
@@ -3503,9 +3518,9 @@ We use the terms <acronym><acronymword>DODS</acronymword></acronym> and <acronym
 and often write <acronym><acronymword>OPeNDAP</acronymword></acronym>/<acronym><acronymword>DODS</acronymword></acronym> for now. 
 In the future we will deprecate <acronym><acronymword>DODS</acronymword></acronym> in favor of
 <acronym><acronymword>DAP</acronymword></acronym> or <acronym><acronymword>OPeNDAP</acronymword></acronym>, as appropriate
-<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="425"><acronym><acronymword>NVODS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="426">National Virtual Ocean Data System</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="427">open source</indexterm></cindex>
+<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="426"><acronym><acronymword>NVODS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="427">National Virtual Ocean Data System</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="428">open source</indexterm></cindex>
 <para><acronym><acronymword>DODS</acronymword></acronym> is being deprecated because it is ambiguous, referring
 both to a protocol and to a collection of (oceanography) data.
 It is superceded by two terms.
@@ -3522,7 +3537,7 @@ Got it yet?</para></footnote>.
 </para>
 <para><acronym><acronymword>NCO</acronymword></acronym> may be <acronym><acronymword>DAP</acronymword></acronym>-enabled by linking
 <acronym><acronymword>NCO</acronymword></acronym> to the <acronym><acronymword>OPeNDAP</acronymword></acronym> libraries. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="428"><file>Makefile</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="429"><file>Makefile</file></indexterm></cindex>
 This is described in the <acronym><acronymword>OPeNDAP</acronymword></acronym> documentation and
 automagically implemented in <acronym><acronymword>NCO</acronymword></acronym> build mechanisms
 <footnote spaces="\n"><para>Automagic support for <acronym><acronymword>DODS</acronymword></acronym> version 3.2.x was deprecated in 
@@ -3561,8 +3576,8 @@ Check there and on the
 to learn more about the extensive capabilities of <acronym><acronymword>OPeNDAP</acronymword></acronym>
 <footnote spaces="\n"><para>We are most familiar with the <acronym><acronymword>OPeNDAP</acronymword></acronym> ability to enable 
 network-transparent data access.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="429">constraint expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="430">server-side processing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="430">constraint expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="431">server-side processing</indexterm></cindex>
 <acronym><acronymword>OPeNDAP</acronymword></acronym> has many other features, including sophisticated
 hyperslabbing and server-side processing via <dfn>constraint expressions</dfn>.
 If you know more about this, please consider writing a section
@@ -3617,8 +3632,8 @@ http://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/ncep.reanalysis.dailyavgs/su
   pres.sfc.1969.nc ~/foo.nc
 </pre></example>
 <noindent></noindent>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="431">packing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="432">unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="432">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="433">unpacking</indexterm></cindex>
 <para>All with one command!
 The data in this particular input file also happen to be packed
 (<pxref label="Methods-and-functions"><xrefnodename>Methods and functions</xrefnodename></pxref>), although this complication is
@@ -3630,7 +3645,7 @@ before attempting arithmetic.
 Input files are first copied to the local machine, then processed.
 The <acronym><acronymword>OPeNDAP</acronymword></acronym> server performs data access, hyperslabbing,
 and transfer to the local machine.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="433">I/O</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="434">I/O</indexterm></cindex>
 This allows the I/O to appear to <acronym><acronymword>NCO</acronymword></acronym> as if the input files
 were local.  
 The local machine performs all arithmetic operations.
@@ -3675,14 +3690,14 @@ which to test <acronym><acronymword>NCO</acronymword></acronym> are welcome.
 </html>
 </subsection>
 </section>
-<node name="Retaining-Retrieved-Files" spaces=" "><nodename>Retaining Retrieved Files</nodename><nodenext spaces=" ">File Formats and Conversion</nodenext><nodeprev spaces=" ">Remote storage</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Retaining-Retrieved-Files" spaces=" "><nodename>Retaining Retrieved Files</nodename><nodenext spaces=" ">File Formats and Conversion</nodenext><nodeprev spaces=" ">Remote storage</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Retaining Retrieved Files</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="434">file deletion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="435">file removal</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="436">file retention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="437"><code>-R</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="438"><code>--rtn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="439"><code>--retain</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="435">file deletion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="436">file removal</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="437">file retention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="438"><code>-R</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="439"><code>--rtn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="440"><code>--retain</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: <samp>-R</samp>&linebreak;
@@ -3706,15 +3721,15 @@ This allows <command>ncks</command> to retrieve remote files without
 automatically trying to print them.
 See <ref label="ncks-netCDF-Kitchen-Sink"><xrefnodename>ncks netCDF Kitchen Sink</xrefnodename></ref>, for more details.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="440"><acronym><acronymword>FTP</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="441"><acronym><acronymword>SSH</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="442"><acronym><acronymword>msrcp</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="441"><acronym><acronymword>FTP</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="442"><acronym><acronymword>SSH</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="443"><acronym><acronymword>msrcp</acronymword></acronym></indexterm></cindex>
 <para>Note that the remote retrieval features of <acronym><acronymword>NCO</acronymword></acronym> can always be
 used to retrieve <emph>any</emph> file, including non-netCDF files, via
 <command>SSH</command>, anonymous <acronym><acronymword>FTP</acronymword></acronym>, or <command>msrcp</command>.
 Often this method is quicker than using a browser, or running an
 <acronym><acronymword>FTP</acronymword></acronym> session from a shell window yourself.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="443">server</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="444">server</indexterm></cindex>
 For example, say you want to obtain a <acronym><acronymword>JPEG</acronymword></acronym> file from a weather
 server. 
 </para><example endspaces=" ">
@@ -3728,8 +3743,8 @@ When <command>ncks</command> attempts to read the local copy of <file>storm.jpg<
 as a netCDF file, it fails and exits, leaving  <file>storm.jpg</file> in
 the current directory.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="444"><acronym><acronymword>DODS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="445">server</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="445"><acronym><acronymword>DODS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="446">server</indexterm></cindex>
 <para>If your <acronym><acronymword>NCO</acronymword></acronym> is <acronym><acronymword>DAP</acronymword></acronym>-enabled (<pxref label="OPeNDAP"><xrefnodename>OPeNDAP</xrefnodename></pxref>),
 then you may use <acronym><acronymword>NCO</acronymword></acronym> to retrieve any files (including netCDF,
 <acronym><acronymword>HDF</acronymword></acronym>, etc.) served by an <acronym><acronymword>OPeNDAP</acronymword></acronym> server to your local 
@@ -3750,32 +3765,32 @@ when your other preferred methods are not available locally.
 <a name="netcdf4"></a> <!&textndash; http://nco.sf.net/nco.html#netcdf4 &textndash;>
 </html>
 </section>
-<node name="File-Formats-and-Conversion" spaces=" "><nodename>File Formats and Conversion</nodename><nodenext spaces=" ">Large File Support</nodenext><nodeprev spaces=" ">Retaining Retrieved Files</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="File-Formats-and-Conversion" spaces=" "><nodename>File Formats and Conversion</nodename><nodenext spaces=" ">Large File Support</nodenext><nodeprev spaces=" ">Retaining Retrieved Files</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>File Formats and Conversion</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="446"><acronym><acronymword>HDF</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="447">netCDF2</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="448">netCDF3</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="449">netCDF4</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="450"><code>NETCDF4_CLASSIC</code> files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="451"><code>NETCDF4</code> files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="452"><code>CLASSIC</code> files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="453"><code>64BIT</code> files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="454"><code>--3</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="455"><code>-3</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="456"><code>-4</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="457"><code>-5</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="458"><code>-6</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="459"><code>-7</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="460"><code>--4</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="461"><code>--5</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="462"><code>--6</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="463"><code>--7</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="464"><code>--netcdf4</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="465"><code>--fl_fmt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="466"><code>--file_format</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="467"><code>--64bit</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="447"><acronym><acronymword>HDF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="448">netCDF2</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="449">netCDF3</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="450">netCDF4</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="451"><code>NETCDF4_CLASSIC</code> files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="452"><code>NETCDF4</code> files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="453"><code>CLASSIC</code> files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="454"><code>64BIT</code> files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="455"><code>--3</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="456"><code>-3</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="457"><code>-4</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="458"><code>-5</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="459"><code>-6</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="460"><code>-7</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="461"><code>--4</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="462"><code>--5</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="463"><code>--6</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="464"><code>--7</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="465"><code>--netcdf4</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="466"><code>--fl_fmt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="467"><code>--file_format</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="468"><code>--64bit</code></indexterm></cindex>
 <cartouche endspaces=" ">
-<para>Availability: <command>ncap2</command>, <command>ncbo</command>, <command>nces</command>,
+<para>Availability: <command>ncap2</command>, <command>nces</command>,
 <command>ncecat</command>, <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>,
 <command>ncra</command>, <command>ncrcat</command>, <command>ncwa</command>&linebreak;
 Short options: <samp>-3</samp>, <samp>-4</samp>, <samp>-6</samp>, <samp>-7</samp>&linebreak;
@@ -3810,7 +3825,8 @@ netCDF2 and netCDF3.
 As of 2005, nearly all netCDF datasets were in <code>CLASSIC</code> format. 
 The <code>64BIT</code> format was added in Fall, 2004.
 As of 2010, many netCDF datasets were in <code>64BIT</code> format. 
-As of 2013, many netCDF datasets are in <code>NETCDF4_CLASSIC</code> format. 
+As of 2013, an increasing number of netCDF datasets were in
+<code>NETCDF4_CLASSIC</code> format.
 </para>
 <para>The <code>NETCDF4</code> format uses <acronym><acronymword>HDF5</acronymword></acronym> as the file storage layer. 
 The files are (usually) created, accessed, and manipulated using the 
@@ -3885,13 +3901,13 @@ Each method returns the information using slightly different terminology
 that becomes easier to understand with practice.
 </para>
 <para>First, examine the first line of global metadata output by <samp>ncks -M</samp>:  
-<cindex index="cp" spaces=" "><indexterm index="cp" number="468">netCDF3 classic file format</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="469">netCDF4 classic file format</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="470">netCDF4 file format</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="471">32-bit offset file format</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="472">64-bit offset file format</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="473"><command>ncks</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="474"><code>-M</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="469">netCDF3 classic file format</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="470">netCDF4 classic file format</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="471">netCDF4 file format</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="472">32-bit offset file format</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="473">64-bit offset file format</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="474"><command>ncks</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="475"><code>-M</code></indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">% ncks -M foo_3c.nc
 Summary of foo_3c.nc: filetype = NC_FORMAT_CLASSIC, 0 groups ...
@@ -3904,14 +3920,14 @@ Summary of foo_4.nc: filetype = NC_FORMAT_NETCDF4, 0 groups ...
 </pre></example>
 <para>This method requires a netCDF4-enabled <acronym><acronymword>NCO</acronymword></acronym> version 3.9.0+
 (i.e., from 2007 or later).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="475">extended file format</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="476">underlying file format</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="477"><code>NC_FORMAT_NC3</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="478"><code>NC_FORMAT_NC_HDF5</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="479"><code>NC_FORMAT_NC_HDF4</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="480"><code>NC_FORMAT_PNETCDF</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="481"><code>NC_FORMAT_DAP2</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="482"><code>NC_FORMAT_DAP4</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="476">extended file format</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="477">underlying file format</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="478"><code>NC_FORMAT_NC3</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="479"><code>NC_FORMAT_NC_HDF5</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="480"><code>NC_FORMAT_NC_HDF4</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="481"><code>NC_FORMAT_PNETCDF</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="482"><code>NC_FORMAT_DAP2</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="483"><code>NC_FORMAT_DAP4</code></indexterm></cindex>
 As of <acronym><acronymword>NCO</acronymword></acronym> version 4.4.0 (January, 2014), <command>ncks</command> will
 also print the extended or underlying format of the input file.
 The extended filetype will be one of the six underlying formats that
@@ -3941,7 +3957,7 @@ Summary of foo_4.nc: filetype = NC_FORMAT_NETCDF4 (representation of \
 has to alter the file.
 </para>
 <para>Second, query the file with <samp>ncdump -k</samp>:
-<cindex index="cp" spaces=" "><indexterm index="cp" number="483"><command>ncdump</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="484"><command>ncdump</command></indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">% ncdump -k foo_3c.nc
 classic
@@ -3957,8 +3973,8 @@ netCDF-4
 </para>
 <para>The third option uses the POSIX-standard <command>od</command> (octal dump)
 command:   
-<cindex index="cp" spaces=" "><indexterm index="cp" number="484"><command>od</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="485">octal dump</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="485"><command>od</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="486">octal dump</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">% od -An -c -N4 foo_3c.nc
    C   D   F 001
@@ -4037,7 +4053,7 @@ we term autoconversion.
 <para><acronym><acronymword>NCO</acronymword></acronym> employs three algorithms to downconvert netCDF4 to netCDF3:
 </para><enumerate first="1" endspaces=" ">
 <listitem> 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="486">autoconversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="487">autoconversion</indexterm></cindex>
 <para>Autoconversion of atomic types:
 Autoconversion automatically promotes <code>NC_UBYTE</code> to <code>NC_SHORT</code>, 
 and <code>NC_USHORT</code> to <code>NC_INT</code>.
@@ -4072,7 +4088,7 @@ If this limitation annoys or enrages you, please let us know by being
 the squeaky wheel.
 </para>
 </listitem><listitem>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="487"><code>--fix_rec_dmn all</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="488"><code>--fix_rec_dmn all</code></indexterm></cindex>
 <para>Convert multiple record dimensions to fixed-size dimensions.
 Many netCDF4 and <acronym><acronymword>HDF5</acronymword></acronym> datasets have multiple unlimited
 dimensions.
@@ -4087,7 +4103,7 @@ See <ref label="ncks-netCDF-Kitchen-Sink"><xrefnodename>ncks netCDF Kitchen Sink
 <samp>--fix_rec_dmn</samp> option. 
 </para>
 </listitem><listitem>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="488">flattening</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="489">flattening</indexterm></cindex>
 <para>Flattening (removal) of groups.
 Many netCDF4 and <acronym><acronymword>HDF5</acronymword></acronym> datasets have group hierarchies.
 Since a netCDF3 file may not have any groups, groups in the input file
@@ -4118,10 +4134,10 @@ If this feature would interest you, please let us know.
 </html>
 </subsection>
 </section>
-<node name="Large-File-Support" spaces=" "><nodename>Large File Support</nodename><nodenext spaces=" ">Subsetting Files</nodenext><nodeprev spaces=" ">File Formats and Conversion</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Large-File-Support" spaces=" "><nodename>Large File Support</nodename><nodenext spaces=" ">Subsetting Files</nodenext><nodeprev spaces=" ">File Formats and Conversion</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Large File Support</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="489"><acronym><acronymword>LFS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="490">Large File Support</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="490"><acronym><acronymword>LFS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="491">Large File Support</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: none&linebreak;
@@ -4165,25 +4181,25 @@ build time.
 <a name="subset"></a> <!&textndash; http://nco.sf.net/nco.html#subset &textndash;>
 </html>
 </section>
-<node name="Subsetting-Files" spaces=" "><nodename>Subsetting Files</nodename><nodenext spaces=" ">Subsetting Coordinate Variables</nodenext><nodeprev spaces=" ">Large File Support</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Subsetting-Files" spaces=" "><nodename>Subsetting Files</nodename><nodenext spaces=" ">Subsetting Coordinate Variables</nodenext><nodeprev spaces=" ">Large File Support</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Subsetting Files</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="491">subsetting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="492">union</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="493">intersection</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="494">exclusion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="495">extraction</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="496"><code>-v <var>var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="497"><code>--variable <var>var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="498"><code>-g <var>grp</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="499"><code>--grp <var>grp</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="500"><code>--group <var>grp</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="501"><code>-x</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="502"><code>--exclude</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="503"><code>--xcl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="504"><code>--unn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="505"><code>--union</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="506"><code>--gxvx</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="507"><code>--grp_xtr_var_xcl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="492">subsetting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="493">union</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="494">intersection</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="495">exclusion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="496">extraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="497"><code>-v <var>var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="498"><code>--variable <var>var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="499"><code>-g <var>grp</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="500"><code>--grp <var>grp</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="501"><code>--group <var>grp</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="502"><code>-x</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="503"><code>--exclude</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="504"><code>--xcl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="505"><code>--unn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="506"><code>--union</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="507"><code>--gxvx</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="508"><code>--grp_xtr_var_xcl</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Options <code>-g <var>grp</var></code>&linebreak;
 Availability: <command>ncbo</command>, <command>nces</command>,
@@ -4262,12 +4278,12 @@ with converting, flattening, or dismembering files
 <pre xml:space="preserve">ncks --grp_xtr_var_xcl -g g1 -v v1 # Extract all of group g1 except v1
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="508"><command>mv</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="509"><command>cp</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="510">recursion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="511">recursive</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="512">anchor</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="513">anchoring</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="509"><command>mv</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="510"><command>cp</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="511">recursion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="512">recursive</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="513">anchor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="514">anchoring</indexterm></cindex>
 <html endspaces=" ">
 <a name="rcr"></a> <!&textndash; http://nco.sf.net/nco.html#rcr &textndash;>
 <a name="recursion"></a> <!&textndash; http://nco.sf.net/nco.html#recursion &textndash;>
@@ -4344,12 +4360,12 @@ The fifth command is a special case of the fourth command.
 <a name="union"></a> <!&textndash; http://nco.sf.net/nco.html#union &textndash;>
 <a name="intersection"></a> <!&textndash; http://nco.sf.net/nco.html#intersection &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="514">union</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="515">intersection</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="516"><code>--unn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="517"><code>--union</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="518"><code>--nsx</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="519"><code>--intersection</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="515">union</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="516">intersection</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="517"><code>--unn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="518"><code>--union</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="519"><code>--nsx</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="520"><code>--intersection</code></indexterm></cindex>
 <para>As mentioned above, both <samp>-v</samp> and <samp>-g</samp> options may be
 specified simultaneously and <acronym><acronymword>NCO</acronymword></acronym> will, by default, extract the
 intersection of the lists, i.e., the specified variables found in the
@@ -4396,7 +4412,7 @@ As discussed below, the group and variable specifications may be comma
 separated lists of regular expressions for added control over
 subsetting. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="520">memory requirements</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="521">memory requirements</indexterm></cindex>
 <para>Remember, if averaging or concatenating large files stresses your
 systems memory or disk resources, then the easiest solution is often to
 subset (with <samp>-g</samp> and/or <samp>-v</samp>) to retain only the most
@@ -4426,14 +4442,14 @@ indicates that <emph>only</emph> user-defined variables should be output.
 <a name="rx"></a> <!&textndash; http://nco.sf.net/nco.html#rx &textndash;>
 <a name="wildcarding"></a> <!&textndash; http://nco.sf.net/nco.html#wildcarding &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="521">extended regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="522">regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="523">pattern matching</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="524">wildcards</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="525"><command>grep -E</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="526"><command>egrep</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="527"><command>ncatted</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="528"><acronym><acronymword>GNU</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="522">extended regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="523">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="524">pattern matching</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="525">wildcards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="526"><command>grep -E</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="527"><command>egrep</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="528"><command>ncatted</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="529"><acronym><acronymword>GNU</acronymword></acronym></indexterm></cindex>
 <para>Regular expressions the syntax that <acronym><acronymword>NCO</acronymword></acronym> use pattern-match
 object names in netCDF file against user requests.
 The user can select all variables beginning with the string <samp>DST</samp>
@@ -4455,8 +4471,8 @@ to <command>ncatted</command> may contain <dfn>extended regular expressions</dfn
 As of <acronym><acronymword>NCO</acronymword></acronym> 4.2.4 (November, 2012), group name arguments 
 to the <samp>-g</samp> switch may contain <dfn>extended regular expressions</dfn>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="529"><acronym><acronymword>POSIX</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="530"><code>regex</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="530"><acronym><acronymword>POSIX</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="531"><code>regex</code></indexterm></cindex>
 <para>Because of its wide availability, <acronym><acronymword>NCO</acronymword></acronym> uses the <acronym><acronymword>POSIX</acronymword></acronym>  
 regular expression library <code>regex</code>.  
 Regular expressions of arbitary complexity may be used.
@@ -4464,11 +4480,11 @@ Since netCDF variable names are relatively simple constructs, only a
 few varieties of variable wildcards are likely to be useful.
 For convenience, we define the most useful pattern matching operators
 here: 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="531"><code>.</code> (wildcard character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="532"><code>$</code> (wildcard character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="533"><code>^</code> (wildcard character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="534"><code>?</code> (filename expansion)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="535"><code>*</code> (filename expansion)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="532"><code>.</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="533"><code>$</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="534"><code>^</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="535"><code>?</code> (filename expansion)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="536"><code>*</code> (filename expansion)</indexterm></cindex>
 </para><table commandarg="samp" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="samp">^</itemformat></item>
 </tableterm><tableitem><para>Matches the beginning of a string
@@ -4479,10 +4495,10 @@ here:
 </para></tableitem></tableentry></table>
 <noindent></noindent>
 <para>The most useful repetition and combination operators are
-<cindex index="cp" spaces=" "><indexterm index="cp" number="536"><code>?</code> (wildcard character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="537"><code>*</code> (wildcard character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="538"><code>+</code> (wildcard character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="539"><code>|</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="537"><code>?</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="538"><code>*</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="539"><code>+</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="540"><code>|</code> (wildcard character)</indexterm></cindex>
 </para><table commandarg="samp" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="samp">?</itemformat></item>
 </tableterm><tableitem><para>The preceding regular expression is optional and matched at most once
@@ -4543,11 +4559,11 @@ extended regular expressions which <acronym><acronymword>NCO</acronymword></acro
 <a name="globbing"></a> <!&textndash; http://nco.sf.net/nco.html#globbing &textndash;>
 <a name="glb"></a> <!&textndash; http://nco.sf.net/nco.html#glb &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="540">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="541">shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="542"><command>bash</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="543"><command>csh</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="544">quotes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="541">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="542">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="543"><command>bash</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="544"><command>csh</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="545">quotes</indexterm></cindex>
 <para>One must be careful to protect any special characters in the regular
 expression specification from being interpreted (globbed) by the shell.
 This is accomplish by enclosing special characters within single or
@@ -4572,15 +4588,15 @@ filename expansion (globbing).
 <a name="-c"></a> <!&textndash; http://nco.sf.net/nco.html#-c &textndash;>
 </html>
 </section>
-<node name="Subsetting-Coordinate-Variables" spaces=" "><nodename>Subsetting Coordinate Variables</nodename><nodenext spaces=" ">Group Path Editing</nodenext><nodeprev spaces=" ">Subsetting Files</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Subsetting-Coordinate-Variables" spaces=" "><nodename>Subsetting Coordinate Variables</nodename><nodenext spaces=" ">Group Path Editing</nodenext><nodeprev spaces=" ">Subsetting Files</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Subsetting Coordinate Variables</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="545">subsetting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="546"><code>-C</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="547"><code>-c</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="548"><code>--no-coords</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="549"><code>--no-crd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="550"><code>--coords</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="551"><code>--crd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="546">subsetting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="547"><code>-C</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="548"><code>-c</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="549"><code>--no-coords</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="550"><code>--no-crd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="551"><code>--coords</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="552"><code>--crd</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncap2</command>, <command>ncbo</command>, <command>nces</command>,
 <command>ncecat</command>, <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>,
@@ -4604,7 +4620,7 @@ automatically specifying that <emph>all</emph> coordinate variables in the
 <var>input-files</var> should appear in the <var>output-file</var>.
 Thus <samp>-c</samp> allows the user to select all the coordinate variables
 without having to know their names.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="552"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="553"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
 As of <acronym><acronymword>NCO</acronymword></acronym> version 4.4.5 (July, 2014) 
 both <samp>-c</samp> and <samp>-C</samp> honor the <acronym><acronymword>CF</acronymword></acronym> <code>ancillary_variables</code>
 convention described in <ref label="CF-Conventions"><xrefnodename>CF Conventions</xrefnodename></ref>. 
@@ -4619,10 +4635,10 @@ convention described in <ref label="CF-Conventions"><xrefnodename>CF Conventions
 <a name="gpe"></a> <!&textndash; http://nco.sf.net/nco.html#gpe &textndash;>
 </html>
 </section>
-<node name="Group-Path-Editing" spaces=" "><nodename>Group Path Editing</nodename><nodenext spaces=" ">C and Fortran Index Conventions</nodenext><nodeprev spaces=" ">Subsetting Coordinate Variables</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Group-Path-Editing" spaces=" "><nodename>Group Path Editing</nodename><nodenext spaces=" ">C and Fortran Index Conventions</nodenext><nodeprev spaces=" ">Subsetting Coordinate Variables</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Group Path Editing</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="553"><code>-G <var>gpe_dsc</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="554"><code>--gpe <var>gpe_dsc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="554"><code>-G <var>gpe_dsc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="555"><code>--gpe <var>gpe_dsc</var></code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Options <code>-G <var>gpe_dsc</var></code>&linebreak;
 Availability: <command>ncbo</command>, <command>ncecat</command>, <command>nces</command>,
@@ -4649,7 +4665,7 @@ the following order:&linebreak;
 <table commandarg="var" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="var">grp_pth</itemformat></item>
 </tableterm><tableitem><para>Group Path.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="555">group path</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="556">group path</indexterm></cindex>
 This (optional) component specifies the output group path that should be 
 appended after any editing (i.e., deletion or truncation) of the input
 path is performed.
@@ -4686,11 +4702,11 @@ positive-definite.
 <a name="delete"></a> <!&textndash; http://nco.sf.net/nco.html#delete &textndash;>
 <a name="truncate"></a> <!&textndash; http://nco.sf.net/nco.html#truncate &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="556"><code>&arobase;</code> (separator character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="557"><code>:</code> (separator character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="558">delete (groups)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="559">truncate (groups)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="560">flatten (groups)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="557"><code>&arobase;</code> (separator character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="558"><code>:</code> (separator character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="559">delete (groups)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="560">truncate (groups)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="561">flatten (groups)</indexterm></cindex>
 <para><acronym><acronymword>GPE</acronymword></acronym> has three editing modes: Delete, Truncate, and
 Flatten.
 Select one of <acronym><acronymword>GPE</acronymword></acronym>&textrsquo;s three editing modes by supplying a
@@ -4802,10 +4818,10 @@ ncks -G g1:-1 -g g1/g2 -v v1 # /g1/g2/v1 -> /g1/g1/v1
 </subsection>
 <node name="Moving-Groups" spaces=" "><nodename>Moving Groups</nodename><nodenext spaces=" ">Dismembering Files</nodenext><nodeprev spaces=" ">Flattening Groups</nodeprev><nodeup spaces=" ">Group Path Editing</nodeup></node>
 <subsection spaces=" "><sectiontitle>Moving Groups</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="561">move groups</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="562">groups, moving</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="563">rename groups</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="564">groups, renaming</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="562">move groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="563">groups, moving</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="564">rename groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="565">groups, renaming</indexterm></cindex>
 <para>Until fall 2013 (netCDF version 4.3.1-pre1), netCDF contained no library
 function for renaming groups, and therefore <command>ncrename</command> cannot
 rename groups.
@@ -4862,8 +4878,8 @@ all other groups (e.g., <code>ecmwf</code>, <code>giss</code>).
 </subsection>
 <node name="Dismembering-Files" spaces=" "><nodename>Dismembering Files</nodename><nodenext spaces=" ">Checking CF-compliance</nodenext><nodeprev spaces=" ">Moving Groups</nodeprev><nodeup spaces=" ">Group Path Editing</nodeup></node>
 <subsection spaces=" "><sectiontitle>Dismembering Files</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="565">disaggregate</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="566">dismember</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="566">disaggregate</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="567">dismember</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="5" mergedindex="cp">ncdismember</indexterm></findex>
 <para>Let us show how to completely disaggregate (or, more memorably)
 <emph>dismember</emph> a hierarchical dataset.
@@ -4981,12 +4997,12 @@ is netCDF3.
 </subsection>
 <node name="Checking-CF_002dcompliance" spaces=" "><nodename>Checking CF-compliance</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Dismembering Files</nodeprev><nodeup spaces=" ">Group Path Editing</nodeup></node>
 <subsection spaces=" "><sectiontitle>Checking CF-compliance</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="567"><acronym><acronymword>CF</acronymword></acronym> compliance checker</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="568"><acronym><acronymword>CF</acronymword></acronym> compliance checker</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="6" mergedindex="cp">cfchecker</indexterm></findex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="7" mergedindex="cp">ncdismember</indexterm></findex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="568">compliance checker</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="569">Martin Schultz</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="570">Michael Decker</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="569">compliance checker</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="570">Martin Schultz</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="571">Michael Decker</indexterm></cindex>
 <para>One application of dismembering is to check the <acronym><acronymword>CF</acronymword></acronym>-compliance of each 
 group in a file. 
 When invoked with the optional third argumnt <samp>cf</samp>,
@@ -5043,6 +5059,9 @@ Example compliance checks of common <acronym><acronymword>NASA</acronymword></ac
 Our long-term goal is to enrich the hierarchical data model with the 
 expressivity and syntactic power of <acronym><acronymword>CF</acronymword></acronym> conventions.
 </para>
+<html endspaces=" ">
+<a name="daac"></a> <!&textndash; http://nco.sf.net/nco.html#daac &textndash;>
+</html>
 <para><acronym><acronymword>NASA</acronymword></acronym> asked the <acronym><acronymword>DIWG</acronymword></acronym> to prepare a one-page summary
 of the procedure necessary to check <acronym><acronymword>HDF</acronymword></acronym> files for
 <acronym><acronymword>CF</acronymword></acronym>-compliance: 
@@ -5158,13 +5177,13 @@ EOF
 </html>
 </subsection>
 </section>
-<node name="C-and-Fortran-Index-Conventions" spaces=" "><nodename>C and Fortran Index Conventions</nodename><nodenext spaces=" ">Hyperslabs</nodenext><nodeprev spaces=" ">Group Path Editing</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="C-and-Fortran-Index-Conventions" spaces=" "><nodename>C and Fortran Index Conventions</nodename><nodenext spaces=" ">Hyperslabs</nodenext><nodeprev spaces=" ">Group Path Editing</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>C and Fortran Index conventions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="571">index convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="572">Fortran index convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="573">C index convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="574"><code>-F</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="575"><code>--fortran</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="572">index convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="573">Fortran index convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="574">C index convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="575"><code>-F</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="576"><code>--fortran</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncbo</command>, <command>nces</command>, <command>ncecat</command>,
 <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>, <command>ncra</command>,
@@ -5172,7 +5191,7 @@ EOF
 Short options: <samp>-F</samp>&linebreak;
 Long options: <samp>--fortran</samp>&linebreak;
 </para></cartouche>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="576">I/O</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="577">I/O</indexterm></cindex>
 <para>The <samp>-F</samp> switch changes <acronym><acronymword>NCO</acronymword></acronym> to read and write with
 the Fortran index convention. 
 By default, <acronym><acronymword>NCO</acronymword></acronym> uses C-style (0-based) indices for all I/O. 
@@ -5182,17 +5201,17 @@ dimensions are ordered from slowest (inner-most) to fastest
 In Fortran, indices count <w>from 1</w> (rather <w>than 0</w>), and
 dimensions are ordered from fastest (inner-most) to slowest 
 (outer-most) varying.  
-<cindex index="cp" spaces=" "><indexterm index="cp" number="577">transpose</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="578">transpose</indexterm></cindex>
 Hence <w>C and</w> Fortran data storage conventions represent mathematical
 transposes of eachother.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="578">record variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="579">record variable</indexterm></cindex>
 Note that record variables contain the record dimension as the most
 slowly varying dimension.  
 See <ref label="ncpdq-netCDF-Permute-Dimensions-Quickly"><xrefnodename>ncpdq netCDF Permute Dimensions Quickly</xrefnodename></ref> for techniques
 to re-order (including transpose) dimensions and to reverse data
 storage order.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="579">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="580">record dimension</indexterm></cindex>
 <para>Consider a file <file>85.nc</file> containing <w>12 months</w> of data in the
 record dimension <code>time</code>.
 The following hyperslab operations produce identical results, a
@@ -5222,15 +5241,15 @@ lon(1)=0 lev(1)=100 lat(1)=-90 three_dmn_var(1)=0
 <a name="hyperslab"></a> <!&textndash; http://nco.sf.net/nco.html#hyperslab &textndash;>
 </html>
 </section>
-<node name="Hyperslabs" spaces=" "><nodename>Hyperslabs</nodename><nodenext spaces=" ">Stride</nodenext><nodeprev spaces=" ">C and Fortran Index Conventions</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Hyperslabs" spaces=" "><nodename>Hyperslabs</nodename><nodenext spaces=" ">Stride</nodenext><nodeprev spaces=" ">C and Fortran Index Conventions</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Hyperslabs </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="580">hyperslab</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="581">dimension limits</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="582">coordinate limits</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="583"><code>-0</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="584"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="585"><code>--dimension <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="586"><code>--dmn <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="581">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="582">dimension limits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="583">coordinate limits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="584"><code>-0</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="585"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="586"><code>--dimension <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="587"><code>--dmn <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncbo</command>, <command>nces</command>, <command>ncecat</command>,
 <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>, <command>ncra</command>,
@@ -5307,7 +5326,7 @@ ncks -F -d lon,-3,-1 in.nc out.nc
 ncks -F -d lon,-3, in.nc out.nc
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="587">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="588">stride</indexterm></cindex>
 <para>Coordinate values should be specified using real notation with a decimal 
 point required in the value, whereas dimension indices are specified
 using integer notation without a decimal point. 
@@ -5343,13 +5362,13 @@ ncks -F -d lon,0.0,90.0,2 in.nc out.nc
 instead of simply <code>.</code> in order to make obvious the selection of
 hyperslab elements based on coordinate value rather than index.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="588"><code>NC_CHAR</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="589"><code>NC_CHAR</code></indexterm></cindex>
 <para>User-specified coordinate limits are promoted to double-precision values 
 while searching for the indices which bracket the range. 
 Thus, hyperslabs on coordinates of type <code>NC_CHAR</code> are computed
 numerically rather than lexically, so the results are unpredictable. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="589">wrapped coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="590">wrapped coordinates</indexterm></cindex>
 <para>The relative magnitude of <var>min</var> and <var>max</var> indicate to the
 operator whether to expect a <dfn>wrapped coordinate</dfn>
 (<pxref label="Wrapped-Coordinates"><xrefnodename>Wrapped Coordinates</xrefnodename></pxref>), such as longitude.
@@ -5385,12 +5404,12 @@ This option may be specified more than once in a single command
 <a name="stride"></a> <!&textndash; http://nco.sf.net/nco.html#stride &textndash;>
 </html>
 </section>
-<node name="Stride" spaces=" "><nodename>Stride</nodename><nodenext spaces=" ">Record Appending</nodenext><nodeprev spaces=" ">Hyperslabs</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Stride" spaces=" "><nodename>Stride</nodename><nodenext spaces=" ">Record Appending</nodenext><nodeprev spaces=" ">Hyperslabs</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Stride </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="590">stride</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="591"><code>-d <var>dim</var>,[<var>min</var>],[<var>max</var>],<var>stride</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="592"><code>--dimension <var>dim</var>,[<var>min</var>],[<var>max</var>],<var>stride</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="593"><code>--dmn <var>dim</var>,[<var>min</var>],[<var>max</var>],<var>stride</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="591">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="592"><code>-d <var>dim</var>,[<var>min</var>],[<var>max</var>],<var>stride</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="593"><code>--dimension <var>dim</var>,[<var>min</var>],[<var>max</var>],<var>stride</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="594"><code>--dmn <var>dim</var>,[<var>min</var>],[<var>max</var>],<var>stride</var></code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncbo</command>, <command>nces</command>, <command>ncecat</command>,
 <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>, <command>ncra</command>,
@@ -5443,8 +5462,8 @@ data are stored in records <w>2, 14, &dots; 50</w> so the desired
 Without the <var>stride</var> option, the procedure is very awkward.
 One could use <command>ncks</command> five times and then use <command>ncrcat</command> to  
 concatenate the resulting files together:
-<cindex index="cp" spaces=" "><indexterm index="cp" number="594">Bourne Shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="595">C Shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="595">Bourne Shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="596">C Shell</indexterm></cindex>
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
 for idx in 02 14 26 38 50; do # Bourne Shell
@@ -5478,11 +5497,11 @@ ncrcat -F -d time,3,,12 85.nc 86.nc 87.nc 88.nc 89.nc 8503_8903.nc
 <a name="record_append"></a> <!&textndash; http://nco.sf.net/nco.html#record_append &textndash;>
 </html>
 </section>
-<node name="Record-Appending" spaces=" "><nodename>Record Appending</nodename><nodenext spaces=" ">Subcycle</nodenext><nodeprev spaces=" ">Stride</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Record-Appending" spaces=" "><nodename>Record Appending</nodename><nodenext spaces=" ">Subcycle</nodenext><nodeprev spaces=" ">Stride</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Record Appending</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="596">record append</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="597"><code>--rec_apn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="598"><code>--record_append</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="597">record append</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="598"><code>--rec_apn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="599"><code>--record_append</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncra</command>, <command>ncrcat</command>&linebreak; 
 Short options: None&linebreak;
@@ -5555,17 +5574,17 @@ We recommend users try to understand the safety trade-offs involved.
 <a name="mro"></a> <!&textndash; http://nco.sf.net/nco.html#mro &textndash;>
 </html>
 </section>
-<node name="Subcycle" spaces=" "><nodename>Subcycle</nodename><nodenext spaces=" ">Multislabs</nodenext><nodeprev spaces=" ">Record Appending</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Subcycle" spaces=" "><nodename>Subcycle</nodename><nodenext spaces=" ">Multislabs</nodenext><nodeprev spaces=" ">Record Appending</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Subcycle</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="599">duration</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="600">sub-cycle</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="601">subcycle</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="602">MRO</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="603">Multi-Record Operator</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="604"><code>--mro</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="605"><code>-d <var>dim</var>,[<var>min</var>],[<var>max</var>],[<var>stride</var>],[<var>subcycle</var>]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="606"><code>--dimension <var>dim</var>,[<var>min</var>],[<var>max</var>],[<var>stride</var>],[<var>subcycle</var>]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="607"><code>--dmn <var>dim</var>,[<var>min</var>],[<var>max</var>],[<var>stride</var>],<var>subcycle</var>]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="600">duration</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="601">sub-cycle</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="602">subcycle</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="603">MRO</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="604">Multi-Record Operator</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="605"><code>--mro</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="606"><code>-d <var>dim</var>,[<var>min</var>],[<var>max</var>],[<var>stride</var>],[<var>subcycle</var>]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="607"><code>--dimension <var>dim</var>,[<var>min</var>],[<var>max</var>],[<var>stride</var>],[<var>subcycle</var>]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="608"><code>--dmn <var>dim</var>,[<var>min</var>],[<var>max</var>],[<var>stride</var>],<var>subcycle</var>]</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncra</command>, <command>ncrcat</command>&linebreak; 
 Short options: <samp>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>][,[<var>subcycle</var>]]]]</samp>&linebreak;
@@ -5663,17 +5682,17 @@ records.
 <a name="mlt"></a> <!&textndash; http://nco.sf.net/nco.html#mlt &textndash;>
 </html>
 </section>
-<node name="Multislabs" spaces=" "><nodename>Multislabs</nodename><nodenext spaces=" ">Wrapped Coordinates</nodenext><nodeprev spaces=" ">Subcycle</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Multislabs" spaces=" "><nodename>Multislabs</nodename><nodenext spaces=" ">Wrapped Coordinates</nodenext><nodeprev spaces=" ">Subcycle</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Multislabs </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="608">multislab</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="609">multi-hyperslab</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="610"><acronym><acronymword>MSA</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="611"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="612"><code>--dimension <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="613"><code>--dmn <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="614"><code>--msa</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="615"><code>--msa_usr_rdr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="616"><code>--msa_user_order</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="609">multislab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="610">multi-hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="611"><acronym><acronymword>MSA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="612"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="613"><code>--dimension <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="614"><code>--dmn <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="615"><code>--msa</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="616"><code>--msa_usr_rdr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="617"><code>--msa_user_order</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncbo</command>, <command>nces</command>, <command>ncecat</command>,
 <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>, <command>ncra</command>,
@@ -5726,7 +5745,7 @@ to specify the multislab.
 the sizes of the multislabs.
 This can be used to extend and or pad coordinate grids.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="617">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="618">stride</indexterm></cindex>
 <para>Users may specify redundant ranges of indices in a multislab, e.g., 
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncks -d lon,0,4 -d lon,2,9,2 in.nc out.nc
@@ -5743,7 +5762,7 @@ the <var>stride</var> option only supports index-based hyper-slabbing.
 </para>
 <para>Multislabs are more efficient than the alternative of sequentially
 performing hyperslab operations and concatenating the results.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="618">I/O</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="619">I/O</indexterm></cindex>
 This is because <acronym><acronymword>NCO</acronymword></acronym> employs a novel multislab algorithm to
 minimize the number of I/O operations when retrieving irregularly spaced
 data from disk.
@@ -5861,13 +5880,13 @@ hyperslabs makes this clearer.
 <a name="wrp"></a> <!&textndash; http://nco.sf.net/nco.html#wrp &textndash;>
 </html>
 </section>
-<node name="Wrapped-Coordinates" spaces=" "><nodename>Wrapped Coordinates</nodename><nodenext spaces=" ">Auxiliary Coordinates</nodenext><nodeprev spaces=" ">Multislabs</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Wrapped-Coordinates" spaces=" "><nodename>Wrapped Coordinates</nodename><nodenext spaces=" ">Auxiliary Coordinates</nodenext><nodeprev spaces=" ">Multislabs</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Wrapped Coordinates</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="619">wrapped coordinates</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="620">longitude</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="621"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="622"><code>--dimension <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="623"><code>--dmn <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="620">wrapped coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="621">longitude</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="622"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="623"><code>--dimension <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="624"><code>--dmn <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncks</command>&linebreak;
 Short options: <samp>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</samp>&linebreak;
@@ -5938,15 +5957,15 @@ values (<pxref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodename></pxref
 <a name="standard_name"></a> <!&textndash; http://nco.sf.net/nco.html#standard_name &textndash;>
 </html>
 </section>
-<node name="Auxiliary-Coordinates" spaces=" "><nodename>Auxiliary Coordinates</nodename><nodenext spaces=" ">UDUnits Support</nodenext><nodeprev spaces=" ">Wrapped Coordinates</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Auxiliary-Coordinates" spaces=" "><nodename>Auxiliary Coordinates</nodename><nodenext spaces=" ">UDUnits Support</nodenext><nodeprev spaces=" ">Wrapped Coordinates</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Auxiliary Coordinates</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="624"><code>-X</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="625"><code>--auxiliary</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="626"><code>standard_name</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="627"><code>coordinates</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="628"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="629"><code>-X <var>lon_min</var>,<var>lon_max</var>,<var>lat_min</var>,<var>lat_max</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="630"><code>--auxiliary <var>lon_min</var>,<var>lon_max</var>,<var>lat_min</var>,<var>lat_max</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="625"><code>-X</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="626"><code>--auxiliary</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="627"><code>standard_name</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="628"><code>coordinates</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="629"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="630"><code>-X <var>lon_min</var>,<var>lon_max</var>,<var>lat_min</var>,<var>lat_max</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="631"><code>--auxiliary <var>lon_min</var>,<var>lon_max</var>,<var>lat_min</var>,<var>lat_max</var></code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncbo</command>, <command>nces</command>, <command>ncecat</command>,
 <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>, <command>ncra</command>,
@@ -5972,7 +5991,7 @@ Cells that contain a value within the user-specified range
 [<var>lon_min</var>,<var>lon_max</var>,<var>lat_min</var>,<var>lat_max</var>] are
 included in the output hyperslab.  
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="631">cell-based grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="632">cell-based grids</indexterm></cindex>
 <para>A cell-based grid collapses the horizontal spatial information 
 (latitude and longitude) and stores it along a one-dimensional
 coordinate that has a one-to-one mapping to both latitude and longitude
@@ -6082,15 +6101,15 @@ to avoid confusion.
 <a name="UDUnits2"></a> <!&textndash; http://nco.sf.net/nco.html#UDUnits2 &textndash;>
 </html>
 </section>
-<node name="UDUnits-Support" spaces=" "><nodename>UDUnits Support</nodename><nodenext spaces=" ">Rebasing Time Coordinate</nodenext><nodeprev spaces=" ">Auxiliary Coordinates</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="UDUnits-Support" spaces=" "><nodename>UDUnits Support</nodename><nodenext spaces=" ">Rebasing Time Coordinate</nodenext><nodeprev spaces=" ">Auxiliary Coordinates</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>UDUnits Support </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="632">UDUnits</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="633">Unidata</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="634"><code>units</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="635">attribute, <code>units</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="636"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="637"><code>--dimension <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="638"><code>--dmn <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="633">UDUnits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="634">Unidata</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="635"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="636">attribute, <code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="637"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="638"><code>--dimension <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="639"><code>--dmn <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncbo</command>, <command>nces</command>, <command>ncecat</command>,
 <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>, <command>ncra</command>,
@@ -6112,7 +6131,7 @@ may become required in a future version of <acronym><acronymword>NCO</acronymwor
 </para>
 <para>Two examples suffice to demonstrate the power and convenience of UDUnits  
 support. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="639">MKS units</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="640">MKS units</indexterm></cindex>
 First, consider extraction of a variable containing non-record
 coordinates with physical dimensions stored in MKS units.
 In the following example, the user extracts all wavelengths
@@ -6123,7 +6142,7 @@ very frequently used in visible spectroscopy, microns:
 wvl[0]=5e-07 meter
 </pre></example>
 <noindent></noindent>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="640"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="641"><code>units</code></indexterm></cindex>
 <para>The hyperslab returns the correct values because the <var>wvl</var> variable
 is stored on disk with a length dimension that UDUnits recognizes in the 
 <code>units</code> attribute.
@@ -6143,7 +6162,7 @@ because each hyperslab argument contains text characters and non-initial
 spaces.  
 Third, <acronym><acronymword>NCO</acronymword></acronym> determines whether the <var>wvl</var> is dimensioned
 with a coordinate variable that has a <code>units</code> attribute. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="641">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="642">coordinate variable</indexterm></cindex>
 In this case, <var>wvl</var> itself is a coordinate variable.
 The value of its <code>units</code> attribute is <code>meter</code>. 
 Thus <var>wvl</var> passes this test so UDUnits conversion is attempted. 
@@ -6165,8 +6184,8 @@ At this point, <acronym><acronymword>NCO</acronymword></acronym> can perform a c
 the same algorithm as if the user had specified the hyperslab without
 requesting units conversion.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="642"><code>units</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="643"><code>time</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="643"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="644"><code>time</code></indexterm></cindex>
 <para>The translation and dimensional innterpretation of time coordinates
 shows a more powerful, and probably more common, UDUnits application.
 In this example, the user prints all data between <w>4 PM</w> and <w>7 PM</w>
@@ -6178,8 +6197,8 @@ since the year 1900:
 time_udunits[1]=876018 hours since 1900-01-01 00:00:0.0
 </pre></example>
 <noindent></noindent>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="644">stride</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="645">whitespace</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="645">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="646">whitespace</indexterm></cindex>
 <para>Here, the user invokes the stride (<pxref label="Stride"><xrefnodename>Stride</xrefnodename></pxref>) capability to obtain 
 every other timeslice.
 This is possible because the UDUnits feature is additive, not
@@ -6195,7 +6214,7 @@ time period spread across multiple input files
 <noindent></noindent>
 <para>Note that there is no excess whitespace before or after the individual
 elements of the <samp>-d</samp> argument.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="646">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="647">shell</indexterm></cindex>
 This is important since, as far as the shell knows, <samp>-d</samp> takes
 only <emph>one</emph> command-line argument.
 Parsing this argument into its component
@@ -6229,8 +6248,8 @@ export UDUNITS2_XML_PATH='/unusual/location/share/udunits/udunits2.xml'
 <para>This run-time flexibility can enable the full functionality of
 pre-built binaries on machines with libraries in different locations.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="647">Climate and Forecast Metadata Convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="648"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="648">Climate and Forecast Metadata Convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="649"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
 <para>The <uref><urefurl>http://www.unidata.ucar.edu/packages/udunits</urefurl><urefdesc spaces=" ">UDUnits</urefdesc></uref>
 package documentation describes the supported formats of time
 dimensions. 
@@ -6290,8 +6309,8 @@ data:
 <para><samp>ncks -v lon_cal -d lon_cal,'1964-3-1 0:00:0.0','1964-3-4 00:00:0.0'</samp>
 results in <code>lon_cal=1,2,3,4</code>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="649">MKS units</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="650">God</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="650">MKS units</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="651">God</indexterm></cindex>
 <para>netCDF variables should always be stored with MKS (i.e., God&textrsquo;s) units,
 so that application programs may assume MKS dimensions apply to all
 input variables. 
@@ -6308,7 +6327,7 @@ esoteric units (e.g., furlongs, pounds per square inch, fortnights).
 <a name="rbs"></a> <!&textndash; http://nco.sf.net/nco.html#rbs &textndash;>
 </html>
 </section>
-<node name="Rebasing-Time-Coordinate" spaces=" "><nodename>Rebasing Time Coordinate</nodename><nodenext spaces=" ">Multiple Record Dimensions</nodenext><nodeprev spaces=" ">UDUnits Support</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Rebasing-Time-Coordinate" spaces=" "><nodename>Rebasing Time Coordinate</nodename><nodenext spaces=" ">Multiple Record Dimensions</nodenext><nodeprev spaces=" ">UDUnits Support</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Rebasing Time Coordinate</sectiontitle>
 <cartouche endspaces=" ">
 <para>Availability: 
@@ -6372,11 +6391,11 @@ but also any bounds associated with the record coordinate (e.g.,
 <a name="mrd"></a> <!&textndash; http://nco.sf.net/nco.html#mrd &textndash;>
 </html>
 </section>
-<node name="Multiple-Record-Dimensions" spaces=" "><nodename>Multiple Record Dimensions</nodename><nodenext spaces=" ">Missing Values</nodenext><nodeprev spaces=" ">Rebasing Time Coordinate</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Multiple-Record-Dimensions" spaces=" "><nodename>Multiple Record Dimensions</nodename><nodenext spaces=" ">Missing Values</nodenext><nodeprev spaces=" ">Rebasing Time Coordinate</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Multiple Record Dimensions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="651">netCDF4</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="652"><code>--mrd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="653"><code>--multiple_record_dimensions</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="652">netCDF4</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="653"><code>--mrd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="654"><code>--multiple_record_dimensions</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: 
 <command>ncecat</command>, <command>ncpdq</command> 
@@ -6431,13 +6450,13 @@ Use <samp>--mrd</samp> to override this.
 <a name="mss"></a> <!&textndash; http://nco.sf.net/nco.html#mss &textndash;>
 </html>
 </section>
-<node name="Missing-Values" spaces=" "><nodename>Missing Values</nodename><nodenext spaces=" ">Chunking</nodenext><nodeprev spaces=" ">Multiple Record Dimensions</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Missing-Values" spaces=" "><nodename>Missing Values</nodename><nodenext spaces=" ">Chunking</nodenext><nodeprev spaces=" ">Multiple Record Dimensions</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Missing values</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="654">missing values</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="655">data, missing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="656">averaging data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="657"><code>missing_value</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="658"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="655">missing values</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="656">data, missing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="657">averaging data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="658"><code>missing_value</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="659"><code>_FillValue</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncap2</command>, <command>ncbo</command>, <command>nces</command>,
 <command>ncflint</command>, <command>ncpdq</command>, <command>ncra</command>, <command>ncwa</command>&linebreak; 
@@ -6447,7 +6466,7 @@ Short options: None&linebreak;
 <para>The phrase <dfn>missing data</dfn> refers to data points that are missing,
 invalid, or for any reason not intended to be arithmetically processed
 in the same fashion as valid data.  
-<cindex index="cp" spaces=" "><indexterm index="cp" number="659">arithmetic operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="660">arithmetic operators</indexterm></cindex>
 The <acronym><acronymword>NCO</acronymword></acronym> arithmetic operators attempt to handle missing data in
 an intelligent fashion. 
 There are four steps in the <acronym><acronymword>NCO</acronymword></acronym> treatment of missing data:
@@ -6512,7 +6531,7 @@ If <var>var_type</var> equals <var>att_type</var> then <acronym><acronymword>NCO
 straightforwardly compares each value of <var>var</var> to
 <var>_FillValue</var> to determine which elements of <var>var</var> are to be
 treated as missing data. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="660">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="661">C language</indexterm></cindex>
 If not, then <acronym><acronymword>NCO</acronymword></acronym> converts <var>_FillValue</var> from
 <var>att_type</var> to <var>var_type</var> by using the implicit conversion rules
 <w>of C</w>, or, if <var>att_type</var> is <code>NC_CHAR</code>
@@ -6521,7 +6540,7 @@ uses <var>att_type</var> = <code>NC_CHAR</code> and <var>_FillValue</var> =
 <samp>-99999.</samp>. 
 </para></footnote>, by typecasting the results of the <w>C function</w>
 <code>strtod(<var>_FillValue</var>)</code>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="661"><command>ncatted</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="662"><command>ncatted</command></indexterm></cindex>
 You may use the <acronym><acronymword>NCO</acronymword></acronym> operator <command>ncatted</command> to change the
 <code>_FillValue</code> attribute and all data whose data is
 <var>_FillValue</var> to a new value
@@ -6530,11 +6549,11 @@ You may use the <acronym><acronymword>NCO</acronymword></acronym> operator <comm
 </listitem><listitem> 
 <para>Identifying missing data during arithmetic operations.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="662">performance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="663">operator speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="664">speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="665">execution time</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="666">arithmetic operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="663">performance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="664">operator speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="665">speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="666">execution time</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="667">arithmetic operators</indexterm></cindex>
 <para>When an <acronym><acronymword>NCO</acronymword></acronym> arithmetic operator processes a variable <var>var</var>
 with a <code>_FillValue</code> attribute, it compares each value of
 <var>var</var> to <var>_FillValue</var> before performing an operation.
@@ -6554,11 +6573,11 @@ valid or not.
 </listitem><listitem> 
 <para>Treatment of any data identified as missing in arithmetic operators.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="667"><command>nces</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="668"><command>ncra</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="669"><command>ncwa</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="670"><command>ncbo</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="671"><command>ncflint</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="668"><command>nces</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="669"><command>ncra</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="670"><command>ncwa</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="671"><command>ncbo</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="672"><command>ncflint</command></indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> averagers (<command>ncra</command>, <command>nces</command>, <command>ncwa</command>)
 do not count any element with the value <var>_FillValue</var> towards the
 average. 
@@ -6600,21 +6619,21 @@ important information from being lost.
 <a name="chunk_size"></a> <!&textndash; http://nco.sf.net/nco.html#chunk_size &textndash;>
 </html>
 </section>
-<node name="Chunking" spaces=" "><nodename>Chunking</nodename><nodenext spaces=" ">Deflation</nodenext><nodeprev spaces=" ">Missing Values</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Chunking" spaces=" "><nodename>Chunking</nodename><nodenext spaces=" ">Compression</nodenext><nodeprev spaces=" ">Missing Values</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Chunking</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="672"><code>--cnk_byt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="673"><code>--cnk_dmn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="674"><code>--cnk_map</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="675"><code>--cnk_min</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="676"><code>--cnk_plc</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="677"><code>--cnk_scl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="678"><code>--chunk_byte</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="679"><code>--chunk_dimension</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="680"><code>--chunk_map</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="681"><code>--chunk_min</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="682"><code>--chunk_policy</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="683"><code>--chunk_scalar</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="684">chunking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="673"><code>--cnk_byt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="674"><code>--cnk_dmn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="675"><code>--cnk_map</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="676"><code>--cnk_min</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="677"><code>--cnk_plc</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="678"><code>--cnk_scl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="679"><code>--chunk_byte</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="680"><code>--chunk_dimension</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="681"><code>--chunk_map</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="682"><code>--chunk_min</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="683"><code>--chunk_policy</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="684"><code>--chunk_scalar</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="685">chunking</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncap2</command>, <command>ncbo</command>, <command>nces</command>,
 <command>ncecat</command>, <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>,
@@ -6642,10 +6661,10 @@ and
 <acronym><acronymword>NCO</acronymword></acronym> authors are working on generalized algorithms and
 applications of chunking strategies (stay tuned for more in 2015).    
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="685">chunking policy</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="686">chunking map</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="687">chunksize</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="688">blocksize</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="686">chunking policy</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="687">chunking map</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="688">chunksize</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="689">blocksize</indexterm></cindex>
 <para>The <acronym><acronymword>NCO</acronymword></acronym> chunking implementation is designed to be flexible. 
 Users control four aspects of the chunking implementation.
 These are the <dfn>chunking policy</dfn>, <dfn>chunking map</dfn>,
@@ -6666,9 +6685,9 @@ By default this minimum variable size for chunking is twice the system
 blocksize (when available) and is <w>8192 bytes</w> otherwise. 
 Users may set this to any value with the <samp>--cnk_min</samp> switch.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="689">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="690">hyperslab</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="10" mergedindex="cp">ncpdq</indexterm></findex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="690">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="691">packing</indexterm></cindex>
 <para>The chunking implementation is similar to a hybrid of the
 <command>ncpdq</command> packing policies 
 (<pxref label="ncpdq-netCDF-Permute-Dimensions-Quickly"><xrefnodename>ncpdq netCDF Permute Dimensions Quickly</xrefnodename></pxref>) and hyperslab
@@ -6692,24 +6711,24 @@ intervention.
 (or its long option equivalents, <samp>--cnk_plc</samp> and
 <samp>--chunk_policy</samp>) and its <var>cnk_plc</var> argument.
 As of August, 2014, six chunking policies are implemented:&linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="691"><samp>all</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="692"><samp>g2d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="693"><samp>g3d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="694"><samp>r1d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="695"><samp>xpl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="696"><samp>xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="697"><samp>cnk_all</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="698"><samp>cnk_g2d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="699"><samp>cnk_g3d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="700"><samp>cnk_r1d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="701"><samp>cnk_xpl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="702"><samp>cnk_xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="703"><samp>plc_all</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="704"><samp>plc_g2d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="705"><samp>plc_g3d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="706"><samp>plc_r1d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="707"><samp>plc_xpl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="708"><samp>plc_xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="692"><samp>all</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="693"><samp>g2d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="694"><samp>g3d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="695"><samp>r1d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="696"><samp>xpl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="697"><samp>xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="698"><samp>cnk_all</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="699"><samp>cnk_g2d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="700"><samp>cnk_g3d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="701"><samp>cnk_r1d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="702"><samp>cnk_xpl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="703"><samp>cnk_xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="704"><samp>plc_all</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="705"><samp>plc_g2d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="706"><samp>plc_g3d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="707"><samp>plc_r1d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="708"><samp>plc_xpl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="709"><samp>plc_xst</samp></indexterm></cindex>
 </para><table commandarg="dfn" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunk All Variables</itemformat></item>
 </tableterm><tableitem><para>Definition: Chunk all variables possible.
@@ -6750,6 +6769,17 @@ and copies the chunking parameters from the input to the output file.
 Alternate invocation: none&linebreak;
 <var>cnk_plc</var> key values: <samp>xst</samp>, <samp>cnk_xst</samp>, <samp>plc_xst</samp>&linebreak;
 Mnemonic: E<emph>X</emph>i<emph>ST</emph>ing chunked variables&linebreak;
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunk Variables with <acronym><acronymword>NCO</acronymword></acronym> recommendations</itemformat></item>
+</tableterm><tableitem><para>Definition: Chunk all variables according to <acronym><acronymword>NCO</acronymword></acronym> best
+practices. 
+This is a virtual option that ensures the chunking policy is (in the 
+subjective opinion of the authors) the best policy for typical usage.
+As of <acronym><acronymword>NCO</acronymword></acronym> version 4.4.8 (February, 2015), this virtual policy
+implements <samp>map_rew</samp> for 3-D variables and <samp>map_lfp</samp> for all
+other variables.&linebreak;
+Alternate invocation: none&linebreak;
+<var>cnk_plc</var> key values: <samp>nco</samp>, <samp>cnk_nco</samp>, <samp>plc_nco</samp>&linebreak;
+Mnemonic: <emph>N</emph>et<emph>C</emph>DF<emph>O</emph>perator&linebreak;
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="dfn">Unchunking</itemformat></item>
 </tableterm><tableitem><para>Definition: Unchunk all variables possible. 
 The <acronym><acronymword>HDF5</acronymword></acronym> storge layer requires that record variables (i.e.,
@@ -6766,12 +6796,12 @@ Multiple equivalent options are provided to satisfy disparate needs
 and tastes of <acronym><acronymword>NCO</acronymword></acronym> users working with scripts and from the
 command line.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="709">chunking map</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="710">degenerate dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="711"><var>cnk_map</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="712"><code>-M <var>cnk_map</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="713"><code>--cnk_map <var>cnk_map</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="714"><code>--map <var>cnk_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="710">chunking map</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="711">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="712"><var>cnk_map</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="713"><code>-M <var>cnk_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="714"><code>--cnk_map <var>cnk_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="715"><code>--map <var>cnk_map</var></code></indexterm></cindex>
 <para>The chunking algorithms must know the chunksizes of each dimension of
 each variable to be chunked.
 The correspondence between the input variable shape and the chunksizes
@@ -6780,31 +6810,31 @@ The user specifies the desired chunking map with the <samp>-M</samp> switch
 (or its long option equivalents, <samp>--cnk_map</samp> and
 <samp>--chunk_map</samp>) and its <var>cnk_map</var> argument.
 Eight chunking maps are currently implemented:&linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="715"><samp>dmn</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="716"><samp>scl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="717"><samp>prd</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="718"><samp>lfp</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="719"><samp>rd1</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="720"><samp>xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="721"><samp>rew</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="722"><samp>nc4</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="723"><samp>cnk_dmn</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="724"><samp>cnk_scl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="725"><samp>cnk_prd</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="726"><samp>cnk_lfp</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="727"><samp>cnk_rd1</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="728"><samp>cnk_xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="729"><samp>cnk_rew</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="730"><samp>cnk_nc4</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="731"><samp>map_dmn</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="732"><samp>map_scl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="733"><samp>map_prd</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="734"><samp>map_lfp</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="735"><samp>map_rd1</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="736"><samp>map_xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="737"><samp>map_rew</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="738"><samp>map_nc4</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="739">Chris Barker</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="716"><samp>dmn</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="717"><samp>scl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="718"><samp>prd</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="719"><samp>lfp</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="720"><samp>rd1</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="721"><samp>xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="722"><samp>rew</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="723"><samp>nc4</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="724"><samp>cnk_dmn</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="725"><samp>cnk_scl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="726"><samp>cnk_prd</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="727"><samp>cnk_lfp</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="728"><samp>cnk_rd1</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="729"><samp>cnk_xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="730"><samp>cnk_rew</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="731"><samp>cnk_nc4</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="732"><samp>map_dmn</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="733"><samp>map_scl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="734"><samp>map_prd</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="735"><samp>map_lfp</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="736"><samp>map_rd1</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="737"><samp>map_xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="738"><samp>map_rew</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="739"><samp>map_nc4</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="740">Chris Barker</indexterm></cindex>
 </para><table commandarg="dfn" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunksize Equals Dimension Size [<emph>default</emph>]</itemformat></item>
 </tableterm><tableitem><para>Definition: Chunksize defaults to dimension size. 
@@ -6873,7 +6903,18 @@ This map can be used to reset (portions of) previously chunked files to
 default chunking values.&linebreak;
 <var>cnk_map</var> key values: <samp>nc4</samp>, <samp>cnk_nc4</samp>, <samp>map_nc4</samp>&linebreak;
 Mnemonic: <emph>N</emph>et<emph>C</emph>DF<emph>4</emph>&linebreak;
-</para></tableitem></tableentry></table>
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunksizes use <acronym><acronymword>NCO</acronymword></acronym> recommendations</itemformat></item>
+</tableterm><tableitem><para>Definition: Chunksizes are determined by the currently recommended
+<acronym><acronymword>NCO</acronymword></acronym> map.
+This is a virtual option that ensures the chunking map is (in the 
+subjective opinion of the authors) the best map for typical usage.
+As of <acronym><acronymword>NCO</acronymword></acronym> version 4.4.8 (February, 2015), this virtual map
+calls <samp>map_rew</samp> for 3-D variables and <samp>map_lfp</samp> for all
+others.&linebreak;  
+<var>cnk_map</var> key values: <samp>nco</samp>, <samp>cnk_nco</samp>, <samp>map_nco</samp>&linebreak;
+Mnemonic: <emph>N</emph>et<emph>C</emph>DF<emph>O</emph>perator&linebreak;
+</para>
+</tableitem></tableentry></table>
 <noindent></noindent>
 <para>It is possible to combine the above chunking map algorithms with
 user-specified per-dimension (though not per-variable) chunksizes that 
@@ -6953,7 +6994,7 @@ ncwa -O -4 -D 4 -a time --cnk_plc=g2d --cnk_map=rd1 --cnk_dmn lat,32 \
 <a name="r1d"></a> <!&textndash; http://nco.sf.net/nco.html#r1d &textndash;>
 </html>
 <para>Chunking policy <samp>r1d</samp> changes the chunksize of 1-D record variables
-(and no other variables) to the specified (with <samp>--cnk_dmn</samp>)
+(and no other variables) to that specified (with <samp>--cnk_dmn</samp>)
 chunksize. 
 Any specified record dimension chunksizes will be applied to 1-D
 record variables only. 
@@ -6967,7 +7008,7 @@ For example,
 Without the <samp>r1d</samp> policy, <code>time</code> chunks would change in all 
 variables.   
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="740">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="741">record dimension</indexterm></cindex>
 <para>It is appropriate to conclude by informing users about an aspect of
 chunking that may not be expected.
 Three types of variables are <emph>always</emph> chunked: Record variables,
@@ -6983,6 +7024,838 @@ instructions to activate chunking nevertheless contain chunked
 variables. 
 </para>
 <html endspaces=" ">
+<a name="ppc"></a> <!&textndash; http://nco.sf.net/nco.html#ppc &textndash;>
+<a name="PPC"></a> <!&textndash; http://nco.sf.net/nco.html#PPC &textndash;>
+<a name="compression"></a> <!&textndash; http://nco.sf.net/nco.html#compression &textndash;>
+<a name="cmp"></a> <!&textndash; http://nco.sf.net/nco.html#cmp &textndash;>
+<a name="nsd"></a> <!&textndash; http://nco.sf.net/nco.html#nsd &textndash;>
+<a name="NSD"></a> <!&textndash; http://nco.sf.net/nco.html#NSD &textndash;>
+<a name="dsd"></a> <!&textndash; http://nco.sf.net/nco.html#dsd &textndash;>
+<a name="DSD"></a> <!&textndash; http://nco.sf.net/nco.html#DSD &textndash;>
+<a name="qnt"></a> <!&textndash; http://nco.sf.net/nco.html#qnt &textndash;>
+</html>
+</section>
+<node name="Compression" spaces=" "><nodename>Compression</nodename><nodenext spaces=" ">Deflation</nodenext><nodeprev spaces=" ">Chunking</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
+<section spaces=" "><sectiontitle>Compression</sectiontitle>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="742"><code>--ppc</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="743"><code>--precision_preserving_compression</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="744"><code>--quantize</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="745">lossy compression</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="746">quantization</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="747">rounding</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="748">Huffman coding</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="749"><command>gzip</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="750"><command>zlib</command></indexterm></cindex>
+<cartouche endspaces=" ">
+<para>Availability: <command>ncbo</command>, <command>ncecat</command>, <command>nces</command>,
+<command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>, <command>ncra</command>,
+<command>ncrcat</command>, <command>ncwa</command>&linebreak; 
+Short options: None&linebreak;
+Long options: <samp>--ppc <var>var1</var>[,<var>var2</var>[,...]]=<var>prc</var></samp>,&linebreak;
+<samp>--precision_preserving_compression <var>var1</var>[,<var>var2</var>[,...]]=<var>prc</var></samp>,&linebreak;
+<samp>--quantize <var>var1</var>[,<var>var2</var>[,...]]=<var>prc</var></samp>&linebreak;
+</para></cartouche>
+
+<para><acronym><acronymword>NCO</acronymword></acronym> implements or accesses four different compression
+algorithms, the standard lossless <acronym><acronymword>DEFLATE</acronymword></acronym> algorithm
+and three lossy compression algorithms.
+All four algorithms reduce the on-disk size of a dataset while
+sacrificing no (lossless) or a tolerable amount (lossy) of precision. 
+First, <acronym><acronymword>NCO</acronymword></acronym> can access the lossless <acronym><acronymword>DEFLATE</acronymword></acronym> algorithm,
+a combination of Lempel-Ziv encoding and Huffman coding, algorithm on
+any netCDF4 dataset (<pxref label="Deflation"><xrefnodename>Deflation</xrefnodename></pxref>). 
+Because it is lossless, this algorithm re-inflates deflated data to
+their full original precision. 
+This algorithm is accessed via the <acronym><acronymword>HDF5</acronymword></acronym> library layer
+(which itself calls the <command>zlib</command> library also used by
+<command>gzip</command>), and is unavailable with netCDF3.   
+</para>
+<para>The three lossy compression algorithms are Packing 
+(<pxref label="Packed-data"><xrefnodename>Packed data</xrefnodename></pxref>), and two precision-preserving algorithms.
+Packing quantizes data of a higher precision type into a lower precision 
+type (often <code>NC_SHORT</code>) that thus stores a fewer (though constant)
+number of bytes per value. 
+Packed data almost unpacks into a (much) smaller dynamic range than
+the floating-point data can represent. 
+The type-conversion and reduced dynamic range of the data allows packing
+to eliminate bits typically used to store an exponent, thus improving 
+its packing efficiency.
+Packed data also can also be deflated for additional space savings. 
+</para>
+<para>A limitation of packing is that unpacking data stored as integers
+into the linear range defined by <code>scale_factor</code> and
+<code>add_offset</code> rapidly loses precision outside of a narrow range of
+floating point values.  
+Variables packed as <code>NC_SHORT</code>, for example, can represent only
+about 64000 discrete values in the range 
+<math>-32768*scale_factor+add_offset</math> to
+<math>32767*scale_factor+add_offset</math>. 
+The precision of packed data equals the value of <code>scale_factor</code>,
+and <code>scale_factor</code> is usually chosen to span the range of valid
+data, not to represent the intrinsic precision of the variable.
+In other words, the precision of packed data cannot be specified in
+advance because it depends on the range of values to quantize.
+</para>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="751"><acronym><acronymword>PPC</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="752"><acronym><acronymword>LSD</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="753">Least Significant Digit</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="754">quantization</indexterm></cindex>
+<para><acronym><acronymword>NCO</acronymword></acronym> implemented the final two lossy compression algorithms
+in version 4.4.8 (February, 2015).
+These are both <dfn>Precision-Preserving Compression</dfn> (<acronym><acronymword>PPC</acronymword></acronym>)
+algorithms and since standard terminology for precision is remarkably 
+imprecise, so is our nomenclature. 
+The operational definition of &textldquo;significant digit&textrdquo; in our precision
+preserving algorithms is that the exact value, before rounding or
+quantization, is within one-half the value of the decimal place occupied
+by the <dfn>Least Significant Digit</dfn> (<acronym><acronymword>LSD</acronymword></acronym>) of the rounded value.
+For example, the value <math>pi = 3.14</math> correctly represents the exact
+mathematical constant <var>pi</var> to three significant digits because the
+<acronym><acronymword>LSD</acronymword></acronym> of the rounded value <w>(i.e., 4)</w> is in the one-hundredths 
+digit place, and the difference between the exact value and the rounded
+value is less than one-half of one one-hundredth, i.e., 
+(<math>3.14159265358979323844 - 3.14 = 0.00159 < 0.005</math>).
+</para>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="755">Number of Significant Digits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="756"><acronym><acronymword>NSD</acronymword></acronym></indexterm></cindex>
+<para>One <acronym><acronymword>PPC</acronymword></acronym> algorithm preserves the specified total 
+<dfn>Number of Signifcant Digits</dfn> (<acronym><acronymword>NSD</acronymword></acronym>) of the value.
+For example there is only one significant digit in the weight of
+most &textldquo;eight-hundred pound gorillas&textrdquo; that you will encounter, 
+i.e., so <math><var>nsd=1</var></math>.
+This is the most straightforward measure of precision, and thus
+<acronym><acronymword>NSD</acronymword></acronym> is the default <acronym><acronymword>PPC</acronymword></acronym> algorithm.
+</para>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="757">Decimal Significant Digits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="758"><acronym><acronymword>DSD</acronymword></acronym></indexterm></cindex>
+<para>The other <acronym><acronymword>PPC</acronymword></acronym> algorithm preserves the number of 
+<dfn>Decimal Significant Digits</dfn> (<acronym><acronymword>DSD</acronymword></acronym>), i.e., the number of
+significant digits following (positive, by convention) or preceding
+(negative) the decimal point.  
+For example, &textldquo;0.008&textrdquo; and &textldquo;800&textrdquo; have, respectively, three and
+negative two digits digits following the decimal point, corresponding 
+<math><var>dsd=3</var></math> and <math><var>dsd=-2</var></math>. 
+</para>
+<para>The only justifiable <acronym><acronymword>NSD</acronymword></acronym> for a given value depends on 
+intrinsic accuracy and error characteristics of the model or
+measurements, and not on the units with which the value is stored.
+The appropriate <acronym><acronymword>DSD</acronymword></acronym> for a given value depends on these
+intrinsic characteristics and, in addition, the units of storage.
+This is the fundamental difference between the <acronym><acronymword>NSD</acronymword></acronym> and 
+<acronym><acronymword>DSD</acronymword></acronym> approaches. 
+The eight-hundred pound gorilla always has <math><var>nsd=1</var></math> regardless 
+of whether the value is store in pounds or in some other unit.
+<acronym><acronymword>DSD</acronymword></acronym> corresponding to this weight is <math><var>dsd=-2</var></math> if the
+value is store in pounds, <math><var>dsd=4</var></math> if stored in megapounds.
+</para>
+<para>Users may wish to express the precision to be preserved as either
+<acronym><acronymword>NSD</acronymword></acronym> or <acronym><acronymword>DSD</acronymword></acronym>.
+Invoke <acronym><acronymword>PPC</acronymword></acronym> with the long option <samp>--ppc var=prc</samp>, or give
+the same arguments to the synonyms
+<samp>--precision_preserving_compression</samp>, or to <samp>--quantize</samp>. 
+Here <var>var</var> is the variable to quantize, and <var>prc</var> is the 
+precision.
+The default algorithm assumes <var>prc</var> specifies <acronym><acronymword>NSD</acronymword></acronym>
+precision, e.g., <samp>T=2</samp> means <math><var>nsd=2</var></math>.
+Prepend <var>prc</var> with a decimal point to specify <acronym><acronymword>DSD</acronymword></acronym>
+precision, e.g., <samp>T=.2</samp> means <math><var>dsd=2</var></math>.
+<acronym><acronymword>NSD</acronymword></acronym> precision must be specified as a positive integer.
+<acronym><acronymword>DSD</acronymword></acronym> precision may be a positive or negative integer;
+and is specified as the negative <w>base 10</w> logarithm of the desired 
+precision, in accord with common usage. 
+For example, specifying <samp>T=.3</samp> or <samp>T=.-2</samp> tells the
+<acronym><acronymword>DSD</acronymword></acronym> algorithm to store only enough bits to preserve the  
+value of <var>T</var> rounded to the nearest thousandth or hundred,
+respectively. 
+</para>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="759"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="760"><code>coordinates</code> attribute</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="761"><code>bounds</code> attribute</indexterm></cindex>
+<para>Setting <var>var</var> to <code>default</code> has the special meaning of applying 
+the associated <acronym><acronymword>NSD</acronymword></acronym> or <acronym><acronymword>DSD</acronymword></acronym> algorithm to all floating
+point variables except coordinate variables.
+Variables <emph>not affected</emph> by <code>default</code> include integer and
+non-numeric atomic types, coordinates, and variables mentioned in 
+the <code>coordinates</code> or <code>bounds</code> attribute of any variable.
+<acronym><acronymword>NCO</acronymword></acronym> applies <acronym><acronymword>PPC</acronymword></acronym> to coordinate variables only if 
+those variables are explicitly specified (i.e., not with the
+<samp>default=<var>prc</var></samp> mechanism. 
+<acronym><acronymword>NCO</acronymword></acronym> applies <acronym><acronymword>PPC</acronymword></acronym> to integer-type variables only if 
+those variables are explicitly specified (i.e., not with the
+<samp>default=<var>prc</var></samp>, and only if the <acronym><acronymword>DSD</acronymword></acronym> algorithm is
+invoked with a negative <var>prc</var>.
+To prevent <acronym><acronymword>PPC</acronymword></acronym> from applying to certain non-coordinate
+variables (e.g., <code>gridcell_area</code> or <code>gaussian_weight</code>),
+explicitly specify a precision <w>exceeding 7</w> (for <code>NC_FLOAT</code>)
+<w>or 15</w> (for <code>NC_DOUBLE</code>) for those variables. 
+Since these are the maximum representable precisions in decimal digits,
+<acronym><acronymword>NCO</acronymword></acronym> <emph>turns-off</emph> <acronym><acronymword>PPC</acronymword></acronym> (i.e., does nothing)
+when more precision is requested.
+</para>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="762">bitmask</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="763">significand</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="764"><w><acronym><acronymword>IEEE</acronymword></acronym> 754</w></indexterm></cindex>
+<para>The time penalty for compressing and uncompressing data varies according 
+to the algorithm.
+The Number of Significant Digit (<acronym><acronymword>NSD</acronymword></acronym>) algorithm quantizes by
+bitmasking, and employs no floating point math.
+The Decimal Significant Digit (<acronym><acronymword>DSD</acronymword></acronym>) algorithm quantizes by
+rounding, which does require floating point math.
+Hence <acronym><acronymword>NSD</acronymword></acronym> is likely faster than <acronym><acronymword>DSD</acronymword></acronym>, though
+the difference has not been measured.
+<acronym><acronymword>NSD</acronymword></acronym> creates a bitmask to alter the <dfn>significand</dfn> of
+<w><acronym><acronymword>IEEE</acronymword></acronym> 754</w> floating point data.
+The bitmask is one for all bits to be retained and zero or one for all
+bits to be ignored.
+The algorithm assumes that the number of binary digits (i.e., bits)
+necessary to represent a single base-10 digit is 
+<math>ln(10)/ln(2) = 3.32</math>.
+The exact numbers of bits <var>Nbit</var> retained for single and double
+precision values are <math>ceil(3.32*<var>nsd</var>)+1</math> and
+<math>ceil(3.32*<var>nsd</var>)+2</math>, respectively.
+Once these <w>reach 23</w> <w>and 53</w>, respectively, bitmasking is
+completely ineffective. 
+This occurs at <math><var>nsd</var>=6.3</math> <w>and 15.4</w>, respectively.
+</para>
+<para>The <acronym><acronymword>DSD</acronymword></acronym> algorithm, by contrast, uses rounding to remove
+undesired precision.  
+<cindex index="cp" spaces=" "><indexterm index="cp" number="765"><command>rint()</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="766">C99</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="767"><acronym><acronymword>IEEE</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="768">significand</indexterm></cindex>
+The rounding 
+<footnote spaces="\n"><para>Rounding is performed by the internal math library <command>rint()</command> 
+family of functions that were standardized in C99.
+The exact alorithm employed is
+<math><var>val</var> := rint(<var>scale</var>*<var>val</var>)/<var>scale</var></math> where
+<var>scale</var> is the nearest power <w>of 2</w> that exceeds 
+<math>10**<var>prc</var></math>, and the inverse of <var>scale</var> is used when 
+<math><var>prc</var> < 0</math>.
+For <math><var>ppc</var> = 3</math> or <math><var>ppc</var> = -2</math>, for example, we have
+<math><var>scale</var> = 1024</math> and <math><var>scale</var> = 1/128</math>.</para></footnote>
+zeroes the greatest number of significand bits consistent with
+the desired precision.
+</para>
+<para>To demonstrate the change in <acronym><acronymword>IEEE</acronymword></acronym> representation caused by
+<acronym><acronymword>PPC</acronymword></acronym> rounding algorithms, consider again the case of <var>pi</var>,
+represented as an <code>NC_FLOAT</code>.
+The <w><acronym><acronymword>IEEE</acronymword></acronym> 754</w> single precision representations of the exact
+value (3.141592...), the value with only three significant digits treated
+as exact (3.140000...), and the value as stored (3.140625) after
+<acronym><acronymword>PPC</acronymword></acronym>-rounding with either the <acronym><acronymword>NSD</acronymword></acronym> (<math><var>prc</var>=3</math>)
+or <acronym><acronymword>DSD</acronymword></acronym> (<math><var>prc</var>=2</math>) algorithm are, respectively,
+<ignore>
+ncks -O -v pi --ppc pi=1  ~/nco/data/in.nc ~/foo_nsd1.nc 
+ncks -O -v pi --ppc pi=2  ~/nco/data/in.nc ~/foo_nsd2.nc 
+ncks -O -v pi --ppc pi=3  ~/nco/data/in.nc ~/foo_nsd3.nc 
+ncks -O -v pi --ppc pi=4  ~/nco/data/in.nc ~/foo_nsd4.nc 
+ncks -O -v pi --ppc pi=5  ~/nco/data/in.nc ~/foo_nsd5.nc 
+ncks -O -v pi --ppc pi=6  ~/nco/data/in.nc ~/foo_nsd6.nc 
+ncks -O -v pi --ppc pi=7  ~/nco/data/in.nc ~/foo_nsd7.nc 
+ncks -O -v pi --ppc pi=8  ~/nco/data/in.nc ~/foo_nsd8.nc 
+ncks -O -v pi --ppc pi=9  ~/nco/data/in.nc ~/foo_nsd9.nc 
+ncks -O -v pi --ppc pi=.2 ~/nco/data/in.nc ~/foo_dsd2.nc 
+ncks -s %20.16e -C -H ~/foo_nsd.nc
+ncks -s %20.16e -C -H ~/foo_dsd.nc
+ccc --tst=bnr --flt_foo=3.14159265358979323844 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.14000000000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.00000000000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.12500000000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.14062500000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.14062500000000000000 2> /dev/null | grep "Binary of float"
+ccc --tst=bnr --flt_foo=3.14147949218750000000 2> /dev/null | grep "Binary of float"
+</ignore>
+</para><example endspaces=" ">
+<pre xml:space="preserve">S Exponent  Fraction (Significand)   Decimal    Notes
+0 100000001 0010010000111111011011 # 3.14159265 Exact
+0 100000001 0010001111010111000011 # 3.14000000
+0 100000001 0010010000000000000000 # 3.14062500 NSD = 3
+0 100000001 0010010000000000000000 # 3.14062500 DSD = 2
+</pre></example>
+<para>The string of trailing zero-bits in the rounded values facilitates
+byte-stream compression. 
+Note that the <acronym><acronymword>NSD</acronymword></acronym> and <acronym><acronymword>DSD</acronymword></acronym> algorithms do not always
+produce results that are bit-for-bit identical, although they do in this
+particular case.
+</para>
+<html endspaces=" ">
+<a name="ppc_tbl_bit"></a> <!&textndash; http://nco.sf.net/nco.html#ppc_tbl_bit &textndash;>
+</html>
+<para>Reducing the preserved precision of <acronym><acronymword>NSD</acronymword></acronym>-rounding produces
+increasingly long strings of identical-bits amenable to compression: 
+</para><example endspaces=" ">
+<pre xml:space="preserve">S Exponent  Fraction (Significand)   Decimal    Notes
+0 100000001 0010010000111111011011 # 3.14159265 Exact
+0 100000001 0010010000111111011011 # 3.14159265 NSD = 8
+0 100000001 0010010000111111011010 # 3.14159262 NSD = 7
+0 100000001 0010010000111111011000 # 3.14159203 NSD = 6
+0 100000001 0010010000111111000000 # 3.14158630 NSD = 5
+0 100000001 0010010000111100000000 # 3.14154053 NSD = 4
+0 100000001 0010010000000000000000 # 3.14062500 NSD = 3
+0 100000001 0010010000000000000000 # 3.14062500 NSD = 2
+0 100000001 0010000000000000000000 # 3.12500000 NSD = 1
+</pre></example>
+<para>The consumption of about <w>3 bits</w> per digit of base-10 precision is
+evident, as is the coincidence of a quantized value that greatly
+exceeds the mandated precision for <math><acronym><acronymword>NSD</acronymword></acronym> = 2</math>.
+Although the <acronym><acronymword>NSD</acronymword></acronym> algorithm generally masks some bits for all 
+<math><var>nsd</var> <= 7</math> (for <code>NC_FLOAT</code>), compression algorithms like
+<acronym><acronymword>DEFLATE</acronymword></acronym> may need byte-size-or-greater (i.e., at least
+eight-bit) bit patterns before their algorithms can take advantage of
+of encoding such patterns for compression.
+Do not expect significantly enhanced compression from 
+<math><var>nsd</var> > 5</math> (for <code>NC_FLOAT</code>) or <math><var>nsd</var> > 14</math> (for
+<code>NC_DOUBLE</code>). 
+Clearly values stored as <code>NC_DOUBLE</code> (i.e., eight-bytes) are
+susceptible to much greater compression than <code>NC_FLOAT</code> for a given
+precision because their significands explicitly contain <w>53 bits</w>
+rather than <w>23 bits</w>.
+</para>
+<para>Maintaining non-biased statistical properties during lossy compression
+requires special attention. 
+The <acronym><acronymword>DSD</acronymword></acronym> algorithm uses <code>rint()</code>, which rounds toward the
+nearest even integer. 
+Thus <acronym><acronymword>DSD</acronymword></acronym> has no systematic bias.
+However, the <acronym><acronymword>NSD</acronymword></acronym> algorithm uses a bitmask technique
+susceptible to statistical bias.
+Zeroing all non-significant bits is guaranteed to produce numbers 
+quantized to the specified tolerance, i.e., half of the decimal value
+of the position occupied by the <acronym><acronymword>LSD</acronymword></acronym>. 
+However, always zeroing the non-significant bits results in quantized
+numbers that never exceed the exact number.
+This would produce a negative bias in statistical quantities (e.g., the
+average) subsequently derived from the quantized numbers. 
+To avoid this bias, <acronym><acronymword>NSD</acronymword></acronym> rounds non-significant bits down (to
+zero) or up (to one) in an alternating fashion when processing array
+data.
+In general, the first element is rounded down, the second up, and so
+on. 
+This results in a mean bias quite close to zero.
+The only exception is that the floating point value of zero is never 
+quantized upwards.
+For simplicity, <acronym><acronymword>NSD</acronymword></acronym> always rounds scalars downwards.
+</para>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="769"><acronym><acronymword>DEFLATE</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="770"><acronym><acronymword>HDF5</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="771"><command>gzip</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="772"><command>gunzip</command></indexterm></cindex>
+<para>Although <acronym><acronymword>NSD</acronymword></acronym> or <acronym><acronymword>DSD</acronymword></acronym> are different algorithms under
+the hood, they both replace the (unwanted) least siginificant bits of
+the <acronym><acronymword>IEEE</acronymword></acronym> significand with a string of consecutive zeroes.  
+Byte-stream compression techniques, such as the <command>gzip</command>
+<acronym><acronymword>DEFLATE</acronymword></acronym> algorithm compression available in <acronym><acronymword>HDF5</acronymword></acronym>, 
+always compress zero-strings more efficiently than random digits. 
+The net result is netCDF files that utilize compression can be
+significantly reduced in size.  
+This feature only works when the data are compressed, either internally 
+(by netCDF) or externally (by another user-supplied mechanism).
+It is most straightfoward to compress data internally using the built-in 
+compression and decompression supported by netCDF4.
+For convenience, <acronym><acronymword>NCO</acronymword></acronym> automatically activates file-wide
+Lempel-Ziv deflation (<pxref label="Deflation"><xrefnodename>Deflation</xrefnodename></pxref>) level one (i.e., <samp>-L 1</samp>)
+when <acronym><acronymword>PPC</acronymword></acronym> is invoked on any variable in a netCDF4 output file. 
+This makes <acronym><acronymword>PPC</acronymword></acronym> easier to use effectively, since the user
+need not explicitly specify deflation.
+Any explicitly specified deflation (including no deflation, <samp>-L 0</samp>) 
+will override the <acronym><acronymword>PPC</acronymword></acronym> deflation default.
+If the output file is a netCDF3 format, <acronym><acronymword>NCO</acronymword></acronym> will emit a
+message suggesting internal netCDF4 or external netCDF3 compression. 
+netCDF3 files compressed by an external utility such as <command>gzip</command>
+accrue approximately the same benefits (shrinkage) as netCDF4, although
+with netCDF3 the user or provider must uncompress (e.g.,
+<command>gunzip</command>) the file before accessing the data. 
+There is no benefit to rounding numbers and storing them in netCDF3
+files unless such custom compression/decompression is employed.
+Without that, one may as well maintain the undesired precision. 
+</para>
+<para>The user accesses <acronym><acronymword>PPC</acronymword></acronym> through a single switch, <samp>--ppc</samp>,
+repeated as many times as necessary.
+To apply the <acronym><acronymword>NSD</acronymword></acronym> algorithm to variable <var>u</var> use, e.g., 
+</para><example endspaces=" ">
+<pre xml:space="preserve">ncks -7 --ppc u=2 in.nc out.nc
+</pre></example>
+<para>The output file will preserve only two significant digits of <var>u</var>.
+The options <samp>-4</samp> or <samp>-7</samp> ensure a netCDF4-format output 
+(regardless of the input file format) to support internal compression.
+It is recommended though not required to write netCDF4 files after 
+<acronym><acronymword>PPC</acronymword></acronym>.
+For clarity the <samp>-4/-7</samp> switches are omitted in subsequent
+examples. 
+<cindex index="cp" spaces=" "><indexterm index="cp" number="773"><code>number_of_significant_digits</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="774"><code>least_significant_digit</code></indexterm></cindex>
+<acronym><acronymword>NCO</acronymword></acronym> attaches attributes that indicate the algorithm used and
+degree of precision retained for each variable affected by
+<acronym><acronymword>PPC</acronymword></acronym>. 
+The <acronym><acronymword>NSD</acronymword></acronym> and <acronym><acronymword>DSD</acronymword></acronym> algorithms store the attributes
+<code>number_of_significant_digits</code> and <code>least_significant_digit</code>
+<footnote><para>The <command>nc3tonc4</command> tool by Jeff Whitaker inspired
+<acronym><acronymword>NCO</acronymword></acronym> to implement <acronym><acronymword>PPC</acronymword></acronym>.
+<acronym><acronymword>NCO</acronymword></acronym> implements a different <acronym><acronymword>DSD</acronymword></acronym> algorithm than 
+<command>nc3tonc4</command>, and produces slightly different (not bit-for-bit) 
+though self-consistent and equivalent results.
+<command>nc3tonc4</command> records the precision of its <acronym><acronymword>DSD</acronymword></acronym> algorithm 
+in the attribute <code>least_significant_digit</code> and <acronym><acronymword>NCO</acronymword></acronym> 
+does the same for consistency.</para></footnote>, respectively.
+</para>
+<para>It is safe to attempt <acronym><acronymword>PPC</acronymword></acronym> on input that has already been
+rounded. 
+Variables can be made rounder, not sharper, i.e., variables cannot be
+&textldquo;un-rounded&textrdquo;. 
+Thus <acronym><acronymword>PPC</acronymword></acronym> attempted on an input variable with an existing
+<acronym><acronymword>PPC</acronymword></acronym> attribute proceeds only if the new rounding level exceeds
+the old, otherwise no new rounding occurs (i.e., a &textldquo;no-op&textrdquo;), and the
+original <acronym><acronymword>PPC</acronymword></acronym> attribute is retained rather than replaced with
+the newer value of <var>prc</var>.
+</para>
+<para>To request, say, five significant digits (<math><var>nsd=5</var></math>) for all
+fields, except, say, wind speeds which are only known to integer values
+(<math><var>dsd=0</var></math>) in the supplied units, requires <samp>--ppc</samp> twice: 
+</para><example endspaces=" ">
+<pre xml:space="preserve">ncks -4 --ppc default=5 --ppc u,v=.0 in.nc out.nc
+</pre></example>
+<para>To preserve five digits in all variables except coordinate variables
+and <var>u</var> and <var>v</var>, use the <samp>default</samp> option and separately
+specify the exceptions:
+</para><example endspaces=" ">
+<pre xml:space="preserve">ncks --ppc default=5 --ppc u,v=20 in.nc out.nc
+</pre></example>
+<para>The <samp>--ppc</samp> option may be specified any number of times to
+support varying precision types and levels, and each option may
+aggregate all the variables with the same precision
+</para><example endspaces=" ">
+<pre xml:space="preserve">ncks --ppc p,w,z=5 --ppc q,RH=4 --ppc T,u,v=3 in.nc out.nc
+</pre></example>
+<para>Any <var>var</var> argument may be a regular expression.
+This simplifies generating lists of related variables:
+</para><example endspaces=" ">
+<pre xml:space="preserve">ncks --ppc Q.?=5 --ppc FS.?,FL.?=4 --ppc RH=.3 in.nc out.nc
+</pre></example>
+<para>Although <acronym><acronymword>PPC</acronymword></acronym>-rounding instantly reduces data precision,
+on-disk storage reduction only occurs once the data are compressed.  
+</para>
+<html endspaces=" ">
+<a name="ppc_tbl_ffc"></a> <!&textndash; http://nco.sf.net/nco.html#ppc_tbl_ffc &textndash;>
+</html>
+<para>How can one be sure the lossy data are sufficiently precise?
+<acronym><acronymword>PPC</acronymword></acronym> preserves all significant digits of every value.
+The <acronym><acronymword>DSD</acronymword></acronym> algorithm uses floating point math to round each 
+value optimally so that it has the maximum number of zeroed bits
+that preserve the specified precision.
+The <acronym><acronymword>NSD</acronymword></acronym> algorithm uses a theoretical approach (3.2 bits per
+base-10 digit), tuned and tested to ensure the <emph>worst</emph> case
+quantization error is less than half the value of the minimum increment
+in the least significant digit. 
+</para>
+<para><emph>Note for Info users</emph>: 
+The definition of error metrics relies heavily on mathematical
+expressions which cannot be easily represented in Info.
+<emph>See the <uref><urefurl>./nco.pdf</urefurl><urefdesc spaces=" ">printed manual</urefdesc></uref> for much more detailed
+and complete documentation of this subject.</emph>
+</para>
+<tex endspaces=" ">
+We define several metrics to quantify the quantization error.
+The mean error~$\pslavg$ and mean absolute error~$\pslmebs$ incurred in
+quantizing a variable from its true values~$\xxx_{\idx}$ to quantized
+values~$\qqq_{\idx}$ are, respectively,
+$$
+\pslavg = {\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx}
+\mskflg_{\idx} \wgt_{\idx} ( \xxx_{\idx} - \qqq_{\idx} ) \over
+\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx} \mskflg_{\idx} \wgt_{\idx}}\qquad\hbox{and}\qquad
+\pslmebs = {\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx}
+\mskflg_{\idx} \wgt_{\idx} | \xxx_{\idx} - \qqq_{\idx} | \over
+\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx} \mskflg_{\idx} \wgt_{\idx}}  
+$$
+where $\mssflg_{\idx}$ is~1 unless $\xxx_{\idx}$~equals the missing
+value, $\mskflg_{\idx}$ is~1 unless $\xxx_{\idx}$~is masked, and
+$\wgt_{\idx}$~is the weight.
+The maximum and minimum errors $\pslmax$ and~$\pslmin$ are both signed 
+$$
+\pslmax = {\rm max}(\xxx_{\idx} - \qqq_{\idx})\qquad\hbox{and}\qquad
+\pslmin = {\rm min}(\xxx_{\idx} - \qqq_{\idx})
+$$
+while the maximum and minimum absolute errors $\pslmabs$ are positive-definite.
+$$
+\pslmabs = {\rm max}|\xxx_{\idx} - \qqq_{\idx}| = {\rm max}(|\pslmax|,|\pslmin|)
+$$
+$$
+\pslmibs = {\rm min}|\xxx_{\idx} - \qqq_{\idx}| = {\rm min}(|\pslmax|,|\pslmin|)
+$$
+Typically $\pslmibs = 0$ for quantization, since many exact values
+need no quantization.
+Bit-shifting zeros into the least significant bits (<acronym><acronymword>LSB</acronymword></acronym>s)
+always underestimates true values so that $\pslmax = 0$.
+Conversely, bit-shifting ones into the <acronym><acronymword>LSB</acronymword></acronym>s always
+overestimates true values so that $\pslmin = 0$. 
+Our <acronym><acronymword>NSD</acronymword></acronym> algorithm is balanced because it alternates
+bit-shifting zeroes and ones.
+Balanced algorithms should yield $\pslmax \approx -\pslmin$,
+$\pslmabs \approx \pslmibs$, and $\pslavg \approx 0$.
+
+The three most important error metrics for quantization are 
+$\pslmabs$, $\pslmebs$, and~$\pslavg$.
+The upper bound (worst case) quantization performance is~$\pslmabs$.
+$\pslmebs$~measures the absolute mean accuracy of quantization, and does
+not allow positive and negative offsets to compensate eachother and
+conceal poor performance.
+The difference bewtween~$\pslmabs$ and~$\pslmebs$ indicates how much 
+of an outlier the worst case is.
+The mean accuracy~$\pslavg$ indicates whether statistical properties of 
+quantized numbers will accurately reflect the true values. 
+</tex>
+
+<para>All three metrics are expressed in terms of the fraction of the ten&textrsquo;s
+place occupied by the <acronym><acronymword>LSD</acronymword></acronym>.
+If the <acronym><acronymword>LSD</acronymword></acronym> is the hundreds digit or the thousandths digit,
+then the metrics are fractions <w>of 100</w>, or <w>of 1/100</w>,
+respectively. 
+<acronym><acronymword>PPC</acronymword></acronym> algorithms should produce maximum absolute errors no
+greater <w>than 0.5</w> in these units.
+If the <acronym><acronymword>LSD</acronymword></acronym> is the hundreds digit, then quantized versions of
+true values will be within fifty of the true value.
+It is much easier to satisfy this tolerance for a true value 
+<w>of 100</w> (only 50% accuracy required) than <w>for 999</w> 
+<w>(5% accuracy</w> required). 
+Thus the minimum accuracy guaranteed for <math><var>nsd</var>=1</math> ranges
+from 5&textndash;50%.
+For this reason, the best and worst cast performance usually occurs for
+true values whose <acronym><acronymword>LSD</acronymword></acronym> value is close to one and nine,
+respectively. 
+Of course most users prefer <math><var>prc</var> > 1</math> because accuracies
+increase exponentially with <var>prc</var>.
+Continuing the previous example to <math><var>prc</var>=2</math>, 
+quantized versions of true values from 1000&textndash;9999 will also be 
+<w>within 50</w> of the true value, i.e., have accuracies from 0.5&textndash;5%.
+In other words, only two significant digits are necessary to guarantee 
+better <w>than 5%</w> accuracy in quantization. 
+We recommend that dataset producers and users consider quantizing
+datasets with <math><var>nsd</var>=3</math>.
+This guarantees accuracy of 0.05&textndash;0.5% for individual values.
+Statistics computed from ensembles of quantized values will, assuming
+the mean error 
+<set name="flg" line=" flg"></set>
+<tex endspaces=" ">
+$\pslavg$
+<clear name="flg" line=" flg"></clear>
+</tex>
+<math><var>Emean</var></math>
+<clear name="flg" line=" flg"></clear>
+is small, have much better accuracy <w>than 0.5%</w>.
+This accuracy is the most that can be justified for many applications.   
+</para>
+<para>To demonstrate these principles we conduct error analyses on an
+artificial, reproducible dataset, and on an actual dataset of
+observational analysis values. 
+<footnote><para>The artificial dataset employed is one million evenly spaced
+values from 1.0&textndash;2.0.
+The analysis data are <math>N=13934592</math> values of the temperature field
+from the <acronym><acronymword>NASA</acronymword></acronym> <acronym><acronymword>MERRA</acronymword></acronym> analysis of 20130601.</para></footnote>
+The table summarizes quantization accuracy based on the three metrics.
+</para><table commandarg="code" spaces=" " endspaces=" ">
+<tableentry><tableterm><item spaces=" "><itemformat command="code">NSD</itemformat></item>
+</tableterm><tableitem><para>Number of Significant Digits.
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">Emabs</itemformat></item>
+</tableterm><tableitem><para>Maximum absolute error.
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">Emebs</itemformat></item>
+</tableterm><tableitem><para>Mean absolute error.
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">Emean</itemformat></item>
+</tableterm><tableitem><para>Mean error.
+</para></tableitem></tableentry></table>
+
+<ignore>
+9.9692099683868690e+36f = 0 1111100 111100000000000000000000 NC_FILL_FLOAT
+2.3509885615147286E-38f = 0 0000000 111111111111111111111111 Recommended
+9.9692099683868690e+36  = 0 1000111100 11110000000000000000000000000000000000000000000000000 NC_FILL_DOUBLE
+2.84809453888921745415348453979E-306 = 0 0000000111 11111111111111111111111111111111111111111111111111111 Recommended
+
+2.22507385850720088902458687609E-308 = 0 0000000000 11111111111111111111111111111111111111111111111111111
+1.17549435082228737746264717725E-38  = 0 0111000000 11111111111111111111111111111111111111111111111111111
+1.17549435082228737746264717725E-38  = 0 0000000    100000000000000000000000
+
+# Accuracy tests
+
+# Satellite:
+ncks -3 -O -v T ${DATA}/hdf/MERRA300.prod.assim.inst3_3d_asm_Cp.20130601.nc ~/foo_T.nc
+ncatted -a scale_factor,,d,, -a add_offset,,d,, ~/foo_T.nc
+ncap2 -O -v -s 'ppc=T;nsd1=ppc;nsd2=ppc;nsd3=ppc;nsd4=ppc;nsd5=ppc;nsd6=ppc;nsd7=ppc' ~/foo_T.nc ~/foo_ppc_in.nc
+# Artificial double
+ncap2 -O -v -s 'defdim("dmn",1000000);ppc=array(1.0,1.e-6,$dmn);nsd1=ppc;nsd2=ppc;nsd3=ppc;nsd4=ppc;nsd5=ppc;nsd6=ppc;nsd7=ppc' ~/nco/data/in.nc ~/foo_ppc_in.nc
+# Artificial float
+ncap2 -O -v -s 'defdim("dmn",1000000);ppc=float(array(1.0,1.e-6,$dmn));nsd1=ppc;nsd2=ppc;nsd3=ppc;nsd4=ppc;nsd5=ppc;nsd6=ppc;nsd7=ppc' ~/nco/data/in.nc ~/foo_ppc_in.nc
+
+# nc3tonc4
+nc3tonc4 -o --quantize=nsd1=1,nsd2=2,nsd3=3,nsd4=4,nsd5=5,nsd6=6,nsd7=7 --quiet=1 ~/foo_ppc_in.nc ~/foo_ppc_out.nc
+# DSD
+ncks -O -C --ppc nsd1=.1 --ppc nsd2=.2 --ppc nsd3=.3 --ppc nsd4=.4 --ppc nsd5=.5 --ppc nsd6=.6 --ppc nsd7=.7 ~/foo_ppc_in.nc ~/foo_ppc_out.nc
+# NSD
+ncks -O -C --ppc nsd1=1 --ppc nsd2=2 --ppc nsd3=3 --ppc nsd4=4 --ppc nsd5=5 --ppc nsd6=6 --ppc nsd7=7 ~/foo_ppc_in.nc ~/foo_ppc_out.nc
+
+# Generic rounding test:
+ncbo -O -C ~/foo_ppc_out.nc ~/foo_ppc_in.nc ~/foo_ppc_dff.nc
+ncbo -O -C -y dvd ~/foo_ppc_dff.nc ~/foo_ppc_in.nc ~/foo_ppc_rat.nc
+ncap2 -O -v -s 'nsd1*=10;nsd2*=100;nsd3*=1000;nsd4*=10000;nsd5*=100000;nsd6*=1000000;nsd7*=10000000' ~/foo_ppc_rat.nc ~/foo_ppc_rat_scl.nc
+ncwa -O -C -y avg ~/foo_ppc_rat_scl.nc ~/foo_ppc_avg.nc
+ncwa -O -C -y max ~/foo_ppc_rat_scl.nc ~/foo_ppc_max.nc
+ncwa -O -C -y min ~/foo_ppc_rat_scl.nc ~/foo_ppc_min.nc
+ncwa -O -C -y mabs ~/foo_ppc_rat_scl.nc ~/foo_ppc_mabs.nc
+ncwa -O -C -y mebs ~/foo_ppc_rat_scl.nc ~/foo_ppc_mebs.nc
+ncwa -O -C -y mibs ~/foo_ppc_rat_scl.nc ~/foo_ppc_mibs.nc
+</ignore>
+<example endspaces=" ">
+<pre xml:space="preserve">Artificial Data: N=1000000 values in [1.0,2.0) in steps of 1.0e-6
+Single-Precision        Double-Precision   Single-Precision
+NSD Emabs Emebs Emean   Emabs Emebs Emean  DSD Emabs Emebs Emean
+ 1  0.31  0.11  4.1e-4  0.31  0.11  4.0e-4  1  0.30  0.11 -8.1e-4  
+ 2  0.39  0.14  6.8e-5  0.39  0.14  5.5e-5  2  0.39  0.14 -1.3e-4
+ 3  0.49  0.17  1.0e-6  0.49  0.17 -5.5e-7  3  0.49  0.17 -2.0e-5
+ 4  0.30  0.11  3.2e-7  0.30  0.11 -6.1e-6  4  0.30  0.11  5.1e-8
+ 5  0.37  0.13  3.1e-7  0.38  0.13 -5.6e-6  5  0.38  0.13  2.6e-6
+ 6  0.36  0.12 -4.4e-7  0.48  0.17 -4.1e-7  6  0.48  0.17  7.2e-6
+ 7  0.00  0.00  0.0     0.30  0.10  1.5e-7  7  0.00  0.00  0.0     
+
+Observational Analysis: N=13934592 values MERRA Temperature 20130601
+Single-Precision        
+NSD Emabs Emebs Emean   
+ 1  0.31  0.11  2.4e-3
+ 2  0.39  0.14  3.8e-4
+ 3  0.49  0.17 -9.6e-5 
+ 4  0.30  0.11  2.3e-3
+ 5  0.37  0.13  2.2e-3
+ 6  0.36  0.13  1.7e-2
+ 7  0.00  0.00  0.0     
+</pre></example>
+<para>All results show that <acronym><acronymword>PPC</acronymword></acronym> quantization performs as expected.
+Absolute maximum errors <math><var>Emabs</var> < 0.5</math> for all <var>prc</var>.
+For <math>1 <= <var>prc</var> <= 6</math>, quantization results in comparable
+maximum absolute and mean absolute errors <var>Emabs</var> and <var>Emebs</var>,
+respectively. 
+Mean errors <var>Emean</var> are orders of magnitude smaller because 
+quantization produces over- and under-estimated values in balance.
+When <math><var>prc</var>=7</math>, quantization of single-precision values is
+ineffective, because all available bits are used to represent the 
+maximum precision of seven digits.
+The maximum and mean absolute errors <var>Emabs</var> and <var>Emebs</var> are
+nearly identical across algorithms, precisions, and dataset types.
+This is consistent with both the artificial data and empirical data
+being random, and thus exercising equally strengths and weaknesses of
+the algorithms over the course of millions of input values.
+We generated artificial arrays with many different starting values
+and interval spacing and all gave qualitatively similar results.
+The results presented are the worst obtained.
+</para>
+<para>The artificial data has much smaller mean error <var>Emean</var> than the
+observational analysis. 
+The reason why is unclear.
+It may be because the temperature field is concentrated in particular
+ranges of values (and associated quantization errors) prevalent on
+Earth, e.g., <math>200 < <var>T</var> < 320</math>. 
+It is worth noting that the mean error <math><var>Emean</var> < 0.01</math> for
+<math>1 <= <var>prc</var> < 6</math>, and that <var>Emean</var> is typically at least 
+two or more orders of magnitude less than <var>Emabs</var>.
+Thus quantized values with precisions as low as <math><var>prc</var>=1</math> 
+still yield highly significant statistics by contemporary scientific
+standards. 
+</para>
+<para>Testing shows that <acronym><acronymword>PPC</acronymword></acronym> quantization enhances compression of 
+typical climate datasets. 
+The degree of enhancement depends, of course, on the required
+precision. 
+Model results are often computed as <code>NC_DOUBLE</code> then archived 
+as <code>NC_FLOAT</code> to save space. 
+<ignore>
+# Table entries
+fl=${DATA}/dstmch90/dstmch90_clm.nc
+fl=${DATA}/hdf/b1850c5cn_doe_polar_merged_0_cesm1_2_0_HD+MAM4+tun2b.hp.e003.cam.h0.0001-01.nc
+fl=${DATA}/hdf/MERRA300.prod.assim.inst3_3d_asm_Cp.20130601.nc
+fl=${DATA}/hdf/OMI-Aura_L2-OMIAuraSO2_2012m1222-o44888_v01-00-2014m0107t114720.h5
+
+# ncks PPC only
+sz_rgn=`ls -l ${fl} | cut -d ' ' -f 5`
+fmt_fnc(){ gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}';} 
+cmd="ls -l ${fl}";sz_new=`${cmd} | cut -d ' ' -f 5`;fmt_fnc ${sz_rgn} ${sz_new}
+
+sz_new=`bzip2 -1 -f ${fl};ls -l ${fl}.bz2 | cut -d ' ' -f 5`;bunzip2 ${fl}.bz2;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`bzip2 -9 -f ${fl};ls -l ${fl}.bz2 | cut -d ' ' -f 5`;bunzip2 ${fl}.bz2;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 0 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 9 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -7 -L 0 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -7 -L 1 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=7 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=6 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=5 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=4 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=3 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=2 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncks -O -7 -L 1 --ppc default=1 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -7 -L 1 --ppc default=4 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -7 -L 9 --ppc default=4 ${fl} ~/foo.nc;ls -l ~/foo.nc | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+sz_new=`ncpdq -O -3 --ppc default=4 ${fl} ~/foo.nc;bzip2 -1 -f ~/foo.nc;ls -l ~/foo.nc.bz2 | cut -d ' ' -f 5`;echo ${sz_rgn} ${sz_new} | gawk '{print "old=" $1/1000000 " MB, new=" $2/1000000 " MB, cmp=" 100*$2/$1 "%"}'
+</ignore>
+<html endspaces=" ">
+<a name="ppc_tbl_nc"></a> <!&textndash; http://nco.sf.net/nco.html#ppc_tbl_nc &textndash;>
+</html>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="775">Burrows-Wheeler algorithm</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="776"><command>bzip2</command></indexterm></cindex>
+This table summarizes the performance of lossless and lossy compression
+on two typical, or at least random, netCDF data files.  
+The files were taken from representative model-simulated and
+satellite-retrieved datasets.
+Only floating point data were compressed.
+No attempt was made to compress integer-type variables as they occupy an 
+insignificant fraction of every dataset.
+The columns are
+</para><table commandarg="code" spaces=" " endspaces=" ">
+<tableentry><tableterm><item spaces=" "><itemformat command="code">Type </itemformat></item>
+</tableterm><tableitem><para>File-type: 
+<kbd>N3</kbd> for netCDF <code>CLASSIC</code>,
+<kbd>N4</kbd> for <code>NETCDF4</code>), 
+<kbd>N7</kbd> for <code>NETCDF4_CLASSIC</code> (which comprises netCDF3
+data types and structures with netCDF4 storage features like
+compression),  
+<kbd>H4</kbd> for <acronym><acronymword>HDF4</acronymword></acronym>, and
+<kbd>H5</kbd> for <acronym><acronymword>HDF5</acronymword></acronym>.
+<kbd>N4/7</kbd> means results apply to both <kbd>N4</kbd> and <kbd>N7</kbd> filetypes.
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">LLC</itemformat></item>
+</tableterm><tableitem><para>Type of lossless compression employed, if any.
+Bare numbers refer to the strength of the <acronym><acronymword>DEFLATE</acronymword></acronym> algorithm
+employed internally by netCDF4/<acronym><acronymword>HDF5</acronymword></acronym>, while numbers prefixed
+with <kbd>B</kbd> refer to the block size employed by the Burrows-Wheeler
+algorithm in <command>bzip2</command>. 
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">PPC </itemformat></item>
+</tableterm><tableitem><para>Number of significant digits retained by the precision-preserving
+compression <acronym><acronymword>NSD</acronymword></acronym> algorithm.  
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">Pck </itemformat></item>
+</tableterm><tableitem><para><kbd>Y</kbd> if the default <command>ncpdq</command> packing algorithm (convert
+floating point types to <code>NC_SHORT</code>) was employed.
+A dash (<kbd>-</kbd>) indicates the associated compression feature
+was not employed.
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">Size</itemformat></item>
+</tableterm><tableitem><para>Resulting filesize in <acronym><acronymword>MB</acronymword></acronym>.
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">%</itemformat></item>
+</tableterm><tableitem><para>Compression ratio, i.e., resulting filesize relative to original size,
+in percent. 
+In some cases the original files is already losslessly compressed. 
+The compression ratios reported are relative to the size of the original
+file as distributed, not as optimally losslessly compressed. 
+</para></tableitem></tableentry></table>
+<ignore>
+# Lines trimmed from table as redundant/misleading
+  N7   1   4  Y    7.9  22.9  ncpdq --ppc default=4
+  N7   9   4  Y    7.7  22.1  ncpdq -L 9 --ppc default=4
+  N3  B1   4  Y    6.3  18.1  ncpdq --ppc default=4 bzip2 -1
+
+  N7   1   4  Y   26.3  21.9  ncpdq --ppc default=4
+  N7   9   4  Y   25.6  21.4  ncpdq -L 9 --ppc default=4
+  N3  B1   4  Y   20.9  17.4  ncpdq --ppc default=4 bzip2 -1
+
+N4/7   1   4  Y  133.6  54.7  ncpdq -L 1 --ppc default=4
+N4/7   9   4  Y  127.0  52.0  ncpdq -L 9 --ppc default=4
+  N3  B1   4  Y  114.0  46.7  ncpdq --ppc default=4 bzip2 -1
+
+  N4   1   4  Y   13.0  44.0  ncpdq -L 1 --ppc default=4
+  N4   9   4  Y   12.5  42.5  ncpdq -L 9 --ppc default=4
+</ignore>
+<example endspaces=" ">
+<pre xml:space="preserve"># dstmch90_clm.nc
+Type LLC PPC Pck  Size   %    Flags and Notes
+  N3   -   -  -   34.7 100.0  Original is not compressed
+  N3  B1   -  -   28.9  83.2  bzip2 -1
+  N3  B9   -  -   29.3  84.4  bzip2 -9
+  N7   -   -  -   35.0 101.0     
+  N7   1   -  -   28.2  81.3  -L 1
+  N7   9   -  -   28.0  80.8  -L 9
+  N7   -   -  Y   17.6  50.9  ncpdq -L 0
+  N7   1   -  Y    7.9  22.8  ncpdq -L 1
+  N7   1   7  -   28.2  81.3  --ppc default=7
+  N7   1   6  -   27.9  80.6  --ppc default=6
+  N7   1   5  -   25.9  74.6  --ppc default=5
+  N7   1   4  -   22.3  64.3  --ppc default=4
+  N7   1   3  -   18.9  54.6  --ppc default=3
+  N7   1   2  -   14.5  43.2  --ppc default=2
+  N7   1   1  -   10.0  29.0  --ppc default=1
+
+# b1850c5cn_doe_polar_merged_0_cesm1_2_0_HD+MAM4+tun2b.hp.e003.cam.h0.0001-01.nc
+Type LLC PPC Pck  Size   %    Flags and Notes
+  N3   -   -  -  119.8 100.0  Original is not compressed
+  N3  B1   -  -   84.2  70.3  bzip2 -1
+  N3  B9   -  -   84.8  70.9  bzip2 -9
+  N7   -   -  -  120.5 100.7     
+  N7   1   -  -   82.6  69.0  -L 1
+  N7   9   -  -   82.1  68.6  -L 9
+  N7   -   -  Y   60.7  50.7  ncpdq -L 0
+  N7   1   -  Y   26.0  21.8  ncpdq -L 1
+  N7   1   7  -   82.6  69.0  --ppc default=7
+  N7   1   6  -   81.9  68.4  --ppc default=6
+  N7   1   5  -   77.2  64.5  --ppc default=5
+  N7   1   4  -   69.0  57.6  --ppc default=4
+  N7   1   3  -   59.3  49.5  --ppc default=3
+  N7   1   2  -   49.5  41.3  --ppc default=2
+  N7   1   1  -   38.2  31.9  --ppc default=1
+
+# MERRA300.prod.assim.inst3_3d_asm_Cp.20130601.hdf
+Type LLC PPC Pck  Size   %    Flags and Notes
+  H4   5   -  -  244.3 100.0  Original is compressed
+  H4  B1   -  -  244.7 100.1  bzip2 -1
+  N4   5   -  -  214.5  87.8
+  N7   5   -  -  210.6  86.2  
+  N4  B1   -  -  215.4  88.2  bzip2 -1
+  N4  B9   -  -  214.8  87.9  bzip2 -9
+  N3   -   -  -  617.1 252.6
+N4/7   -   -  -  694.0 284.0  -L 0
+N4/7   1   -  -  223.2  91.3  -L 1
+N4/7   9   -  -  207.3  84.9  -L 9
+N4/7   -   -  Y  347.1 142.1  ncpdq -L 0
+N4/7   1   -  Y  133.6  54.7  ncpdq -L 1
+N4/7   1   7  -  223.1  91.3  --ppc default=7
+N4/7   1   6  -  225.1  92.1  --ppc default=6
+N4/7   1   5  -  221.4  90.6  --ppc default=5
+N4/7   1   4  -  201.4  82.4  --ppc default=4
+N4/7   1   3  -  185.3  75.9  --ppc default=3
+N4/7   1   2  -  150.0  61.4  --ppc default=2
+N4/7   1   1  -  100.8  41.3  --ppc default=1
+
+# OMI-Aura_L2-OMIAuraSO2_2012m1222-o44888_v01-00-2014m0107t114720.h5
+Type LLC PPC Pck  Size   %    Flags and Notes
+  H5   5   -  -   29.5 100.0  Original is compressed
+  H5  B1   -  -   29.3  99.6  bzip2 -1
+  N4   5   -  -   29.5 100.0
+  N4  B1   -  -   29.3  99.6  bzip2 -1
+  N4  B9   -  -   29.3  99.4  bzip2 -9
+  N4   -   -  -   50.7 172.3  -L 0
+  N4   1   -  -   29.8 101.3  -L 1
+  N4   9   -  -   29.4  99.8  -L 9
+  N4   -   -  Y   27.7  94.0  ncpdq -L 0
+  N4   1   -  Y   12.9  43.9  ncpdq -L 1
+  N4   1   7  -   29.7 100.7  --ppc default=7
+  N4   1   6  -   29.7 100.8  --ppc default=6
+  N4   1   5  -   27.3  92.8  --ppc default=5
+  N4   1   4  -   23.8  80.7  --ppc default=4
+  N4   1   3  -   20.3  69.0  --ppc default=3
+  N4   1   2  -   15.1  51.2  --ppc default=2
+  N4   1   1  -    9.9  33.6  --ppc default=1
+</pre></example>
+
+<cindex index="cp" spaces=" "><indexterm index="cp" number="777"><acronym><acronymword>NCAR</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="778"><acronym><acronymword>CAM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="779"><acronym><acronymword>GCM</acronymword></acronym></indexterm></cindex>
+<para>A selective, per-variable approach to <acronym><acronymword>PPC</acronymword></acronym> yields the
+best balance of precision and compression yet requires the dataset
+producer to understand the intrinsic precision of each variable.
+Such a specification for a <acronym><acronymword>GCM</acronymword></acronym> dataset might look like this 
+(using names for the <acronym><acronymword>NCAR</acronymword></acronym> <acronym><acronymword>CAM</acronymword></acronym> model):
+</para><example endspaces=" ">
+<pre xml:space="preserve"># Be conservative on non-explicit quantities, so default=5
+# Some quantities deserve four significant digits
+# Many quantities, such as aerosol optical depths and burdens, are 
+# highly uncertain and only useful to three significant digits.
+ncks -7 -O \
+--ppc default=5 \
+--ppc AN.?,AQ.?=4 \
+--ppc AER.?,AOD.?,ARE.?,AW.?,BURDEN.?=3 \
+ncar_cam.nc ~/foo.nc
+</pre></example>
+
+<html endspaces=" ">
 <a name="dfl_lvl"></a> <!&textndash; http://nco.sf.net/nco.html#dfl_lvl &textndash;>
 <a name="dfl"></a> <!&textndash; http://nco.sf.net/nco.html#dfl &textndash;>
 <a name="lz"></a> <!&textndash; http://nco.sf.net/nco.html#lz &textndash;>
@@ -6991,14 +7864,14 @@ variables.
 <a name="deflation"></a> <!&textndash; http://nco.sf.net/nco.html#deflation &textndash;>
 </html>
 </section>
-<node name="Deflation" spaces=" "><nodename>Deflation</nodename><nodenext spaces=" ">MD5 digests</nodenext><nodeprev spaces=" ">Chunking</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Deflation" spaces=" "><nodename>Deflation</nodename><nodenext spaces=" ">MD5 digests</nodenext><nodeprev spaces=" ">Compression</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Deflation</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="741"><code>-L</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="742"><code>--deflate</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="743"><code>--dfl_lvl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="744">Lempel-Ziv deflation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="745">compression</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="746">deflation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="780"><code>-L</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="781"><code>--deflate</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="782"><code>--dfl_lvl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="783">Lempel-Ziv deflation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="784">compression</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="785">deflation</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncap2</command>, <command>ncbo</command>, <command>nces</command>,
 <command>ncecat</command>, <command>ncflint</command>, <command>ncks</command>, <command>ncpdq</command>,
@@ -7007,22 +7880,24 @@ Short options: <samp>-L</samp>&linebreak;
 Long options: <samp>--dfl_lvl</samp>, <samp>--deflate</samp>&linebreak;  
 </para></cartouche>
 
-<para>All <acronym><acronymword>NCO</acronymword></acronym> operators that define variables support 
-the netCDF4 feature of storing variables compressed with Lempel-Ziv
-deflation. 
-The Lempel-Ziv algorithm is a lossless data compression technique.
-Activate this deflation with the <code>-L <var>dfl_lvl</var></code> short option
-(or with the same argument to the <samp>--dfl_lvl</samp> or <samp>--deflate</samp> 
-long options).
-Specify the deflation level <var>dfl_lvl</var> on a scale from 
-no deflation (<var>dfl_lvl = 0</var>) to maximum deflation 
-(<var>dfl_lvl = 9</var>).
+<para>All <acronym><acronymword>NCO</acronymword></acronym> operators that define variables support the netCDF4
+feature of storing variables compressed with the lossless
+<acronym><acronymword>DEFLATE</acronymword></acronym> compression algorithm.
+<acronym><acronymword>DEFLATE</acronymword></acronym> combines the Lempel-Ziv encoding with Huffman coding.
+The specific version used by netCDF4/<acronym><acronymword>HDF5</acronymword></acronym> is that implemented
+in the <command>zlib</command> library used by <command>gzip</command>.
+Activate deflation with the <code>-L <var>dfl_lvl</var></code> short option (or
+with the same argument to the <samp>--dfl_lvl</samp> or <samp>--deflate</samp> long
+options). 
+Specify the deflation level <var>dfl_lvl</var> on a scale from no deflation
+(<var>dfl_lvl = 0</var>) to maximum deflation (<var>dfl_lvl = 9</var>).
+Under the hood, this selects the compression blocksize.
 Minimal deflation (<var>dfl_lvl = 1</var>) achieves considerable storage
 compression with little time penalty.
 Higher deflation levels require more time for compression.
 File sizes resulting from minimal (<var>dfl_lvl = 1</var>) and maximal   
-(<var>dfl_lvl = 9</var>) deflation levels typically differ by a few
-percent in size. 
+(<var>dfl_lvl = 9</var>) deflation levels typically differ by less 
+<w>than 10%</w> in size. 
 </para>
 <para>To compress an entire file using deflation, use
 </para><example endspaces=" ">
@@ -7054,17 +7929,17 @@ ncpdq -4 -L 9 in.nc out.nc # Deflated packing  (~80% compression)
 <a name="security"></a> <!&textndash; http://nco.sf.net/nco.html#security &textndash;>
 </html>
 </section>
-<node name="MD5-digests" spaces=" "><nodename>MD5 digests</nodename><nodenext spaces=" ">Buffer sizes</nodenext><nodeprev spaces=" ">Deflation</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="MD5-digests" spaces=" "><nodename>MD5 digests</nodename><nodenext spaces=" ">Buffer sizes</nodenext><nodeprev spaces=" ">Deflation</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>MD5 digests</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="747"><code>--md5_digest</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="748"><code>--md5_dgs</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="749"><code>--md5_wrt_att</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="750"><code>--md5_write_attribute</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="751">integrity</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="752">security</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="753">digest</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="754">hash</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="755">MD5 digest</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="786"><code>--md5_digest</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="787"><code>--md5_dgs</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="788"><code>--md5_wrt_att</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="789"><code>--md5_write_attribute</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="790">integrity</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="791">security</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="792">digest</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="793">hash</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="794">MD5 digest</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: 
 <command>ncecat</command>, <command>ncks</command>, <command>ncrcat</command>&linebreak;
@@ -7157,14 +8032,14 @@ We welcome feedback and suggestions from users.
 <a name="buffer"></a> <!&textndash; http://nco.sf.net/nco.html#buffer &textndash;>
 </html>
 </section>
-<node name="Buffer-sizes" spaces=" "><nodename>Buffer sizes</nodename><nodenext spaces=" ">RAM disks</nodenext><nodeprev spaces=" ">MD5 digests</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Buffer-sizes" spaces=" "><nodename>Buffer sizes</nodename><nodenext spaces=" ">RAM disks</nodenext><nodeprev spaces=" ">MD5 digests</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Buffer sizes</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="756"><code>--bfr_sz_hnt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="757">Buffer sizes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="758">File buffers</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="759"><command>stat() system call</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="760">I/O block size</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="761">System calls</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="795"><code>--bfr_sz_hnt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="796">Buffer sizes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="797">File buffers</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="798"><command>stat() system call</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="799">I/O block size</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="800">System calls</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: &linebreak;
@@ -7202,21 +8077,21 @@ ncks: INFO nc__open() opened file with buffer size = 2097152 bytes
 <a name="diskless"></a> <!&textndash; http://nco.sf.net/nco.html#diskless &textndash;>
 </html>
 </section>
-<node name="RAM-disks" spaces=" "><nodename>RAM disks</nodename><nodenext spaces=" ">Packed data</nodenext><nodeprev spaces=" ">Buffer sizes</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="RAM-disks" spaces=" "><nodename>RAM disks</nodename><nodenext spaces=" ">Packed data</nodenext><nodeprev spaces=" ">Buffer sizes</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>RAM disks</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="762"><code>--ram_all</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="763"><code>--create_ram</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="764"><code>--open_ram</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="765"><code>--diskless_all</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="766"><acronym><acronymword>RAM</acronymword></acronym> disks</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="767"><acronym><acronymword>RAM</acronymword></acronym> files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="768"><code>NC_DISKLESS</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="769">diskless files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="770">memory requirements</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="771">memory available</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="772"><acronym><acronymword>RAM</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="773">swap space</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="774">peak memory usage</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="801"><code>--ram_all</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="802"><code>--create_ram</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="803"><code>--open_ram</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="804"><code>--diskless_all</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="805"><acronym><acronymword>RAM</acronymword></acronym> disks</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="806"><acronym><acronymword>RAM</acronymword></acronym> files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="807"><code>NC_DISKLESS</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="808">diskless files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="809">memory requirements</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="810">memory available</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="811"><acronym><acronymword>RAM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="812">swap space</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="813">peak memory usage</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: &linebreak;
@@ -7265,7 +8140,7 @@ To be safe, use <samp>--open_ram</samp>, <samp>--ram_all</samp>, or
 of four) smaller than your available system <acronym><acronymword>RAM</acronymword></acronym>.
 See <ref label="Memory-Requirements"><xrefnodename>Memory Requirements</xrefnodename></ref> for further details. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="775"><acronym><acronymword>RAM</acronymword></acronym> variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="814"><acronym><acronymword>RAM</acronymword></acronym> variables</indexterm></cindex>
 <para>The <samp>--create_ram</samp> switch causes output files to be created in RAM,
 rather than on disk. 
 These files are copied to disk only when closed, i.e., when the
@@ -7318,9 +8193,9 @@ It is not unreasonable to for <acronym><acronymword>NCO</acronymword></acronym>
 like this in a few minutes. 
 However, there is no substitute for benchmarking with real files.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="776">temporary output files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="777">temporary files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="778"><code>--no_tmp_fl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="815">temporary output files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="816">temporary files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="817"><code>--no_tmp_fl</code></indexterm></cindex>
 <para>A completely independent way to reduce time spent writing files is 
 to refrain from writing temporary output files.
 This is accomplished with the <samp>--no_tmp_fl</samp> switch 
@@ -7331,18 +8206,18 @@ This is accomplished with the <samp>--no_tmp_fl</samp> switch
 <a name="pack"></a> <!&textndash; http://nco.sf.net/nco.html#pack &textndash;>
 </html>
 </section>
-<node name="Packed-data" spaces=" "><nodename>Packed data</nodename><nodenext spaces=" ">Operation Types</nodenext><nodeprev spaces=" ">RAM disks</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Packed-data" spaces=" "><nodename>Packed data</nodename><nodenext spaces=" ">Operation Types</nodenext><nodeprev spaces=" ">RAM disks</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Packed data</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="779">packing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="780">unpacking</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="781"><code>add_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="782"><code>scale_factor</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="783"><code>missing_value</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="784"><code>_FillValue</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="785"><command>pack(x)</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="786"><command>unpack(x)</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="787"><code>--hdf_upk</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="788"><code>--hdf_unpack</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="818">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="819">unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="820"><code>add_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="821"><code>scale_factor</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="822"><code>missing_value</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="823"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="824"><command>pack(x)</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="825"><command>unpack(x)</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="826"><code>--hdf_upk</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="827"><code>--hdf_unpack</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncap2</command>, <command>ncbo</command>, <command>nces</command>,
 <command>ncflint</command>, <command>ncpdq</command>, <command>ncra</command>, <command>ncwa</command>&linebreak; 
@@ -7445,8 +8320,8 @@ unpacked data, i.e., <code>int</code>, <code>float</code> or <code>double</code>
 <a name="hdf_upk"></a> <!&textndash; http://nco.sf.net/nco.html#hdf_upk &textndash;>
 <a name="hdf_unpack"></a> <!&textndash; http://nco.sf.net/nco.html#hdf_unpack &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="789">interoperability</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="790"><acronym><acronymword>HDF</acronymword></acronym> unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="828">interoperability</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="829"><acronym><acronymword>HDF</acronymword></acronym> unpacking</indexterm></cindex>
 <para>Most files originally written in <acronym><acronymword>HDF</acronymword></acronym> format use the
 <acronym><acronymword>HDF</acronymword></acronym> packing/unpacking algorithm.
 This algorithm is incompatible with the netCDF packing algorithm 
@@ -7548,29 +8423,32 @@ Pack and unpack individual variables with <command>ncpdq</command> and the
 </html>
 </unnumberedsubsec>
 </section>
-<node name="Operation-Types" spaces=" "><nodename>Operation Types</nodename><nodenext spaces=" ">Type Conversion</nodenext><nodeprev spaces=" ">Packed data</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Operation-Types" spaces=" "><nodename>Operation Types</nodename><nodenext spaces=" ">Type Conversion</nodenext><nodeprev spaces=" ">Packed data</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Operation Types</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="791">operation types</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="792"><code>avg</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="793"><code>sqravg</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="794"><code>avgsqr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="795"><code>min</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="796"><code>max</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="797"><code>rmssdn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="798"><code>rms</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="799"><code>ttl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="800"><code>sqrt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="801">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="802">mean</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="803">total</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="804">minimum</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="805">maximum</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="806">root-mean-square</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="807">standard deviation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="808">variance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="809"><code>-y <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="810"><code>--operation <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="811"><code>--op_typ <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="830">operation types</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="831"><code>avg</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="832"><code>sqravg</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="833"><code>avgsqr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="834"><code>min</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="835"><code>max</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="836"><code>mabs</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="837"><code>mebs</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="838"><code>mibs</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="839"><code>rmssdn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="840"><code>rms</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="841"><code>ttl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="842"><code>sqrt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="843">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="844">mean</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="845">total</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="846">minimum</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="847">maximum</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="848">root-mean-square</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="849">standard deviation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="850">variance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="851"><code>-y <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="852"><code>--operation <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="853"><code>--op_typ <var>op_typ</var></code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncap2</command>, <command>ncra</command>, <command>nces</command>, <command>ncwa</command>&linebreak;
 Short options: <samp>-y</samp>&linebreak;
@@ -7588,9 +8466,15 @@ Set <var>op_typ</var> to the abbreviated key for the corresponding operation:
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">avgsqr</itemformat></item>
 </tableterm><tableitem><para>Mean of sum of squares
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">max</itemformat></item>
-</tableterm><tableitem><para>Maximium value
+</tableterm><tableitem><para>Maximum value
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">min</itemformat></item>
-</tableterm><tableitem><para>Minimium value
+</tableterm><tableitem><para>Minimum value
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">mabs</itemformat></item>
+</tableterm><tableitem><para>Maximum absolute value
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">mebs</itemformat></item>
+</tableterm><tableitem><para>Mean absolute value
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">mabs</itemformat></item>
+</tableterm><tableitem><para>Minimum absolute value
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">rms</itemformat></item>
 </tableterm><tableitem><para>Root-mean-square (normalized by <var>N</var>)
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">rmssdn</itemformat></item>
@@ -7601,7 +8485,7 @@ Set <var>op_typ</var> to the abbreviated key for the corresponding operation:
 </tableterm><tableitem><para>Sum of values
 </para></tableitem></tableentry></table>
 <noindent></noindent>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="812">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="854">coordinate variable</indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> assumes coordinate variables represent grid axes, e.g.,
 longitude. 
 The only rank-reduction which makes sense for coordinate variables
@@ -7714,6 +8598,27 @@ $$
 $$
 Thus the minima and maxima are determined after any weights are applied.
 
+The minimum absolute value of~$\xxx$ (<code>-y mibs</code>) is 
+$$
+\bar \xxx_{\jjj} = \min [ \mssflg_{1} \mskflg_{1} \wgt_{1} |\xxx_{1}|,
+\mssflg_{2} \mskflg_{2} \wgt_{2} |\xxx_{2}|, \ldots, \mssflg_{\lmnnbr} 
+\mskflg_{\lmnnbr} \wgt_{\lmnnbr} |\xxx_{\lmnnbr}| ] 
+$$
+Analogously, the maximum absolute value of~$\xxx$ (<code>-y mabs</code>) is 
+$$
+\bar \xxx_{\jjj} = \max [ \mssflg_{1} \mskflg_{1} \wgt_{1} |\xxx_{1}|,
+\mssflg_{2} \mskflg_{2} \wgt_{2} |\xxx_{2}|, \ldots, \mssflg_{\lmnnbr} 
+\mskflg_{\lmnnbr} \wgt_{\lmnnbr} |\xxx_{\lmnnbr}| ] 
+$$
+Thus the minimum and maximum absolute values are determined after any weights are applied.
+The mean absolute value of~$\xxx$ (<code>-y mebs</code>) is 
+$$
+\bar \xxx_{\jjj} = \left( {\sum_{\idx=1}^{\idx=\lmnnbr}
+\mssflg_{\idx} \mskflg_{\idx} \wgt_{\idx} |\xxx_{\idx}| \over
+\sum_{\idx=1}^{\idx=\lmnnbr} \mssflg_{\idx} \mskflg_{\idx} \wgt_{\idx}} 
+\right)^{2}    
+$$
+
 The square of the mean value of~$\xxx$ (<code>-y sqravg</code>) is 
 $$
 \bar \xxx_{\jjj} = \left( {\sum_{\idx=1}^{\idx=\lmnnbr}
@@ -7807,6 +8712,9 @@ defined in <acronym><acronymword>NCO</acronymword></acronym> please contact the
 <para>EXAMPLES
 </para>
 <html endspaces=" ">
+<a name="mabs"></a> <!&textndash; http://nco.sf.net/nco.html#mabs &textndash;>
+<a name="mebs"></a> <!&textndash; http://nco.sf.net/nco.html#mebs &textndash;>
+<a name="mibs"></a> <!&textndash; http://nco.sf.net/nco.html#mibs &textndash;>
 <a name="min"></a> <!&textndash; http://nco.sf.net/nco.html#min &textndash;>
 <a name="max"></a> <!&textndash; http://nco.sf.net/nco.html#max &textndash;>
 <a name="rms"></a> <!&textndash; http://nco.sf.net/nco.html#rms &textndash;>
@@ -7815,7 +8723,7 @@ defined in <acronym><acronymword>NCO</acronymword></acronym> please contact the
 <para>Suppose you wish to examine the variable <code>prs_sfc(time,lat,lon)</code> 
 which contains a time series of the surface pressure as a function of
 latitude and longitude.
-Find the minimium value of <code>prs_sfc</code> over all dimensions:
+Find the minimum value of <code>prs_sfc</code> over all dimensions:
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncwa -y min -v prs_sfc in.nc foo.nc 
 </pre></example>
@@ -7835,7 +8743,7 @@ ncwa -y rms -v prs_sfc -a time in.nc foo.nc
 <noindent></noindent>
 <para>The previous two commands give the same answer but <command>ncra</command> is
 preferred because it has a smaller memory footprint.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="813">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="855">degenerate dimension</indexterm></cindex>
 A dimension of size one is said to be <dfn>degenerate</dfn>.
 By default, <command>ncra</command> leaves the (degenerate) <code>time</code>
 dimension in the output file (which is usually useful) whereas
@@ -7847,7 +8755,7 @@ given).
 Suppose that <code>prs_sfc</code> is stored in multiple timesteps per file
 across multiple files, say <file>jan.nc</file>, <file>feb.nc</file>,
 <file>march.nc</file>.  
-We can now find the three month maximium surface pressure at every point.
+We can now find the three month maximum surface pressure at every point.
 </para><example endspaces=" ">
 <pre xml:space="preserve">nces -y max -v prs_sfc jan.nc feb.nc march.nc out.nc
 </pre></example>
@@ -7860,7 +8768,7 @@ We can now find the three month maximium surface pressure at every point.
 <a name="xmp_sdn"></a> <!&textndash; http://nco.sf.net/nco.html#xmp_sdn &textndash;>
 </html>
 <noindent></noindent>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="814">standard deviation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="856">standard deviation</indexterm></cindex>
 <para>It is possible to use a combination of these operations to compute
 the variance and standard deviation of a field stored in a single file
 or across multiple files.
@@ -7949,9 +8857,9 @@ less required by the <command>ncbo</command> operation in the third step.
 <a name="typ_cnv"></a> <!&textndash; http://nco.sf.net/nco.html#typ_cnv &textndash;>
 </html>
 </section>
-<node name="Type-Conversion" spaces=" "><nodename>Type Conversion</nodename><nodenext spaces=" ">Batch Mode</nodenext><nodeprev spaces=" ">Operation Types</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Type-Conversion" spaces=" "><nodename>Type Conversion</nodename><nodenext spaces=" ">Batch Mode</nodenext><nodeprev spaces=" ">Operation Types</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Type Conversion</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="815">type conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="857">type conversion</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability (automatic type conversion): <command>ncap2</command>, <command>ncbo</command>, <command>nces</command>,
 <command>ncflint</command>, <command>ncra</command>, <command>ncwa</command>&linebreak; 
@@ -7960,10 +8868,10 @@ Availability (manual type conversion): <command>nces</command>, <command>ncra</c
 Short options: None&linebreak;
 Long options: <samp>--dbl</samp>, <samp>--flt</samp>, <samp>--rth_dbl</samp>, <samp>--rth_flt</samp>&linebreak; 
 </para></cartouche>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="816">promotion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="817">demotion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="818">automatic type conversion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="819">manual type conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="858">promotion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="859">demotion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="860">automatic type conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="861">manual type conversion</indexterm></cindex>
 <para>Type conversion refers to the casting or coercion of one fundamental or
 atomic data type to another, e.g., converting <code>NC_SHORT</code> (two
 bytes) to <code>NC_DOUBLE</code> (eight bytes).  
@@ -8077,7 +8985,7 @@ Similarly, the total (e.g., <samp>-y ttl</samp>) of <code>17000s</code> and
 the final result (the true total) of <math>34000</math> is outside the range
 of type <code>NC_SHORT</code>.  
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="820"><code>trunc()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="862"><code>trunc()</code></indexterm></cindex>
 <para>After arithmetic is computed in double-precision for promoted variables,
 the intermediate double-precision values must be demoted to the
 variables&textrsquo; original storage type (e.g., from <code>NC_DOUBLE</code> to
@@ -8085,7 +8993,7 @@ variables&textrsquo; original storage type (e.g., from <code>NC_DOUBLE</code> to
 <acronym><acronymword>NCO</acronymword></acronym> has handled this demotion in three ways in its history.
 Prior to October, 2011 (version 4.0.8), <acronym><acronymword>NCO</acronymword></acronym> employed the
 <w>C library</w> truncate function, <code>trunc()</code>
-<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="821">C language</indexterm></cindex>
+<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="863">C language</indexterm></cindex>
 <para>The actual type conversions with trunction were handled by intrinsic
 type conversion, so the <code>trunc()</code> function was never explicitly
 called, although the results would be the same if it were.</para></footnote>.
@@ -8098,7 +9006,7 @@ integer!
 Yet truncation is how the <w>C language</w> performs implicit conversion of 
 real numbers to integers.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="822">Neil Davis</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="864">Neil Davis</indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> stopped using truncation for demotion when an alert user
 (Neil Davis) informed us that this caused a small bias in the packing
 algorithm employed by <command>ncpdq</command>.
@@ -8117,7 +9025,7 @@ This rounds, for example, <code>1.5d</code> and <code>2.5d</code> to <code>2s</c
 and <code>3s</code>, respectively.
 </para>
 <findex index="fn" spaces=" "><indexterm index="fn" number="13" mergedindex="cp"><code>lrint()</code>.</indexterm></findex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="823"><acronym><acronymword>IEEE</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="865"><acronym><acronymword>IEEE</acronymword></acronym></indexterm></cindex>
 <para>Since April, 2013 (version 4.3.0), <acronym><acronymword>NCO</acronymword></acronym> has employed the 
 other <w>C library</w> family of rounding functions, <code>lrint()</code>. 
 This algorithm rounds <var>x</var> to the nearest integer, using the current 
@@ -8145,12 +9053,12 @@ stores it on disk as
 </subsection>
 <node name="Promoting-Single_002dprecision-to-Double" spaces=" "><nodename>Promoting Single-precision to Double</nodename><nodenext spaces=" ">Manual type conversion</nodenext><nodeprev spaces=" ">Automatic type conversion</nodeprev><nodeup spaces=" ">Type Conversion</nodeup></node>
 <subsection spaces=" "><sectiontitle>Promoting Single-precision to Double</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="824">promotion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="825">implicit conversion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="826"><code>--dbl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="827"><code>--rth_dbl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="828"><code>--flt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="829"><code>--rth_flt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="866">promotion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="867">implicit conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="868"><code>--dbl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="869"><code>--rth_dbl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="870"><code>--flt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="871"><code>--rth_flt</code></indexterm></cindex>
 <para>Promotion of real numbers from single- to double-precision is
 fundamental to scientific computing.
 When it should occur depends on the precision of the inputs and the
@@ -8159,30 +9067,32 @@ Single-precision (four-byte) numbers contain about seven significant
 figures, while double-precision contain about sixteen.
 More, err, precisely, the <acronym><acronymword>IEEE</acronymword></acronym> single-precision representation
 gives from <w>6 to 9</w> significant decimal digits precision
-<footnote><para>According to Wikipedia&textrsquo;s summary of <acronym><acronymword>IEEE</acronymword></acronym> standard
-754, &textldquo;If a decimal string with at most 6 significant digits is
-converted to <acronym><acronymword>IEEE</acronymword></acronym> 754 single-precision and then converted back to the
-same number of significant decimal, then the final string should match
-the original; and if an <acronym><acronymword>IEEE</acronymword></acronym> 754 single-precision is converted to a
-decimal string with at least 9 significant decimal and then converted
-back to single, then the final number must match the original&textrdquo;.</para></footnote>.
+<footnote><para>According to Wikipedia&textrsquo;s summary of <acronym><acronymword>IEEE</acronymword></acronym> 
+<w>standard 754</w>, &textldquo;If a decimal string with at most <w>6 significant</w> 
+digits is converted to <w><acronym><acronymword>IEEE</acronymword></acronym> 754</w> single-precision and then
+converted back to the same number of significant decimal, then the final
+string should match the original; and if an <w><acronym><acronymword>IEEE</acronymword></acronym> 754</w>
+single-precision is converted to a decimal string with at <w>leastn 9</w>
+significant decimal and then converted back to single, then the final
+number must match the original&textrdquo;.</para></footnote>. 
 And the <acronym><acronymword>IEEE</acronymword></acronym> double-precision representation
 gives from <w>15 to 17</w> significant decimal digits precision
-<footnote><para>According to Wikipedia&textrsquo;s summary of <acronym><acronymword>IEEE</acronymword></acronym> standard
-754, &textldquo;If a decimal string with at most 15 significant digits is
-converted to <acronym><acronymword>IEEE</acronymword></acronym> 754 double-precision representation and then converted
-back to a string with the same number of significant digits, then the
-final string should match the original; and if an <acronym><acronymword>IEEE</acronymword></acronym> 754 double
-precision is converted to a decimal string with at least 17 significant
-digits and then converted back to double, then the final number must
-match the original&textrdquo;.</para></footnote>. 
+<footnote><para>According to Wikipedia&textrsquo;s summary of <acronym><acronymword>IEEE</acronymword></acronym> 
+<w>standard 754</w>, &textldquo;If a decimal string with at most <w>15 significant</w>
+digits is converted to <w><acronym><acronymword>IEEE</acronymword></acronym> 754</w> double-precision
+representation and then converted back to a string with the same number
+of significant digits, then the final string should match the original;
+and if an <w><acronym><acronymword>IEEE</acronymword></acronym> 754</w> double precision is converted to a
+decimal string with at least <w>17 significant</w> digits and then
+converted back to double, then the final number must match the
+original&textrdquo;.</para></footnote>.  
 Hence double-precision numbers represent about nine digits more
 precision than single-precision numbers.
 </para>
 <para>Given these properties, there are at least two possible arithmetic
 conventions for the treatment of real numbers:
-<cindex index="cp" spaces=" "><indexterm index="cp" number="830">C language</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="831">Fortran</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="872">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="873">Fortran</indexterm></cindex>
 </para><enumerate first="1" endspaces=" ">
 <listitem spaces=" "><para>Conservative, aka Fortran Convention
 Automatic type conversion during arithmetic in the Fortran language is,
@@ -8353,9 +9263,9 @@ degrade the precision in such situtations.
 Double-precision arithmetic mititgates this problem, so <samp>--dbl</samp>
 would be warranted. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="832"><acronym><acronymword>TREFHT</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="833"><acronym><acronymword>CAM3</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="834"><acronym><acronymword>GCM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="874"><acronym><acronymword>TREFHT</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="875"><acronym><acronymword>CAM3</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="876"><acronym><acronymword>GCM</acronymword></acronym></indexterm></cindex>
 <para>This can be seen with another example, averaging a global surface
 temperature field with <command>ncwa</command>.
 The input contains a single-precision global temperature field
@@ -8434,8 +9344,8 @@ It means that the global mean temperature changes scientists are looking
 for are comparable in size to the numerical artifacts produced by the
 averaging procedure. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="835">rounding</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="836">random walk</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="877">rounding</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="878">random walk</indexterm></cindex>
 <para>Why are the single-precision numerical artifacts so large?
 Each global average is the result of multiplying almost 15,000 elements
 each by its weight, summing those, and then dividing by the summed 
@@ -8444,7 +9354,7 @@ Thus about 50,000 single-precision floating point operations caused
 the loss of two to three significant digits of precision.
 The net error of a series of independent rounding errors is a random
 walk phenomena
-<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="837">Michael Prather</indexterm></cindex>
+<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="879">Michael Prather</indexterm></cindex>
 <para>Thanks to <w>Michael J.</w> Prather for explaining this to me.</para></footnote>.
 Successive rounding errors displace the answer further from the truth.
 An ensemble of such averages will, on average, have no net bias.
@@ -8453,8 +9363,8 @@ rounding errors is zero.
 And the error of any given sequence of rounding errors obeys, for large 
 series, a Gaussian distribution centered on zero.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="838">mantissa</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="839">exponent</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="880">mantissa</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="881">exponent</indexterm></cindex>
 <para>Single-precision numbers use three of their four eight-bit bytes to
 represent the mantissa so the smallest representable single-precision
 mantissa is <math>\epsilon \equiv 2^{-23} = 1.19209 \times 10^{-7}</math>.
@@ -8487,7 +9397,7 @@ agreement.
 <!-- c P(>=25500,50000)= ? -->
 <!-- c fxm: Use Gaussian distribution/Random Walk -->
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="840">beer</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="882">beer</indexterm></cindex>
 <para>The <acronym><acronymword>NCO</acronymword></acronym> results have been independently validated to the
 extent possible in three other languages: 
 <w>C</w>, Matlab, and <acronym><acronymword>NCL</acronymword></acronym>. 
@@ -8560,7 +9470,7 @@ Please let us know what you think of the selected defaults and options.
 </subsection>
 <node name="Manual-type-conversion" spaces=" "><nodename>Manual type conversion</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Promoting Single-precision to Double</nodeprev><nodeup spaces=" ">Type Conversion</nodeup></node>
 <subsection spaces=" "><sectiontitle>Manual type conversion</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="841"><command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="883"><command>ncap2</command></indexterm></cindex>
 <para><command>ncap2</command> provides intrinsic functions for performing manual type
 conversions.
 This, for example, converts variable <code>tpt</code> to external type
@@ -8577,19 +9487,19 @@ external type <code>NC_DOUBLE</code> (a C-type <code>double</code>).
 </html>
 </subsection>
 </section>
-<node name="Batch-Mode" spaces=" "><nodename>Batch Mode</nodename><nodenext spaces=" ">History Attribute</nodenext><nodeprev spaces=" ">Type Conversion</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Batch-Mode" spaces=" "><nodename>Batch Mode</nodename><nodenext spaces=" ">History Attribute</nodenext><nodeprev spaces=" ">Type Conversion</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Batch Mode</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="842">batch mode</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="843">overwriting files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="844">appending to files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="845">force overwrite</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="846">force append</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="847"><code>-O</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="848"><code>-A</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="849"><code>--overwrite</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="850"><code>--ovr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="851"><code>--apn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="852"><code>--append</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="884">batch mode</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="885">overwriting files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="886">appending to files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="887">force overwrite</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="888">force append</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="889"><code>-O</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="890"><code>-A</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="891"><code>--overwrite</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="892"><code>--ovr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="893"><code>--apn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="894"><code>--append</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: <samp>-O</samp>, <samp>-A</samp>&linebreak;
@@ -8618,15 +9528,15 @@ already contain the appended dimensions.
 <a name="-h"></a> <!&textndash; http://nco.sf.net/nco.html#-h &textndash;>
 </html>
 </section>
-<node name="History-Attribute" spaces=" "><nodename>History Attribute</nodename><nodenext spaces=" ">File List Attributes</nodenext><nodeprev spaces=" ">Batch Mode</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="History-Attribute" spaces=" "><nodename>History Attribute</nodename><nodenext spaces=" ">File List Attributes</nodenext><nodeprev spaces=" ">Batch Mode</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>History Attribute</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="853"><code>history</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="854">timestamp</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="855">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="856">attributes, global</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="857"><code>-h</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="858"><code>--hst</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="859"><code>--history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="895"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="896">timestamp</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="897">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="898">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="899"><code>-h</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="900"><code>--hst</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="901"><code>--history</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: <samp>-h</samp>&linebreak;
@@ -8653,7 +9563,7 @@ attributes.
 When more than one global attribute fits the case-insensitive search
 for &textldquo;history&textrdquo;, the first one found will be used.
 <code>history</code> attribute
-<cindex index="cp" spaces=" "><indexterm index="cp" number="860"><command>ncatted</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="902"><command>ncatted</command></indexterm></cindex>
 To avoid information overkill, all operators have an optional switch
 (<samp>-h</samp>, <samp>--hst</samp>, or <samp>--history</samp>) to override
 automatically appending the <code>history</code> attribute 
@@ -8666,16 +9576,16 @@ Note that the <samp>-h</samp> switch also turns off writing the
 <a name="fl_lst_in_att"></a> <!&textndash; http://nco.sf.net/nco.html#fl_lst_in_att &textndash;>
 </html>
 </section>
-<node name="File-List-Attributes" spaces=" "><nodename>File List Attributes</nodename><nodenext spaces=" ">CF Conventions</nodenext><nodeprev spaces=" ">History Attribute</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="File-List-Attributes" spaces=" "><nodename>File List Attributes</nodename><nodenext spaces=" ">CF Conventions</nodenext><nodeprev spaces=" ">History Attribute</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>File List Attributes</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="861"><code>nco_input_file_list</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="862"><code>nco_input_file_number</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="863"><code>stdin</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="864">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="865">attributes, global</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="866"><code>-H</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="867"><code>--fl_lst_in</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="868"><code>--file_list</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="903"><code>nco_input_file_list</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="904"><code>nco_input_file_number</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="905"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="906">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="907">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="908"><code>-H</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="909"><code>--fl_lst_in</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="910"><code>--file_list</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>nces</command>, <command>ncecat</command>, <command>ncra</command>, <command>ncrcat</command>&linebreak;
 Short options: <samp>-H</samp>&linebreak;
@@ -8718,23 +9628,23 @@ may amount to many thousands of filenames in a metadata attribute.
 <a name="cnv_CCSM"></a> <!&textndash; http://nco.sf.net/nco.html#cnv_CCSM &textndash;>
 </html>
 </section>
-<node name="CF-Conventions" spaces=" "><nodename>CF Conventions</nodename><nodenext spaces=" ">ARM Conventions</nodenext><nodeprev spaces=" ">File List Attributes</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="CF-Conventions" spaces=" "><nodename>CF Conventions</nodename><nodenext spaces=" ">ARM Conventions</nodenext><nodeprev spaces=" ">File List Attributes</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle><acronym><acronymword>CF</acronymword></acronym> Conventions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="869"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="870"><acronym><acronymword>CCSM</acronymword></acronym> conventions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="871">UDUnits</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="872"><code>ORO</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="873"><code>area</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="874"><code>datesec</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="875"><code>date</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="876"><code>gw</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="877"><code>hyai</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="878"><code>hyam</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="879"><code>hybi</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="880"><code>hybm</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="881"><code>lat_bnds</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="882"><code>lon_bnds</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="883"><code>msk_*</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="911"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="912"><acronym><acronymword>CCSM</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="913">UDUnits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="914"><code>ORO</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="915"><code>area</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="916"><code>datesec</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="917"><code>date</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="918"><code>gw</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="919"><code>hyai</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="920"><code>hyam</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="921"><code>hybi</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="922"><code>hybm</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="923"><code>lat_bnds</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="924"><code>lon_bnds</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="925"><code>msk_*</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncbo</command>, <command>nces</command>, <command>ncecat</command>,
 <command>ncflint</command>, <command>ncpdq</command>, <command>ncra</command>, <command>ncwa</command>&linebreak;
@@ -8798,7 +9708,7 @@ variables because of their usual meaning in <acronym><acronymword>CF</acronymwor
 These variables contain scalar metadata such as the resolution of the
 host geophysical model and it makes no sense to change their values.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="884">non-coordinate grid properties</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="926">non-coordinate grid properties</indexterm></cindex>
 <para>Furthermore, the <dfn>size and rank-preserving arithmetic operators</dfn> try
 not to operate on certain grid properties.
 These operators are <command>ncap2</command>, <command>ncbo</command>, <command>nces</command>,
@@ -8842,8 +9752,8 @@ or alter the <code>Conventions</code> attribute.
 <a name="cnv_CF_bnd"></a> <!&textndash; http://nco.sf.net/nco.html#cnv_CF_bnd &textndash;>
 <a name="bnd"></a> <!&textndash; http://nco.sf.net/nco.html#bnd &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="885"><code>bounds</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="886">bounds convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="927"><code>bounds</code> attribute</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="928">bounds convention</indexterm></cindex>
 <para>As of <acronym><acronymword>NCO</acronymword></acronym> version 4.0.8 (April, 2011), <acronym><acronymword>NCO</acronymword></acronym> 
 supports the <acronym><acronymword>CF</acronymword></acronym> <code>bounds</code> convention for cell boundaries
 described 
@@ -8865,8 +9775,8 @@ Bounds are subject to the user-specified override switches
 <a name="cnv_CF_ncl"></a> <!&textndash; http://nco.sf.net/nco.html#cnv_CF_ncl &textndash;>
 <a name="ncl"></a> <!&textndash; http://nco.sf.net/nco.html#ncl &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="887"><code>ancillary_variables</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="888">ancillary variables convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="929"><code>ancillary_variables</code> attribute</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="930">ancillary variables convention</indexterm></cindex>
 <para>As of <acronym><acronymword>NCO</acronymword></acronym> version 4.4.5 (July, 2014), <acronym><acronymword>NCO</acronymword></acronym> 
 supports the <acronym><acronymword>CF</acronymword></acronym> <code>ancillary_variables</code> convention for 
 described 
@@ -8883,17 +9793,17 @@ Ancillary variables are subject to the user-specified override switches
 <html endspaces=" ">
 <a name="cnv_CF_crd"></a> <!&textndash; http://nco.sf.net/nco.html#cnv_CF_crd &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="889"><code>coordinates</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="890">coordinates convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="891">coordinate variable</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="892">auxiliary coordinates</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="893">subsetting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="894"><code>-C</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="895"><code>-c</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="896"><code>--no-coords</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="897"><code>--no-crd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="898"><code>--coords</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="899"><code>--crd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="931"><code>coordinates</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="932">coordinates convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="933">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="934">auxiliary coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="935">subsetting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="936"><code>-C</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="937"><code>-c</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="938"><code>--no-coords</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="939"><code>--no-crd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="940"><code>--coords</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="941"><code>--crd</code></indexterm></cindex>
 <para>As of <acronym><acronymword>NCO</acronymword></acronym> version 3.9.6 (January, 2009), <acronym><acronymword>NCO</acronymword></acronym>
 supports the <acronym><acronymword>CF</acronymword></acronym> <code>coordinates</code> convention described 
 <uref><urefurl>http://cfconventions.org/1.6.html#coordinate-system</urefurl><urefdesc spaces=" ">here</urefdesc></uref>. 
@@ -8912,12 +9822,12 @@ switches (including <samp>-c</samp> and <samp>-C</samp>) described in
 <a name="no_cll_mth"></a> <!&textndash; http://nco.sf.net/nco.html#no_cll_mth &textndash;>
 <a name="cell_methods"></a> <!&textndash; http://nco.sf.net/nco.html#cell_methods &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="900"><code>cell_methods</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="901"><code>--cll_mth</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="902"><code>--no_cll_mth</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="903"><code>--cell_methods</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="904"><code>--no_cell_methods</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="905">cell methods convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="942"><code>cell_methods</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="943"><code>--cll_mth</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="944"><code>--no_cll_mth</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="945"><code>--cell_methods</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="946"><code>--no_cell_methods</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="947">cell methods convention</indexterm></cindex>
 <para>As of <acronym><acronymword>NCO</acronymword></acronym> version 4.4.2 (February, 2014), <acronym><acronymword>NCO</acronymword></acronym> 
 supports some of the <acronym><acronymword>CF</acronymword></acronym> <code>cell_methods</code> 
 <uref><urefurl>http://cfconventions.org/1.6.html#cell-methods</urefurl><urefdesc spaces=" ">convention</urefdesc></uref>
@@ -8951,12 +9861,12 @@ These options are only available in the operators <command>ncwa</command> and
 <a name="cnv_ARM"></a> <!&textndash; http://nco.sf.net/nco.html#cnv_ARM &textndash;>
 </html>
 </section>
-<node name="ARM-Conventions" spaces=" "><nodename>ARM Conventions</nodename><nodenext spaces=" ">Operator Version</nodenext><nodeprev spaces=" ">CF Conventions</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="ARM-Conventions" spaces=" "><nodename>ARM Conventions</nodename><nodenext spaces=" ">Operator Version</nodenext><nodeprev spaces=" ">CF Conventions</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle><acronym><acronymword>ARM</acronymword></acronym> Conventions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="906"><acronym><acronymword>ARM</acronymword></acronym> conventions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="907"><code>time_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="908"><code>base_time</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="909"><code>time</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="948"><acronym><acronymword>ARM</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="949"><code>time_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="950"><code>base_time</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="951"><code>time</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncrcat</command>&linebreak;
 Short options: None&linebreak;
@@ -8992,9 +9902,9 @@ The values of <code>time</code> are defined by the <acronym><acronymword>ARM</ac
 <math><var>time</var> = <var>base_time</var> + <var>time_offset</var></math>.
 Thus, if <var>output-file</var> contains the <code>time_offset</code>
 variable, it will also contain the <code>time</code> coordinate.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="910"><code>history</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="911">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="912">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="952"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="953">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="954">attributes, global</indexterm></cindex>
 <w>A short</w> message is added to the <code>history</code> global attribute
 whenever these <acronym><acronymword>ARM</acronymword></acronym>-specific procedures are executed.
 </para>
@@ -9003,14 +9913,14 @@ whenever these <acronym><acronymword>ARM</acronymword></acronym>-specific proced
 <a name="version"></a> <!&textndash; http://nco.sf.net/nco.html#version &textndash;>
 </html>
 </section>
-<node name="Operator-Version" spaces=" "><nodename>Operator Version</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">ARM Conventions</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
+<node name="Operator-Version" spaces=" "><nodename>Operator Version</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">ARM Conventions</nodeprev><nodeup spaces=" ">Shared features</nodeup></node>
 <section spaces=" "><sectiontitle>Operator Version</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="913">version</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="914"><acronym><acronymword>RCS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="915"><code>-r</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="916"><code>--revision</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="917"><code>--version</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="918"><code>--vrs</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="955">version</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="956"><acronym><acronymword>RCS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="957"><code>-r</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="958"><code>--revision</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="959"><code>--version</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="960"><code>--vrs</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: <samp>-r</samp>&linebreak;
@@ -9038,16 +9948,16 @@ This tells you that <command>ncks</command> contains all patches up to version
 </html>
 </para></section>
 </chapter>
-<node name="Operator-Reference-Manual" spaces=" "><nodename>Operator Reference Manual</nodename><nodenext spaces=" ">Contributing</nodenext><nodeprev spaces=" ">Common features</nodeprev><nodeup spaces=" ">Top</nodeup></node>
-<chapter spaces=" "><sectiontitle>Operator Reference Manual</sectiontitle>
+<node name="Reference-Manual" spaces=" "><nodename>Reference Manual</nodename><nodenext spaces=" ">Contributing</nodenext><nodeprev spaces=" ">Shared features</nodeprev><nodeup spaces=" ">Top</nodeup></node>
+<chapter spaces=" "><sectiontitle>Reference Manual</sectiontitle>
 
 <para>This chapter presents reference pages for each of the operators
 individually. 
 The operators are presented in alphabetical order.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="919">command line switches</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="961">command line switches</indexterm></cindex>
 All valid command line switches are included in the syntax statement.
 Recall that descriptions of many of these command line switches are
-provided only in <ref label="Common-features"><xrefnodename>Common features</xrefnodename></ref>, to avoid redundancy.
+provided only in <ref label="Shared-features"><xrefnodename>Shared features</xrefnodename></ref>, to avoid redundancy.
 Only options specific to, or most useful with, a particular operator are 
 described in any detail in the sections below.  
 </para>
@@ -9071,11 +9981,11 @@ described in any detail in the sections below.
 <a name="ncap"></a> <!&textndash; http://nco.sf.net/nco.html#ncap &textndash;>
 <a name="ncap2"></a> <!&textndash; http://nco.sf.net/nco.html#ncap2 &textndash;>
 </html>
-<node name="ncap2-netCDF-Arithmetic-Processor" spaces=" "><nodename>ncap2 netCDF Arithmetic Processor</nodename><nodenext spaces=" ">ncatted netCDF Attribute Editor</nodenext><nodeprev spaces=" ">Operator Reference Manual</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncap2-netCDF-Arithmetic-Processor" spaces=" "><nodename>ncap2 netCDF Arithmetic Processor</nodename><nodenext spaces=" ">ncatted netCDF Attribute Editor</nodenext><nodeprev spaces=" ">Reference Manual</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncap2</command> netCDF Arithmetic Processor</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="920">parser</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="921">lexer</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="922">arithmetic processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="962">parser</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="963">lexer</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="964">arithmetic processor</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="14" mergedindex="cp">ncap</indexterm></findex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="15" mergedindex="cp">ncap2</indexterm></findex>
 <cartouche endspaces=" ">
@@ -9116,11 +10026,11 @@ This documentation refers to <command>ncap2</command>, which has a superset of
 the <command>ncap</command> functionality. 
 Eventually <command>ncap</command> will be deprecated in favor <command>ncap2</command>.
 <command>ncap2</command> may be renamed <command>ncap</command> in 2013.</para></footnote>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="923">script file</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="924"><code>--script-file</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="925"><code>--fl_spt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="926"><code>--script</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="927"><code>--spt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="965">script file</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="966"><code>--script-file</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="967"><code>--fl_spt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="968"><code>--script</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="969"><code>--spt</code></indexterm></cindex>
 The processing instructions are contained either in the <acronym><acronymword>NCO</acronymword></acronym>
 script file <file>fl.nco</file> or in a sequence of command line arguments.
 The options <samp>-s</samp> (or long options <samp>--spt</samp> or <samp>--script</samp>)
@@ -9129,7 +10039,7 @@ are used for in-line scripts and <samp>-S</samp> (or long options
 filename where (usually multiple) scripting commands are pre-stored.   
 <command>ncap2</command> was written to perform arbitrary algebraic
 transformations of data and archive the results as easily as possible.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="928">derived fields</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="970">derived fields</indexterm></cindex>
 <xref label="Missing-Values"><xrefnodename>Missing Values</xrefnodename></xref>, for treatment of missing values.
 The results of the algebraic manipulations are called 
 <dfn>derived fields</dfn>. 
@@ -9140,7 +10050,7 @@ variables to be operated on as an argument to <samp>-v</samp>
 Rather, the <samp>-v</samp> switch takes no arguments and indicates
 that <command>ncap2</command> should output <emph>only</emph> user-defined variables.
 <command>ncap2</command> neither accepts nor understands the <var>-x</var> switch.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="929">appending variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="971">appending variables</indexterm></cindex>
 NB: As of 20120515, <command>ncap2</command> is unable to append to files that
 already contain the appended dimensions. 
 </para>
@@ -9181,7 +10091,7 @@ already contain the appended dimensions.
 </html>
 <para>Defining new variables in terms of existing variables is a powerful
 feature of <command>ncap2</command>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="930">derived fields</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="972">derived fields</indexterm></cindex>
 Derived fields inherit the metadata (i.e., attributes) of their
 ancestors, if any, in the script or input file. 
 When the derived field is completely new (no identically-named ancestors
@@ -9201,49 +10111,49 @@ using left hand casting.
 </html>
 <node name="Syntax-of-ncap2-statements" spaces=" "><nodename>Syntax of ncap2 statements</nodename><nodenext spaces=" ">Expressions</nodenext><nodeprev spaces=" ">ncap2 netCDF Arithmetic Processor</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Syntax of <command>ncap2</command> statements</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="931">statement</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="932">syntax</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="973">statement</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="974">syntax</indexterm></cindex>
 <para>Mastering <command>ncap2</command> is relatively simple.
 Each valid statement <var>statement</var> consists of standard forward
 algebraic expression. 
 The <file>fl.nco</file>, if present, is simply a list of such statements,
 whitespace, and comments.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="933">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="975">C language</indexterm></cindex>
 The syntax of statements is most like the computer <w>language C</w>.
 The following characteristics <w>of C</w> are preserved:
 </para><table commandarg="asis" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="asis">Array syntax</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="934">array syntax</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="935"><code>[]</code> (array delimiters)</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="976">array syntax</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="977"><code>[]</code> (array delimiters)</indexterm></cindex>
 <para>Arrays elements are placed within <code>[]</code> characters;
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Array indexing</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="936">array indexing</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="978">array indexing</indexterm></cindex>
 <para>Arrays are 0-based;
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Array storage</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="937">array storage</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="979">array storage</indexterm></cindex>
 <para>Last dimension is most rapidly varying;
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Assignment statements</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="938">assignment statement</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="939">semi-colon</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="940"><code>;</code> (end of statement)</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="980">assignment statement</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="981">semi-colon</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="982"><code>;</code> (end of statement)</indexterm></cindex>
 <para><w>A semi</w>-colon <samp>;</samp> indicates the end of an assignment statement.
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Comments</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="941">comments</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="942"><code>/*...*/</code> (comment)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="943"><code>//</code> (comment)</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="983">comments</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="984"><code>/*...*/</code> (comment)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="985"><code>//</code> (comment)</indexterm></cindex>
 <para>Multi-line comments are enclosed within <code>/* */</code> characters.
 Single line comments are preceded by <code>//</code> characters.
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Nesting</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="944">including files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="945">nesting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="946"><code>#include</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="986">including files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="987">nesting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="988"><code>#include</code></indexterm></cindex>
 <para>Files may be nested in scripts using <code>#include <var>script</var></code>.
 Note that the <code>#include</code> command is not followed by a semi-colon
 because it is a pre-processor directive, not an assignment statement.
 The filename <file>script</file> is interpreted relative to the run directory.
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Attribute syntax</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="947">attribute syntax</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="948"><code>&arobase;</code> (attribute)</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="989">attribute syntax</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="990"><code>&arobase;</code> (attribute)</indexterm></cindex>
 <para>The at-sign <code>&arobase;</code> is used to delineate an attribute name from a
 variable name.
 </para></tableitem></tableentry></table> 
@@ -9253,12 +10163,12 @@ variable name.
 </html>
 </subsection>
 <node name="Expressions" spaces=" "><nodename>Expressions</nodename><nodenext spaces=" ">Dimensions</nodenext><nodeprev spaces=" ">Syntax of ncap2 statements</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="949">expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="991">expressions</indexterm></cindex>
 <subsection spaces=" "><sectiontitle>Expressions</sectiontitle>
 <para>Expressions are the fundamental building block of <command>ncap2</command>. 
 Expressions are composed of variables, numbers, literals, and
 attributes. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="950">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="992">C language</indexterm></cindex>
 The following <w>C operators</w> are &textldquo;overloaded&textrdquo; and work with scalars 
 and multi-dimensional arrays:
 </para><example endspaces=" ">
@@ -9287,8 +10197,8 @@ When either type is <code>NC_DOUBLE</code>, the result is also <code>NC_DOUBLE</
 </para></listitem></itemize>
 <!-- c csz got to here editing -->
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="951">broadcasting variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="952">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="993">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="994">rank</indexterm></cindex>
 <para><strong>Rank</strong>
 </para><itemize commandarg="bullet" spaces=" " endspaces=" "><itemprepend><formattingcommand command="bullet"/> </itemprepend>
 <listitem spaces=" "><prepend>•</prepend><para>The Rank of the result is generally equal to Rank of the operand
@@ -9346,7 +10256,7 @@ Consider now
 </example>
 
 <noindent></noindent> <para><strong>Binary Operators</strong> &linebreak; 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="953">binary Operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="995">binary Operators</indexterm></cindex>
 Unlike C the binary operators return an array of values. 
 There is no such thing as short circuiting with the AND/OR operators. 
 Missing values are carried into the result in the same way they are with
@@ -9408,7 +10318,7 @@ n4=--time;   n4=time=0.,1.,2.,3.,4.,5.,6.,7.,8.,9.;
 </pre></example>
 
 <noindent></noindent> <para><strong>Conditional Operator ?: </strong> &linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="954">conditional Operator</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="996">conditional Operator</indexterm></cindex>
 <noindent></noindent> <emph>exp1 ? exp2 : exp3 </emph> &linebreak;
 The conditional operator (or ternary Operator) is a succinct way
 of writing an if/then/else. If exp1 evaluates to true then exp2 is
@@ -9428,7 +10338,7 @@ PS_nw=PS-(PS.min() > 100000 ? 100000 : 0);
 <a name="clipping"></a> <!&textndash; http://nco.sf.net/nco.html#clipping &textndash;>
 </html>
 <noindent></noindent> <para><strong>Clipping Operators</strong>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="955">clipping operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="997">clipping operators</indexterm></cindex>
 </para><table commandarg="asis" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="asis"><< Less-than Clipping&linebreak;</itemformat></item>
 </tableterm><tableitem><para>For arrays, the less-than selection operator selects all values in the
@@ -9459,11 +10369,15 @@ RDM2=RDM <<  90s  // 1, 9, 36, 84, 90, 90, 84, 36, 9, 1 int
 </subsection>
 <node name="Dimensions" spaces=" "><nodename>Dimensions</nodename><nodenext spaces=" ">Left hand casting</nodenext><nodeprev spaces=" ">Expressions</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Dimensions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="956">defining dimensions in <command>ncap2</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="957"><code>defdim()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="998">defining dimensions in <command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="999"><code>defdim()</code></indexterm></cindex>
 <para>Dimensions are defined in Output using the <code>defdim()</code> function.
 </para><example endspaces=" ">
-<pre xml:space="preserve">defdim("cnt",10);
+<pre xml:space="preserve">defdim("cnt",10); # Dimension size is fixed by default
+defdim("cnt",10,NC_UNLIMITED); # Dimension is unlimited (record dimension)
+defdim("cnt",10,0); # Dimension is unlimited (record dimension)
+defdim("cnt",10,1); # Dimension size is fixed
+defdim("cnt",10,737); # All non-zero values indicate dimension size is fixed
 </pre></example>
 
 <para>This dimension name must then be prefixed with a dollar-sign <samp>$</samp>
@@ -9525,9 +10439,9 @@ A1['$a--list.A']=30.0;
 </subsection>
 <node name="Left-hand-casting" spaces=" "><nodename>Left hand casting</nodename><nodenext spaces=" ">Arrays and hyperslabs</nodenext><nodeprev spaces=" ">Dimensions</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Left hand casting</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="958">hybrid coordinate system</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="959">left hand casting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="960"><acronym><acronymword>LHS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1000">hybrid coordinate system</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1001">left hand casting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1002"><acronym><acronymword>LHS</acronymword></acronym></indexterm></cindex>
 <para>The following examples demonstrate the utility of the 
 <dfn>left hand casting</dfn> ability of <command>ncap2</command>.
 Consider first this simple, artificial, example.
@@ -9591,10 +10505,10 @@ coordinate system is easy with left hand casting.
 <subsection spaces=" "><sectiontitle>Arrays and hyperslabs</sectiontitle>
 
 <findex index="fn" spaces=" "><indexterm index="fn" number="16" mergedindex="cp">array</indexterm></findex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="961"><code>array</code> function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="962">arrays</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="963">findgen-equivalent</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="964">indgen-equivalent</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1003"><code>array</code> function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1004">arrays</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1005">findgen-equivalent</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1006">indgen-equivalent</indexterm></cindex>
 <para>Generating a regularly spaced one-dimensional array with <command>ncap2</command>
 is simple with the <code>array()</code> function. 
 The syntax is 
@@ -9632,7 +10546,7 @@ var_out=array(1+2-2,one,$time); // 1,2,3,4,5,6,7,8,9,10
 var_out=array(1,2,three_dmn_rec_var); // 1,3,5,...155,157,159
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="965">hyperslabs</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1007">hyperslabs</indexterm></cindex>
 <para>Hyperslabs in <command>ncap2</command> are more limited than hyperslabs with the
 other <acronym><acronymword>NCO</acronymword></acronym> operators. 
 <command>ncap2</command> does not understand the shell command-line syntax
@@ -9749,7 +10663,7 @@ prs(:,1,:,:)=th1
 </pre></example>
 
 <noindent></noindent> <para><strong>Reverse method</strong>&linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="966">reverse()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1008">reverse()</indexterm></cindex>
 Use the <code>reverse()</code> method to reverse a dimension&textrsquo;s elements in a
 variable with at least one dimension.
 This is equivalent to a negative stride, e.g., 
@@ -9761,7 +10675,7 @@ od_rv=od.reverse($time);        // {38,36,34,32,30,28,26,24,22,20}
 </example>
 
 <noindent></noindent> <para><strong>Permute method</strong>p&linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="967">permute()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1009">permute()</indexterm></cindex>
 Use the <code>permute()</code> method to swap the dimensions of a variable.
 The number and names of dimension arguments must match the dimensions in
 the variable. 
@@ -9792,7 +10706,7 @@ three_dmn_var_prm=
 </subsection>
 <node name="Attributes" spaces=" "><nodename>Attributes</nodename><nodenext spaces=" ">Number literals</nodenext><nodeprev spaces=" ">Arrays and hyperslabs</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Attributes</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="968">attributes<command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1010">attributes<command>ncap2</command></indexterm></cindex>
 <noindent></noindent> <para>Attributes are referred to by <emph>var_nm&arobase;att_nm</emph> &linebreak;
 All the following are valid statements:
 </para><example endspaces=" ">
@@ -9810,7 +10724,7 @@ a1($time.size-1)=a1 at max;
 </example>
 
 <para>A <emph>value list</emph> can be used on the RHS of an assign...
-<cindex index="cp" spaces=" "><indexterm index="cp" number="969">value list</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1011">value list</indexterm></cindex>
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
 a1 at trip1={1,2,3} ;
@@ -9842,8 +10756,8 @@ sng_arr[$sng_len]=a1 at long_name; // sng_arr now contains "Kelvin"
 To stop the attribute being written use the ram_delete() method or use a bogus variable name.
 </para>
 <noindent></noindent> <para><strong>Attribute Propagation and Inheritance</strong>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="970">attribute propagation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="971">attribute inheritance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1012">attribute propagation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1013">attribute inheritance</indexterm></cindex>
 </para><itemize commandarg="bullet" spaces=" " endspaces=" "><itemprepend><formattingcommand command="bullet"/></itemprepend>
 <beforefirstitem>  </beforefirstitem><listitem spaces=" "><prepend>•</prepend><para>Attribute propagation occurs in a regular assign statement. The variable being defined on the LHS gets copies of the attributes from the leftermost variable on the RHS.
   </para></listitem><listitem spaces=" "><prepend>•</prepend><para>Attribute Inheritance: The LHS variable &textldquo;inherits&textrdquo; attributes from an Input variable with the same name
@@ -9870,7 +10784,7 @@ th_min=1.0 + 2*three_dmn_var_dbl.min($time);
 </subsection>
 <node name="Number-literals" spaces=" "><nodename>Number literals</nodename><nodenext spaces=" ">if statement</nodenext><nodeprev spaces=" ">Attributes</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Number literals</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="972">number literals <command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1014">number literals <command>ncap2</command></indexterm></cindex>
 <para>The table below lists the postfix character(s) to add to a number
 literal for type cohesion. 
 To use the new netCDF4 types <acronym><acronymword>NCO</acronymword></acronym> must be compiled/linked to
@@ -9935,7 +10849,7 @@ n6 at units="kelvin" // attribute will be type @code{NC_CHAR}
 </subsection>
 <node name="if-statement" spaces=" "><nodename>if statement</nodename><nodenext spaces=" ">print statement</nodenext><nodeprev spaces=" ">Number literals</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>if statement</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="973">if()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1015">if()</indexterm></cindex>
 <para>The syntax of the if statement is similar to its C counterpart. 
 The <emph>Conditional Operator (ternary operator)</emph> has also been
 implemented. 
@@ -10018,7 +10932,7 @@ th_nw=(three_dmn_var_sht >= 0 ? three_dmn_var_sht.uint() : \
 </subsection>
 <node name="print-statement" spaces=" "><nodename>print statement</nodename><nodenext spaces=" ">Missing values ncap2</nodenext><nodeprev spaces=" ">if statement</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>print statement</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="974">print() <command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1016">print() <command>ncap2</command></indexterm></cindex>
 <example endspaces=" ">
 <pre xml:space="preserve">print(variable_name/attribute name/string, format string);
 </pre></example>  
@@ -10058,7 +10972,7 @@ This function is 	  monotonic
 </subsection>
 <node name="Missing-values-ncap2" spaces=" "><nodename>Missing values ncap2</nodename><nodenext spaces=" ">Methods and functions</nodenext><nodeprev spaces=" ">print statement</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Missing values ncap2</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="975">missing values ncap2</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1017">missing values ncap2</indexterm></cindex>
 <para>Missing values operate slightly differently in <command>ncap2</command> 
 Consider the expression where op is any of the following operators (excluding &textrsquo;=&textrsquo;)
 </para><example endspaces=" ">
@@ -10101,7 +11015,7 @@ with a variable.
 They only work on variables in Output. 
 </para><table commandarg="code" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="code">set_miss(expr)</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="976"><code>set_miss()</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1018"><code>set_miss()</code></indexterm></cindex>
  <para>The numeric argument <var>expr</var> becomes the new missing value,
  overwriting the old missing value, if any.
  The argument given is converted if necessary to the variable type.
@@ -10114,23 +11028,23 @@ They only work on variables in Output.
  The intrinsic function <code>change_miss()</code> (see below) is typically 
  used to edit values of existing variables.
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">change_miss(expr)</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="977"><code>change_miss()</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1019"><code>change_miss()</code></indexterm></cindex>
  <para>Sets or changes (any pre-existing) missing value attribute and missing 
  data values to <var>expr</var>. 
  NB: This is an expensive function since all values must be examined. 
  Use this function when changing missing values for pre-existing
  variables. 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">get_miss() </itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="978"><code>get_miss()</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1020"><code>get_miss()</code></indexterm></cindex>
  <para>Returns the missing value of a variable. 
  If the variable exists in Input and Output then the missing value of
  the variable in Output is returned. 
  If the variable has no missing value then an error is returned.   
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">delete_miss()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="979"><code>delete_miss()</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1021"><code>delete_miss()</code></indexterm></cindex>
  <para>Delete the missing value associated with a variable.
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">number_miss()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="980"><code>number_miss()</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1022"><code>number_miss()</code></indexterm></cindex>
  <para>Count the number of missing values a variable contains.
 </para></tableitem></tableentry></table>
 
@@ -10193,26 +11107,35 @@ type double, average it, then convert this back to type short:
 </para>
 <table commandarg="code" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="code">avg()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="981">avg()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1023">avg()</indexterm></cindex>
 <para>Mean value 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">sqravg()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="982">sqravg()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1024">sqravg()</indexterm></cindex>
 <para>Square of the mean
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">avgsqr()</itemformat></item>
 </tableterm><tableitem><para>Mean of sum of squares
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">max()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="983">max()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1025">max()</indexterm></cindex>
 <para>Maximum value
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">min()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="984">min()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1026">min()</indexterm></cindex>
 <para>Minimum value
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">mabs()</itemformat></item>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1027">mabs()</indexterm></cindex>
+<para>Maximum absolute value
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">mebs()</itemformat></item>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1028">mebs()</indexterm></cindex>
+<para>Mean absolute value
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">mibs()</itemformat></item>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1029">mibs()</indexterm></cindex>
+<para>Minimum absolute value
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">rms()</itemformat></item>
 </tableterm><tableitem><para>Root-mean-square (normalize by <var>N</var>)
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">rmssdn()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="985">rmssdn()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1030">rmssdn()</indexterm></cindex>
 <para>Root-mean square (normalize by <var>N-1</var>)
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">ttl() or total()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="986">ttl()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1031">ttl()</indexterm></cindex>
 <para>Sum of values
 </para></tableitem></tableentry></table>
 
@@ -10226,19 +11149,19 @@ four_time_avg=four_dmn_rec_var($time);
 For more information see <pxref label="Packed-data"><xrefnodename>Packed data</xrefnodename></pxref> and <pxref label="ncpdq-netCDF-Permute-Dimensions-Quickly"><xrefnodename>ncpdq netCDF Permute Dimensions Quickly</xrefnodename></pxref>&linebreak;
 </para><table commandarg="code" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="code">pack() & pack_short()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="987">pack()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1032">pack()</indexterm></cindex>
 <para>The default packing algorithm is applied and variable is packed to <code>NC_SHORT</code>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">pack_byte()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="988">pack_byte()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1033">pack_byte()</indexterm></cindex>
 <para>Variable is packed to <code>NC_BYTE</code>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">pack_short()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="989">pack_short()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1034">pack_short()</indexterm></cindex>
 <para>Variable is packed to <code>NC_SHORT</code>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">pack_int()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="990">pack_int()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1035">pack_int()</indexterm></cindex>
 <para>Variable is packed to <code>NC_INT</code>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">unpack()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="991">unpack()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1036">unpack()</indexterm></cindex>
 <para>The standard unpacking algorithm is applied. 
 </para></tableitem></tableentry></table>
 
@@ -10247,13 +11170,13 @@ These methods work with variables and attributes. They have no arguments
 </para>
 <table commandarg="code" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="code">size()	</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="992">size()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1037">size()</indexterm></cindex>
 <para>Total number of elements 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">ndims()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="993">ndims()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1038">ndims()</indexterm></cindex>
 <para>Number of dimensions in variable
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">type() </itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="994">type()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1039">type()</indexterm></cindex>
 <para>Returns the netcdf type (see previous section)
 </para></tableitem></tableentry></table>
 
@@ -10294,43 +11217,43 @@ lat_2D_rrg_new=0,90,-30,30,-30,30,-90,0
 
 <sp value="1" line=" 1"></sp>
 <noindent></noindent> <para><strong>Type Conversion Methods &linebreak;</strong>
-<noindent></noindent> These methods allow <command>ncap2</command> to convert variables and attributes to the different netcdf types. For more details on automatic and manual type conversion see (<pxref label="Type-Conversion"><xrefnodename>Type Conversion</xrefnodename></pxref>). You can only use the new netCDF4 types if you have compiled/links <acronym><acronymword>NCO</acronymword></acronym> with the netCDF4 library and the Output file is HDF5.
+<noindent></noindent> These methods allow <command>ncap2</command> to convert variables and attributes to the different netcdf types. For more details on automatic and manual type conversion see (<pxref label="Type-Conversion"><xrefnodename>Type Conversion</xrefnodename></pxref>). You may only use the new netCDF4 types if you have compiled/links <acronym><acronymword>NCO</acronymword></acronym> with the netCDF4 library and the Output file is HDF5.
 </para>
 <table commandarg="code" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="code"><strong>netCDF3/4 Types</strong></itemformat></item>
 </tableterm></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">byte()	 </itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="995">byte()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1040">byte()</indexterm></cindex>
  <para>convert to <code>NC_BYTE</code>,  a signed 1-byte integer 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">char()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="996">char()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1041">char()</indexterm></cindex>
  <para>convert to <code>NC_CHAR</code>,  an ISO/ASCII character
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">short()	</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="997">sshort()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1042">sshort()</indexterm></cindex>
  <para>convert to <code>NC_SHORT</code>, a signed 2-byte integer 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">int()	 </itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="998">int()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1043">int()</indexterm></cindex>
  <para>convert to <code>NC_INT</code>,   a signed 4-byte integer 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">float()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="999">float()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1044">float()</indexterm></cindex>
  <para>convert to <code>NC_FLOAT</code>, a single-precision (4-byte) floating point number 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">double() </itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1000">double()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1045">double()</indexterm></cindex>
  <para>convert to <code>NC_DOUBLE</code>, a double-precision (8-byte) floating point number 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code"><strong>netCDF4 Types</strong></itemformat></item>
 </tableterm></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">ubyte()	 </itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1001">ubyte()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1046">ubyte()</indexterm></cindex>
  <para>convert to <code>NC_UBYTE</code>, an unsigned 1-byte integer 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">ushort() </itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1002">ushort()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1047">ushort()</indexterm></cindex>
  <para>convert to <code>NC_USHORT</code>, an unsigned 2-byte integer 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">uint()</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1003">uint()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1048">uint()</indexterm></cindex>
  <para>convert to <code>NC_UINT</code>, an unsigned 4-byte integer 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">int64()	</itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1004">int64()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1049">int64()</indexterm></cindex>
  <para>convert to <code>NC_INT64</code>, a signed 8-byte integer 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">uint64() </itemformat></item>
-</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1005">unit64()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1050">unit64()</indexterm></cindex>
  <para>convert to <code>NC_UINT64</code>, an unsigned 8-byte integer
 </para></tableitem></tableentry></table>
 
@@ -10354,7 +11277,7 @@ n3=1/(three_dmn_var_dbl.cos().pow(2))-tan(three_dmn_var_dbl)^2; // n3 type doubl
 <html endspaces=" ">
 <a name="ncap_ram"></a> <!&textndash; http://nco.sf.net/nco.html#ncap_ram &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1006"><acronym><acronymword>RAM</acronymword></acronym> variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1051"><acronym><acronymword>RAM</acronymword></acronym> variables</indexterm></cindex>
 </subsection>
 <node name="RAM-variables" spaces=" "><nodename>RAM variables</nodename><nodenext spaces=" ">Where statement</nodenext><nodeprev spaces=" ">Methods and functions</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle><acronym><acronymword>RAM</acronymword></acronym> variables</sectiontitle>
@@ -10369,8 +11292,8 @@ To delete a <acronym><acronymword>RAM</acronymword></acronym> variables (and rec
 <code>ram_delete()</code> method. 
 To write a <acronym><acronymword>RAM</acronymword></acronym> variable to disk (like a regular variable) use
 <code>ram_write()</code>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1007">ram_write()</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1008">ram_delete()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1052">ram_write()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1053">ram_delete()</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">*temp[$time,$lat,$lon]=10.0;     // Cast
 *temp_avg=temp.avg($time);      // Regular assign
@@ -10392,7 +11315,7 @@ temp_avg.ram_write();           // Write Variable to output
 </subsection>
 <node name="Where-statement" spaces=" "><nodename>Where statement</nodename><nodenext spaces=" ">Loops</nodenext><nodeprev spaces=" ">RAM variables</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Where statement</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1009">where()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1054">where()</indexterm></cindex>
 <para>A <code>where()</code> combines the definition and application of a mask all in one go and can lead to succinct code. 
 The full syntax of a <code>where()</code> statement is as follows:
 </para>
@@ -10461,10 +11384,10 @@ to set its values less than 8 or greater than 80 <w>to 0</w>:
 <a name="wrf"></a> <!&textndash; http://nco.sf.net/nco.html#wrf &textndash;>
 <a name="sld"></a> <!&textndash; http://nco.sf.net/nco.html#sld &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1010">Weather and Research Forecast (<acronym><acronymword>WRF</acronymword></acronym>) Model</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1011">Swath-like Data (<acronym><acronymword>SLD</acronymword></acronym>)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1012"><acronym><acronymword>WRF</acronymword></acronym> (Weather and Research Forecast Model)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1013"><acronym><acronymword>SLD</acronymword></acronym> (Swath-like Data)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1055">Weather and Research Forecast (<acronym><acronymword>WRF</acronymword></acronym>) Model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1056">Swath-like Data (<acronym><acronymword>SLD</acronymword></acronym>)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1057"><acronym><acronymword>WRF</acronymword></acronym> (Weather and Research Forecast Model)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1058"><acronym><acronymword>SLD</acronymword></acronym> (Swath-like Data)</indexterm></cindex>
 <para>Consider irregularly gridded data, described using <w>rank 2</w> coordinates: 
 <code>double lat(south_north,east_west)</code>,
 <code>double lon(south_north,east_west)</code>, 
@@ -10491,8 +11414,8 @@ temp_max=temperature.max();
 <a name="NARR"></a> <!&textndash; http://nco.sf.net/nco.html#NARR &textndash;>
 <a name="narr"></a> <!&textndash; http://nco.sf.net/nco.html#narr &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1014"><acronym><acronymword>NARR</acronymword></acronym> (North American Regional Reanalysis)a</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1015">North American Regional Reanalysis (<acronym><acronymword>NARR</acronymword></acronym>)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1059"><acronym><acronymword>NARR</acronymword></acronym> (North American Regional Reanalysis)a</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1060">North American Regional Reanalysis (<acronym><acronymword>NARR</acronymword></acronym>)</indexterm></cindex>
 <para>For North American Regional Reanalysis (<acronym><acronymword>NARR</acronymword></acronym>) data
 (example
 <uref><urefurl>http://dust.ess.uci.edu/diwg/narr_uwnd.199605.nc</urefurl><urefdesc spaces=" ">dataset</urefdesc></uref>)
@@ -10546,8 +11469,8 @@ We plan to extend such <acronym><acronymword>SLD</acronymword></acronym> feature
 </subsection>
 <node name="Loops" spaces=" "><nodename>Loops</nodename><nodenext spaces=" ">Include files</nodenext><nodeprev spaces=" ">Where statement</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Loops</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1016">while()</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1017">for()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1061">while()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1062">for()</indexterm></cindex>
 <para><command>ncap2</command> supplies <command>for()</command> loops and <command>while()</command> loops. 
 They are completely unoptimized so use them only with <acronym><acronymword>RAM</acronymword></acronym> 
 variables unless you want thrash your disk to death. 
@@ -10596,7 +11519,7 @@ print("Total of odd elements ");print(sum);print("\n");
 </subsection>
 <node name="Include-files" spaces=" "><nodename>Include files</nodename><nodenext spaces=" ">Sort methods</nodenext><nodeprev spaces=" ">Loops</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Include files</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1018"><command>include</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1063"><command>include</command></indexterm></cindex>
 <para>The syntax of an <var>include-file</var> is:
 </para><example endspaces=" ">
 <pre xml:space="preserve">#include "script.nco"
@@ -10622,12 +11545,12 @@ e=2.71828; // Regular (disk) variable, written to output
 </subsection>
 <node name="Sort-methods" spaces=" "><nodename>Sort methods</nodename><nodenext spaces=" ">Irregular grids</nodenext><nodeprev spaces=" ">Include files</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle><command>sort</command> methods</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1019"><command>sort</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1020"><command>asort</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1021"><command>dsort</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1022"><command>remap</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1023"><command>unmap</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1024"><command>invert_map</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1064"><command>sort</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1065"><command>asort</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1066"><command>dsort</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1067"><command>remap</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1068"><command>unmap</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1069"><command>invert_map</command></indexterm></cindex>
 <para>In <acronym><acronymword>ncap2</acronymword></acronym> there are multiple ways to sort data. 
 Beginning with <acronym><acronymword>NCO</acronymword></acronym> 4.1.0 (March, 2012), <acronym><acronymword>ncap2</acronymword></acronym> 
 support six sorting functions:
@@ -10901,11 +11824,11 @@ ncap2 -O -v -S ~/ncap2_foo.nco ~/nco/data/in.nc ~/foo.nc
 </subsection>
 <node name="Irregular-grids" spaces=" "><nodename>Irregular grids</nodename><nodenext spaces=" ">Bilinear interpolation</nodenext><nodeprev spaces=" ">Sort methods</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>Irregular Grids</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1025">irregular grids</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1026">rectangular grids</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1027">non-rectangular grids</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1028">non-standard grids</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1029">mask</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1070">irregular grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1071">rectangular grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1072">non-rectangular grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1073">non-standard grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1074">mask</indexterm></cindex>
 <!-- c fxm need to edit rrg sxn beginning here -->
 <para><acronym><acronymword>NCO</acronymword></acronym> is capable of analyzing datasets for many different
 underlying coordinate grid types.
@@ -10941,7 +11864,7 @@ analysis software like <acronym><acronymword>NCO</acronymword></acronym>.
 are independent of these grid properties (regularity,
 rectangularity). 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1030">wrapped coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1075">wrapped coordinates</indexterm></cindex>
 <para>The preferred <acronym><acronymword>NCO</acronymword></acronym> technique to analyze data on non-standard
 coordinate grids is to create a region mask with <command>ncap2</command>, and
 then to use the mask within <command>ncap2</command> for variable-specific
@@ -11019,7 +11942,7 @@ ncl 'file_in="wrfout.nc"' 'file_out="wrfpost.nc"' wrfout_to_
 ncl 'file_in="wrfout_d02_2013-10-04_20:00:00"' 'file_out="wrfout_d02_2013-10-04_20:00:00_cf.nc"' wrfout_to_cf.ncl
 ncl 'file_in="wrfout_v2_Lambert"' 'file_out="wrfout_v2_Lambert.nc"' wrfout_to_cf.ncl
 </ignore>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1031"><acronym><acronymword>WRF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1076"><acronym><acronymword>WRF</acronymword></acronym></indexterm></cindex>
 <para>Grids like those produced by the <acronym><acronymword>WRF</acronymword></acronym> model are complex because
 one must use global metadata to determine the grid staggering and
 offsets to translate <code>XLAT</code> and <code>XLONG</code> into real latitudes, 
@@ -11185,7 +12108,7 @@ print(T_out);
 </subsection>
 <node name="GSL-special-functions" spaces=" "><nodename>GSL special functions</nodename><nodenext spaces=" ">GSL interpolation</nodenext><nodeprev spaces=" ">Bilinear interpolation</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>GSL special functions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1032"><acronym><acronymword>GSL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1077"><acronym><acronymword>GSL</acronymword></acronym></indexterm></cindex>
 <noindent></noindent> <para>As of version 3.9.6 (released January, 2009), <acronym><acronymword>NCO</acronymword></acronym> 
 can link to the <acronym><acronymword>GNU</acronymword></acronym> Scientific Library (<acronym><acronymword>GSL</acronymword></acronym>). 
 <command>ncap2</command> can access most <acronym><acronymword>GSL</acronymword></acronym> special functions including
@@ -11213,8 +12136,8 @@ The slow-down due to calling the error-handling version of the
 <acronym><acronymword>GSL</acronymword></acronym> numerical functions was found to be negligible (please let
 us know if you find otherwise).
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1033">gamma function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1034"><var>gsl_sf_gamma</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1078">gamma function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1079"><var>gsl_sf_gamma</var></indexterm></cindex>
 <noindent></noindent> <para>Consider the gamma function.&linebreak;
 <noindent></noindent> The <acronym><acronymword>GSL</acronymword></acronym> function prototype is &linebreak;
 <code>int gsl_sf_gamma_e(const double x, gsl_sf_result * result)</code>
@@ -11234,8 +12157,8 @@ Otherwise, the default double fill value is used
 (defined in the netCDF header <file>netcdf.h</file> as 
 <code>NC_FILL_DOUBLE = 9.969e+36</code>).
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1035">Bessel function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1036"><var>gsl_sf_bessel_Jn</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1080">Bessel function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1081"><var>gsl_sf_bessel_Jn</var></indexterm></cindex>
 <noindent></noindent> <para>Consider a call to a Bessel function with <acronym><acronymword>GSL</acronymword></acronym>
 prototype&linebreak; 
 <code>int gsl_sf_bessel_Jn_e(int n, double x, gsl_sf_result * result)</code> 
@@ -11266,7 +12189,7 @@ dimension, so <code>n_in</code> in can be broadcast to conform to
 <code>three_dmn_var_dbl</code>.  
 However <code>time_out=gsl_sf_bessel_Jn(n_in,time)</code> is invalid.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1037">Elliptic integrals</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1082">Elliptic integrals</indexterm></cindex>
 <para>Consider the elliptical integral with prototype
 <code>int gsl_sf_ellint_RD_e(double x, double y, double z, gsl_mode_t mode, gsl_sf_result * result)</code>
 </para><example endspaces=" ">
@@ -11307,7 +12230,7 @@ Zero indicates success.
 </para>
 <noindent></noindent> <para>Consider another array function &linebreak; 
 <code>int gsl_sf_legendre_Pl_array( int lmax, double x, double *result_array);</code>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1038">Legendre polynomial</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1083">Legendre polynomial</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="17" mergedindex="cp">gsl_sf_legendre_Pl</indexterm></findex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">a1=time.double();
@@ -11619,7 +12542,7 @@ prototypes look at the spreadsheet <strong>doc/nco_gsl.ods</strong>. &linebreak;
 </subsection>
 <node name="GSL-interpolation" spaces=" "><nodename>GSL interpolation</nodename><nodenext spaces=" ">GSL least-squares fitting</nodenext><nodeprev spaces=" ">GSL special functions</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>GSL interpolation</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1039"><acronym><acronymword>GSL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1084"><acronym><acronymword>GSL</acronymword></acronym></indexterm></cindex>
 <noindent></noindent> <para>As of version 3.9.9 (released July, 2009), <acronym><acronymword>NCO</acronymword></acronym> has wrappers to the <acronym><acronymword>GSL</acronymword></acronym> interpolation functions.
 </para>
 <noindent></noindent>  <para>Given a set of data points (x1,y1)...(xn, yn) the <acronym><acronymword>GSL</acronymword></acronym> functions computes a continuous interpolating function <acronym><acronymword>Y(x)</acronymword></acronym> such that <acronym><acronymword>Y(xi) = yi</acronymword></acronym>. The interpolation is piecewise smooth, and its behavior at the end-points is determined by the type of interpolation used. For more information consult the <acronym><acronymword>GSL</acrony [...]
@@ -11851,16 +12774,16 @@ print(dmin);print(dmax);
 </subsection>
 <node name="GSL-random-number-generation" spaces=" "><nodename>GSL random number generation</nodename><nodenext spaces=" ">Examples ncap2</nodenext><nodeprev spaces=" ">GSL statistics</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>GSL random number generation</sectiontitle>
-<para>The <acronym><acronymword>GSL</acronymword></acronym> library has a large number of random number generators. In addition there are a large set of functions for turning uniform random numbers into discrete or continuous probabilty distributions. The random number generator algorithms vary in terms of quality numbers output, speed of execution and maximium number output. For more information see the <acronym><acronymword>GSL</acronymword></acronym> documentation. The algorithm and s [...]
+<para>The <acronym><acronymword>GSL</acronymword></acronym> library has a large number of random number generators. In addition there are a large set of functions for turning uniform random numbers into discrete or continuous probabilty distributions. The random number generator algorithms vary in terms of quality numbers output, speed of execution and maximum number output. For more information see the <acronym><acronymword>GSL</acronymword></acronym> documentation. The algorithm and se [...]
 </para>
 <noindent></noindent> <para><strong>Setup</strong> &linebreak;  
 The number algorithm is set by the environment variable <code>GSL_RNG_TYPE</code>. If this variable isn&textrsquo;t set then the default rng algorithm is gsl_rng_19937. The seed is set with the environment variable <code>GSL_RNG_SEED</code>. The following wrapper functions in ncap2 provide information about the chosen algorithm. &linebreak; 
 </para>
 <table commandarg="code" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="code">gsl_rng_min() </itemformat></item>
-</tableterm><tableitem><para>the minimium value returned by the rng algorithm.
+</tableterm><tableitem><para>the minimum value returned by the rng algorithm.
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">gsl_rng_max()</itemformat></item>
-</tableterm><tableitem><para>the maximium value returned by the rng algorithm. 
+</tableterm><tableitem><para>the maximum value returned by the rng algorithm. 
 </para></tableitem></tableentry></table>
 
 <noindent></noindent> <para><strong>Uniformly Distributed Random Numbers</strong> 
@@ -11868,7 +12791,7 @@ The number algorithm is set by the environment variable <code>GSL_RNG_TYPE</code
 <tableentry><tableterm><item spaces=" "><itemformat command="code">gsl_rng_get(var_in)</itemformat></item>
 </tableterm><tableitem><para>This function returns var_in with integers from the chosen rng algorithm. The min and max values depend uoon the chosen rng algorthm.
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">gsl_rng_uniform_int(var_in)</itemformat></item>
-</tableterm><tableitem><para>This function returns var_in with random integers from 0 to n-1. The value n must be less than or equal to the maximium value of the chosen rng algorithm. 
+</tableterm><tableitem><para>This function returns var_in with random integers from 0 to n-1. The value n must be less than or equal to the maximum value of the chosen rng algorithm. 
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">gsl_rng_uniform(var_in)</itemformat></item>
 </tableterm><tableitem><para>This function returns var_in with double-precision numbers in the range [0.0,1). The range includes 0.0 and excludes 1.0.
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">gsl_rng_uniform_pos(var_in)</itemformat></item>
@@ -11890,14 +12813,14 @@ a2 = 1, 1, 6, 9, 11, 13, 13, 15, 16, 19 ;
 
 </pre></example>
 
-<noindent></noindent> <para>The following example produces an <code>ncap2</code> runtime error. This is because the chose rng algorithm has a maximium value greater than <code> NC_MAX_INT=2147483647 </code>; the wrapper functions to <code>gsl_rng_get()</code> and <code>gsl_rng_uniform_int()</code> return variable of type <code>NC_INT</code>. Please be aware of this when using random number distribution functions functions from the <acronym><acronymword>GSL</acronymword></acronym> library [...]
+<noindent></noindent> <para>The following example produces an <code>ncap2</code> runtime error. This is because the chose rng algorithm has a maximum value greater than <code> NC_MAX_INT=2147483647 </code>; the wrapper functions to <code>gsl_rng_get()</code> and <code>gsl_rng_uniform_int()</code> return variable of type <code>NC_INT</code>. Please be aware of this when using random number distribution functions functions from the <acronym><acronymword>GSL</acronymword></acronym> library  [...]
 </para>
 <example endspaces=" ">
 <pre xml:space="preserve">export GSL_RNG_TYPE=mt19937
 ncap2 -v -O -s 'a1[time]=0;a2=gsl_rng_get(a1);' in.nc foo.nc 
 </pre></example>
 
-<noindent></noindent> <para>To find the maximium value of the chosen rng algorithm use the following code snippet.
+<noindent></noindent> <para>To find the maximum value of the chosen rng algorithm use the following code snippet.
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncap2 -v -O -s 'rng_max=gsl_rng_max();print(rng_max)' in.nc foo.nc
 </pre></example>
@@ -11991,8 +12914,8 @@ statements chained together as a single <samp>-s</samp> argument.
 <html endspaces=" ">
 <a name="xmp_grw"></a> <!&textndash; http://nco.sf.net/nco.html#xmp_grw &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1040">growing dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1041">dimensions, growing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1085">growing dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1086">dimensions, growing</indexterm></cindex>
 <para><command>ncap2</command> may be used to &textldquo;grow&textrdquo; dimensions, i.e., to increase
 dimension sizes without altering existing data.
 Say <file>in.nc</file> has <code>ORO(lat,lon)</code> and the user wishes a new
@@ -12015,7 +12938,7 @@ and then execute the script with
 <html endspaces=" ">
 <a name="flg"></a> <!&textndash; http://nco.sf.net/nco.html#flg &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1042">flags</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1087">flags</indexterm></cindex>
 <para>Imagine you wish to create a binary flag based on the value of 
 an array.
 The flag should have <w>value 1.0</w> where the array <w>exceeds 1.0</w>,
@@ -12030,7 +12953,7 @@ from the continuous array named <code>ORO</code> in <file>in.nc</file>.
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncap2 -s 'ORO_msk=(ORO==2.0);ORO=ORO_msk*3.0+!ORO_msk*ORO' in.nc out.nc
 </pre></example>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1043">mask</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1088">mask</indexterm></cindex>
 <para>This creates and uses <code>ORO_msk</code> to mask the subsequent arithmetic
 operation.
 Values of <code>ORO</code> are only changed where <code>ORO_msk</code> is true,
@@ -12047,7 +12970,7 @@ Using the <code>where</code> statement the above code simplifies to :
 variables. 
 Let the variables <var>u</var> and <var>v</var> be the horizontal 
 wind components. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1044">covariance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1089">covariance</indexterm></cindex>
 <!-- c fxm 20030423: texi2html 1.64 has problems with this legal syntax but makeinfo -html does not -->
 The <dfn>covariance</dfn> of <var>u</var> and <var>v</var> is defined
 as the time mean product of the deviations of <var>u</var> and
@@ -12070,7 +12993,7 @@ where <math>[<var>x</var>]</math> denotes the time-average of
 denotes the deviation from the time-mean. 
 The covariance tells us how much of the correlation of two signals
 arises from the signal fluctuations versus the mean signals.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1045">eddy covariance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1090">eddy covariance</indexterm></cindex>
 Sometimes this is called the <dfn>eddy covariance</dfn>.
 We will store the covariance in the variable <code>uprmvprm</code>.
 </para><example endspaces=" ">
@@ -12095,11 +13018,11 @@ can compute averages, and thus covariances, by itself:
 <para>We have not seen a simpler method to script and execute powerful
 arithmetic than <command>ncap2</command>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1046">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1047">shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1048">quotes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1049">extended regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1050">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1091">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1092">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1093">quotes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1094">extended regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1095">regular expressions</indexterm></cindex>
 <para><command>ncap2</command> utilizes many meta-characters 
 (e.g., <samp>$</samp>, <samp>?</samp>, <samp>;</samp>, <samp>()</samp>, <samp>[]</samp>)
 that can confuse the command-line shell if not quoted properly.
@@ -12131,13 +13054,13 @@ In such cases it may be necessary to use the shell backslash character
 <samp>\</samp> to protect the <command>ncap2</command> meta-character.
 </para>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1051">appending data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1052">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1096">appending data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1097">time-averaging</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="18" mergedindex="cp">ncks</indexterm></findex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="19" mergedindex="cp">ncwa</indexterm></findex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="20" mergedindex="cp">ncra</indexterm></findex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1053">degenerate dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1054"><samp>-b</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1098">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1099"><samp>-b</samp></indexterm></cindex>
 <para>A dimension of size one is said to be <emph>degenerate</emph>.
 Whether a degenerate record dimension is desirable or not
 depends on the application.
@@ -12155,7 +13078,7 @@ and <code>vavg</code> to the size of the non-degenerate <var>time</var> dimensio
 in the input file.
 Thus the append (<command>ncks -A</command>) command would be undefined (and
 should fail) in this case. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1055"><code>-C</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1100"><code>-C</code></indexterm></cindex>
 Equally important is the <samp>-C</samp> argument 
 (<pxref label="Subsetting-Coordinate-Variables"><xrefnodename>Subsetting Coordinate Variables</xrefnodename></pxref>) to <command>ncwa</command> to prevent
 any scalar <var>time</var> variable from being written to the output file.  
@@ -12170,78 +13093,78 @@ Knowing when to use <command>ncwa -a time</command> rather than the default
 <subsection spaces=" "><sectiontitle>Intrinsic mathematical methods</sectiontitle>
 <para><command>ncap2</command> supports the standard mathematical functions supplied with
 most operating systems.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1056">addition</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1057">subtraction</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1058">multiplication</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1059">division</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1060">exponentiation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1061">power</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1062">modulus</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1063"><code>+</code> (addition)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1064"><code>-</code> (subtraction)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1065"><code>*</code> (multiplication)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1066"><code>/</code> (division)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1067"><code>^</code> (power)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1068"><code>%</code> (modulus)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1101">addition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1102">subtraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1103">multiplication</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1104">division</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1105">exponentiation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1106">power</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1107">modulus</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1108"><code>+</code> (addition)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1109"><code>-</code> (subtraction)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1110"><code>*</code> (multiplication)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1111"><code>/</code> (division)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1112"><code>^</code> (power)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1113"><code>%</code> (modulus)</indexterm></cindex>
 Standard calculator notation is used for addition <kbd>+</kbd>, subtraction
 <kbd>-</kbd>, multiplication <kbd>*</kbd>, division <kbd>/</kbd>, exponentiation
 <kbd>^</kbd>, and modulus <kbd>%</kbd>.
 The available elementary mathematical functions are: 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1069"><var>abs</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1070"><var>acosh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1071"><var>acos</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1072"><var>asinh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1073"><var>asin</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1074"><var>atanh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1075"><var>atan</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1076"><var>ceil</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1077"><var>cosh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1078"><var>cos</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1079"><var>erfc</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1080"><var>erf</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1081"><var>exp</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1082"><var>floor</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1083"><var>gamma</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1084"><var>ln</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1085"><var>log10</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1086"><var>log</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1087"><var>nearbyint</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1088"><var>pow</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1089"><var>rint</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1090"><var>round</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1091"><var>sinh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1092"><var>sin</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1093"><var>sqrt</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1094"><var>tanh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1095"><var>tan</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1096"><var>trunc</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1097">mathematical functions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1098">nearest integer function (inexact)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1099">nearest integer function (exact)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1100">rounding functions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1101">truncation function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1102">absolute value</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1103">arccosine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1104">arcsine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1105">arctangent function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1106">ceiling function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1107">complementary error function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1108">cosine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1109">error function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1110">exponentiation function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1111">floor function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1112">gamma function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1113">hyperbolic arccosine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1114">hyperbolic arcsine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1115">hyperbolic arctangent function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1116">hyperbolic cosine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1117">hyperbolic sine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1118">hyperbolic tangent</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1119">logarithm, base 10</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1120">logarithm, natural</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1121">power function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1122">sine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1123">square root function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1114"><var>abs</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1115"><var>acosh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1116"><var>acos</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1117"><var>asinh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1118"><var>asin</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1119"><var>atanh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1120"><var>atan</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1121"><var>ceil</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1122"><var>cosh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1123"><var>cos</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1124"><var>erfc</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1125"><var>erf</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1126"><var>exp</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1127"><var>floor</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1128"><var>gamma</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1129"><var>ln</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1130"><var>log10</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1131"><var>log</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1132"><var>nearbyint</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1133"><var>pow</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1134"><var>rint</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1135"><var>round</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1136"><var>sinh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1137"><var>sin</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1138"><var>sqrt</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1139"><var>tanh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1140"><var>tan</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1141"><var>trunc</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1142">mathematical functions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1143">nearest integer function (inexact)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1144">nearest integer function (exact)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1145">rounding functions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1146">truncation function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1147">absolute value</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1148">arccosine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1149">arcsine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1150">arctangent function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1151">ceiling function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1152">complementary error function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1153">cosine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1154">error function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1155">exponentiation function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1156">floor function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1157">gamma function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1158">hyperbolic arccosine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1159">hyperbolic arcsine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1160">hyperbolic arctangent function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1161">hyperbolic cosine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1162">hyperbolic sine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1163">hyperbolic tangent</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1164">logarithm, base 10</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1165">logarithm, natural</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1166">power function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1167">sine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1168">square root function</indexterm></cindex>
 </para><table commandarg="code" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="code">abs(x)</itemformat></item>
 </tableterm><tableitem><para><dfn>Absolute value</dfn>
@@ -12440,7 +13363,7 @@ log$(10.0) = 1.0$
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">nearbyint(x)</itemformat></item>
 </tableterm><tableitem><para><dfn>Round inexactly</dfn>
 Nearest integer to <var>x</var> is returned in floating point format.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1124">inexact conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1169">inexact conversion</indexterm></cindex>
 No exceptions are raised for <dfn>inexact conversions</dfn>.
 Example: 
 <tex endspaces=" ">
@@ -12449,8 +13372,8 @@ nearbyint$(0.1) = 0.0$
 <math>nearbyint(0.1) = 0.0</math>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">pow(x,y)</itemformat></item>
 </tableterm><tableitem><para><dfn>Power</dfn>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1125">promotion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1126">automatic type conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1170">promotion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1171">automatic type conversion</indexterm></cindex>
 Value of <var>x</var> is raised to the power of <var>y</var>.
 Exceptions are raised for <dfn>domain errors</dfn>.
 Due to type-limitations in the <w>C language</w> <code>pow</code> function,
@@ -12541,14 +13464,14 @@ platform-specific.
 Functions mandated by <w>ANSI C</w> are <emph>guaranteed</emph> to be present
 and are indicated with an asterisk 
 <!-- c fxm No they're not, not yet -->
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1127"><code>ANSI C</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1128"><code>float</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1129">precision</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1130">quadruple-precision</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1131">single-precision</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1132">double-precision</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1133"><code>long double</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1134"><code>NC_DOUBLE</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1172"><code>ANSI C</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1173"><code>float</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1174">precision</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1175">quadruple-precision</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1176">single-precision</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1177">double-precision</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1178"><code>long double</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1179"><code>NC_DOUBLE</code></indexterm></cindex>
 <footnote spaces="\n"><para><w>ANSI C</w> compilers are guaranteed to support double-precision versions
 of these functions.
 These functions normally operate on netCDF variables of type <code>NC_DOUBLE</code>
@@ -12566,12 +13489,12 @@ performing the operation, and then re-casting.
 available, and uses the casting method when they are not.
 </para></footnote>.
 and are indicated with an asterisk. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1135"><code>-f</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1136"><code>--prn_fnc_tbl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1137"><code>--fnc_tbl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1180"><code>-f</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1181"><code>--prn_fnc_tbl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1182"><code>--fnc_tbl</code></indexterm></cindex>
 Use the <samp>-f</samp> (or <samp>fnc_tbl</samp> or <samp>prn_fnc_tbl</samp>) switch
 to print a complete list of functions supported on your platform.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1138">Linux</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1183">Linux</indexterm></cindex>
 <footnote><para>Linux supports more of these intrinsic functions than
 other OSs.</para></footnote>
 </para>
@@ -12632,7 +13555,7 @@ other OSs.</para></footnote>
 </subsection>
 <node name="ID-Quoting" spaces=" "><nodename>ID Quoting</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" " trailingspaces=" ">Operator precedence and associativity</nodeprev><nodeup spaces=" ">ncap2 netCDF Arithmetic Processor</nodeup></node>
 <subsection spaces=" "><sectiontitle>ID Quoting</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1139">ID Quoting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1184">ID Quoting</indexterm></cindex>
 <para>In this section when I refer to a name I mean a variable name, attribute name or a dimension name
 The allowed characters in a valid netCDF name vary from release to release. (See end section). If you want to use metacharacters in a name or use a method name as a variable name then the name has to be quoted wherever it occurs. 
 </para>
@@ -12707,11 +13630,11 @@ netcdf-4.0 Final  2008/08/28&linebreak;
 </html>
 </subsection>
 </section>
-<node name="ncatted-netCDF-Attribute-Editor" spaces=" "><nodename>ncatted netCDF Attribute Editor</nodename><nodenext spaces=" ">ncbo netCDF Binary Operator</nodenext><nodeprev spaces=" ">ncap2 netCDF Arithmetic Processor</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncatted-netCDF-Attribute-Editor" spaces=" "><nodename>ncatted netCDF Attribute Editor</nodename><nodenext spaces=" ">ncbo netCDF Binary Operator</nodenext><nodeprev spaces=" ">ncap2 netCDF Arithmetic Processor</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncatted</command> netCDF Attribute Editor</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1140">attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1141">attribute names</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1142">editing attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1185">attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1186">attribute names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1187">editing attributes</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="21" mergedindex="cp">ncatted</indexterm></findex>
 
 <noindent></noindent>
@@ -12725,7 +13648,7 @@ netcdf-4.0 Final  2008/08/28&linebreak;
 <noindent></noindent>
 <para>DESCRIPTION
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1143"><command>ncattget</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1188"><command>ncattget</command></indexterm></cindex>
 <para><command>ncatted</command> edits attributes in a netCDF file.  
 If you are editing attributes then you are spending too much time in the
 world of metadata, and <command>ncatted</command> was written to get you back out as
@@ -12740,17 +13663,17 @@ To <emph>read</emph> attribute values in plain text, use <command>ncks -m -M</co
 or define something like <command>ncattget</command> as a shell command
 (<pxref label="Filters-for-ncks"><xrefnodename>Filters for <command>ncks</command></xrefnodename></pxref>). 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1144"><code>history</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1145"><code>-h</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1189"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1190"><code>-h</code></indexterm></cindex>
 <para>Because repeated use of <command>ncatted</command> can considerably increase the size
 of the <code>history</code> global attribute (<pxref label="History-Attribute"><xrefnodename>History Attribute</xrefnodename></pxref>), the
 <samp>-h</samp> switch is provided to override automatically appending the
 command to the <code>history</code> global attribute in the <var>output-file</var>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1146">performance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1147">operator speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1148">speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1149">execution time</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1191">performance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1192">operator speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1193">speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1194">execution time</indexterm></cindex>
 <para>According to the <cite>netCDF User Guide</cite>, altering metadata in
 netCDF files does not incur the penalty of recopying the entire file
 when the new metadata occupies less space than the old metadata.
@@ -12761,9 +13684,9 @@ Similarly, using the <samp>--hdr_pad</samp> option with <command>ncatted</comman
 helps ensure that future metadata changes to <var>output-file</var> occur
 as swiftly as possible.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1150">missing values</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1151">data, missing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1152"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1195">missing values</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1196">data, missing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1197"><code>_FillValue</code></indexterm></cindex>
 <para>When <command>ncatted</command> is used to change the <code>_FillValue</code> attribute,
 it changes the associated missing data self-consistently.
 If the internal floating point representation of a missing value, 
@@ -12777,8 +13700,12 @@ concatenated, e.g., by <command>ncrcat</command>, without losing information.
 <para>To master <command>ncatted</command> one must understand the meaning of the
 structure that describes the attribute modification, <var>att_dsc</var> 
 specified by the required option <samp>-a</samp> or <samp>--attribute</samp>. 
-Each <var>att_dsc</var> contains five elements, which makes using
-<command>ncatted</command> somewhat complicated, yet powerful.
+This option is repeatable and may be used multiple time in a single
+<command>ncatted</command> invocation to increase the efficiency of altering
+multiple attributes.
+Each <var>att_dsc</var> contains five elements.
+This makes using <command>ncatted</command> somewhat complicated, though
+powerful. 
 The <var>att_dsc</var> fields are in the following order:&linebreak; 
 </para>
 <para><var>att_dsc</var> = <var>att_nm</var>, <var>var_nm</var>, <var>mode</var>, <var>att_type</var>,
@@ -12791,10 +13718,10 @@ Example: <code>units</code>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="var">var_nm</itemformat></item>
 </tableterm><tableitem><para>Variable name. 
 Example: <code>pressure</code>, <code>'^H2O'</code>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1153">extended regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1154">regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1155">pattern matching</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1156">wildcards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1198">extended regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1199">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1200">pattern matching</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1201">wildcards</indexterm></cindex>
 Regular expressions (<pxref label="Subsetting-Files"><xrefnodename>Subsetting Files</xrefnodename></pxref>) are accepted and will 
 select any matching variable (<emph>not</emph> attribute) names.
 The names <code>global</code> and <code>group</code> have special meaning.
@@ -12816,8 +13743,7 @@ arguments.
 The description of these arguments follows in their order of
 appearance. 
 </para>
-<para>The value of <var>att_nm</var> is the name of the attribute you want to
-edit. 
+<para>The value of <var>att_nm</var> is the name of the attribute to edit. 
 This meaning of this should be clear to all <command>ncatted</command> users.
 Recall, as mentioned above, that <var>var_nm</var> (but not <var>att_nm</var>) may
 be specified as a regular expression. 
@@ -12825,8 +13751,8 @@ If <var>att_nm</var> is omitted (i.e., left blank) and <dfn>Delete</dfn> mode is
 selected, then all attributes associated with the specified variable
 will be deleted. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1157">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1158">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1202">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1203">attributes, global</indexterm></cindex>
 <para>The value of <var>var_nm</var> is the name of the variable containing the
 attribute (named <var>att_nm</var>) that you want to edit.
 There are three very important and useful exceptions to this rule.
@@ -12854,12 +13780,12 @@ conventions you use for describing the data.
 <para>The value of <var>mode</var> is a single character abbreviation (<code>a</code>,
 <code>c</code>, <code>d</code>, <code>m</code>, or <code>o</code>) standing for one of
 five editing modes:&linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1159">attributes, appending</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1160">attributes, creating</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1161">attributes, deleting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1162">attributes, modifying</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1163">attributes, editing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1164">attributes, overwriting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1204">attributes, appending</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1205">attributes, creating</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1206">attributes, deleting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1207">attributes, modifying</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1208">attributes, editing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1209">attributes, overwriting</indexterm></cindex>
 </para><table commandarg="code" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="code">a </itemformat></item>
 </tableterm><tableitem><para><dfn>Append</dfn>.
@@ -12872,7 +13798,7 @@ effect.
 Create variable <var>var_nm</var> attribute <var>att_nm</var> with <var>att_val</var>
 if <var>att_nm</var> does not yet exist.  
 If <var>var_nm</var> already has an attribute <var>att_nm</var>, there is no
-effect. 
+effect, so the existing attribute is preserved without change.
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">d</itemformat></item>
 </tableterm><tableitem><para><dfn>Delete</dfn>.
 Delete current <var>var_nm</var> attribute <var>att_nm</var>.
@@ -12979,15 +13905,15 @@ The quotes are strictly unnecessary around <var>att_val</var> except
 when <var>att_val</var> contains characters which would confuse the calling
 shell, such as spaces, commas, and wildcard characters. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1165">Perl</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1166"><acronym><acronymword>ASCII</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1210">Perl</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1211"><acronym><acronymword>ASCII</acronymword></acronym></indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> processing of <code>NC_CHAR</code> attributes is a bit like Perl in
 that it attempts to do what you want by default (but this sometimes
 causes unexpected results if you want unusual data storage).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1167"><code>printf()</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1168"><code>\n</code> (<acronym><acronymword>ASCII</acronymword></acronym> LF, linefeed)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1169">characters, special</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1170"><code>\t</code> (<acronym><acronymword>ASCII</acronymword></acronym> HT, horizontal tab)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1212"><code>printf()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1213"><code>\n</code> (<acronym><acronymword>ASCII</acronymword></acronym> LF, linefeed)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1214">characters, special</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1215"><code>\t</code> (<acronym><acronymword>ASCII</acronymword></acronym> HT, horizontal tab)</indexterm></cindex>
 If the <var>att_type</var> is <code>NC_CHAR</code> then the argument is interpreted as a
 string and it may contain C-language escape sequences, e.g., <code>\n</code>,
 which <acronym><acronymword>NCO</acronymword></acronym> will interpret before writing anything to disk.
@@ -13001,27 +13927,27 @@ The most frequently used C-language escape sequences are <code>\n</code> (for
 linefeed) and <code>\t</code> (for horizontal tab).
 These sequences in particular allow convenient editing of formatted text
 attributes. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1171"><code>\a</code> (<acronym><acronymword>ASCII</acronymword></acronym> BEL, bell)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1172"><code>\b</code> (<acronym><acronymword>ASCII</acronymword></acronym> BS, backspace)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1173"><code>\f</code> (<acronym><acronymword>ASCII</acronymword></acronym> FF, formfeed)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1174"><code>\r</code> (<acronym><acronymword>ASCII</acronymword></acronym> CR, carriage return)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1175"><code>\v</code> (<acronym><acronymword>ASCII</acronymword></acronym> VT, vertical tab)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1176"><code>\\</code> (<acronym><acronymword>ASCII</acronymword></acronym> \, backslash)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1216"><code>\a</code> (<acronym><acronymword>ASCII</acronymword></acronym> BEL, bell)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1217"><code>\b</code> (<acronym><acronymword>ASCII</acronymword></acronym> BS, backspace)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1218"><code>\f</code> (<acronym><acronymword>ASCII</acronymword></acronym> FF, formfeed)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1219"><code>\r</code> (<acronym><acronymword>ASCII</acronymword></acronym> CR, carriage return)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1220"><code>\v</code> (<acronym><acronymword>ASCII</acronymword></acronym> VT, vertical tab)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1221"><code>\\</code> (<acronym><acronymword>ASCII</acronymword></acronym> \, backslash)</indexterm></cindex>
 The other valid <acronym><acronymword>ASCII</acronymword></acronym> codes are <code>\a</code>, <code>\b</code>, <code>\f</code>,
 <code>\r</code>, <code>\v</code>, and <code>\\</code>. 
 <xref label="ncks-netCDF-Kitchen-Sink"><xrefnodename>ncks netCDF Kitchen Sink</xrefnodename></xref>, for more examples of string formatting
 (with the <command>ncks</command> <samp>-s</samp> option) with special characters. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1177"><code>\'</code> (protected end quote)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1178"><code>\"</code> (protected double quote)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1179"><code>\?</code> (protected question mark)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1180"><code>\\</code> (protected backslash)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1181"><code>'</code> (end quote)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1182"><code>"</code> (double quote)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1183"><code>?</code> (question mark)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1184"><code>\</code> (backslash)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1185">special characters</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1186"><acronym><acronymword>ASCII</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1222"><code>\'</code> (protected end quote)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1223"><code>\"</code> (protected double quote)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1224"><code>\?</code> (protected question mark)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1225"><code>\\</code> (protected backslash)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1226"><code>'</code> (end quote)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1227"><code>"</code> (double quote)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1228"><code>?</code> (question mark)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1229"><code>\</code> (backslash)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1230">special characters</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1231"><acronym><acronymword>ASCII</acronymword></acronym></indexterm></cindex>
 <para>Analogous to <code>printf</code>, other special characters are also allowed by 
 <command>ncatted</command> if they are &textldquo;protected&textrdquo; by a backslash.
 The characters <code>"</code>, <code>'</code>, <code>?</code>, and <code>\</code> may be 
@@ -13033,11 +13959,11 @@ Backslashes which precede any other character (e.g., <code>3</code>, <code>m</co
 <code>$</code>, <code>|</code>, <code>&</code>, <code>&arobase;</code>, <code>%</code>, <code>{</code>, and
 <code>}</code>) will not be filtered and will be included in the attribute.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1187">strings</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1188">NUL-termination</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1189">NUL</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1190">C language</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1191"><code>0</code> (NUL)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1232">strings</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1233">NUL-termination</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1234">NUL</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1235">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1236"><code>0</code> (NUL)</indexterm></cindex>
 <para>Note that the NUL character <code>\0</code> which terminates <w>C language</w>
 strings is assumed and need not be explicitly specified.
 <!-- comment If @code{\0} is input, it will not be translated (because it would -->
@@ -13077,16 +14003,16 @@ from whatever it currently is to &textldquo;temperature&textrdquo;:
 <html endspaces=" ">
 <a name="NaN"></a> <!&textndash; http://nco.sf.net/nco.html#NaN &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1192">NaN</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1193"><acronym><acronymword>IEEE</acronymword></acronym> NaN</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1194">Not-a-Number</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1237">NaN</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1238"><acronym><acronymword>IEEE</acronymword></acronym> NaN</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1239">Not-a-Number</indexterm></cindex>
 <para><acronym><acronymword>NCO</acronymword></acronym> arithmetic operators may not work as expected on
 <acronym><acronymword>IEEE</acronymword></acronym> NaN (short for Not-a-Number) and NaN-like numbers such as
 positive infinity and negative infinity
 <footnote><para>Arithmetic comparisons to NaN and NaN-like numbers always
 return False, contrary to the behavior of all other numbers.
 This is difficult to inuit, yet is the behavior defined for NaN by
-<acronym><acronymword>IEEE</acronymword></acronym> 754.
+<w><acronym><acronymword>IEEE</acronymword></acronym> 754</w>.
 Using NaN for the missing value in datasets is legal.
 We strongly discourage it.</para></footnote>. 
 One way to work-around this problem is to change <acronym><acronymword>IEEE</acronymword></acronym> NaNs to
@@ -13115,9 +14041,9 @@ variables in the file.
 The values of <var>att_type</var> and <var>att_val</var> were left blank because
 they are superfluous in <dfn>Delete</dfn> mode. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1195"><code>global</code> attribute</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1196">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1197">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1240"><code>global</code> attribute</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1241">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1242">attributes, global</indexterm></cindex>
 <para>Delete all attributes associated with the <code>tpt</code> variable, and
 delete all global attributes
 </para><example endspaces=" ">
@@ -13129,13 +14055,13 @@ attributes associated with the variable.
 To delete all global attributes, simply replace <code>tpt</code> with
 <code>global</code> in the above.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1198"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1243"><code>units</code></indexterm></cindex>
 <para>Modify all existing <code>units</code> attributes to <code>meter second-1</code>:
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncatted -a units,,m,c,'meter second-1' in.nc
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1199"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1244"><code>units</code></indexterm></cindex>
 <para>Add a <code>units</code> attribute of <code>kilogram kilogram-1</code> to all
 variables whose first three characters are <samp>H2O</samp>:
 </para><example endspaces=" ">
@@ -13148,10 +14074,10 @@ variables whose first three characters are <samp>H2O</samp>:
 <pre xml:space="preserve">ncatted -a quanta,energy,o,s,'010,101,111,121' in.nc
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1200">extended regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1201">regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1202">pattern matching</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1203">wildcards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1245">extended regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1246">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1247">pattern matching</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1248">wildcards</indexterm></cindex>
 <para>As of <acronym><acronymword>NCO</acronymword></acronym> 3.9.6 (January, 2009), <command>ncatted</command> accepts
 <dfn>extended regular expressions</dfn> as arguments for variable names,
 though not for attribute names.
@@ -13162,7 +14088,7 @@ in their names.
 </pre></example>
 <para>See <ref label="Subsetting-Files"><xrefnodename>Subsetting Files</xrefnodename></ref> for more details.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1204">groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1249">groups</indexterm></cindex>
 <para>As of <acronym><acronymword>NCO</acronymword></acronym> 4.3.8 (November, 2013), <command>ncatted</command> 
 accepts full and partial group paths in names of attributes,
 variables, dimensions, and groups.
@@ -13211,7 +14137,7 @@ omitted in batch scripts.
 <a name="ncdivide"></a> <!&textndash; http://nco.sf.net/nco.html#ncdivide &textndash;>
 </html>
 </section>
-<node name="ncbo-netCDF-Binary-Operator" spaces=" "><nodename>ncbo netCDF Binary Operator</nodename><nodenext spaces=" ">nces netCDF Ensemble Statistics</nodenext><nodeprev spaces=" ">ncatted netCDF Attribute Editor</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncbo-netCDF-Binary-Operator" spaces=" "><nodename>ncbo netCDF Binary Operator</nodename><nodenext spaces=" ">nces netCDF Ensemble Statistics</nodenext><nodeprev spaces=" ">ncatted netCDF Attribute Editor</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncbo</command> netCDF Binary Operator</sectiontitle>
 <findex index="fn" spaces=" "><indexterm index="fn" number="22" mergedindex="cp">ncbo</indexterm></findex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="23" mergedindex="cp">ncdiff</indexterm></findex>
@@ -13221,14 +14147,14 @@ omitted in batch scripts.
 <findex index="fn" spaces=" "><indexterm index="fn" number="27" mergedindex="cp">ncmult</indexterm></findex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="28" mergedindex="cp">ncmultiply</indexterm></findex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="29" mergedindex="cp">ncdivide</indexterm></findex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1205">binary operations</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1206">addition</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1207">subtraction</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1208">multiplication</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1209">adding data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1210">subtracting data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1211">multiplying data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1212">dividing data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1250">binary operations</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1251">addition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1252">subtraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1253">multiplication</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1254">adding data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1255">subtracting data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1256">multiplying data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1257">dividing data</indexterm></cindex>
 
 <noindent></noindent>
 <para>SYNTAX
@@ -13255,18 +14181,18 @@ variables).
 One of the four standard arithmetic binary operations currently
 supported must be selected with the <samp>-y <var>op_typ</var></samp> switch (or
 long options <samp>--op_typ</samp> or <samp>--operation</samp>).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1213"><code>add</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1214"><code>subtract</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1215"><code>multiply</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1216"><code>divide</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1217"><code>+</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1218"><code>-</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1219"><code>*</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1220"><code>/</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1221"><code>-y <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1222"><code>--operation <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1223"><code>--op_typ <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1224">alternate invocations</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1258"><code>add</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1259"><code>subtract</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1260"><code>multiply</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1261"><code>divide</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1262"><code>+</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1263"><code>-</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1264"><code>*</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1265"><code>/</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1266"><code>-y <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1267"><code>--operation <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1268"><code>--op_typ <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1269">alternate invocations</indexterm></cindex>
 The valid binary operations for <command>ncbo</command>, their definitions, 
 corresponding values of the <var>op_typ</var> key, and alternate invocations
 are:  
@@ -13297,12 +14223,12 @@ Examples: <samp>ncbo --op_typ=/ 1.nc 2.nc 3.nc</samp>, <samp>ncdivide 1.nc 2.nc
 <para>Care should be taken when using the shortest form of key values,
 i.e., <samp>+</samp>, <samp>-</samp>, <samp>*</samp>, <w>and <samp>/</samp></w>.
 Some of these single characters may have special meanings to the shell
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1225">naked characters</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1270">naked characters</indexterm></cindex>
 <footnote><para><w>A naked</w> (i.e., unprotected or unquoted) <samp>*</samp> is a
 wildcard character.  
 <w>A naked</w> <samp>-</samp> may confuse the command line parser.
 <w>A naked</w> <samp>+</samp> and <samp>/</samp> are relatively harmless.</para></footnote>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1226">Bash shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1271">Bash shell</indexterm></cindex>
 Place these characters inside quotes to keep them from being interpreted 
 (globbed) by the shell
 <footnote><para>The widely used shell Bash correctly interprets all these
@@ -13312,9 +14238,9 @@ the intended arithmetic operation when the following arguments are given
 (without quotes) to <command>ncbo</command>:
 <samp>--op_typ=+</samp>, <samp>--op_typ=-</samp>, <samp>--op_typ=*</samp>,
 and <samp>--op_typ=/</samp></para></footnote>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1227">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1228">shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1229">quotes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1272">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1273">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1274">quotes</indexterm></cindex>
 For example, the following commands are equivalent
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncbo --op_typ=* 1.nc 2.nc 3.nc # Dangerous (shell may try to glob)
@@ -13330,9 +14256,9 @@ ncmultiply 1.nc 2.nc 3.nc # First do 'ln -s ncbo ncmultiply'
 <para>No particular argument or invocation form is preferred.
 Users are encouraged to use the forms which are most intuitive to them.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1230"><command>alias</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1231"><command>ln -s</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1232">symbolic links</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1275"><command>alias</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1276"><command>ln -s</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1277">symbolic links</indexterm></cindex>
 <para>Normally, <command>ncbo</command> will fail unless an operation type is specified
 with <samp>-y</samp> (equivalent to <samp>--op_typ</samp>).
 You may create exceptions to this rule to suit your particular tastes,
@@ -13374,12 +14300,12 @@ This ensures portability of scripts between users and sites.
 <html endspaces=" ">
 <a name="brd_var"></a> <!&textndash; http://nco.sf.net/nco.html#brd_var &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1233">broadcasting variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1234">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1278">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1279">rank</indexterm></cindex>
 <para><command>ncbo</command> operates (e.g., adds) variables in <var>file_2</var> with the
 corresponding variables (those with the same name) in <var>file_1</var> and
 stores the results in <var>file_3</var>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1235">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1280">broadcasting variables</indexterm></cindex>
 Variables in <var>file_1</var> or <var>file_2</var> are <dfn>broadcast</dfn> to conform
 to the corresponding variable in the other input file if
 necessary<footnote spaces="\n"><para>Prior to <acronym><acronymword>NCO</acronymword></acronym> version 4.3.1 (May, 2013), <command>ncbo</command>
@@ -13402,12 +14328,12 @@ by copying data in existing dimensions.
 For example, a two dimensional variable in <var>file_2</var> can be
 subtracted from a four, three, or two (not one or zero)
 dimensional variable (of the same name) in <code>file_1</code>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1236">anomalies</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1281">anomalies</indexterm></cindex>
 This functionality allows the user to compute anomalies from the mean.
 In the future, we will broadcast variables in <var>file_1</var>, if necessary
 to conform to their counterparts in <var>file_2</var>.
 <!-- c TODO #268 -->
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1237">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1282">rank</indexterm></cindex>
 Thus, presently, the number of dimensions, or <dfn>rank</dfn>, of any
 processed variable in <var>file_1</var> must be greater than or equal to the
 rank of the same variable in <var>file_2</var>. 
@@ -13427,8 +14353,8 @@ If <var>file_2</var> was created by averaging <var>file_1</var> over the
 the <command>ncwa</command> operator), then <var>file_2</var> will have a <code>time</code>
 dimension of <w>size 1</w> rather than having no <code>time</code> dimension at
 all 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1238">degenerate dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1239"><samp>-b</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1283">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1284"><samp>-b</samp></indexterm></cindex>
 <footnote><para>This is because <command>ncra</command> collapses the record dimension
 to a size <w>of 1</w> (making it a <dfn>degenerate</dfn> dimension), but does
 not remove it, while, unless <samp>-b</samp> is given, <command>ncwa</command> removes
@@ -13442,14 +14368,14 @@ To prevent this from occuring, use <command>ncwa</command> to remove the
 <code>time</code> dimension from <var>file_2</var>.
 See the example below.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1240">coordinate variable</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1241"><code>NC_CHAR</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1285">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1286"><code>NC_CHAR</code></indexterm></cindex>
 <para><command>ncbo</command> never operates on coordinate variables or variables
 of type <code>NC_CHAR</code> or <code>NC_STRING</code>. 
 This ensures that coordinates like (e.g., latitude and longitude) are 
 physically meaningful in the output file, <var>file_3</var>. 
 This behavior is hardcoded.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1242"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1287"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
 <command>ncbo</command> applies special rules to some 
 <acronym><acronymword>CF</acronymword></acronym>-defined (and/or <acronym><acronymword>NCAR CCSM</acronymword></acronym> or <acronym><acronymword>NCAR CCM</acronymword></acronym> 
 fields) such as <code>ORO</code>.
@@ -13465,7 +14391,7 @@ albeit in a more convoluted way than <command>ncbo</command>.
 <a name="gb"></a> <!&textndash; http://nco.sf.net/nco.html#gb &textndash;>
 <a name="GB"></a> <!&textndash; http://nco.sf.net/nco.html#GB &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1243">broadcasting groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1288">broadcasting groups</indexterm></cindex>
 <para>Beginning with <acronym><acronymword>NCO</acronymword></acronym> version 4.3.1 (May, 2013), <command>ncbo</command> 
 supports <dfn>group broadcasting</dfn>.
 Group broadcasting means processing data based on group patterns in the
@@ -13500,8 +14426,8 @@ ncbo --op_typ='-' 86_0112.nc 85_0112.nc 86m85_0112.nc
 <noindent></noindent>
 <para>These commands are all different ways of expressing the same thing.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1244">broadcasting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1245">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1289">broadcasting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1290">rank</indexterm></cindex>
 <para>The following examples demonstrate the broadcasting feature of
 <command>ncbo</command>.  
 Say we wish to compute the monthly anomalies of <code>T</code> from the yearly
@@ -13548,7 +14474,7 @@ ncdiff 85_0112.nc 85_x.nc tx_anm_85_0112.nc
 <code>time</code> and <code>lon</code>, and that <file>85_x.nc</file> has no <code>time</code>
 or <code>lon</code> dimension.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1246">broadcasting groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1291">broadcasting groups</indexterm></cindex>
 <para>Group broadcasting simplifies evaluation of multiple models against
 observations.
 Consider the input file <file>cmip5.nc</file> which contains multiple
@@ -13601,9 +14527,9 @@ one file, and use <command>ncra</command> to create the average anomaly for all
 five Januarys. 
 These commands are embedded in a shell loop so they are repeated for all
 twelve months:
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1247">Bash Shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1248">Bourne Shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1249">C Shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1292">Bash Shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1293">Bourne Shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1294">C Shell</indexterm></cindex>
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
 for idx in {1..12}; do # Bash Shell (version 3.0+) 
@@ -13644,10 +14570,10 @@ seasonal cycle of the monthly anomalies:
 <a name="ncea"></a> <!&textndash; http://nco.sf.net/nco.html#ncea &textndash;>
 </html>
 </section>
-<node name="nces-netCDF-Ensemble-Statistics" spaces=" "><nodename>nces netCDF Ensemble Statistics</nodename><nodenext spaces=" ">ncecat netCDF Ensemble Concatenator</nodenext><nodeprev spaces=" ">ncbo netCDF Binary Operator</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="nces-netCDF-Ensemble-Statistics" spaces=" "><nodename>nces netCDF Ensemble Statistics</nodename><nodenext spaces=" ">ncecat netCDF Ensemble Concatenator</nodenext><nodeprev spaces=" ">ncbo netCDF Binary Operator</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>nces</command> netCDF Ensemble Statistics</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1250">averaging data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1251">ensemble average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1295">averaging data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1296">ensemble average</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="30" mergedindex="cp">nces</indexterm></findex>
 
 <noindent></noindent>
@@ -13658,7 +14584,7 @@ seasonal cycle of the monthly anomalies:
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,&dots;]] [-h] [--hdf] [--hdr_pad <var>nbr</var>] 
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-n <var>loop</var>] [--no_tmp_fl] [--nsm_fl|grp] [--nsm_sfx sfx]
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] [--rth_dbl|flt]
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] [--rth_dbl|flt]
 [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,&dots;]] [-X ...] [-x] [-y <var>op_typ</var>]
 [<var>input-files</var>] [<var>output-file</var>]
 </pre></example>
@@ -13677,7 +14603,7 @@ released December, 2013.
 <acronym><acronymword>NCO</acronymword></acronym> will attempt to maintain back-compatibility and work
 as expected with invocations of <command>ncea</command> for as long as possible.
 Please replace <command>ncea</command> by <command>nces</command> in all future work.</para></footnote>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1252">ensemble</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1297">ensemble</indexterm></cindex>
 For example, <command>nces</command> will average a set of files or groups,
 weighting each file or group evenly. 
 This is distinct from <command>ncra</command>, which performs statistics only
@@ -13707,17 +14633,17 @@ the hypserslabs may (and usually do) change the size of the dimensions
 from the input to the output files.
 Prior to this, <command>nces</command> was only guaranteed to work on hyperslabs
 in the record dimension that resolved to the same size.</para></footnote>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1253">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1254">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1298">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1299">hyperslab</indexterm></cindex>
 <command>nces</command> does allow files to differ in the record dimension size
 if the requested record hyperslab (<pxref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodename></pxref>) resolves to the
 same size for all files.  
 <command>nces</command> recomputes the record dimension hyperslab limits for
 each input file so that coordinate limits may be used to select equal
 length timeseries from unequal length files.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1255"><acronym><acronymword>IPCC</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1256"><acronym><acronymword>AR4</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1257"><acronym><acronymword>CMIP</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1300"><acronym><acronymword>IPCC</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1301"><acronym><acronymword>AR4</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1302"><acronym><acronymword>CMIP</acronymword></acronym></indexterm></cindex>
 This simplifies analysis of unequal length timeseries from simulation
 ensembles (e.g., the <acronym><acronymword>CMIP3</acronymword></acronym> <acronym><acronymword>IPCC</acronymword></acronym> <acronym><acronymword>AR4</acronymword></acronym>
 archive).   
@@ -13727,12 +14653,12 @@ archive).
 <a name="nsm_grp"></a> <!&textndash; http://nco.sf.net/nco.html#nsm_grp &textndash;>
 <a name="nsm_sfx"></a> <!&textndash; http://nco.sf.net/nco.html#nsm_sfx &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1258"><code>--nsm_fl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1259"><code>--nsm_grp</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1260"><code>--ensemble_file</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1261"><code>--ensemble_group</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1262"><code>--nsm_sfx</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1263"><code>--ensemble_suffix</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1303"><code>--nsm_fl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1304"><code>--nsm_grp</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1305"><code>--ensemble_file</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1306"><code>--ensemble_group</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1307"><code>--nsm_sfx</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1308"><code>--ensemble_suffix</code></indexterm></cindex>
 <para><command>nces</command> works in one of two modes, file ensembles 
 or group ensembles.
 File ensembles are the default (equivalent to the old <command>ncea</command>) 
@@ -13770,9 +14696,9 @@ nces --nsm_grp --nsm_sfx='_avg' mdl1.nc mdl2.nc mdl3.nc out.nc
 
 <para><xref label="Statistics-vs_002e-Concatenation"><xrefnodename>Statistics vs. Concatenation</xrefnodename></xref>, for a description of the
 distinctions between the statistics tools and concatenators. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1264">multi-file operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1265">standard input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1266"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1309">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1310">standard input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1311"><code>stdin</code></indexterm></cindex>
 As a multi-file operator, <command>nces</command> will read the list of
 <var>input-files</var> from <code>stdin</code> if they are not specified 
 as positional arguments on the command line 
@@ -13868,10 +14794,10 @@ member in the first file.
 <a name="ncecat"></a> <!&textndash; http://nco.sf.net/nco.html#ncecat &textndash;>
 </html>
 </section>
-<node name="ncecat-netCDF-Ensemble-Concatenator" spaces=" "><nodename>ncecat netCDF Ensemble Concatenator</nodename><nodenext spaces=" ">ncflint netCDF File Interpolator</nodenext><nodeprev spaces=" ">nces netCDF Ensemble Statistics</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncecat-netCDF-Ensemble-Concatenator" spaces=" "><nodename>ncecat netCDF Ensemble Concatenator</nodename><nodenext spaces=" ">ncflint netCDF File Interpolator</nodenext><nodeprev spaces=" ">nces netCDF Ensemble Statistics</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncecat</command> netCDF Ensemble Concatenator</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1267">concatenation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1268">ensemble concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1312">concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1313">ensemble concatenation</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="31" mergedindex="cp">ncecat</indexterm></findex>
 
 <noindent></noindent>
@@ -13882,7 +14808,7 @@ member in the first file.
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,&dots;]] [--gag] [-h] [--hdf] [--hdr_pad <var>nbr</var>]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-M] [--md5_digest] [--mrd] [-n <var>loop</var>] [--no_tmp_fl] 
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] 
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] 
 [-t <var>thr_nbr</var>] [-u <var>ulm_nm</var>] [--unn] [-v <var>var</var>[,&dots;]] [-X ...] [-x] 
 [<var>input-files</var>] [<var>output-file</var>]
 </pre></example>
@@ -13898,7 +14824,7 @@ single output file using using one of two methods.
 <dfn>Group AGgregation</dfn> (<acronym><acronymword>GAG</acronymword></acronym>) stores <var>input-files</var> as top-level
 groups in the netCDF4 <var>output-file</var>.
 Record Aggregation (<acronym><acronymword>RAG</acronymword></acronym>) makes numerous assumptions about the
-structure of input files and Group Aggregation (<acronym><acronymword>GAG</acronymword></acronym>) makes
+structure of input files whereas Group Aggregation (<acronym><acronymword>GAG</acronymword></acronym>) makes
 none. 
 Both methods are described in detail below.
 Since <command>ncecat</command> aggregates all the contents of the input files,
@@ -13908,8 +14834,8 @@ subsetting simultaneously (<pxref label="Subsetting-Files"><xrefnodename>Subsett
 <html endspaces=" ">
 <a name="rag"></a> <!&textndash; http://nco.sf.net/nco.html#rag &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1269">record aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1270"><acronym><acronymword>RAG</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1314">record aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1315"><acronym><acronymword>RAG</acronymword></acronym></indexterm></cindex>
 <para><acronym><acronymword>RAG</acronymword></acronym> makes each variable (except coordinate variables) in each
 input file into a single record of the same variable in the output file.  
 Coordinate variables are not concatenated, they are instead simply
@@ -13922,27 +14848,27 @@ data.
 The new record dimension is defined in the root group of the output file
 so it is visible to all sub-groups.
 Its name is, by default, &textldquo;record&textrdquo;.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1271">unlimited dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1272">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1273"><samp>-u <var>ulm_nm</var></samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1274"><samp>--ulm_nm <var>ulm_nm</var></samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1275"><samp>--rcd_nm <var>ulm_nm</var></samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1316">unlimited dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1317">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1318"><samp>-u <var>ulm_nm</var></samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1319"><samp>--ulm_nm <var>ulm_nm</var></samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1320"><samp>--rcd_nm <var>ulm_nm</var></samp></indexterm></cindex>
 This default name can be overridden with the <samp>-u <var>ulm_nm</var></samp>
 short option (or the <samp>--ulm_nm</samp> or <samp>rcd_nm</samp> long options).
 </para>
 <para>Each extracted variable must be constant in size and rank across all
 <var>input-files</var>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1276">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1277">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1321">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1322">hyperslab</indexterm></cindex>
 The only exception is that <command>ncecat</command> allows files to differ in
 the record dimension size if the requested record hyperslab
 (<pxref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodename></pxref>) resolves to the same size for all files. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1278"><acronym><acronymword>CMIP</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1323"><acronym><acronymword>CMIP</acronymword></acronym></indexterm></cindex>
 This allows easier gluing/averaging of unequal length timeseries from 
 simulation ensembles (e.g., the <acronym><acronymword>CMIP</acronymword></acronym> rchive). 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1279">fixed dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1280">fix record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1324">fixed dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1325">fix record dimension</indexterm></cindex>
 <para>Classic (i.e., all netCDF3 and <code>NETCDF4_CLASSIC</code>) output files
 can contain only one record dimension.
 <command>ncecat</command> makes room for the new glue record dimension by
@@ -13955,8 +14881,8 @@ if any, of the input files as it copies them to the output file.
 <html endspaces=" ">
 <a name="gag"></a> <!&textndash; http://nco.sf.net/nco.html#gag &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1281">group aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1282"><acronym><acronymword>GAG</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1326">group aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1327"><acronym><acronymword>GAG</acronymword></acronym></indexterm></cindex>
 <para><dfn>Group AGgregation</dfn> (<acronym><acronymword>GAG</acronymword></acronym>) stores <var>input-files</var> as
 top-level groups in the <var>output-file</var>.
 No assumption is made about the size or shape or type of a given 
@@ -13965,7 +14891,7 @@ The entire contents of the extracted portion of each input file
 is placed in its own top-level group in <var>output-file</var>, which
 is automatically made as a netCDF4-format file.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1283"><option>--gag</option></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1328"><option>--gag</option></indexterm></cindex>
 <para><acronym><acronymword>GAG</acronymword></acronym> has two methods to specify group names for the
 <var>output-file</var>.    
 The <samp>-G</samp> option, or its long-option equivalent <samp>--gpe</samp>,
@@ -13994,17 +14920,17 @@ ncecat -G 85/ a.nc b.nc c.nc 8589.nc # Output groups 85/00, 85/01, 85/02
 the sum of the sizes of the extracted variables in the input files. 
 <xref label="Statistics-vs_002e-Concatenation"><xrefnodename>Statistics vs. Concatenation</xrefnodename></xref>, for a description of the
 distinctions between the various statistics tools and concatenators. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1284">multi-file operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1285">standard input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1286"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1329">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1330">standard input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1331"><code>stdin</code></indexterm></cindex>
 As a multi-file operator, <command>ncecat</command> will read the list of
 <var>input-files</var> from <code>stdin</code> if they are not specified 
 as positional arguments on the command line 
 (<pxref label="Large-Numbers-of-Files"><xrefnodename>Large Numbers of Files</xrefnodename></pxref>).
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1287"><code>-M</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1288"><code>--glb_mtd_spp</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1289">metadata, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1332"><code>-M</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1333"><code>--glb_mtd_spp</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1334">metadata, global</indexterm></cindex>
 <para>Suppress global metadata copying.
 By default <acronym><acronymword>NCO</acronymword></acronym>&textrsquo;s multi-file operators copy the global metadata
 from the first input file into <var>output-file</var>.  
@@ -14018,7 +14944,7 @@ metadata.
 metadata via the <samp>-M</samp> switch (or its long option equivalents,
 <samp>--glb_mtd_spp</samp> and <samp>--global_metadata_suppress</samp>). 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1290">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1335">climate model</indexterm></cindex>
 <para>Consider five realizations, <file>85a.nc</file>, <file>85b.nc</file>, 
 <w>&dots; <file>85e.nc</file></w> of 1985 predictions from the same climate
 model. 
@@ -14033,10 +14959,10 @@ Normally this means all the input files are the same size, and contain
 data on different realizations of the same variables.
 </para>
 <findex index="fn" spaces=" "><indexterm index="fn" number="32" mergedindex="cp">ncpdq</indexterm></findex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1291">packing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1292">unpacking</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1293"><code>add_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1294"><code>scale_factor</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1336">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1337">unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1338"><code>add_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1339"><code>scale_factor</code></indexterm></cindex>
 <para>Concatenating a variable packed with different scales across multiple
 datasets is beyond the capabilities of <command>ncecat</command> (and
 <command>ncrcat</command>, the other concatenator (<ref label="Concatenation"><xrefnodename>Concatenation</xrefnodename></ref>).
@@ -14097,10 +15023,10 @@ such descriptive coordinates are used.
 <html endspaces=" ">
 <a name="dmn_rcd_rm"></a> <!&textndash; http://nco.sf.net/nco.html#dmn_rcd_rm &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1295">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1296">fixed dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1297">fix record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1298"><code>--mk_rec_dmn <var>dim</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1340">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1341">fixed dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1342">fix record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1343"><code>--mk_rec_dmn <var>dim</var></code></indexterm></cindex>
 <para>Consider a file with an existing record dimension named <code>time</code>. 
 and suppose the user wishes to convert <code>time</code> from a record
 dimension to a non-record dimension.
@@ -14109,7 +15035,7 @@ record variable.
 The simplest method is to use <samp>ncks --fix_rec_dmn</samp> but another
 possibility is to use <command>ncecat</command> followed by 
 <command>ncwa</command>: 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1299">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1344">degenerate dimension</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncecat in.nc out.nc # Convert time to non-record dimension
 ncwa -a record in.nc out.nc # Remove new degenerate record dimension
@@ -14125,12 +15051,12 @@ of changing variable dimensionality, including the record dimension.
 <a name="ncflint"></a> <!&textndash; http://nco.sf.net/nco.html#ncflint &textndash;>
 </html>
 </section>
-<node name="ncflint-netCDF-File-Interpolator" spaces=" "><nodename>ncflint netCDF File Interpolator</nodename><nodenext spaces=" ">ncks netCDF Kitchen Sink</nodenext><nodeprev spaces=" ">ncecat netCDF Ensemble Concatenator</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncflint-netCDF-File-Interpolator" spaces=" "><nodename>ncflint netCDF File Interpolator</nodename><nodenext spaces=" ">ncks netCDF Kitchen Sink</nodenext><nodeprev spaces=" ">ncecat netCDF Ensemble Concatenator</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncflint</command> netCDF File Interpolator</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1300">interpolation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1301">adding data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1302">multiplying data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1303">addition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1345">interpolation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1346">adding data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1347">multiplying data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1348">addition</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="33" mergedindex="cp">ncflint</indexterm></findex>
 
 <noindent></noindent>
@@ -14141,7 +15067,7 @@ of changing variable dimensionality, including the record dimension.
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]
 [-F] [--fix_rec_crd] [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,&dots;]] [-h] [--hdr_pad <var>nbr</var>]
 [-i <var>var</var>,<var>val3</var>] [-L <var>dfl_lvl</var>] [-l <var>path</var>] [--no_tmp_fl] 
-[-O] [-o <var>file_3</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] 
+[-O] [-o <var>file_3</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] 
 [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,&dots;]] [-w <var>wgt1</var>[,<var>wgt2</var>]] [-X ...] [-x]
 <var>file_1</var> <var>file_2</var> [<var>file_3</var>]
 </pre></example>
@@ -14173,9 +15099,9 @@ $val3 = wgt1 \times val1 + wgt2 \times val2$
 Here at least <var>wgt1</var>, and, optionally, <var>wgt2</var>, are specified on 
 the command line with the <samp>-w</samp> (or <samp>--weight</samp> or
 <samp>--wgt_var</samp>) switch.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1304"><code>-w <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1305"><code>--weight <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1306"><code>--wgt_var <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1349"><code>-w <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1350"><code>--weight <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1351"><code>--wgt_var <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
 If only <var>wgt1</var> is specified then <var>wgt2</var> is automatically
 computed as <math><var>wgt2</var> = 1 − <var>wgt1</var></math>.
 Note that weights larger <w>than 1</w> are allowed. 
@@ -14194,7 +15120,7 @@ weights and adding together the results to produce the output values.
 It makes sense to use this when the weights are known 
 <emph><w>a priori</w></emph>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1307">arrival value</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1352">arrival value</indexterm></cindex>
 <para>Another class of problems has the <dfn>arrival value</dfn> (i.e., <var>val3</var>)
 of a particular variable <var>var</var> known <emph><w>a priori</w></emph>. 
 In this case, the implied weights can always be inferred by examining
@@ -14217,7 +15143,7 @@ and <var>val3</var> with the <samp>-i</samp> option.
 weights on all variables to generate the output file.
 Although <var>var</var> may have any number of dimensions in the input
 files, it must represent a single, scalar value.  
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1308">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1353">degenerate dimension</indexterm></cindex>
 Thus any dimensions associated with <var>var</var> must be <dfn>degenerate</dfn>,
 i.e., of size one.
 </para>
@@ -14244,8 +15170,8 @@ in <acronym><acronymword>NCO</acronymword></acronym> version 4.2.6 (March, 2013)
 It prevents <command>ncflint</command> from multiplying or interpolating any
 coordinate variables, including record coordinate variables. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1309">missing values</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1310"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1354">missing values</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1355"><code>_FillValue</code></indexterm></cindex>
 <para>Depending on your intuition, <command>ncflint</command> may treat missing values
 unexpectedly.
 Consider a point where the value in one input file, say <var>val1</var>,
@@ -14321,13 +15247,13 @@ together to make <file>tst.nc</file>:
 <pre xml:space="preserve">ncflint -w 3,-2 85.nc 85.nc tst.nc
 </pre></example>
 <noindent></noindent>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1311">null operation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1356">null operation</indexterm></cindex>
 <para>This is an example of a null operation, so <file>tst.nc</file> should be
 identical (within machine precision) to <file>85.nc</file>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1312">multiplication</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1313">file multiplication</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1314">scaling</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1357">multiplication</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1358">file multiplication</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1359">scaling</indexterm></cindex>
 <para>Multiply all the variables except the coordinate variables in the file
 <file>emissions.nc</file> by <w>by 0.8</w>:
 </para><example endspaces=" ">
@@ -14347,14 +15273,14 @@ ncdiff 85.nc 86.nc 85m86.nc
 <noindent></noindent>
 <para>Thus <command>ncflint</command> can be used to mimic some <command>ncbo</command>
 operations. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1315">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1360">broadcasting variables</indexterm></cindex>
 However this is not a good idea in practice because <command>ncflint</command>
 does not broadcast (<pxref label="ncbo-netCDF-Binary-Operator"><xrefnodename>ncbo netCDF Binary Operator</xrefnodename></pxref>) conforming
 variables during arithmetic. 
 Thus the final two commands would produce identical results except that    
 <command>ncflint</command> would fail if any variables needed to be broadcast.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1316"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1361"><code>units</code></indexterm></cindex>
 <para>Rescale the dimensional units of the surface pressure <code>prs_sfc</code>
 from Pascals to hectopascals (millibars)
 </para><example endspaces=" ">
@@ -14368,11 +15294,11 @@ ncatted -a units,prs_sfc,o,c,millibar out.nc
 <a name="ncks"></a> <!&textndash; http://nco.sf.net/nco.html#ncks &textndash;>
 </html>
 </section>
-<node name="ncks-netCDF-Kitchen-Sink" spaces=" "><nodename>ncks netCDF Kitchen Sink</nodename><nodenext spaces=" ">ncpdq netCDF Permute Dimensions Quickly</nodenext><nodeprev spaces=" ">ncflint netCDF File Interpolator</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncks-netCDF-Kitchen-Sink" spaces=" "><nodename>ncks netCDF Kitchen Sink</nodename><nodenext spaces=" ">ncpdq netCDF Permute Dimensions Quickly</nodenext><nodeprev spaces=" ">ncflint netCDF File Interpolator</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncks</command> netCDF Kitchen Sink</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1317">kitchen sink</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1318">printing files contents</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1319">printing variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1362">kitchen sink</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1363">printing files contents</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1364">printing variables</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="34" mergedindex="cp">ncks</indexterm></findex>
 
 <noindent></noindent>
@@ -14383,7 +15309,7 @@ ncatted -a units,prs_sfc,o,c,millibar out.nc
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]] [-F] [--fix_rec_dmn <var>dim</var>] 
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,&dots;]] [--grp_xtr_var_xcl] [-H] [-h] [--hdn] [--hdr_pad <var>nbr</var>]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-M] [-m] [--mk_rec_dmn <var>dim</var>] [--md5_digest]
-[--no_blank] [--no_tmp_fl] [-O] [-o <var>output-file</var>] [-P] [-p <var>path</var>] 
+[--no_blank] [--no_tmp_fl] [-O] [-o <var>output-file</var>] [-P] [-p <var>path</var>] [--ppc ...]
 [-Q] [-q] [-R] [-r] [--rad] [--ram_all] [-s <var>format</var>] 
 [-u] [--unn] [-V] [-v <var>var</var>[,&dots;]] [-X ...] [-x] [--xml]
 <var>input-file</var> [[<var>output-file</var>]]
@@ -14392,7 +15318,7 @@ ncatted -a units,prs_sfc,o,c,millibar out.nc
 <noindent></noindent>
 <para>DESCRIPTION
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1320"><command>ncextr</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1365"><command>ncextr</command></indexterm></cindex>
 <para>The nickname &textldquo;kitchen sink&textrdquo; is a catch-all because <command>ncks</command>
 combines most features of <command>ncdump</command> and <command>nccopy</command> with
 extra features to extract, hyperslab, multi-slab, sub-set, and translate  
@@ -14421,8 +15347,8 @@ including <acronym><acronymword>CDL</acronymword></acronym> and <acronym><acrony
 <samp>-s</samp>, <samp>-u</samp>, <samp>-V</samp>, and <samp>--xml</samp> (and their long option
 counterparts) control the formatted appearance of the data.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1321">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1322">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1366">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1367">attributes, global</indexterm></cindex>
 <para><command>ncks</command> extracts (and optionally creates a new netCDF file
 comprised of) only selected variables from the input file
 (similar to the old <command>ncextr</command> specification).
@@ -14439,8 +15365,8 @@ Input dimensions that are not associated with any output variable do
 not appear in the output netCDF.
 This feature removes superfluous dimensions from netCDF files. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1323">appending data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1324">merging files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1368">appending data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1369">merging files</indexterm></cindex>
 <para><command>ncks</command> will append variables and attributes from the
 <var>input-file</var> to <var>output-file</var> if <var>output-file</var> is a
 pre-existing netCDF file whose relevant dimensions conform to dimension
@@ -14467,8 +15393,8 @@ with the members of <var>output-file</var> then it will be added to
 <var>output-file</var>.  
 In this case the relevant dimensions must agree (conform) between the
 two files; new dimensions are created in <var>output-file</var> as required. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1325">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1326">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1370">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1371">attributes, global</indexterm></cindex>
 When a name conflict occurs, a global attribute from <var>input-file</var>
 will overwrite the corresponding global attribute from
 <var>output-file</var>.  
@@ -14509,7 +15435,7 @@ existing files and variables, respectively.
 
 <para>The following summarizes features unique to <command>ncks</command>.  
 Features common to many operators are described in 
-<ref label="Common-features"><xrefnodename>Common features</xrefnodename></ref>. 
+<ref label="Shared-features"><xrefnodename>Shared features</xrefnodename></ref>. 
 </para>
 <table commandarg="samp" spaces=" " endspaces=" ">
 <beforefirstitem>
@@ -14517,7 +15443,7 @@ Features common to many operators are described in
 <a name="-5"></a> <!&textndash; http://nco.sf.net/nco.html#-5 &textndash;>
 <a name="5"></a> <!&textndash; http://nco.sf.net/nco.html#5 &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1327"><code>-5</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1372"><code>-5</code></indexterm></cindex>
 </beforefirstitem><tableentry><tableterm><item spaces=" "><itemformat command="samp">-5 </itemformat></item>
 </tableterm><tableitem><para>Print data to screen alphabetically by group, and alphabetically by
 variable within each group.
@@ -14530,11 +15456,11 @@ the future).
 <a name="abc"></a> <!&textndash; http://nco.sf.net/nco.html#abc &textndash;>
 <a name="alphabetize"></a> <!&textndash; http://nco.sf.net/nco.html#alphabetize &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1328">alphabetization</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1329">sort alphabetically</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1330"><code>-a</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1331"><code>--abc</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1332"><code>--alphabetize</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1373">alphabetization</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1374">sort alphabetically</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1375"><code>-a</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1376"><code>--abc</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1377"><code>--alphabetize</code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-a</itemformat></item>
 </tableterm><tableitem><para>Do not alphabetize extracted fields. 
 By default, the specified output variables are extracted, printed, and
@@ -14551,11 +15477,11 @@ Also <samp>--abc</samp> and <samp>--alphabetize</samp>.
 <a name="bnr"></a> <!&textndash; http://nco.sf.net/nco.html#bnr &textndash;>
 <a name="binary"></a> <!&textndash; http://nco.sf.net/nco.html#binary &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1333">binary format</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1334"><code>-b</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1335"><code>--fl_bnr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1336"><code>--bnr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1337"><code>--binary</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1378">binary format</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1379"><code>-b</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1380"><code>--fl_bnr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1381"><code>--bnr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1382"><code>--binary</code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-b <file>file</file></itemformat></item>
 </tableterm><tableitem><para>Activate native machine binary output writing to binary file
 <file>file</file>.
@@ -14579,10 +15505,10 @@ coordinates to the binary file:
 <a name="dmn_fix_mk"></a> <!&textndash; http://nco.sf.net/nco.html#dmn_fix_mk &textndash;>
 <a name="fix_rec_dmn"></a> <!&textndash; http://nco.sf.net/nco.html#fix_rec_dmn &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1338">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1339">fixed dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1340"><code>--fix_rec_dmn <var>dim</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1341"><code>--no_rec_dmn <var>dim</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1383">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1384">fixed dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1385"><code>--fix_rec_dmn <var>dim</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1386"><code>--no_rec_dmn <var>dim</var></code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">--fix_rec_dmn</itemformat></item>
 </tableterm><tableitem><para>Change record dimension <var>dim</var> in the input file into a fixed
 dimension in the output file. 
@@ -14614,19 +15540,19 @@ limited to at most one record dimension) (<pxref label="Group-Path-Editing"><xre
 <a name="hdn"></a> <!&textndash; http://nco.sf.net/nco.html#hdn &textndash;>
 <a name="hidden"></a> <!&textndash; http://nco.sf.net/nco.html#hidden &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1342">hidden attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1343">special attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1344"><code>--hdn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1345"><code>--hidden</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1346"><code>_SOURCE_FORMAT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1347"><code>_Format</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1348"><code>_DeflateLevel</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1349"><code>_Shuffle</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1350"><code>_Storage</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1351"><code>_ChunkSizes</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1352"><code>_Endianness</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1353"><code>_Fletcher32</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1354"><code>_NOFILL</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1387">hidden attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1388">special attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1389"><code>--hdn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1390"><code>--hidden</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1391"><code>_SOURCE_FORMAT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1392"><code>_Format</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1393"><code>_DeflateLevel</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1394"><code>_Shuffle</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1395"><code>_Storage</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1396"><code>_ChunkSizes</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1397"><code>_Endianness</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1398"><code>_Fletcher32</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1399"><code>_NOFILL</code></indexterm></cindex>
 <para>As of <acronym><acronymword>NCO</acronymword></acronym> version 4.4.0 (January, 2014), the <samp>--hdn</samp>
 or <samp>--hidden</samp> options print hidden (aka special) attributes.
 This is equivalent to <samp>ncdump -s</samp>.
@@ -14650,15 +15576,15 @@ detailed descriptions of the meanings of these attributes.
 <a name="hncgen"></a> <!&textndash; http://nco.sf.net/nco.html#hncgen &textndash;>
 <a name="ncgen-hdf"></a> <!&textndash; http://nco.sf.net/nco.html#ncgen-hdf &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1355"><command>hdp</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1356"><command>ncgen</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1357"><command>ncgen-hdf</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1358"><command>hncgen</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1359"><command>ncdump</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1360"><code>--cdl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1361"><acronym><acronymword>CDL</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1362"><acronym><acronymword>HDF</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1363"><acronym><acronymword>HDF4</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1400"><command>hdp</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1401"><command>ncgen</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1402"><command>ncgen-hdf</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1403"><command>hncgen</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1404"><command>ncdump</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1405"><code>--cdl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1406"><acronym><acronymword>CDL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1407"><acronym><acronymword>HDF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1408"><acronym><acronymword>HDF4</acronymword></acronym></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">--cdl </itemformat></item>
 </tableterm><tableitem><para>As of <acronym><acronymword>NCO</acronymword></acronym> version 4.3.3 (July, 2013), <command>ncks</command> can
 print extracted data and metadata to screen (i.e., <code>stdout</code>) as
@@ -14714,10 +15640,10 @@ name installed, is not robust and can fail on valid netCDF3
 <a name="dmn_rec_mk"></a> <!&textndash; http://nco.sf.net/nco.html#dmn_rec_mk &textndash;>
 <a name="mk_rec_dmn"></a> <!&textndash; http://nco.sf.net/nco.html#mk_rec_dmn &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1364">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1365">fixed dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1366">fix record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1367"><code>--mk_rec_dmn <var>dim</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1409">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1410">fixed dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1411">fix record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1412"><code>--mk_rec_dmn <var>dim</var></code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">--mk_rec_dmn <var>dim</var></itemformat></item>
 </tableterm><tableitem><para>Change existing dimension <var>dim</var> to a record dimension in the output file.
 This is the most straightforward way of changing a dimension to a/the
@@ -14730,9 +15656,9 @@ changing variable dimensionality, including the record dimension.
 <a name="H"></a> <!&textndash; http://nco.sf.net/nco.html#H &textndash;>
 <a name="data"></a> <!&textndash; http://nco.sf.net/nco.html#data &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1368"><code>-H</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1369"><code>--data</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1370"><code>--hieronymus</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1413"><code>-H</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1414"><code>--data</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1415"><code>--hieronymus</code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-H </itemformat></item>
 </tableterm><tableitem><para>Turn-on printing to screen or turn-off copying data (not metadata).
 Also activated using <samp>--print</samp> or <samp>--prn</samp>.
@@ -14792,10 +15718,10 @@ lat[0]=90 lev[0]=1000 lon[3]=270 three_dmn_var[3]=23
 <a name="Metadata"></a> <!&textndash; http://nco.sf.net/nco.html#Metadata &textndash;>
 <a name="M"></a> <!&textndash; http://nco.sf.net/nco.html#M &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1371"><code>-M</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1372"><code>--Mtd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1373"><code>--Metadata</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1374">metadata, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1416"><code>-M</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1417"><code>--Mtd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1418"><code>--Metadata</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1419">metadata, global</indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-M</itemformat></item>
 </tableterm><tableitem><para>Turn-on printing to screen or turn-off copying global and group metadata.
 This includes file summary information and global and group attributes.
@@ -14851,20 +15777,20 @@ attributes, respectively.
 <a name="mtd"></a> <!&textndash; http://nco.sf.net/nco.html#mtd &textndash;>
 <a name="metadata"></a> <!&textndash; http://nco.sf.net/nco.html#metadata &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1375"><command>ncdump</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1376"><code>-m</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1377"><code>--mtd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1378"><code>--metadata</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1379">metadata</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1420"><command>ncdump</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1421"><code>-m</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1422"><code>--mtd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1423"><code>--metadata</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1424">metadata</indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-m</itemformat></item>
 </tableterm><tableitem><para>Turn-on printing to screen or turn-off copying variable metadata.
 Using <samp>-m</samp> will print variable metadata to screen (similar to
 <kbd>ncdump -h</kbd>).  
 This displays all metadata pertaining to each variable, one variable
 at a time.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1380">chunking</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1381">compression</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1382">deflation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1425">chunking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1426">compression</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1427">deflation</indexterm></cindex>
 This includes information on the storage properties of the variable,
 such as whether it employs chunking, compression, or packing.
 Also activated using <samp>--mtd</samp> and <samp>--metadata</samp>.
@@ -14880,11 +15806,11 @@ file.
 <a name="noblank"></a> <!&textndash; http://nco.sf.net/nco.html#noblank &textndash;>
 <a name="no-blank"></a> <!&textndash; http://nco.sf.net/nco.html#no-blank &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1383"><code>--no_blank</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1384"><code>--noblank</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1385"><code>--no-blank</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1386">blank</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1387">missing values</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1428"><code>--no_blank</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1429"><code>--noblank</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1430"><code>--no-blank</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1431">blank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1432">missing values</indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">--no_blank</itemformat></item>
 </tableterm><tableitem><para>Print numeric representation of missing values.
 As of <acronym><acronymword>NCO</acronymword></acronym>
@@ -14898,9 +15824,9 @@ Also activated using <samp>--noblank</samp> or <samp>--no-blank</samp>.
 <a name="P"></a> <!&textndash; http://nco.sf.net/nco.html#P &textndash;>
 <a name="prn"></a> <!&textndash; http://nco.sf.net/nco.html#prn &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1388"><code>-P</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1389"><code>--print</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1390"><code>--prn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1433"><code>-P</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1434"><code>--print</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1435"><code>--prn</code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-P </itemformat></item>
 </tableterm><tableitem><para>Print data, metadata, and units to screen.
 The <samp>-P</samp> switch is a convenience abbreviation for 
@@ -14912,8 +15838,8 @@ This set of switches is useful for exploring file contents.
 <a name="Q"></a> <!&textndash; http://nco.sf.net/nco.html#Q &textndash;>
 <a name="quiet"></a> <!&textndash; http://nco.sf.net/nco.html#quiet &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1391"><code>-Q</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1392"><code>--quiet</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1436"><code>-Q</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1437"><code>--quiet</code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-Q</itemformat></item>
 </tableterm><tableitem><para>Print quietly, meaning omit dimension names, indices, and coordinate
 values when printing arrays. 
@@ -14935,9 +15861,9 @@ prints only variable values.
 <a name="q"></a> <!&textndash; http://nco.sf.net/nco.html#q &textndash;>
 <a name="quench"></a> <!&textndash; http://nco.sf.net/nco.html#quench &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1393"><code>-q</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1394"><code>--quench</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1395">quench</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1438"><code>-q</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1439"><code>--quench</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1440">quench</indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-q </itemformat></item>
 </tableterm><tableitem><para>Quench (turn-off) all printing to screen.
 This overrides the setting of all print-related switches, equivalent to
@@ -14953,11 +15879,11 @@ Also <samp>--quench</samp>.
 <a name="orphan"></a> <!&textndash; http://nco.sf.net/nco.html#orphan &textndash;>
 <a name="rph_dmn"></a> <!&textndash; http://nco.sf.net/nco.html#rph_dmn &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1396"><code>--rad</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1397">orphan dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1398"><code>--retain_all_dimensions</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1399"><code>--orphan_dimensions</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1400"><code>--rph_dmn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1441"><code>--rad</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1442">orphan dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1443"><code>--retain_all_dimensions</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1444"><code>--orphan_dimensions</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1445"><code>--rph_dmn</code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">--rad</itemformat></item>
 </tableterm><tableitem><para>Retain all dimensions.
 When invoked with <code>--rad</code> (Retain All Dimensions),
@@ -14976,11 +15902,11 @@ Also <samp>--retain_all_dimensions</samp>, <samp>--orphan_dimensions</samp>, and
 <a name="sng_fmt"></a> <!&textndash; http://nco.sf.net/nco.html#sng_fmt &textndash;>
 <a name="string"></a> <!&textndash; http://nco.sf.net/nco.html#string &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1401"><code>-s</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1402"><code>--string</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1403"><code>--sng_fmt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1404"><code>printf()</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1405">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1446"><code>-s</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1447"><code>--string</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1448"><code>--sng_fmt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1449"><code>printf()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1450">C language</indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-s <var>format</var></itemformat></item>
 </tableterm><tableitem><para>String format for text output. 
 Accepts <w>C language</w> escape sequences and <code>printf()</code> formats. 
@@ -14991,10 +15917,10 @@ Also <samp>--string</samp>  and <samp>--sng_fmt</samp>.
 <a name="scr"></a> <!&textndash; http://nco.sf.net/nco.html#scr &textndash;>
 <a name="secret"></a> <!&textndash; http://nco.sf.net/nco.html#secret &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1406"><code>--ssh</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1407"><code>--scr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1408"><code>--secret</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1409">hidden features</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1451"><code>--ssh</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1452"><code>--scr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1453"><code>--secret</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1454">hidden features</indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">--secret</itemformat></item>
 </tableterm><tableitem><para>Print summary of <command>ncks</command> hidden features.
 These hidden or secret features are used mainly by developers.
@@ -15006,8 +15932,8 @@ Also <samp>--ssh</samp> and <samp>--scr</samp>.
 <a name="units"></a> <!&textndash; http://nco.sf.net/nco.html#units &textndash;>
 <a name="u"></a> <!&textndash; http://nco.sf.net/nco.html#u &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1410"><code>-u</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1411"><code>--units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1455"><code>-u</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1456"><code>--units</code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-u </itemformat></item>
 </tableterm><tableitem><para>Toggle the printing of a variable&textrsquo;s <code>units</code> attribute, if any, 
 with its values.
@@ -15017,10 +15943,10 @@ Also <samp>--units</samp>.
 <a name="V"></a> <!&textndash; http://nco.sf.net/nco.html#V &textndash;>
 <a name="var_val"></a> <!&textndash; http://nco.sf.net/nco.html#var_val &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1412"><code>-V</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1413"><code>--var_val</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1414"><code>--no_dmn_var_nm</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1415"><code>--no_nm_prn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1457"><code>-V</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1458"><code>--var_val</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1459"><code>--no_dmn_var_nm</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1460"><code>--no_nm_prn</code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-V</itemformat></item>
 </tableterm><tableitem><para>Print variable values only.
 Do not print variable and dimension names, indices, and coordinate
@@ -15041,11 +15967,11 @@ Using <samp>-V</samp> is the same as specifying <samp>-Q --no_nm_prn</samp>.
 <a name="xml"></a> <!&textndash; http://nco.sf.net/nco.html#xml &textndash;>
 <a name="ncmnl"></a> <!&textndash; http://nco.sf.net/nco.html#ncml &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1416"><code>--xml</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1417"><code>--ncml</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1418"><command>ncdump</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1419"><acronym><acronymword>XML</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1420"><acronym><acronymword>NcML</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1461"><code>--xml</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1462"><code>--ncml</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1463"><command>ncdump</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1464"><acronym><acronymword>XML</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1465"><acronym><acronymword>NcML</acronymword></acronym></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">--xml, --ncml</itemformat></item>
 </tableterm><tableitem><para>As of <acronym><acronymword>NCO</acronymword></acronym> version 4.3.3 (July, 2013), <command>ncks</command> can
 print extracted metadata to screen (i.e., <code>stdout</code>) as
@@ -15084,10 +16010,10 @@ comparison to output from Unidata&textrsquo;s <command>toolsUI</command> Java pr
 Please let us know how to improve <acronym><acronymword>XML</acronymword></acronym>/<acronym><acronymword>NcML</acronymword></acronym>
 features. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1421"><code>--xml_no_location</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1422"><code>--xml_spr_chr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1423"><code>--xml_spr_nmr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1424">separator</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1466"><code>--xml_no_location</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1467"><code>--xml_spr_chr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1468"><code>--xml_spr_nmr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1469">separator</indexterm></cindex>
 <para><command>ncks</command> provides additional options to configure <acronym><acronymword>NcML</acronymword></acronym>
 output: <samp>--xml_no_location</samp>, <samp>--xml_spr_chr</samp>, and
 <samp>--xml_spr_nmr</samp>. 
@@ -15163,25 +16089,25 @@ include an NcML formatting characters (e.g., commas, angles, quotes).
 </unnumberedsubsec>
 <node name="Filters-for-ncks" spaces=" "><nodename>Filters for <command>ncks</command></nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">ncks netCDF Kitchen Sink</nodeprev><nodeup spaces=" ">ncks netCDF Kitchen Sink</nodeup></node>
 <subsection spaces=" "><sectiontitle>Filters for <command>ncks</command></sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1425"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1426"><command>ncattget</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1427"><command>ncavg</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1428"><command>ncdmnsz</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1429"><command>nclist</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1430"><command>ncmax</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1431"><command>ncmdn</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1432"><command>ncmin</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1433"><command>ncrecsz</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1434"><command>ncrng</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1435"><command>ncunits</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1436"><file>.bashrc</file></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1437">filters</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1438">alias</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1439">shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1440">Bash shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1441">Csh shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1442">Sh shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1443"><command>bash</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1470"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1471"><command>ncattget</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1472"><command>ncavg</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1473"><command>ncdmnsz</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1474"><command>nclist</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1475"><command>ncmax</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1476"><command>ncmdn</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1477"><command>ncmin</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1478"><command>ncrecsz</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1479"><command>ncrng</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1480"><command>ncunits</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1481"><file>.bashrc</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1482">filters</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1483">alias</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1484">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1485">Bash shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1486">Csh shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1487">Sh shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1488"><command>bash</command></indexterm></cindex>
 <para>We encourage the use of standard <acronym><acronymword>UNIX</acronymword></acronym> pipes and filters to
 narrow the verbose output of <command>ncks</command> into more precise targets.
 For example, to obtain an uncluttered listing of the variables in a file
@@ -15308,12 +16234,12 @@ conventions:
 <para>Now the file <file>out.nc</file> contains all the data from <file>in.nc</file>.
 There are, however, two differences between <file>in.nc</file> and
 <file>out.nc</file>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1444"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1489"><code>history</code></indexterm></cindex>
 First, the <code>history</code> global attribute (<pxref label="History-Attribute"><xrefnodename>History Attribute</xrefnodename></pxref>)
 will contain the command used to create <file>out.nc</file>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1445">alphabetize output</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1446">sort alphabetically</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1447"><code>-a</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1490">alphabetize output</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1491">sort alphabetically</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1492"><code>-a</code></indexterm></cindex>
 Second, the variables in <file>out.nc</file> will be defined in alphabetical
 order.
 Of course the internal storage of variable in a netCDF file should be
@@ -15323,16 +16249,16 @@ is useful (see description of <code>-a</code> switch).
 <html endspaces=" ">
 <a name="xmp_att_glb_cpy"></a> <!&textndash; http://nco.sf.net/nco.html#xmp_att_glb_cpy &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1448">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1449">attributes, global</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1450">subsetting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1451">exclusion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1452">extraction</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1453"><code>-v <var>var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1454"><code>--variable <var>var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1455"><code>-x</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1456"><code>--exclude</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1457"><code>--xcl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1493">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1494">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1495">subsetting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1496">exclusion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1497">extraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1498"><code>-v <var>var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1499"><code>--variable <var>var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1500"><code>-x</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1501"><code>--exclude</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1502"><code>--xcl</code></indexterm></cindex>
 <para>Copy all global attributes (and no variables) from <file>in.nc</file> to
 <file>out.nc</file>: 
 </para><example endspaces=" ">
@@ -15343,10 +16269,10 @@ list (<pxref label="Subsetting-Files"><xrefnodename>Subsetting Files</xrefnodena
 Since no extraction list is explicitly specified (with <samp>-v</samp>),
 the default is to extract all variables.
 The complement of all variables is no variables.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1458"><code>-A</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1459"><code>--apn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1460"><code>--append</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1461">appending to files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1503"><code>-A</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1504"><code>--apn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1505"><code>--append</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1506">appending to files</indexterm></cindex>
 Without any variables to extract, the append (<samp>-A</samp>) command
 (<pxref label="Appending-Variables"><xrefnodename>Appending Variables</xrefnodename></pxref>) has only to extract and copy
 (i.e., append) global attributes to the output file.
@@ -15374,12 +16300,12 @@ ncks -A -C -H -v one,three_dmn_rec_var ~/in2.nc ~/out.nc
 <para>Variables in <file>out.nc</file> now contain data (not metadata) from
 <file>in.nc</file> and metadata (not data) from <file>in2.nc</file>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1462"><code>-s</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1463"><code>--string</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1464"><code>--sng_fmt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1465"><code>printf()</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1466"><code>\n</code> (linefeed)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1467"><code>\t</code> (horizontal tab)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1507"><code>-s</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1508"><code>--string</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1509"><code>--sng_fmt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1510"><code>printf()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1511"><code>\n</code> (linefeed)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1512"><code>\t</code> (horizontal tab)</indexterm></cindex>
 <para>Print variable <code>three_dmn_var</code> from file <file>in.nc</file> with
 default notations. 
 Next print <code>three_dmn_var</code> as an un-annotated text column.
@@ -15412,7 +16338,7 @@ files like reports or papers.
 <xref label="ncatted-netCDF-Attribute-Editor"><xrefnodename>ncatted netCDF Attribute Editor</xrefnodename></xref>, for more details on string
 formatting and special characters. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1468"><code>--no_blank</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1513"><code>--no_blank</code></indexterm></cindex>
 <para>As of <acronym><acronymword>NCO</acronymword></acronym> version 4.2.2 (October, 2012), <acronym><acronymword>NCO</acronymword></acronym> prints
 missing values as blanks (i.e., the underscore character <samp>_</samp>) by
 default: 
@@ -15428,12 +16354,12 @@ lon[3]=270 mss_val[3]=_
 <para>To print the numeric value of the missing value instead of a blank,
 use the <samp>--no_blank</samp> option.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1469"><code>-Q</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1470"><code>--quiet</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1471"><code>-V</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1472"><code>--var_val</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1473"><code>--no_dmn_var_nm</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1474"><code>--no_nm_prn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1514"><code>-Q</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1515"><code>--quiet</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1516"><code>-V</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1517"><code>--var_val</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1518"><code>--no_dmn_var_nm</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1519"><code>--no_nm_prn</code></indexterm></cindex>
 <para><command>ncks</command> prints in a verbose fashion by default and supplies a
 number of switches to pare-down (or even spruce-up) the output.
 The interplay of the <samp>-Q</samp>, <samp>-V</samp>, and (otherwise undocumented) 
@@ -15466,22 +16392,27 @@ multidimensional arrays of characters representing fixed length strings
 <pre xml:space="preserve">ncks -s '%c' -v fl_nm_arr in.nc
 </pre></example>
 <noindent></noindent>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1475"><code>core dump</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1520"><code>core dump</code></indexterm></cindex>
 <para>Using the <code>%s</code> format code on strings which are not NUL-terminated 
 (and thus not technically strings) is likely to result in a core dump.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1476">subsetting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1477">exclusion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1478">extraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1521">subsetting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1522">exclusion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1523">extraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1524"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1525"><code>coordinates</code> attribute</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1526"><code>bounds</code> attribute</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1527"><code>ancillary_variables</code> attribute</indexterm></cindex>
 <para>Create netCDF <file>out.nc</file> containing all variables, and any associated 
 coordinates, except variable <code>time</code>, from netCDF <file>in.nc</file>:
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncks -x -v time in.nc out.nc
 </pre></example>
 <para>As a special case of this, consider how to remove a 
-<acronym><acronymword>CF</acronymword></acronym> Convention comliant <code>ancillary_variables</code>,
-<code>bounds</code>, or <code>coordinates</code> variable (<pxref label="CF-Conventions"><xrefnodename>CF Conventions</xrefnodename></pxref>)
-such as <code>time_bounds</code>. 
+variable such as <code>time_bounds</code> that is identified in a
+<acronym><acronymword>CF</acronymword></acronym> Convention (<pxref label="CF-Conventions"><xrefnodename>CF Conventions</xrefnodename></pxref>) compliant
+<code>ancillary_variables</code>, <code>bounds</code>, or <code>coordinates</code>
+attribute. 
 <acronym><acronymword>NCO</acronymword></acronym> subsetting assumes the user wants all ancillary variables,
 axes, bounds and coordinates associated with all extracted variables 
 (<pxref label="Subsetting-Coordinate-Variables"><xrefnodename>Subsetting Coordinate Variables</xrefnodename></pxref>).
@@ -15531,7 +16462,7 @@ decimal point <xref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodename></
 -d lev,1000.0 in.nc out.nc 
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1479">wrapped coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1528">wrapped coordinates</indexterm></cindex>
 <para>Assume the domain of the monotonically increasing longitude coordinate
 <code>lon</code> is <math>0 < <var>lon</var> < 360</math>. 
 Here, <code>lon</code> is an example of a wrapped coordinate.
@@ -15551,18 +16482,18 @@ the easternmost longitude as <var>max</var>, as follows:
 </html>
 </subsection>
 </section>
-<node name="ncpdq-netCDF-Permute-Dimensions-Quickly" spaces=" "><nodename>ncpdq netCDF Permute Dimensions Quickly</nodename><nodenext spaces=" ">ncra netCDF Record Averager</nodenext><nodeprev spaces=" ">ncks netCDF Kitchen Sink</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncpdq-netCDF-Permute-Dimensions-Quickly" spaces=" "><nodename>ncpdq netCDF Permute Dimensions Quickly</nodename><nodenext spaces=" ">ncra netCDF Record Averager</nodenext><nodeprev spaces=" ">ncks netCDF Kitchen Sink</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncpdq</command> netCDF Permute Dimensions Quickly</sectiontitle>
 <findex index="fn" spaces=" "><indexterm index="fn" number="35" mergedindex="cp">ncpdq</indexterm></findex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="36" mergedindex="cp">ncpack</indexterm></findex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="37" mergedindex="cp">ncunpack</indexterm></findex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1480">reshape variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1481">permute dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1482">reverse dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1483">re-order dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1484">re-dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1485">packing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1486">unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1529">reshape variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1530">permute dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1531">reverse dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1532">re-order dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1533">re-dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1534">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1535">unpacking</indexterm></cindex>
 
 <noindent></noindent>
 <para>SYNTAX
@@ -15572,7 +16503,7 @@ the easternmost longitude as <var>max</var>, as follows:
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]]
 [-F] [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,&dots;]] [-h] [--hdf] [--hdr_pad <var>nbr</var>]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-M <var>pck_map</var>] [--mrd] [--no_tmp_fl] 
-[-O] [-o <var>output-file</var>] [-P <var>pck_plc</var>] [-p <var>path</var>] 
+[-O] [-o <var>output-file</var>] [-P <var>pck_plc</var>] [-p <var>path</var>] [--ppc ...]
 [-R] [-r] [--ram_all] [-t <var>thr_nbr</var>] [-U] [--unn] [-v <var>var</var>[,&dots;]] [-X ...] [-x]
 <var>input-file</var> [<var>output-file</var>]
 </pre></example>
@@ -15587,10 +16518,10 @@ fashion with a minimum of time and memory.
 The <dfn>pdq</dfn> may stand for &textldquo;Permute Dimensions Quickly&textrdquo;, 
 &textldquo;Pack Data Quietly&textrdquo;, &textldquo;Pillory Dan Quayle&textrdquo;, or other silly uses.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1487"><code>add_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1488"><code>scale_factor</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1489"><command>ncap2</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1490">packing policy</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1536"><code>add_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1537"><code>scale_factor</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1538"><command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1539">packing policy</indexterm></cindex>
 <unnumberedsubsec spaces=" "><sectiontitle>Packing and Unpacking Functions</sectiontitle>
 <para>The <command>ncpdq</command> packing (and unpacking) algorithms are described 
 in <ref label="Methods-and-functions"><xrefnodename>Methods and functions</xrefnodename></ref>, and are also implemented in
@@ -15598,10 +16529,10 @@ in <ref label="Methods-and-functions"><xrefnodename>Methods and functions</xrefn
 <command>ncpdq</command> extends the functionality of these algorithms by 
 providing high level control of the <dfn>packing policy</dfn> so that
 users can consistently pack (and unpack) entire files with one command. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1491"><var>pck_plc</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1492"><code>-P <var>pck_plc</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1493"><code>--pck_plc <var>pck_plc</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1494"><code>--pack_policy <var>pck_plc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1540"><var>pck_plc</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1541"><code>-P <var>pck_plc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1542"><code>--pck_plc <var>pck_plc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1543"><code>--pack_policy <var>pck_plc</var></code></indexterm></cindex>
 The user specifies the desired packing policy with the <samp>-P</samp> switch
 (or its long option equivalents, <samp>--pck_plc</samp> and
 <samp>--pack_policy</samp>) and its <var>pck_plc</var> argument.
@@ -15666,9 +16597,9 @@ unlike <command>ncpdq</command>.
 Similarly, <command>ncunpack</command> is a synonym for <command>ncpdq</command> 
 except that <command>ncpack</command> implicitly assumes a request to unpack, 
 i.e., <samp>-P pck_upk</samp>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1495"><code>-U</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1496"><code>--upk</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1497"><code>--unpack</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1544"><code>-U</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1545"><code>--upk</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1546"><code>--unpack</code></indexterm></cindex>
 Finally, the <command>ncpdq</command> <samp>-U</samp> switch (or its long option
 equivalents, <samp>--upk</samp> and <samp>--unpack</samp>) requires no argument.
 It simply requests unpacking.
@@ -15683,20 +16614,20 @@ The following commands are equivalent for unpacking:
 and <code>ncunpack</code>.
 Equivalent commands for other packing policies, e.g., <samp>all_xst</samp>, 
 follow by analogy. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1498"><command>alias</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1499"><command>ln -s</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1500">symbolic links</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1547"><command>alias</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1548"><command>ln -s</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1549">symbolic links</indexterm></cindex>
 Note that <command>ncpdq</command> synonyms are subject to the same constraints 
 and recommendations discussed in the secion on <command>ncbo</command> synonyms
 (<pxref label="ncbo-netCDF-Binary-Operator"><xrefnodename>ncbo netCDF Binary Operator</xrefnodename></pxref>).
 That is, symbolic links must exist from the synonym to <command>ncpdq</command>,
 or else the user must define an <command>alias</command>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1501">packing map</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1502"><var>pck_map</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1503"><code>-M <var>pck_map</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1504"><code>--pck_map <var>pck_map</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1505"><code>--map <var>pck_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1550">packing map</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1551"><var>pck_map</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1552"><code>-M <var>pck_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1553"><code>--pck_map <var>pck_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1554"><code>--map <var>pck_map</var></code></indexterm></cindex>
 <para>The <command>ncpdq</command> packing algorithms must know to which type
 particular types of input variables are to be packed.
 The correspondence between the input variable type and the output,
@@ -15705,22 +16636,22 @@ The user specifies the desired packing map with the <samp>-M</samp> switch
 (or its long option equivalents, <samp>--pck_map</samp> and
 <samp>--map</samp>) and its <var>pck_map</var> argument.
 Five packing maps are currently implemented:&linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1506"><samp>hgh_sht</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1507"><samp>hgh_byt</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1508"><samp>flt_sht</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1509"><samp>flt_byt</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1510"><samp>nxt_lsr</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1511"><code>NC_DOUBLE</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1512"><code>NC_FLOAT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1513"><code>NC_INT64</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1514"><code>NC_UINT64</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1515"><code>NC_INT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1516"><code>NC_UINT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1517"><code>NC_SHORT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1518"><code>NC_USHORT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1519"><code>NC_CHAR</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1520"><code>NC_BYTE</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1521"><code>NC_UBYTE</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1555"><samp>hgh_sht</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1556"><samp>hgh_byt</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1557"><samp>flt_sht</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1558"><samp>flt_byt</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1559"><samp>nxt_lsr</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1560"><code>NC_DOUBLE</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1561"><code>NC_FLOAT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1562"><code>NC_INT64</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1563"><code>NC_UINT64</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1564"><code>NC_INT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1565"><code>NC_UINT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1566"><code>NC_SHORT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1567"><code>NC_USHORT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1568"><code>NC_CHAR</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1569"><code>NC_BYTE</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1570"><code>NC_UBYTE</code></indexterm></cindex>
 </para><table commandarg="dfn" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="dfn">Pack Floating Precisions to <code>NC_SHORT</code> [<emph>default</emph>]</itemformat></item>
 </tableterm><tableitem><para>Definition: Pack floating precision types to <code>NC_SHORT</code>&linebreak;
@@ -15759,9 +16690,9 @@ file size by <w>about 50%.</w>
 <samp>flt_byt</samp> packing reduces an <code>NC_DOUBLE</code>-dominated file by
 <w>about 87%.</w> 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1522"><var>_FillValue</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1523"><code>_FillValue</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1524"><code>NUL</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1571"><var>_FillValue</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1572"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1573"><code>NUL</code></indexterm></cindex>
 <para>The netCDF packing algorithm (<pxref label="Methods-and-functions"><xrefnodename>Methods and functions</xrefnodename></pxref>) is
 lossy&textmdash;once packed, the exact original data cannot be recovered without
 a full backup. 
@@ -15799,16 +16730,16 @@ dimension list, e.g., <samp>-a -lat</samp>.
 Re-ordering and reversal may be performed simultaneously, e.g.,
 <samp>-a lon,-lat,time,-lev</samp>. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1525">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1574">record dimension</indexterm></cindex>
 <para>Users may specify any permutation of dimensions, including
 permutations which change the record dimension identity.
 The record dimension is re-ordered like any other dimension.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1526">concatenation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1527">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1575">concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1576">record dimension</indexterm></cindex>
 This unique <command>ncpdq</command> capability makes it possible to concatenate
 files along any dimension.
 See <ref label="Concatenation"><xrefnodename>Concatenation</xrefnodename></ref> for a detailed example.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1528">record variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1577">record variable</indexterm></cindex>
 The record dimension is always the most slowly varying dimension in a
 record variable (<pxref label="C-and-Fortran-Index-Conventions"><xrefnodename>C and Fortran Index Conventions</xrefnodename></pxref>).
 The specified re-ordering fails if it requires creating more than
@@ -15823,7 +16754,7 @@ variable.
 To do this, include all the variable&textrsquo;s dimensions in the dimension
 re-order list in their original order, and prefix each dimension name
 with the negative sign.  
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1529">transpose</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1578">transpose</indexterm></cindex>
 Second, it may useful to transpose a variable&textrsquo;s storage order, e.g.,
 <w>from C</w> to Fortran data storage order 
 (<pxref label="C-and-Fortran-Index-Conventions"><xrefnodename>C and Fortran Index Conventions</xrefnodename></pxref>).
@@ -15944,9 +16875,9 @@ and the packing policy <var>pck_plc</var> as <samp>all_xst</samp>:
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncpdq -P all_xst -M hgh_byt in.nc out.nc
 </pre></example>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1530">appending variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1531"><samp>-A</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1532"><samp>-v</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1579">appending variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1580"><samp>-A</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1581"><samp>-v</samp></indexterm></cindex>
 <para>Many different packing maps may be used to construct a given file 
 by performing the packing on subsets of variables (e.g., with <samp>-v</samp>) 
 and using the append feature with <samp>-A</samp> (<pxref label="Appending-Variables"><xrefnodename>Appending Variables</xrefnodename></pxref>).
@@ -15954,8 +16885,8 @@ and using the append feature with <samp>-A</samp> (<pxref label="Appending-Varia
 <para>Users may wish to unpack data packed with the <acronym><acronymword>HDF</acronymword></acronym> convention,
 and then re-pack it with the netCDF convention so that all their
 datasets use the same packing convention prior to intercomparison.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1533"><command>ncl_convert2nc</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1534"><acronym><acronymword>NCL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1582"><command>ncl_convert2nc</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1583"><acronym><acronymword>NCL</acronymword></acronym></indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve"># One-step procedure: For NCO 4.4.0+, netCDF 4.3.1+
 # 1. Convert, unpack, and repack HDF file into netCDF file
@@ -16013,7 +16944,7 @@ ncpdq -v three_dmn_var -a lon,lat in.nc out.nc
 The second command extracts and re-orders only the variable
 <code>three_dmn_var</code>. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1535">reverse dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1584">reverse dimensions</indexterm></cindex>
 <para>Suppose the dimension <code>lat</code> represents latitude and monotonically 
 increases increases from south to north. 
 Reversing the <code>lat</code> dimension means re-ordering the data so that
@@ -16031,8 +16962,8 @@ lat[1]=-90
 <para>This operation reversed the latitude dimension of all variables.
 Whitespace immediately preceding the negative sign that specifies
 dimension reversal may be dangerous.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1536">long options</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1537">quotes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1585">long options</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1586">quotes</indexterm></cindex>
 Quotes and long options can help protect negative signs that should
 indicate dimension reversal from being interpreted by the shell as
 dashes that indicate new command line switches.
@@ -16043,7 +16974,7 @@ ncpdq -a lon,-lat in.nc out.nc # OK. No whitespace before "-"
 ncpdq --rdr=-lat in.nc out.nc # Preferred. Uses "=" not whitespace
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1538">reverse dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1587">reverse dimensions</indexterm></cindex>
 <para>To create the mathematical transpose of a variable, place all its
 dimensions in the dimension re-order list in reversed order.
 This example creates the transpose of <code>three_dmn_var</code>: 
@@ -16067,7 +16998,7 @@ lon[3]=270 lev[2]=1000 lat[0]=-90 three_dmn_var[22]=11
 lon[3]=270 lev[2]=1000 lat[1]=90 three_dmn_var[23]=23
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1539">reverse data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1588">reverse data</indexterm></cindex>
 <para>To completely reverse the storage order of a variable, include
 all its dimensions in the re-order list, each prefixed by a negative
 sign. 
@@ -16102,7 +17033,7 @@ has no existing record dimension is simple with <command>ncecat</command>:
 <pre xml:space="preserve">ncecat -O -u time in.nc out.nc # Create degenerate record dimension named "time"
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1540">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1589">record dimension</indexterm></cindex>
 <para>Now consider a file with all dimensions, including <code>time</code>, fixed
 (non-record).
 Suppose the user wishes to convert <code>time</code> from a fixed dimension to  
@@ -16121,7 +17052,7 @@ a record dimension required three separate commands,
 The recommended method is now to use <samp>ncks --fix_rec_dmn</samp>, yet it
 is still instructive to present the original procedure, as it shows how
 multiple operators can achieve the same ends by different means: 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1541">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1590">degenerate dimension</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncecat -O in.nc out.nc # Add degenerate record dimension named "record"
 ncpdq -O -a time,record out.nc out.nc # Switch "record" and "time"
@@ -16149,12 +17080,12 @@ changing variable dimensionality, including the record dimension.
 </html>
 </unnumberedsubsec>
 </section>
-<node name="ncra-netCDF-Record-Averager" spaces=" "><nodename>ncra netCDF Record Averager</nodename><nodenext spaces=" ">ncrcat netCDF Record Concatenator</nodenext><nodeprev spaces=" ">ncpdq netCDF Permute Dimensions Quickly</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncra-netCDF-Record-Averager" spaces=" "><nodename>ncra netCDF Record Averager</nodename><nodenext spaces=" ">ncrcat netCDF Record Concatenator</nodenext><nodeprev spaces=" ">ncpdq netCDF Permute Dimensions Quickly</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncra</command> netCDF Record Averager</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1542">averaging data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1543">record average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1544">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1545">running average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1591">averaging data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1592">record average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1593">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1594">running average</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="38" mergedindex="cp">ncra</indexterm></findex>
 
 <noindent></noindent>
@@ -16165,7 +17096,7 @@ changing variable dimensionality, including the record dimension.
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>][,[<var>subcycle</var>]]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,&dots;]] [-h] [--hdf] [--hdr_pad <var>nbr</var>] 
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [--mro] [-n <var>loop</var>] [--no_tmp_fl]
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] [--rec_apn] [--rth_dbl|flt]
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn] [--rth_dbl|flt]
 [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,&dots;]] [-X ...] [-x] [-y <var>op_typ</var>]
 [<var>input-files</var>] [<var>output-file</var>]
 </pre></example>
@@ -16175,15 +17106,15 @@ changing variable dimensionality, including the record dimension.
 </para>
 <para><command>ncra</command> averages record variables across an arbitrary number of 
 <var>input-files</var>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1546">degenerate dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1547">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1595">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1596">record dimension</indexterm></cindex>
 The record dimension is, by default, retained as a degenerate 
 <w>(size 1)</w> dimension in the output variables.
 <xref label="Statistics-vs_002e-Concatenation"><xrefnodename>Statistics vs. Concatenation</xrefnodename></xref>, for a description of the
 distinctions between the various statistics tools and concatenators. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1548">multi-file operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1549">standard input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1550"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1597">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1598">standard input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1599"><code>stdin</code></indexterm></cindex>
 As a multi-file operator, <command>ncra</command> will read the list of
 <var>input-files</var> from <code>stdin</code> if they are not specified 
 as positional arguments on the command line 
@@ -16192,10 +17123,10 @@ as positional arguments on the command line
 <para>Input files may vary in size, but each must have a record dimension.
 The record coordinate, if any, should be monotonic (or else non-fatal
 warnings may be generated). 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1551">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1600">hyperslab</indexterm></cindex>
 Hyperslabs of the record dimension which include more than one file 
 work correctly.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1552">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1601">stride</indexterm></cindex>
 <command>ncra</command> supports the <var>stride</var> argument to the <samp>-d</samp>
 hyperslab option (<pxref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodename></pxref>) for the record dimension only,
 <var>stride</var> is not supported for non-record dimensions.
@@ -16205,7 +17136,7 @@ hyperslab option (<pxref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodena
 <command>ncra</command> does not attempt to see if, say, the <code>time</code>
 coordinate is irregularly spaced and thus would require a weighted
 average in order to be a true time average.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1553">operation types</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1602">operation types</indexterm></cindex>
 <command>ncra</command> <emph>always averages</emph> coordinate variables regardless of 
 the arithmetic operation type performed on the non-coordinate variables. 
 (<pxref label="Operation-Types"><xrefnodename>Operation Types</xrefnodename></pxref>). 
@@ -16218,10 +17149,10 @@ the arithmetic operation type performed on the non-coordinate variables.
 </para>
 <para>Average files <file>85.nc</file>, <file>86.nc</file>, <w>&dots; <file>89.nc</file></w>
 along the record dimension, and store the results in <file>8589.nc</file>: 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1554">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1555"><code>NINTAP</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1556">Processor</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1557"><acronym><acronymword>CCM</acronymword></acronym> Processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1603">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1604"><code>NINTAP</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1605">Processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1606"><acronym><acronymword>CCM</acronymword></acronym> Processor</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncra 85.nc 86.nc 87.nc 88.nc 89.nc 8589.nc
 ncra 8[56789].nc 8589.nc
@@ -16231,7 +17162,7 @@ ncra -n 5,2,1 85.nc 8589.nc
 <xref label="Specifying-Input-Files"><xrefnodename>Specifying Input Files</xrefnodename></xref>, for an explanation of the distinctions
 between these methods.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1558">Fortran</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1607">Fortran</indexterm></cindex>
 <para>Assume the files <file>85.nc</file>, <file>86.nc</file>, <w>&dots; <file>89.nc</file></w>
 each contain a record coordinate <var>time</var> of length 12 defined such
 that the third record in <file>86.nc</file> contains data from March 1986,
@@ -16245,7 +17176,7 @@ ncra -F -d time,12,14 85.nc 86.nc 87.nc 8512_8602.nc
 <noindent></noindent>
 <para>The file <file>87.nc</file> is superfluous, but does not cause an error.
 The <samp>-F</samp> turns on the Fortran (1-based) indexing convention.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1559">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1608">stride</indexterm></cindex>
 The following uses the <var>stride</var> option to average all the March
 temperature data from multiple input files into a single output file
 </para><example endspaces=" ">
@@ -16266,10 +17197,10 @@ averages June, 1985&textndash;June, 1989:
 <a name="ncrcat"></a> <!&textndash; http://nco.sf.net/nco.html#ncrcat &textndash;>
 </html>
 </section>
-<node name="ncrcat-netCDF-Record-Concatenator" spaces=" "><nodename>ncrcat netCDF Record Concatenator</nodename><nodenext spaces=" ">ncrename netCDF Renamer</nodenext><nodeprev spaces=" ">ncra netCDF Record Averager</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncrcat-netCDF-Record-Concatenator" spaces=" "><nodename>ncrcat netCDF Record Concatenator</nodename><nodenext spaces=" ">ncrename netCDF Renamer</nodenext><nodeprev spaces=" ">ncra netCDF Record Averager</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncrcat</command> netCDF Record Concatenator</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1560">concatenation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1561">record concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1609">concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1610">record concatenation</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="39" mergedindex="cp">ncrcat</indexterm></findex>
 
 <noindent></noindent>
@@ -16280,7 +17211,7 @@ averages June, 1985&textndash;June, 1989:
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>][,[<var>subcycle</var>]]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,&dots;]] [-h] [--hdr_pad <var>nbr</var>]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [--md5_digest] [-n <var>loop</var>] [--no_tmp_fl]
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] [--rec_apn]
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn]
 [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,&dots;]] [-X ...] [-x] 
 [<var>input-files</var>] [<var>output-file</var>]
 </pre></example>
@@ -16290,14 +17221,14 @@ averages June, 1985&textndash;June, 1989:
 </para>
 <para><command>ncrcat</command> concatenates record variables across an arbitrary
 number of <var>input-files</var>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1562">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1611">record dimension</indexterm></cindex>
 The final record dimension is by default the sum of the lengths of the 
 record dimensions in the input files.
 <xref label="Statistics-vs_002e-Concatenation"><xrefnodename>Statistics vs. Concatenation</xrefnodename></xref>, for a description of the
 distinctions between the various statistics tools and concatenators. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1563">multi-file operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1564">standard input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1565"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1612">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1613">standard input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1614"><code>stdin</code></indexterm></cindex>
 As a multi-file operator, <command>ncrcat</command> will read the list of
 <var>input-files</var> from <code>stdin</code> if they are not specified 
 as positional arguments on the command line 
@@ -16306,19 +17237,19 @@ as positional arguments on the command line
 <para>Input files may vary in size, but each must have a record dimension.
 The record coordinate, if any, should be monotonic (or else non-fatal
 warnings may be generated).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1566">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1615">hyperslab</indexterm></cindex>
 Hyperslabs along the record dimension that span more than one file are  
 handled correctly.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1567">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1616">stride</indexterm></cindex>
 <command>ncra</command> supports the <var>stride</var> argument to the <samp>-d</samp>
 hyperslab option for the record dimension only, <var>stride</var> is not
 supported for non-record dimensions.
 </para>
 <findex index="fn" spaces=" "><indexterm index="fn" number="40" mergedindex="cp">ncpdq</indexterm></findex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1568">packing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1569">unpacking</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1570"><code>add_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1571"><code>scale_factor</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1617">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1618">unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1619"><code>add_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1620"><code>scale_factor</code></indexterm></cindex>
 <para>Concatenating a variable packed with different scales multiple datasets  
 is beyond the capabilities of <command>ncrcat</command> (and <command>ncecat</command>,
 the other concatenator (<ref label="Concatenation"><xrefnodename>Concatenation</xrefnodename></ref>).
@@ -16335,7 +17266,7 @@ First, unpack the data using <command>ncpdq</command>.
 Second, concatenate the unpacked data using <command>ncrcat</command>, 
 Third, re-pack the result with <command>ncpdq</command>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1572">ARM conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1621">ARM conventions</indexterm></cindex>
 <para><command>ncrcat</command> applies special rules to <acronym><acronymword>ARM</acronymword></acronym> convention time
 fields (e.g., <code>time_offset</code>).
 See <ref label="ARM-Conventions"><xrefnodename>ARM Conventions</xrefnodename></ref> for a complete description.
@@ -16348,10 +17279,10 @@ See <ref label="ARM-Conventions"><xrefnodename>ARM Conventions</xrefnodename></r
 </para>
 <para>Concatenate files <file>85.nc</file>, <file>86.nc</file>, <w>&dots; <file>89.nc</file></w>
 along the record dimension, and store the results in <file>8589.nc</file>: 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1573">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1574"><code>NINTAP</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1575">Processor</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1576"><acronym><acronymword>CCM</acronymword></acronym> Processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1622">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1623"><code>NINTAP</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1624">Processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1625"><acronym><acronymword>CCM</acronymword></acronym> Processor</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncrcat 85.nc 86.nc 87.nc 88.nc 89.nc 8589.nc
 ncrcat 8[56789].nc 8589.nc
@@ -16362,7 +17293,7 @@ ncrcat -n 5,2,1 85.nc 8589.nc
 <xref label="Specifying-Input-Files"><xrefnodename>Specifying Input Files</xrefnodename></xref>, for an explanation of the distinctions
 between these methods.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1577">Fortran</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1626">Fortran</indexterm></cindex>
 <para>Assume the files <file>85.nc</file>, <file>86.nc</file>, <w>&dots; <file>89.nc</file></w>
 each contain a record coordinate <var>time</var> of <w>length 12</w> defined
 such that the third record in <file>86.nc</file> contains data from March
@@ -16379,7 +17310,7 @@ When <command>ncra</command> and <command>ncrcat</command> encounter a file whic
 contain any records that meet the specified hyperslab criteria, they
 disregard the file and proceed to the next file without failing.
 The <samp>-F</samp> turns on the Fortran (1-based) indexing convention.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1578">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1627">stride</indexterm></cindex>
 </para>
 <para>The following uses the <var>stride</var> option to concatenate all the March 
 temperature data from multiple input files into a single output file
@@ -16401,16 +17332,16 @@ concatenates June, 1985&textndash;June, 1989:
 <a name="ncrename"></a> <!&textndash; http://nco.sf.net/nco.html#ncrename &textndash;>
 </html>
 </section>
-<node name="ncrename-netCDF-Renamer" spaces=" "><nodename>ncrename netCDF Renamer</nodename><nodenext spaces=" ">ncwa netCDF Weighted Averager</nodenext><nodeprev spaces=" ">ncrcat netCDF Record Concatenator</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncrename-netCDF-Renamer" spaces=" "><nodename>ncrename netCDF Renamer</nodename><nodenext spaces=" ">ncwa netCDF Weighted Averager</nodenext><nodeprev spaces=" ">ncrcat netCDF Record Concatenator</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncrename</command> netCDF Renamer</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1579">renaming variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1580">renaming groups</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1581">renaming dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1582">renaming attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1583">variable names</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1584">dimension names</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1585">attribute names</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1586">group names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1628">renaming variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1629">renaming groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1630">renaming dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1631">renaming attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1632">variable names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1633">dimension names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1634">attribute names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1635">group names</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="41" mergedindex="cp">ncrename</indexterm></findex>
 
 <noindent></noindent>
@@ -16426,7 +17357,7 @@ concatenates June, 1985&textndash;June, 1989:
 <noindent></noindent>
 <para>DESCRIPTION
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1587"><kbd>.</kbd></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1636"><kbd>.</kbd></indexterm></cindex>
 <para><command>ncrename</command> renames netCDF dimensions, variables, attributes, and
 groups. 
 Each object that has a name in the list of old names is renamed using
@@ -16475,9 +17406,9 @@ The object name is the terminal path component of <var>new_name</var> and
 this object must already exist in the group specified by the 
 <var>old_name</var> path.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1588">data safety</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1589">safeguards</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1590">temporary output files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1637">data safety</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1638">safeguards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1639">temporary output files</indexterm></cindex>
 <para><command>ncrename</command> is an exception to the normal <acronym><acronymword>NCO</acronymword></acronym> rule that
 the user will be interactively prompted before an existing file is
 changed, and that a temporary copy of an output file is constructed
@@ -16497,10 +17428,10 @@ In this case, the named dependent variable must be one-dimensional and
 should have no missing values. 
 Such a variable will become a coordinate variable.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1591">performance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1592">operator speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1593">speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1594">execution time</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1640">performance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1641">operator speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1642">speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1643">execution time</indexterm></cindex>
 <para>According to the <cite>netCDF User Guide</cite>, renaming objects in netCDF
 files does not incur the penalty of recopying the entire file when the
 <var>new_name</var> is shorter than the <var>old_name</var>. 
@@ -16520,9 +17451,9 @@ as swifly as possible.
 The old and new names of the attribute are specified with <samp>-a</samp>
 (or <samp>--attribute</samp>) by the associated <var>old_name</var> and
 <var>new_name</var> values.  
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1595"><code>global</code> attribute</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1596">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1597">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1644"><code>global</code> attribute</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1645">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1646">attributes, global</indexterm></cindex>
 Global attributes are treated no differently than variable attributes.
 This option may be specified more than once.
 As mentioned above, all occurrences of the attribute of a given name
@@ -16605,7 +17536,7 @@ ncrename -v /g1/lon,/g1/longitude in_grp.nc # Alternate
 <html endspaces=" ">
 <a name="ncrename_crd"></a> <!&textndash; http://nco.sf.net/nco.html#ncrename_crd &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1598">coordinate variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1647">coordinate variables</indexterm></cindex>
 <para><command>ncrename</command> does not automatically attach dimensions to variables of
 the same name.
 This is done to make renaming an easy way to change whether a variable
@@ -16669,11 +17600,11 @@ version 4.3.3 (TBD) or later, or convert the file to netCDF3 first, then
 rename as intended, then convert back. 
 This bug does not affect renaming of groups or of attributes.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1599">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1600">group attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1601">attributes, global</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1602"><code>_FillValue</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1603"><code>missing_value</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1648">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1649">group attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1650">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1651"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1652"><code>missing_value</code></indexterm></cindex>
 <para>Create netCDF <file>out.nc</file> identical to <file>in.nc</file> except the
 attribute <code>_FillValue</code> is changed to <code>missing_value</code>, 
 the attribute <code>units</code> is changed to <code>CGS_units</code> (but only in
@@ -16730,12 +17661,12 @@ Variables not prefixed with a period (<code>global</code>) must be present.
 <a name="ncwa"></a> <!&textndash; http://nco.sf.net/nco.html#ncwa &textndash;>
 </html>
 </section>
-<node name="ncwa-netCDF-Weighted-Averager" spaces=" "><nodename>ncwa netCDF Weighted Averager</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">ncrename netCDF Renamer</nodeprev><nodeup spaces=" ">Operator Reference Manual</nodeup></node>
+<node name="ncwa-netCDF-Weighted-Averager" spaces=" "><nodename>ncwa netCDF Weighted Averager</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">ncrename netCDF Renamer</nodeprev><nodeup spaces=" ">Reference Manual</nodeup></node>
 <section spaces=" "><sectiontitle><command>ncwa</command> netCDF Weighted Averager</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1604">averaging data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1605">weighted average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1606">masked average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1607">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1653">averaging data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1654">weighted average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1655">masked average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1656">broadcasting variables</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="42" mergedindex="cp">ncwa</indexterm></findex>
 
 <noindent></noindent>
@@ -16746,7 +17677,7 @@ Variables not prefixed with a period (<code>global</code>) must be present.
 [-D <var>dbg</var>] [-d <var>dim</var>,[<var>min</var>][,[<var>max</var>][,[<var>stride</var>]]] [-F]
 [-G <var>gpe_dsc</var>] [-g <var>grp</var>[,&dots;]] [-h] [--hdr_pad <var>nbr</var>] [-I]
 [-L <var>dfl_lvl</var>] [-l <var>path</var>] [-M <var>mask_val</var>] [-m <var>mask_var</var>] [-N] [--no_tmp_fl]
-[-O] [-o <var>output-file</var>] [-p <var>path</var>] [-R] [-r] [--ram_all] [--rth_dbl|flt]
+[-O] [-o <var>output-file</var>] [-p <var>path</var>] [--ppc ...] [-R] [-r] [--ram_all] [--rth_dbl|flt]
 [-T <var>mask_comp</var>] [-t <var>thr_nbr</var>] [--unn] [-v <var>var</var>[,&dots;]] [-w <var>weight</var>]
 [-X ...] [-x] [-y <var>op_typ</var>]
 <var>input-file</var> [<var>output-file</var>]
@@ -16763,7 +17694,7 @@ The default behavior of <command>ncwa</command> is to arithmetically average
 every numerical variable over all dimensions and to produce a scalar 
 result for each. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1608">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1657">degenerate dimension</indexterm></cindex>
 <para>Averaged dimensions are, by default, eliminated as dimensions.
 Their corresponding coordinates, if any, are output as scalar
 variables. 
@@ -16777,9 +17708,9 @@ concatenation along the degenerate dimension.
 <para>To average variables over only a subset of their dimensions, specify
 these dimensions in a comma-separated list following <samp>-a</samp>, e.g.,
 <samp>-a time,lat,lon</samp>. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1609">arithmetic operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1610">hyperslab</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1611"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1658">arithmetic operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1659">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1660"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>]]</code></indexterm></cindex>
 As with all arithmetic operators, the operation may be restricted to
 an arbitrary hypserslab by employing the <samp>-d</samp> option
 (<pxref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodename></pxref>). 
@@ -16794,20 +17725,20 @@ With these options, <command>ncwa</command> can compute sophisticated averages
 <a name="-w"></a> <!&textndash; http://nco.sf.net/nco.html#-w &textndash;>
 <a name="wgt"></a> <!&textndash; http://nco.sf.net/nco.html#wgt &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1612"><code>-w <var>weight</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1613"><code>--weight <var>weight</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1614"><code>--wgt_var <var>weight</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1615"><code>-m <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1616"><code>--mask-variable <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1617"><code>--mask_variable <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1618"><code>--msk_nm <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1619"><code>--msk_var <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1620"><code>-B <var>mask_cond</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1621"><code>--msk_cnd <var>mask_cond</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1622"><code>--mask_condition <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1661"><code>-w <var>weight</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1662"><code>--weight <var>weight</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1663"><code>--wgt_var <var>weight</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1664"><code>-m <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1665"><code>--mask-variable <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1666"><code>--mask_variable <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1667"><code>--msk_nm <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1668"><code>--msk_var <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1669"><code>-B <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1670"><code>--msk_cnd <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1671"><code>--mask_condition <var>mask_cond</var></code></indexterm></cindex>
 <para><var>mask_var</var> and <var>weight</var>, if specified, are broadcast to conform
 to the variables being averaged. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1623">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1672">rank</indexterm></cindex>
 The rank of variables is reduced by the number of dimensions which they
 are averaged over.  
 Thus arrays which are one dimensional in the <var>input-file</var> and are
@@ -16842,8 +17773,8 @@ Since, by default <command>ncwa</command> weights coordinate variables, the
 value of <code>latitude</code> in the <var>output-file</var> depends on the weights 
 in <var>lat_wgt</var> and is not likely to <w>be 45.0</w>, the midpoint latitude
 of the hyperslab.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1624">coordinate variable</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1625"><code>-I</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1673">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1674"><code>-I</code></indexterm></cindex>
 Option <samp>-I</samp> overrides this default behavior and causes
 <command>ncwa</command> not to weight or mask coordinate variables
 <footnote><para>The default behavior of (<samp>-I</samp>) changed on
@@ -16861,8 +17792,8 @@ area-weighted mean latitude.
 centroid of the hyperslab. 
 For the example given, this is about <w>30 degrees.</w></para></footnote>.  
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1626">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1627">operation types</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1675">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1676">operation types</indexterm></cindex>
 <para>As explained in <xref label="Operation-Types"><xrefnodename>Operation Types</xrefnodename></xref>, <command>ncwa</command> 
 <emph>always averages</emph> coordinate variables regardless of the arithmetic
 operation type performed on the non-coordinate variables. 
@@ -16882,8 +17813,8 @@ is given above (<pxref label="Operation-Types"><xrefnodename>Operation Types</xr
 </html>
 <node name="Mask-condition" spaces=" "><nodename>Mask condition</nodename><nodenext spaces=" ">Normalization and Integration</nodenext><nodeprev spaces=" ">ncwa netCDF Weighted Averager</nodeprev><nodeup spaces=" ">ncwa netCDF Weighted Averager</nodeup></node>
 <subsection spaces=" "><sectiontitle>Mask condition</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1628">mask condition</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1629">truth condition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1677">mask condition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1678">truth condition</indexterm></cindex>
 <tex endspaces=" ">
 Each $\xxx_{\idx}$ also has an associated masking
 weight~$\mskflg_{\idx}$ whose value is~0 or~1 (false or true).
@@ -16898,12 +17829,12 @@ As expected, $\mskflg_{\idx} = 1$ when the mask condition is
 <dfn>true</dfn> and $\mskflg_{\idx} = 0$ otherwise.   
 </tex>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1630"><code>--op_rlt <var>mask_comp</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1631"><code>--mask_comparator <var>mask_comp</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1632"><code>--msk_cmp_typ <var>mask_comp</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1633"><code>--msk_cnd_sng <var>mask_cond</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1634"><code>--mask_condition <var>mask_cond</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1635"><code>-B <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1679"><code>--op_rlt <var>mask_comp</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1680"><code>--mask_comparator <var>mask_comp</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1681"><code>--msk_cmp_typ <var>mask_comp</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1682"><code>--msk_cnd_sng <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1683"><code>--mask_condition <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1684"><code>-B <var>mask_cond</var></code></indexterm></cindex>
 <para>The mask condition has the syntax <math><var>mask_var</var></math>
 <math><var>mask_comp</var></math> <math><var>mask_val</var></math>. 
 The preferred method to specify the mask condition is in one string with  
@@ -16918,7 +17849,7 @@ It is safest to write scripts using <samp>--mask_condition</samp>.</para></footn
 The <var>mask_condition</var> string is automatically parsed into its three
 constituents <var>mask_var</var>, <var>mask_comp</var>, and <var>mask_val</var>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1636">comparator</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1685">comparator</indexterm></cindex>
 <para>Here <var>mask_var</var> is the name of the masking variable (specified with 
 <samp>-m</samp>, <samp>--mask-variable</samp>, <samp>--mask_variable</samp>,
 <samp>--msk_nm</samp>, or <samp>--msk_var</samp>).  
@@ -16937,9 +17868,9 @@ comparisons <math>==</math>, <math>!=</math>, <math>></math>, <math><</mat
 <math><=</math>. 
 <clear name="flg" line=" flg"></clear>
 The mask comparator defaults to <kbd>eq</kbd> (equality).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1637"><code>--mask-value <var>mask_val</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1638"><code>--mask_value <var>mask_val</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1639"><code>--msk_val <var>mask_val</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1686"><code>--mask-value <var>mask_val</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1687"><code>--mask_value <var>mask_val</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1688"><code>--msk_val <var>mask_val</var></code></indexterm></cindex>
 The <var>mask_val</var> argument to <samp>-M</samp> (or <samp>--mask-value</samp>, or
 <samp>--msk_val</samp>) is the right hand side of the
 <dfn>mask condition</dfn>.
@@ -16992,11 +17923,11 @@ weight $\wgt_{\idx}=0.0$ as well).
 </subsection>
 <node name="Normalization-and-Integration" spaces=" "><nodename>Normalization and Integration</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Mask condition</nodeprev><nodeup spaces=" ">ncwa netCDF Weighted Averager</nodeup></node>
 <subsection spaces=" "><sectiontitle>Normalization and Integration</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1640">normalization</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1641"><code>-N</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1642"><code>numerator</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1643">integration</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1644">dot product</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1689">normalization</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1690"><code>-N</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1691"><code>numerator</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1692">integration</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1693">dot product</indexterm></cindex>
 <para><command>ncwa</command> has one switch which controls the normalization of the
 averages appearing in the <var>output-file</var>.
 Short option <samp>-N</samp> (or long options <samp>--nmr</samp> or
@@ -17021,7 +17952,7 @@ integrals (i.e., weighted sums) to be output.
 For example, consider the variable 
 <code>lev</code> where <math><var>lev</var> = [100,500,1000]</math> weighted by
 the weight <code>lev_wgt</code> where <math><var>lev_wgt</var> = [10,2,1]</math>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1645">dot product</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1694">dot product</indexterm></cindex>
 The vertical integral of <code>lev</code>, weighted by <code>lev_wgt</code>, 
 is the dot product of <var>lev</var> and <var>lev_wgt</var>. 
 That this is <w>is 3000.0</w> can be seen by inspection and verified with 
@@ -17102,7 +18033,7 @@ specified (with <samp>-a</samp>).
 ncwa -a lon -b in.nc out2.nc
 </pre></example>
 <noindent></noindent>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1646">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1695">degenerate dimension</indexterm></cindex>
 <para>The first command turns <code>lon</code> into a scalar and the second retains 
 <code>lon</code> as a degenerate dimension in all variables.
 </para><example endspaces=" ">
@@ -17114,9 +18045,9 @@ lon[0] = 135
 <para>In either case the tally is simply the size of <code>lon</code>, i.e., 180
 for the <file>85_0112.nc</file> file described by the sample header above.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1647"><code>gw</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1648">Gaussian weights</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1649">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1696"><code>gw</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1697">Gaussian weights</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1698">climate model</indexterm></cindex>
 <para>Compute the meridional (latitudinal) mean, with values weighted by
 the corresponding element of <var>gw</var>
 <footnote><para><code>gw</code> stands for <dfn>Gaussian weight</dfn> in many
@@ -17142,8 +18073,8 @@ $64 \times 128 = 8192$.
 64 times 128 = 8192.
 <clear name="flg" line=" flg"></clear>
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1650"><code>ORO</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1651">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1699"><code>ORO</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1700">climate model</indexterm></cindex>
 <para>Compute the area-mean over the globe using only points for which 
 <set name="flg" line=" flg"></set>
 <tex endspaces=" ">
@@ -17198,8 +18129,8 @@ the variable <var>area</var> contains the area of each gridcell
 Thus the <samp>-N</samp> switch, or, equivalently, the <samp>-y ttl</samp> switch, 
 correctly integrate the cell areas into a total regional area.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1652">mask condition</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1653">truth condition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1701">mask condition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1702">truth condition</indexterm></cindex>
 <para>Mask a file to contain <var>_FillValue</var> everywhere except where
 <math><var>thr_min</var> <= <var>msk_var</var> <= <var>thr_max</var></math>:
 </para><example endspaces=" ">
@@ -17227,19 +18158,19 @@ where <math><var>thr_min</var> <= <var>msk_var</var> <= <var>thr_max</var>
 </subsection>
 </section>
 </chapter>
-<node name="Contributing" spaces=" "><nodename>Contributing</nodename><nodenext spaces=" ">Quick Start</nodenext><nodeprev spaces=" ">Operator Reference Manual</nodeprev><nodeup spaces=" ">Top</nodeup></node>
+<node name="Contributing" spaces=" "><nodename>Contributing</nodename><nodenext spaces=" ">Quick Start</nodenext><nodeprev spaces=" ">Reference Manual</nodeprev><nodeup spaces=" ">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>Contributing</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1654">contributing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1703">contributing</indexterm></cindex>
 <para>We welcome contributions from anyone.
 The project homepage at <uref><urefurl>https://sf.net/projects/nco</urefurl></uref>
 contains more information on how to contribute. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1655">PayPal</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1704">PayPal</indexterm></cindex>
 <para>Financial contributions to <acronym><acronymword>NCO</acronymword></acronym> development may be made through  
 <uref><urefurl>https://www.paypal.com/xclick/business=zender%40uci.edu&item_name=NCO+development&item_number=nco_dnt_dvl&no_note=1&tax=0&currency_code=USD</urefurl><urefdesc spaces=" ">PayPal</urefdesc></uref>.
 <acronym><acronymword>NCO</acronymword></acronym> has been shared for over <w>10 years</w> yet only two 
 users have contributed any money to the developers
-<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="1656">chocolate</indexterm></cindex>
+<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="1705">chocolate</indexterm></cindex>
 <para>Happy users have sent me a few gifts, though.
 This includes a box of imported chocolate.
 Mmm.
@@ -17266,13 +18197,13 @@ So you could be the third!
 <para><acronym><acronymword>NCO</acronymword></acronym> would not exist without the dedicated efforts of the
 remarkable software engineers who conceive, develop, and
 maintain netCDF, UDUnits, and OPeNDAP.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1657">Russ Rew</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1658">John Caron</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1659">Glenn Davis</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1660">Steve Emmerson</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1661">James Gallagher</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1662">Ed Hartnett</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1663">Dennis Heimbigner</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1706">Russ Rew</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1707">John Caron</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1708">Glenn Davis</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1709">Steve Emmerson</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1710">James Gallagher</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1711">Ed Hartnett</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1712">Dennis Heimbigner</indexterm></cindex>
 Since 1995 <acronym><acronymword>NCO</acronymword></acronym> has received support from, I believe, the
 entire staff of all these projects, including 
 Russ Rew, 
@@ -17287,10 +18218,10 @@ In addition to their roles in maintaining the software stack on which
 or contributed to <acronym><acronymword>NCO</acronymword></acronym> specifically. That support is
 acknowledged separately below. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1664">contributors</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1713">contributors</indexterm></cindex>
 <para>The primary contributors to <acronym><acronymword>NCO</acronymword></acronym> development have been:
 </para><table commandarg="asis" spaces=" " endspaces=" ">
-<beforefirstitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1665">Charlie Zender</indexterm></cindex>
+<beforefirstitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1714">Charlie Zender</indexterm></cindex>
 </beforefirstitem><tableentry><tableterm><item spaces=" "><itemformat command="asis">Charlie Zender</itemformat></item>
 </tableterm><tableitem><para>All concept, design and implementation from 1995&textndash;2000.
 Since then autotools, bug-squashing, <acronym><acronymword>CDL</acronymword></acronym>, chunking,
@@ -17299,7 +18230,7 @@ documentation, anchoring, recursion, <acronym><acronymword>GPE</acronymword></ac
 <command>ncbo</command>, <command>ncpdq</command>, <acronym><acronymword>SMP</acronymword></acronym> threading and <acronym><acronymword>MPI</acronymword></acronym> parallelization,
 netCDF4 integration, external funding, project management, science
 research, releases. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1666">Henry Butowsky</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1715">Henry Butowsky</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Henry Butowsky</itemformat></item>
 </tableterm><tableitem><para>Non-linear operations and <code>min()</code>, <code>max()</code>, <code>total()</code>
 support in <command>ncra</command> and <command>ncwa</command>. 
@@ -17310,115 +18241,115 @@ Multislabbing algorithm.
 Variable wildcarding.
 Numerous hacks.
 <command>ncap2</command> language.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1667">Rorik Peterson</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1716">Rorik Peterson</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Rorik Peterson</itemformat></item>
 </tableterm><tableitem><para>Original autotools build support. 
 Long command-line options.
 Original UDUnits support.
 Debianization.
 Numerous bug-fixes.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1668">Joe Hamman</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1717">Joe Hamman</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Joe Hamman</itemformat></item>
 </tableterm><tableitem><para>Python bindings (NCOpy).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1669">Daniel Wang</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1718">Daniel Wang</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Daniel Wang</itemformat></item>
 </tableterm><tableitem><para>Script Workflow Analysis for MultiProcessing (<acronym><acronymword>SWAMP</acronymword></acronym>).
 <acronym><acronymword>RPM</acronymword></acronym> support.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1670">Harry Mangalam</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1719">Harry Mangalam</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Harry Mangalam</itemformat></item>
 </tableterm><tableitem><para>Benchmarking.
 OPeNDAP configuration.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1671">Pedro Vicente</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1720">Pedro Vicente</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Pedro Vicente</itemformat></item>
 </tableterm><tableitem><para>Windows Visual Studio support.
 netCDF4 groups.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1672">Russ Rew</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1721">Russ Rew</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Russ Rew</itemformat></item>
 </tableterm><tableitem><para>Advice on <acronym><acronymword>NCO</acronymword></acronym> structural algorithms
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1673">Brian Mays</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1722">Brian Mays</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Brian Mays</itemformat></item>
 </tableterm><tableitem><para>Original packaging for Debian <acronym><acronymword>GNU</acronymword></acronym>/Linux, <command>nroff</command> man pages.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1674">George Shapovalov</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1723">George Shapovalov</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">George Shapovalov</itemformat></item>
 </tableterm><tableitem><para>Packaging for Gentoo <acronym><acronymword>GNU</acronymword></acronym>/Linux.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1675">Bill Kocik</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1724">Bill Kocik</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Bill Kocik</itemformat></item>
 </tableterm><tableitem><para>Memory management.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1676">Len Makin</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1725">Len Makin</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Len Makin</itemformat></item>
 </tableterm><tableitem><para>NEC SX architecture support.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1677">Jim Edwards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1726">Jim Edwards</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Jim Edwards</itemformat></item>
 </tableterm><tableitem><para>AIX architecture support.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1678">Juliana Rew</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1727">Juliana Rew</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Juliana Rew</itemformat></item>
 </tableterm><tableitem><para>Compatibility with large <acronym><acronymword>PID</acronymword></acronym>s.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1679">Karen Schuchardt</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1728">Karen Schuchardt</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Karen Schuchardt</itemformat></item>
 </tableterm><tableitem><para>Auxiliary coordinate support.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1680">Gayathri Venkitachalam</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1729">Gayathri Venkitachalam</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Gayathri Venkitachalam</itemformat></item>
 </tableterm><tableitem><para><acronym><acronymword>MPI</acronymword></acronym> implementation.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1681">Scott Capps</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1730">Scott Capps</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Scott Capps</itemformat></item>
 </tableterm><tableitem><para>Large work-load testing
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1682">Peter Campbell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1683">Martin Dix</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1684">Mark Flanner</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1685">Markus Liebig</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1686">Keith Lindsay</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1687">Stu Muller</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1688">Mike Page</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1689">Martin Schmidt</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1690">Lori Sentman</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1691">Michael Schulz</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1692">Rich Signell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1693">Gary Strand</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1694">Andrew Wittenberg</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1695">George White</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1696">Remik Ziemlinski</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1731">Peter Campbell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1732">Martin Dix</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1733">Mark Flanner</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1734">Markus Liebig</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1735">Keith Lindsay</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1736">Stu Muller</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1737">Mike Page</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1738">Martin Schmidt</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1739">Lori Sentman</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1740">Michael Schulz</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1741">Rich Signell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1742">Gary Strand</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1743">Andrew Wittenberg</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1744">George White</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1745">Remik Ziemlinski</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Peter Campbell, Martin Dix, Mark Flanner, Markus Liebig, Keith Lindsay, Mike Page, Martin Schmidt, Michael Schulz, Lori Sentman, Rich Signell, Gary Strand, George White Andrew Wittenberg, Remik Ziemlinski</itemformat></item>
 </tableterm><tableitem><para>Excellent bug reports and feature requests.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1697">Daniel Baumann</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1698">Nick Bower</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1699">Luk Claes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1700">Barry deFreese</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1701">Aleksandar Jelenak</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1702">Francesco Lovergine</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1703">Matej Vela</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1746">Daniel Baumann</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1747">Nick Bower</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1748">Luk Claes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1749">Barry deFreese</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1750">Aleksandar Jelenak</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1751">Francesco Lovergine</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1752">Matej Vela</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Daniel Baumann, Nick Bower, Luk Claebs, Barry deFreese, Aleksandar Jelenak, Francesco Lovergine, Matej Vela</itemformat></item>
 </tableterm><tableitem><para>Debian packaging
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1704">Patrice Dumas</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1705">Ed Hill</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1706">Orion Powlawski</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1753">Patrice Dumas</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1754">Ed Hill</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1755">Orion Powlawski</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Patrice Dumas, Ed Hill, Orion Poplawski</itemformat></item>
 </tableterm><tableitem><para>RedHat packaging
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1707">George Shapavalov</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1708">Patrick Kursawe</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1756">George Shapavalov</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1757">Patrick Kursawe</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">George Shapavalov, Patrick Kursawe</itemformat></item>
 </tableterm><tableitem><para>Gentoo packaging
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1709">Filipe Fernandes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1758">Filipe Fernandes</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Filipe Fernandes</itemformat></item>
 </tableterm><tableitem><para>OpenSuse packaging
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1710">Alexander Hansen</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1711">Takeshi Enomoto</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1759">Alexander Hansen</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1760">Takeshi Enomoto</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Takeshi Enomoto, Alexander Hansen</itemformat></item>
 </tableterm><tableitem><para>Mac OS packaging
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1712">Eric Blake</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1761">Eric Blake</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Eric Blake</itemformat></item>
 </tableterm><tableitem><para>Autoconf/M4 help
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1713">Gavin Burris</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1714">Kyle Wilcox</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1762">Gavin Burris</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1763">Kyle Wilcox</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Gavin Burris, Kyle Wilcox</itemformat></item>
 </tableterm><tableitem><para>RHEL and CentOS build scripts and bug reports.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1715">Andrea Cimatoribus</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1764">Andrea Cimatoribus</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Andrea Cimatoribus</itemformat></item>
 </tableterm><tableitem><para><acronym><acronymword>NCO</acronymword></acronym> Spiral Logo
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1716">Martin Otte</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1717">Etienne Tourigny</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1765">Martin Otte</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1766">Etienne Tourigny</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Martin Otte, Etienne Tourigny</itemformat></item>
 </tableterm><tableitem><para>Single bug reports and fixes
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1718">Wenshan Wang</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1767">Wenshan Wang</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Wenshan Wang</itemformat></item>
 </tableterm><tableitem><para><acronym><acronymword>CMIP5</acronymword></acronym> and <acronym><acronymword>MODIS</acronymword></acronym> processing documentation.
 </para></tableitem></tableentry></table>
@@ -17430,7 +18361,7 @@ netCDF4 groups.
 </section>
 <node name="Citation" spaces=" "><nodename>Citation</nodename><nodenext spaces=" ">Proposals for Institutional Funding</nodenext><nodeprev spaces=" ">Contributors</nodeprev><nodeup spaces=" ">Contributing</nodeup></node>
 <section spaces=" "><sectiontitle>Citation</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1719">citation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1768">citation</indexterm></cindex>
 <para>The recommended citations for <acronym><acronymword>NCO</acronymword></acronym> software are
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
@@ -17464,27 +18395,27 @@ This list links to the full papers and seminars themselves.
 </section>
 <node name="Proposals-for-Institutional-Funding" spaces=" "><nodename>Proposals for Institutional Funding</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Citation</nodeprev><nodeup spaces=" ">Contributing</nodeup></node>
 <section spaces=" "><sectiontitle>Proposals for Institutional Funding</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1720">funding</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1721">proposals</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1722"><acronym><acronymword>NSF</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1723">server-side processing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1724">Distributed Data Reduction & Analysis</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1725">Scientific Data Operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1726"><acronym><acronymword>DDRA</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1727">Server-Side Distributed Data Reduction & Analysis</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1728"><acronym><acronymword>SSDDRA</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1729"><acronym><acronymword>CCSM</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1730"><acronym><acronymword>IPCC</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1731"><acronym><acronymword>NSF</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1732"><acronym><acronymword>SDO</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1733"><acronym><acronymword>SEIII</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1734">OptIPuter</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1769">funding</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1770">proposals</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1771"><acronym><acronymword>NSF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1772">server-side processing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1773">Distributed Data Reduction & Analysis</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1774">Scientific Data Operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1775"><acronym><acronymword>DDRA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1776">Server-Side Distributed Data Reduction & Analysis</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1777"><acronym><acronymword>SSDDRA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1778"><acronym><acronymword>CCSM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1779"><acronym><acronymword>IPCC</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1780"><acronym><acronymword>NSF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1781"><acronym><acronymword>SDO</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1782"><acronym><acronymword>SEIII</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1783">OptIPuter</indexterm></cindex>
 <para><acronym><acronymword>NSF</acronymword></acronym> has funded a
 <uref><urefurl>http://nco.sf.net#prp_sei</urefurl><urefdesc spaces=" ">project</urefdesc></uref>
 to improve Distributed Data Reduction & Analysis (<acronym><acronymword>DDRA</acronymword></acronym>) by
 evolving <acronym><acronymword>NCO</acronymword></acronym> into a suite of Scientific Data Operators called 
 <acronym><acronymword>SDO</acronymword></acronym>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1735">parallelism</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1784">parallelism</indexterm></cindex>
 The two main components of this project are <acronym><acronymword>NCO</acronymword></acronym> parallelism
 (OpenMP, <acronym><acronymword>MPI</acronymword></acronym>) and Server-Side <acronym><acronymword>DDRA</acronymword></acronym>
 (<acronym><acronymword>SSDDRA</acronymword></acronym>) implemented through extensions to <acronym><acronymword>OPeNDAP</acronymword></acronym> 
@@ -17492,9 +18423,9 @@ and netCDF4.
 This project will dramatically reduce bandwidth usage for <acronym><acronymword>NCO</acronymword></acronym>
 <acronym><acronymword>DDRA</acronymword></acronym>. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1736"><acronym><acronymword>NASA</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1737"><acronym><acronymword>NRA</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1738"><acronym><acronymword>HDF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1785"><acronym><acronymword>NASA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1786"><acronym><acronymword>NRA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1787"><acronym><acronymword>HDF</acronymword></acronym></indexterm></cindex>
 <para>With this first <acronym><acronymword>NCO</acronymword></acronym> proposal funded, the content of the
 next <acronym><acronymword>NCO</acronymword></acronym> proposal is clear.
 We are interested in obtaining <acronym><acronymword>NASA</acronymword></acronym> support for
@@ -17514,7 +18445,7 @@ Comments on the proposals and letters of support are also very welcome.
 </chapter>
 <node name="Quick-Start" spaces=" "><nodename>Quick Start</nodename><nodenext spaces=" ">CMIP5 Example</nodenext><nodeprev spaces=" ">Contributing</nodeprev><nodeup spaces=" ">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>Quick Start</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1739">Quick Start</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1788">Quick Start</indexterm></cindex>
 <para>Simple examples in Bash shell scripts showing how to average data with
 different file structures.  
 Here we include monthly, seasonal and annual average with daily or
@@ -17529,15 +18460,15 @@ monthly data in either one file or multiple files.
 
 <node name="Daily-data-in-one-file" spaces=" "><nodename>Daily data in one file</nodename><nodenext spaces=" ">Monthly data in one file</nodenext><nodeprev spaces=" ">Quick Start</nodeprev><nodeup spaces=" ">Quick Start</nodeup></node>
 <section spaces=" "><sectiontitle>Daily data in one file</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1740">daily data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1789">daily data</indexterm></cindex>
 <para>Suppose we have daily data from Jan 1st, 1990 to Dec. 31, 2005 in the
 file of <file>in.nc</file> with the record dimension as <code>time</code>.
 </para>
 <noindent></noindent>
 <para><strong>Monthly average:</strong>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1741">monthly average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1742">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1743">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1790">monthly average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1791">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1792">time-averaging</indexterm></cindex>
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
 for yyyy in {1990..2005}; do      # Loop over years
@@ -17557,9 +18488,9 @@ ncrcat -O in_??????.nc out.nc
 
 <noindent></noindent>
 <para><strong>Annual average:</strong>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1744">annual average from daily data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1745">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1746">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1793">annual average from daily data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1794">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1795">time-averaging</indexterm></cindex>
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
 for yyyy in {1990..2005}; do      # Loop over years
@@ -17578,23 +18509,23 @@ There are detailed instructions on <command>ncra</command> (<pxref label="ncra-n
 </section>
 <node name="Monthly-data-in-one-file" spaces=" "><nodename>Monthly data in one file</nodename><nodenext spaces=" ">One time point one file</nodenext><nodeprev spaces=" ">Daily data in one file</nodeprev><nodeup spaces=" ">Quick Start</nodeup></node>
 <section spaces=" "><sectiontitle>Monthly data in one file</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1747">monthly data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1796">monthly data</indexterm></cindex>
 <para>Inside the input file <file>in.nc</file>, the record dimension <code>time</code> is from Jan 1990 to Dec 2005.
 </para>
 <noindent></noindent>
 <para><strong>Seasonal average (e.g., DJF):</strong>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1748">seasonal average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1749">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1750">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1797">seasonal average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1798">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1799">time-averaging</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncra -O --mro -d time,"1990-12-01",,12,3 in.nc out.nc
 </pre></example>
 
 <noindent></noindent>
 <para><strong>Annual average:</strong>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1751">annual average from monthly data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1752">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1753">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1800">annual average from monthly data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1801">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1802">time-averaging</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncra -O --mro -d time,,,12,12 in.nc out.nc
 </pre></example>
@@ -17619,10 +18550,10 @@ you can leave it blank if you want to include the minimum or the maximum of the
 </section>
 <node name="One-time-point-one-file" spaces=" "><nodename>One time point one file</nodename><nodenext spaces=" ">Multiple files with multiple time points</nodenext><nodeprev spaces=" ">Monthly data in one file</nodeprev><nodeup spaces=" ">Quick Start</nodeup></node>
 <section spaces=" "><sectiontitle>One time point one file</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1754">daily data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1755">monthly data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1756">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1757">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1803">daily data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1804">monthly data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1805">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1806">time-averaging</indexterm></cindex>
 <para>This means if you have daily data of 30 days, there will be 30 data files.
 Or if you have monthly data of 12 months, there will be 12 data files.
 Dealing with this kind of files, you need to specify the file names in shell scripts and pass them to NCO operators.
@@ -17645,8 +18576,8 @@ done
 </section>
 <node name="Multiple-files-with-multiple-time-points" spaces=" "><nodename>Multiple files with multiple time points</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">One time point one file</nodeprev><nodeup spaces=" ">Quick Start</nodeup></node>
 <section spaces=" "><sectiontitle>Multiple files with multiple time points</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1758">daily data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1759">monthly data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1807">daily data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1808">monthly data</indexterm></cindex>
 <para>Similar as the last one, it&textrsquo;s more about shell scripts.
 Suppose you have daily data with one month of them in one data file.
 The monthly average is simply to apply <command>ncra</command> on the specific data file.
@@ -17660,8 +18591,8 @@ And for seasonal averages, you can specify the three months by shell scripts.
 </chapter>
 <node name="CMIP5-Example" spaces=" "><nodename>CMIP5 Example</nodename><nodenext spaces=" ">Parallel</nodenext><nodeprev spaces=" ">Quick Start</nodeprev><nodeup spaces=" ">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle><acronym><acronymword>CMIP5</acronymword></acronym> Example</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1760"><acronym><acronymword>CMIP5</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1761"><acronym><acronymword>GODAD</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1809"><acronym><acronymword>CMIP5</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1810"><acronym><acronymword>GODAD</acronymword></acronym></indexterm></cindex>
 <ignore>
 This @uref{http://nco.sf.net/xmp_cesm.html,Wonderful CMIP5 Documentation}
 shows complete processing of the @acronym{CMIP5} dataset.
@@ -17736,7 +18667,7 @@ group-based processing as well.
 
 <node name="Combine-Files" spaces=" "><nodename>Combine Files</nodename><nodenext spaces=" ">Global Distribution of Long-term Average</nodenext><nodeprev spaces=" ">CMIP5 Example</nodeprev><nodeup spaces=" ">CMIP5 Example</nodeup></node>
 <section spaces=" "><sectiontitle>Combine Files</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1762">file combination</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1811">file combination</indexterm></cindex>
 <para>Sometimes, the data of one ensemble member will be stored in several
 files to reduce single file size.
 It is more convenient to concatenate these files into a single
@@ -17765,10 +18696,10 @@ conditions to produce an ensemble of realizations.
 These ensemble members comprise the third level of the hierarchy.
 The script selects two variables, <var>snc</var> and <var>snd</var> (snow cover
 and snow depth).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1763"><option>--gag</option></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1764">aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1765">group aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1766">groups, creating</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1812"><option>--gag</option></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1813">aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1814">group aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1815">groups, creating</indexterm></cindex>
 </para><example endspaces=" ">
 <verbatiminclude file="xmp/cmb_fl_grp.sh" spaces=" ">xmp/cmb_fl_grp.sh</verbatiminclude>
 </example>
@@ -17776,10 +18707,10 @@ and snow depth).
 </section>
 <node name="Global-Distribution-of-Long_002dterm-Average" spaces=" "><nodename>Global Distribution of Long-term Average</nodename><nodenext spaces=" ">Annual Average over Regions</nodenext><nodeprev spaces=" ">Combine Files</nodeprev><nodeup spaces=" ">CMIP5 Example</nodeup></node>
 <section spaces=" "><sectiontitle>Global Distribution of Long-term Average</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1767">spatial distribution</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1768">long-term average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1769">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1770">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1816">spatial distribution</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1817">long-term average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1818">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1819">time-averaging</indexterm></cindex>
 <float name="fgr_003aglb" type="Figure" number="7.1" spaces=" " endspaces=" "><floattype>Figure</floattype><floatname>fgr:glb</floatname>
 <image><imagefile>xmp/fgr1</imagefile><imagewidth>3.5in</imagewidth></image> 
 <caption><para>Global Distribution of Long-term Average.</para></caption>
@@ -17800,7 +18731,7 @@ Key steps include:
 </example>
 
 <para>With the use of <key>group</key>, the above script will be shortened to <w>ONE LINE</w>.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1771">groups, averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1820">groups, averaging</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve"># Data from cmb_fl_grp.sh
 # ensemble averaging
@@ -17824,20 +18755,20 @@ ensembles with only one ensemble member will be left untouched.
 </section>
 <node name="Annual-Average-over-Regions" spaces=" "><nodename>Annual Average over Regions</nodename><nodenext spaces=" ">Monthly Cycle</nodenext><nodeprev spaces=" ">Global Distribution of Long-term Average</nodeprev><nodeup spaces=" ">CMIP5 Example</nodeup></node>
 <section spaces=" "><sectiontitle>Annual Average over Regions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1772">annual average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1773">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1774">time-averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1775">area-averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1776">dimension order</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1777">anomalies</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1778">standard deviation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1779">renaming variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1780">attributes, editing</indexterm></cindex>
-<cindex index="cp" spaces="	"><indexterm index="cp" number="1781">attributes, modifying</indexterm></cindex>
-<cindex index="cp" spaces="	"><indexterm index="cp" number="1782">attributes, overwriting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1783">regression</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1784">nco script file</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1785">variables, appending</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1821">annual average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1822">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1823">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1824">area-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1825">dimension order</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1826">anomalies</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1827">standard deviation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1828">renaming variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1829">attributes, editing</indexterm></cindex>
+<cindex index="cp" spaces="	"><indexterm index="cp" number="1830">attributes, modifying</indexterm></cindex>
+<cindex index="cp" spaces="	"><indexterm index="cp" number="1831">attributes, overwriting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1832">regression</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1833">nco script file</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1834">variables, appending</indexterm></cindex>
 <float name="fgr_003aanl" type="Figure" number="7.2" spaces=" " endspaces=" "><floattype>Figure</floattype><floatname>fgr:anl</floatname>
 <image><imagefile>xmp/fgr2</imagefile><imagewidth>4in</imagewidth></image>
 <caption><para>Annual Average over Regions.</para></caption>
@@ -17872,12 +18803,12 @@ all the loops over experiments, models and ensemble members can be omitted.
 As we are working on implementing <key>group</key> feature in all <acronym><acronymword>NCO</acronymword></acronym> operators,
 some functions (e.g., regression and standard deviation over ensemble members) 
 may have to wait until the new versions.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1786">group, spatial averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1787">group, temporal averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1788">group, anomaly</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1789">group, standard deviation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1790">group, aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1791">group, dimension permutation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1835">group, spatial averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1836">group, temporal averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1837">group, anomaly</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1838">group, standard deviation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1839">group, aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1840">group, dimension permutation</indexterm></cindex>
 </para><example endspaces=" ">
 <verbatiminclude file="xmp/ann_avg_grp.sh" spaces=" ">xmp/ann_avg_grp.sh</verbatiminclude>
 </example>
@@ -17885,12 +18816,12 @@ may have to wait until the new versions.
 </section>
 <node name="Monthly-Cycle" spaces=" "><nodename>Monthly Cycle</nodename><nodenext spaces=" ">Regrid MODIS Data</nodenext><nodeprev spaces=" ">Annual Average over Regions</nodeprev><nodeup spaces=" ">CMIP5 Example</nodeup></node>
 <section spaces=" "><sectiontitle>Monthly Cycle</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1792">monthly average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1793">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1794">time-averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1795">anomalies</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1796">geographical weight</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1797">weighted average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1841">monthly average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1842">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1843">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1844">anomalies</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1845">geographical weight</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1846">weighted average</indexterm></cindex>
 <float name="fgr_003amon" type="Figure" number="7.3" spaces=" " endspaces=" "><floattype>Figure</floattype><floatname>fgr:mon</floatname>
 <image><imagefile>xmp/fgr3</imagefile><imagewidth>4in</imagewidth></image>
 <caption><para>Monthly Cycle.</para></caption>
@@ -17916,16 +18847,16 @@ the script will be shortened.
 </section>
 <node name="Regrid-MODIS-Data" spaces=" "><nodename>Regrid MODIS Data</nodename><nodenext spaces=" ">Add Coordinates to MODIS Data</nodenext><nodeprev spaces=" ">Monthly Cycle</nodeprev><nodeup spaces=" ">CMIP5 Example</nodeup></node>
 <section spaces=" "><sectiontitle>Regrid <acronym><acronymword>MODIS</acronymword></acronym> Data</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1798">regrid</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1799">MODIS</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1800">bilinear interpolation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1801">interpolation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1802">renaming variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1803">renaming attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1804">renaming dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1805">attributes, editing</indexterm></cindex>
-<cindex index="cp" spaces="	"><indexterm index="cp" number="1806">attributes, modifying</indexterm></cindex>
-<cindex index="cp" spaces="	"><indexterm index="cp" number="1807">attributes, overwriting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1847">regrid</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1848">MODIS</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1849">bilinear interpolation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1850">interpolation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1851">renaming variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1852">renaming attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1853">renaming dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1854">attributes, editing</indexterm></cindex>
+<cindex index="cp" spaces="	"><indexterm index="cp" number="1855">attributes, modifying</indexterm></cindex>
+<cindex index="cp" spaces="	"><indexterm index="cp" number="1856">attributes, overwriting</indexterm></cindex>
 <para>In order to compare the results between <acronym><acronymword>MODIS</acronymword></acronym> and
 <acronym><acronymword>CMIP5</acronymword></acronym> models, one usually regrids one or both datasets so 
 that the spatial resolutions match. 
@@ -17947,8 +18878,8 @@ Key steps include:
 </section>
 <node name="Add-Coordinates-to-MODIS-Data" spaces=" "><nodename>Add Coordinates to MODIS Data</nodename><nodenext spaces=" ">Permute MODIS Coordinates</nodenext><nodeprev spaces=" ">Regrid MODIS Data</nodeprev><nodeup spaces=" ">CMIP5 Example</nodeup></node>
 <section spaces=" "><sectiontitle>Add Coordinates to <acronym><acronymword>MODIS</acronymword></acronym> Data</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1808">MODIS</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1809">coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1857">MODIS</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1858">coordinates</indexterm></cindex>
 <para><strong>Main Script</strong>
 </para><example endspaces=" ">
 <verbatiminclude file="xmp/add_crd.sh" spaces=" ">xmp/add_crd.sh</verbatiminclude>
@@ -17961,7 +18892,7 @@ Key steps include:
 </section>
 <node name="Permute-MODIS-Coordinates" spaces=" "><nodename>Permute MODIS Coordinates</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Add Coordinates to MODIS Data</nodeprev><nodeup spaces=" ">CMIP5 Example</nodeup></node>
 <section spaces=" "><sectiontitle>Permute <acronym><acronymword>MODIS</acronymword></acronym> Coordinates</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1810">coordinates, modifying</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1859">coordinates, modifying</indexterm></cindex>
 <!-- c NB: 20140130: @textdegree is in TeXInfo 4.12 but Mac OS X 10.8 ships with 4.8 -->
 <para><acronym><acronymword>MODIS</acronymword></acronym> orders latitude data from 90°N to
 -90°N, and longitude from -180°E to
@@ -18008,7 +18939,7 @@ Here is an example showing:
 </chapter>
 <node name="Parallel" spaces=" "><nodename>Parallel</nodename><nodenext spaces=" ">CCSM Example</nodenext><nodeprev spaces=" ">CMIP5 Example</nodeprev><nodeup spaces=" ">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>Parallel</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1811"><command>parallel</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1860"><command>parallel</command></indexterm></cindex>
 <para>This section will describe scripting strategies, including the use of
 <acronym><acronymword>GNU</acronymword></acronym> Parallel, to <acronym><acronymword>NCO</acronymword></acronym>.
 </para><example endspaces=" ">
@@ -18023,7 +18954,7 @@ ls *historical*.nc | parallel ncks -O -d time,"1950-01-01","2000-
 </chapter>
 <node name="CCSM-Example" spaces=" "><nodename>CCSM Example</nodename><nodenext spaces=" ">mybibnode</nodenext><nodeprev spaces=" ">Parallel</nodeprev><nodeup spaces=" ">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>CCSM Example</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1812">CCSM</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1861">CCSM</indexterm></cindex>
 
 <para>This chapter illustrates how to use <acronym><acronymword>NCO</acronymword></acronym> to
 process and analyze the results of a <acronym><acronymword>CCSM</acronymword></acronym> climate simulation.
diff --git a/man/Makefile.in b/man/Makefile.in
index a19020e..cc8586f 100644
--- a/man/Makefile.in
+++ b/man/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# $Header: /cvsroot/nco/nco/man/Makefile.in,v 1.113 2014/10/22 18:47:06 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/man/Makefile.in,v 1.114 2015/01/07 18:07:24 zender Exp $ -*-makefile-*-
 VPATH = @srcdir@
 am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
diff --git a/man/ncbo.1 b/man/ncbo.1
index 6ececfb..9c876c9 100644
--- a/man/ncbo.1
+++ b/man/ncbo.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncbo.1,v 1.28 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncbo.1,v 1.30 2015/02/09 07:38:06 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncbo
 .\" Usage:
 .\" nroff -man ~/nco/man/ncbo.1 | less
@@ -339,7 +339,7 @@ ncrcat t_anm_8589_??.nc t_anm_8589_0112.nc
 .RE
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncbo.1,v 1.28 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncbo.1,v 1.30 2015/02/09 07:38:06 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
diff --git a/man/ncdiff.1 b/man/ncdiff.1
index 7f9be9a..1b2d865 100644
--- a/man/ncdiff.1
+++ b/man/ncdiff.1
@@ -316,7 +316,7 @@ ncrcat t_anm_8589_??.nc t_anm_8589_0112.nc
 .RE
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncdiff.1,v 1.23 2014/05/29 18:00:26 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncdiff.1,v 1.24 2014/12/31 01:50:06 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
@@ -329,7 +329,7 @@ manual pages written by Charlie Zender and originally formatted by Brian Mays.
 Report bugs to <http://sf.net/bugs/?group_id=3331>.
 
 .SH COPYRIGHT
-Copyright \(co 1995-2014 Charlie Zender
+Copyright \(co 1995-2015 Charlie Zender
 .br
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
diff --git a/man/ncea.1 b/man/ncea.1
index d6ff42f..d834da8 100644
--- a/man/ncea.1
+++ b/man/ncea.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncea.1,v 1.29 2014/05/29 18:00:26 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncea.1,v 1.31 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncea
 .\" Usage:
 .\" nroff -man ~/nco/man/ncea.1 | less
@@ -37,6 +37,10 @@ ncea [\-3] [\-4] [\-6] [\-7] [\-A] [\-\-bfr
 .IR grp_sfx ]
 [\-O] [\-p 
 .IR path ]
+[\-\-ppc 
+.IR var1 [,
+.IR var2 [,...]]=
+.IR prc ]]
 [\-R] [\-r] [\-\-ram_all] [\-t
 .IR thr_nbr ]
 [\--unn] [\-v 
@@ -135,7 +139,7 @@ input files.
 Additionally, only data inside the tropics is included.
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncea.1,v 1.29 2014/05/29 18:00:26 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncea.1,v 1.31 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
diff --git a/man/ncecat.1 b/man/ncecat.1
index 1d884bd..9c2989e 100644
--- a/man/ncecat.1
+++ b/man/ncecat.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncecat.1,v 1.33 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncecat.1,v 1.35 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncecat
 .\" Usage:
 .\" nroff -man ~/nco/man/ncecat.1 | less
@@ -38,6 +38,10 @@ ncecat [\-3] [\-4] [\-6] [\-7] [\-A] [\-\-bfr
 .IR loop ]
 [\-\-no_tmp_fl] [\-O] [\-p 
 .IR path ]
+[\-\-ppc 
+.IR var1 [,
+.IR var2 [,...]]=
+.IR prc ]]
 [\-R] [\-r] [\-\-ram_all] [\-t
 .IR thr_nbr ]
 [\-u 
@@ -121,7 +125,7 @@ It contains 60 months of data (which might or might not be stored in the
 record dimension, depending on the input files).
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncecat.1,v 1.33 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncecat.1,v 1.35 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
diff --git a/man/nces.1 b/man/nces.1
index 4531cbb..a83a375 100644
--- a/man/nces.1
+++ b/man/nces.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/nces.1,v 1.5 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/nces.1,v 1.7 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for nces
 .\" Usage:
 .\" nroff -man ~/nco/man/nces.1 | less
@@ -39,6 +39,10 @@ nces [\-3] [\-4] [\-6] [\-7] [\-A] [\-\-bfr
 .IR grp_sfx ]
 [\-O] [\-p 
 .IR path ]
+[\-\-ppc 
+.IR var1 [,
+.IR var2 [,...]]=
+.IR prc ]]
 [\-R] [\-r] [\-\-ram_all] [\-t
 .IR thr_nbr ]
 [\--unn] [\-v 
@@ -137,7 +141,7 @@ input files.
 Additionally, only data inside the tropics is included.
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/nces.1,v 1.5 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/nces.1,v 1.7 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
diff --git a/man/ncflint.1 b/man/ncflint.1
index 0e48613..1284724 100644
--- a/man/ncflint.1
+++ b/man/ncflint.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncflint.1,v 1.26 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncflint.1,v 1.28 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncflint
 .\" Usage:
 .\" nroff -man ~/nco/man/ncflint.1
@@ -35,6 +35,10 @@ ncflint [\-3] [\-4] [\-6] [\-7] [\-A] [\-\-bfr
 .IR path ]
 [\-\-msa] [\-\-no_tmp_fl] [\-O] [\-p 
 .IR path ]
+[\-\-ppc 
+.IR var1 [,
+.IR var2 [,...]]=
+.IR prc ]]
 [\-R] [\-r] [\-\-ram_all] [\-t
 .IR thr_nbr ]
 [\--unn] [\-v 
@@ -170,7 +174,7 @@ and
 This behavior is hardcoded.
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncflint.1,v 1.26 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncflint.1,v 1.28 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
diff --git a/man/ncks.1 b/man/ncks.1
index c81c92b..d1d58cd 100644
--- a/man/ncks.1
+++ b/man/ncks.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncks.1,v 1.49 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncks.1,v 1.55 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncks
 .\" Usage:
 .\" nroff -man ~/nco/man/ncks.1 | less
@@ -47,6 +47,10 @@ dbg_lvl]
 .IR output-file ] 
 [\-P] [\-p 
 .IR path ]
+[\-\-ppc 
+.IR var1 [,
+.IR var2 [,...]]=
+.IR prc ]]
 [-Q] [\-q]
 [\-R] [\-r] [\-\-rad] [\-\-ram_all] [\-s 
 .IR format ]
@@ -595,7 +599,7 @@ ncks \-d lon,260.,45. in.nc out.nc
 .RE
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncks.1,v 1.49 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncks.1,v 1.55 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
@@ -608,7 +612,7 @@ manual pages written by Charlie Zender and originally formatted by Brian Mays.
 Report bugs to <http://sf.net/bugs/?group_id=3331>.
 
 .SH COPYRIGHT
-Copyright \(co 1995-2014 Charlie Zender
+Copyright \(co 1995-2015 Charlie Zender
 .br
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
diff --git a/man/ncpdq.1 b/man/ncpdq.1
index 75ac549..e3d0f43 100644
--- a/man/ncpdq.1
+++ b/man/ncpdq.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncpdq.1,v 1.32 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncpdq.1,v 1.35 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncpdq 
 .\" Usage:
 .\" nroff -man ~/nco/man/ncpdq.1 | less
@@ -43,6 +43,10 @@ ncpdq [\-3] [\-4] [\-6] [\-7] [\-A] [\-a
 .IR pck_plc ]
 [\-p 
 .IR path ]
+[\-\-ppc 
+.IR var1 [,
+.IR var2 [,...]]=
+.IR prc ]]
 [\-R] [\-r] [\-\-ram_all] [\-t 
 .IR thr_nbr ] 
 [\--unn] [\-v 
@@ -119,7 +123,7 @@ The specified re-ordering will fail if it requires creating more than
 one record dimension amongst all the output variables.
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncpdq.1,v 1.32 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncpdq.1,v 1.35 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
diff --git a/man/ncra.1 b/man/ncra.1
index 02d0817..7d63e0a 100644
--- a/man/ncra.1
+++ b/man/ncra.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncra.1,v 1.38 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncra.1,v 1.40 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncra
 .\" Usage:
 .\" nroff -man ~/nco/man/ncra.1 | less
@@ -39,6 +39,10 @@ ncra [\-3] [\-4] [\-6] [\-7] [\-A] [\-\-bfr
 .IR loop ]
 [\-\-no_cll_mth] [\-\-no_tmp_fl] [\-O] [\-p 
 .IR path ]
+[\-\-ppc 
+.IR var1 [,
+.IR var2 [,...]]=
+.IR prc ]]
 [\-R] [\-r] [\-\-ram_all] [\-\-rec_apn] [\-t
 .IR thr_nbr ]
 [\--unn] [\-v 
@@ -146,7 +150,7 @@ ncra \-d time,6.,54. ??.nc 8506_8906.nc
 .RE
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncra.1,v 1.38 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncra.1,v 1.40 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
diff --git a/man/ncrcat.1 b/man/ncrcat.1
index 484f60c..acbcdc6 100644
--- a/man/ncrcat.1
+++ b/man/ncrcat.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncrcat.1,v 1.33 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncrcat.1,v 1.35 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncrcat
 .\" Usage:
 .\" nroff -man ~/nco/man/ncrcat.1 | less
@@ -39,6 +39,10 @@ ncrcat [\-3] [\-4] [\-6] [\-7] [\-A] [\-\-bfr
 .IR loop]
 [\-\-no_tmp_fl] [\-O] [\-p
 .IR path ]
+[\-\-ppc 
+.IR var1 [,
+.IR var2 [,...]]=
+.IR prc ]]
 [\-R] [\-r] [\-\-ram_all] [\-\-rec_apn] [\-t
 .IR thr_nbr ]
 [\--unn] [\-v 
@@ -165,7 +169,7 @@ and finally to repack the result using
 .B ncpdq.
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncrcat.1,v 1.33 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncrcat.1,v 1.35 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
diff --git a/man/ncrename.1 b/man/ncrename.1
index 51c2a67..13dc125 100644
--- a/man/ncrename.1
+++ b/man/ncrename.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncrename.1,v 1.19 2014/05/29 18:00:26 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncrename.1,v 1.20 2014/12/31 01:50:06 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncrename
 .\" Usage:
 .\" nroff -man ~/nco/man/ncrename.1 | less
@@ -191,7 +191,7 @@ ncrename \-a _FillValue,missing_value \-a Zaire,Congo in.nc out.nc
 .RE
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncrename.1,v 1.19 2014/05/29 18:00:26 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncrename.1,v 1.20 2014/12/31 01:50:06 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
@@ -204,7 +204,7 @@ manual pages written by Charlie Zender and originally formatted by Brian Mays.
 Report bugs to <http://sf.net/bugs/?group_id=3331>.
 
 .SH COPYRIGHT
-Copyright \(co 1995-2014 Charlie Zender
+Copyright \(co 1995-2015 Charlie Zender
 .br
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
diff --git a/man/ncwa.1 b/man/ncwa.1
index fe1513f..467bfae 100644
--- a/man/ncwa.1
+++ b/man/ncwa.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncwa.1,v 1.32 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncwa.1,v 1.34 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncwa
 .\" Usage:
 .\" nroff -man ~/nco/man/ncwa.1 | less
@@ -44,6 +44,10 @@ ncwa [\-3] [\-4] [\-6] [\-7] [\-A] [\-a
 .IR output-file ]
 [\-p 
 .IR path ]
+[\-\-ppc 
+.IR var1 [,
+.IR var2 [,...]]=
+.IR prc ]]
 [\-R] [\-r] [\-\-ram_all] [\-T
 .IR mask_comp ]
 [\-t
@@ -204,7 +208,7 @@ The mathematical definition of operations involving rank reduction
 is given above.
 
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncwa.1,v 1.32 2014/10/31 17:55:56 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncwa.1,v 1.34 2015/02/09 23:29:38 zender Exp $ -*-nroff-*-
 .\" Purpose: Trailer file for common ending to NCO man pages
 .\" Usage: 
 .\" Append this file to end of NCO man pages immediately after marker
diff --git a/qt/libnco/libnco.pro b/qt/libnco/libnco.pro
index b4b91a7..4057f64 100644
--- a/qt/libnco/libnco.pro
+++ b/qt/libnco/libnco.pro
@@ -71,6 +71,7 @@ HEADERS += ../../src/nco/libnco.h \
 ../../src/nco/nco_rth_utl.h \
 ../../src/nco/nco_scl_utl.h \
 ../../src/nco/nco_scm.h \
+../../src/nco/nco_sld.h \
 ../../src/nco/nco_sng_utl.h \
 ../../src/nco/nco_srm.h \
 ../../src/nco/nco_typ.h \
@@ -112,6 +113,7 @@ SOURCES += ../../src/nco/nco_att_utl.c \
 ../../src/nco/nco_rth_flt.c \
 ../../src/nco/nco_rth_utl.c \
 ../../src/nco/nco_scl_utl.c \
+../../src/nco/nco_sld.c \
 ../../src/nco/nco_scm.c \
 ../../src/nco/nco_sng_utl.c \
 ../../src/nco/nco_srm.c \
diff --git a/qt/libnco/libnco.vcxproj b/qt/libnco/libnco.vcxproj
index d751ca2..a0b0d3f 100644
--- a/qt/libnco/libnco.vcxproj
+++ b/qt/libnco/libnco.vcxproj
@@ -152,6 +152,7 @@
     <ClCompile Include="..\..\src\nco\nco_rth_utl.c" />
     <ClCompile Include="..\..\src\nco\nco_scl_utl.c" />
     <ClCompile Include="..\..\src\nco\nco_scm.c" />
+    <ClCompile Include="..\..\src\nco\nco_sld.c" />
     <ClCompile Include="..\..\src\nco\nco_sng_utl.c" />
     <ClCompile Include="..\..\src\nco\nco_srm.c" />
     <ClCompile Include="..\..\src\nco\nco_var_avg.c" />
@@ -196,6 +197,7 @@
     <ClInclude Include="..\..\src\nco\nco_rth_utl.h" />
     <ClInclude Include="..\..\src\nco\nco_scl_utl.h" />
     <ClInclude Include="..\..\src\nco\nco_scm.h" />
+    <ClInclude Include="..\..\src\nco\nco_sld.h" />
     <ClInclude Include="..\..\src\nco\nco_sng_utl.h" />
     <ClInclude Include="..\..\src\nco\nco_srm.h" />
     <ClInclude Include="..\..\src\nco\nco_typ.h" />
diff --git a/src/Makefile.in b/src/Makefile.in
index 26ff6ea..8c02b68 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# $Header: /cvsroot/nco/nco/src/Makefile.in,v 1.111 2014/10/22 18:47:06 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/Makefile.in,v 1.112 2015/01/07 18:07:24 zender Exp $ -*-makefile-*-
 VPATH = @srcdir@
 am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
diff --git a/src/nco++/Makefile.am b/src/nco++/Makefile.am
index 94ea6c6..f371867 100644
--- a/src/nco++/Makefile.am
+++ b/src/nco++/Makefile.am
@@ -1,4 +1,4 @@
-# $Header: /cvsroot/nco/nco/src/nco++/Makefile.am,v 1.28 2014/07/30 22:47:02 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco++/Makefile.am,v 1.30 2015/01/08 20:41:52 zender Exp $ -*-makefile-*-
 
 # Purpose: Template builds for nco++ directory
 # Process this file with automake to produce Makefile.in
@@ -33,7 +33,11 @@ ncoParser.cpp \
 ncoTree.cpp \
 nco_gsl.c
 
-ncap2_LDADD = -lnco -lantlr
+# 20150108 Be sure that netCDF in /usr/local takes precedence over GSL libraries in /usr
+# AKA be sure GSL in /usr does not cause ncap2 linker to search /usr before /usr/local
+NCO_AND_ANTLR_STUFF = -L../nco -lnco -lantlr
+#ncap2_LDADD = -lnco -lantlr
+
 # fxm: 20080515 Takeshi Enomoto reports that MACOSX needs
 # ncap2_LDADD = ../nco/.libs/libnco.dylib -lantlr
 
@@ -44,10 +48,13 @@ ncap2_LDADD = -lnco -lantlr
 if ENABLE_GSL
 GSL_LIB_ARG = $(shell gsl-config --libs)
 GSL_INC_ARG = $(shell gsl-config --cflags)
-ncap2_LDFLAGS = -L../nco ${GSL_LIB_ARG}
-AM_CPPFLAGS = -I./ -I../nco ${GSL_INC_ARG}
+#ncap2_LDFLAGS = -L../nco ${GSL_LIB_ARG}
+ncap2_LDFLAGS = ${NCO_AND_ANTLR_STUFF} ${GSL_LIB_ARG}
+#AM_CPPFLAGS = -I./ -I../nco ${GSL_INC_ARG}
+AM_CPPFLAGS = -I./ -I../nco
 else
-ncap2_LDFLAGS = -L../nco
+#ncap2_LDFLAGS = -L../nco
+ncap2_LDFLAGS = ${NCO_AND_ANTLR_STUFF}
 AM_CPPFLAGS = -I./ -I../nco
 endif
 
diff --git a/src/nco++/Makefile.in b/src/nco++/Makefile.in
index 0267503..ca7cf8c 100644
--- a/src/nco++/Makefile.in
+++ b/src/nco++/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# $Header: /cvsroot/nco/nco/src/nco++/Makefile.in,v 1.100 2014/10/22 18:47:06 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco++/Makefile.in,v 1.103 2015/01/08 20:41:52 zender Exp $ -*-makefile-*-
 
 # Purpose: Template builds for nco++ directory
 # Process this file with automake to produce Makefile.in
@@ -109,7 +109,7 @@ am_ncap2_OBJECTS = Invoke.$(OBJEXT) ncap2.$(OBJEXT) \
 	ncoLexer.$(OBJEXT) ncoParser.$(OBJEXT) ncoTree.$(OBJEXT) \
 	nco_gsl.$(OBJEXT)
 ncap2_OBJECTS = $(am_ncap2_OBJECTS)
-ncap2_DEPENDENCIES =
+ncap2_LDADD = $(LDADD)
 AM_V_lt = $(am__v_lt_ at AM_V@)
 am__v_lt_ = $(am__v_lt_ at AM_DEFAULT_V@)
 am__v_lt_0 = --silent
@@ -367,7 +367,12 @@ ncoParser.cpp \
 ncoTree.cpp \
 nco_gsl.c
 
-ncap2_LDADD = -lnco -lantlr
+
+# 20150108 Be sure that netCDF in /usr/local takes precedence over GSL libraries in /usr
+# AKA be sure GSL in /usr does not cause ncap2 linker to search /usr before /usr/local
+NCO_AND_ANTLR_STUFF = -L../nco -lnco -lantlr
+#ncap2_LDADD = -lnco -lantlr
+
 # fxm: 20080515 Takeshi Enomoto reports that MACOSX needs
 # ncap2_LDADD = ../nco/.libs/libnco.dylib -lantlr
 
@@ -376,10 +381,13 @@ ncap2_LDADD = -lnco -lantlr
 # ncap2_LDFLAGS = -Xcompiler -shared
 @ENABLE_GSL_TRUE at GSL_LIB_ARG = $(shell gsl-config --libs)
 @ENABLE_GSL_TRUE at GSL_INC_ARG = $(shell gsl-config --cflags)
- at ENABLE_GSL_FALSE@ncap2_LDFLAGS = -L../nco
- at ENABLE_GSL_TRUE@ncap2_LDFLAGS = -L../nco ${GSL_LIB_ARG}
+#ncap2_LDFLAGS = -L../nco
+ at ENABLE_GSL_FALSE@ncap2_LDFLAGS = ${NCO_AND_ANTLR_STUFF}
+#ncap2_LDFLAGS = -L../nco ${GSL_LIB_ARG}
+ at ENABLE_GSL_TRUE@ncap2_LDFLAGS = ${NCO_AND_ANTLR_STUFF} ${GSL_LIB_ARG}
 @ENABLE_GSL_FALSE at AM_CPPFLAGS = -I./ -I../nco
- at ENABLE_GSL_TRUE@AM_CPPFLAGS = -I./ -I../nco ${GSL_INC_ARG}
+#AM_CPPFLAGS = -I./ -I../nco ${GSL_INC_ARG}
+ at ENABLE_GSL_TRUE@AM_CPPFLAGS = -I./ -I../nco
 
 # 20060824: *.hpp and *.cpp files are now part of source tree
 # DISTCLEANFILES=ncoLexer.hpp ncoParser.hpp ncoParserTokenTypes.hpp ncoParserTokenTypes.txt ncoTree.hpp
@@ -501,14 +509,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(COMPILE) -c $<
+ at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+ at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
diff --git a/src/nco++/Makefile.old b/src/nco++/Makefile.old
index 03aa500..dcf90bc 100644
--- a/src/nco++/Makefile.old
+++ b/src/nco++/Makefile.old
@@ -1,9 +1,9 @@
-# $Header: /cvsroot/nco/nco/src/nco++/Makefile.old,v 1.134 2014/11/24 19:24:19 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco++/Makefile.old,v 1.139 2015/02/04 22:45:08 zender Exp $ -*-makefile-*-
 
 # Purpose: Makefile for NCO C++ directory nco++
 # Requires GNU Make---AT&T Make chokes on GNU syntax
 
-# Copyright (C) 1994--2014 Charlie Zender
+# Copyright (C) 1994--2015 Charlie Zender
 # License: GNU General Public License (GPL) Version 3
 # See http://www.gnu.org/copyleft/gpl.html for full license text
 
@@ -167,13 +167,21 @@ ifndef NETCDF4_ROOT
  NETCDF4_ROOT := ${NETCDF_ROOT}
 endif
 ifndef NETCDF_INC
+ifdef INC_NCAR
+ NETCDF_INC := ${INC_NCAR} # NCAR module path
+else # endelse INC_NCAR
  NETCDF_INC := ${NETCDF_ROOT}/include # Directory containing netcdf.h
-endif
+endif # endif INC_NCAR
+endif # endif NETCDF_INC
 ifndef NETCDF_LIB
+ifdef LIB_NCAR
+ NETCDF_LIB := ${LIB_NCAR} # NCAR module path
+else # endelse LIB_NCAR
  NETCDF_LIB := ${NETCDF_ROOT}/lib # Directory containing libnetcdf.a
-endif
+endif # endif LIB_NCAR
+endif # endif NETCDF_LIB
 ifndef ${OMP} # OpenMP
- OMP := Y
+ OMP := N
 endif # endif OMP
 ifndef OPTS
  OPTS := O
@@ -209,63 +217,22 @@ endif # endif USR_TKN
 ifndef VRS_SNG
  VRS_SNG := $(shell date +%Y%m%d)
 endif # endif VRS_SNG
-
 # Derived-tokens based on primary tokens
 # These tokens should not be altered by hand
-ifneq (${null},$(findstring LINUX,${PVM_ARCH}))
-# Decide among the plethora of Linux compilers
-ifndef LINUX_CXX
-# C++ compiler for Linux
- LINUX_CXX := g++
- #LINUX_CXX := clang
- #LINUX_CXX := como
- #LINUX_CXX := icpc
- #LINUX_CXX := insure
- #LINUX_CXX := pgCC
-endif # endif LINUX_CXX
-ifndef LINUX_CC
-# C compiler for Linux
- LINUX_CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
- #LINUX_CC := clang
- #LINUX_CC := como --c99
- #LINUX_CC := icc -std=c99 -D_BSD_SOURCE -D_POSIX_SOURCE
- #LINUX_CC := insure
- #LINUX_CC := pgcc
-endif # endif LINUX_CC
-ifndef LINUX_FC
-# Fortran compiler for Linux
- LINUX_FC := g95
- #LINUX_FC := gfortran
- #LINUX_FC := lf95
- #LINUX_FC := ifort
- #LINUX_FC := pgf90
-endif # endif LINUX_CC
-ifeq (${PVM_ARCH},LINUXAMD64)
-ifndef LINUX_CXX
-# GCC 3.3 fails in atomicity.h with -O, -O0, and -O2 so use 3.4 instead 
- LINUX_CXX := g++
-endif # endif LINUX_CXX
-ifndef LINUX_CC
- LINUX_CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
-endif # endif LINUX_CC
-ifndef LINUX_FC
- LINUX_FC := g95
-endif # endif LINUX_FC
-endif # endif LINUXAMD64
-ifeq (${PVM_ARCH},LINUXALPHA)
- LINUX_FC := g77
-endif # endif LINUXALPHA
-endif # endif LINUX
 ifeq (${PRC},D)
  USR_TKN := -DPRC_DBL ${USR_TKN}
 else
  USR_TKN := -DPRC_FLT ${USR_TKN}
 endif # endif PRC
-# Derived-tokens based on primary tokens
-# These tokens should not be altered by hand
 
 # NB: CPP_TKN is recursively expanded variable, define only when components are ready
 CPP_TKN = ${USR_TKN} -D${PVM_ARCH} -DNO_NETCDF_2 -DVERSION='${VRS_SNG}' -DHOSTNAME='${HOST}' -DUSER='${USER}' -DNCO_ABORT_ON_ERROR
+ifndef LFLAGS # Flags for Flex (Lex)
+ LFLAGS := -P${NCO_YY_PFX}
+endif
+ifndef YFLAGS # Flags for Bison (Yacc)
+ YFLAGS := -d --name-prefix=${NCO_YY_PFX}
+endif
 
 # Internationalize NCO with i18n features
 ifeq (${I18N},Y)
@@ -291,6 +258,68 @@ else # !MPI_PRC
  MPI_PRC_SNG :=
 endif # !MPI_PRC
 
+# PnetCDF implies MPI
+ifeq (${PNETCDF},Y)
+ MPI := Y
+endif # !PNETCDF
+
+ifneq (${null},$(findstring LINUX,${PVM_ARCH}))
+# Decide among the plethora of Linux compilers
+ifndef LINUX_CXX
+# C++ compiler for Linux
+ LINUX_CXX := g++
+ #LINUX_CXX := clang
+ #LINUX_CXX := como
+ #LINUX_CXX := icpc
+ #LINUX_CXX := insure
+ #LINUX_CXX := pathCC
+ #LINUX_CXX := pgCC
+endif # endif LINUX_CXX
+ifndef LINUX_CC
+# C compiler for Linux
+ LINUX_CC := gcc -std=c99 -pedantic -D_DEFAULT_SOURCE
+ #LINUX_CC := clang
+ #LINUX_CC := como --c99
+ #LINUX_CC := icc -std=c99 -D_DEFAULT_SOURCE
+ #LINUX_CC := insure
+ #LINUX_CC := nvcc
+ #LINUX_CC := pathcc -std=c99
+ #LINUX_CC := pgcc -c9x
+endif # endif LINUX_CC
+ifndef LINUX_FC
+# Fortran compiler for Linux
+ #LINUX_FC := g95
+ LINUX_FC := gfortran
+ #LINUX_FC := ifort
+ #LINUX_FC := lf95
+ #LINUX_FC := pathf95
+ #LINUX_FC := pgf90
+endif # endif LINUX_CC
+endif # endif LINUX
+
+# OpenMP
+ifeq (${OMP},Y)
+ifdef THR_NBR
+# Pass this OpenMP argument to nco_bm.pl
+ THR_NBR_SNG := "--thr_nbr=${THR_NBR}"
+else # endif THR_NBR
+ THR_NBR_SNG :=
+endif # endif THR_NBR
+endif # endif OMP
+
+ifeq (${RPM},Y)
+# rpm command, and thus RPM variables only guaranteed in RedHat Linux
+# Use recursive expansion so rpm command is not executed on non-RPM systems
+ MDL_RPM_NST_NM = $(shell rpm -qa | grep nco-) # Name of installed package
+# MDL_RPM_PRV_NM = $(shell rpm -qp foo) # Name of package provided by specified RPM
+endif # endif RPM
+
+ifeq (${PVM_ARCH},WIN32)
+ BNR_SFX := .exe
+else
+ BNR_SFX := ${null}
+endif 
+
 ifeq (${GSL},Y)
 # Build GSL-enabled NCO 
 # Place GSL block after DAP blocks for both to work together
@@ -300,7 +329,7 @@ else
  GSL_INC_FLG := $(shell gsl-config --cflags)
 endif # endif GSL_INC
 ifdef GSL_LIB
- GSL_LIB_LIB := -L${GSL_LIB} -lgsl
+ GSL_LIB_FLG := -L${GSL_LIB} -lgsl
 else
  GSL_LIB_FLG := $(shell gsl-config --libs)
 endif # endif GSL_LIB
@@ -327,8 +356,8 @@ endif # end if UDUNITS_LIB
 endif # end if UDUNITS
 
 # At this point we change NETCDF_INC from a directory to a flag
-NC_CFLAGS := $(shell nc-config --cflags)
-NC_LDFLAGS := $(shell nc-config --libs)
+NC_CFLAGS := $(shell ${NETCDF_ROOT}/bin/nc-config --cflags)
+NC_LDFLAGS := $(shell ${NETCDF_ROOT}/bin/nc-config --libs)
 NCO_LDFLAGS := -L${MY_LIB_DIR} -lnco -lnco++
 
 ifeq (${PNETCDF},Y)
@@ -346,10 +375,6 @@ endif
 OTHER_CFLAGS := ${NC_CFLAGS} ${MPI_CFLAGS} ${GSL_INC_FLG} ${UDUNITS_INC_FLG} ${ANTLR_INC}
 OTHER_LDFLAGS := ${NCO_LDFLAGS} ${NC_LDFLAGS} ${MPI_LDFLAGS} ${GSL_LIB_FLG} ${UDUNITS_LIB_FLG} ${ANTLR_LIB}
 
-# sort removes duplicates but unfortunately changes precedence too
-# fxm: use uniq instead
-#TMP_LDFLAGS := $(sort ${TMP_LDFLAGS})
-
 # NB: Do NOT add comment lines, e.g., # This is a comma, to character definitions
 null :=
 space := ${null} ${null}
@@ -363,12 +388,6 @@ slash := /
 MY_OBJ_DIR_RX := $(subst ${slash},${slash_rx},${MY_OBJ_DIR})
 MY_DPN_DIR_RX := $(subst ${slash},${slash_rx},${MY_DPN_DIR})
 
-ifeq (${PVM_ARCH},WIN32)
- BNR_SFX := .exe
-else
- BNR_SFX := ${null}
-endif 
-
 # Automagically generated grammar
 NCAP2_ANTLR_GENERATED_CC_STB := ncoLexer ncoParser ncoTree
 NCAP2_ANTLR_GENERATED_HH_STB := ${NCAP2_ANTLR_GENERATED_CC_STB} ncoParserTokenTypes
diff --git a/src/nco++/fmc_all_cls.cc b/src/nco++/fmc_all_cls.cc
index 2e70dc4..513dd70 100644
--- a/src/nco++/fmc_all_cls.cc
+++ b/src/nco++/fmc_all_cls.cc
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/fmc_all_cls.cc,v 1.71 2014/10/31 11:19:38 hmb Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/fmc_all_cls.cc,v 1.72 2014/12/31 01:50:08 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor class methods: families of functions/methods */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "fmc_all_cls.hh"
diff --git a/src/nco++/fmc_all_cls.hh b/src/nco++/fmc_all_cls.hh
index 3fe893a..e8245eb 100644
--- a/src/nco++/fmc_all_cls.hh
+++ b/src/nco++/fmc_all_cls.hh
@@ -1,8 +1,8 @@
 /* Purpose: netCDF arithmetic processor class methods */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Standard C++ headers
diff --git a/src/nco++/fmc_cls.hh b/src/nco++/fmc_cls.hh
index 8daf511..45d480e 100644
--- a/src/nco++/fmc_cls.hh
+++ b/src/nco++/fmc_cls.hh
@@ -1,8 +1,8 @@
 /* Purpose: netCDF arithmetic processor class methods */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Standard C++ headers
diff --git a/src/nco++/fmc_gsl_cls.cc b/src/nco++/fmc_gsl_cls.cc
index 5d29781..598b7ca 100644
--- a/src/nco++/fmc_gsl_cls.cc
+++ b/src/nco++/fmc_gsl_cls.cc
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/fmc_gsl_cls.cc,v 1.70 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/fmc_gsl_cls.cc,v 1.72 2015/02/07 05:42:35 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor class methods for GSL */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "fmc_gsl_cls.hh"
@@ -2829,7 +2829,7 @@ var_sct *gsl_cls::hnd_fnc_uerx(bool& is_mtd,std::vector<RefAST>&args_vtr,gpr_cls
       /* bomb out if max value of number generator can't be held in regular int */
       if( NCO_TYP_GSL_UINT==NC_INT &&  rng_max_lng > INT_MAX ){
         ostringstream os; 
-        os<<"Possible integer overflow. You are using the random number generator \"" <<rng_nm_sng<<"\". This can return a value up to "<<rng_max_lng<<". This is greater than "<<INT_MAX<<" - the maximium value that can be stored in the netcdf datatype NC_INT. Consider using another random number generator e.g., ran0,fishman18 or knuthran. Consult the GSL manual for details. Alternatively recompile nco for netcdf4 and set the compile flag NCO_TYP_GSL_UINT=NC_UINT\n"; 
+        os<<"Possible integer overflow. You are using the random number generator \"" <<rng_nm_sng<<"\". This can return a value up to "<<rng_max_lng<<". This is greater than "<<INT_MAX<<" - the maximum value that can be stored in the netcdf datatype NC_INT. Consider using another random number generator e.g., ran0,fishman18 or knuthran. Consult the GSL manual for details. Alternatively recompile nco for netcdf4 and set the compile flag NCO_TYP_GSL_UINT=NC_UINT\n"; 
 
         err_prn(sfnm,os.str());
       } 
@@ -2876,7 +2876,7 @@ var_sct *gsl_cls::hnd_fnc_uerx(bool& is_mtd,std::vector<RefAST>&args_vtr,gpr_cls
           if( ui64p[idx]>INT_MAX ) {
 	    // bomb out if necessary  
             ostringstream os; 
-            os<<"Possible integer overflow. You have rquested the generation of integers up to the value of " <<ui64p[idx]<<" .This is greater than "<<INT_MAX<<" - the maximium value that can be stored in the netcdf datatype NC_INT. Consider using another random number generator e.g., ran0,fishman18 or knuthran. Consult the GSL manual for details. Alternatively recompile nco for netcdf4 and set the compile flag NCO_TYP_GSL_UINT=NC_UINT\n"; 
+            os<<"Possible integer overflow. You have rquested the generation of integers up to the value of " <<ui64p[idx]<<" .This is greater than "<<INT_MAX<<" - the maximum value that can be stored in the netcdf datatype NC_INT. Consider using another random number generator e.g., ran0,fishman18 or knuthran. Consult the GSL manual for details. Alternatively recompile nco for netcdf4 and set the compile flag NCO_TYP_GSL_UINT=NC_UINT\n"; 
             err_prn(sfnm,os.str());
           }
           
diff --git a/src/nco++/fmc_gsl_cls.hh b/src/nco++/fmc_gsl_cls.hh
index 2194642..11cff2d 100644
--- a/src/nco++/fmc_gsl_cls.hh
+++ b/src/nco++/fmc_gsl_cls.hh
@@ -1,8 +1,8 @@
 /* Purpose: netCDF arithmetic processor class methods */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #ifndef FMC_GSL_CLS_HH // Contents have not yet been inserted in current source file  
diff --git a/src/nco++/libnco++.hh b/src/nco++/libnco++.hh
index f04083a..3cf5dce 100644
--- a/src/nco++/libnco++.hh
+++ b/src/nco++/libnco++.hh
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco++/libnco++.hh,v 1.22 2014/06/15 21:06:24 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco++/libnco++.hh,v 1.23 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Prototypes, typedefs, and global variables for libnco++
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* libnco++.hh headers depend on system headers and libnco.a headers
diff --git a/src/nco++/ncap2.cc b/src/nco++/ncap2.cc
index 6db2a78..9f92eeb 100644
--- a/src/nco++/ncap2.cc
+++ b/src/nco++/ncap2.cc
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/ncap2.cc,v 1.200 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncap2.cc,v 1.203 2015/02/07 05:42:36 zender Exp $ */
 
 /* ncap2 -- netCDF arithmetic processor */
 
 /* Purpose: Compute user-defined derived fields using forward algebraic notation applied to netCDF files */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -144,8 +144,8 @@ main(int argc,char **argv)
   char *spt_arg[NCAP_SPT_NBR_MAX]; /* fxm: Arbitrary size, should be dynamic */
   char *spt_arg_cat=NULL_CEWI; /* [sng] User-specified script */
   
-  const char * const CVS_Id="$Id: ncap2.cc,v 1.200 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.200 $";
+  const char * const CVS_Id="$Id: ncap2.cc,v 1.203 2015/02/07 05:42:36 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.203 $";
   const char * const att_nm_tmp="eulaVlliF_"; /* For netCDF4 name hack */
   const char * const opt_sht_lst="3467ACcD:FfhL:l:n:Oo:p:Rrs:S:t:vx-:"; /* [sng] Single letter command line options */
   
@@ -235,6 +235,8 @@ main(int argc,char **argv)
       {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
       {"hdf_upk",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
       {"hdf_unpack",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
+      {"lbr",no_argument,0,0},
+      {"library",no_argument,0,0},
       {"ram_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
       {"create_ram",no_argument,0,0}, /* [flg] Create file in RAM */
       {"open_ram",no_argument,0,0}, /* [flg] Open (netCDF3) file(s) in RAM */
@@ -369,6 +371,10 @@ main(int argc,char **argv)
         if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
       } /* endif "hdr_pad" */
       if(!strcmp(opt_crr,"hdf_upk") || !strcmp(opt_crr,"hdf_unpack")) nco_upk_cnv=nco_upk_HDF; /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
+      if(!strcmp(opt_crr,"lbr") || !strcmp(opt_crr,"library")){
+        (void)nco_lbr_vrs_prn();
+        nco_exit(EXIT_SUCCESS);
+      } /* endif "lbr" */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"create_ram") || !strcmp(opt_crr,"diskless_all")) RAM_CREATE=True; /* [flg] Open (netCDF3) file(s) in RAM */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"open_ram") || !strcmp(opt_crr,"diskless_all")) RAM_OPEN=True; /* [flg] Create file in RAM */
       if(!strcmp(opt_crr,"vrs") || !strcmp(opt_crr,"version")){
@@ -960,7 +966,7 @@ main(int argc,char **argv)
     } /* end else */
     /* Check size */
     if(att_item.sz > NC_MAX_ATTRS ){ 
-      (void)fprintf(stdout,"%s: Attribute %s size %ld excceeds maximium %d\n",nco_prg_nm_get(),att_item.att_nm,att_item.sz, NC_MAX_ATTRS );
+      (void)fprintf(stdout,"%s: Attribute %s size %ld excceeds maximum %d\n",nco_prg_nm_get(),att_item.att_nm,att_item.sz, NC_MAX_ATTRS );
       goto cln_up;
     } /* end if */
     /* NB: These attributes should probably be written prior to last data mode */
diff --git a/src/nco++/ncap2_utl.cc b/src/nco++/ncap2_utl.cc
index d46fb20..5f874e3 100644
--- a/src/nco++/ncap2_utl.cc
+++ b/src/nco++/ncap2_utl.cc
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/ncap2_utl.cc,v 1.162 2014/11/04 19:40:22 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncap2_utl.cc,v 1.165 2015/01/20 18:20:15 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "ncap2_utl.hh"
@@ -984,7 +984,7 @@ ncap_var_stretch /* [fnc] Stretch variables */
       /* Decide whether var_lsr and var_gtr dimensions conform, are mutually exclusive, or are partially exclusive */ 
       if(var_lsr_var_gtr_dmn_shr_nbr == var_lsr->nbr_dim){
 	/* var_lsr and var_gtr conform */
-	/* fxm: Variables do not conform when dimension list of one is subset of other if order of dimensions differs, i.e., a(lat,lev,lon) !~ b(lon,lev) */
+	/* fxm: Variables do not conform when dimen<_cstsion list of one is subset of other if order of dimensions differs, i.e., a(lat,lev,lon) !~ b(lon,lev) */
 	CONFORMABLE=True;
       }else if(var_lsr_var_gtr_dmn_shr_nbr == 0){
 	/* Dimensions in var_lsr and var_gtr are mutually exclusive */
@@ -1057,7 +1057,7 @@ ncap_var_stretch /* [fnc] Stretch variables */
     //(void)fprintf(stdout,"\n%s: WARNING Convolution not yet implemented, results of operation between %s and %s are unpredictable\n",nco_prg_nm_get(),var_lsr->nm,var_gtr->nm);
     /* Dimensions in convolution are union of dimensions in variables */
     dmn_nbr=var_lsr->nbr_dim+var_gtr->nbr_dim-var_lsr_var_gtr_dmn_shr_nbr; /* Number of dimensions in convolution */
-    dmn_nbr=dmn_nbr; /* CEWI: Avert compiler warning that variable is set but never used */
+    dmn_nbr+=0; /* CEWI */
     /* fxm: these should go away soon */
     var_lsr_out=nco_var_dpl(var_lsr);
     var_gtr_out=nco_var_dpl(var_gtr);
@@ -1218,6 +1218,7 @@ nco_bool
 ncap_def_dim(
 	     std::string dmn_nm,
 	     long sz,
+             bool bunlimited,   /* true unlimited, false limited */
 	     prs_cls *prs_arg){
   const char fnc_nm[]="ncap_def_dim"; 
 
@@ -1235,11 +1236,15 @@ ncap_def_dim(
     return False;
   }
 
+  is_rec_dmn= ( bunlimited==true ? True : False);
+
   /** hidden feature if size negative then this indicates a record dimension */  
   if( sz < 0 ){
      sz=-sz; 
      is_rec_dmn=True;
   }      
+ 
+    
 
   /*   
   if( sz < 0  ){
@@ -2010,13 +2015,14 @@ ncap_cst_mk( /* [fnc] create casting var from a list of dims */
   if(bdef)
     (void)nco_enddef(prs_arg->out_id);
   
-  /* Check that un-limited dimension is first dimension */
-  for(idx=1;idx<dmn_nbr;idx++)
-    if(dmn[idx]->is_rec_dmn){
-      wrn_prn(fnc_nm,"\""+std::string(dmn[idx]->nm)+"\" is the record dimension. It must be the first dimension in a list");
-      goto end_LHS_sbs;                     
-    } /* endif */
-  
+  /* Check that un-limited dimension is first dimension for netcdf3 files only */
+  if( prs_arg->fl_out_fmt != NC_FORMAT_NETCDF4 ){
+    for(idx=1;idx<dmn_nbr;idx++)
+      if(dmn[idx]->is_rec_dmn){
+        wrn_prn(fnc_nm,"\""+std::string(dmn[idx]->nm)+"\" is the record dimension. It must be the first dimension in a list***");
+        goto end_LHS_sbs;                     
+      } /* endif */
+  }
   /* Create template variable to cast all RHS expressions */
   var=(var_sct *)nco_malloc(sizeof(var_sct));
   
diff --git a/src/nco++/ncap2_utl.hh b/src/nco++/ncap2_utl.hh
index 1af0ed8..b1e7af7 100644
--- a/src/nco++/ncap2_utl.hh
+++ b/src/nco++/ncap2_utl.hh
@@ -1,5 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/ncap2_utl.hh,v 1.21 2014/06/15 21:06:24 zender Exp $ */
-
+/* $Header: /cvsroot/nco/nco/src/nco++/ncap2_utl.hh,v 1.22 2014/12/08 16:05:06 hmb Exp $ */
 /* Purpose: netCDF arithmetic processor definitions and function prototypes for ncap.c, ncap_utl.c, ncap_lex.l, and ncap_yacc.y */
 
 /* Copyright (C) 1995--2014 Charlie Zender
@@ -107,6 +106,13 @@ var_sct *      /* initialize var to defaults & undefined to true */
 ncap_var_udf
 (const char *var_nm);
  
+
+int 
+ncap_att_cpy_sct
+(var_sct *var1,
+ var_sct *var2,
+ prs_cls  *prs_arg);
+
 int             
 ncap_att_cpy
 (const std::string s_dst,
@@ -183,6 +189,7 @@ nco_bool
 ncap_def_dim(
 std::string dmn_nm,
 long sz,
+bool ltype,
 prs_cls *prs_arg);
 
 nco_bool /* O [flg] Variables now conform */
diff --git a/src/nco++/ncoEnumTokenTypes.hpp b/src/nco++/ncoEnumTokenTypes.hpp
index a003430..505c397 100644
--- a/src/nco++/ncoEnumTokenTypes.hpp
+++ b/src/nco++/ncoEnumTokenTypes.hpp
@@ -33,92 +33,94 @@
 		VRSORT = 25,
 		VABS = 26,
 		VSQR2 = 27,
-		SEMI = 28,
-		DEFDIM = 29,
-		LPAREN = 30,
-		NSTRING = 31,
-		COMMA = 32,
-		RPAREN = 33,
-		WHILE = 34,
-		BREAK = 35,
-		CONTINUE = 36,
-		IF = 37,
-		ELSE = 38,
-		WHERE = 39,
-		ELSEWHERE = 40,
-		PRINT = 41,
-		VAR_ID = 42,
-		ATT_ID = 43,
-		LCURL = 44,
-		RCURL = 45,
-		FOR = 46,
-		COLON = 47,
-		LSQUARE = 48,
-		DIM_ID = 49,
-		RSQUARE = 50,
-		DIVIDE = 51,
-		DIM_MTD_ID = 52,
-		CALL_REF = 53,
-		DOT = 54,
-		FUNC = 55,
-		INC = 56,
-		DEC = 57,
-		LNOT = 58,
-		PLUS = 59,
-		MINUS = 60,
-		TIMES = 61,
-		CARET = 62,
-		MOD = 63,
-		FLTHAN = 64,
-		FGTHAN = 65,
-		LTHAN = 66,
-		GTHAN = 67,
-		GEQ = 68,
-		LEQ = 69,
-		EQ = 70,
-		NEQ = 71,
-		LAND = 72,
-		LOR = 73,
-		QUESTION = 74,
-		ASSIGN = 75,
-		PLUS_ASSIGN = 76,
-		MINUS_ASSIGN = 77,
-		TIMES_ASSIGN = 78,
-		DIVIDE_ASSIGN = 79,
-		FLOAT = 80,
-		DOUBLE = 81,
-		INT = 82,
-		BYTE = 83,
-		UBYTE = 84,
-		SHORT = 85,
-		USHORT = 86,
-		UINT = 87,
-		INT64 = 88,
-		UINT64 = 89,
-		N4STRING = 90,
-		DIM_ID_SIZE = 91,
-		NRootAST = 92,
-		SHIFTL = 93,
-		SHIFTR = 94,
-		QUOTE = 95,
-		DGT = 96,
-		LPH = 97,
-		LPHDGT = 98,
-		XPN = 99,
-		VAR_NM_QT = 100,
-		BLASTOUT = 101,
-		UNUSED_OPS = 102,
-		WS = 103,
-		CXX_COMMENT = 104,
-		C_COMMENT = 105,
-		NUMBER_DOT = 106,
-		NUMBER = 107,
-		VAR_ATT = 108,
-		VAR_ATT_QT = 109,
-		DIM_QT = 110,
-		DIM_VAL = 111,
-		INCLUDE = 112,
-		LMT_DMN = 113,
+		DEFDIM = 28,
+		SEMI = 29,
+		DEFDIMA = 30,
+		DEFDIMU = 31,
+		LPAREN = 32,
+		NSTRING = 33,
+		COMMA = 34,
+		RPAREN = 35,
+		WHILE = 36,
+		BREAK = 37,
+		CONTINUE = 38,
+		IF = 39,
+		ELSE = 40,
+		WHERE = 41,
+		ELSEWHERE = 42,
+		PRINT = 43,
+		VAR_ID = 44,
+		ATT_ID = 45,
+		LCURL = 46,
+		RCURL = 47,
+		FOR = 48,
+		COLON = 49,
+		LSQUARE = 50,
+		DIM_ID = 51,
+		RSQUARE = 52,
+		DIVIDE = 53,
+		DIM_MTD_ID = 54,
+		CALL_REF = 55,
+		DOT = 56,
+		FUNC = 57,
+		INC = 58,
+		DEC = 59,
+		LNOT = 60,
+		PLUS = 61,
+		MINUS = 62,
+		TIMES = 63,
+		CARET = 64,
+		MOD = 65,
+		FLTHAN = 66,
+		FGTHAN = 67,
+		LTHAN = 68,
+		GTHAN = 69,
+		GEQ = 70,
+		LEQ = 71,
+		EQ = 72,
+		NEQ = 73,
+		LAND = 74,
+		LOR = 75,
+		QUESTION = 76,
+		ASSIGN = 77,
+		PLUS_ASSIGN = 78,
+		MINUS_ASSIGN = 79,
+		TIMES_ASSIGN = 80,
+		DIVIDE_ASSIGN = 81,
+		FLOAT = 82,
+		DOUBLE = 83,
+		INT = 84,
+		BYTE = 85,
+		UBYTE = 86,
+		SHORT = 87,
+		USHORT = 88,
+		UINT = 89,
+		INT64 = 90,
+		UINT64 = 91,
+		N4STRING = 92,
+		DIM_ID_SIZE = 93,
+		NRootAST = 94,
+		SHIFTL = 95,
+		SHIFTR = 96,
+		QUOTE = 97,
+		DGT = 98,
+		LPH = 99,
+		LPHDGT = 100,
+		XPN = 101,
+		VAR_NM_QT = 102,
+		BLASTOUT = 103,
+		UNUSED_OPS = 104,
+		WS = 105,
+		CXX_COMMENT = 106,
+		C_COMMENT = 107,
+		NUMBER_DOT = 108,
+		NUMBER = 109,
+		VAR_ATT = 110,
+		VAR_ATT_QT = 111,
+		DIM_QT = 112,
+		DIM_VAL = 113,
+		INCLUDE = 114,
+		LMT_DMN = 115,
 		NULL_TREE_LOOKAHEAD = 3
 	};
 #endif /*INC_ncoEnumTokenTypes_hpp_*/
diff --git a/src/nco++/ncoGrammer.g b/src/nco++/ncoGrammer.g
index d76a84d..4fc8ada 100644
--- a/src/nco++/ncoGrammer.g
+++ b/src/nco++/ncoGrammer.g
@@ -1,11 +1,11 @@
 header {
-/* $Header: /cvsroot/nco/nco/src/nco++/ncoGrammer.g,v 1.207 2014/06/15 21:06:25 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncoGrammer.g,v 1.212 2014/12/31 01:50:08 zender Exp $ */
 
 /* Purpose: ANTLR Grammar and support files for ncap2 */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
     // C Standard Headers
@@ -78,6 +78,7 @@ tokens {
     VRSORT;     // reverse sort only used outside of grammer to sort in VarOp 
     VABS;      // imaginary token used in VarOp to return absolute value 
     VSQR2;     // imaginary token used in VarOp to return square of number 
+    DEFDIM;
 }
 {
 
@@ -98,8 +99,14 @@ statement:
             #statement = #(#[EXPR,"EXPR"],#statement); 
         }
         
-        //Define Dim statement
-        | DEFDIM^ LPAREN! NSTRING COMMA! expr RPAREN! SEMI!
+        // Define DEFDIM statment 
+        // DEFDIMA (regular call - limited or unlimited ) DEFDIM(1)
+        // DEFDIMU (explicitly unlimited)                 DEFDIM(0)
+        | (def1:DEFDIMA^ |def2:DEFDIMU^  ) LPAREN! NSTRING COMMA! expr (COMMA! expr)?  RPAREN! SEMI! { 
+             if( #def1 ){  #def1->setType(DEFDIM);#def1->setText("1");}
+             if( #def2 ){  #def2->setType(DEFDIM);#def2->setText("0");}
+ 
+        }
         // while loop
         | WHILE^ LPAREN! expr RPAREN! statement 
         // for statement
@@ -301,7 +308,6 @@ tokens {
     ELSE="else";
     WHERE="where";
     ELSEWHERE="elsewhere";
-    DEFDIM="defdim";
     SHIFTL="<<";
     SHIFTR=">>";
 
@@ -309,10 +315,17 @@ tokens {
     CONTINUE="continue";
     WHILE="while";    
     FOR="for";
-
+   
     PRINT="print";  
+    DEFDIMA="defdim";
+    DEFDIMU="defdimunlim";
  
     /*
+
+
+    LIMITED="LIMITED";
+    UNLIMITED="UNLIMITED";
+
     RAM_DELETE="ram_delete";
     RAM_WRITE="ram_write";
     SET_MISS="set_miss";
@@ -511,6 +524,7 @@ NUMBER:
     )?        
 ;
 
+
 // Return var or att (var_nm at att_nm)
 VAR_ATT options {testLiterals=true; paraphrase="variable or function or attribute identifier"; } 
      :  (LPH)(LPH|DGT)*   
@@ -549,6 +563,7 @@ VAR_ATT options {testLiterals=true; paraphrase="variable or function or attribut
            ('@'(LPH)(LPH|DGT)*  {$setType(ATT_ID); })?
 ;
 
+
 // Return a quoted var or att (var_nm at att_nm)
 VAR_ATT_QT :( '\''!)
                 VAR_NM_QT  {$setType(VAR_ID);}
@@ -969,7 +984,8 @@ lmt_peek returns [int nbr_dmn=0]
 
 statements returns [int iret=0] 
 {
-var_sct *var;
+var_sct *var=NULL;
+var_sct *var2=NULL;
 const std::string fnc_nm("statements");
 // list of while/for loops entered n.b depth is lpp_vtr.size()
 // Temporary fix so call run_exe only does a single parse in the
@@ -1172,17 +1188,46 @@ static std::vector<std::string> lpp_vtr;
     | BREAK { iret=BREAK;}
     | CONTINUE {iret=CONTINUE;} 
     | NULL_NODE { iret=NULL_NODE; }
-   
-    |#(DEFDIM def:NSTRING  var=out){
-            
+
+    |#(dtyp:DEFDIM def:NSTRING  var=out (var2=out)? ){
+
+        bool bunlimited=false;      
+        int ityp;  
+        int dCall;  
         long sz;
-        var=nco_var_cnf_typ((nc_type)NC_INT64,var);
+         
+        // 0 - specific - UNLIMITED    
+        // 1 - regular LIMITED or UNLIMITED
+        dCall=atoi(dtyp->getText().c_str());    
         iret=DEFDIM;
-
+ 
+        var=nco_var_cnf_typ((nc_type)NC_INT64,var);
         (void)cast_void_nctype((nc_type)NC_INT64,&var->val);
         sz=var->val.i64p[0];
         var=(var_sct*)nco_var_free(var);
-        (void)ncap_def_dim(def->getText(),sz,prs_arg);
+
+        if( dCall==0 ){ 
+          bunlimited =true;
+        } else    
+        if(dCall==1 && var2){
+           int ityp;
+           // nb var2 is in upper scope - defined at statment action start
+           var2=nco_var_cnf_typ(NC_INT,var2);
+           (void)cast_void_nctype(NC_INT,&var2->val);
+           ityp=var2->val.ip[0]; 
+           (void)cast_nctype_void(NC_INT,&var2->val);
+           var2=nco_var_free(var2);
+
+           if( ityp==0)
+              bunlimited=true;
+           else if( ityp==1 )  
+              bunlimited=false;
+           else    
+              err_prn(fnc_nm,"defdim for "+ def->getText() + ". Third argument must be 0 for \"UNLIMITED\" or 1 for \"LIMITED\" or void"); 
+
+        } 
+
+        (void)ncap_def_dim(def->getText(),sz,bunlimited,prs_arg);
      }
 
     // All the following functions have iret=0
@@ -1191,6 +1236,7 @@ static std::vector<std::string> lpp_vtr;
           int var_id;
           int fl_id=-1;
           char *fmt_sng;
+         
           std::string va_nm(pvid->getText());
           NcapVar *Nvar;
           
@@ -1573,11 +1619,14 @@ var=NULL_CEWI;
                if(!Nvar || ( Nvar && Nvar->flg_stt==1)){              
                   // if var isn't in ouptut then copy it there
                  //rcd=nco_inq_varid_flg(prs_arg->out_id,var_nm,&var_id);
+                 
                  var_lhs=prs_arg->ncap_var_init(var_nm,true);
 
                  // copy atts to output
                  (void)ncap_att_cpy(var_nm,var_nm,prs_arg);
                  (void)prs_arg->ncap_var_write(var_lhs,false);
+
+                 wrn_prn(fnc_nm,"Var being read and written in ASSIGN "+ var_nm); 
                }
  
                // Get "new" var_id   
@@ -2206,6 +2255,9 @@ out_asn returns [var_sct *var]
 {
 const std::string fnc_nm("assign_asn");
 var=NULL_CEWI; 
+string var_nm_s; 
+NcapVar *Nvar;
+   
 }
 
    : #(UTIMES vid1:VAR_ID)
@@ -2213,7 +2265,14 @@ var=NULL_CEWI;
           if(vid1->getFirstChild())
                err_prn(fnc_nm,"Invalid Lvalue " +vid1->getText() );
 
-          var=prs_arg->ncap_var_init(vid1->getText(),true);
+          //do attribute inheritance 
+          var_nm_s=vid1->getText(); 
+ 
+          Nvar=prs_arg->var_vtr.find(var_nm_s);
+          if( !Nvar || Nvar->flg_stt==1 ) 
+               ncap_att_cpy(var_nm_s,var_nm_s,prs_arg);
+  
+          var=prs_arg->ncap_var_init(var_nm_s,true);
           if(var== NULL_CEWI){
                nco_exit(EXIT_FAILURE);
           }
@@ -2221,10 +2280,18 @@ var=NULL_CEWI;
         }
 	|   vid:VAR_ID       
         { 
+          var_nm_s=vid->getText();  
           if(vid->getFirstChild())
                err_prn(fnc_nm,"Invalid Lvalue " +vid->getText() );
 
-          var=prs_arg->ncap_var_init(vid->getText(),true);
+          //do attribute inheritance
+
+          Nvar=prs_arg->var_vtr.find(var_nm_s);
+
+          if( !Nvar || Nvar->flg_stt==1 ) 
+               ncap_att_cpy(var_nm_s,var_nm_s,prs_arg);
+
+          var=prs_arg->ncap_var_init(var_nm_s,true);
           if(var== NULL_CEWI){
                nco_exit(EXIT_FAILURE);
           }
@@ -2418,7 +2485,7 @@ var=NULL_CEWI;
 ;
 
 //where calculate 
-where_assign [var_sct *var_msk] returns [bool bret]
+where_assign [var_sct *var_msk] returns [bool bret=false]
 {
 const std::string fnc_nm("where_assign");
 var_sct *var_rhs;
diff --git a/src/nco++/ncoLexer.cpp b/src/nco++/ncoLexer.cpp
index da50109..c554d61 100644
--- a/src/nco++/ncoLexer.cpp
+++ b/src/nco++/ncoLexer.cpp
@@ -30,18 +30,19 @@ ncoLexer::ncoLexer(const ANTLR_USE_NAMESPACE(antlr)LexerSharedInputState& state)
 
 void ncoLexer::initLiterals()
 {
-	literals["<<"] = 93;
-	literals["for"] = 46;
-	literals["print"] = 41;
-	literals["where"] = 39;
-	literals["elsewhere"] = 40;
-	literals["continue"] = 36;
-	literals["while"] = 34;
-	literals[">>"] = 94;
-	literals["break"] = 35;
-	literals["if"] = 37;
-	literals["else"] = 38;
-	literals["defdim"] = 29;
+	literals["<<"] = 95;
+	literals["for"] = 48;
+	literals["print"] = 43;
+	literals["defdimunlim"] = 31;
+	literals["where"] = 41;
+	literals["elsewhere"] = 42;
+	literals["continue"] = 38;
+	literals["while"] = 36;
+	literals[">>"] = 96;
+	literals["break"] = 37;
+	literals["if"] = 39;
+	literals["else"] = 40;
+	literals["defdim"] = 30;
 }
 
 ANTLR_USE_NAMESPACE(antlr)RefToken ncoLexer::nextToken()
@@ -1174,18 +1175,18 @@ void ncoLexer::mXPN(bool _createToken) {
 	}
 	}
 	{ // ( ... )+
-	int _cnt138=0;
+	int _cnt140=0;
 	for (;;) {
 		if (((LA(1) >= 0x30 /* '0' */  && LA(1) <= 0x39 /* '9' */ ))) {
 			matchRange('0','9');
 		}
 		else {
-			if ( _cnt138>=1 ) { goto _loop138; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
+			if ( _cnt140>=1 ) { goto _loop140; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
 		}
 		
-		_cnt138++;
+		_cnt140++;
 	}
-	_loop138:;
+	_loop140:;
 	}  // ( ... )+
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
 	   _token = makeToken(_ttype);
@@ -1201,7 +1202,7 @@ void ncoLexer::mVAR_NM_QT(bool _createToken) {
 	ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
 	
 	{ // ( ... )+
-	int _cnt141=0;
+	int _cnt143=0;
 	for (;;) {
 		switch ( LA(1)) {
 		case 0x30 /* '0' */ :
@@ -1303,12 +1304,12 @@ void ncoLexer::mVAR_NM_QT(bool _createToken) {
 		}
 		default:
 		{
-			if ( _cnt141>=1 ) { goto _loop141; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
+			if ( _cnt143>=1 ) { goto _loop143; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
 		}
 		}
-		_cnt141++;
+		_cnt143++;
 	}
-	_loop141:;
+	_loop143:;
 	}  // ( ... )+
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
 	   _token = makeToken(_ttype);
@@ -1324,7 +1325,7 @@ void ncoLexer::mBLASTOUT(bool _createToken) {
 	ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
 	
 	matchNot(EOF/*_CHAR*/);
-#line 436 "ncoGrammer.g"
+#line 449 "ncoGrammer.g"
 	
 	// blast out of lexer & parser
 	// Can't use RecognitionException() as 
@@ -1339,7 +1340,7 @@ void ncoLexer::mBLASTOUT(bool _createToken) {
 	ANTLR_USE_NAMESPACE(antlr)RecognitionException re(os.str());
 	throw  ANTLR_USE_NAMESPACE(antlr)TokenStreamRecognitionException(re);
 	
-#line 1343 "ncoLexer.cpp"
+#line 1344 "ncoLexer.cpp"
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
 	   _token = makeToken(_ttype);
 	   _token->setText(text.substr(_begin, text.length()-_begin));
@@ -1381,7 +1382,7 @@ void ncoLexer::mUNUSED_OPS(bool _createToken) {
 	}
 	}
 	}
-#line 452 "ncoGrammer.g"
+#line 465 "ncoGrammer.g"
 	
 	
 	ostringstream os;
@@ -1391,7 +1392,7 @@ void ncoLexer::mUNUSED_OPS(bool _createToken) {
 	ANTLR_USE_NAMESPACE(antlr)RecognitionException re(os.str());
 	throw  ANTLR_USE_NAMESPACE(antlr)TokenStreamRecognitionException(re);
 	
-#line 1395 "ncoLexer.cpp"
+#line 1396 "ncoLexer.cpp"
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
 	   _token = makeToken(_ttype);
 	   _token->setText(text.substr(_begin, text.length()-_begin));
@@ -1415,9 +1416,9 @@ void ncoLexer::mWS(bool _createToken) {
 	case 0x9 /* '\t' */ :
 	{
 		match('\t' /* charlit */ );
-#line 465 "ncoGrammer.g"
+#line 478 "ncoGrammer.g"
 		tab();
-#line 1421 "ncoLexer.cpp"
+#line 1422 "ncoLexer.cpp"
 		break;
 	}
 	case 0xc /* '\14' */ :
@@ -1428,9 +1429,9 @@ void ncoLexer::mWS(bool _createToken) {
 	case 0xa /* '\n' */ :
 	{
 		match('\n' /* charlit */ );
-#line 465 "ncoGrammer.g"
+#line 478 "ncoGrammer.g"
 		newline();
-#line 1434 "ncoLexer.cpp"
+#line 1435 "ncoLexer.cpp"
 		break;
 	}
 	default:
@@ -1439,9 +1440,9 @@ void ncoLexer::mWS(bool _createToken) {
 	}
 	}
 	}
-#line 466 "ncoGrammer.g"
+#line 479 "ncoGrammer.g"
 	_ttype = antlr::Token::SKIP;
-#line 1445 "ncoLexer.cpp"
+#line 1446 "ncoLexer.cpp"
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
 	   _token = makeToken(_ttype);
 	   _token->setText(text.substr(_begin, text.length()-_begin));
@@ -1462,16 +1463,16 @@ void ncoLexer::mCXX_COMMENT(bool _createToken) {
 			matchNot('\n' /* charlit */ );
 		}
 		else {
-			goto _loop149;
+			goto _loop151;
 		}
 		
 	}
-	_loop149:;
+	_loop151:;
 	} // ( ... )*
 	match('\n' /* charlit */ );
-#line 471 "ncoGrammer.g"
+#line 484 "ncoGrammer.g"
 	_ttype = antlr::Token::SKIP; newline();
-#line 1475 "ncoLexer.cpp"
+#line 1476 "ncoLexer.cpp"
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
 	   _token = makeToken(_ttype);
 	   _token->setText(text.substr(_begin, text.length()-_begin));
@@ -1510,9 +1511,9 @@ void ncoLexer::mC_COMMENT(bool _createToken) {
 			}
 			}
 			}
-#line 478 "ncoGrammer.g"
+#line 491 "ncoGrammer.g"
 			newline();
-#line 1516 "ncoLexer.cpp"
+#line 1517 "ncoLexer.cpp"
 		}
 		else if ((_tokenSet_4.member(LA(1)))) {
 			{
@@ -1520,16 +1521,16 @@ void ncoLexer::mC_COMMENT(bool _createToken) {
 			}
 		}
 		else {
-			goto _loop154;
+			goto _loop156;
 		}
 		
 	}
-	_loop154:;
+	_loop156:;
 	} // ( ... )*
 	match("*/");
-#line 482 "ncoGrammer.g"
+#line 495 "ncoGrammer.g"
 	_ttype = antlr::Token::SKIP;
-#line 1533 "ncoLexer.cpp"
+#line 1534 "ncoLexer.cpp"
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
 	   _token = makeToken(_ttype);
 	   _token->setText(text.substr(_begin, text.length()-_begin));
@@ -1545,18 +1546,18 @@ void ncoLexer::mNUMBER_DOT(bool _createToken) {
 	
 	match('.' /* charlit */ );
 	{ // ( ... )+
-	int _cnt157=0;
+	int _cnt159=0;
 	for (;;) {
 		if (((LA(1) >= 0x30 /* '0' */  && LA(1) <= 0x39 /* '9' */ ))) {
 			mDGT(false);
 		}
 		else {
-			if ( _cnt157>=1 ) { goto _loop157; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
+			if ( _cnt159>=1 ) { goto _loop159; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
 		}
 		
-		_cnt157++;
+		_cnt159++;
 	}
-	_loop157:;
+	_loop159:;
 	}  // ( ... )+
 	{
 	if ((LA(1) == 0x45 /* 'E' */  || LA(1) == 0x65 /* 'e' */ )) {
@@ -1566,9 +1567,9 @@ void ncoLexer::mNUMBER_DOT(bool _createToken) {
 	}
 	
 	}
-#line 489 "ncoGrammer.g"
+#line 502 "ncoGrammer.g"
 	_ttype = DOUBLE;
-#line 1572 "ncoLexer.cpp"
+#line 1573 "ncoLexer.cpp"
 	{
 	switch ( LA(1)) {
 	case 0x44 /* 'D' */ :
@@ -1592,9 +1593,9 @@ void ncoLexer::mNUMBER_DOT(bool _createToken) {
 		}
 		}
 		}
-#line 490 "ncoGrammer.g"
+#line 503 "ncoGrammer.g"
 		_ttype = DOUBLE;
-#line 1598 "ncoLexer.cpp"
+#line 1599 "ncoLexer.cpp"
 		break;
 	}
 	case 0x46 /* 'F' */ :
@@ -1618,9 +1619,9 @@ void ncoLexer::mNUMBER_DOT(bool _createToken) {
 		}
 		}
 		}
-#line 491 "ncoGrammer.g"
+#line 504 "ncoGrammer.g"
 		_ttype = FLOAT;
-#line 1624 "ncoLexer.cpp"
+#line 1625 "ncoLexer.cpp"
 		break;
 	}
 	case 0x4c /* 'L' */ :
@@ -1644,9 +1645,9 @@ void ncoLexer::mNUMBER_DOT(bool _createToken) {
 		}
 		}
 		}
-#line 492 "ncoGrammer.g"
+#line 505 "ncoGrammer.g"
 		_ttype = DOUBLE;
-#line 1650 "ncoLexer.cpp"
+#line 1651 "ncoLexer.cpp"
 		break;
 	}
 	default:
@@ -1668,22 +1669,22 @@ void ncoLexer::mNUMBER(bool _createToken) {
 	ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
 	
 	{ // ( ... )+
-	int _cnt165=0;
+	int _cnt167=0;
 	for (;;) {
 		if (((LA(1) >= 0x30 /* '0' */  && LA(1) <= 0x39 /* '9' */ ))) {
 			mDGT(false);
 		}
 		else {
-			if ( _cnt165>=1 ) { goto _loop165; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
+			if ( _cnt167>=1 ) { goto _loop167; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
 		}
 		
-		_cnt165++;
+		_cnt167++;
 	}
-	_loop165:;
+	_loop167:;
 	}  // ( ... )+
-#line 497 "ncoGrammer.g"
+#line 510 "ncoGrammer.g"
 	_ttype = INT;
-#line 1687 "ncoLexer.cpp"
+#line 1688 "ncoLexer.cpp"
 	{
 	switch ( LA(1)) {
 	case 0x2e /* '.' */ :
@@ -1696,11 +1697,11 @@ void ncoLexer::mNUMBER(bool _createToken) {
 				mDGT(false);
 			}
 			else {
-				goto _loop169;
+				goto _loop171;
 			}
 			
 		}
-		_loop169:;
+		_loop171:;
 		} // ( ... )*
 		{
 		if ((LA(1) == 0x4c /* 'L' */  || LA(1) == 0x6c /* 'l' */ )) {
@@ -1736,9 +1737,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		
 		}
 		}
-#line 498 "ncoGrammer.g"
+#line 511 "ncoGrammer.g"
 		_ttype = DOUBLE;
-#line 1742 "ncoLexer.cpp"
+#line 1743 "ncoLexer.cpp"
 		break;
 	}
 	case 0x45 /* 'E' */ :
@@ -1747,9 +1748,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		{
 		mXPN(false);
 		}
-#line 499 "ncoGrammer.g"
+#line 512 "ncoGrammer.g"
 		_ttype = DOUBLE;
-#line 1753 "ncoLexer.cpp"
+#line 1754 "ncoLexer.cpp"
 		break;
 	}
 	case 0x53 /* 'S' */ :
@@ -1773,9 +1774,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		}
 		}
 		}
-#line 501 "ncoGrammer.g"
+#line 514 "ncoGrammer.g"
 		_ttype = SHORT;
-#line 1779 "ncoLexer.cpp"
+#line 1780 "ncoLexer.cpp"
 		break;
 	}
 	case 0x42 /* 'B' */ :
@@ -1799,9 +1800,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		}
 		}
 		}
-#line 502 "ncoGrammer.g"
+#line 515 "ncoGrammer.g"
 		_ttype = BYTE;
-#line 1805 "ncoLexer.cpp"
+#line 1806 "ncoLexer.cpp"
 		break;
 	}
 	default:
@@ -1824,9 +1825,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 507 "ncoGrammer.g"
+#line 520 "ncoGrammer.g"
 			_ttype = UINT64;
-#line 1830 "ncoLexer.cpp"
+#line 1831 "ncoLexer.cpp"
 		}
 		else if ((LA(1) == 0x55 /* 'U' */  || LA(1) == 0x75 /* 'u' */ ) && (LA(2) == 0x42 /* 'B' */  || LA(2) == 0x62 /* 'b' */ )) {
 			{
@@ -1847,9 +1848,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 503 "ncoGrammer.g"
+#line 516 "ncoGrammer.g"
 			_ttype = UBYTE;
-#line 1853 "ncoLexer.cpp"
+#line 1854 "ncoLexer.cpp"
 		}
 		else if ((LA(1) == 0x55 /* 'U' */  || LA(1) == 0x75 /* 'u' */ ) && (LA(2) == 0x53 /* 'S' */  || LA(2) == 0x73 /* 's' */ )) {
 			{
@@ -1870,9 +1871,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 504 "ncoGrammer.g"
+#line 517 "ncoGrammer.g"
 			_ttype = USHORT;
-#line 1876 "ncoLexer.cpp"
+#line 1877 "ncoLexer.cpp"
 		}
 		else if ((LA(1) == 0x4c /* 'L' */  || LA(1) == 0x6c /* 'l' */ ) && (LA(2) == 0x4c /* 'L' */  || LA(2) == 0x6c /* 'l' */ )) {
 			{
@@ -1893,9 +1894,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 506 "ncoGrammer.g"
+#line 519 "ncoGrammer.g"
 			_ttype = INT64;
-#line 1899 "ncoLexer.cpp"
+#line 1900 "ncoLexer.cpp"
 		}
 		else if ((LA(1) == 0x4c /* 'L' */  || LA(1) == 0x6c /* 'l' */ ) && (true)) {
 			{
@@ -1916,9 +1917,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 500 "ncoGrammer.g"
+#line 513 "ncoGrammer.g"
 			_ttype = INT;
-#line 1922 "ncoLexer.cpp"
+#line 1923 "ncoLexer.cpp"
 		}
 		else if ((LA(1) == 0x55 /* 'U' */  || LA(1) == 0x75 /* 'u' */ ) && (true) && (true)) {
 			{
@@ -1939,9 +1940,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			
 			}
-#line 505 "ncoGrammer.g"
+#line 518 "ncoGrammer.g"
 			_ttype = UINT;
-#line 1945 "ncoLexer.cpp"
+#line 1946 "ncoLexer.cpp"
 		}
 		else {
 		}
@@ -1970,9 +1971,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		}
 		}
 		}
-#line 509 "ncoGrammer.g"
+#line 522 "ncoGrammer.g"
 		_ttype = FLOAT;
-#line 1976 "ncoLexer.cpp"
+#line 1977 "ncoLexer.cpp"
 		break;
 	}
 	case 0x44 /* 'D' */ :
@@ -1996,9 +1997,9 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		}
 		}
 		}
-#line 510 "ncoGrammer.g"
+#line 523 "ncoGrammer.g"
 		_ttype = DOUBLE;
-#line 2002 "ncoLexer.cpp"
+#line 2003 "ncoLexer.cpp"
 		break;
 	}
 	default:
@@ -2098,13 +2099,13 @@ void ncoLexer::mVAR_ATT(bool _createToken) {
 		}
 		default:
 		{
-			goto _loop188;
+			goto _loop190;
 		}
 		}
 	}
-	_loop188:;
+	_loop190:;
 	} // ( ... )*
-#line 517 "ncoGrammer.g"
+#line 531 "ncoGrammer.g"
 	
 	// try to intelligently guess the type to avoid un-necessary function search  
 	bool bDoSearch;
@@ -2137,7 +2138,7 @@ void ncoLexer::mVAR_ATT(bool _createToken) {
 	}             
 	} 
 	
-#line 2141 "ncoLexer.cpp"
+#line 2142 "ncoLexer.cpp"
 	{
 	if ((LA(1) == 0x40 /* '@' */ )) {
 		match('@' /* charlit */ );
@@ -2220,15 +2221,15 @@ void ncoLexer::mVAR_ATT(bool _createToken) {
 			}
 			default:
 			{
-				goto _loop192;
+				goto _loop194;
 			}
 			}
 		}
-		_loop192:;
+		_loop194:;
 		} // ( ... )*
-#line 549 "ncoGrammer.g"
+#line 563 "ncoGrammer.g"
 		_ttype = ATT_ID;
-#line 2232 "ncoLexer.cpp"
+#line 2233 "ncoLexer.cpp"
 	}
 	else {
 	}
@@ -2254,18 +2255,18 @@ void ncoLexer::mVAR_ATT_QT(bool _createToken) {
 	text.erase(_saveIndex);
 	}
 	mVAR_NM_QT(false);
-#line 554 "ncoGrammer.g"
+#line 569 "ncoGrammer.g"
 	_ttype = VAR_ID;
-#line 2260 "ncoLexer.cpp"
+#line 2261 "ncoLexer.cpp"
 	{
 	switch ( LA(1)) {
 	case 0x40 /* '@' */ :
 	{
 		match('@' /* charlit */ );
 		mVAR_NM_QT(false);
-#line 555 "ncoGrammer.g"
+#line 570 "ncoGrammer.g"
 		_ttype = ATT_ID;
-#line 2269 "ncoLexer.cpp"
+#line 2270 "ncoLexer.cpp"
 		break;
 	}
 	case 0x27 /* '\'' */ :
@@ -2306,9 +2307,9 @@ void ncoLexer::mDIM_QT(bool _createToken) {
 	match('$' /* charlit */ );
 	text.erase(_saveIndex);
 	mVAR_NM_QT(false);
-#line 561 "ncoGrammer.g"
+#line 576 "ncoGrammer.g"
 	_ttype = DIM_ID;
-#line 2312 "ncoLexer.cpp"
+#line 2313 "ncoLexer.cpp"
 	}
 	{
 	_saveIndex = text.length();
@@ -2320,9 +2321,9 @@ void ncoLexer::mDIM_QT(bool _createToken) {
 		_saveIndex = text.length();
 		match(".size");
 		text.erase(_saveIndex);
-#line 563 "ncoGrammer.g"
+#line 578 "ncoGrammer.g"
 		_ttype = DIM_ID_SIZE;
-#line 2326 "ncoLexer.cpp"
+#line 2327 "ncoLexer.cpp"
 	}
 	else {
 	}
@@ -2423,23 +2424,23 @@ void ncoLexer::mDIM_VAL(bool _createToken) {
 		}
 		default:
 		{
-			goto _loop205;
+			goto _loop207;
 		}
 		}
 	}
-	_loop205:;
+	_loop207:;
 	} // ( ... )*
-#line 568 "ncoGrammer.g"
+#line 583 "ncoGrammer.g"
 	_ttype = DIM_ID;
-#line 2435 "ncoLexer.cpp"
+#line 2436 "ncoLexer.cpp"
 	{
 	if ((LA(1) == 0x2e /* '.' */ )) {
 		_saveIndex = text.length();
 		match(".size");
 		text.erase(_saveIndex);
-#line 570 "ncoGrammer.g"
+#line 585 "ncoGrammer.g"
 		_ttype = DIM_ID_SIZE;
-#line 2443 "ncoLexer.cpp"
+#line 2444 "ncoLexer.cpp"
 	}
 	else {
 	}
@@ -2462,18 +2463,18 @@ void ncoLexer::mDIM_MTD_ID(bool _createToken) {
 	match('$' /* charlit */ );
 	text.erase(_saveIndex);
 	{ // ( ... )+
-	int _cnt209=0;
+	int _cnt211=0;
 	for (;;) {
 		if (((LA(1) >= 0x30 /* '0' */  && LA(1) <= 0x39 /* '9' */ ))) {
 			mDGT(false);
 		}
 		else {
-			if ( _cnt209>=1 ) { goto _loop209; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
+			if ( _cnt211>=1 ) { goto _loop211; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
 		}
 		
-		_cnt209++;
+		_cnt211++;
 	}
-	_loop209:;
+	_loop211:;
 	}  // ( ... )+
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
 	   _token = makeToken(_ttype);
@@ -2499,26 +2500,26 @@ void ncoLexer::mNSTRING(bool _createToken) {
 			}
 		}
 		else {
-			goto _loop213;
+			goto _loop215;
 		}
 		
 	}
-	_loop213:;
+	_loop215:;
 	} // ( ... )*
 	_saveIndex = text.length();
 	match('\"' /* charlit */ );
 	text.erase(_saveIndex);
-#line 583 "ncoGrammer.g"
+#line 598 "ncoGrammer.g"
 	_ttype = NSTRING;
-#line 2514 "ncoLexer.cpp"
+#line 2515 "ncoLexer.cpp"
 	{
 	if ((LA(1) == 0x73 /* 's' */ )) {
 		_saveIndex = text.length();
 		match('s' /* charlit */ );
 		text.erase(_saveIndex);
-#line 584 "ncoGrammer.g"
+#line 599 "ncoGrammer.g"
 		_ttype = N4STRING;
-#line 2522 "ncoLexer.cpp"
+#line 2523 "ncoLexer.cpp"
 	}
 	else {
 	}
@@ -2561,7 +2562,7 @@ void ncoLexer::mINCLUDE(bool _createToken) {
 	}
 	mNSTRING(true);
 	f=_returnToken;
-#line 589 "ncoGrammer.g"
+#line 604 "ncoGrammer.g"
 	
 			// ANTLR_USING_NAMESPACE(std)
 			// create lexer to handle include
@@ -2590,7 +2591,7 @@ void ncoLexer::mINCLUDE(bool _createToken) {
 			// of the new instance of this lexer.
 			selector.retry(); // throws TokenStreamRetryException
 			
-#line 2594 "ncoLexer.cpp"
+#line 2595 "ncoLexer.cpp"
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
 	   _token = makeToken(_ttype);
 	   _token->setText(text.substr(_begin, text.length()-_begin));
@@ -2605,31 +2606,31 @@ const unsigned long ncoLexer::_tokenSet_0_data_[] = { 0UL, 96UL, 1073741824UL, 2
 const ANTLR_USE_NAMESPACE(antlr)BitSet ncoLexer::_tokenSet_0(_tokenSet_0_data_,10);
 const unsigned long ncoLexer::_tokenSet_1_data_[] = { 0UL, 134179584UL, 2281701374UL, 134217726UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
 // ( ) + - . 0 1 2 3 4 5 6 7 8 9 : A B C D E F G H I J K L M N O P Q R 
-// S T U V W X Y Z _ a b c d e f g h i j k l m n o p q 
+// S T U V W X Y Z _ a b c d e f g h i j k l m n o p q r s 
 const ANTLR_USE_NAMESPACE(antlr)BitSet ncoLexer::_tokenSet_1(_tokenSet_1_data_,10);
 const unsigned long ncoLexer::_tokenSet_2_data_[] = { 0UL, 0UL, 2281701374UL, 134217726UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
 // A B C D E F G H I J K L M N O P Q R S T U V W X Y Z _ a b c d e f g 
-// h i j k l m n o p q 
+// h i j k l m n o p q r s 
 const ANTLR_USE_NAMESPACE(antlr)BitSet ncoLexer::_tokenSet_2(_tokenSet_2_data_,10);
 const unsigned long ncoLexer::_tokenSet_3_data_[] = { 4294966271UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
 // 0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xb 0xc 0xd 0xe 0xf 0x10 0x11 
 // 0x12 0x13 0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x1e 0x1f 
 //   ! \" # $ % & \' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ 
 // A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ 0x5c ] ^ _ ` a 
-// b c d e f g h i j k l m n o p q 
+// b c d e f g h i j k l m n o p q r s 
 const ANTLR_USE_NAMESPACE(antlr)BitSet ncoLexer::_tokenSet_3(_tokenSet_3_data_,16);
 const unsigned long ncoLexer::_tokenSet_4_data_[] = { 4294958079UL, 4294966271UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
 // 0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xb 0xc 0xe 0xf 0x10 0x11 0x12 
 // 0x13 0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x1e 0x1f   ! 
 // \" # $ % & \' ( ) + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C 
 // D E F G H I J K L M N O P Q R S T U V W X Y Z [ 0x5c ] ^ _ ` a b c d 
-// e f g h i j k l m n o p q 
+// e f g h i j k l m n o p q r s 
 const ANTLR_USE_NAMESPACE(antlr)BitSet ncoLexer::_tokenSet_4(_tokenSet_4_data_,16);
 const unsigned long ncoLexer::_tokenSet_5_data_[] = { 4294966271UL, 4294967291UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
 // 0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xb 0xc 0xd 0xe 0xf 0x10 0x11 
 // 0x12 0x13 0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x1e 0x1f 
 //   ! # $ % & \' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B 
 // C D E F G H I J K L M N O P Q R S T U V W X Y Z [ 0x5c ] ^ _ ` a b c 
-// d e f g h i j k l m n o p q 
+// d e f g h i j k l m n o p q r s 
 const ANTLR_USE_NAMESPACE(antlr)BitSet ncoLexer::_tokenSet_5(_tokenSet_5_data_,16);
 
diff --git a/src/nco++/ncoLexer.hpp b/src/nco++/ncoLexer.hpp
index 36a759c..33781fd 100644
--- a/src/nco++/ncoLexer.hpp
+++ b/src/nco++/ncoLexer.hpp
@@ -10,13 +10,13 @@
 #include <antlr/CharScanner.hpp>
 #line 1 "ncoGrammer.g"
 
-/* $Header: /cvsroot/nco/nco/src/nco++/ncoLexer.hpp,v 1.137 2014/10/31 17:55:57 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncoLexer.hpp,v 1.144 2015/01/17 00:49:35 zender Exp $ */
 
 /* Purpose: ANTLR Grammar and support files for ncap2 */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
     // C Standard Headers
@@ -53,7 +53,7 @@
 #line 54 "ncoLexer.hpp"
 class CUSTOM_API ncoLexer : public ANTLR_USE_NAMESPACE(antlr)CharScanner, public ncoParserTokenTypes
 {
-#line 323 "ncoGrammer.g"
+#line 336 "ncoGrammer.g"
 
 private:
     prs_cls *prs_arg;
diff --git a/src/nco++/ncoParser.cpp b/src/nco++/ncoParser.cpp
index 8ccd33c..0ba6e0c 100644
--- a/src/nco++/ncoParser.cpp
+++ b/src/nco++/ncoParser.cpp
@@ -57,6 +57,10 @@ void ncoParser::statement() {
 	ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST statement_AST = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST e1_AST = ANTLR_USE_NAMESPACE(antlr)nullAST;
+	ANTLR_USE_NAMESPACE(antlr)RefToken  def1 = ANTLR_USE_NAMESPACE(antlr)nullToken;
+	ANTLR_USE_NAMESPACE(antlr)RefAST def1_AST = ANTLR_USE_NAMESPACE(antlr)nullAST;
+	ANTLR_USE_NAMESPACE(antlr)RefToken  def2 = ANTLR_USE_NAMESPACE(antlr)nullToken;
+	ANTLR_USE_NAMESPACE(antlr)RefAST def2_AST = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	
 	switch ( LA(1)) {
 	case LPAREN:
@@ -88,14 +92,14 @@ void ncoParser::statement() {
 		astFactory->addASTChild( currentAST, returnAST );
 		match(SEMI);
 		statement_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 94 "ncoGrammer.g"
+#line 95 "ncoGrammer.g"
 		
 		if( ncap_fnc_srh(e1_AST))  
 		statement_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(2))->add(astFactory->create(FEXPR,"FEXPR"))->add(statement_AST))); 
 		else
 		statement_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(2))->add(astFactory->create(EXPR,"EXPR"))->add(statement_AST))); 
 		
-#line 99 "ncoParser.cpp"
+#line 103 "ncoParser.cpp"
 		currentAST.root = statement_AST;
 		if ( statement_AST!=ANTLR_USE_NAMESPACE(antlr)nullAST &&
 			statement_AST->getFirstChild() != ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -106,22 +110,69 @@ void ncoParser::statement() {
 		statement_AST = currentAST.root;
 		break;
 	}
-	case DEFDIM:
+	case DEFDIMA:
+	case DEFDIMU:
 	{
-		ANTLR_USE_NAMESPACE(antlr)RefAST tmp2_AST = ANTLR_USE_NAMESPACE(antlr)nullAST;
-		tmp2_AST = astFactory->create(LT(1));
-		astFactory->makeASTRoot(currentAST, tmp2_AST);
-		match(DEFDIM);
+		{
+		switch ( LA(1)) {
+		case DEFDIMA:
+		{
+			def1 = LT(1);
+			def1_AST = astFactory->create(def1);
+			astFactory->makeASTRoot(currentAST, def1_AST);
+			match(DEFDIMA);
+			break;
+		}
+		case DEFDIMU:
+		{
+			def2 = LT(1);
+			def2_AST = astFactory->create(def2);
+			astFactory->makeASTRoot(currentAST, def2_AST);
+			match(DEFDIMU);
+			break;
+		}
+		default:
+		{
+			throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(LT(1), getFilename());
+		}
+		}
+		}
 		match(LPAREN);
-		ANTLR_USE_NAMESPACE(antlr)RefAST tmp4_AST = ANTLR_USE_NAMESPACE(antlr)nullAST;
-		tmp4_AST = astFactory->create(LT(1));
-		astFactory->addASTChild(currentAST, tmp4_AST);
+		ANTLR_USE_NAMESPACE(antlr)RefAST tmp3_AST = ANTLR_USE_NAMESPACE(antlr)nullAST;
+		tmp3_AST = astFactory->create(LT(1));
+		astFactory->addASTChild(currentAST, tmp3_AST);
 		match(NSTRING);
 		match(COMMA);
 		expr();
 		astFactory->addASTChild( currentAST, returnAST );
+		{
+		switch ( LA(1)) {
+		case COMMA:
+		{
+			match(COMMA);
+			expr();
+			astFactory->addASTChild( currentAST, returnAST );
+			break;
+		}
+		case RPAREN:
+		{
+			break;
+		}
+		default:
+		{
+			throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(LT(1), getFilename());
+		}
+		}
+		}
 		match(RPAREN);
 		match(SEMI);
+#line 105 "ncoGrammer.g"
+		
+		if( def1_AST ){  def1_AST->setType(DEFDIM);def1_AST->setText("1");}
+		if( def2_AST ){  def2_AST->setType(DEFDIM);def2_AST->setText("0");}
+		
+		
+#line 176 "ncoParser.cpp"
 		statement_AST = currentAST.root;
 		break;
 	}
@@ -171,9 +222,9 @@ void ncoParser::statement() {
 	{
 		match(SEMI);
 		statement_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 111 "ncoGrammer.g"
+#line 118 "ncoGrammer.g"
 		statement_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(1))->add(astFactory->create(NULL_NODE,"null_stmt"))));
-#line 177 "ncoParser.cpp"
+#line 228 "ncoParser.cpp"
 		currentAST.root = statement_AST;
 		if ( statement_AST!=ANTLR_USE_NAMESPACE(antlr)nullAST &&
 			statement_AST->getFirstChild() != ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -491,17 +542,17 @@ void ncoParser::block() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop11;
+			goto _loop13;
 		}
 		
 	}
-	_loop11:;
+	_loop13:;
 	} // ( ... )*
 	match(RCURL);
 	block_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 132 "ncoGrammer.g"
+#line 139 "ncoGrammer.g"
 	block_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(2))->add(astFactory->create(BLOCK,"block"))->add(block_AST)));
-#line 505 "ncoParser.cpp"
+#line 556 "ncoParser.cpp"
 	currentAST.root = block_AST;
 	if ( block_AST!=ANTLR_USE_NAMESPACE(antlr)nullAST &&
 		block_AST->getFirstChild() != ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -611,16 +662,16 @@ void ncoParser::lmt() {
 			}
 		}
 		else {
-			goto _loop20;
+			goto _loop22;
 		}
 		
 	}
-	_loop20:;
+	_loop22:;
 	} // ( ... )*
 	lmt_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 145 "ncoGrammer.g"
+#line 152 "ncoGrammer.g"
 	lmt_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(2))->add(astFactory->create(LMT,"lmt"))->add(lmt_AST)));
-#line 624 "ncoParser.cpp"
+#line 675 "ncoParser.cpp"
 	currentAST.root = lmt_AST;
 	if ( lmt_AST!=ANTLR_USE_NAMESPACE(antlr)nullAST &&
 		lmt_AST->getFirstChild() != ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -648,17 +699,17 @@ void ncoParser::lmt_list() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop23;
+			goto _loop25;
 		}
 		
 	}
-	_loop23:;
+	_loop25:;
 	} // ( ... )*
 	match(RPAREN);
 	lmt_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 149 "ncoGrammer.g"
+#line 156 "ncoGrammer.g"
 	lmt_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(2))->add(astFactory->create(LMT_LIST,"lmt_list"))->add(lmt_list_AST)));
-#line 662 "ncoParser.cpp"
+#line 713 "ncoParser.cpp"
 	currentAST.root = lmt_list_AST;
 	if ( lmt_list_AST!=ANTLR_USE_NAMESPACE(antlr)nullAST &&
 		lmt_list_AST->getFirstChild() != ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -730,17 +781,17 @@ void ncoParser::dmn_list() {
 			}
 		}
 		else {
-			goto _loop28;
+			goto _loop30;
 		}
 		
 	}
-	_loop28:;
+	_loop30:;
 	} // ( ... )*
 	match(RSQUARE);
 	dmn_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 157 "ncoGrammer.g"
+#line 164 "ncoGrammer.g"
 	dmn_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(2))->add(astFactory->create(DMN_LIST,"dmn_list"))->add(dmn_list_AST)));
-#line 744 "ncoParser.cpp"
+#line 795 "ncoParser.cpp"
 	currentAST.root = dmn_list_AST;
 	if ( dmn_list_AST!=ANTLR_USE_NAMESPACE(antlr)nullAST &&
 		dmn_list_AST->getFirstChild() != ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -812,17 +863,17 @@ void ncoParser::dmn_arg_list() {
 			}
 		}
 		else {
-			goto _loop33;
+			goto _loop35;
 		}
 		
 	}
-	_loop33:;
+	_loop35:;
 	} // ( ... )*
 	match(DIVIDE);
 	dmn_arg_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 163 "ncoGrammer.g"
+#line 170 "ncoGrammer.g"
 	dmn_arg_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(2))->add(astFactory->create(DMN_ARG_LIST,"dmn_arg_list"))->add(dmn_arg_list_AST)));
-#line 826 "ncoParser.cpp"
+#line 877 "ncoParser.cpp"
 	currentAST.root = dmn_arg_list_AST;
 	if ( dmn_arg_list_AST!=ANTLR_USE_NAMESPACE(antlr)nullAST &&
 		dmn_arg_list_AST->getFirstChild() != ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -850,17 +901,17 @@ void ncoParser::value_list() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop36;
+			goto _loop38;
 		}
 		
 	}
-	_loop36:;
+	_loop38:;
 	} // ( ... )*
 	match(RCURL);
 	value_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 168 "ncoGrammer.g"
+#line 175 "ncoGrammer.g"
 	value_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(2))->add(astFactory->create(VALUE_LIST,"value_list"))->add(value_list_AST)));
-#line 864 "ncoParser.cpp"
+#line 915 "ncoParser.cpp"
 	currentAST.root = value_list_AST;
 	if ( value_list_AST!=ANTLR_USE_NAMESPACE(antlr)nullAST &&
 		value_list_AST->getFirstChild() != ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -1043,17 +1094,17 @@ void ncoParser::func_arg() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop41;
+			goto _loop43;
 		}
 		
 	}
-	_loop41:;
+	_loop43:;
 	} // ( ... )*
 	match(RPAREN);
 	func_arg_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 175 "ncoGrammer.g"
+#line 182 "ncoGrammer.g"
 	func_arg_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(astFactory->make((new ANTLR_USE_NAMESPACE(antlr)ASTArray(2))->add(astFactory->create(FUNC_ARG,"func_arg"))->add(func_arg_AST)));
-#line 1057 "ncoParser.cpp"
+#line 1108 "ncoParser.cpp"
 	currentAST.root = func_arg_AST;
 	if ( func_arg_AST!=ANTLR_USE_NAMESPACE(antlr)nullAST &&
 		func_arg_AST->getFirstChild() != ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -1174,11 +1225,11 @@ void ncoParser::meth_exp() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop49;
+			goto _loop51;
 		}
 		
 	}
-	_loop49:;
+	_loop51:;
 	} // ( ... )*
 	meth_exp_AST = currentAST.root;
 	returnAST = meth_exp_AST;
@@ -1362,10 +1413,10 @@ void ncoParser::unaryleft_exp() {
 		in_AST = astFactory->create(in);
 		astFactory->makeASTRoot(currentAST, in_AST);
 		match(INC);
-#line 192 "ncoGrammer.g"
+#line 199 "ncoGrammer.g"
 		in_AST->setType(POST_INC);
 		in_AST->setText("POST_INC");
-#line 1369 "ncoParser.cpp"
+#line 1420 "ncoParser.cpp"
 		break;
 	}
 	case DEC:
@@ -1374,10 +1425,10 @@ void ncoParser::unaryleft_exp() {
 		de_AST = astFactory->create(de);
 		astFactory->makeASTRoot(currentAST, de_AST);
 		match(DEC);
-#line 194 "ncoGrammer.g"
+#line 201 "ncoGrammer.g"
 		de_AST->setType(POST_DEC);
 		de_AST->setText("POST_DEC");
-#line 1381 "ncoParser.cpp"
+#line 1432 "ncoParser.cpp"
 		break;
 	}
 	case SEMI:
@@ -1483,9 +1534,9 @@ void ncoParser::unary_exp() {
 			ur_AST = astFactory->create(ur);
 			astFactory->makeASTRoot(currentAST, ur_AST);
 			match(TIMES);
-#line 207 "ncoGrammer.g"
+#line 214 "ncoGrammer.g"
 			ur_AST->setType(UTIMES);ur_AST->setText("UTIMES");
-#line 1489 "ncoParser.cpp"
+#line 1540 "ncoParser.cpp"
 			break;
 		}
 		default:
@@ -1634,11 +1685,11 @@ void ncoParser::mexpr() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop59;
+			goto _loop61;
 		}
 		
 	}
-	_loop59:;
+	_loop61:;
 	} // ( ... )*
 	mexpr_AST = currentAST.root;
 	returnAST = mexpr_AST;
@@ -1682,11 +1733,11 @@ void ncoParser::add_expr() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop63;
+			goto _loop65;
 		}
 		
 	}
-	_loop63:;
+	_loop65:;
 	} // ( ... )*
 	add_expr_AST = currentAST.root;
 	returnAST = add_expr_AST;
@@ -1730,11 +1781,11 @@ void ncoParser::frel_expr() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop67;
+			goto _loop69;
 		}
 		
 	}
-	_loop67:;
+	_loop69:;
 	} // ( ... )*
 	frel_expr_AST = currentAST.root;
 	returnAST = frel_expr_AST;
@@ -1794,11 +1845,11 @@ void ncoParser::rel_expr() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop71;
+			goto _loop73;
 		}
 		
 	}
-	_loop71:;
+	_loop73:;
 	} // ( ... )*
 	rel_expr_AST = currentAST.root;
 	returnAST = rel_expr_AST;
@@ -1842,11 +1893,11 @@ void ncoParser::eq_expr() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop75;
+			goto _loop77;
 		}
 		
 	}
-	_loop75:;
+	_loop77:;
 	} // ( ... )*
 	eq_expr_AST = currentAST.root;
 	returnAST = eq_expr_AST;
@@ -1870,11 +1921,11 @@ void ncoParser::lmul_expr() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop78;
+			goto _loop80;
 		}
 		
 	}
-	_loop78:;
+	_loop80:;
 	} // ( ... )*
 	lmul_expr_AST = currentAST.root;
 	returnAST = lmul_expr_AST;
@@ -1898,11 +1949,11 @@ void ncoParser::lor_expr() {
 			astFactory->addASTChild( currentAST, returnAST );
 		}
 		else {
-			goto _loop81;
+			goto _loop83;
 		}
 		
 	}
-	_loop81:;
+	_loop83:;
 	} // ( ... )*
 	lor_expr_AST = currentAST.root;
 	returnAST = lor_expr_AST;
@@ -2094,7 +2145,7 @@ void ncoParser::imaginary_token() {
 
 void ncoParser::initializeASTFactory( ANTLR_USE_NAMESPACE(antlr)ASTFactory& factory )
 {
-	factory.setMaxNodeType(113);
+	factory.setMaxNodeType(115);
 }
 const char* ncoParser::tokenNames[] = {
 	"<0>",
@@ -2125,8 +2176,10 @@ const char* ncoParser::tokenNames[] = {
 	"VRSORT",
 	"VABS",
 	"VSQR2",
+	"DEFDIM",
 	";",
 	"\"defdim\"",
+	"\"defdimunlim\"",
 	"(",
 	"a string",
 	",",
@@ -2214,34 +2267,34 @@ const char* ncoParser::tokenNames[] = {
 	0
 };
 
-const unsigned long ncoParser::_tokenSet_0_data_[] = { 4026531840UL, 1065377468UL, 268369920UL, 0UL, 0UL, 0UL, 0UL, 0UL };
-// SEMI "defdim" LPAREN NSTRING "while" "break" "continue" "if" "where" 
-// "print" VAR_ID ATT_ID LCURL "for" FUNC INC DEC LNOT PLUS MINUS TIMES 
-// FLOAT DOUBLE INT BYTE UBYTE SHORT USHORT UINT INT64 UINT64 N4STRING 
-// DIM_ID_SIZE 
+const unsigned long ncoParser::_tokenSet_0_data_[] = { 3758096384UL, 4261509875UL, 1073479680UL, 0UL, 0UL, 0UL, 0UL, 0UL };
+// SEMI "defdim" "defdimunlim" LPAREN NSTRING "while" "break" "continue" 
+// "if" "where" "print" VAR_ID ATT_ID LCURL "for" FUNC INC DEC LNOT PLUS 
+// MINUS TIMES FLOAT DOUBLE INT BYTE UBYTE SHORT USHORT UINT INT64 UINT64 
+// N4STRING DIM_ID_SIZE 
 const ANTLR_USE_NAMESPACE(antlr)BitSet ncoParser::_tokenSet_0(_tokenSet_0_data_,8);
-const unsigned long ncoParser::_tokenSet_1_data_[] = { 4026531842UL, 4291395580UL, 268435455UL, 0UL, 0UL, 0UL, 0UL, 0UL };
-// EOF SEMI "defdim" LPAREN NSTRING "while" "break" "continue" "if" "else" 
-// "where" "elsewhere" "print" VAR_ID ATT_ID LCURL RCURL "for" LSQUARE 
-// DIVIDE DOT FUNC INC DEC LNOT PLUS MINUS TIMES CARET MOD FLTHAN FGTHAN 
-// LTHAN GTHAN GEQ LEQ EQ NEQ LAND LOR QUESTION ASSIGN PLUS_ASSIGN MINUS_ASSIGN 
-// TIMES_ASSIGN DIVIDE_ASSIGN FLOAT DOUBLE INT BYTE UBYTE SHORT USHORT 
-// UINT INT64 UINT64 N4STRING DIM_ID_SIZE 
+const unsigned long ncoParser::_tokenSet_1_data_[] = { 3758096386UL, 4280680435UL, 1073741823UL, 0UL, 0UL, 0UL, 0UL, 0UL };
+// EOF SEMI "defdim" "defdimunlim" LPAREN NSTRING "while" "break" "continue" 
+// "if" "else" "where" "elsewhere" "print" VAR_ID ATT_ID LCURL RCURL "for" 
+// LSQUARE DIVIDE DOT FUNC INC DEC LNOT PLUS MINUS TIMES CARET MOD FLTHAN 
+// FGTHAN LTHAN GTHAN GEQ LEQ EQ NEQ LAND LOR QUESTION ASSIGN PLUS_ASSIGN 
+// MINUS_ASSIGN TIMES_ASSIGN DIVIDE_ASSIGN FLOAT DOUBLE INT BYTE UBYTE 
+// SHORT USHORT UINT INT64 UINT64 N4STRING DIM_ID_SIZE 
 const ANTLR_USE_NAMESPACE(antlr)BitSet ncoParser::_tokenSet_1(_tokenSet_1_data_,8);
-const unsigned long ncoParser::_tokenSet_2_data_[] = { 4026531842UL, 1065385980UL, 268369920UL, 0UL, 0UL, 0UL, 0UL, 0UL };
-// EOF SEMI "defdim" LPAREN NSTRING "while" "break" "continue" "if" "else" 
-// "where" "elsewhere" "print" VAR_ID ATT_ID LCURL RCURL "for" FUNC INC 
-// DEC LNOT PLUS MINUS TIMES FLOAT DOUBLE INT BYTE UBYTE SHORT USHORT UINT 
-// INT64 UINT64 N4STRING DIM_ID_SIZE 
-const ANTLR_USE_NAMESPACE(antlr)BitSet ncoParser::_tokenSet_2(_tokenSet_2_data_,8);
-const unsigned long ncoParser::_tokenSet_3_data_[] = { 4026531842UL, 4294705151UL, 268435455UL, 0UL, 0UL, 0UL, 0UL, 0UL };
-// EOF SEMI "defdim" LPAREN NSTRING COMMA RPAREN "while" "break" "continue" 
+const unsigned long ncoParser::_tokenSet_2_data_[] = { 3758096386UL, 4261543923UL, 1073479680UL, 0UL, 0UL, 0UL, 0UL, 0UL };
+// EOF SEMI "defdim" "defdimunlim" LPAREN NSTRING "while" "break" "continue" 
 // "if" "else" "where" "elsewhere" "print" VAR_ID ATT_ID LCURL RCURL "for" 
-// COLON LSQUARE DIM_ID DIVIDE DIM_MTD_ID CALL_REF DOT FUNC INC DEC LNOT 
-// PLUS MINUS TIMES CARET MOD FLTHAN FGTHAN LTHAN GTHAN GEQ LEQ EQ NEQ 
-// LAND LOR QUESTION ASSIGN PLUS_ASSIGN MINUS_ASSIGN TIMES_ASSIGN DIVIDE_ASSIGN 
-// FLOAT DOUBLE INT BYTE UBYTE SHORT USHORT UINT INT64 UINT64 N4STRING 
-// DIM_ID_SIZE 
+// FUNC INC DEC LNOT PLUS MINUS TIMES FLOAT DOUBLE INT BYTE UBYTE SHORT 
+// USHORT UINT INT64 UINT64 N4STRING DIM_ID_SIZE 
+const ANTLR_USE_NAMESPACE(antlr)BitSet ncoParser::_tokenSet_2(_tokenSet_2_data_,8);
+const unsigned long ncoParser::_tokenSet_3_data_[] = { 3758096386UL, 4293918719UL, 1073741823UL, 0UL, 0UL, 0UL, 0UL, 0UL };
+// EOF SEMI "defdim" "defdimunlim" LPAREN NSTRING COMMA RPAREN "while" 
+// "break" "continue" "if" "else" "where" "elsewhere" "print" VAR_ID ATT_ID 
+// LCURL RCURL "for" COLON LSQUARE DIM_ID DIVIDE DIM_MTD_ID CALL_REF DOT 
+// FUNC INC DEC LNOT PLUS MINUS TIMES CARET MOD FLTHAN FGTHAN LTHAN GTHAN 
+// GEQ LEQ EQ NEQ LAND LOR QUESTION ASSIGN PLUS_ASSIGN MINUS_ASSIGN TIMES_ASSIGN 
+// DIVIDE_ASSIGN FLOAT DOUBLE INT BYTE UBYTE SHORT USHORT UINT INT64 UINT64 
+// N4STRING DIM_ID_SIZE 
 const ANTLR_USE_NAMESPACE(antlr)BitSet ncoParser::_tokenSet_3(_tokenSet_3_data_,8);
 
 
diff --git a/src/nco++/ncoParser.hpp b/src/nco++/ncoParser.hpp
index 8ab6d14..9364254 100644
--- a/src/nco++/ncoParser.hpp
+++ b/src/nco++/ncoParser.hpp
@@ -10,13 +10,13 @@
 
 #line 1 "ncoGrammer.g"
 
-/* $Header: /cvsroot/nco/nco/src/nco++/ncoParser.hpp,v 1.134 2014/10/31 17:55:57 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncoParser.hpp,v 1.140 2015/01/17 00:49:35 zender Exp $ */
 
 /* Purpose: ANTLR Grammar and support files for ncap2 */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
     // C Standard Headers
@@ -53,7 +53,7 @@
 #line 54 "ncoParser.hpp"
 class CUSTOM_API ncoParser : public ANTLR_USE_NAMESPACE(antlr)LLkParser, public ncoParserTokenTypes
 {
-#line 82 "ncoGrammer.g"
+#line 83 "ncoGrammer.g"
 
 
 public:
@@ -123,10 +123,10 @@ protected:
 private:
 	static const char* tokenNames[];
 #ifndef NO_STATIC_CONSTS
-	static const int NUM_TOKENS = 114;
+	static const int NUM_TOKENS = 116;
 #else
 	enum {
-		NUM_TOKENS = 114
+		NUM_TOKENS = 116
 	};
 #endif
 	
diff --git a/src/nco++/ncoParserTokenTypes.hpp b/src/nco++/ncoParserTokenTypes.hpp
index 5d82af6..1ef6015 100644
--- a/src/nco++/ncoParserTokenTypes.hpp
+++ b/src/nco++/ncoParserTokenTypes.hpp
@@ -36,92 +36,94 @@ struct CUSTOM_API ncoParserTokenTypes {
 		VRSORT = 25,
 		VABS = 26,
 		VSQR2 = 27,
-		SEMI = 28,
-		DEFDIM = 29,
-		LPAREN = 30,
-		NSTRING = 31,
-		COMMA = 32,
-		RPAREN = 33,
-		WHILE = 34,
-		BREAK = 35,
-		CONTINUE = 36,
-		IF = 37,
-		ELSE = 38,
-		WHERE = 39,
-		ELSEWHERE = 40,
-		PRINT = 41,
-		VAR_ID = 42,
-		ATT_ID = 43,
-		LCURL = 44,
-		RCURL = 45,
-		FOR = 46,
-		COLON = 47,
-		LSQUARE = 48,
-		DIM_ID = 49,
-		RSQUARE = 50,
-		DIVIDE = 51,
-		DIM_MTD_ID = 52,
-		CALL_REF = 53,
-		DOT = 54,
-		FUNC = 55,
-		INC = 56,
-		DEC = 57,
-		LNOT = 58,
-		PLUS = 59,
-		MINUS = 60,
-		TIMES = 61,
-		CARET = 62,
-		MOD = 63,
-		FLTHAN = 64,
-		FGTHAN = 65,
-		LTHAN = 66,
-		GTHAN = 67,
-		GEQ = 68,
-		LEQ = 69,
-		EQ = 70,
-		NEQ = 71,
-		LAND = 72,
-		LOR = 73,
-		QUESTION = 74,
-		ASSIGN = 75,
-		PLUS_ASSIGN = 76,
-		MINUS_ASSIGN = 77,
-		TIMES_ASSIGN = 78,
-		DIVIDE_ASSIGN = 79,
-		FLOAT = 80,
-		DOUBLE = 81,
-		INT = 82,
-		BYTE = 83,
-		UBYTE = 84,
-		SHORT = 85,
-		USHORT = 86,
-		UINT = 87,
-		INT64 = 88,
-		UINT64 = 89,
-		N4STRING = 90,
-		DIM_ID_SIZE = 91,
-		NRootAST = 92,
-		SHIFTL = 93,
-		SHIFTR = 94,
-		QUOTE = 95,
-		DGT = 96,
-		LPH = 97,
-		LPHDGT = 98,
-		XPN = 99,
-		VAR_NM_QT = 100,
-		BLASTOUT = 101,
-		UNUSED_OPS = 102,
-		WS = 103,
-		CXX_COMMENT = 104,
-		C_COMMENT = 105,
-		NUMBER_DOT = 106,
-		NUMBER = 107,
-		VAR_ATT = 108,
-		VAR_ATT_QT = 109,
-		DIM_QT = 110,
-		DIM_VAL = 111,
-		INCLUDE = 112,
-		LMT_DMN = 113,
+		DEFDIM = 28,
+		SEMI = 29,
+		DEFDIMA = 30,
+		DEFDIMU = 31,
+		LPAREN = 32,
+		NSTRING = 33,
+		COMMA = 34,
+		RPAREN = 35,
+		WHILE = 36,
+		BREAK = 37,
+		CONTINUE = 38,
+		IF = 39,
+		ELSE = 40,
+		WHERE = 41,
+		ELSEWHERE = 42,
+		PRINT = 43,
+		VAR_ID = 44,
+		ATT_ID = 45,
+		LCURL = 46,
+		RCURL = 47,
+		FOR = 48,
+		COLON = 49,
+		LSQUARE = 50,
+		DIM_ID = 51,
+		RSQUARE = 52,
+		DIVIDE = 53,
+		DIM_MTD_ID = 54,
+		CALL_REF = 55,
+		DOT = 56,
+		FUNC = 57,
+		INC = 58,
+		DEC = 59,
+		LNOT = 60,
+		PLUS = 61,
+		MINUS = 62,
+		TIMES = 63,
+		CARET = 64,
+		MOD = 65,
+		FLTHAN = 66,
+		FGTHAN = 67,
+		LTHAN = 68,
+		GTHAN = 69,
+		GEQ = 70,
+		LEQ = 71,
+		EQ = 72,
+		NEQ = 73,
+		LAND = 74,
+		LOR = 75,
+		QUESTION = 76,
+		ASSIGN = 77,
+		PLUS_ASSIGN = 78,
+		MINUS_ASSIGN = 79,
+		TIMES_ASSIGN = 80,
+		DIVIDE_ASSIGN = 81,
+		FLOAT = 82,
+		DOUBLE = 83,
+		INT = 84,
+		BYTE = 85,
+		UBYTE = 86,
+		SHORT = 87,
+		USHORT = 88,
+		UINT = 89,
+		INT64 = 90,
+		UINT64 = 91,
+		N4STRING = 92,
+		DIM_ID_SIZE = 93,
+		NRootAST = 94,
+		SHIFTL = 95,
+		SHIFTR = 96,
+		QUOTE = 97,
+		DGT = 98,
+		LPH = 99,
+		LPHDGT = 100,
+		XPN = 101,
+		VAR_NM_QT = 102,
+		BLASTOUT = 103,
+		UNUSED_OPS = 104,
+		WS = 105,
+		CXX_COMMENT = 106,
+		C_COMMENT = 107,
+		NUMBER_DOT = 108,
+		NUMBER = 109,
+		VAR_ATT = 110,
+		VAR_ATT_QT = 111,
+		DIM_QT = 112,
+		DIM_VAL = 113,
+		INCLUDE = 114,
+		LMT_DMN = 115,
 		NULL_TREE_LOOKAHEAD = 3
 	};
 #ifdef __cplusplus
diff --git a/src/nco++/ncoTree.cpp b/src/nco++/ncoTree.cpp
index 8329908..2716fb9 100644
--- a/src/nco++/ncoTree.cpp
+++ b/src/nco++/ncoTree.cpp
@@ -13,7 +13,7 @@ ncoTree::ncoTree()
 }
 
 int  ncoTree::lmt_peek(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 957 "ncoGrammer.g"
+#line 972 "ncoGrammer.g"
 	int nbr_dmn=0;
 #line 19 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST lmt_peek_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
@@ -24,7 +24,7 @@ int  ncoTree::lmt_peek(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 		match(_t,LMT_LIST);
 		_t = _t->getNextSibling();
 		if ( inputState->guessing==0 ) {
-#line 959 "ncoGrammer.g"
+#line 974 "ncoGrammer.g"
 			
 			RefAST aRef;     
 			aRef=lmt->getFirstChild();
@@ -51,7 +51,7 @@ int  ncoTree::lmt_peek(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 }
 
 int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 970 "ncoGrammer.g"
+#line 985 "ncoGrammer.g"
 	int iret=0;
 #line 57 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST statements_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
@@ -67,20 +67,22 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 	ANTLR_USE_NAMESPACE(antlr)RefAST e2 = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST e3 = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST stmt2 = ANTLR_USE_NAMESPACE(antlr)nullAST;
+	ANTLR_USE_NAMESPACE(antlr)RefAST dtyp = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST def = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST pvid = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST patt = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST pstr = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 970 "ncoGrammer.g"
+#line 985 "ncoGrammer.g"
 	
-	var_sct *var;
+	var_sct *var=NULL;
+	var_sct *var2=NULL;
 	const std::string fnc_nm("statements");
 	// list of while/for loops entered n.b depth is lpp_vtr.size()
 	// Temporary fix so call run_exe only does a single parse in the
 	// nested block
 	static std::vector<std::string> lpp_vtr;
 	
-#line 84 "ncoTree.cpp"
+#line 86 "ncoTree.cpp"
 	
 	try {      // for error handling
 		if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -92,29 +94,29 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,BLOCK);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 979 "ncoGrammer.g"
+#line 995 "ncoGrammer.g"
 				
 				//std::cout <<"Num of Children in block="<<blk->getNumberOfChildren()<<endl;
 				iret=run_exe(blk->getFirstChild(),lpp_vtr.size() );
 				
 				
-#line 102 "ncoTree.cpp"
+#line 104 "ncoTree.cpp"
 			}
 			break;
 		}
 		case EXPR:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t219 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t221 = _t;
 			exp = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 			match(_t,EXPR);
 			_t = _t->getFirstChild();
 			ass = _t;
 			if ( _t == ANTLR_USE_NAMESPACE(antlr)nullAST ) throw ANTLR_USE_NAMESPACE(antlr)MismatchedTokenException();
 			_t = _t->getNextSibling();
-			_t = __t219;
+			_t = __t221;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 985 "ncoGrammer.g"
+#line 1001 "ncoGrammer.g"
 				
 				RefAST tr;
 				RefAST ntr;  
@@ -135,23 +137,23 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				var=nco_var_free(var);
 				iret=EXPR;
 				
-#line 139 "ncoTree.cpp"
+#line 141 "ncoTree.cpp"
 			}
 			break;
 		}
 		case FEXPR:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t220 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t222 = _t;
 			ANTLR_USE_NAMESPACE(antlr)RefAST tmp118_AST_in = _t;
 			match(_t,FEXPR);
 			_t = _t->getFirstChild();
 			fss = _t;
 			if ( _t == ANTLR_USE_NAMESPACE(antlr)nullAST ) throw ANTLR_USE_NAMESPACE(antlr)MismatchedTokenException();
 			_t = _t->getNextSibling();
-			_t = __t220;
+			_t = __t222;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1009 "ncoGrammer.g"
+#line 1025 "ncoGrammer.g"
 				
 				
 				var=out(fss);
@@ -159,13 +161,13 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				var=nco_var_free(var);
 				iret=FEXPR;
 				
-#line 163 "ncoTree.cpp"
+#line 165 "ncoTree.cpp"
 			}
 			break;
 		}
 		case IF:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t221 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t223 = _t;
 			ANTLR_USE_NAMESPACE(antlr)RefAST tmp119_AST_in = _t;
 			match(_t,IF);
 			_t = _t->getFirstChild();
@@ -174,10 +176,10 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			stmt = _t;
 			if ( _t == ANTLR_USE_NAMESPACE(antlr)nullAST ) throw ANTLR_USE_NAMESPACE(antlr)MismatchedTokenException();
 			_t = _t->getNextSibling();
-			_t = __t221;
+			_t = __t223;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1017 "ncoGrammer.g"
+#line 1033 "ncoGrammer.g"
 				
 				//if can have only 3 or 4 parts  , 1 node and 2 or 3 siblings
 				// IF LOGICAL_EXP STATEMENT1 STATEMENT2
@@ -207,13 +209,13 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				var=NULL_CEWI;
 				
 				
-#line 211 "ncoTree.cpp"
+#line 213 "ncoTree.cpp"
 			}
 			break;
 		}
 		case WHERE:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t222 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t224 = _t;
 			ANTLR_USE_NAMESPACE(antlr)RefAST tmp120_AST_in = _t;
 			match(_t,WHERE);
 			_t = _t->getFirstChild();
@@ -222,10 +224,10 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			stmt3 = _t;
 			if ( _t == ANTLR_USE_NAMESPACE(antlr)nullAST ) throw ANTLR_USE_NAMESPACE(antlr)MismatchedTokenException();
 			_t = _t->getNextSibling();
-			_t = __t222;
+			_t = __t224;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1047 "ncoGrammer.g"
+#line 1063 "ncoGrammer.g"
 				
 				// convert mask to short 
 				RefAST tr; 
@@ -269,13 +271,13 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				var=nco_var_free(var);
 				iret=WHERE;      
 				
-#line 273 "ncoTree.cpp"
+#line 275 "ncoTree.cpp"
 			}
 			break;
 		}
 		case WHILE:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t223 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t225 = _t;
 			ANTLR_USE_NAMESPACE(antlr)RefAST tmp121_AST_in = _t;
 			match(_t,WHILE);
 			_t = _t->getFirstChild();
@@ -285,10 +287,10 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			stmt1 = _t;
 			if ( _t == ANTLR_USE_NAMESPACE(antlr)nullAST ) throw ANTLR_USE_NAMESPACE(antlr)MismatchedTokenException();
 			_t = _t->getNextSibling();
-			_t = __t223;
+			_t = __t225;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1091 "ncoGrammer.g"
+#line 1107 "ncoGrammer.g"
 				
 				
 				bool br;
@@ -317,13 +319,13 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				var=NULL_CEWI; 
 				
 				
-#line 321 "ncoTree.cpp"
+#line 323 "ncoTree.cpp"
 			}
 			break;
 		}
 		case FOR:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t224 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t226 = _t;
 			ANTLR_USE_NAMESPACE(antlr)RefAST tmp122_AST_in = _t;
 			match(_t,FOR);
 			_t = _t->getFirstChild();
@@ -339,10 +341,10 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			stmt2 = _t;
 			if ( _t == ANTLR_USE_NAMESPACE(antlr)nullAST ) throw ANTLR_USE_NAMESPACE(antlr)MismatchedTokenException();
 			_t = _t->getNextSibling();
-			_t = __t224;
+			_t = __t226;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1120 "ncoGrammer.g"
+#line 1136 "ncoGrammer.g"
 				
 				bool b1,b2,b3,br;
 				var_sct *var_f1;
@@ -393,7 +395,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				var=NULL_CEWI;                
 				
 				
-#line 397 "ncoTree.cpp"
+#line 399 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -403,9 +405,9 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,ELSE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1171 "ncoGrammer.g"
+#line 1187 "ncoGrammer.g"
 				iret=ELSE;
-#line 409 "ncoTree.cpp"
+#line 411 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -415,9 +417,9 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,BREAK);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1172 "ncoGrammer.g"
+#line 1188 "ncoGrammer.g"
 				iret=BREAK;
-#line 421 "ncoTree.cpp"
+#line 423 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -427,9 +429,9 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,CONTINUE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1173 "ncoGrammer.g"
+#line 1189 "ncoGrammer.g"
 				iret=CONTINUE;
-#line 433 "ncoTree.cpp"
+#line 435 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -439,16 +441,16 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,NULL_NODE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1174 "ncoGrammer.g"
+#line 1190 "ncoGrammer.g"
 				iret=NULL_NODE;
-#line 445 "ncoTree.cpp"
+#line 447 "ncoTree.cpp"
 			}
 			break;
 		}
 		case DEFDIM:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t225 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp127_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t227 = _t;
+			dtyp = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 			match(_t,DEFDIM);
 			_t = _t->getFirstChild();
 			def = _t;
@@ -456,69 +458,165 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = _t->getNextSibling();
 			var=out(_t);
 			_t = _retTree;
-			_t = __t225;
+			{
+			if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
+				_t = ASTNULL;
+			switch ( _t->getType()) {
+			case VALUE_LIST:
+			case POST_INC:
+			case POST_DEC:
+			case UTIMES:
+			case WHERE_ASSIGN:
+			case NSTRING:
+			case VAR_ID:
+			case ATT_ID:
+			case DIVIDE:
+			case DOT:
+			case FUNC:
+			case INC:
+			case DEC:
+			case LNOT:
+			case PLUS:
+			case MINUS:
+			case TIMES:
+			case CARET:
+			case MOD:
+			case FLTHAN:
+			case FGTHAN:
+			case LTHAN:
+			case GTHAN:
+			case GEQ:
+			case LEQ:
+			case EQ:
+			case NEQ:
+			case LAND:
+			case LOR:
+			case QUESTION:
+			case ASSIGN:
+			case PLUS_ASSIGN:
+			case MINUS_ASSIGN:
+			case TIMES_ASSIGN:
+			case DIVIDE_ASSIGN:
+			case FLOAT:
+			case DOUBLE:
+			case INT:
+			case BYTE:
+			case UBYTE:
+			case SHORT:
+			case USHORT:
+			case UINT:
+			case INT64:
+			case UINT64:
+			case N4STRING:
+			case DIM_ID_SIZE:
+			{
+				var2=out(_t);
+				_t = _retTree;
+				break;
+			}
+			case 3:
+			{
+				break;
+			}
+			default:
+			{
+				throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
+			}
+			}
+			}
+			_t = __t227;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1176 "ncoGrammer.g"
+#line 1192 "ncoGrammer.g"
 				
 				
+				bool bunlimited=false;      
+				int ityp;  
+				int dCall;  
 				long sz;
-				var=nco_var_cnf_typ((nc_type)NC_INT64,var);
+				
+				// 0 - specific - UNLIMITED    
+				// 1 - regular LIMITED or UNLIMITED
+				dCall=atoi(dtyp->getText().c_str());    
 				iret=DEFDIM;
 				
+				var=nco_var_cnf_typ((nc_type)NC_INT64,var);
 				(void)cast_void_nctype((nc_type)NC_INT64,&var->val);
 				sz=var->val.i64p[0];
 				var=(var_sct*)nco_var_free(var);
-				(void)ncap_def_dim(def->getText(),sz,prs_arg);
 				
-#line 475 "ncoTree.cpp"
+				if( dCall==0 ){ 
+				bunlimited =true;
+				} else    
+				if(dCall==1 && var2){
+				int ityp;
+				// nb var2 is in upper scope - defined at statment action start
+				var2=nco_var_cnf_typ(NC_INT,var2);
+				(void)cast_void_nctype(NC_INT,&var2->val);
+				ityp=var2->val.ip[0]; 
+				(void)cast_nctype_void(NC_INT,&var2->val);
+				var2=nco_var_free(var2);
+				
+				if( ityp==0)
+				bunlimited=true;
+				else if( ityp==1 )  
+				bunlimited=false;
+				else    
+				err_prn(fnc_nm,"defdim for "+ def->getText() + ". Third argument must be 0 for \"UNLIMITED\" or 1 for \"LIMITED\" or void"); 
+				
+				} 
+				
+				(void)ncap_def_dim(def->getText(),sz,bunlimited,prs_arg);
+				
+#line 572 "ncoTree.cpp"
 			}
 			break;
 		}
 		default:
-			bool synPredMatched228 = false;
+			bool synPredMatched231 = false;
 			if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 				_t = ASTNULL;
 			if (((_t->getType() == PRINT))) {
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t228 = _t;
-				synPredMatched228 = true;
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t231 = _t;
+				synPredMatched231 = true;
 				inputState->guessing++;
 				try {
 					{
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t227 = _t;
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp128_AST_in = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t230 = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp127_AST_in = _t;
 					match(_t,PRINT);
 					_t = _t->getFirstChild();
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp129_AST_in = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp128_AST_in = _t;
 					match(_t,VAR_ID);
 					_t = _t->getNextSibling();
-					_t = __t227;
+					_t = __t230;
 					_t = _t->getNextSibling();
 					}
 				}
 				catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-					synPredMatched228 = false;
+					synPredMatched231 = false;
 				}
-				_t = __t228;
+				_t = __t231;
 				inputState->guessing--;
 			}
-			if ( synPredMatched228 ) {
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t229 = _t;
-				ANTLR_USE_NAMESPACE(antlr)RefAST tmp130_AST_in = _t;
+			if ( synPredMatched231 ) {
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t232 = _t;
+				ANTLR_USE_NAMESPACE(antlr)RefAST tmp129_AST_in = _t;
 				match(_t,PRINT);
 				_t = _t->getFirstChild();
 				pvid = _t;
 				match(_t,VAR_ID);
 				_t = _t->getNextSibling();
-				_t = __t229;
+				_t = __t232;
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1189 "ncoGrammer.g"
+#line 1234 "ncoGrammer.g"
 					
 					
 					int var_id;
 					int fl_id=-1;
 					char *fmt_sng;
+					
 					std::string va_nm(pvid->getText());
 					NcapVar *Nvar;
 					
@@ -560,48 +658,48 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 					
 					end2: ;
 					
-#line 564 "ncoTree.cpp"
+#line 662 "ncoTree.cpp"
 				}
 			}
 			else {
-				bool synPredMatched232 = false;
+				bool synPredMatched235 = false;
 				if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 					_t = ASTNULL;
 				if (((_t->getType() == PRINT))) {
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t232 = _t;
-					synPredMatched232 = true;
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t235 = _t;
+					synPredMatched235 = true;
 					inputState->guessing++;
 					try {
 						{
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t231 = _t;
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp131_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t234 = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp130_AST_in = _t;
 						match(_t,PRINT);
 						_t = _t->getFirstChild();
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp132_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp131_AST_in = _t;
 						match(_t,ATT_ID);
 						_t = _t->getNextSibling();
-						_t = __t231;
+						_t = __t234;
 						_t = _t->getNextSibling();
 						}
 					}
 					catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-						synPredMatched232 = false;
+						synPredMatched235 = false;
 					}
-					_t = __t232;
+					_t = __t235;
 					inputState->guessing--;
 				}
-				if ( synPredMatched232 ) {
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t233 = _t;
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp133_AST_in = _t;
+				if ( synPredMatched235 ) {
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t236 = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp132_AST_in = _t;
 					match(_t,PRINT);
 					_t = _t->getFirstChild();
 					patt = _t;
 					match(_t,ATT_ID);
 					_t = _t->getNextSibling();
-					_t = __t233;
+					_t = __t236;
 					_t = _t->getNextSibling();
 					if ( inputState->guessing==0 ) {
-#line 1235 "ncoGrammer.g"
+#line 1281 "ncoGrammer.g"
 						
 						
 						int apsn;
@@ -656,48 +754,48 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 						
 						end3:   ;
 						
-#line 660 "ncoTree.cpp"
+#line 758 "ncoTree.cpp"
 					}
 				}
 				else {
-					bool synPredMatched236 = false;
+					bool synPredMatched239 = false;
 					if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 						_t = ASTNULL;
 					if (((_t->getType() == PRINT))) {
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t236 = _t;
-						synPredMatched236 = true;
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t239 = _t;
+						synPredMatched239 = true;
 						inputState->guessing++;
 						try {
 							{
-							ANTLR_USE_NAMESPACE(antlr)RefAST __t235 = _t;
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp134_AST_in = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST __t238 = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp133_AST_in = _t;
 							match(_t,PRINT);
 							_t = _t->getFirstChild();
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp135_AST_in = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp134_AST_in = _t;
 							match(_t,NSTRING);
 							_t = _t->getNextSibling();
-							_t = __t235;
+							_t = __t238;
 							_t = _t->getNextSibling();
 							}
 						}
 						catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-							synPredMatched236 = false;
+							synPredMatched239 = false;
 						}
-						_t = __t236;
+						_t = __t239;
 						inputState->guessing--;
 					}
-					if ( synPredMatched236 ) {
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t237 = _t;
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp136_AST_in = _t;
+					if ( synPredMatched239 ) {
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t240 = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp135_AST_in = _t;
 						match(_t,PRINT);
 						_t = _t->getFirstChild();
 						pstr = _t;
 						match(_t,NSTRING);
 						_t = _t->getNextSibling();
-						_t = __t237;
+						_t = __t240;
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1290 "ncoGrammer.g"
+#line 1336 "ncoGrammer.g"
 							
 							char *prn_sng;
 							
@@ -709,7 +807,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 							prn_sng=(char*)nco_free(prn_sng);
 							}    
 							
-#line 713 "ncoTree.cpp"
+#line 811 "ncoTree.cpp"
 						}
 					}
 		else {
@@ -731,9 +829,9 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 }
 
 var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 1836 "ncoGrammer.g"
+#line 1885 "ncoGrammer.g"
 	var_sct *var;
-#line 737 "ncoTree.cpp"
+#line 835 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST out_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 	ANTLR_USE_NAMESPACE(antlr)RefAST pls_asn = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST min_asn = ANTLR_USE_NAMESPACE(antlr)nullAST;
@@ -765,14 +863,14 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 	ANTLR_USE_NAMESPACE(antlr)RefAST val_uint = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST val_int64 = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST val_uint64 = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 1836 "ncoGrammer.g"
+#line 1885 "ncoGrammer.g"
 	
 	const std::string fnc_nm("out"); 
 		var_sct *var1;
 	var_sct *var2;
 	var=NULL_CEWI;
 	
-#line 776 "ncoTree.cpp"
+#line 874 "ncoTree.cpp"
 	
 	try {      // for error handling
 		if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -780,363 +878,363 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 		switch ( _t->getType()) {
 		case TIMES:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t305 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp137_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t308 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp136_AST_in = _t;
 			match(_t,TIMES);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t305;
+			_t = __t308;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1863 "ncoGrammer.g"
+#line 1912 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, TIMES );
-#line 797 "ncoTree.cpp"
+#line 895 "ncoTree.cpp"
 			}
 			break;
 		}
 		case DIVIDE:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t306 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp138_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t309 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp137_AST_in = _t;
 			match(_t,DIVIDE);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t306;
+			_t = __t309;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1866 "ncoGrammer.g"
+#line 1915 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, DIVIDE );
-#line 816 "ncoTree.cpp"
+#line 914 "ncoTree.cpp"
 			}
 			break;
 		}
 		case MOD:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t307 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp139_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t310 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp138_AST_in = _t;
 			match(_t,MOD);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t307;
+			_t = __t310;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1868 "ncoGrammer.g"
+#line 1917 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, MOD);
-#line 835 "ncoTree.cpp"
+#line 933 "ncoTree.cpp"
 			}
 			break;
 		}
 		case CARET:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t308 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp140_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t311 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp139_AST_in = _t;
 			match(_t,CARET);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t308;
+			_t = __t311;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1870 "ncoGrammer.g"
+#line 1919 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, CARET);
-#line 854 "ncoTree.cpp"
+#line 952 "ncoTree.cpp"
 			}
 			break;
 		}
 		case LNOT:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t309 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp141_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t312 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp140_AST_in = _t;
 			match(_t,LNOT);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
-			_t = __t309;
+			_t = __t312;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1873 "ncoGrammer.g"
+#line 1922 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,NULL_CEWI, LNOT );
-#line 871 "ncoTree.cpp"
+#line 969 "ncoTree.cpp"
 			}
 			break;
 		}
 		case INC:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t312 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp142_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t315 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp141_AST_in = _t;
 			match(_t,INC);
 			_t = _t->getFirstChild();
 			var1=out_asn(_t);
 			_t = _retTree;
-			_t = __t312;
+			_t = __t315;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1879 "ncoGrammer.g"
+#line 1928 "ncoGrammer.g"
 				var=ncap_var_var_inc(var1,NULL_CEWI,INC,false,prs_arg);
-#line 888 "ncoTree.cpp"
+#line 986 "ncoTree.cpp"
 			}
 			break;
 		}
 		case DEC:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t313 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp143_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t316 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp142_AST_in = _t;
 			match(_t,DEC);
 			_t = _t->getFirstChild();
 			var1=out_asn(_t);
 			_t = _retTree;
-			_t = __t313;
+			_t = __t316;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1881 "ncoGrammer.g"
+#line 1930 "ncoGrammer.g"
 				var=ncap_var_var_inc(var1,NULL_CEWI, DEC,false,prs_arg );
-#line 905 "ncoTree.cpp"
+#line 1003 "ncoTree.cpp"
 			}
 			break;
 		}
 		case POST_INC:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t314 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp144_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t317 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp143_AST_in = _t;
 			match(_t,POST_INC);
 			_t = _t->getFirstChild();
 			var1=out_asn(_t);
 			_t = _retTree;
-			_t = __t314;
+			_t = __t317;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1883 "ncoGrammer.g"
+#line 1932 "ncoGrammer.g"
 				
 				var=ncap_var_var_inc(var1,NULL_CEWI,POST_INC,false,prs_arg);
 				
-#line 924 "ncoTree.cpp"
+#line 1022 "ncoTree.cpp"
 			}
 			break;
 		}
 		case POST_DEC:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t315 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp145_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t318 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp144_AST_in = _t;
 			match(_t,POST_DEC);
 			_t = _t->getFirstChild();
 			var1=out_asn(_t);
 			_t = _retTree;
-			_t = __t315;
+			_t = __t318;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1886 "ncoGrammer.g"
+#line 1935 "ncoGrammer.g"
 				
 				var=ncap_var_var_inc(var1,NULL_CEWI,POST_DEC,false,prs_arg);
 				
-#line 943 "ncoTree.cpp"
+#line 1041 "ncoTree.cpp"
 			}
 			break;
 		}
 		case LAND:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t316 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp146_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t319 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp145_AST_in = _t;
 			match(_t,LAND);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t316;
+			_t = __t319;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1891 "ncoGrammer.g"
+#line 1940 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, LAND );
-#line 962 "ncoTree.cpp"
+#line 1060 "ncoTree.cpp"
 			}
 			break;
 		}
 		case LOR:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t317 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp147_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t320 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp146_AST_in = _t;
 			match(_t,LOR);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t317;
+			_t = __t320;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1893 "ncoGrammer.g"
+#line 1942 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, LOR );
-#line 981 "ncoTree.cpp"
+#line 1079 "ncoTree.cpp"
 			}
 			break;
 		}
 		case LTHAN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t318 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp148_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t321 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp147_AST_in = _t;
 			match(_t,LTHAN);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t318;
+			_t = __t321;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1896 "ncoGrammer.g"
+#line 1945 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, LTHAN );
-#line 1000 "ncoTree.cpp"
+#line 1098 "ncoTree.cpp"
 			}
 			break;
 		}
 		case GTHAN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t319 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp149_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t322 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp148_AST_in = _t;
 			match(_t,GTHAN);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t319;
+			_t = __t322;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1898 "ncoGrammer.g"
+#line 1947 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, GTHAN );
-#line 1019 "ncoTree.cpp"
+#line 1117 "ncoTree.cpp"
 			}
 			break;
 		}
 		case GEQ:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t320 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp150_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t323 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp149_AST_in = _t;
 			match(_t,GEQ);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t320;
+			_t = __t323;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1900 "ncoGrammer.g"
+#line 1949 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, GEQ );
-#line 1038 "ncoTree.cpp"
+#line 1136 "ncoTree.cpp"
 			}
 			break;
 		}
 		case LEQ:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t321 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp151_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t324 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp150_AST_in = _t;
 			match(_t,LEQ);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t321;
+			_t = __t324;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1902 "ncoGrammer.g"
+#line 1951 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, LEQ );
-#line 1057 "ncoTree.cpp"
+#line 1155 "ncoTree.cpp"
 			}
 			break;
 		}
 		case EQ:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t322 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp152_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t325 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp151_AST_in = _t;
 			match(_t,EQ);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t322;
+			_t = __t325;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1904 "ncoGrammer.g"
+#line 1953 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, EQ );
-#line 1076 "ncoTree.cpp"
+#line 1174 "ncoTree.cpp"
 			}
 			break;
 		}
 		case NEQ:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t323 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp153_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t326 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp152_AST_in = _t;
 			match(_t,NEQ);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t323;
+			_t = __t326;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1906 "ncoGrammer.g"
+#line 1955 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, NEQ );
-#line 1095 "ncoTree.cpp"
+#line 1193 "ncoTree.cpp"
 			}
 			break;
 		}
 		case FLTHAN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t324 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp154_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t327 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp153_AST_in = _t;
 			match(_t,FLTHAN);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t324;
+			_t = __t327;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1909 "ncoGrammer.g"
+#line 1958 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, FLTHAN );
-#line 1114 "ncoTree.cpp"
+#line 1212 "ncoTree.cpp"
 			}
 			break;
 		}
 		case FGTHAN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t325 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp155_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t328 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp154_AST_in = _t;
 			match(_t,FGTHAN);
 			_t = _t->getFirstChild();
 			var1=out(_t);
 			_t = _retTree;
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t325;
+			_t = __t328;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1911 "ncoGrammer.g"
+#line 1960 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, FGTHAN );
-#line 1133 "ncoTree.cpp"
+#line 1231 "ncoTree.cpp"
 			}
 			break;
 		}
 		case PLUS_ASSIGN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t326 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp156_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t329 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp155_AST_in = _t;
 			match(_t,PLUS_ASSIGN);
 			_t = _t->getFirstChild();
 			pls_asn = _t;
@@ -1144,22 +1242,22 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = _t->getNextSibling();
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t326;
+			_t = __t329;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1913 "ncoGrammer.g"
+#line 1962 "ncoGrammer.g"
 				
 				var1=out_asn(pls_asn);
 				var=ncap_var_var_inc(var1,var2, PLUS_ASSIGN ,(pls_asn->getType()==UTIMES), prs_arg);
 				
-#line 1156 "ncoTree.cpp"
+#line 1254 "ncoTree.cpp"
 			}
 			break;
 		}
 		case MINUS_ASSIGN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t327 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp157_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t330 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp156_AST_in = _t;
 			match(_t,MINUS_ASSIGN);
 			_t = _t->getFirstChild();
 			min_asn = _t;
@@ -1167,22 +1265,22 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = _t->getNextSibling();
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t327;
+			_t = __t330;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1917 "ncoGrammer.g"
+#line 1966 "ncoGrammer.g"
 				
 				var1=out_asn(min_asn);
 				var=ncap_var_var_inc(var1,var2, MINUS_ASSIGN ,(min_asn->getType()==UTIMES), prs_arg);
 				
-#line 1179 "ncoTree.cpp"
+#line 1277 "ncoTree.cpp"
 			}
 			break;
 		}
 		case TIMES_ASSIGN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t328 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp158_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t331 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp157_AST_in = _t;
 			match(_t,TIMES_ASSIGN);
 			_t = _t->getFirstChild();
 			tim_asn = _t;
@@ -1190,22 +1288,22 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = _t->getNextSibling();
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t328;
+			_t = __t331;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1921 "ncoGrammer.g"
+#line 1970 "ncoGrammer.g"
 				
 				var1=out_asn(tim_asn);
 				var=ncap_var_var_inc(var1,var2, TIMES_ASSIGN ,(tim_asn->getType()==UTIMES), prs_arg);
 				
-#line 1202 "ncoTree.cpp"
+#line 1300 "ncoTree.cpp"
 			}
 			break;
 		}
 		case DIVIDE_ASSIGN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t329 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp159_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t332 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp158_AST_in = _t;
 			match(_t,DIVIDE_ASSIGN);
 			_t = _t->getFirstChild();
 			div_asn = _t;
@@ -1213,31 +1311,31 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = _t->getNextSibling();
 			var2=out(_t);
 			_t = _retTree;
-			_t = __t329;
+			_t = __t332;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1925 "ncoGrammer.g"
+#line 1974 "ncoGrammer.g"
 					
 				var1=out_asn(div_asn);
 				var=ncap_var_var_inc(var1,var2, DIVIDE_ASSIGN ,(div_asn->getType()==UTIMES), prs_arg);
 				
-#line 1225 "ncoTree.cpp"
+#line 1323 "ncoTree.cpp"
 			}
 			break;
 		}
 		case ASSIGN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t330 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp160_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t333 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp159_AST_in = _t;
 			match(_t,ASSIGN);
 			_t = _t->getFirstChild();
 			asn = _t;
 			if ( _t == ANTLR_USE_NAMESPACE(antlr)nullAST ) throw ANTLR_USE_NAMESPACE(antlr)MismatchedTokenException();
 			_t = _t->getNextSibling();
-			_t = __t330;
+			_t = __t333;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1931 "ncoGrammer.g"
+#line 1980 "ncoGrammer.g"
 				
 				// Check for RAM variable - if present 
 				// change tree - for example from:
@@ -1272,34 +1370,34 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				var=assign(tr,bram);
 				
 				
-#line 1276 "ncoTree.cpp"
+#line 1374 "ncoTree.cpp"
 			}
 			break;
 		}
 		case WHERE_ASSIGN:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t331 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp161_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t334 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp160_AST_in = _t;
 			match(_t,WHERE_ASSIGN);
 			_t = _t->getFirstChild();
 			wasn = _t;
 			if ( _t == ANTLR_USE_NAMESPACE(antlr)nullAST ) throw ANTLR_USE_NAMESPACE(antlr)MismatchedTokenException();
 			_t = _t->getNextSibling();
-			_t = __t331;
+			_t = __t334;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1965 "ncoGrammer.g"
+#line 2014 "ncoGrammer.g"
 				
 				
 				
-#line 1296 "ncoTree.cpp"
+#line 1394 "ncoTree.cpp"
 			}
 			break;
 		}
 		case QUESTION:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t332 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp162_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t335 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp161_AST_in = _t;
 			match(_t,QUESTION);
 			_t = _t->getFirstChild();
 			var1=out(_t);
@@ -1307,10 +1405,10 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			qus = _t;
 			if ( _t == ANTLR_USE_NAMESPACE(antlr)nullAST ) throw ANTLR_USE_NAMESPACE(antlr)MismatchedTokenException();
 			_t = _t->getNextSibling();
-			_t = __t332;
+			_t = __t335;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1970 "ncoGrammer.g"
+#line 2019 "ncoGrammer.g"
 				
 				bool br;
 				
@@ -1327,23 +1425,23 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				}   
 				var1=nco_var_free(var1);
 				
-#line 1331 "ncoTree.cpp"
+#line 1429 "ncoTree.cpp"
 			}
 			break;
 		}
 		case FUNC:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t333 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t336 = _t;
 			m = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 			match(_t,FUNC);
 			_t = _t->getFirstChild();
 			args = _t;
 			match(_t,FUNC_ARG);
 			_t = _t->getNextSibling();
-			_t = __t333;
+			_t = __t336;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1988 "ncoGrammer.g"
+#line 2037 "ncoGrammer.g"
 				
 				// The lexer has appended the index of the function to the function name m - (name#index)
 				//  the index is into fmc_vtr  
@@ -1353,14 +1451,14 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				RefAST tr;  
 				var=prs_arg->fmc_vtr[idx].vfnc()->fnd(tr ,args, prs_arg->fmc_vtr[idx],*this); 
 				
-#line 1357 "ncoTree.cpp"
+#line 1455 "ncoTree.cpp"
 			}
 			break;
 		}
 		case DOT:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t334 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp163_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t337 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp162_AST_in = _t;
 			match(_t,DOT);
 			_t = _t->getFirstChild();
 			mtd = _t;
@@ -1372,10 +1470,10 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			margs = _t;
 			match(_t,FUNC_ARG);
 			_t = _t->getNextSibling();
-			_t = __t334;
+			_t = __t337;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1999 "ncoGrammer.g"
+#line 2048 "ncoGrammer.g"
 				
 				// The lexer has appended the index of the function to the function name m - (name#index)
 				//  the index is into fmc_vtr  
@@ -1384,7 +1482,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				int idx=atoi(sdx.c_str());
 				var=prs_arg->fmc_vtr[idx].vfnc()->fnd(mtd ,margs, prs_arg->fmc_vtr[idx],*this); 
 				
-#line 1388 "ncoTree.cpp"
+#line 1486 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1394,7 +1492,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,DIM_ID_SIZE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2009 "ncoGrammer.g"
+#line 2058 "ncoGrammer.g"
 				
 				string sDim=dval->getText();
 				dmn_sct *dmn_fd;
@@ -1434,7 +1532,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				} 
 				
 				
-#line 1438 "ncoTree.cpp"
+#line 1536 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1444,7 +1542,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,ATT_ID);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2081 "ncoGrammer.g"
+#line 2130 "ncoGrammer.g"
 				
 				
 				NcapVar *Nvar=NULL;
@@ -1474,7 +1572,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				var->val.vp=(void*)nco_free(var->val.vp);
 				
 				
-#line 1478 "ncoTree.cpp"
+#line 1576 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1484,11 +1582,11 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,VALUE_LIST);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2112 "ncoGrammer.g"
+#line 2161 "ncoGrammer.g"
 				
 				var=value_list(vlst);
 				
-#line 1492 "ncoTree.cpp"
+#line 1590 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1498,7 +1596,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,NSTRING);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2117 "ncoGrammer.g"
+#line 2166 "ncoGrammer.g"
 				
 				char *tsng;
 				
@@ -1520,7 +1618,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				}
 				tsng=(char*)nco_free(tsng);      
 				
-#line 1524 "ncoTree.cpp"
+#line 1622 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1530,7 +1628,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,N4STRING);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2140 "ncoGrammer.g"
+#line 2189 "ncoGrammer.g"
 				
 				char *tsng;
 				
@@ -1558,7 +1656,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				}
 				tsng=(char*)nco_free(tsng);      
 				
-#line 1562 "ncoTree.cpp"
+#line 1660 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1568,9 +1666,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,FLOAT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2170 "ncoGrammer.g"
+#line 2219 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~float"),(nc_type)NC_FLOAT,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~float"),static_cast<float>(std::strtod(val_float->getText().c_str(),(char **)NULL)));
-#line 1574 "ncoTree.cpp"
+#line 1672 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1580,9 +1678,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,DOUBLE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2172 "ncoGrammer.g"
+#line 2221 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~double"),(nc_type)NC_DOUBLE,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~double"),strtod(val_double->getText().c_str(),(char **)NULL));
-#line 1586 "ncoTree.cpp"
+#line 1684 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1592,9 +1690,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,INT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2174 "ncoGrammer.g"
+#line 2223 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~int"),(nc_type)NC_INT,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~int"),static_cast<nco_int>(std::strtol(val_int->getText().c_str(),(char **)NULL,NCO_SNG_CNV_BASE10)));
-#line 1598 "ncoTree.cpp"
+#line 1696 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1604,9 +1702,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,SHORT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2176 "ncoGrammer.g"
+#line 2225 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~short"),(nc_type)NC_SHORT,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~short"),static_cast<nco_short>(std::strtol(val_short->getText().c_str(),(char **)NULL,NCO_SNG_CNV_BASE10)));
-#line 1610 "ncoTree.cpp"
+#line 1708 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1616,9 +1714,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,BYTE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2178 "ncoGrammer.g"
+#line 2227 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~byte"),(nc_type)NC_BYTE,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~byte"),static_cast<nco_byte>(std::strtol(val_byte->getText().c_str(),(char **)NULL,NCO_SNG_CNV_BASE10)));
-#line 1622 "ncoTree.cpp"
+#line 1720 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1628,9 +1726,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,UBYTE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2183 "ncoGrammer.g"
+#line 2232 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~ubyte"),(nc_type)NC_UBYTE,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~ubyte"),static_cast<nco_ubyte>(std::strtoul(val_ubyte->getText().c_str(),(char **)NULL,NCO_SNG_CNV_BASE10)));
-#line 1634 "ncoTree.cpp"
+#line 1732 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1640,9 +1738,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,USHORT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2187 "ncoGrammer.g"
+#line 2236 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~ushort"),(nc_type)NC_USHORT,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~ushort"),static_cast<nco_ushort>(std::strtoul(val_ushort->getText().c_str(),(char **)NULL,NCO_SNG_CNV_BASE10)));
-#line 1646 "ncoTree.cpp"
+#line 1744 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1652,9 +1750,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,UINT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2189 "ncoGrammer.g"
+#line 2238 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~uint"),(nc_type)NC_UINT,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~uint"),static_cast<nco_uint>(std::strtoul(val_uint->getText().c_str(),(char **)NULL,NCO_SNG_CNV_BASE10)));
-#line 1658 "ncoTree.cpp"
+#line 1756 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1664,9 +1762,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,INT64);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2191 "ncoGrammer.g"
+#line 2240 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~int64"),(nc_type)NC_INT64,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~int64"),sng2nbr(val_int64->getText(),nco_int64_CEWI));
-#line 1670 "ncoTree.cpp"
+#line 1768 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -1676,386 +1774,386 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,UINT64);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2195 "ncoGrammer.g"
+#line 2244 "ncoGrammer.g"
 				if(prs_arg->ntl_scn) var=ncap_sclr_var_mk(static_cast<std::string>("~uint64"),(nc_type)NC_UINT64,false); else var=ncap_sclr_var_mk(static_cast<std::string>("~uint64"),sng2nbr(val_uint64->getText(),nco_uint64_CEWI));
-#line 1682 "ncoTree.cpp"
+#line 1780 "ncoTree.cpp"
 			}
 			break;
 		}
 		default:
-			bool synPredMatched275 = false;
+			bool synPredMatched278 = false;
 			if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 				_t = ASTNULL;
 			if (((_t->getType() == PLUS))) {
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t275 = _t;
-				synPredMatched275 = true;
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t278 = _t;
+				synPredMatched278 = true;
 				inputState->guessing++;
 				try {
 					{
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t274 = _t;
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp164_AST_in = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t277 = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp163_AST_in = _t;
 					match(_t,PLUS);
 					_t = _t->getFirstChild();
 					out(_t);
 					_t = _retTree;
 					out(_t);
 					_t = _retTree;
-					_t = __t274;
+					_t = __t277;
 					_t = _t->getNextSibling();
 					}
 				}
 				catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-					synPredMatched275 = false;
+					synPredMatched278 = false;
 				}
-				_t = __t275;
+				_t = __t278;
 				inputState->guessing--;
 			}
-			if ( synPredMatched275 ) {
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t276 = _t;
-				ANTLR_USE_NAMESPACE(antlr)RefAST tmp165_AST_in = _t;
+			if ( synPredMatched278 ) {
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t279 = _t;
+				ANTLR_USE_NAMESPACE(antlr)RefAST tmp164_AST_in = _t;
 				match(_t,PLUS);
 				_t = _t->getFirstChild();
 				var1=out(_t);
 				_t = _retTree;
 				var2=out(_t);
 				_t = _retTree;
-				_t = __t276;
+				_t = __t279;
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1846 "ncoGrammer.g"
+#line 1895 "ncoGrammer.g"
 					var=ncap_var_var_op(var1,var2, PLUS );
-#line 1728 "ncoTree.cpp"
+#line 1826 "ncoTree.cpp"
 				}
 			}
 			else {
-				bool synPredMatched279 = false;
+				bool synPredMatched282 = false;
 				if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 					_t = ASTNULL;
 				if (((_t->getType() == MINUS))) {
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t279 = _t;
-					synPredMatched279 = true;
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t282 = _t;
+					synPredMatched282 = true;
 					inputState->guessing++;
 					try {
 						{
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t278 = _t;
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp166_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t281 = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp165_AST_in = _t;
 						match(_t,MINUS);
 						_t = _t->getFirstChild();
 						out(_t);
 						_t = _retTree;
 						out(_t);
 						_t = _retTree;
-						_t = __t278;
+						_t = __t281;
 						_t = _t->getNextSibling();
 						}
 					}
 					catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-						synPredMatched279 = false;
+						synPredMatched282 = false;
 					}
-					_t = __t279;
+					_t = __t282;
 					inputState->guessing--;
 				}
-				if ( synPredMatched279 ) {
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t280 = _t;
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp167_AST_in = _t;
+				if ( synPredMatched282 ) {
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t283 = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp166_AST_in = _t;
 					match(_t,MINUS);
 					_t = _t->getFirstChild();
 					var1=out(_t);
 					_t = _retTree;
 					var2=out(_t);
 					_t = _retTree;
-					_t = __t280;
+					_t = __t283;
 					_t = _t->getNextSibling();
 					if ( inputState->guessing==0 ) {
-#line 1848 "ncoGrammer.g"
+#line 1897 "ncoGrammer.g"
 						var=ncap_var_var_op(var1,var2, MINUS );
-#line 1773 "ncoTree.cpp"
+#line 1871 "ncoTree.cpp"
 					}
 				}
 				else {
-					bool synPredMatched284 = false;
+					bool synPredMatched287 = false;
 					if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 						_t = ASTNULL;
 					if (((_t->getType() == UTIMES))) {
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t284 = _t;
-						synPredMatched284 = true;
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t287 = _t;
+						synPredMatched287 = true;
 						inputState->guessing++;
 						try {
 							{
-							ANTLR_USE_NAMESPACE(antlr)RefAST __t282 = _t;
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp168_AST_in = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST __t285 = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp167_AST_in = _t;
 							match(_t,UTIMES);
 							_t = _t->getFirstChild();
-							ANTLR_USE_NAMESPACE(antlr)RefAST __t283 = _t;
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp169_AST_in = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST __t286 = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp168_AST_in = _t;
 							match(_t,POST_INC);
 							_t = _t->getFirstChild();
 							out(_t);
 							_t = _retTree;
-							_t = __t283;
+							_t = __t286;
 							_t = _t->getNextSibling();
-							_t = __t282;
+							_t = __t285;
 							_t = _t->getNextSibling();
 							}
 						}
 						catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-							synPredMatched284 = false;
+							synPredMatched287 = false;
 						}
-						_t = __t284;
+						_t = __t287;
 						inputState->guessing--;
 					}
-					if ( synPredMatched284 ) {
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t285 = _t;
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp170_AST_in = _t;
+					if ( synPredMatched287 ) {
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t288 = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp169_AST_in = _t;
 						match(_t,UTIMES);
 						_t = _t->getFirstChild();
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t286 = _t;
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp171_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t289 = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp170_AST_in = _t;
 						match(_t,POST_INC);
 						_t = _t->getFirstChild();
 						var1=out_asn(_t);
 						_t = _retTree;
-						_t = __t286;
+						_t = __t289;
 						_t = _t->getNextSibling();
-						_t = __t285;
+						_t = __t288;
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1849 "ncoGrammer.g"
+#line 1898 "ncoGrammer.g"
 							
 							var=ncap_var_var_inc(var1,NULL_CEWI,POST_INC,true,prs_arg);      
 							
-#line 1828 "ncoTree.cpp"
+#line 1926 "ncoTree.cpp"
 						}
 					}
 					else {
-						bool synPredMatched290 = false;
+						bool synPredMatched293 = false;
 						if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 							_t = ASTNULL;
 						if (((_t->getType() == UTIMES))) {
-							ANTLR_USE_NAMESPACE(antlr)RefAST __t290 = _t;
-							synPredMatched290 = true;
+							ANTLR_USE_NAMESPACE(antlr)RefAST __t293 = _t;
+							synPredMatched293 = true;
 							inputState->guessing++;
 							try {
 								{
-								ANTLR_USE_NAMESPACE(antlr)RefAST __t288 = _t;
-								ANTLR_USE_NAMESPACE(antlr)RefAST tmp172_AST_in = _t;
+								ANTLR_USE_NAMESPACE(antlr)RefAST __t291 = _t;
+								ANTLR_USE_NAMESPACE(antlr)RefAST tmp171_AST_in = _t;
 								match(_t,UTIMES);
 								_t = _t->getFirstChild();
-								ANTLR_USE_NAMESPACE(antlr)RefAST __t289 = _t;
-								ANTLR_USE_NAMESPACE(antlr)RefAST tmp173_AST_in = _t;
+								ANTLR_USE_NAMESPACE(antlr)RefAST __t292 = _t;
+								ANTLR_USE_NAMESPACE(antlr)RefAST tmp172_AST_in = _t;
 								match(_t,POST_DEC);
 								_t = _t->getFirstChild();
 								out(_t);
 								_t = _retTree;
-								_t = __t289;
+								_t = __t292;
 								_t = _t->getNextSibling();
-								_t = __t288;
+								_t = __t291;
 								_t = _t->getNextSibling();
 								}
 							}
 							catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-								synPredMatched290 = false;
+								synPredMatched293 = false;
 							}
-							_t = __t290;
+							_t = __t293;
 							inputState->guessing--;
 						}
-						if ( synPredMatched290 ) {
-							ANTLR_USE_NAMESPACE(antlr)RefAST __t291 = _t;
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp174_AST_in = _t;
+						if ( synPredMatched293 ) {
+							ANTLR_USE_NAMESPACE(antlr)RefAST __t294 = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp173_AST_in = _t;
 							match(_t,UTIMES);
 							_t = _t->getFirstChild();
-							ANTLR_USE_NAMESPACE(antlr)RefAST __t292 = _t;
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp175_AST_in = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST __t295 = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp174_AST_in = _t;
 							match(_t,POST_DEC);
 							_t = _t->getFirstChild();
 							var1=out_asn(_t);
 							_t = _retTree;
-							_t = __t292;
+							_t = __t295;
 							_t = _t->getNextSibling();
-							_t = __t291;
+							_t = __t294;
 							_t = _t->getNextSibling();
 							if ( inputState->guessing==0 ) {
-#line 1852 "ncoGrammer.g"
+#line 1901 "ncoGrammer.g"
 								
 								var=ncap_var_var_inc(var1,NULL_CEWI,POST_DEC,true,prs_arg);      
 								
-#line 1883 "ncoTree.cpp"
+#line 1981 "ncoTree.cpp"
 							}
 						}
 						else {
-							bool synPredMatched296 = false;
+							bool synPredMatched299 = false;
 							if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 								_t = ASTNULL;
 							if (((_t->getType() == UTIMES))) {
-								ANTLR_USE_NAMESPACE(antlr)RefAST __t296 = _t;
-								synPredMatched296 = true;
+								ANTLR_USE_NAMESPACE(antlr)RefAST __t299 = _t;
+								synPredMatched299 = true;
 								inputState->guessing++;
 								try {
 									{
-									ANTLR_USE_NAMESPACE(antlr)RefAST __t294 = _t;
-									ANTLR_USE_NAMESPACE(antlr)RefAST tmp176_AST_in = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST __t297 = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST tmp175_AST_in = _t;
 									match(_t,UTIMES);
 									_t = _t->getFirstChild();
-									ANTLR_USE_NAMESPACE(antlr)RefAST __t295 = _t;
-									ANTLR_USE_NAMESPACE(antlr)RefAST tmp177_AST_in = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST __t298 = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST tmp176_AST_in = _t;
 									match(_t,INC);
 									_t = _t->getFirstChild();
 									out(_t);
 									_t = _retTree;
-									_t = __t295;
+									_t = __t298;
 									_t = _t->getNextSibling();
-									_t = __t294;
+									_t = __t297;
 									_t = _t->getNextSibling();
 									}
 								}
 								catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-									synPredMatched296 = false;
+									synPredMatched299 = false;
 								}
-								_t = __t296;
+								_t = __t299;
 								inputState->guessing--;
 							}
-							if ( synPredMatched296 ) {
-								ANTLR_USE_NAMESPACE(antlr)RefAST __t297 = _t;
-								ANTLR_USE_NAMESPACE(antlr)RefAST tmp178_AST_in = _t;
+							if ( synPredMatched299 ) {
+								ANTLR_USE_NAMESPACE(antlr)RefAST __t300 = _t;
+								ANTLR_USE_NAMESPACE(antlr)RefAST tmp177_AST_in = _t;
 								match(_t,UTIMES);
 								_t = _t->getFirstChild();
-								ANTLR_USE_NAMESPACE(antlr)RefAST __t298 = _t;
-								ANTLR_USE_NAMESPACE(antlr)RefAST tmp179_AST_in = _t;
+								ANTLR_USE_NAMESPACE(antlr)RefAST __t301 = _t;
+								ANTLR_USE_NAMESPACE(antlr)RefAST tmp178_AST_in = _t;
 								match(_t,INC);
 								_t = _t->getFirstChild();
 								var1=out_asn(_t);
 								_t = _retTree;
-								_t = __t298;
+								_t = __t301;
 								_t = _t->getNextSibling();
-								_t = __t297;
+								_t = __t300;
 								_t = _t->getNextSibling();
 								if ( inputState->guessing==0 ) {
-#line 1855 "ncoGrammer.g"
+#line 1904 "ncoGrammer.g"
 									
 									var=ncap_var_var_inc(var1,NULL_CEWI,INC,true,prs_arg);      
 									
-#line 1938 "ncoTree.cpp"
+#line 2036 "ncoTree.cpp"
 								}
 							}
 							else {
-								bool synPredMatched302 = false;
+								bool synPredMatched305 = false;
 								if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 									_t = ASTNULL;
 								if (((_t->getType() == UTIMES))) {
-									ANTLR_USE_NAMESPACE(antlr)RefAST __t302 = _t;
-									synPredMatched302 = true;
+									ANTLR_USE_NAMESPACE(antlr)RefAST __t305 = _t;
+									synPredMatched305 = true;
 									inputState->guessing++;
 									try {
 										{
-										ANTLR_USE_NAMESPACE(antlr)RefAST __t300 = _t;
-										ANTLR_USE_NAMESPACE(antlr)RefAST tmp180_AST_in = _t;
+										ANTLR_USE_NAMESPACE(antlr)RefAST __t303 = _t;
+										ANTLR_USE_NAMESPACE(antlr)RefAST tmp179_AST_in = _t;
 										match(_t,UTIMES);
 										_t = _t->getFirstChild();
-										ANTLR_USE_NAMESPACE(antlr)RefAST __t301 = _t;
-										ANTLR_USE_NAMESPACE(antlr)RefAST tmp181_AST_in = _t;
+										ANTLR_USE_NAMESPACE(antlr)RefAST __t304 = _t;
+										ANTLR_USE_NAMESPACE(antlr)RefAST tmp180_AST_in = _t;
 										match(_t,DEC);
 										_t = _t->getFirstChild();
 										out(_t);
 										_t = _retTree;
-										_t = __t301;
+										_t = __t304;
 										_t = _t->getNextSibling();
-										_t = __t300;
+										_t = __t303;
 										_t = _t->getNextSibling();
 										}
 									}
 									catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-										synPredMatched302 = false;
+										synPredMatched305 = false;
 									}
-									_t = __t302;
+									_t = __t305;
 									inputState->guessing--;
 								}
-								if ( synPredMatched302 ) {
-									ANTLR_USE_NAMESPACE(antlr)RefAST __t303 = _t;
-									ANTLR_USE_NAMESPACE(antlr)RefAST tmp182_AST_in = _t;
+								if ( synPredMatched305 ) {
+									ANTLR_USE_NAMESPACE(antlr)RefAST __t306 = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST tmp181_AST_in = _t;
 									match(_t,UTIMES);
 									_t = _t->getFirstChild();
-									ANTLR_USE_NAMESPACE(antlr)RefAST __t304 = _t;
-									ANTLR_USE_NAMESPACE(antlr)RefAST tmp183_AST_in = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST __t307 = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST tmp182_AST_in = _t;
 									match(_t,DEC);
 									_t = _t->getFirstChild();
 									var1=out_asn(_t);
 									_t = _retTree;
-									_t = __t304;
+									_t = __t307;
 									_t = _t->getNextSibling();
-									_t = __t303;
+									_t = __t306;
 									_t = _t->getNextSibling();
 									if ( inputState->guessing==0 ) {
-#line 1858 "ncoGrammer.g"
+#line 1907 "ncoGrammer.g"
 										
 										var=ncap_var_var_inc(var1,NULL_CEWI,DEC,true,prs_arg);      
 										
-#line 1993 "ncoTree.cpp"
+#line 2091 "ncoTree.cpp"
 									}
 								}
 								else if ((_t->getType() == MINUS)) {
-									ANTLR_USE_NAMESPACE(antlr)RefAST __t310 = _t;
-									ANTLR_USE_NAMESPACE(antlr)RefAST tmp184_AST_in = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST __t313 = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST tmp183_AST_in = _t;
 									match(_t,MINUS);
 									_t = _t->getFirstChild();
 									var1=out(_t);
 									_t = _retTree;
-									_t = __t310;
+									_t = __t313;
 									_t = _t->getNextSibling();
 									if ( inputState->guessing==0 ) {
-#line 1875 "ncoGrammer.g"
+#line 1924 "ncoGrammer.g"
 										var=ncap_var_var_op(var1,NULL_CEWI, MINUS );
-#line 2008 "ncoTree.cpp"
+#line 2106 "ncoTree.cpp"
 									}
 								}
 								else if ((_t->getType() == PLUS)) {
-									ANTLR_USE_NAMESPACE(antlr)RefAST __t311 = _t;
-									ANTLR_USE_NAMESPACE(antlr)RefAST tmp185_AST_in = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST __t314 = _t;
+									ANTLR_USE_NAMESPACE(antlr)RefAST tmp184_AST_in = _t;
 									match(_t,PLUS);
 									_t = _t->getFirstChild();
 									var1=out(_t);
 									_t = _retTree;
-									_t = __t311;
+									_t = __t314;
 									_t = _t->getNextSibling();
 								}
 								else {
-									bool synPredMatched337 = false;
+									bool synPredMatched340 = false;
 									if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 										_t = ASTNULL;
 									if (((_t->getType() == VAR_ID))) {
-										ANTLR_USE_NAMESPACE(antlr)RefAST __t337 = _t;
-										synPredMatched337 = true;
+										ANTLR_USE_NAMESPACE(antlr)RefAST __t340 = _t;
+										synPredMatched340 = true;
 										inputState->guessing++;
 										try {
 											{
-											ANTLR_USE_NAMESPACE(antlr)RefAST __t336 = _t;
-											ANTLR_USE_NAMESPACE(antlr)RefAST tmp186_AST_in = _t;
+											ANTLR_USE_NAMESPACE(antlr)RefAST __t339 = _t;
+											ANTLR_USE_NAMESPACE(antlr)RefAST tmp185_AST_in = _t;
 											match(_t,VAR_ID);
 											_t = _t->getFirstChild();
-											ANTLR_USE_NAMESPACE(antlr)RefAST tmp187_AST_in = _t;
+											ANTLR_USE_NAMESPACE(antlr)RefAST tmp186_AST_in = _t;
 											match(_t,LMT_LIST);
 											_t = _t->getNextSibling();
-											_t = __t336;
+											_t = __t339;
 											_t = _t->getNextSibling();
 											}
 										}
 										catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-											synPredMatched337 = false;
+											synPredMatched340 = false;
 										}
-										_t = __t337;
+										_t = __t340;
 										inputState->guessing--;
 									}
-									if ( synPredMatched337 ) {
-										ANTLR_USE_NAMESPACE(antlr)RefAST __t338 = _t;
+									if ( synPredMatched340 ) {
+										ANTLR_USE_NAMESPACE(antlr)RefAST __t341 = _t;
 										vid = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 										match(_t,VAR_ID);
 										_t = _t->getFirstChild();
 										lmt = _t;
 										match(_t,LMT_LIST);
 										_t = _t->getNextSibling();
-										_t = __t338;
+										_t = __t341;
 										_t = _t->getNextSibling();
 										if ( inputState->guessing==0 ) {
-#line 2050 "ncoGrammer.g"
+#line 2099 "ncoGrammer.g"
 											
 											// see if hyperslab limit is a single value
 											if(lmt->getNumberOfChildren()==1 && 
@@ -2067,7 +2165,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 											var=var_lmt(vid);
 											
 											
-#line 2071 "ncoTree.cpp"
+#line 2169 "ncoTree.cpp"
 										}
 									}
 									else if ((_t->getType() == VAR_ID)) {
@@ -2075,7 +2173,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 										match(_t,VAR_ID);
 										_t = _t->getNextSibling();
 										if ( inputState->guessing==0 ) {
-#line 2064 "ncoGrammer.g"
+#line 2113 "ncoGrammer.g"
 											
 											
 											var=prs_arg->ncap_var_init(v->getText(),true);
@@ -2091,7 +2189,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 											if(bcst && var->sz >1)
 											var=ncap_cst_do(var,var_cst,prs_arg->ntl_scn);
 											
-#line 2095 "ncoTree.cpp"
+#line 2193 "ncoTree.cpp"
 										}
 									}
 		else {
@@ -2115,9 +2213,9 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	bool bram
 ) {
-#line 1304 "ncoGrammer.g"
+#line 1350 "ncoGrammer.g"
 	var_sct *var;
-#line 2121 "ncoTree.cpp"
+#line 2219 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST assign_ntl_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 	ANTLR_USE_NAMESPACE(antlr)RefAST vid = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST lmt = ANTLR_USE_NAMESPACE(antlr)nullAST;
@@ -2127,52 +2225,52 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	ANTLR_USE_NAMESPACE(antlr)RefAST att = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST att1 = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST att2 = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 1304 "ncoGrammer.g"
+#line 1350 "ncoGrammer.g"
 	
 	const std::string fnc_nm("assign_ntl"); 
 	var=NULL_CEWI;
 	
-#line 2136 "ncoTree.cpp"
+#line 2234 "ncoTree.cpp"
 	
 	try {      // for error handling
-		bool synPredMatched241 = false;
+		bool synPredMatched244 = false;
 		if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 			_t = ASTNULL;
 		if (((_t->getType() == VAR_ID))) {
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t241 = _t;
-			synPredMatched241 = true;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t244 = _t;
+			synPredMatched244 = true;
 			inputState->guessing++;
 			try {
 				{
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t240 = _t;
-				ANTLR_USE_NAMESPACE(antlr)RefAST tmp188_AST_in = _t;
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t243 = _t;
+				ANTLR_USE_NAMESPACE(antlr)RefAST tmp187_AST_in = _t;
 				match(_t,VAR_ID);
 				_t = _t->getFirstChild();
-				ANTLR_USE_NAMESPACE(antlr)RefAST tmp189_AST_in = _t;
+				ANTLR_USE_NAMESPACE(antlr)RefAST tmp188_AST_in = _t;
 				match(_t,LMT_LIST);
 				_t = _t->getNextSibling();
-				_t = __t240;
+				_t = __t243;
 				_t = _t->getNextSibling();
 				}
 			}
 			catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-				synPredMatched241 = false;
+				synPredMatched244 = false;
 			}
-			_t = __t241;
+			_t = __t244;
 			inputState->guessing--;
 		}
-		if ( synPredMatched241 ) {
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t242 = _t;
+		if ( synPredMatched244 ) {
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t245 = _t;
 			vid = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 			match(_t,VAR_ID);
 			_t = _t->getFirstChild();
 			lmt = _t;
 			match(_t,LMT_LIST);
 			_t = _t->getNextSibling();
-			_t = __t242;
+			_t = __t245;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1309 "ncoGrammer.g"
+#line 1355 "ncoGrammer.g"
 				
 				
 				std::string var_nm; 
@@ -2201,48 +2299,48 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 				(void)prs_arg->int_vtr.push_ow(Nvar);
 				}
 				
-#line 2205 "ncoTree.cpp"
+#line 2303 "ncoTree.cpp"
 			}
 		}
 		else {
-			bool synPredMatched245 = false;
+			bool synPredMatched248 = false;
 			if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 				_t = ASTNULL;
 			if (((_t->getType() == VAR_ID))) {
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t245 = _t;
-				synPredMatched245 = true;
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t248 = _t;
+				synPredMatched248 = true;
 				inputState->guessing++;
 				try {
 					{
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t244 = _t;
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp190_AST_in = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t247 = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp189_AST_in = _t;
 					match(_t,VAR_ID);
 					_t = _t->getFirstChild();
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp191_AST_in = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp190_AST_in = _t;
 					match(_t,DMN_LIST);
 					_t = _t->getNextSibling();
-					_t = __t244;
+					_t = __t247;
 					_t = _t->getNextSibling();
 					}
 				}
 				catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-					synPredMatched245 = false;
+					synPredMatched248 = false;
 				}
-				_t = __t245;
+				_t = __t248;
 				inputState->guessing--;
 			}
-			if ( synPredMatched245 ) {
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t246 = _t;
+			if ( synPredMatched248 ) {
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t249 = _t;
 				vid1 = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 				match(_t,VAR_ID);
 				_t = _t->getFirstChild();
 				dmn = _t;
 				match(_t,DMN_LIST);
 				_t = _t->getNextSibling();
-				_t = __t246;
+				_t = __t249;
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1338 "ncoGrammer.g"
+#line 1384 "ncoGrammer.g"
 					
 					
 					int idx;
@@ -2311,7 +2409,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 					
 					bcst=false;   
 					
-#line 2315 "ncoTree.cpp"
+#line 2413 "ncoTree.cpp"
 				}
 			}
 			else if ((_t->getType() == VAR_ID)) {
@@ -2319,7 +2417,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 				match(_t,VAR_ID);
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1407 "ncoGrammer.g"
+#line 1453 "ncoGrammer.g"
 					
 					
 					std::string var_nm;
@@ -2348,97 +2446,97 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 					//(void)ncap_var_write_omp(var1,bram,prs_arg);
 					
 					
-#line 2352 "ncoTree.cpp"
+#line 2450 "ncoTree.cpp"
 				}
 			}
 			else {
-				bool synPredMatched249 = false;
+				bool synPredMatched252 = false;
 				if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 					_t = ASTNULL;
 				if (((_t->getType() == ATT_ID))) {
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t249 = _t;
-					synPredMatched249 = true;
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t252 = _t;
+					synPredMatched252 = true;
 					inputState->guessing++;
 					try {
 						{
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t248 = _t;
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp192_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t251 = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp191_AST_in = _t;
 						match(_t,ATT_ID);
 						_t = _t->getFirstChild();
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp193_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp192_AST_in = _t;
 						match(_t,LMT_LIST);
 						_t = _t->getNextSibling();
-						_t = __t248;
+						_t = __t251;
 						_t = _t->getNextSibling();
 						}
 					}
 					catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-						synPredMatched249 = false;
+						synPredMatched252 = false;
 					}
-					_t = __t249;
+					_t = __t252;
 					inputState->guessing--;
 				}
-				if ( synPredMatched249 ) {
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t250 = _t;
+				if ( synPredMatched252 ) {
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t253 = _t;
 					att = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 					match(_t,ATT_ID);
 					_t = _t->getFirstChild();
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp194_AST_in = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp193_AST_in = _t;
 					match(_t,LMT_LIST);
 					_t = _t->getNextSibling();
-					_t = __t250;
+					_t = __t253;
 					_t = _t->getNextSibling();
 					if ( inputState->guessing==0 ) {
-#line 1436 "ncoGrammer.g"
+#line 1482 "ncoGrammer.g"
 						
 						;
 						
-#line 2397 "ncoTree.cpp"
+#line 2495 "ncoTree.cpp"
 					}
 				}
 				else {
-					bool synPredMatched253 = false;
+					bool synPredMatched256 = false;
 					if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 						_t = ASTNULL;
 					if (((_t->getType() == ATT_ID))) {
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t253 = _t;
-						synPredMatched253 = true;
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t256 = _t;
+						synPredMatched256 = true;
 						inputState->guessing++;
 						try {
 							{
-							ANTLR_USE_NAMESPACE(antlr)RefAST __t252 = _t;
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp195_AST_in = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST __t255 = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp194_AST_in = _t;
 							match(_t,ATT_ID);
 							_t = _t->getFirstChild();
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp196_AST_in = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp195_AST_in = _t;
 							match(_t,LMT_DMN);
 							_t = _t->getNextSibling();
-							_t = __t252;
+							_t = __t255;
 							_t = _t->getNextSibling();
 							}
 						}
 						catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-							synPredMatched253 = false;
+							synPredMatched256 = false;
 						}
-						_t = __t253;
+						_t = __t256;
 						inputState->guessing--;
 					}
-					if ( synPredMatched253 ) {
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t254 = _t;
+					if ( synPredMatched256 ) {
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t257 = _t;
 						att1 = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 						match(_t,ATT_ID);
 						_t = _t->getFirstChild();
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp197_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp196_AST_in = _t;
 						match(_t,DMN_LIST);
 						_t = _t->getNextSibling();
-						_t = __t254;
+						_t = __t257;
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1439 "ncoGrammer.g"
+#line 1485 "ncoGrammer.g"
 							
 							;
 							
-#line 2442 "ncoTree.cpp"
+#line 2540 "ncoTree.cpp"
 						}
 					}
 					else if ((_t->getType() == ATT_ID)) {
@@ -2446,7 +2544,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 						match(_t,ATT_ID);
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1442 "ncoGrammer.g"
+#line 1488 "ncoGrammer.g"
 							
 							
 							//In Initial scan all newly defined atts are flagged as Undefined
@@ -2464,7 +2562,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 							var=nco_var_dpl(var1);    
 							
 							
-#line 2468 "ncoTree.cpp"
+#line 2566 "ncoTree.cpp"
 						}
 					}
 		else {
@@ -2488,9 +2586,9 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	bool bram
 ) {
-#line 1462 "ncoGrammer.g"
+#line 1508 "ncoGrammer.g"
 	var_sct *var;
-#line 2494 "ncoTree.cpp"
+#line 2592 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST assign_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 	ANTLR_USE_NAMESPACE(antlr)RefAST vid = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST lmt = ANTLR_USE_NAMESPACE(antlr)nullAST;
@@ -2500,52 +2598,52 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	ANTLR_USE_NAMESPACE(antlr)RefAST att = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST att1 = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST att2 = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 1462 "ncoGrammer.g"
+#line 1508 "ncoGrammer.g"
 	
 	const std::string fnc_nm("assign"); 
 	var=NULL_CEWI;
 	
-#line 2509 "ncoTree.cpp"
+#line 2607 "ncoTree.cpp"
 	
 	try {      // for error handling
-		bool synPredMatched258 = false;
+		bool synPredMatched261 = false;
 		if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 			_t = ASTNULL;
 		if (((_t->getType() == VAR_ID))) {
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t258 = _t;
-			synPredMatched258 = true;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t261 = _t;
+			synPredMatched261 = true;
 			inputState->guessing++;
 			try {
 				{
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t257 = _t;
-				ANTLR_USE_NAMESPACE(antlr)RefAST tmp198_AST_in = _t;
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t260 = _t;
+				ANTLR_USE_NAMESPACE(antlr)RefAST tmp197_AST_in = _t;
 				match(_t,VAR_ID);
 				_t = _t->getFirstChild();
-				ANTLR_USE_NAMESPACE(antlr)RefAST tmp199_AST_in = _t;
+				ANTLR_USE_NAMESPACE(antlr)RefAST tmp198_AST_in = _t;
 				match(_t,LMT_LIST);
 				_t = _t->getNextSibling();
-				_t = __t257;
+				_t = __t260;
 				_t = _t->getNextSibling();
 				}
 			}
 			catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-				synPredMatched258 = false;
+				synPredMatched261 = false;
 			}
-			_t = __t258;
+			_t = __t261;
 			inputState->guessing--;
 		}
-		if ( synPredMatched258 ) {
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t259 = _t;
+		if ( synPredMatched261 ) {
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t262 = _t;
 			vid = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 			match(_t,VAR_ID);
 			_t = _t->getFirstChild();
 			lmt = _t;
 			match(_t,LMT_LIST);
 			_t = _t->getNextSibling();
-			_t = __t259;
+			_t = __t262;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1468 "ncoGrammer.g"
+#line 1514 "ncoGrammer.g"
 				
 				
 				int idx;
@@ -2654,11 +2752,14 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 				if(!Nvar || ( Nvar && Nvar->flg_stt==1)){              
 				// if var isn't in ouptut then copy it there
 				//rcd=nco_inq_varid_flg(prs_arg->out_id,var_nm,&var_id);
+				
 				var_lhs=prs_arg->ncap_var_init(var_nm,true);
 				
 				// copy atts to output
 				(void)ncap_att_cpy(var_nm,var_nm,prs_arg);
 				(void)prs_arg->ncap_var_write(var_lhs,false);
+				
+				wrn_prn(fnc_nm,"Var being read and written in ASSIGN "+ var_nm); 
 				}
 				
 				// Get "new" var_id   
@@ -2738,48 +2839,48 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 				var=prs_arg->ncap_var_init(var_nm,true);
 				
 				
-#line 2742 "ncoTree.cpp"
+#line 2843 "ncoTree.cpp"
 			}
 		}
 		else {
-			bool synPredMatched262 = false;
+			bool synPredMatched265 = false;
 			if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 				_t = ASTNULL;
 			if (((_t->getType() == VAR_ID))) {
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t262 = _t;
-				synPredMatched262 = true;
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t265 = _t;
+				synPredMatched265 = true;
 				inputState->guessing++;
 				try {
 					{
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t261 = _t;
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp200_AST_in = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t264 = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp199_AST_in = _t;
 					match(_t,VAR_ID);
 					_t = _t->getFirstChild();
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp201_AST_in = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp200_AST_in = _t;
 					match(_t,DMN_LIST);
 					_t = _t->getNextSibling();
-					_t = __t261;
+					_t = __t264;
 					_t = _t->getNextSibling();
 					}
 				}
 				catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-					synPredMatched262 = false;
+					synPredMatched265 = false;
 				}
-				_t = __t262;
+				_t = __t265;
 				inputState->guessing--;
 			}
-			if ( synPredMatched262 ) {
-				ANTLR_USE_NAMESPACE(antlr)RefAST __t263 = _t;
+			if ( synPredMatched265 ) {
+				ANTLR_USE_NAMESPACE(antlr)RefAST __t266 = _t;
 				vid1 = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 				match(_t,VAR_ID);
 				_t = _t->getFirstChild();
 				dmn = _t;
 				match(_t,DMN_LIST);
 				_t = _t->getNextSibling();
-				_t = __t263;
+				_t = __t266;
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1662 "ncoGrammer.g"
+#line 1711 "ncoGrammer.g"
 					
 					
 					var_sct *var1;
@@ -2858,7 +2959,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 					var_cst=nco_var_free(var_cst); 
 					
 					
-#line 2862 "ncoTree.cpp"
+#line 2963 "ncoTree.cpp"
 				}
 			}
 			else if ((_t->getType() == VAR_ID)) {
@@ -2866,7 +2967,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 				match(_t,VAR_ID);
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1741 "ncoGrammer.g"
+#line 1790 "ncoGrammer.g"
 					
 					// Set class wide variables
 					var_sct *var1;
@@ -2920,97 +3021,97 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 					var=prs_arg->ncap_var_init(var_nm,true);               ;
 					
 					
-#line 2924 "ncoTree.cpp"
+#line 3025 "ncoTree.cpp"
 				}
 			}
 			else {
-				bool synPredMatched266 = false;
+				bool synPredMatched269 = false;
 				if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 					_t = ASTNULL;
 				if (((_t->getType() == ATT_ID))) {
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t266 = _t;
-					synPredMatched266 = true;
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t269 = _t;
+					synPredMatched269 = true;
 					inputState->guessing++;
 					try {
 						{
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t265 = _t;
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp202_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t268 = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp201_AST_in = _t;
 						match(_t,ATT_ID);
 						_t = _t->getFirstChild();
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp203_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp202_AST_in = _t;
 						match(_t,LMT_LIST);
 						_t = _t->getNextSibling();
-						_t = __t265;
+						_t = __t268;
 						_t = _t->getNextSibling();
 						}
 					}
 					catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-						synPredMatched266 = false;
+						synPredMatched269 = false;
 					}
-					_t = __t266;
+					_t = __t269;
 					inputState->guessing--;
 				}
-				if ( synPredMatched266 ) {
-					ANTLR_USE_NAMESPACE(antlr)RefAST __t267 = _t;
+				if ( synPredMatched269 ) {
+					ANTLR_USE_NAMESPACE(antlr)RefAST __t270 = _t;
 					att = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 					match(_t,ATT_ID);
 					_t = _t->getFirstChild();
-					ANTLR_USE_NAMESPACE(antlr)RefAST tmp204_AST_in = _t;
+					ANTLR_USE_NAMESPACE(antlr)RefAST tmp203_AST_in = _t;
 					match(_t,LMT_LIST);
 					_t = _t->getNextSibling();
-					_t = __t267;
+					_t = __t270;
 					_t = _t->getNextSibling();
 					if ( inputState->guessing==0 ) {
-#line 1795 "ncoGrammer.g"
+#line 1844 "ncoGrammer.g"
 						
 						;
 						
-#line 2969 "ncoTree.cpp"
+#line 3070 "ncoTree.cpp"
 					}
 				}
 				else {
-					bool synPredMatched270 = false;
+					bool synPredMatched273 = false;
 					if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
 						_t = ASTNULL;
 					if (((_t->getType() == ATT_ID))) {
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t270 = _t;
-						synPredMatched270 = true;
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t273 = _t;
+						synPredMatched273 = true;
 						inputState->guessing++;
 						try {
 							{
-							ANTLR_USE_NAMESPACE(antlr)RefAST __t269 = _t;
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp205_AST_in = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST __t272 = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp204_AST_in = _t;
 							match(_t,ATT_ID);
 							_t = _t->getFirstChild();
-							ANTLR_USE_NAMESPACE(antlr)RefAST tmp206_AST_in = _t;
+							ANTLR_USE_NAMESPACE(antlr)RefAST tmp205_AST_in = _t;
 							match(_t,LMT_DMN);
 							_t = _t->getNextSibling();
-							_t = __t269;
+							_t = __t272;
 							_t = _t->getNextSibling();
 							}
 						}
 						catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
-							synPredMatched270 = false;
+							synPredMatched273 = false;
 						}
-						_t = __t270;
+						_t = __t273;
 						inputState->guessing--;
 					}
-					if ( synPredMatched270 ) {
-						ANTLR_USE_NAMESPACE(antlr)RefAST __t271 = _t;
+					if ( synPredMatched273 ) {
+						ANTLR_USE_NAMESPACE(antlr)RefAST __t274 = _t;
 						att1 = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 						match(_t,ATT_ID);
 						_t = _t->getFirstChild();
-						ANTLR_USE_NAMESPACE(antlr)RefAST tmp207_AST_in = _t;
+						ANTLR_USE_NAMESPACE(antlr)RefAST tmp206_AST_in = _t;
 						match(_t,DMN_LIST);
 						_t = _t->getNextSibling();
-						_t = __t271;
+						_t = __t274;
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1798 "ncoGrammer.g"
+#line 1847 "ncoGrammer.g"
 							
 							;
 							
-#line 3014 "ncoTree.cpp"
+#line 3115 "ncoTree.cpp"
 						}
 					}
 					else if ((_t->getType() == ATT_ID)) {
@@ -3018,7 +3119,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 						match(_t,ATT_ID);
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1801 "ncoGrammer.g"
+#line 1850 "ncoGrammer.g"
 							
 							
 							var_sct *var1;
@@ -3052,7 +3153,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 							var=nco_var_dpl(var1);               ;
 							
 							
-#line 3056 "ncoTree.cpp"
+#line 3157 "ncoTree.cpp"
 						}
 					}
 		else {
@@ -3074,19 +3175,22 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 }
 
 var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 2205 "ncoGrammer.g"
+#line 2254 "ncoGrammer.g"
 	var_sct *var;
-#line 3080 "ncoTree.cpp"
+#line 3181 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST out_asn_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 	ANTLR_USE_NAMESPACE(antlr)RefAST vid1 = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST vid = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST att = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 2205 "ncoGrammer.g"
+#line 2254 "ncoGrammer.g"
 	
 	const std::string fnc_nm("assign_asn");
 	var=NULL_CEWI; 
+	string var_nm_s; 
+	NcapVar *Nvar;
 	
-#line 3090 "ncoTree.cpp"
+	
+#line 3194 "ncoTree.cpp"
 	
 	try {      // for error handling
 		if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
@@ -3094,28 +3198,35 @@ var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 		switch ( _t->getType()) {
 		case UTIMES:
 		{
-			ANTLR_USE_NAMESPACE(antlr)RefAST __t340 = _t;
-			ANTLR_USE_NAMESPACE(antlr)RefAST tmp208_AST_in = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST __t343 = _t;
+			ANTLR_USE_NAMESPACE(antlr)RefAST tmp207_AST_in = _t;
 			match(_t,UTIMES);
 			_t = _t->getFirstChild();
 			vid1 = _t;
 			match(_t,VAR_ID);
 			_t = _t->getNextSibling();
-			_t = __t340;
+			_t = __t343;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2212 "ncoGrammer.g"
+#line 2264 "ncoGrammer.g"
 				
 				if(vid1->getFirstChild())
 				err_prn(fnc_nm,"Invalid Lvalue " +vid1->getText() );
 				
-				var=prs_arg->ncap_var_init(vid1->getText(),true);
+				//do attribute inheritance 
+				var_nm_s=vid1->getText(); 
+				
+				Nvar=prs_arg->var_vtr.find(var_nm_s);
+				if( !Nvar || Nvar->flg_stt==1 ) 
+				ncap_att_cpy(var_nm_s,var_nm_s,prs_arg);
+				
+				var=prs_arg->ncap_var_init(var_nm_s,true);
 				if(var== NULL_CEWI){
 				nco_exit(EXIT_FAILURE);
 				}
 				
 				
-#line 3119 "ncoTree.cpp"
+#line 3230 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -3125,18 +3236,26 @@ var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,VAR_ID);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2223 "ncoGrammer.g"
+#line 2282 "ncoGrammer.g"
 				
+				var_nm_s=vid->getText();  
 				if(vid->getFirstChild())
 				err_prn(fnc_nm,"Invalid Lvalue " +vid->getText() );
 				
-				var=prs_arg->ncap_var_init(vid->getText(),true);
+				//do attribute inheritance
+				
+				Nvar=prs_arg->var_vtr.find(var_nm_s);
+				
+				if( !Nvar || Nvar->flg_stt==1 ) 
+				ncap_att_cpy(var_nm_s,var_nm_s,prs_arg);
+				
+				var=prs_arg->ncap_var_init(var_nm_s,true);
 				if(var== NULL_CEWI){
 				nco_exit(EXIT_FAILURE);
 				}
 				
 				
-#line 3140 "ncoTree.cpp"
+#line 3259 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -3146,7 +3265,7 @@ var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,ATT_ID);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2234 "ncoGrammer.g"
+#line 2301 "ncoGrammer.g"
 				
 				// check "output"
 				NcapVar *Nvar=NULL;
@@ -3179,7 +3298,7 @@ var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				var->val.vp=(void*)nco_free(var->val.vp);
 				
 				
-#line 3183 "ncoTree.cpp"
+#line 3302 "ncoTree.cpp"
 			}
 			break;
 		}
@@ -3203,17 +3322,17 @@ var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 }
 
 var_sct * ncoTree::value_list(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 2268 "ncoGrammer.g"
+#line 2335 "ncoGrammer.g"
 	var_sct *var;
-#line 3209 "ncoTree.cpp"
+#line 3328 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST value_list_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 	ANTLR_USE_NAMESPACE(antlr)RefAST vlst = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 2268 "ncoGrammer.g"
+#line 2335 "ncoGrammer.g"
 	
 	const std::string fnc_nm("value_list");
 	var=NULL_CEWI; 
 	
-#line 3217 "ncoTree.cpp"
+#line 3336 "ncoTree.cpp"
 	
 	try {      // for error handling
 		{
@@ -3222,7 +3341,7 @@ var_sct * ncoTree::value_list(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 		_t = _t->getNextSibling();
 		}
 		if ( inputState->guessing==0 ) {
-#line 2273 "ncoGrammer.g"
+#line 2340 "ncoGrammer.g"
 			
 			
 			char *cp;
@@ -3310,7 +3429,7 @@ var_sct * ncoTree::value_list(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			var=var_ret;
 			
 			
-#line 3314 "ncoTree.cpp"
+#line 3433 "ncoTree.cpp"
 		}
 	}
 	catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
@@ -3329,20 +3448,20 @@ var_sct * ncoTree::value_list(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 var_sct * ncoTree::value_list_string(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	 std::vector<var_sct*> &exp_vtr
 ) {
-#line 2364 "ncoGrammer.g"
+#line 2431 "ncoGrammer.g"
 	var_sct *var;
-#line 3335 "ncoTree.cpp"
+#line 3454 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST value_list_string_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
-#line 2364 "ncoGrammer.g"
+#line 2431 "ncoGrammer.g"
 	
 	const std::string fnc_nm("value_list_string");
 	var=NULL_CEWI; 
 	
-#line 3342 "ncoTree.cpp"
+#line 3461 "ncoTree.cpp"
 	
 	try {      // for error handling
 		if ( inputState->guessing==0 ) {
-#line 2370 "ncoGrammer.g"
+#line 2437 "ncoGrammer.g"
 			
 			int idx;
 			int nbr_lst;
@@ -3391,7 +3510,7 @@ var_sct * ncoTree::value_list_string(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 			end_val: var=var_ret;
 			
 			
-#line 3395 "ncoTree.cpp"
+#line 3514 "ncoTree.cpp"
 		}
 	}
 	catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
@@ -3410,26 +3529,26 @@ var_sct * ncoTree::value_list_string(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 bool  ncoTree::where_assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	var_sct *var_msk
 ) {
-#line 2421 "ncoGrammer.g"
-	bool bret;
-#line 3416 "ncoTree.cpp"
+#line 2488 "ncoGrammer.g"
+	bool bret=false;
+#line 3535 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST where_assign_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 	ANTLR_USE_NAMESPACE(antlr)RefAST vid = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 2421 "ncoGrammer.g"
+#line 2488 "ncoGrammer.g"
 	
 	const std::string fnc_nm("where_assign");
 	var_sct *var_rhs;
 	
 	
-#line 3425 "ncoTree.cpp"
+#line 3544 "ncoTree.cpp"
 	
 	try {      // for error handling
-		ANTLR_USE_NAMESPACE(antlr)RefAST __t345 = _t;
-		ANTLR_USE_NAMESPACE(antlr)RefAST tmp209_AST_in = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST __t348 = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST tmp208_AST_in = _t;
 		match(_t,EXPR);
 		_t = _t->getFirstChild();
-		ANTLR_USE_NAMESPACE(antlr)RefAST __t346 = _t;
-		ANTLR_USE_NAMESPACE(antlr)RefAST tmp210_AST_in = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST __t349 = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST tmp209_AST_in = _t;
 		match(_t,ASSIGN);
 		_t = _t->getFirstChild();
 		vid = _t;
@@ -3437,12 +3556,12 @@ bool  ncoTree::where_assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 		_t = _t->getNextSibling();
 		var_rhs=out(_t);
 		_t = _retTree;
-		_t = __t346;
+		_t = __t349;
 		_t = _t->getNextSibling();
-		_t = __t345;
+		_t = __t348;
 		_t = _t->getNextSibling();
 		if ( inputState->guessing==0 ) {
-#line 2427 "ncoGrammer.g"
+#line 2494 "ncoGrammer.g"
 			
 			
 			bool bfr=false;
@@ -3574,7 +3693,7 @@ bool  ncoTree::where_assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 			prs_arg->ncap_var_write(var_lhs,false);
 			bret=true;
 			
-#line 3578 "ncoTree.cpp"
+#line 3697 "ncoTree.cpp"
 		}
 	}
 	catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
@@ -3591,42 +3710,42 @@ bool  ncoTree::where_assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 }
 
 var_sct * ncoTree::var_lmt_one(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 2562 "ncoGrammer.g"
+#line 2629 "ncoGrammer.g"
 	var_sct *var;
-#line 3597 "ncoTree.cpp"
+#line 3716 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST var_lmt_one_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 	ANTLR_USE_NAMESPACE(antlr)RefAST vid = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 2562 "ncoGrammer.g"
+#line 2629 "ncoGrammer.g"
 	
 	const std::string fnc_nm("var_lmt_one");
 	var=NULL_CEWI; 
 	var_sct *var_nbr;
 	
-#line 3606 "ncoTree.cpp"
+#line 3725 "ncoTree.cpp"
 	
 	try {      // for error handling
-		ANTLR_USE_NAMESPACE(antlr)RefAST __t348 = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST __t351 = _t;
 		vid = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 		match(_t,VAR_ID);
 		_t = _t->getFirstChild();
-		ANTLR_USE_NAMESPACE(antlr)RefAST __t349 = _t;
-		ANTLR_USE_NAMESPACE(antlr)RefAST tmp211_AST_in = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST __t352 = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST tmp210_AST_in = _t;
 		match(_t,LMT_LIST);
 		_t = _t->getFirstChild();
-		ANTLR_USE_NAMESPACE(antlr)RefAST __t350 = _t;
-		ANTLR_USE_NAMESPACE(antlr)RefAST tmp212_AST_in = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST __t353 = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST tmp211_AST_in = _t;
 		match(_t,LMT);
 		_t = _t->getFirstChild();
 		var_nbr=out(_t);
 		_t = _retTree;
-		_t = __t350;
+		_t = __t353;
 		_t = _t->getNextSibling();
-		_t = __t349;
+		_t = __t352;
 		_t = _t->getNextSibling();
-		_t = __t348;
+		_t = __t351;
 		_t = _t->getNextSibling();
 		if ( inputState->guessing==0 ) {
-#line 2568 "ncoGrammer.g"
+#line 2635 "ncoGrammer.g"
 			
 			
 			int idx;
@@ -3727,7 +3846,7 @@ var_sct * ncoTree::var_lmt_one(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			end0:       var_nbr=nco_var_free(var_nbr);
 			var_rhs=nco_var_free(var_rhs);   
 			
-#line 3731 "ncoTree.cpp"
+#line 3850 "ncoTree.cpp"
 		}
 	}
 	catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
@@ -3746,42 +3865,42 @@ var_sct * ncoTree::var_lmt_one(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 var_sct * ncoTree::var_lmt_one_lhs(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	bool bram
 ) {
-#line 2672 "ncoGrammer.g"
+#line 2739 "ncoGrammer.g"
 	var_sct *var;
-#line 3752 "ncoTree.cpp"
+#line 3871 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST var_lmt_one_lhs_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 	ANTLR_USE_NAMESPACE(antlr)RefAST vid = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 2672 "ncoGrammer.g"
+#line 2739 "ncoGrammer.g"
 	
 	const std::string fnc_nm("var_lmt_one_lhs");
 	var=NULL_CEWI; 
 	var_sct *var_nbr;
 	
-#line 3761 "ncoTree.cpp"
+#line 3880 "ncoTree.cpp"
 	
 	try {      // for error handling
-		ANTLR_USE_NAMESPACE(antlr)RefAST __t352 = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST __t355 = _t;
 		vid = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 		match(_t,VAR_ID);
 		_t = _t->getFirstChild();
-		ANTLR_USE_NAMESPACE(antlr)RefAST __t353 = _t;
-		ANTLR_USE_NAMESPACE(antlr)RefAST tmp213_AST_in = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST __t356 = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST tmp212_AST_in = _t;
 		match(_t,LMT_LIST);
 		_t = _t->getFirstChild();
-		ANTLR_USE_NAMESPACE(antlr)RefAST __t354 = _t;
-		ANTLR_USE_NAMESPACE(antlr)RefAST tmp214_AST_in = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST __t357 = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST tmp213_AST_in = _t;
 		match(_t,LMT);
 		_t = _t->getFirstChild();
 		var_nbr=out(_t);
 		_t = _retTree;
-		_t = __t354;
+		_t = __t357;
 		_t = _t->getNextSibling();
-		_t = __t353;
+		_t = __t356;
 		_t = _t->getNextSibling();
-		_t = __t352;
+		_t = __t355;
 		_t = _t->getNextSibling();
 		if ( inputState->guessing==0 ) {
-#line 2678 "ncoGrammer.g"
+#line 2745 "ncoGrammer.g"
 			
 			int idx; 
 			int var_id; 
@@ -3926,7 +4045,7 @@ var_sct * ncoTree::var_lmt_one_lhs(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 			var_rhs=nco_var_free(var_rhs); 
 			var_nbr=nco_var_free(var_nbr); 
 			
-#line 3930 "ncoTree.cpp"
+#line 4049 "ncoTree.cpp"
 		}
 	}
 	catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
@@ -3943,31 +4062,31 @@ var_sct * ncoTree::var_lmt_one_lhs(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 }
 
 var_sct * ncoTree::var_lmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 2825 "ncoGrammer.g"
+#line 2892 "ncoGrammer.g"
 	var_sct *var;
-#line 3949 "ncoTree.cpp"
+#line 4068 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST var_lmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 	ANTLR_USE_NAMESPACE(antlr)RefAST vid = ANTLR_USE_NAMESPACE(antlr)nullAST;
 	ANTLR_USE_NAMESPACE(antlr)RefAST lmt = ANTLR_USE_NAMESPACE(antlr)nullAST;
-#line 2825 "ncoGrammer.g"
+#line 2892 "ncoGrammer.g"
 	
 	const std::string fnc_nm("var_lmt");
 	var=NULL_CEWI; 
 	
-#line 3958 "ncoTree.cpp"
+#line 4077 "ncoTree.cpp"
 	
 	try {      // for error handling
-		ANTLR_USE_NAMESPACE(antlr)RefAST __t356 = _t;
+		ANTLR_USE_NAMESPACE(antlr)RefAST __t359 = _t;
 		vid = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
 		match(_t,VAR_ID);
 		_t = _t->getFirstChild();
 		lmt = _t;
 		match(_t,LMT_LIST);
 		_t = _t->getNextSibling();
-		_t = __t356;
+		_t = __t359;
 		_t = _t->getNextSibling();
 		if ( inputState->guessing==0 ) {
-#line 2830 "ncoGrammer.g"
+#line 2897 "ncoGrammer.g"
 			
 			bool bram;   // Check for a RAM variable
 			bool bnrm;
@@ -4206,7 +4325,7 @@ var_sct * ncoTree::var_lmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			
 			end2: var_rhs=nco_var_free(var_rhs); 
 			
-#line 4210 "ncoTree.cpp"
+#line 4329 "ncoTree.cpp"
 		}
 	}
 	catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
@@ -4254,8 +4373,10 @@ const char* ncoTree::tokenNames[] = {
 	"VRSORT",
 	"VABS",
 	"VSQR2",
+	"DEFDIM",
 	";",
 	"\"defdim\"",
+	"\"defdimunlim\"",
 	"(",
 	"a string",
 	",",
diff --git a/src/nco++/ncoTree.hpp b/src/nco++/ncoTree.hpp
index dc60af7..70e1ca2 100644
--- a/src/nco++/ncoTree.hpp
+++ b/src/nco++/ncoTree.hpp
@@ -8,13 +8,13 @@
 
 #line 1 "ncoGrammer.g"
 
-/* $Header: /cvsroot/nco/nco/src/nco++/ncoTree.hpp,v 1.157 2014/10/31 17:55:57 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncoTree.hpp,v 1.164 2015/01/17 00:49:35 zender Exp $ */
 
 /* Purpose: ANTLR Grammar and support files for ncap2 */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
     // C Standard Headers
@@ -51,7 +51,7 @@
 #line 52 "ncoTree.hpp"
 class CUSTOM_API ncoTree : public ANTLR_USE_NAMESPACE(antlr)TreeParser, public ncoParserTokenTypes
 {
-#line 620 "ncoGrammer.g"
+#line 635 "ncoGrammer.g"
 
 
 private:
@@ -437,10 +437,10 @@ protected:
 private:
 	static const char* tokenNames[];
 #ifndef NO_STATIC_CONSTS
-	static const int NUM_TOKENS = 114;
+	static const int NUM_TOKENS = 116;
 #else
 	enum {
-		NUM_TOKENS = 114
+		NUM_TOKENS = 116
 	};
 #endif
 	
diff --git a/src/nco++/nco_gsl.c b/src/nco++/nco_gsl.c
index 9a883d6..23c2784 100644
--- a/src/nco++/nco_gsl.c
+++ b/src/nco++/nco_gsl.c
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/nco_gsl.c,v 1.8 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/nco_gsl.c,v 1.9 2014/12/31 01:50:08 zender Exp $ */
 
 /* Purpose: GSL functions that handle missing values */
 
@@ -9,7 +9,7 @@
    GSL and NCO are both distributed under the GPL3 license.
    The GSL code is copyright by its respective authors.
    The NCO modifications that provide missing value support are, in addition, 
-   Copyright (C) 2013--2014 Charlie Zender
+   Copyright (C) 2013--2015 Charlie Zender
    License: GNU General Public License (GPL) Version 3
    See http://www.gnu.org/copyleft/gpl.html for full license text
 
diff --git a/src/nco++/nco_gsl.h b/src/nco++/nco_gsl.h
index 0514b7d..9832401 100644
--- a/src/nco++/nco_gsl.h
+++ b/src/nco++/nco_gsl.h
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/nco_gsl.h,v 1.7 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/nco_gsl.h,v 1.8 2014/12/31 01:50:08 zender Exp $ */
 
 /* Purpose: GSL functions that handle missing values */
 
@@ -9,7 +9,7 @@
    GSL and NCO are both distributed under the GPL3 license.
    The GSL code is copyright by its respective authors.
    The NCO modifications that provide missing value support are, in addition, 
-   Copyright (C) 2013--2014 Charlie Zender
+   Copyright (C) 2013--2015 Charlie Zender
    License: GNU General Public License (GPL) Version 3
    See http://www.gnu.org/copyleft/gpl.html for full license text
 
diff --git a/src/nco++/prs_cls.cc b/src/nco++/prs_cls.cc
index 078679b..8d93c72 100644
--- a/src/nco++/prs_cls.cc
+++ b/src/nco++/prs_cls.cc
@@ -1,11 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/prs_cls.cc,v 1.34 2014/06/15 21:06:25 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/prs_cls.cc,v 1.35 2014/12/31 01:50:08 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor */
 /* prs_cls -- symbol table - class methods */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Standard C++ headers
diff --git a/src/nco++/prs_cls.hh b/src/nco++/prs_cls.hh
index 597660b..34e1cb6 100644
--- a/src/nco++/prs_cls.hh
+++ b/src/nco++/prs_cls.hh
@@ -1,9 +1,9 @@
 /* Purpose: netCDF arithmetic processor -  */
 /* prs_cls -- symbol table - data members & class methods */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #ifndef PRS_CLS_HH
diff --git a/src/nco++/sdo_utl.cc b/src/nco++/sdo_utl.cc
index 6dc3cb2..29e1176 100644
--- a/src/nco++/sdo_utl.cc
+++ b/src/nco++/sdo_utl.cc
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco++/sdo_utl.cc,v 1.7 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco++/sdo_utl.cc,v 1.8 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Implementation (declaration) of SDO stand-alone utilities 
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "sdo_utl.hh" // SDO stand-alone utilities: dbg/err/wrn_prn()
diff --git a/src/nco++/sdo_utl.hh b/src/nco++/sdo_utl.hh
index 43b87d6..ecaa03e 100644
--- a/src/nco++/sdo_utl.hh
+++ b/src/nco++/sdo_utl.hh
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco++/sdo_utl.hh,v 1.7 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco++/sdo_utl.hh,v 1.8 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Description (definition) of SDO stand-alone utilities
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Source: Routines are subset of CSZ's ~/c++/utl.[cc/hh]
diff --git a/src/nco/Makefile.am b/src/nco/Makefile.am
index 6985b50..3ed6623 100644
--- a/src/nco/Makefile.am
+++ b/src/nco/Makefile.am
@@ -1,4 +1,4 @@
-# $Header: /cvsroot/nco/nco/src/nco/Makefile.am,v 1.54 2013/12/02 01:05:56 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco/Makefile.am,v 1.55 2015/01/20 22:03:14 zender Exp $ -*-makefile-*-
 
 if BUILD_YACC_SOURCE
 NCAP=ncap
@@ -114,6 +114,7 @@ nco_rth_flt.h \
 nco_rth_utl.h \
 nco_scl_utl.h \
 nco_scm.h \
+nco_sld.h \
 nco_sng_utl.h \
 nco_srm.h \
 nco_typ.h \
@@ -170,6 +171,7 @@ nco_rth_flt.c \
 nco_rth_utl.c \
 nco_scl_utl.c \
 nco_scm.c \
+nco_sld.c \
 nco_sng_utl.c \
 nco_srm.c \
 nco_var_avg.c \
diff --git a/src/nco/Makefile.in b/src/nco/Makefile.in
index e29d6de..260411a 100644
--- a/src/nco/Makefile.in
+++ b/src/nco/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# $Header: /cvsroot/nco/nco/src/nco/Makefile.in,v 1.154 2014/10/22 18:47:06 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco/Makefile.in,v 1.156 2015/01/20 22:03:14 zender Exp $ -*-makefile-*-
 
 
 VPATH = @srcdir@
@@ -149,8 +149,8 @@ am__libnco_la_SOURCES_DIST = libnco.h nco_getopt.h ncap.h ncap_yacc.h \
 	nco_grp_utl.h nco_grp_trv.h nco_lmt.h nco_lst_utl.h nco_md5.h \
 	nco_mmr.h nco_mpi.h nco_msa.h nco_mss_val.h nco_netcdf.h \
 	nco_omp.h nco_pck.h nco_prn.h nco_rec_var.h nco_rth_flt.h \
-	nco_rth_utl.h nco_scl_utl.h nco_scm.h nco_sng_utl.h nco_srm.h \
-	nco_typ.h nco_uthash.h nco_var_avg.h nco_var_lst.h \
+	nco_rth_utl.h nco_scl_utl.h nco_scm.h nco_sld.h nco_sng_utl.h \
+	nco_srm.h nco_typ.h nco_uthash.h nco_var_avg.h nco_var_lst.h \
 	nco_var_rth.h nco_var_scv.h nco_var_utl.h nco_getopt.c \
 	nco_att_utl.c nco_aux.c nco_bnr.c nco_cln_utl.c nco_cnf_dmn.c \
 	nco_cnf_typ.c nco_cnk.c nco_cnv_arm.c nco_cnv_csm.c nco_ctl.c \
@@ -158,8 +158,9 @@ am__libnco_la_SOURCES_DIST = libnco.h nco_getopt.h ncap.h ncap_yacc.h \
 	nco_grp_trv.c nco_lmt.c nco_lst_utl.c nco_md5.c nco_mmr.c \
 	nco_msa.c nco_mss_val.c nco_netcdf.c nco_omp.c nco_pck.c \
 	nco_prn.c nco_rec_var.c nco_rth_flt.c nco_rth_utl.c \
-	nco_scl_utl.c nco_scm.c nco_sng_utl.c nco_srm.c nco_var_avg.c \
-	nco_var_lst.c nco_var_rth.c nco_var_scv.c nco_var_utl.c
+	nco_scl_utl.c nco_scm.c nco_sld.c nco_sng_utl.c nco_srm.c \
+	nco_var_avg.c nco_var_lst.c nco_var_rth.c nco_var_scv.c \
+	nco_var_utl.c
 am__objects_1 =
 am__objects_2 = $(am__objects_1)
 @NCO_NEED_GETOPT_LONG_TRUE at am__objects_3 = nco_getopt.lo
@@ -171,8 +172,8 @@ am_libnco_la_OBJECTS = $(am__objects_2) $(am__objects_3) \
 	nco_lst_utl.lo nco_md5.lo nco_mmr.lo nco_msa.lo nco_mss_val.lo \
 	nco_netcdf.lo nco_omp.lo nco_pck.lo nco_prn.lo nco_rec_var.lo \
 	nco_rth_flt.lo nco_rth_utl.lo nco_scl_utl.lo nco_scm.lo \
-	nco_sng_utl.lo nco_srm.lo nco_var_avg.lo nco_var_lst.lo \
-	nco_var_rth.lo nco_var_scv.lo nco_var_utl.lo
+	nco_sld.lo nco_sng_utl.lo nco_srm.lo nco_var_avg.lo \
+	nco_var_lst.lo nco_var_rth.lo nco_var_scv.lo nco_var_utl.lo
 libnco_la_OBJECTS = $(am_libnco_la_OBJECTS)
 AM_V_lt = $(am__v_lt_ at AM_V@)
 am__v_lt_ = $(am__v_lt_ at AM_DEFAULT_V@)
@@ -724,6 +725,7 @@ nco_rth_flt.h \
 nco_rth_utl.h \
 nco_scl_utl.h \
 nco_scm.h \
+nco_sld.h \
 nco_sng_utl.h \
 nco_srm.h \
 nco_typ.h \
@@ -779,6 +781,7 @@ nco_rth_flt.c \
 nco_rth_utl.c \
 nco_scl_utl.c \
 nco_scm.c \
+nco_sld.c \
 nco_sng_utl.c \
 nco_srm.c \
 nco_var_avg.c \
@@ -1031,6 +1034,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nco_rth_utl.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nco_scl_utl.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nco_scm.Plo at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nco_sld.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nco_sng_utl.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nco_srm.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nco_var_avg.Plo at am__quote@
@@ -1048,14 +1052,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(COMPILE) -c $<
+ at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+ at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
diff --git a/src/nco/libnco.h b/src/nco/libnco.h
index f16514f..86f0e89 100644
--- a/src/nco/libnco.h
+++ b/src/nco/libnco.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/libnco.h,v 1.60 2014/06/15 21:06:21 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/libnco.h,v 1.62 2015/01/20 21:56:46 zender Exp $ */
 
 /* Purpose: netCDF Operator (NCO) library */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Most libnco.h headers depend on netcdf.h and nco_netcdf.h headers */
@@ -51,6 +51,7 @@
 #include "nco_scm.h" /* Software configuration management */
 #include "nco_sng_utl.h" /* String utilities */
 #include "nco_srm.h" /* Streams */
+#include "nco_sld.h" /* Swath-Like Data */
 #include "nco_var_avg.h" /* Average variables */
 #include "nco_uthash.h" /* Hash table functionality */
 #include "nco_var_lst.h" /* Variable list utilities */
diff --git a/src/nco/mpncbo.c b/src/nco/mpncbo.c
index 9d616f5..d87e97d 100644
--- a/src/nco/mpncbo.c
+++ b/src/nco/mpncbo.c
@@ -1,13 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncbo.c,v 1.150 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncbo.c,v 1.151 2014/12/31 01:50:07 zender Exp $ */
 
 /* mpncbo -- netCDF binary operator */
 
 /* Purpose: Compute sum, difference, product, or ratio of specified hyperslabs of specfied variables
    from two input netCDF files and output them to a single file. */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -125,8 +125,8 @@ main(int argc,char **argv)
   
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
 
-  const char * const CVS_Id="$Id: mpncbo.c,v 1.150 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.150 $";
+  const char * const CVS_Id="$Id: mpncbo.c,v 1.151 2014/12/31 01:50:07 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.151 $";
   const char * const opt_sht_lst="3467ACcD:d:FhL:l:Oo:p:rRSt:v:X:xy:-:";
   
   cnk_dmn_sct **cnk_dmn=NULL_CEWI;
diff --git a/src/nco/mpncecat.c b/src/nco/mpncecat.c
index 961d04e..4f25cfc 100644
--- a/src/nco/mpncecat.c
+++ b/src/nco/mpncecat.c
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncecat.c,v 1.128 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncecat.c,v 1.129 2014/12/31 01:50:07 zender Exp $ */
 
 /* ncecat -- netCDF ensemble concatenator */
 
 /* Purpose: Join variables across files into a new record variable */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -100,8 +100,8 @@ main(int argc,char **argv)
   
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
 
-  const char * const CVS_Id="$Id: mpncecat.c,v 1.128 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.128 $";
+  const char * const CVS_Id="$Id: mpncecat.c,v 1.129 2014/12/31 01:50:07 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.129 $";
   const char * const opt_sht_lst="3467ACcD:d:FHhL:l:n:Oo:p:rRSt:u:v:X:x-:";
   
   cnk_dmn_sct **cnk_dmn=NULL_CEWI;
diff --git a/src/nco/mpncflint.c b/src/nco/mpncflint.c
index 425b612..cee347c 100644
--- a/src/nco/mpncflint.c
+++ b/src/nco/mpncflint.c
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncflint.c,v 1.127 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncflint.c,v 1.128 2014/12/31 01:50:07 zender Exp $ */
 
 /* mpncflint -- netCDF file interpolator */
 
 /* Purpose: Linearly interpolate a third netCDF file from two input files */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -111,8 +111,8 @@ main(int argc,char **argv)
   char *optarg_lcl=NULL; /* [sng] Local copy of system optarg */
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
 
-  const char * const CVS_Id="$Id: mpncflint.c,v 1.127 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.127 $";
+  const char * const CVS_Id="$Id: mpncflint.c,v 1.128 2014/12/31 01:50:07 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.128 $";
   const char * const opt_sht_lst="3467ACcD:d:Fhi:L:l:Oo:p:rRSt:v:xw:-:";
   
   cnk_dmn_sct **cnk_dmn=NULL_CEWI;
diff --git a/src/nco/mpncpdq.c b/src/nco/mpncpdq.c
index 3eab0db..630fd95 100644
--- a/src/nco/mpncpdq.c
+++ b/src/nco/mpncpdq.c
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncpdq.c,v 1.121 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncpdq.c,v 1.122 2014/12/31 01:50:07 zender Exp $ */
 
 /* mpncpdq -- netCDF pack, re-dimension, query */
 
 /* Purpose: Pack, re-dimension, query single netCDF file and output to a single file */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -117,8 +117,8 @@ main(int argc,char **argv)
   char add_fst_sng[]="add_offset"; /* [sng] Unidata standard string for add offset */
   char scl_fct_sng[]="scale_factor"; /* [sng] Unidata standard string for scale factor */
   
-  const char * const CVS_Id="$Id: mpncpdq.c,v 1.121 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.121 $";
+  const char * const CVS_Id="$Id: mpncpdq.c,v 1.122 2014/12/31 01:50:07 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.122 $";
   const char * const opt_sht_lst="3467Aa:CcD:d:FhL:l:M:Oo:P:p:RrSt:v:Ux-:";
   
   cnk_dmn_sct **cnk_dmn=NULL_CEWI;
diff --git a/src/nco/mpncra.c b/src/nco/mpncra.c
index c2f3df2..f0b95ff 100644
--- a/src/nco/mpncra.c
+++ b/src/nco/mpncra.c
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncra.c,v 1.158 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncra.c,v 1.159 2014/12/31 01:50:07 zender Exp $ */
 
 /* This single source file may be called as three separate executables:
    ncra -- netCDF record averager
@@ -9,9 +9,9 @@
    specfied variables of multiple input netCDF files and output them 
    to a single file. */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -150,8 +150,8 @@ main(int argc,char **argv)
   char *optarg_lcl=NULL; /* [sng] Local copy of system optarg */
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
 
-  const char * const CVS_Id="$Id: mpncra.c,v 1.158 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.158 $";
+  const char * const CVS_Id="$Id: mpncra.c,v 1.159 2014/12/31 01:50:07 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.159 $";
   const char * const opt_sht_lst="3467ACcD:d:FHhL:l:n:Oo:p:P:rRSt:v:xY:y:-:";
   
   dmn_sct **dim;
diff --git a/src/nco/mpncwa.c b/src/nco/mpncwa.c
index 9294254..7b0f470 100644
--- a/src/nco/mpncwa.c
+++ b/src/nco/mpncwa.c
@@ -1,13 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncwa.c,v 1.151 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncwa.c,v 1.152 2014/12/31 01:50:07 zender Exp $ */
 
 /* mpncwa -- netCDF weighted averager */
 
 /* Purpose: Compute averages of specified hyperslabs of specfied variables
    in a single input netCDF file and output them to a single file. */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -126,8 +126,8 @@ main(int argc,char **argv)
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
   char *wgt_nm=NULL;
 
-  const char * const CVS_Id="$Id: mpncwa.c,v 1.151 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.151 $";
+  const char * const CVS_Id="$Id: mpncwa.c,v 1.152 2014/12/31 01:50:07 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.152 $";
   const char * const opt_sht_lst="3467Aa:B:bCcD:d:FhIL:l:M:m:nNOo:p:rRST:t:v:Ww:xy:-:";
   
   cnk_dmn_sct **cnk_dmn=NULL_CEWI;
diff --git a/src/nco/ncap.c b/src/nco/ncap.c
index e16f06c..24bee7c 100644
--- a/src/nco/ncap.c
+++ b/src/nco/ncap.c
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncap.c,v 1.291 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncap.c,v 1.294 2015/01/20 18:20:15 zender Exp $ */
 
 /* ncap -- netCDF arithmetic processor */
 
 /* Purpose: Compute user-defined derived fields using forward algebraic notation applied to netCDF files */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -126,8 +126,8 @@ main(int argc,char **argv)
 
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
 
-  const char * const CVS_Id="$Id: ncap.c,v 1.291 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.291 $";
+  const char * const CVS_Id="$Id: ncap.c,v 1.294 2015/01/20 18:20:15 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.294 $";
   const char * const opt_sht_lst="3467ACcD:FfhL:l:n:Oo:p:Rrs:S:vx-:"; /* [sng] Single letter command line options */
 
   cnk_dmn_sct **cnk_dmn=NULL_CEWI;
@@ -167,6 +167,9 @@ main(int argc,char **argv)
   /* Advanced math: erf, erfc, gamma */
   extern float erff(float);
   extern float erfcf(float);
+  /* There is no function named gamma in the ISO C standard library.
+     There are standard functions called lgamma() = log(gamma()) and tgamma() = gamma()
+     These functions do not appear in the 1990 ISO C standard; they were introduced by C99 */
   extern float gammaf(float);
 
   /* Hyperbolic trigonometric: acosh, asinh, atanh, cosh, sinh, tanh */
@@ -364,6 +367,7 @@ main(int argc,char **argv)
       if(!strcmp(opt_crr,"cnk_min") || !strcmp(opt_crr,"chunk_min")){
         cnk_min_byt=strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
         if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+	cnk_min_byt+=0;
       } /* endif cnk_min */
       if(!strcmp(opt_crr,"cnk_dmn") || !strcmp(opt_crr,"chunk_dimension")){
 	/* Copy limit argument for later processing */
diff --git a/src/nco/ncap.h b/src/nco/ncap.h
index feabede..928f0d6 100644
--- a/src/nco/ncap.h
+++ b/src/nco/ncap.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncap.h,v 1.100 2014/06/15 21:06:21 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncap.h,v 1.102 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor definitions and function prototypes for ncap.c, ncap_utl.c, ncap_lex.l, and ncap_yacc.y */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -66,8 +66,6 @@ typedef union nod_typ_tag{ /* Nie02 nodeTypeTag */
   opr_nod_sct opr; /* [sct] Operator structure */
 } nodeType;
 
-
-
 /* Parse structure 
    prs_sct is easy to confuse with yylval since both are passed to lexer
    yylval is union of all possible data types for semantic values
@@ -134,17 +132,14 @@ ncap_aed_lookup /* [fnc] Find location of existing attribute or add new attribut
  prs_sct * const prs_arg,  /* I/O [sct] contains attribute list  */
  const nco_bool update); /* I [flg] Delete existing value or add new attribute to list */
 
-
 var_sct *                      /*I [sct] varibale in list */
 ncap_var_lookup
 (var_sct *var,   /* I  [sct] variable  */
  prs_sct *prs_arg,             /* I/O [sct] contains var list */
  const nco_bool add);              /* I if not in list then add to list */          
 
-
 void nco_var_free_wrp(var_sct **);
 
-
 nodeType * /* O [unn] Syntax tree node */
 opr_ctl /* [fnc] Operation controller function Nie02 opr() */
 (int opr_tkn, /* I [enm] Operator token */
@@ -232,7 +227,3 @@ void nco_lbr_vrs_prn(void);
 #endif /* __cplusplus */
 
 #endif /* NCAP_H */
-
-
-
-
diff --git a/src/nco/ncap_lex.l b/src/nco/ncap_lex.l
index 450f3e7..e4ee5ed 100644
--- a/src/nco/ncap_lex.l
+++ b/src/nco/ncap_lex.l
@@ -1,4 +1,4 @@
-%{ /* $Header: /cvsroot/nco/nco/src/nco/ncap_lex.l,v 1.86 2014/05/28 20:05:30 zender Exp $ -*-C-*- */
+%{ /* $Header: /cvsroot/nco/nco/src/nco/ncap_lex.l,v 1.88 2015/02/03 17:02:34 zender Exp $ -*-C-*- */
   /* Everything from here to closing brace is placed at top of lexer */
 
   /* Purpose: Token generator for ncap parser */
@@ -82,7 +82,7 @@
 #define YY_DECL int yylex(YYSTYPE *lval_ptr,prs_sct *prs_arg)
   YY_DECL;
 
-#if (defined(__GNUC__) || defined(__INTEL_COMPILER)) && !defined(__PATHCC__)  && !defined(PGI_CC) && (defined(ENABLE_DEBUG_CUSTOM) || defined(ENABLE_OPTIMIZE_CUSTOM))
+#if (defined(__GNUC__) || defined(__INTEL_COMPILER)) && !defined(__PATHCC__) && !defined(PGI_CC) && (defined(ENABLE_DEBUG_CUSTOM) || defined(ENABLE_OPTIMIZE_CUSTOM))
   /* CEWI fxm 20040110 Prototype functions that cause warnings with pedantic GCC compiling
      Portability of this entire section is questionable, so enclose in ifdef GCC
      We already assume lexer is flex since AT&T lex does not understand <EOF> rules
@@ -98,7 +98,10 @@
   FILE *yyget_out(void); /* fixes: warning: no previous prototype for `yyget_out' */
   char *yyget_text(void); /* fixes: warning: no previous prototype for `yyget_text' */
   int yyget_debug(void); /* fixes: warning: no previous prototype for `yyget_debug' */
-  int yyget_leng(void); /* fixes: warning: no previous prototype for `yyget_leng' */
+  /* 20150115: MacOSX with clang and --enable-debug-custom fails on yyget_leng() prototype
+     Change return type of yyget_leng() from int to yy_size_t */
+  /* int yyget_leng(void); *//* fixes: warning: no previous prototype for `yyget_leng' */
+  yy_size_t yyget_leng(void); /* fixes: warning: no previous prototype for `yyget_leng' */
   int yyget_lineno(void); /* fixes: warning: no previous prototype for `yyget_lineno' */
   int yylex_destroy(void); /* fixes: warning: no previous prototype for `yylex_destroy' */
   void yyset_debug(int bdebug); /* fixes: warning: no previous prototype for `yyset_debug' */
@@ -1038,7 +1041,7 @@ ncap_ntl_scn /* [fnc] Scan command script, construct I/O lists */
       lst_t_nbr=lst_t_nbr+0;
       /* 20140526: clang flags argument lval.sbs_lst->lst as incompatible with nm_id_sct * in receiving prototype
 	 This is true. Not sure how/if this line ever worked. Were ncap not in maintenance mode, would be worth fixing? */
-      lst_d=nco_var_lst_add(lst_d,&lst_d_nbr,lval.sbs_lst->lst,lval.sbs_lst->nbr);
+      lst_d=nco_var_lst_add(lst_d,&lst_d_nbr,(nm_id_sct *)lval.sbs_lst->lst,lval.sbs_lst->nbr);
       if(lst_t_nbr > 0) (void)nco_nm_id_lst_free(lst_t,lst_t_nbr);
       break;
     default: 
diff --git a/src/nco/ncap_utl.c b/src/nco/ncap_utl.c
index 17d8281..7029fb4 100644
--- a/src/nco/ncap_utl.c
+++ b/src/nco/ncap_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncap_utl.c,v 1.160 2014/09/30 23:03:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncap_utl.c,v 1.162 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include <assert.h>
@@ -602,11 +602,10 @@ ncap_var_scv_add(var_sct *var,scv_sct scv)
   
   (void)ncap_var_scv_cnf_typ_hgh_prc(&var,&scv);
   
-  /* deal with inital scan */
+  /* Deal with inital scan */
   if(var->val.vp == NULL) return var; 
   
-  
-  (void)var_scv_add(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
+  (void)nco_var_scv_add(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
   return var;
 } /* end ncap_var_scv_add() */
 
@@ -617,11 +616,11 @@ ncap_var_scv_sub(var_sct *var,scv_sct scv)
   if(var->undefined) return var;
   
   (void)ncap_var_scv_cnf_typ_hgh_prc(&var,&scv);
-  /* deal with inital scan */
+  /* Deal with inital scan */
   if(var->val.vp == NULL) return var; 
   
   (void)ncap_scv_minus(&scv);
-  (void)var_scv_add(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
+  (void)nco_var_scv_add(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
   
   return var;
 } /* end ncap_var_scv_sub() */
@@ -633,12 +632,10 @@ ncap_var_scv_mlt(var_sct *var,scv_sct scv)
   if(var->undefined) return var;
   (void)ncap_var_scv_cnf_typ_hgh_prc(&var,&scv);
   
-  /* deal with inital scan */
-  if(var->val.vp == NULL) 
-    return var; 
-  
-  
-  (void)var_scv_mlt(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
+  /* Deal with inital scan */
+  if(var->val.vp == NULL) return var; 
+    
+  (void)nco_var_scv_mlt(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
   return var;
 } /* end ncap_var_scv_mlt */
 
@@ -648,10 +645,10 @@ ncap_var_scv_dvd(var_sct *var,scv_sct scv)
   /* Purpose: Divide each element of var by value in scv */
   (void)ncap_var_scv_cnf_typ_hgh_prc(&var,&scv);
   
-  /* deal with inital scan */
+  /* Deal with inital scan */
   if(var->val.vp == NULL) return var; 
   
-  (void)var_scv_dvd(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
+  (void)nco_var_scv_dvd(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
   return var;
 } /* end ncap_var_scv_dvd */
 
@@ -663,11 +660,10 @@ ncap_scv_var_dvd(scv_sct scv,var_sct *var)
   
   (void)ncap_var_scv_cnf_typ_hgh_prc(&var,&scv);
   
-  /* deal with inital scan */
+  /* Deal with inital scan */
   if(var->val.vp == NULL) return var; 
   
-  
-  (void)scv_var_dvd(var->type,var->sz,var->has_mss_val,var->mss_val,&scv,var->val);
+  (void)nco_scv_var_dvd(var->type,var->sz,var->has_mss_val,var->mss_val,&scv,var->val);
   return var;
 } /* end ncap_scv_var_dvd */
 
@@ -677,12 +673,11 @@ ncap_var_scv_mod(var_sct *var,scv_sct scv)
   /* Purpose: Modulus of each element of var with scv */
   if(var->undefined) return var;
   
-  
   (void)ncap_var_scv_cnf_typ_hgh_prc(&var,&scv);
-  /* deal with inital scan */
+  /* Deal with inital scan */
   if(var->val.vp == NULL) return var; 
   
-  (void)var_scv_mod(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
+  (void)nco_var_scv_mod(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
   return var;
 } /* ncap_var_scv_mod */
 
@@ -694,10 +689,10 @@ ncap_scv_var_mod(scv_sct scv,var_sct *var)
   
   (void)ncap_var_scv_cnf_typ_hgh_prc(&var,&scv);
   
-  /* deal with inital scan */
+  /* Deal with inital scan */
   if(var->val.vp == NULL) return var; 
   
-  (void)scv_var_mod(var->type,var->sz,var->has_mss_val,var->mss_val,&scv,var->val);
+  (void)nco_scv_var_mod(var->type,var->sz,var->has_mss_val,var->mss_val,&scv,var->val);
   return var;
 } /* ncap_var_scv_mod */
 
@@ -710,10 +705,10 @@ ncap_var_scv_pwr(var_sct *var,scv_sct scv)
   if(nco_rth_prc_rnk(var->type) < nco_rth_prc_rnk_float) var=nco_var_cnf_typ((nc_type)NC_FLOAT,var);
   (void)nco_scv_cnf_typ(var->type,&scv);
   
-  /* deal with inital scan */
+  /* Deal with inital scan */
   if(var->val.vp == NULL) return var; 
   
-  (void)var_scv_pwr(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
+  (void)nco_var_scv_pwr(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scv);
   return var;
 } /* end ncap_var_scv_pwr */
 
@@ -728,10 +723,10 @@ ncap_scv_var_pwr(scv_sct scv,var_sct *var)
   if(nco_rth_prc_rnk(var->type) < nco_rth_prc_rnk_float) var=nco_var_cnf_typ((nc_type)NC_FLOAT,var);
   (void)nco_scv_cnf_typ(var->type,&scv);
   
-  /* deal with inital scan */
+  /* Deal with inital scan */
   if(var->val.vp == NULL) return var; 
   
-  (void)scv_var_pwr(var->type,var->sz,var->has_mss_val,var->mss_val,&scv,var->val);
+  (void)nco_scv_var_pwr(var->type,var->sz,var->has_mss_val,var->mss_val,&scv,var->val);
   return var;
 } /* end ncap_var_scv_pwr */
 
@@ -741,7 +736,7 @@ ncap_var_abs(var_sct *var)
   /* Purpose: Find absolute value of each element of var */
   if(var->undefined) return var;
   
-  /* deal with inital scan */
+  /* Deal with inital scan */
   if(var->val.vp == NULL) return var; 
   
   (void)nco_var_abs(var->type,var->sz,var->has_mss_val,var->mss_val,var->val);
diff --git a/src/nco/ncap_yacc.y b/src/nco/ncap_yacc.y
index ea00439..d0e3dc9 100644
--- a/src/nco/ncap_yacc.y
+++ b/src/nco/ncap_yacc.y
@@ -1,12 +1,12 @@
-%{ /* $Header: /cvsroot/nco/nco/src/nco/ncap_yacc.y,v 1.69 2014/10/10 02:41:34 zender Exp $ -*-C-*- */
+%{ /* $Header: /cvsroot/nco/nco/src/nco/ncap_yacc.y,v 1.70 2014/12/31 01:50:07 zender Exp $ -*-C-*- */
   
 /* Begin C declarations section */
   
 /* Purpose: Grammar parser for ncap */
   
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
diff --git a/src/nco/ncatted.c b/src/nco/ncatted.c
index 8ba9444..26563af 100644
--- a/src/nco/ncatted.c
+++ b/src/nco/ncatted.c
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncatted.c,v 1.195 2014/11/05 17:35:15 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncatted.c,v 1.196 2014/12/31 01:50:07 zender Exp $ */
 
 /* ncatted -- netCDF attribute editor */
 
 /* Purpose: Add, create, delete, or overwrite attributes in a netCDF file */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -174,8 +174,8 @@ main(int argc,char **argv)
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncatted.c,v 1.195 2014/11/05 17:35:15 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.195 $";
+  const char * const CVS_Id="$Id: ncatted.c,v 1.196 2014/12/31 01:50:07 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.196 $";
   const char * const opt_sht_lst="Aa:D:hl:Oo:p:Rr-:";
 
 #if defined(__cplusplus) || defined(PGI_CC)
diff --git a/src/nco/ncbo.c b/src/nco/ncbo.c
index c00d1d2..180d084 100644
--- a/src/nco/ncbo.c
+++ b/src/nco/ncbo.c
@@ -1,13 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncbo.c,v 1.311 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncbo.c,v 1.314 2015/02/09 22:35:36 zender Exp $ */
 
 /* ncbo -- netCDF binary operator */
 
 /* Purpose: Compute sum, difference, product, or ratio of specified hyperslabs of specfied variables
    from two input netCDF files and output them to a single file. */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -139,13 +139,14 @@ main(int argc,char **argv)
   char *nco_op_typ_sng=NULL; /* [sng] Operation type */
   char *opt_crr=NULL; /* [sng] String representation of current long-option name */
   char *optarg_lcl=NULL; /* [sng] Local copy of system optarg */
+  char *ppc_arg[NC_MAX_VARS]; /* [sng] PPC arguments */
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
   char **grp_lst_in=NULL; /* [sng] User-specified list of groups */
 
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncbo.c,v 1.311 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.311 $";
+  const char * const CVS_Id="$Id: ncbo.c,v 1.314 2015/02/09 22:35:36 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.314 $";
   const char * const opt_sht_lst="3467ACcD:d:FG:g:hL:l:Oo:p:rRt:v:X:xzy:-:";
 
   cnk_sct cnk; /* [sct] Chunking structure */
@@ -207,6 +208,7 @@ main(int argc,char **argv)
   int nco_op_typ=nco_op_nil; /* [enm] Operation type */
   int opt;
   int out_id;  
+  int ppc_nbr=0; /* [nbr] Number of PPC arguments */
   int rcd=NC_NOERR; /* [rcd] Return code */
   int thr_idx; /* [idx] Index of current thread */
   int thr_nbr=int_CEWI; /* [nbr] Thread number Option t */
@@ -284,6 +286,9 @@ main(int argc,char **argv)
       {"file_format",required_argument,0,0},
       {"hdr_pad",required_argument,0,0},
       {"header_pad",required_argument,0,0},
+      {"ppc",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"precision_preserving_compression",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"quantize",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
       /* Long options with short counterparts */
       {"3",no_argument,0,'3'},
       {"4",no_argument,0,'4'},
@@ -402,6 +407,10 @@ main(int argc,char **argv)
         if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
       } /* endif "hdr_pad" */
       if(!strcmp(opt_crr,"msa_usr_rdr") || !strcmp(opt_crr,"msa_user_order")) MSA_USR_RDR=True; /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+      if(!strcmp(opt_crr,"ppc") || !strcmp(opt_crr,"precision_preserving_compression") || !strcmp(opt_crr,"quantize")){
+        ppc_arg[ppc_nbr]=(char *)strdup(optarg);
+        ppc_nbr++;
+      } /* endif "ppc" */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"create_ram") || !strcmp(opt_crr,"diskless_all")) RAM_CREATE=True; /* [flg] Open (netCDF3) file(s) in RAM */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"open_ram") || !strcmp(opt_crr,"diskless_all")) RAM_OPEN=True; /* [flg] Create file in RAM */
       if(!strcmp(opt_crr,"unn") || !strcmp(opt_crr,"union")) GRP_VAR_UNN=True;
@@ -596,6 +605,9 @@ main(int argc,char **argv)
   /* Make output and input files consanguinous */
   if(fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt_1;
 
+  /* Inititialize, decode, and set PPC information */
+  if(ppc_nbr > 0) nco_ppc_ini(in_id_1,&dfl_lvl,fl_out_fmt,ppc_arg,ppc_nbr,trv_tbl_1);
+
   /* Verify output file format supports requested actions */
   (void)nco_fl_fmt_vet(fl_out_fmt,cnk_nbr,dfl_lvl);
 
@@ -668,8 +680,9 @@ main(int argc,char **argv)
     if(fl_lst_abb) fl_lst_abb=nco_sng_lst_free(fl_lst_abb,abb_arg_nbr);
     if(var_lst_in_nbr > 0) var_lst_in=nco_sng_lst_free(var_lst_in,var_lst_in_nbr);
     /* Free limits */
-    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
     for(idx=0;idx<aux_nbr;idx++) aux_arg[idx]=(char *)nco_free(aux_arg[idx]);
+    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
+    for(idx=0;idx<ppc_nbr;idx++) ppc_arg[idx]=(char *)nco_free(ppc_arg[idx]);
     /* Free chunking information */
     for(idx=0;idx<cnk_nbr;idx++) cnk_arg[idx]=(char *)nco_free(cnk_arg[idx]);
     if(cnk_nbr > 0) cnk.cnk_dmn=(cnk_dmn_sct **)nco_cnk_lst_free(cnk.cnk_dmn,cnk_nbr);
diff --git a/src/nco/ncecat.c b/src/nco/ncecat.c
index d75ea00..a197611 100644
--- a/src/nco/ncecat.c
+++ b/src/nco/ncecat.c
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncecat.c,v 1.376 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncecat.c,v 1.380 2015/02/09 22:35:36 zender Exp $ */
 
 /* ncecat -- netCDF ensemble concatenator */
 
 /* Purpose: Join variables across files with new record variable or aggregate files as groups */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -132,6 +132,7 @@ main(int argc,char **argv)
   char *lmt_arg[NC_MAX_DIMS];
   char *opt_crr=NULL; /* [sng] String representation of current long-option name */
   char *optarg_lcl=NULL; /* [sng] Local copy of system optarg */
+  char *ppc_arg[NC_MAX_VARS]; /* [sng] PPC arguments */
   char *rec_dmn_nm=NULL; /* [sng] New record dimension name */
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
 
@@ -140,8 +141,8 @@ main(int argc,char **argv)
   char grp_out_sfx[NCO_GRP_OUT_SFX_LNG+1L];
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncecat.c,v 1.376 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.376 $";
+  const char * const CVS_Id="$Id: ncecat.c,v 1.380 2015/02/09 22:35:36 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.380 $";
   const char * const opt_sht_lst="3467ACcD:d:Fg:G:HhL:l:Mn:Oo:p:rRt:u:v:X:x-:";
 
   cnk_sct cnk; /* [sct] Chunking structure */
@@ -178,6 +179,7 @@ main(int argc,char **argv)
   int fll_md_old; /* [enm] Old fill mode */
   int gpe_id; /* [id] Group ID of GPE path (diagnostic only) */
   int grp_lst_in_nbr=0; /* [nbr] Number of groups explicitly specified by user */
+  int idx;
   int in_id;  
   int lmt_nbr=0; /* Option d. NB: lmt_nbr gets incremented */
   int lmt_nbr_rgn=0; /* Option d. Original limit number for GTT initialization */
@@ -189,6 +191,7 @@ main(int argc,char **argv)
   int xtr_nbr=0; /* xtr_nbr won't otherwise be set for -c with no -v */
   int opt;
   int out_id;  
+  int ppc_nbr=0; /* [nbr] Number of PPC arguments */
   int rcd=NC_NOERR; /* [rcd] Return code */
   int thr_idx; /* [idx] Index of current thread */
   int thr_nbr=int_CEWI; /* [nbr] Thread number Option t */
@@ -225,105 +228,108 @@ main(int argc,char **argv)
 #endif /* !ENABLE_MPI */
   
   static struct option opt_lng[]=
-  { /* Structure ordered by short option key if possible */
-    /* Long options with no argument, no short option counterpart */
-    {"cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-    {"clean",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-    {"mmr_cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-    {"drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-    {"dirty",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-    {"mmr_drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-    {"gag",no_argument,0,0}, /* [flg] Group aggregation */
-    {"aggregate_group",no_argument,0,0}, /* [flg] Group aggregation */
-    {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
-    {"md5_dgs",no_argument,0,0}, /* [flg] Perform MD5 digests */
-    {"md5_digest",no_argument,0,0}, /* [flg] Perform MD5 digests */
-    {"mrd",no_argument,0,0}, /* [enm] Multiple Record Dimension convention */
-    {"multiple_record_dimension",no_argument,0,0}, /* [enm] Multiple Record Dimension convention */
-    {"msa_usr_rdr",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
-    {"msa_user_order",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
-    {"ram_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
-    {"create_ram",no_argument,0,0}, /* [flg] Create file in RAM */
-    {"open_ram",no_argument,0,0}, /* [flg] Open (netCDF3) file(s) in RAM */
-    {"diskless_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
-    {"wrt_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
-    {"write_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
-    {"no_tmp_fl",no_argument,0,0}, /* [flg] Do not write output to temporary file */
-    {"intersection",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
-    {"nsx",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
-    {"union",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
-    {"unn",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
-    {"version",no_argument,0,0},
-    {"vrs",no_argument,0,0},
-    /* Long options with argument, no short option counterpart */
-    {"bfr_sz_hnt",required_argument,0,0}, /* [B] Buffer size hint */
-    {"buffer_size_hint",required_argument,0,0}, /* [B] Buffer size hint */
-    {"cnk_byt",required_argument,0,0}, /* [B] Chunk size in bytes */
-    {"chunk_byte",required_argument,0,0}, /* [B] Chunk size in bytes */
-    {"cnk_dmn",required_argument,0,0}, /* [nbr] Chunk size */
-    {"chunk_dimension",required_argument,0,0}, /* [nbr] Chunk size */
-    {"cnk_map",required_argument,0,0}, /* [nbr] Chunking map */
-    {"chunk_map",required_argument,0,0}, /* [nbr] Chunking map */
-    {"cnk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
-    {"chunk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
-    {"cnk_plc",required_argument,0,0}, /* [nbr] Chunking policy */
-    {"chunk_policy",required_argument,0,0}, /* [nbr] Chunking policy */
-    {"cnk_scl",required_argument,0,0}, /* [nbr] Chunk size scalar */
-    {"chunk_scalar",required_argument,0,0}, /* [nbr] Chunk size scalar */
-    {"fl_fmt",required_argument,0,0},
-    {"file_format",required_argument,0,0},
-    {"hdr_pad",required_argument,0,0},
-    {"header_pad",required_argument,0,0},
-    /* Long options with short counterparts */
-    {"3",no_argument,0,'3'},
-    {"4",no_argument,0,'4'},
-    {"64bit",no_argument,0,'4'},
-    {"netcdf4",no_argument,0,'4'},
-    {"append",no_argument,0,'A'},
-    {"coords",no_argument,0,'c'},
-    {"crd",no_argument,0,'c'},
-    {"no-coords",no_argument,0,'C'},
-    {"no-crd",no_argument,0,'C'},
-    {"debug",required_argument,0,'D'},
-    {"nco_dbg_lvl",required_argument,0,'D'},
-    {"dimension",required_argument,0,'d'},
-    {"dmn",required_argument,0,'d'},
-    {"fortran",no_argument,0,'F'},
-    {"ftn",no_argument,0,'F'},
-    {"gpe",required_argument,0,'G'}, /* [sng] Group Path Edit (GPE) */
-    {"group",required_argument,0,'g'},
-    {"grp",required_argument,0,'g'},
-    {"fl_lst_in",no_argument,0,'H'},
-    {"file_list",no_argument,0,'H'},
-    {"history",no_argument,0,'h'},
-    {"hst",no_argument,0,'h'},
-    {"dfl_lvl",required_argument,0,'L'}, /* [enm] Deflate level */
-    {"deflate",required_argument,0,'L'}, /* [enm] Deflate level */
-    {"local",required_argument,0,'l'},
-    {"lcl",required_argument,0,'l'},
-    {"glb_mtd_spp",no_argument,0,'M'},
-    {"global_metadata_suppress",no_argument,0,'M'},
-    {"nintap",required_argument,0,'n'},
-    {"overwrite",no_argument,0,'O'},
-    {"ovr",no_argument,0,'O'},
-    {"output",required_argument,0,'o'},
-    {"fl_out",required_argument,0,'o'},
-    {"path",required_argument,0,'p'},
-    {"retain",no_argument,0,'R'},
-    {"rtn",no_argument,0,'R'},
-    {"revision",no_argument,0,'r'},
-    {"thr_nbr",required_argument,0,'t'},
-    {"threads",required_argument,0,'t'},
-    {"omp_num_threads",required_argument,0,'t'},
-    {"ulm_nm",required_argument,0,'u'},
-    {"rcd_nm",required_argument,0,'u'},
-    {"variable",required_argument,0,'v'},
-    {"auxiliary",required_argument,0,'X'},
-    {"exclude",no_argument,0,'x'},
-    {"xcl",no_argument,0,'x'},
-    {"help",no_argument,0,'?'},
-    {"hlp",no_argument,0,'?'},
-    {0,0,0,0}
+    { /* Structure ordered by short option key if possible */
+      /* Long options with no argument, no short option counterpart */
+      {"cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+      {"clean",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+      {"mmr_cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+      {"drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+      {"dirty",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+      {"mmr_drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+      {"gag",no_argument,0,0}, /* [flg] Group aggregation */
+      {"aggregate_group",no_argument,0,0}, /* [flg] Group aggregation */
+      {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
+      {"md5_dgs",no_argument,0,0}, /* [flg] Perform MD5 digests */
+      {"md5_digest",no_argument,0,0}, /* [flg] Perform MD5 digests */
+      {"mrd",no_argument,0,0}, /* [enm] Multiple Record Dimension convention */
+      {"multiple_record_dimension",no_argument,0,0}, /* [enm] Multiple Record Dimension convention */
+      {"msa_usr_rdr",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+      {"msa_user_order",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+      {"ram_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
+      {"create_ram",no_argument,0,0}, /* [flg] Create file in RAM */
+      {"open_ram",no_argument,0,0}, /* [flg] Open (netCDF3) file(s) in RAM */
+      {"diskless_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
+      {"wrt_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
+      {"write_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
+      {"no_tmp_fl",no_argument,0,0}, /* [flg] Do not write output to temporary file */
+      {"intersection",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
+      {"nsx",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
+      {"union",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
+      {"unn",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
+      {"version",no_argument,0,0},
+      {"vrs",no_argument,0,0},
+      /* Long options with argument, no short option counterpart */
+      {"bfr_sz_hnt",required_argument,0,0}, /* [B] Buffer size hint */
+      {"buffer_size_hint",required_argument,0,0}, /* [B] Buffer size hint */
+      {"cnk_byt",required_argument,0,0}, /* [B] Chunk size in bytes */
+      {"chunk_byte",required_argument,0,0}, /* [B] Chunk size in bytes */
+      {"cnk_dmn",required_argument,0,0}, /* [nbr] Chunk size */
+      {"chunk_dimension",required_argument,0,0}, /* [nbr] Chunk size */
+      {"cnk_map",required_argument,0,0}, /* [nbr] Chunking map */
+      {"chunk_map",required_argument,0,0}, /* [nbr] Chunking map */
+      {"cnk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
+      {"chunk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
+      {"cnk_plc",required_argument,0,0}, /* [nbr] Chunking policy */
+      {"chunk_policy",required_argument,0,0}, /* [nbr] Chunking policy */
+      {"cnk_scl",required_argument,0,0}, /* [nbr] Chunk size scalar */
+      {"chunk_scalar",required_argument,0,0}, /* [nbr] Chunk size scalar */
+      {"fl_fmt",required_argument,0,0},
+      {"file_format",required_argument,0,0},
+      {"hdr_pad",required_argument,0,0},
+      {"header_pad",required_argument,0,0},
+      {"ppc",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"precision_preserving_compression",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"quantize",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      /* Long options with short counterparts */
+      {"3",no_argument,0,'3'},
+      {"4",no_argument,0,'4'},
+      {"64bit",no_argument,0,'4'},
+      {"netcdf4",no_argument,0,'4'},
+      {"append",no_argument,0,'A'},
+      {"coords",no_argument,0,'c'},
+      {"crd",no_argument,0,'c'},
+      {"no-coords",no_argument,0,'C'},
+      {"no-crd",no_argument,0,'C'},
+      {"debug",required_argument,0,'D'},
+      {"nco_dbg_lvl",required_argument,0,'D'},
+      {"dimension",required_argument,0,'d'},
+      {"dmn",required_argument,0,'d'},
+      {"fortran",no_argument,0,'F'},
+      {"ftn",no_argument,0,'F'},
+      {"gpe",required_argument,0,'G'}, /* [sng] Group Path Edit (GPE) */
+      {"group",required_argument,0,'g'},
+      {"grp",required_argument,0,'g'},
+      {"fl_lst_in",no_argument,0,'H'},
+      {"file_list",no_argument,0,'H'},
+      {"history",no_argument,0,'h'},
+      {"hst",no_argument,0,'h'},
+      {"dfl_lvl",required_argument,0,'L'}, /* [enm] Deflate level */
+      {"deflate",required_argument,0,'L'}, /* [enm] Deflate level */
+      {"local",required_argument,0,'l'},
+      {"lcl",required_argument,0,'l'},
+      {"glb_mtd_spp",no_argument,0,'M'},
+      {"global_metadata_suppress",no_argument,0,'M'},
+      {"nintap",required_argument,0,'n'},
+      {"overwrite",no_argument,0,'O'},
+      {"ovr",no_argument,0,'O'},
+      {"output",required_argument,0,'o'},
+      {"fl_out",required_argument,0,'o'},
+      {"path",required_argument,0,'p'},
+      {"retain",no_argument,0,'R'},
+      {"rtn",no_argument,0,'R'},
+      {"revision",no_argument,0,'r'},
+      {"thr_nbr",required_argument,0,'t'},
+      {"threads",required_argument,0,'t'},
+      {"omp_num_threads",required_argument,0,'t'},
+      {"ulm_nm",required_argument,0,'u'},
+      {"rcd_nm",required_argument,0,'u'},
+      {"variable",required_argument,0,'v'},
+      {"auxiliary",required_argument,0,'X'},
+      {"exclude",no_argument,0,'x'},
+      {"xcl",no_argument,0,'x'},
+      {"help",no_argument,0,'?'},
+      {"hlp",no_argument,0,'?'},
+      {0,0,0,0}
   }; /* end opt_lng */
   int opt_idx=0; /* Index of current long option into opt_lng array */
 
@@ -401,6 +407,10 @@ main(int argc,char **argv)
       } /* endif "md5_dgs" */
       if(!strcmp(opt_crr,"mrd") || !strcmp(opt_crr,"multiple_record_dimension")) nco_mrd_cnv=nco_mrd_allow; /* [enm] Multiple Record Dimension convention */
       if(!strcmp(opt_crr,"msa_usr_rdr") || !strcmp(opt_crr,"msa_user_order")) MSA_USR_RDR=True; /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+      if(!strcmp(opt_crr,"ppc") || !strcmp(opt_crr,"precision_preserving_compression") || !strcmp(opt_crr,"quantize")){
+        ppc_arg[ppc_nbr]=(char *)strdup(optarg);
+        ppc_nbr++;
+      } /* endif "ppc" */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"create_ram") || !strcmp(opt_crr,"diskless_all")) RAM_CREATE=True; /* [flg] Open (netCDF3) file(s) in RAM */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"open_ram") || !strcmp(opt_crr,"diskless_all")) RAM_OPEN=True; /* [flg] Create file in RAM */
       if(!strcmp(opt_crr,"unn") || !strcmp(opt_crr,"union")) GRP_VAR_UNN=True;
@@ -606,6 +616,9 @@ main(int argc,char **argv)
   /* Make output and input files consanguinous */
   if(fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt;
 
+  /* Inititialize, decode, and set PPC information */
+  if(ppc_nbr > 0) nco_ppc_ini(in_id,&dfl_lvl,fl_out_fmt,ppc_arg,ppc_nbr,trv_tbl);
+
   /* Verify output file format supports requested actions */
   (void)nco_fl_fmt_vet(fl_out_fmt,cnk_nbr,dfl_lvl);
 
@@ -621,7 +634,7 @@ main(int argc,char **argv)
     if(rec_dmn_nm == NULL) rec_dmn_nm=(char *)strdup("record"); 
 
     /* Prepend record dimension to beginning of all vectors for processed variables */
-    for(int idx=0;idx<nbr_var_prc;idx++){
+    for(idx=0;idx<nbr_var_prc;idx++){
       var_prc_out[idx]->nbr_dim++;
       var_prc_out[idx]->is_rec_var=True;
       var_prc_out[idx]->sz_rec=var_prc_out[idx]->sz;
@@ -838,7 +851,7 @@ main(int argc,char **argv)
 # pragma omp parallel for default(none) private(in_id) shared(nco_dbg_lvl,fl_nbr,idx_rec_out,in_id_arr,nbr_var_prc,out_id,var_prc,var_prc_out,nbr_dmn_fl,md5,trv_tbl)
 #endif /* !_OPENMP */
       /* Process all variables in current file */
-      for(int idx=0;idx<nbr_var_prc;idx++){
+      for(idx=0;idx<nbr_var_prc;idx++){
 	int grp_id; /* [ID] Group ID (input) */
         int grp_out_id; /* [ID] Group ID (output) */
         int var_out_id; /* [ID] Variable ID (output) */
@@ -874,6 +887,10 @@ main(int argc,char **argv)
         /* Store the output variable ID */
         var_prc_out[idx]->id=var_out_id;
 
+	if(var_trv->ppc != NC_MAX_INT){
+	  if(var_trv->flg_nsd) (void)nco_var_bitmask(var_trv->ppc,var_prc[idx]->type,var_prc[idx]->sz,var_prc[idx]->has_mss_val,var_prc[idx]->mss_val,var_prc[idx]->val); else (void)nco_var_around(var_trv->ppc,var_prc[idx]->type,var_prc[idx]->sz,var_prc[idx]->has_mss_val,var_prc[idx]->mss_val,var_prc[idx]->val);
+	} /* endif ppc */
+
 #ifdef _OPENMP
 # pragma omp critical
 #endif /* _OPENMP */
@@ -928,10 +945,11 @@ main(int argc,char **argv)
     if(fl_lst_abb) fl_lst_abb=nco_sng_lst_free(fl_lst_abb,abb_arg_nbr);
     if(var_lst_in_nbr > 0) var_lst_in=nco_sng_lst_free(var_lst_in,var_lst_in_nbr);
     /* Free limits */
-    for(int idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
-    for(int idx=0;idx<aux_nbr;idx++) aux_arg[idx]=(char *)nco_free(aux_arg[idx]);
+    for(idx=0;idx<aux_nbr;idx++) aux_arg[idx]=(char *)nco_free(aux_arg[idx]);
+    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
+    for(idx=0;idx<ppc_nbr;idx++) ppc_arg[idx]=(char *)nco_free(ppc_arg[idx]);
     /* Free chunking information */
-    for(int idx=0;idx<cnk_nbr;idx++) cnk_arg[idx]=(char *)nco_free(cnk_arg[idx]);
+    for(idx=0;idx<cnk_nbr;idx++) cnk_arg[idx]=(char *)nco_free(cnk_arg[idx]);
     if(cnk_nbr > 0) cnk.cnk_dmn=(cnk_dmn_sct **)nco_cnk_lst_free(cnk.cnk_dmn,cnk_nbr);
     if(RECORD_AGGREGATE){
       /* Free dimension lists */
@@ -948,8 +966,8 @@ main(int argc,char **argv)
       if(md5) md5=(md5_sct *)nco_md5_free(md5);
       /* Free traversal table */
       trv_tbl_free(trv_tbl);
-      for(int idx=0;idx<lmt_nbr;idx++) flg_dne[idx].dim_nm=(char *)nco_free(flg_dne[idx].dim_nm);
-      if (flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
+      for(idx=0;idx<lmt_nbr;idx++) flg_dne[idx].dim_nm=(char *)nco_free(flg_dne[idx].dim_nm);
+      if(flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
     } /* RECORD_AGGREGATE */
   } /* !flg_cln */
 
diff --git a/src/nco/ncflint.c b/src/nco/ncflint.c
index e5fe875..c105599 100644
--- a/src/nco/ncflint.c
+++ b/src/nco/ncflint.c
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncflint.c,v 1.298 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncflint.c,v 1.303 2015/02/09 22:35:36 zender Exp $ */
 
 /* ncflint -- netCDF file interpolator */
 
 /* Purpose: Linearly interpolate a third netCDF file from two input files */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -130,11 +130,12 @@ main(int argc,char **argv)
   char *ntp_nm=NULL; /* Option i */
   char *opt_crr=NULL; /* [sng] String representation of current long-option name */
   char *optarg_lcl=NULL; /* [sng] Local copy of system optarg */
+  char *ppc_arg[NC_MAX_VARS]; /* [sng] PPC arguments */
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncflint.c,v 1.298 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.298 $";
+  const char * const CVS_Id="$Id: ncflint.c,v 1.303 2015/02/09 22:35:36 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.303 $";
   const char * const opt_sht_lst="3467ACcD:d:Fg:G:hi:L:l:Oo:p:rRt:v:X:xw:-:";
 
   cnk_sct cnk; /* [sct] Chunking structure */
@@ -189,6 +190,7 @@ main(int argc,char **argv)
   int xtr_nbr=0; /* xtr_nbr won't otherwise be set for -c with no -v */
   int opt;
   int out_id;  
+  int ppc_nbr=0; /* [nbr] Number of PPC arguments */
   int rcd=NC_NOERR; /* [rcd] Return code */
   int thr_idx; /* [idx] Index of current thread */
   int thr_nbr=int_CEWI; /* [nbr] Thread number Option t */
@@ -229,102 +231,105 @@ main(int argc,char **argv)
 #endif /* !ENABLE_MPI */
   
   static struct option opt_lng[]=
-  { /* Structure ordered by short option key if possible */
-    /* Long options with no argument, no short option counterpart */
-    {"cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-    {"clean",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-    {"mmr_cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-    {"drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-    {"dirty",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-    {"mmr_drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-    {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
-    {"hdf_upk",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
-    {"hdf_unpack",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
-    {"msa_usr_rdr",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
-    {"msa_user_order",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
-    {"fix_rec_crd",no_argument,0,0}, /* [flg] Do not interpolate/multiply record coordinate variables */
-    {"ram_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
-    {"create_ram",no_argument,0,0}, /* [flg] Create file in RAM */
-    {"open_ram",no_argument,0,0}, /* [flg] Open (netCDF3) file(s) in RAM */
-    {"diskless_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
-    {"wrt_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
-    {"write_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
-    {"no_tmp_fl",no_argument,0,0}, /* [flg] Do not write output to temporary file */
-    {"intersection",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
-    {"nsx",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
-    {"union",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
-    {"unn",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
-    {"version",no_argument,0,0},
-    {"vrs",no_argument,0,0},
-    /* Long options with argument, no short option counterpart */
-    {"bfr_sz_hnt",required_argument,0,0}, /* [B] Buffer size hint */
-    {"buffer_size_hint",required_argument,0,0}, /* [B] Buffer size hint */
-    {"cnk_byt",required_argument,0,0}, /* [B] Chunk size in bytes */
-    {"chunk_byte",required_argument,0,0}, /* [B] Chunk size in bytes */
-    {"cnk_dmn",required_argument,0,0}, /* [nbr] Chunk size */
-    {"chunk_dimension",required_argument,0,0}, /* [nbr] Chunk size */
-    {"cnk_map",required_argument,0,0}, /* [nbr] Chunking map */
-    {"chunk_map",required_argument,0,0}, /* [nbr] Chunking map */
-    {"cnk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
-    {"chunk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
-    {"cnk_plc",required_argument,0,0}, /* [nbr] Chunking policy */
-    {"chunk_policy",required_argument,0,0}, /* [nbr] Chunking policy */
-    {"cnk_scl",required_argument,0,0}, /* [nbr] Chunk size scalar */
-    {"chunk_scalar",required_argument,0,0}, /* [nbr] Chunk size scalar */
-    {"fl_fmt",required_argument,0,0},
-    {"file_format",required_argument,0,0},
-    {"hdr_pad",required_argument,0,0},
-    {"header_pad",required_argument,0,0},
-    /* Long options with short counterparts */
-    {"3",no_argument,0,'3'},
-    {"4",no_argument,0,'4'},
-    {"64bit",no_argument,0,'4'},
-    {"netcdf4",no_argument,0,'4'},
-    {"append",no_argument,0,'A'},
-    {"coords",no_argument,0,'c'},
-    {"crd",no_argument,0,'c'},
-    {"no-coords",no_argument,0,'C'},
-    {"no-crd",no_argument,0,'C'},
-    {"debug",required_argument,0,'D'},
-    {"nco_dbg_lvl",required_argument,0,'D'},
-    {"dimension",required_argument,0,'d'},
-    {"dmn",required_argument,0,'d'},
-    {"fortran",no_argument,0,'F'},
-    {"ftn",no_argument,0,'F'},
-    {"gpe",required_argument,0,'G'}, /* [sng] Group Path Edit (GPE) */
-    {"grp",required_argument,0,'g'},
-    {"group",required_argument,0,'g'},
-    {"history",no_argument,0,'h'},
-    {"hst",no_argument,0,'h'},
-    {"interpolate",required_argument,0,'i'},
-    {"ntp",required_argument,0,'i'},
-    {"dfl_lvl",required_argument,0,'L'}, /* [enm] Deflate level */
-    {"deflate",required_argument,0,'L'}, /* [enm] Deflate level */
-    {"local",required_argument,0,'l'},
-    {"lcl",required_argument,0,'l'},
-    {"overwrite",no_argument,0,'O'},
-    {"ovr",no_argument,0,'O'},
-    {"output",required_argument,0,'o'},
-    {"fl_out",required_argument,0,'o'},
-    {"path",required_argument,0,'p'},
-    {"retain",no_argument,0,'R'},
-    {"rtn",no_argument,0,'R'},
-    {"revision",no_argument,0,'r'},
-    {"thr_nbr",required_argument,0,'t'},
-    {"threads",required_argument,0,'t'},
-    {"omp_num_threads",required_argument,0,'t'},
-    {"variable",required_argument,0,'v'},
-    {"weight",required_argument,0,'w'},
-    {"wgt_var",no_argument,0,'w'},
-    {"auxiliary",required_argument,0,'X'},
-    {"exclude",no_argument,0,'x'},
-    {"xcl",no_argument,0,'x'},
-    {"help",no_argument,0,'?'},
-    {"hlp",no_argument,0,'?'},
-    {0,0,0,0}
-  }; /* end opt_lng */
+    { /* Structure ordered by short option key if possible */
+      /* Long options with no argument, no short option counterpart */
+      {"cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+      {"clean",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+      {"mmr_cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+      {"drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+      {"dirty",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+      {"mmr_drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+      {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
+      {"hdf_upk",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
+      {"hdf_unpack",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
+      {"msa_usr_rdr",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+      {"msa_user_order",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+      {"fix_rec_crd",no_argument,0,0}, /* [flg] Do not interpolate/multiply record coordinate variables */
+      {"ram_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
+      {"create_ram",no_argument,0,0}, /* [flg] Create file in RAM */
+      {"open_ram",no_argument,0,0}, /* [flg] Open (netCDF3) file(s) in RAM */
+      {"diskless_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
+      {"wrt_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
+      {"write_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
+      {"no_tmp_fl",no_argument,0,0}, /* [flg] Do not write output to temporary file */
+      {"intersection",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
+      {"nsx",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
+      {"union",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
+      {"unn",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
+      {"version",no_argument,0,0},
+      {"vrs",no_argument,0,0},
+      /* Long options with argument, no short option counterpart */
+      {"bfr_sz_hnt",required_argument,0,0}, /* [B] Buffer size hint */
+      {"buffer_size_hint",required_argument,0,0}, /* [B] Buffer size hint */
+      {"cnk_byt",required_argument,0,0}, /* [B] Chunk size in bytes */
+      {"chunk_byte",required_argument,0,0}, /* [B] Chunk size in bytes */
+      {"cnk_dmn",required_argument,0,0}, /* [nbr] Chunk size */
+      {"chunk_dimension",required_argument,0,0}, /* [nbr] Chunk size */
+      {"cnk_map",required_argument,0,0}, /* [nbr] Chunking map */
+      {"chunk_map",required_argument,0,0}, /* [nbr] Chunking map */
+      {"cnk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
+      {"chunk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
+      {"cnk_plc",required_argument,0,0}, /* [nbr] Chunking policy */
+      {"chunk_policy",required_argument,0,0}, /* [nbr] Chunking policy */
+      {"cnk_scl",required_argument,0,0}, /* [nbr] Chunk size scalar */
+      {"chunk_scalar",required_argument,0,0}, /* [nbr] Chunk size scalar */
+      {"fl_fmt",required_argument,0,0},
+      {"file_format",required_argument,0,0},
+      {"hdr_pad",required_argument,0,0},
+      {"header_pad",required_argument,0,0},
+      {"ppc",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"precision_preserving_compression",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"quantize",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      /* Long options with short counterparts */
+      {"3",no_argument,0,'3'},
+      {"4",no_argument,0,'4'},
+      {"64bit",no_argument,0,'4'},
+      {"netcdf4",no_argument,0,'4'},
+      {"append",no_argument,0,'A'},
+      {"coords",no_argument,0,'c'},
+      {"crd",no_argument,0,'c'},
+      {"no-coords",no_argument,0,'C'},
+      {"no-crd",no_argument,0,'C'},
+      {"debug",required_argument,0,'D'},
+      {"nco_dbg_lvl",required_argument,0,'D'},
+      {"dimension",required_argument,0,'d'},
+      {"dmn",required_argument,0,'d'},
+      {"fortran",no_argument,0,'F'},
+      {"ftn",no_argument,0,'F'},
+      {"gpe",required_argument,0,'G'}, /* [sng] Group Path Edit (GPE) */
+      {"grp",required_argument,0,'g'},
+      {"group",required_argument,0,'g'},
+      {"history",no_argument,0,'h'},
+      {"hst",no_argument,0,'h'},
+      {"interpolate",required_argument,0,'i'},
+      {"ntp",required_argument,0,'i'},
+      {"dfl_lvl",required_argument,0,'L'}, /* [enm] Deflate level */
+      {"deflate",required_argument,0,'L'}, /* [enm] Deflate level */
+      {"local",required_argument,0,'l'},
+      {"lcl",required_argument,0,'l'},
+      {"overwrite",no_argument,0,'O'},
+      {"ovr",no_argument,0,'O'},
+      {"output",required_argument,0,'o'},
+      {"fl_out",required_argument,0,'o'},
+      {"path",required_argument,0,'p'},
+      {"retain",no_argument,0,'R'},
+      {"rtn",no_argument,0,'R'},
+      {"revision",no_argument,0,'r'},
+      {"thr_nbr",required_argument,0,'t'},
+      {"threads",required_argument,0,'t'},
+      {"omp_num_threads",required_argument,0,'t'},
+      {"variable",required_argument,0,'v'},
+      {"weight",required_argument,0,'w'},
+      {"wgt_var",no_argument,0,'w'},
+      {"auxiliary",required_argument,0,'X'},
+      {"exclude",no_argument,0,'x'},
+      {"xcl",no_argument,0,'x'},
+      {"help",no_argument,0,'?'},
+      {"hlp",no_argument,0,'?'},
+      {0,0,0,0}
+    }; /* end opt_lng */
   int opt_idx=0; /* Index of current long option into opt_lng array */
-
+  
   /* Start timer and save command line */ 
   ddra_info.tmr_flg=nco_tmr_srt;
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
@@ -394,6 +399,10 @@ main(int argc,char **argv)
         if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
       } /* endif "hdr_pad" */
       if(!strcmp(opt_crr,"msa_usr_rdr") || !strcmp(opt_crr,"msa_user_order")) MSA_USR_RDR=True; /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+      if(!strcmp(opt_crr,"ppc") || !strcmp(opt_crr,"precision_preserving_compression") || !strcmp(opt_crr,"quantize")){
+        ppc_arg[ppc_nbr]=(char *)strdup(optarg);
+        ppc_nbr++;
+      } /* endif "ppc" */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"create_ram") || !strcmp(opt_crr,"diskless_all")) RAM_CREATE=True; /* [flg] Open (netCDF3) file(s) in RAM */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"open_ram") || !strcmp(opt_crr,"diskless_all")) RAM_OPEN=True; /* [flg] Create file in RAM */
       if(!strcmp(opt_crr,"unn") || !strcmp(opt_crr,"union")) GRP_VAR_UNN=True;
@@ -611,9 +620,8 @@ main(int argc,char **argv)
   var=nco_fll_var_trv(in_id_1,&xtr_nbr,trv_tbl);
 
   var_out=(var_sct **)nco_malloc(xtr_nbr*sizeof(var_sct *));
-  for(int var_idx=0;var_idx<xtr_nbr;var_idx++){
+  for(int var_idx=0;var_idx<xtr_nbr;var_idx++)
     var_out[var_idx]=nco_var_dpl(var[var_idx]);
-  }
 
   /* Is this a CCM/CCSM/CF-format history tape? */
   CNV_CCM_CCSM_CF=nco_cnv_ccm_ccsm_cf_inq(in_id_1);
@@ -627,6 +635,9 @@ main(int argc,char **argv)
   /* Make output and input files consanguinous */
   if(fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt_1;
 
+  /* Inititialize, decode, and set PPC information */
+  if(ppc_nbr > 0) nco_ppc_ini(in_id_1,&dfl_lvl,fl_out_fmt,ppc_arg,ppc_nbr,trv_tbl);
+
   /* Verify output file format supports requested actions */
   (void)nco_fl_fmt_vet(fl_out_fmt,cnk_nbr,dfl_lvl);
 
@@ -663,7 +674,6 @@ main(int argc,char **argv)
   /* Copy variable data for non-processed variables */
   (void)nco_cpy_fix_var_trv(in_id_1,out_id,gpe,trv_tbl);  
 
-
   /* Perform various error-checks on input file */
   if(False) (void)nco_fl_cmp_err_chk();
 
@@ -694,7 +704,7 @@ main(int argc,char **argv)
     if(xtr_nbr_ntp_1 == 0 || xtr_nbr_ntp_2 == 0){
       (void)fprintf(fp_stdout,"%s: ERROR Variable <%s> is not present in input file. ncflint assumes same file structure for both input files\n",nco_prg_nm_get(),ntp_nm);
       nco_exit(EXIT_FAILURE);
-    }
+    } /* endif */
     
     /* Read */
     (void)nco_msa_var_get_trv(in_id_1,ntp_1,trv_tbl);
@@ -729,7 +739,6 @@ main(int argc,char **argv)
     (void)nco_var_dvd(wgt_1->type,wgt_1->sz,wgt_1->has_mss_val,wgt_1->mss_val,ntp_2->val,wgt_1->val);
     (void)nco_var_dvd(wgt_2->type,wgt_2->sz,wgt_2->has_mss_val,wgt_2->mss_val,ntp_2->val,wgt_2->val);
 
-
     for(idx=0;idx<xtr_nbr_ntp_1;idx++) var_ntp_1[idx]=nco_var_free(var_ntp_1[idx]);
     for(idx=0;idx<xtr_nbr_ntp_2;idx++) var_ntp_2[idx]=nco_var_free(var_ntp_2[idx]);
     var_ntp_1=(var_sct **)nco_free(var_ntp_1);
@@ -757,14 +766,12 @@ main(int argc,char **argv)
   /* Loop over each interpolated variable */
 #ifdef _OPENMP
   /* OpenMP notes:
-  shared(): msk and wgt are not altered within loop
-  private(): wgt_avg does not need initialization */
-
-#  pragma omp parallel for default(none) firstprivate(wgt_1,wgt_2,wgt_out_1,wgt_out_2) private(DO_CONFORM,idx,in_id_1,in_id_2,has_mss_val) shared(MUST_CONFORM,nco_dbg_lvl,fl_in_1,fl_in_2,fl_out,gpe,in_id_1_arr,in_id_2_arr,nbr_var_prc,out_id,nco_prg_nm,var_prc_1,var_prc_2,var_prc_out,nbr_dmn_fl,trv_tbl)
-
+     shared(): msk and wgt are not altered within loop
+     private(): wgt_avg does not need initialization */
+# pragma omp parallel for default(none) firstprivate(wgt_1,wgt_2,wgt_out_1,wgt_out_2) private(DO_CONFORM,idx,in_id_1,in_id_2,has_mss_val) shared(MUST_CONFORM,nco_dbg_lvl,fl_in_1,fl_in_2,fl_out,gpe,in_id_1_arr,in_id_2_arr,nbr_var_prc,out_id,nco_prg_nm,var_prc_1,var_prc_2,var_prc_out,nbr_dmn_fl,trv_tbl)
 #endif /* !_OPENMP */
   for(idx=0;idx<nbr_var_prc;idx++){
-
+    
     /* Note: Using object 2 from table 1, only one table built, assumes same structure for processed objects in both files */
 
     char *grp_out_fll=NULL; /* [sng] Group name */
@@ -851,14 +858,17 @@ main(int argc,char **argv)
     /* Store the output variable ID */
     var_prc_out[idx]->id=var_out_id;
 
+    if(var_trv_1->ppc != NC_MAX_INT){
+    if(var_trv_1->flg_nsd) (void)nco_var_bitmask(var_trv_1->ppc,var_prc_2[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_2[idx]->val); else (void)nco_var_around(var_trv_1->ppc,var_prc_2[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_2[idx]->val);
+    } /* endif ppc */
 #ifdef _OPENMP
 # pragma omp critical
 #endif /* _OPENMP */
     { /* begin OpenMP critical */
       /* Copy interpolations to output file */
-      if(var_prc_out[idx]->nbr_dim == 0){
-        (void)nco_put_var1(grp_out_id,var_prc_out[idx]->id,var_prc_out[idx]->srt,var_prc_2[idx]->val.vp,var_prc_2[idx]->type);
-      }else{ /* end if variable is scalar */
+    if(var_prc_out[idx]->nbr_dim == 0){
+    (void)nco_put_var1(grp_out_id,var_prc_out[idx]->id,var_prc_out[idx]->srt,var_prc_2[idx]->val.vp,var_prc_2[idx]->type);
+  }else{ /* end if variable is scalar */
         (void)nco_put_vara(grp_out_id,var_prc_out[idx]->id,var_prc_out[idx]->srt,var_prc_out[idx]->cnt,var_prc_2[idx]->val.vp,var_prc_2[idx]->type);
       } /* end else */
     } /* end OpenMP critical */
@@ -911,8 +921,9 @@ main(int argc,char **argv)
     if(fl_lst_abb) fl_lst_abb=nco_sng_lst_free(fl_lst_abb,abb_arg_nbr);
     if(var_lst_in_nbr > 0) var_lst_in=nco_sng_lst_free(var_lst_in,var_lst_in_nbr);
     /* Free limits */
-    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
     for(idx=0;idx<aux_nbr;idx++) aux_arg[idx]=(char *)nco_free(aux_arg[idx]);
+    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
+    for(idx=0;idx<ppc_nbr;idx++) ppc_arg[idx]=(char *)nco_free(ppc_arg[idx]);
     /* Free chunking information */
     for(idx=0;idx<cnk_nbr;idx++) cnk_arg[idx]=(char *)nco_free(cnk_arg[idx]);
     if(cnk_nbr > 0) cnk.cnk_dmn=(cnk_dmn_sct **)nco_cnk_lst_free(cnk.cnk_dmn,cnk_nbr);
@@ -923,7 +934,7 @@ main(int argc,char **argv)
     if(nbr_var_fix > 0) var_fix_out=nco_var_lst_free(var_fix_out,nbr_var_fix);
     trv_tbl_free(trv_tbl); 
     for(idx=0;idx<lmt_nbr;idx++) flg_dne[idx].dim_nm=(char *)nco_free(flg_dne[idx].dim_nm);
-    if (flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
+    if(flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
     if(gpe) gpe=(gpe_sct *)nco_gpe_free(gpe);
   } /* !flg_cln */
 
diff --git a/src/nco/ncks.c b/src/nco/ncks.c
index 2bdc3e4..b67384e 100644
--- a/src/nco/ncks.c
+++ b/src/nco/ncks.c
@@ -1,13 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncks.c,v 1.741 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncks.c,v 1.769 2015/02/09 22:35:36 zender Exp $ */
 
 /* ncks -- netCDF Kitchen Sink */
 
 /* Purpose: Extract (subsets of) variables from a netCDF file 
    Print them to screen, or copy them to a new file, or both */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -55,6 +55,8 @@
    ncks --cdl -v one_dmn_rec_var ~/nco/data/in.nc
    ncks --jsn -C -v one_dmn_rec_var ~/nco/data/in.nc
    ncks --jsn -C -m -v one_dmn_rec_var ~/nco/data/in_grp.nc
+   ncks -O -4 --ppc ppc_dbl=1 --ppc ppc_flt,ppc_big=4 ~/nco/data/in.nc ~/foo.nc
+   ncks -O --ppc ppc_dbl=1 --ppc '/g1/ppc.?',/g1/g1g1/ppc_dbl=4 ~/nco/data/in_grp.nc ~/foo.nc
    ncks -O -m -M -v Snow_Cover_Monthly_CMG ${DATA}/hdf/MOD10CM.A2007001.005.2007108111758.hdf */
 
 #ifdef HAVE_CONFIG_H
@@ -173,7 +175,9 @@ main(int argc,char **argv)
   char *lmt_arg[NC_MAX_DIMS];
   char *opt_crr=NULL; /* [sng] String representation of current long-option name */
   char *optarg_lcl=NULL; /* [sng] Local copy of system optarg */
+  char *ppc_arg[NC_MAX_VARS]; /* [sng] PPC arguments */
   char *rec_dmn_nm=NULL; /* [sng] Record dimension name */
+  char *fl_nm_scrip=NULL; /* [sng] SCRIP file name */
   char *rec_dmn_nm_fix=NULL; /* [sng] Record dimension name (Original input name without _fix prefix) */
   char *smr_sng=NULL; /* [sng] File summary string */
   char *smr_xtn_sng=NULL; /* [sng] File extended summary string */
@@ -183,8 +187,8 @@ main(int argc,char **argv)
 
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncks.c,v 1.741 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.741 $";
+  const char * const CVS_Id="$Id: ncks.c,v 1.769 2015/02/09 22:35:36 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.769 $";
   const char * const opt_sht_lst="34567aABb:CcD:d:FG:g:HhL:l:MmOo:Pp:qQrRs:uVv:X:xz-:";
 
   cnk_sct cnk; /* [sct] Chunking structure */
@@ -226,12 +230,16 @@ main(int argc,char **argv)
   int lmt_nbr=0; /* Option d. NB: lmt_nbr gets incremented */
   int md_open; /* [enm] Mode flag for nc_open() call */
   int opt;
+  int ppc_nbr=0; /* [nbr] Number of PPC arguments */
   int rcd=NC_NOERR; /* [rcd] Return code */
   int var_lst_in_nbr=0;
   int var_nbr_fl;
   int var_ntm_fl;
   int xtr_nbr=0; /* xtr_nbr will not otherwise be set for -c with no -v */
 
+/* DYW */
+  kvmap_sct *sld_nfo=NULL; /* [sct] Container for SLD/SCRIP information */
+
   md5_sct *md5=NULL; /* [sct] MD5 configuration */
 
   size_t bfr_sz_hnt=NC_SIZEHINT_DEFAULT; /* [B] Buffer size hint */
@@ -341,9 +349,15 @@ main(int argc,char **argv)
       {"header_pad",required_argument,0,0},
       {"mk_rec_dmn",required_argument,0,0}, /* [sng] Name of record dimension in output */
       {"mk_rec_dim",required_argument,0,0}, /* [sng] Name of record dimension in output */
+      {"ppc",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"precision_preserving_compression",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"quantize",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
       {"tst_udunits",required_argument,0,0},
       {"xml_spr_chr",required_argument,0,0}, /* [flg] Separator for XML character types */
       {"xml_spr_nmr",required_argument,0,0}, /* [flg] Separator for XML numeric types */
+/* DYW */
+      {"scrip",required_argument,0,0}, /* SCRIP file */
+/* DYW end */
       /* Long options with short counterparts */
       {"3",no_argument,0,'3'},
       {"4",no_argument,0,'4'},
@@ -521,6 +535,11 @@ main(int argc,char **argv)
         (void)nco_lbr_vrs_prn();
         nco_exit(EXIT_SUCCESS);
       } /* endif "lbr" */
+      if(!strcmp(opt_crr,"scrip")){
+        fl_nm_scrip=strdup(optarg);
+	sld_nfo=(kvmap_sct *)nco_malloc(BUFSIZ*sizeof(kvmap_sct));
+        hdlscrip(fl_nm_scrip,sld_nfo);
+      } /* endif "scrip" */
       if(!strcmp(opt_crr,"mk_rec_dmn") || !strcmp(opt_crr,"mk_rec_dim")) rec_dmn_nm=strdup(optarg);
       if(!strcmp(opt_crr,"mpi_implementation")){
         (void)fprintf(stdout,"%s\n",nco_mpi_get());
@@ -540,6 +559,10 @@ main(int argc,char **argv)
       if(!strcmp(opt_crr,"no_blank") || !strcmp(opt_crr,"no-blank") || !strcmp(opt_crr,"noblank")) PRN_MSS_VAL_BLANK=!PRN_MSS_VAL_BLANK;
       if(!strcmp(opt_crr,"no_clb") || !strcmp(opt_crr,"no-clobber") || !strcmp(opt_crr,"no_clobber") || !strcmp(opt_crr,"noclobber")) FORCE_NOCLOBBER=!FORCE_NOCLOBBER;
       if(!strcmp(opt_crr,"no_nm_prn") || !strcmp(opt_crr,"no_dmn_var_nm")) PRN_DMN_VAR_NM=False; /* endif "no_nm_prn" */
+      if(!strcmp(opt_crr,"ppc") || !strcmp(opt_crr,"precision_preserving_compression") || !strcmp(opt_crr,"quantize")){
+        ppc_arg[ppc_nbr]=(char *)strdup(optarg);
+        ppc_nbr++;
+      } /* endif "ppc" */
       if(!strcmp(opt_crr,"rad") || !strcmp(opt_crr,"retain_all_dimensions") || !strcmp(opt_crr,"orphan_dimensions") || !strcmp(opt_crr,"rph_dmn")) RETAIN_ALL_DIMS=True;
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"create_ram") || !strcmp(opt_crr,"diskless_all")) RAM_CREATE=True; /* [flg] Open (netCDF3) file(s) in RAM */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"open_ram") || !strcmp(opt_crr,"diskless_all")) RAM_OPEN=True; /* [flg] Create file in RAM */
@@ -775,6 +798,7 @@ main(int argc,char **argv)
 #endif /* !_LANGINFO_H */
 
   /* Initialize traversal table */
+
   (void)trv_tbl_init(&trv_tbl);
  
   /* Get program info for regressions tests */
@@ -883,6 +907,9 @@ main(int argc,char **argv)
     /* Make output and input files consanguinous */
     if(fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt;
 
+    /* Inititialize, decode, and set PPC information */
+    if(ppc_nbr > 0) nco_ppc_ini(in_id,&dfl_lvl,fl_out_fmt,ppc_arg,ppc_nbr,trv_tbl);
+
     /* Verify output file format supports requested actions */
     (void)nco_fl_fmt_vet(fl_out_fmt,cnk_nbr,dfl_lvl);
 
@@ -920,9 +947,10 @@ main(int argc,char **argv)
     /* Timestamp end of metadata setup and disk layout */
     rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
     ddra_info.tmr_flg=nco_tmr_rgl;
-
     /* Write extracted data to output file */
-    if(PRN_VAR_DATA) (void)nco_xtr_wrt(in_id,out_id,gpe,fp_bnr,md5,HAVE_LIMITS,trv_tbl);
+    if(PRN_VAR_DATA) {
+      (void)nco_xtr_wrt(in_id,out_id,gpe,fp_bnr,md5,HAVE_LIMITS,trv_tbl);
+    }
 
     /* [fnc] Close unformatted binary data file */
     if(fp_bnr) (void)nco_bnr_close(fp_bnr,fl_bnr);
@@ -1044,7 +1072,6 @@ main(int argc,char **argv)
     }else{ 
 
       /* New file dump format(s) developed 201307 for CDL, JSN, SRM, TRD, XML */
-
       if(PRN_SRM){
 	/* Stream printing is pre-alpha. Great project for volunteers! */
         nco_srm_hdr();
@@ -1078,6 +1105,13 @@ close_and_free:
     /* ncks-specific memory */
     if(fl_bnr) fl_bnr=(char *)nco_free(fl_bnr);
     if(rec_dmn_nm) rec_dmn_nm=(char *)nco_free(rec_dmn_nm); 
+    /* DYW */
+    if(fl_nm_scrip){
+      fl_nm_scrip=(char *)nco_free(fl_nm_scrip);
+      idx=0;
+      if(nco_dbg_lvl > nco_dbg_fl) while(sld_nfo[idx].key) nco_kvmap_prn(sld_nfo[idx++]);
+      if(sld_nfo) nco_kvmaps_free(sld_nfo);
+    } /* endif fl_nm_scrip */
     /* NCO-generic clean-up */
     /* Free individual strings/arrays */
     if(cmd_ln) cmd_ln=(char *)nco_free(cmd_ln);
@@ -1097,14 +1131,15 @@ close_and_free:
     if(grp_lst_in_nbr > 0) grp_lst_in=nco_sng_lst_free(grp_lst_in,grp_lst_in_nbr);
     if(var_lst_in_nbr > 0) var_lst_in=nco_sng_lst_free(var_lst_in,var_lst_in_nbr);
     /* Free limits */
-    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
     for(idx=0;idx<aux_nbr;idx++) aux_arg[idx]=(char *)nco_free(aux_arg[idx]);
+    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
+    for(idx=0;idx<ppc_nbr;idx++) ppc_arg[idx]=(char *)nco_free(ppc_arg[idx]);
     /* Free chunking information */
     for(idx=0;idx<cnk_nbr;idx++) cnk_arg[idx]=(char *)nco_free(cnk_arg[idx]);
     if(cnk_nbr > 0) cnk.cnk_dmn=(cnk_dmn_sct **)nco_cnk_lst_free(cnk.cnk_dmn,cnk_nbr);
     trv_tbl_free(trv_tbl);
     for(idx=0;idx<lmt_nbr;idx++) flg_dne[idx].dim_nm=(char *)nco_free(flg_dne[idx].dim_nm);
-    if (flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
+    if(flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
     if(gpe) gpe=(gpe_sct *)nco_gpe_free(gpe);
     if(md5) md5=(md5_sct *)nco_md5_free(md5);
     if(smr_sng) smr_sng=(char *)nco_free(smr_sng);
@@ -1124,3 +1159,4 @@ close_and_free:
   nco_exit_gracefully();
   return EXIT_SUCCESS;
 } /* end main() */
+
diff --git a/src/nco/nco.h b/src/nco/nco.h
index fd34280..01de5fa 100644
--- a/src/nco/nco.h
+++ b/src/nco/nco.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco.h,v 1.526 2014/11/26 05:18:52 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco.h,v 1.538 2015/02/07 04:39:39 zender Exp $ */
 
 /* Purpose: netCDF Operator (NCO) definitions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -159,7 +159,7 @@ extern "C" {
   /* netCDF provides no guidance on maximum nesting of groups */
 #define NCO_MAX_GRP_DEPTH 10
 
-  /* Flag that iterator found no more groups in container */
+  /* Signifier that iterator found no more groups in container */
 #define NCO_LST_GRP 0
 
   /* Debugging level that quiets all non-requested informational messages
@@ -168,7 +168,8 @@ extern "C" {
 #define NCO_DBG_QUIET 0
 
   /* Find traversal table objects via hash table rather than brute-force strcmp() search */
-#define NCO_HSH_TRV_OBJ 1
+  /*#define NCO_HSH_TRV_OBJ */
+#undef NCO_HSH_TRV_OBJ
 
   /* NCO_MSS_VAL_SNG names attribute whose value is "skipped" by arithmetic, aka the missing value attribute
      Attribute name should be either "missing_value" or "_FillValue" */
@@ -280,7 +281,7 @@ extern "C" {
 # define NCO_VERSION_MINOR 4
 #endif /* !NCO_VERSION_MINOR */
 #ifndef NCO_VERSION_PATCH
-# define NCO_VERSION_PATCH 7
+# define NCO_VERSION_PATCH 8
 #endif /* !NCO_VERSION_PATCH */
 #ifndef NCO_VERSION_NOTE
 # define NCO_VERSION_NOTE  "" /* My be blank */
@@ -290,7 +291,7 @@ extern "C" {
 # define NCO_LIB_VERSION ( NCO_VERSION_MAJOR * 100 + NCO_VERSION_MINOR * 10 + NCO_VERSION_PATCH )
 #endif /* !NCO_LIB_VERSION */
 #ifndef NCO_VERSION
-# define NCO_VERSION "4.4.7"
+# define NCO_VERSION "4.4.8"
 #endif /* !NCO_VERSION */
 
 /* Compatibility tokens new to netCDF4 netcdf.h: */
@@ -550,6 +551,9 @@ extern "C" {
     nco_op_sqrt, /* [enm] Square root of mean */
     nco_op_rms, /* [enm] Root-mean-square (normalized by N) */
     nco_op_rmssdn, /* [enm] Root-mean square normalized by N-1 */
+    nco_op_mabs, /* [enm] Maximum absolute value */
+    nco_op_mebs, /* [enm] Mean absolute value */
+    nco_op_mibs, /* [enm] Minimum absolute value */
     nco_op_nil /* [enm] Nil or undefined operation type */
   }; /* end nco_op_typ enum */
 
@@ -935,7 +939,6 @@ extern "C" {
     nco_bool flg_xtr;        /* [flg] Extract dimension */
   } dmn_trv_sct; 
 
-
   /* Build a list of 'standard_name' 'latitude' and 'longitude' coordinates (Auxiliary Coordinates) */
   typedef struct{
     char *nm_fll;              /* [sng] Coordinate full name ('latitude' or 'longitude') */ 
@@ -1000,6 +1003,8 @@ extern "C" {
     int nbr_rec;                      /* [nbr] Number of record dimensions */
     int nbr_grp;                      /* [nbr] (For groups only) Number of sub-groups */   
     int nbr_var;                      /* [nbr] (For groups only) Number of variables */
+    int ppc;                          /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+    nco_bool flg_nsd;                 /* [flg] PPC is NSD */
 
     nco_bool flg_cf;                  /* [flg] Object matches CF-metadata extraction criteria */
     nco_bool flg_crd;                 /* [flg] Object matches coordinate extraction criteria */
@@ -1053,7 +1058,7 @@ extern "C" {
     long srt; /* [idx] Index to start of hyperslab */
     long sz; /* [nbr] Full size of dimension in file (NOT the hyperslabbed size) */
     nc_type type; /* [enm] Type of coordinate, if applicable */
-    ptr_unn val; /* [sct] Buffer to hold hyperslab fxm: is this ever used? */
+    ptr_unn val; /* [sct] Buffer to hold hyperslab (used by nco_prn to hold coordinate values) */
     short is_crd_dmn; /* [flg] Is this a coordinate dimension? */
     short is_rec_dmn; /* [flg] Is this the record dimension? */
     size_t cnk_sz; /* [nbr] Chunk size */
@@ -1067,7 +1072,6 @@ extern "C" {
     int var_nbr;            /* [nbr] Number of variable for this group (size of above array) */ 
   } nsm_grp_sct; 
 
-
   /* Ensemble (ncge) */
   typedef struct{
     char *grp_nm_fll_prn;   /* [sng] Parent group full name (key for ensemble) (e.g., /cesm) */
@@ -1080,7 +1084,6 @@ extern "C" {
     int mbr_srt;            /* [nbr] Member offsets, start (multi files, keep track of new added members) */ 
     int mbr_end;            /* [nbr] Member offsets, end (multi files, keep track of new added members) */ 
   } nsm_sct; 
-
   
   /* Name structure */
   typedef struct{ /* nm_sct */
@@ -1114,7 +1117,6 @@ extern "C" {
     char *var_nm_fll; /* [sng] Fully qualified variable name */
   } gpe_nm_sct;
 
-
   /* Common variable names; common defined as same absolute path in 2 files */
   typedef struct{		
     char *nm;                    /* [sng] A name */
diff --git a/src/nco/nco_att_utl.c b/src/nco/nco_att_utl.c
index d451062..fbe03de 100644
--- a/src/nco/nco_att_utl.c
+++ b/src/nco/nco_att_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_att_utl.c,v 1.178 2014/09/26 23:03:48 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_att_utl.c,v 1.181 2015/01/28 23:33:08 zender Exp $ */
 
 /* Purpose: Attribute utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_att_utl.h" /* Attribute utilities */
diff --git a/src/nco/nco_att_utl.h b/src/nco/nco_att_utl.h
index a939ec1..562d058 100644
--- a/src/nco/nco_att_utl.h
+++ b/src/nco/nco_att_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_att_utl.h,v 1.50 2014/09/26 23:03:48 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_att_utl.h,v 1.51 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Attribute utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_aux.c b/src/nco/nco_aux.c
index 78ed361..ac7e615 100644
--- a/src/nco/nco_aux.c
+++ b/src/nco/nco_aux.c
@@ -1,8 +1,8 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_aux.c,v 1.84 2014/10/31 17:55:56 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_aux.c,v 1.86 2015/02/04 04:16:24 zender Exp $ */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Purpose: Support hyperslabbing cell-based grids over coordinate ranges 
@@ -354,10 +354,11 @@ nco_aux_prs
 #ifndef M_PI
 # define M_PI		3.14159265358979323846
 #endif /* M_PI */
-    *lon_min*=M_PI/180.0;
-    *lon_max*=M_PI/180.0;
-    *lat_min*=M_PI/180.0;
-    *lat_max*=M_PI/180.0;
+    const float dgr2rdn=M_PI/180.0;
+    *lon_min*=dgr2rdn;
+    *lon_max*=dgr2rdn;
+    *lat_min*=dgr2rdn;
+    *lat_max*=dgr2rdn;
   } /* endif radians */
 } /* nco_aux_prs */
 
diff --git a/src/nco/nco_aux.h b/src/nco/nco_aux.h
index 5408eab..a062333 100644
--- a/src/nco/nco_aux.h
+++ b/src/nco/nco_aux.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_aux.h,v 1.35 2014/06/15 21:06:21 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_aux.h,v 1.36 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Sub-set cell-based grids using auxiliary coordinate variable */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_bnr.c b/src/nco/nco_bnr.c
index 5bef80d..20618df 100644
--- a/src/nco/nco_bnr.c
+++ b/src/nco/nco_bnr.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_bnr.c,v 1.27 2014/06/15 21:06:21 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_bnr.c,v 1.28 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Binary write utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_bnr.h" /* Binary write utilities */
diff --git a/src/nco/nco_bnr.h b/src/nco/nco_bnr.h
index fa8b97b..a1f1351 100644
--- a/src/nco/nco_bnr.h
+++ b/src/nco/nco_bnr.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_bnr.h,v 1.22 2014/06/15 21:06:21 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_bnr.h,v 1.23 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Binary write utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_cln_utl.c b/src/nco/nco_cln_utl.c
index feb23d4..188c53e 100644
--- a/src/nco/nco_cln_utl.c
+++ b/src/nco/nco_cln_utl.c
@@ -1,16 +1,16 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cln_utl.c,v 1.48 2014/06/15 21:06:21 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cln_utl.c,v 1.54 2015/02/03 17:58:35 zender Exp $ */
 
 /* Purpose: Calendar utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_cln_utl.h" /* Calendar utilities */
 
 /* Arrays to hold calendar type units */
-/* Format: year,month,day,hour,min,sec,origin,offset */   
+/* Format: year, month, day, hour, minute, second, origin, offset */
 double DATA_360[8]={31104000.0,2592000.0,86400.0,3600.0,60.0,1,0.0,0.0};
 double DATA_365[8]={31536000.0,2628000.0,86400.0,3600.0,60.0,1,0.0,0.0};
 
@@ -52,8 +52,8 @@ nco_newdate /* [fnc] Compute date a specified number of days from input date */
   
   /* Local */
   const long mth_day_nbr[]= /* Number of days in each month */
-    { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31,
-      31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
+    {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31,
+     31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
   
   long day_nbr_2_eom; /* Days to end of month */
   long day_crr; /* Day of date */
@@ -151,11 +151,11 @@ nco_cln_clc_dff /* [fnc] UDUnits2 Compute difference between two coordinate unit
   int ut_rcd; /* [enm] UDUnits2 status */
   
   ut_system *ut_sys;
-  ut_unit *ut_sct_in; /* UDUnits structure, input units */
-  ut_unit *ut_sct_out; /* UDUnits structure, output units */
+  ut_unit *ut_sct_in; /* [sct] UDUnits structure, input units */
+  ut_unit *ut_sct_out; /* [sct] UDUnits structure, output units */
   
   /* Quick return if units identical */
-  if(!strcmp(fl_unt_sng,fl_bs_sng)){
+  if(!strcasecmp(fl_unt_sng,fl_bs_sng)){
     *og_val=crr_val;  
     return NCO_NOERR;
   } /* end if */
@@ -215,10 +215,11 @@ nco_cln_clc_dff /* [fnc] UDUnits2 Compute difference between two coordinate unit
 int /* [rcd] Successful conversion returns NCO_NOERR */
 nco_cln_prs_tm /* UDUnits2 Extract time stamp from parsed UDUnits string */
 (const char *unt_sng, /* I [ptr] units attribute string */
- tm_cln_sct *tm_in) /*  O [sct] struct to be populated */             
+ tm_cln_sct *tm_in) /* O [sct] Time structure to be populated */
 {
   const char fnc_nm[]="nco_cln_prs_tm()"; /* [sng] Function name */
 
+  /* 20141230: fxm figure out a better length */
   char bfr[200];
 
   char *dt_sng;
@@ -237,21 +238,22 @@ nco_cln_prs_tm /* UDUnits2 Extract time stamp from parsed UDUnits string */
     return NCO_ERR; /* Failure */
   } /* end if err */ 
 
-  /* units string to convert from */
+  /* Units string to convert from */
   ut_sct_in=ut_parse(ut_sys,unt_sng,UT_ASCII); 
   if(ut_sct_in == NULL){ /* Problem with 'units' attribute */
     ut_rcd=ut_get_status(); /* [enm] UDUnits2 status */
     if(ut_rcd == UT_BAD_ARG) (void)fprintf(stderr,"ERROR: empty units attribute string\n");
-    if(ut_rcd == UT_SYNTAX) (void)fprintf(stderr,"ERROR:  units attribute \"%s\" has a syntax error\n",unt_sng);
+    if(ut_rcd == UT_SYNTAX)  (void)fprintf(stderr,"ERROR: units attribute \"%s\" has a syntax error\n",unt_sng);
     if(ut_rcd == UT_UNKNOWN) (void)fprintf(stderr,"ERROR: units attribute \"%s\" is not listed in UDUnits2 SI system database\n",unt_sng);
 
     return NCO_ERR; /* Failure */
   } /* endif coordinate on disk has no units attribute */
 
   /* Print timestamp to buffer in standard, dependable format */
-  ut_format(ut_sct_in,bfr,sizeof(bfr), UT_ASCII|UT_NAMES);
+  ut_format(ut_sct_in,bfr,sizeof(bfr),UT_ASCII|UT_NAMES);
 
-  /* Extract parsed time units from print string (kludgy) */
+  /* Extract parsed time units from print string (kludgy)
+     20141230 change to using ut_decode_time() instead? */
   dt_sng=strstr(bfr,"since");  
   sscanf(dt_sng,"%*s %d-%d-%d %d:%d:%f",&tm_in->year,&tm_in->month,&tm_in->day,&tm_in->hour,&tm_in->min,&tm_in->sec);
 
@@ -339,10 +341,10 @@ nco_cln_clc_dff /* [fnc] UDUnits1 Difference between two co-ordinate units */
   return NCO_NOERR;   
 }  /* end UDUnits1 nco_cln_clc_dff() */
 
-int /* [rcd] Successful conversion returns NCO_NOERR */     
+int /* [rcd] Successful conversion returns NCO_NOERR */
 nco_cln_prs_tm /* UDUnits1 Extract time stamp from a parsed udunits string */
-(const char *unt_sng, /* I [ptr] units attribute string   */            
-tm_cln_sct *tm_in) /*  O [sct] struct to be populated   */             
+(const char *unt_sng, /* I [ptr] units attribute string */
+ tm_cln_sct *tm_in) /* O [sct] Time structure to be populated */
 {
   const char fnc_nm[]="nco_cln_prs_tm()"; /* [sng] Function name */
 
@@ -364,7 +366,7 @@ tm_cln_sct *tm_in) /*  O [sct] struct to be populated   */
     return NCO_ERR;
   } /* end if err */ 
 
-  /* units string to convert from */
+  /* Units string to convert from */
   rcd=utScan(unt_sng,&udu_sct_in); 
   if(rcd != UDUNITS_NOERR){
     if(rcd == UT_EINVALID) (void)fprintf(stderr,"ERROR: units attribute \"%s\" is invalid \n",unt_sng);
@@ -387,7 +389,7 @@ tm_cln_sct *tm_in) /*  O [sct] struct to be populated   */
 
 } /* end UDUnits1 nco_cln_prs_tm() */
 
-# endif /*!HAVE_UDUNITS2 */
+# endif /* !HAVE_UDUNITS2 */
 
 #else /* !ENABLE_UDUNITS */
 
@@ -401,23 +403,23 @@ const char *fl_unt_sng, /* I [ptr] units attribute string from disk  */
 const char *fl_bs_sng, /* I [ptr] units attribute string from disk  */     
 double crr_val,
 double *og_val){ /* O [ptr] */
-return NCO_NOERR;
+  return NCO_NOERR;
 }
 
 int /* [rcd] Successful conversion returns NCO_NOERR */     
 nco_cln_prs_tm( /* Extract time stamp from a parsed UDUnits string */
 const char *unt_sng, /* I [ptr] units attribute string */
 tm_cln_sct *tm_in){ /* O [sct] struct to be populated */             
-return NCO_NOERR;
+  return NCO_NOERR;
 }
 
 #endif /* !ENABLE_UDUNITS */
 
 /* End UDUnits-related routines*/
  
-tm_typ /* [enum] Units type */    
+tm_typ /* O [enm] Units type */
 nco_cln_get_tm_typ /* Returns time unit type or tm_void if not found */
-(const char *ud_sng){ /* I [ptr] units string  */      
+(const char *ud_sng){ /* I [ptr] Units string  */
   int idx;
   int len; 
   char *lcl_sng;  
@@ -425,7 +427,7 @@ nco_cln_get_tm_typ /* Returns time unit type or tm_void if not found */
   
   lcl_sng=strdup(ud_sng);
   
-  /* Initially set ret type to void */
+  /* Set initial return type to void and overwrite */
   rcd_typ=tm_void;   
   
   /* Convert to lower case */
@@ -443,9 +445,9 @@ nco_cln_get_tm_typ /* Returns time unit type or tm_void if not found */
   return rcd_typ;
 } /* end nco_cln_get_tm_typ() */
 
-nco_cln_typ /* [enum] Calendar type */    
-nco_cln_get_cln_typ /*  [fnc]  Calendar type or cln_nil if not found */
-(const char *ud_sng) /* I [ptr] units string  */      
+nco_cln_typ /* [enm] Calendar type */
+nco_cln_get_cln_typ /* [fnc] Determine calendar type or cln_nil if not found */
+(const char *ud_sng) /* I [ptr] units string  */
 {
   int idx;
   int len; 
@@ -456,7 +458,7 @@ nco_cln_get_cln_typ /*  [fnc]  Calendar type or cln_nil if not found */
   
   lcl_sng=strdup(ud_sng);
   
-  /* Initially set return type to void */
+  /* Set initial return type to void then overwrite */
   rcd_typ=cln_nil;
   
   /* Convert to lower case */
@@ -512,6 +514,7 @@ void
 nco_cln_pop_val /* [fnc] Calculate value in cln_sct */ 
 (tm_cln_sct *cln_sct) /* I/O [ptr] structure */
 {
+  /* Purpose: Populate values in calendar structure */
   double *data;
   
   switch(cln_sct->sc_cln){
@@ -540,7 +543,7 @@ nco_cln_pop_val /* [fnc] Calculate value in cln_sct */
   case cln_jul:
   case cln_nil:
     break;
-  }
+  } /* end switch */
   
   return;
 } /* end nco_cln_pop_val() */
@@ -598,15 +601,16 @@ nco_cln_rel_val
 
 int /* [rcd] Successful conversion returns NCO_NOERR */
 nco_cln_clc_tm /* [fnc] Difference between two coordinate units */
-(const char *fl_unt_sng, /* I [ptr] units attribute string from disk */
- const char *fl_bs_sng, /* I [ptr] units attribute string from disk */
- nco_cln_typ lmt_cln, /* [enum] Calendar type of coordinate var */ 
+(const char *fl_unt_sng, /* I [ptr] Units attribute string from disk */
+ const char *fl_bs_sng, /* I [ptr] Units attribute string from disk */
+ nco_cln_typ lmt_cln, /* [enum] Calendar type of coordinate variable */ 
  double *og_val){ /* O [ptr] */
   
   int rcd;
   int year;
   int month;
   char *lcl_unt_sng;
+  /* 20141230 figure out better length */
   char tmp_sng[100];
   double crr_val;
   
@@ -639,7 +643,6 @@ nco_cln_clc_tm /* [fnc] Difference between two coordinate units */
   
   /* Assume non-standard calendar */ 
   if(nco_cln_prs_tm(lcl_unt_sng,&unt_cln_sct) == NCO_ERR) return NCO_ERR;
-  
   if(nco_cln_prs_tm(fl_bs_sng,&bs_cln_sct) == NCO_ERR) return NCO_ERR;
   
   unt_cln_sct.sc_typ=bs_tm_typ;
@@ -677,7 +680,7 @@ nco_cln_clc_org /* [fnc] Difference between two generic co-ordinate units */
   double crr_val;
   
   /* If units contain date or timestamp call special time-conversion routine */
-  if(strstr(fl_bs_sng," from ") || strstr(fl_bs_sng," since ") || strstr(fl_bs_sng," after ")){
+  if(strcasestr(fl_bs_sng," from ") || strcasestr(fl_bs_sng," since ") || strcasestr(fl_bs_sng," after ")){
     rcd=nco_cln_clc_tm(fl_unt_sng,fl_bs_sng,lmt_cln,og_val);   
     return rcd;
   } /* endif */
@@ -689,3 +692,92 @@ nco_cln_clc_org /* [fnc] Difference between two generic co-ordinate units */
   usr_unt_sng=(char *)nco_free(usr_unt_sng);
   return rcd;  
 } /* end nco_cln_clc_org() */
+
+int /* O [flg] String is calendar date */
+nco_cln_chk_tm /* [fnc] Is string a UDUnits-compatible calendar format, e.g., "PERIOD since REFERENCE_DATE" */
+(const char *unit_sng) /* I [sng] Units string */
+{
+  /* Purpose:
+     Determine whether the string is a UDUnits-compatible calendar format, e.g., "PERIOD since REFERENCE_DATE" */
+
+  /* Does string contain date keyword? */
+  if(strcasestr(unit_sng," from ") || strcasestr(unit_sng," since ") || strcasestr(unit_sng," after ")) return True; else return False;
+
+} /* end nco_cln_chk_tm() */
+
+int /* [rcd] Return code */
+nco_cln_sng_rbs /* [fnc] Rebase calendar string for legibility */
+(const ptr_unn val, /* I [sct] Value to rebase */
+ const long val_idx, /* I [idx] Index into 1-D array of values */
+ const nc_type val_typ, /* I [enm] Value type */
+ const char *unit_sng, /* I [sng] Units string */
+ char *lgb_sng) /* O [sng] Legible version of input string */
+{
+  /* Purpose: Rebase calendar string for legibility
+     Assumptions: Input units string unit_sng is a calendar date, i.e., contains "from", "since", or "after"
+
+     ncdump handles this in nctime0.c
+     dumplib.c/nctime_val_tostring() by Dave Allured, NOAA
+     cdRel2Iso() from CDMS by Bob Drach, LLNL
+     cdParseRelunits() from CDMS by Bob Drach, LLNL */
+
+#ifdef HAVE_UDUNITS2_H
+
+  const char fnc_nm[]="nco_cln_sng_rbs()"; /* [sng] Function name */
+  
+  double val_dbl; /* [day] Calendar offset converted to double */
+
+  int ut_rcd; /* [enm] UDUnits2 status */
+  
+  ut_system *ut_sys;
+  ut_unit *ut_sct_in; /* [sct] UDUnits structure, input units */
+  ut_unit *ut_sct_out; /* [sct] UDUnits structure, output units */
+
+  /* Quick return if units DNE */
+  if(!unit_sng) return NCO_NOERR;
+  
+  /* When empty, ut_read_xml() uses environment variable UDUNITS2_XML_PATH, if any
+     Otherwise it uses default initial location hardcoded when library was built */
+  if(nco_dbg_lvl_get() >= nco_dbg_vrb) ut_set_error_message_handler(ut_write_to_stderr); else ut_set_error_message_handler(ut_ignore);
+  ut_sys=ut_read_xml(NULL);
+  if(!ut_sys){
+    (void)fprintf(stdout,"%s: %s() failed to initialize UDUnits2 library\n",nco_prg_nm_get(),fnc_nm);
+    return NCO_ERR; /* Failure */
+  } /* end if err */ 
+
+  /* Units string containing calendar origin converted to UDUnit structure */
+  ut_sct_in=ut_parse(ut_sys,unit_sng,UT_ASCII); 
+  if(!ut_sct_in){ /* Problem with 'units' attribute */
+    ut_rcd=ut_get_status(); /* [enm] UDUnits2 status */
+    if(ut_rcd == UT_BAD_ARG) (void)fprintf(stderr,"ERROR: empty units attribute string\n");
+    if(ut_rcd == UT_SYNTAX) (void)fprintf(stderr,"ERROR: units attribute \"%s\" has a syntax error\n",unit_sng);
+    if(ut_rcd == UT_UNKNOWN) (void)fprintf(stderr,"ERROR: units attribute \"%s\" is not listed in UDUnits2 SI system database\n",unit_sng);
+    return NCO_ERR; /* Failure */
+  } /* endif coordinate on disk has no units attribute */
+
+  /* Convert time since calendar origin to double */
+  val_dbl=ptr_unn_2_scl_dbl(val,val_typ); 
+  
+  /* Units string to convert to */
+  ut_sct_out=ut_offset(ut_sct_in,val_dbl);
+  if(!ut_sct_out){ /* Problem with 'units' attribute */
+    ut_rcd=ut_get_status(); /* [enm] UDUnits2 status */
+    if(ut_rcd == UT_BAD_ARG) (void)fprintf(stderr,"ERROR: Empty units attribute string\n");
+    if(ut_rcd == UT_SYNTAX) (void)fprintf(stderr,"ERROR: units attribute  \"%s\" has a syntax error\n",unit_sng);
+    if(ut_rcd == UT_UNKNOWN) (void)fprintf(stderr,"ERROR: units attribute \"%s\" is not listed in UDUnits2 SI system database\n",unit_sng);
+    return NCO_ERR; /* Failure */
+  } /* endif */
+
+  val_dbl+=0*val_idx; /* CEWI */
+
+  ut_free(ut_sct_in);
+  ut_free(ut_sct_out);
+  ut_free_system(ut_sys); /* Free memory taken by UDUnits library */
+#endif /* !HAVE_UDUNITS2 */
+
+  lgb_sng[0]='\0'; /* CEWI */
+
+  return NCO_NOERR;
+
+} /* end nco_cln_sng_rbs() */
+
diff --git a/src/nco/nco_cln_utl.h b/src/nco/nco_cln_utl.h
index 4858273..78617f6 100644
--- a/src/nco/nco_cln_utl.h
+++ b/src/nco/nco_cln_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cln_utl.h,v 1.36 2014/06/15 21:06:21 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cln_utl.h,v 1.42 2015/02/04 02:44:45 zender Exp $ */
 
 /* Purpose: Calendar utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -18,9 +18,13 @@
 #endif /* !HAVE_CONFIG_H */
 
 /* Standard header files */
-#include <ctype.h> /* tolower() */
+#include <ctype.h> /* isalnum(), isdigit(), tolower() */
 #include <stdio.h> /* stderr, FILE, NULL, printf */
 #include <stdlib.h> /* strtod, strtol, malloc, getopt, exit */
+#include <string.h> /* strcmp() */
+#ifdef HAVE_STRINGS_H
+# include <strings.h> /* strcasecmp() */
+#endif /* !HAVE_STRINGS_H */
 
 /* 3rd party vendors */
 #ifdef ENABLE_UDUNITS
@@ -34,6 +38,7 @@
 /* Personal headers */
 #include "nco.h" /* netCDF Operator (NCO) definitions */
 #include "nco_ctl.h" /* Program flow control functions */
+#include "nco_sng_utl.h" /* String utilities */
 
 #ifdef __cplusplus
 extern "C" {
@@ -73,53 +78,65 @@ nco_newdate /* [fnc] Compute date a specified number of days from input date */
  const nco_int day_srt); /* I [day] Days ahead of input date */
 
 int               /* [flg] NCO_NOERR or NCO_ERR */ 
-nco_cln_clc_dff(  /* [fnc] difference between two co-ordinate units */      
-const char *fl_unt_sng, /* I [ptr] units attribute string from disk  */     
-const char *fl_bs_sng,  /* I [ptr] units attribute string from disk  */     
-double crr_val,         /* I [dbl] input units value */
-double *og_val);         /* O difference between two units string */
-
-int                  /* [flg] NCO_NOERR or NCO_ERR */ 
-nco_cln_prs_tm(      /* Extract time stamp from a parsed udunits string */
-const char *unt_sng, /* I [ptr] units attribute string   */            
-tm_cln_sct *tm_in); /*  O [sct] struct to be populated   */             
-
-tm_typ              /* [enum] Units type */    
+nco_cln_clc_dff( /* [fnc] difference between two co-ordinate units */
+const char *fl_unt_sng, /* I [ptr] units attribute string from disk */
+const char *fl_bs_sng,  /* I [ptr] units attribute string from disk */
+double crr_val, /* I [dbl] input units value */
+double *rgn_val); /* O difference between two units string */
+
+int /* [flg] NCO_NOERR or NCO_ERR */
+nco_cln_prs_tm( /* Extract time stamp from a parsed udunits string */
+const char *unt_sng, /* I [ptr] units attribute string */  
+tm_cln_sct *tm_in); /*  O [sct] struct to be populated */
+
+tm_typ /* [enum] Units type */
 nco_cln_get_tm_typ( /* returns time unit type or tm_void if not found */
-const char *ud_sng); /* I [ptr] units string  */      
+const char *ud_sng); /* I [ptr] units string */
 
-nco_cln_typ               /* [enum] Calendar type */    
+nco_cln_typ /* [enum] Calendar type */    
 nco_cln_get_cln_typ( /* [fnc] Calendar type or cln_nil if not found */
-const char *ud_sng); /* I [ptr] units string  */      
+const char *ud_sng); /* I [ptr] units string */
 
-int                /* O [int] number of days */
+int /* O [int] number of days */
 nco_cln_days_in_year_prior_to_given_month( /* [fnc] Number of days in year prior to month */
-nco_cln_typ lmt_cln,   /* [enum] calendar type */
+nco_cln_typ lmt_cln, /* [enum] calendar type */
 int mth_idx); /* I [idx] Month (1-based counting, December == 12) */
 
 void
-nco_cln_pop_val(     /* [fnc] Calculate value in cln_sct */ 
-tm_cln_sct *cln_sct);/* I/O [ptr] structure */
-
-double               /* O [dbl] relative time */
-nco_cln_rel_val(     /* [fnc] */   
-double offset,          /* I [dbl] time in base units */
-nco_cln_typ lmt_cln,        /* I [enum] Calendar type */ 
-tm_typ bs_tm_typ);      /* I [enum] Time units */
-
-int               /* O [flg] NCO_NOERR or NCO_ERR */ 
-nco_cln_clc_tm(    /* [fnc] Difference between two time coordinate units */
-const char *fl_unt_sng, /* I [ptr] user units attribute string   */     
-const char *fl_bs_sng,  /* I [ptr] units attribute string from disk  */     
-nco_cln_typ lmt_cln,        /* [enum] Calendar type of coordinate var */ 
-double *og_val);        /* O [ptr] time diff in units based on fl_bs_sng */ 
-
-int               /* O [flg] NCO_NOERR or NCO_ERR */ 
-nco_cln_clc_org(    /* [fnc] Difference between two generic coordinate units */      
-const char *fl_unt_sng, /* I [ptr] units attribute string from disk  */     
-const char *fl_bs_sng,  /* I [ptr] units attribute string from disk  */     
-nco_cln_typ lmt_cln,        /* I [enum] Calendar type of coordinate var */ 
-double *og_val);        /* O [ptr]                                   */
+nco_cln_pop_val( /* [fnc] Calculate value in cln_sct */ 
+tm_cln_sct *cln_sct);/* I/O [ptr] Calendar structure */
+
+double /* O [dbl] Relative time */
+nco_cln_rel_val( /* [fnc] */
+double offset, /* I [dbl] time in base units */
+nco_cln_typ lmt_cln, /* I [enum] Calendar type */
+tm_typ bs_tm_typ); /* I [enum] Time units */
+
+int /* O [flg] NCO_NOERR or NCO_ERR */ 
+nco_cln_clc_tm( /* [fnc] Difference between two time coordinate units */
+const char *fl_unt_sng, /* I [ptr] user units attribute string */
+const char *fl_bs_sng, /* I [ptr] units attribute string from disk  */     
+nco_cln_typ lmt_cln, /* [enm] Calendar type of coordinate var */ 
+double *rgn_val); /* O [ptr] time diff in units based on fl_bs_sng */ 
+
+int /* O [flg] NCO_NOERR or NCO_ERR */ 
+nco_cln_clc_org( /* [fnc] Difference between two generic coordinate units */      
+const char *fl_unt_sng, /* I [ptr] units attribute string from disk */
+const char *fl_bs_sng, /* I [ptr] units attribute string from disk */
+nco_cln_typ lmt_cln, /* I [enum] Calendar type of coordinate var */ 
+double *og_val); /* O [ptr] */
+
+int /* O [flg] String is calendar date */
+nco_cln_chk_tm /* [fnc] Is string a UDUnits-compatible calendar format, e.g., "PERIOD since REFERENCE_DATE" */
+(const char *unit_sng); /* I [sng] Units string */
+
+int /* [rcd] Return code */
+nco_cln_sng_rbs /* [fnc] Rebase calendar string for legibility */
+(const ptr_unn val, /* I [sct] Value to rebase */
+ const long val_idx, /* I [idx] Index into 1-D array of values */
+ const nc_type val_typ, /* I [enm] Value type */
+ const char *unit_sng, /* I [sng] Units string */
+ char *lgb_sng); /* O [sng] Legible version of input string */
 
 #ifdef __cplusplus
 } /* end extern "C" */
diff --git a/src/nco/nco_cnf_dmn.c b/src/nco/nco_cnf_dmn.c
index dd71a0d..414889a 100644
--- a/src/nco/nco_cnf_dmn.c
+++ b/src/nco/nco_cnf_dmn.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_dmn.c,v 1.95 2014/06/15 21:06:21 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_dmn.c,v 1.96 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Conform dimensions between variables */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_cnf_dmn.h" /* Conform dimensions */
diff --git a/src/nco/nco_cnf_dmn.h b/src/nco/nco_cnf_dmn.h
index 48cc850..899e95b 100644
--- a/src/nco/nco_cnf_dmn.h
+++ b/src/nco/nco_cnf_dmn.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_dmn.h,v 1.40 2014/06/15 21:06:21 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_dmn.h,v 1.41 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Conform dimensions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_cnf_typ.c b/src/nco/nco_cnf_typ.c
index 09555ae..23bd2a9 100644
--- a/src/nco/nco_cnf_typ.c
+++ b/src/nco/nco_cnf_typ.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_typ.c,v 1.80 2014/09/30 23:03:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_typ.c,v 1.82 2015/02/07 04:39:39 zender Exp $ */
 
 /* Purpose: Conform variable types */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_cnf_typ.h" /* Conform variable types */
@@ -136,7 +136,7 @@ nco_typ_cnv_rth /* [fnc] Convert char, short, long, int, and float types to doub
     if(var->typ_upk == NC_FLOAT){
       var=nco_var_cnf_typ((nc_type)NC_FLOAT,var);
     }else{ /* Conversion only for appropriate operation types */ 
-      if(var->type != NC_FLOAT && var->type != NC_DOUBLE && nco_op_typ != nco_op_min && nco_op_typ != nco_op_max) var=nco_var_cnf_typ((nc_type)NC_DOUBLE,var);
+      if(var->type != NC_FLOAT && var->type != NC_DOUBLE && nco_op_typ != nco_op_min && nco_op_typ != nco_op_max && nco_op_typ != nco_op_mabs && nco_op_typ != nco_op_mebs && nco_op_typ != nco_op_mibs) var=nco_var_cnf_typ((nc_type)NC_DOUBLE,var);
     } /* end if */
 
   }else{ /* !nco_rth_flt_flt */
@@ -144,7 +144,7 @@ nco_typ_cnv_rth /* [fnc] Convert char, short, long, int, and float types to doub
     /* NCO default after 201309: promote, where necessary, anything but doubles
        Now default and activated redundantly --dbl switch */
     /* Conversion only for appropriate operation types */ 
-    if(var->type != NC_DOUBLE && nco_op_typ != nco_op_min && nco_op_typ != nco_op_max) var=nco_var_cnf_typ((nc_type)NC_DOUBLE,var);
+    if(var->type != NC_DOUBLE && nco_op_typ != nco_op_min && nco_op_typ != nco_op_max && nco_op_typ != nco_op_mabs && nco_op_typ != nco_op_mebs && nco_op_typ != nco_op_mibs) var=nco_var_cnf_typ((nc_type)NC_DOUBLE,var);
     
   } /* !nco_rth_flt_flt */
   
diff --git a/src/nco/nco_cnf_typ.h b/src/nco/nco_cnf_typ.h
index ef2e5d4..cc4052c 100644
--- a/src/nco/nco_cnf_typ.h
+++ b/src/nco/nco_cnf_typ.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_typ.h,v 1.44 2014/09/30 23:03:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_typ.h,v 1.45 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Conform variable types */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_cnk.c b/src/nco/nco_cnk.c
index 069122a..5ab816a 100644
--- a/src/nco/nco_cnk.c
+++ b/src/nco/nco_cnk.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnk.c,v 1.151 2014/11/26 04:15:26 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnk.c,v 1.157 2015/02/04 04:16:24 zender Exp $ */
 
 /* Purpose: NCO utilities for chunking */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -211,6 +211,7 @@ nco_cnk_ini /* [fnc] Create structure with all chunking information */
   /* NCO-recommended chunking map is expected to change over time
      cnk_map=nco assigns current NCO-recommended map */
   if(cnk_map == nco_cnk_map_nco) cnk->cnk_map=nco_cnk_map_rd1;
+  if(cnk_map == nco_cnk_plc_nco) cnk->cnk_plc=nco_cnk_plc_nco;
 
   return rcd;
 } /* end nco_cnk_ini() */
@@ -328,7 +329,7 @@ nco_cnk_map_get /* [fnc] Convert user-specified chunking map to key */
 
   if(nco_cnk_map_sng == NULL){
     /* 20140815: Change default from rd1 to xst */
-    if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stdout,"%s: INFO %s reports %s invoked without explicit chunking map. Defaulting to chunking map \"xst\".\n",nco_prg_nm,fnc_nm,nco_prg_nm);
+    if(nco_dbg_lvl_get() >= nco_dbg_scl) (void)fprintf(stdout,"%s: INFO %s reports %s invoked without explicit chunking map. Defaulting to chunking map \"xst\".\n",nco_prg_nm,fnc_nm,nco_prg_nm);
     return nco_cnk_map_xst;
   } /* endif */
 
@@ -370,7 +371,7 @@ nco_cnk_plc_get /* [fnc] Convert user-specified chunking policy to key */
 
   if(nco_cnk_plc_sng == NULL){
     /* 20140815: Change default from g2d to xst */
-    if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stdout,"%s: INFO %s reports %s invoked without explicit chunking policy. Defaulting to chunking policy \"xst\".\n",nco_prg_nm,fnc_nm,nco_prg_nm);
+    if(nco_dbg_lvl_get() >= nco_dbg_scl) (void)fprintf(stdout,"%s: INFO %s reports %s invoked without explicit chunking policy. Defaulting to chunking policy \"xst\".\n",nco_prg_nm,fnc_nm,nco_prg_nm);
     return nco_cnk_plc_xst;
   } /* endif */
 
@@ -877,7 +878,7 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
     nco_exit(EXIT_FAILURE);
   } /* endif cnk_sz_scl */
 
-  if(FIRST_CALL && nco_dbg_lvl_get() >= nco_dbg_fl && nco_dbg_lvl_get() != nco_dbg_dev){
+  if(FIRST_CALL && nco_dbg_lvl_get() >= nco_dbg_scl && nco_dbg_lvl_get() != nco_dbg_dev){
     (void)fprintf(stdout,"%s: INFO User requested chunking or unchunking\n",nco_prg_nm_get());
     if(nco_dbg_lvl_get() >= nco_dbg_scl  && nco_dbg_lvl_get() != nco_dbg_dev){
       (void)fprintf(stdout,"cnk_plc, cnk_map: %s, %s\n",nco_cnk_plc_sng_get(cnk_plc),nco_cnk_map_sng_get(cnk_map));
@@ -1085,7 +1086,11 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
 
   } /* end loop over dimensions */
 
-  if(cnk_map == nco_cnk_map_lfp){
+  //cnk_map_lfp: /* end goto */
+
+  if(cnk_map == nco_cnk_map_lfp ||
+     (cnk_plc == nco_cnk_plc_nco && dmn_nbr != 3) ||
+     (cnk_map == nco_cnk_map_rew && dmn_nbr != 3)){
     /* Set "Lefter Product" chunksizes
        Reasonable defaults have been set for all dimensions, now adjust lefter dimensions to match overall size */
     int dmn_idx_1st_rec;
@@ -1118,10 +1123,13 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
     goto cnk_xpl_override;
   } /* !nco_cnk_map_lfp */
 
-  if(cnk_map == nco_cnk_map_rew){
+  //cnk_map_rew: /* end goto */
+
+  /* Apply Rew only to 3-D variables */
+  if(cnk_map == nco_cnk_map_rew && dmn_nbr != 3) goto cnk_xpl_override;
 
-    /* Apply only to 3-D variables */
-    if(dmn_nbr != 3) goto cnk_xpl_override;
+  if(cnk_map == nco_cnk_map_rew || 
+     (cnk_plc == nco_cnk_plc_nco && dmn_nbr == 3)){
 
     /* Implementation by Russ Rew at http://www.unidata.ucar.edu/staff/russ/public/chunk_shape_3D.py
        >>> import cnk
@@ -1135,6 +1143,7 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
     double cnk_nbr_xct; /* [nbr] Exact number of ideal chunks needed to store variable */
     double cnk_nbr_2D_axs; /* [nbr] Exact number of ideal chunks along each 2D axis */
     double fct_ncr=1.0; /* [frc] Factor by which to increase chunk size */
+    double cnk_sz_rgn_zro_dfl; /* [nbr] Default chunk size for dimension zero (time) */
     size_t *cnk_sz_prt; /* [nbr] Perturbed chunk size (base chunk size plus zero or one) */
     size_t *cnk_sz_rgn; /* [nbr] Original (first-guess) chunk size (no adjustments) */
     size_t *prt_cff; /* [nbr] Rerturbation to base chunk size for each dimension, also [0,1] multiplier for each power of two in this permutation index */
@@ -1156,20 +1165,28 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
       dmn_sz_prd*=var_shp[dmn_idx];
     } /* end loop over dmn_idx */
     
+    /* [nbr] Exact number of ideal chunks needed to store variable */
     cnk_nbr_xct=dmn_sz_prd/cnk_val_nbr;
+    /* [nbr] Exact number of ideal chunks along each 2D axis */
     cnk_nbr_2D_axs=pow(cnk_nbr_xct,0.25);
+    /* Default chunk size for dimension zero (time) */
+    cnk_sz_rgn_zro_dfl=var_shp[0]/(cnk_nbr_2D_axs*cnk_nbr_2D_axs);
 
-    if(var_shp[0]/(cnk_nbr_2D_axs*cnk_nbr_2D_axs) < 1.0){
-      cnk_sz_rgn[0]=1L;
-      cnk_nbr_2D_axs/=sqrt((double)var_shp[0]/(cnk_nbr_2D_axs*cnk_nbr_2D_axs));
+    if(var_shp[0]/(cnk_nbr_2D_axs*cnk_nbr_2D_axs) >= 1.0){
+      cnk_sz_rgn[0]=(size_t)cnk_sz_rgn_zro_dfl; // Here Rew13 uses Python // operator for integer arithmetic
     }else{
-      cnk_sz_rgn[0]=var_shp[0]/(cnk_nbr_2D_axs*cnk_nbr_2D_axs); // Rew13 uses // for integer arithmetic here
+      /* Adjust chunk shape because time-series length incommensurate with lateral dimensions:
+	 If default chunk shape would give time chunk size smaller than one, then set time chunk size equal to one
+	 (larger than default) and compensate for effect of this in overall chunk volume by shrinking 
+	 lateral size by same factor such that product of adjusted chunk sizes equals product of default chunk sizes */
+      cnk_sz_rgn[0]=1L;
+      cnk_nbr_2D_axs/=sqrt(cnk_sz_rgn_zro_dfl);
     } /* endif */
 
-    for(dmn_idx=1;dmn_idx<=dmn_nbr-1;dmn_idx++) /* NB: Start at 1 */
+    for(dmn_idx=1;dmn_idx<=dmn_nbr-1;dmn_idx++) /* NB: Start at index 1 */
       if(var_shp[dmn_idx]/cnk_nbr_2D_axs < 1.0) fct_ncr*=cnk_nbr_2D_axs/var_shp[dmn_idx];
-    for(dmn_idx=1;dmn_idx<=dmn_nbr-1;dmn_idx++) /* NB: Start at 1 */
-      if(var_shp[dmn_idx]/cnk_nbr_2D_axs < 1.0) cnk_sz_rgn[dmn_idx]=1L; else cnk_sz_rgn[dmn_idx]=fct_ncr*var_shp[dmn_idx]/cnk_nbr_2D_axs;
+    for(dmn_idx=1;dmn_idx<=dmn_nbr-1;dmn_idx++) /* NB: Start at index 1 */
+      if(var_shp[dmn_idx]/cnk_nbr_2D_axs < 1.0) cnk_sz_rgn[dmn_idx]=1L; else cnk_sz_rgn[dmn_idx]=(size_t)(fct_ncr*var_shp[dmn_idx]/cnk_nbr_2D_axs);
 
     /* First-guess estimate of chunk size */
     size_t cnk_sz_prd=1L;
@@ -1187,13 +1204,13 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
     size_t prm_idx; /* [idx] Permutation index [0..2^(dmn_nbr-1)] */
     size_t prt_sum; /* [nbr] Partial sum (sum of coefficients times powers of two for higher powers */
     /* Score initial guess */
-    cnk_gap=cnk_sz_byt-cnk_sz_prd*typ_sz;
+    cnk_gap=(long)(cnk_sz_byt-cnk_sz_prd*typ_sz);
     /* In case initial guess is lucky and permutation loop breaks before completing */
     for(dmn_idx=0;dmn_idx<=dmn_nbr-1;dmn_idx++) cnk_sz[dmn_idx]=cnk_sz_rgn[dmn_idx];
 
     /* Loop through permutations of adjusting first-estimate chunk size by plus one
        NB: Skip permutation prm_idx=0 since it is degenerate and does not change first-guess chunk sizes */
-    for(prm_idx=1;prm_idx<two_pwr_rnk;prm_idx++){ /* NB: Loop starts at 1 to skip degenerate perumutation */
+    for(prm_idx=1;prm_idx<two_pwr_rnk;prm_idx++){ /* NB: Loop starts at 1 to skip degenerate permutation */
       if(cnk_gap == 0L) break;
       cnk_sz_prd=1L;
       /* Fill-in coefficient from MSB to LSB */
@@ -1207,7 +1224,7 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
 	cnk_sz_prd*=cnk_sz_prt[dmn_idx];
       } /* dmn_idx */
       /* Test gap narrowness */
-      cnk_gap_prt=cnk_sz_byt-cnk_sz_prd*typ_sz;
+      cnk_gap_prt=(long)(cnk_sz_byt-cnk_sz_prd*typ_sz);
 
       if(nco_dbg_lvl_get() >= nco_dbg_var){
 	(void)fprintf(stdout,"prm_idx = %lu, cnk_gap = %ld, cnk_sz_prd = %lu, cnk_gap_prt = %ld, prt_sum = %lu\n",(unsigned long)prm_idx,cnk_gap,(unsigned long)cnk_sz_prd,cnk_gap_prt,(unsigned long)prt_sum);
@@ -1238,8 +1255,14 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
     if(two_pwr_idx) two_pwr_idx=(size_t *)nco_free(two_pwr_idx); 
     if(var_shp) var_shp=(size_t *)nco_free(var_shp); 
 
+    /* Skip uniform and per-dimension overrides, go straight to final safety check */
+    goto cnk_sft_chk;
+
   } /* !nco_cnk_map_rew */
 
+  /* Uniform override */
+  // cnk_unf_override: /* end goto */
+
   /* Override "reasonable" defaults with explicitly set uniform scalar chunksize, if any */
   if(cnk_sz_dfl > 0UL){
     for(dmn_idx=0;dmn_idx<dmn_nbr;dmn_idx++){
@@ -1260,7 +1283,8 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
     } /* end loop over dimensions */
   } /* !cnk_sz_dfl */
 
-cnk_xpl_override: /* end goto */
+  /* Explicit (per-dimension) override */
+ cnk_xpl_override: /* end goto */
 
   /* Override "reasonable" defaults with explicitly set per-dimension sizes, if any */
   for(dmn_idx=0;dmn_idx<dmn_nbr;dmn_idx++){
@@ -1322,6 +1346,9 @@ cnk_xpl_override: /* end goto */
 
   } /* end loop over dmn_idx */
 
+  /* Final Safety Check */
+ cnk_sft_chk: /* end goto */
+
   /* Status: Previous loop implemented per-dimension checks on user-requested chunksizes only
      Loop below implements similar final safety check for ALL dimensions and ALL chunking maps
      Check trims fixed (not record) dimension chunksize to never be larger than dimension size */
@@ -1329,7 +1356,7 @@ cnk_xpl_override: /* end goto */
     if(cnk_sz[dmn_idx] > (size_t)dmn_cmn[dmn_idx].sz){
       if(!dmn_cmn[dmn_idx].is_rec_dmn){
         /* Unlike record dimensions, non-record dimensions must have cnk_sz <= dmn_sz */
-        if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stderr,"%s: INFO %s final check trimming chunksize of \"%s\" dimension from %lu to %lu\n",nco_prg_nm_get(),fnc_nm,dmn_cmn[dmn_idx].nm,(unsigned long)cnk_sz[dmn_idx],(unsigned long)dmn_cmn[dmn_idx].sz);
+        if(nco_dbg_lvl_get() >= nco_dbg_var) (void)fprintf(stderr,"%s: INFO %s final check trimming chunksize of \"%s\" dimension from %lu to %lu\n",nco_prg_nm_get(),fnc_nm,dmn_cmn[dmn_idx].nm,(unsigned long)cnk_sz[dmn_idx],(unsigned long)dmn_cmn[dmn_idx].sz);
         /* Trim else out-of-bounds sizes will fail in HDF library in nc_enddef() */
         cnk_sz[dmn_idx]=(size_t)dmn_cmn[dmn_idx].sz;
       } /* rcd_dmn_id */
diff --git a/src/nco/nco_cnk.h b/src/nco/nco_cnk.h
index 0ec381b..1e432d8 100644
--- a/src/nco/nco_cnk.h
+++ b/src/nco/nco_cnk.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnk.h,v 1.42 2014/10/17 15:42:40 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnk.h,v 1.44 2015/02/03 02:08:55 zender Exp $ */
 
 /* Purpose: Description (definition) of chunking functions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -38,7 +38,8 @@ enum nco_cnk_plc{ /* [enm] Chunking policy */
   nco_cnk_plc_xpl, /* 4 [enm] Chunk variables with explicitly chunked dimensions */
   nco_cnk_plc_xst, /* 5 [enm] Chunk variables that are chunked in input */
   nco_cnk_plc_uck, /* 6 [enm] Unchunk all chunked variables */
-  nco_cnk_plc_r1d /* 7 [enm] Chunk record coordinates == one dimension */
+  nco_cnk_plc_r1d, /* 7 [enm] Chunk record coordinates == one dimension */
+  nco_cnk_plc_nco /* 8 [enm] Chunk variables according to current "best" NCO algorithm */
 }; /* end nco_cnk_plc enum */
 
 /* Chunking type maps: */
diff --git a/src/nco/nco_cnv_arm.c b/src/nco/nco_cnv_arm.c
index 81f8288..7faa456 100644
--- a/src/nco/nco_cnv_arm.c
+++ b/src/nco/nco_cnv_arm.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_arm.c,v 1.36 2014/06/15 21:06:22 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_arm.c,v 1.37 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: ARM conventions, e.g., http://www.arm.gov/data/time.stm */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_cnv_arm.h" /* ARM conventions */
diff --git a/src/nco/nco_cnv_arm.h b/src/nco/nco_cnv_arm.h
index 12dd3c3..cf1620a 100644
--- a/src/nco/nco_cnv_arm.h
+++ b/src/nco/nco_cnv_arm.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_arm.h,v 1.30 2014/06/15 21:06:22 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_arm.h,v 1.31 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: ARM conventions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_cnv_csm.c b/src/nco/nco_cnv_csm.c
index ea2bab8..5b4a37b 100644
--- a/src/nco/nco_cnv_csm.c
+++ b/src/nco/nco_cnv_csm.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_csm.c,v 1.115 2014/07/15 18:48:55 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_csm.c,v 1.118 2015/02/07 05:42:35 zender Exp $ */
 
 /* Purpose: CCM/CCSM/CF conventions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_cnv_csm.h" /* CCM/CCSM/CF conventions */
@@ -237,11 +237,12 @@ nco_cnv_cf_cll_mth_add               /* [fnc] Add cell_methods attributes */
  const trv_tbl_sct * const trv_tbl)  /* I [sct] Traversal table */
 {
   /* Purpose: Add/modify cell_methods attribute according to CF convention
-     http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.7-draft1/cf-conventions.html#cell-methods
+     http://cfconventions.org/Data/cf-conventions/cf-conventions-1.7/build/cf-conventions.html#cell-methods
      
      cell_methods values and description:
      point	: Data values are representative of points in space or time (instantaneous)
      sum	: Data values are representative of a sum or accumulation over the cell
+     maximum_absolute_value	: Maximum absolute value
      maximum	: Maximum
      median	: Median
      mid_range	: Average of maximum and minimum
@@ -256,8 +257,9 @@ nco_cnv_cf_cll_mth_add               /* [fnc] Add cell_methods attributes */
      avg Mean value
      sqravg Square of the mean
      avgsqr Mean of sum of squares
-     max Maximium value
-     min Minimium value
+     mabs Maximum absolute value
+     max Maximum value
+     min Minimum value
      rms Root-mean-square (normalized by N)
      rmssdn Root-mean square (normalized by N-1)
      sqrt Square root of the mean
@@ -267,7 +269,7 @@ nco_cnv_cf_cll_mth_add               /* [fnc] Add cell_methods attributes */
 
   aed_sct aed; /* [sct] Structure containing information necessary to edit */
 
-  char att_op_sng[8]; /* [sng] Operation type (longest is nco_op_max which translates to "maximum") */
+  char att_op_sng[23]; /* [sng] Operation type (longest is nco_op_mabs which translates to "maximum_absolute_value") */
 
   char *att_val_cpy; /* [sng] Copy of attribute */
   char *grp_out_fll=NULL; /* [sng] Group name */
@@ -338,17 +340,20 @@ nco_cnv_cf_cll_mth_add               /* [fnc] Add cell_methods attributes */
     /* NUL-terminate before concatenation */
     att_op_sng[0]='\0';
     switch(nco_op_typ_lcl){
-      /* Next four operations are defined in CF Conventions */
+      /* Next five operations are defined in CF Conventions */
     case nco_op_avg: strcpy(att_op_sng,"mean"); break;
     case nco_op_min: strcpy(att_op_sng,"minimum"); break;
     case nco_op_max: strcpy(att_op_sng,"maximum"); break;
     case nco_op_ttl: strcpy(att_op_sng,"sum"); break;
+    case nco_op_avgsqr: strcpy(att_op_sng,"variance"); break; /* Mean of sum of squares */
       /* Remaining operations are supported by NCO yet are not in CF Conventions */
-    case nco_op_sqravg: strcpy(att_op_sng,"sqravg"); break; /* Square of mean */
-    case nco_op_avgsqr: strcpy(att_op_sng,"avgsqr"); break; /* Mean of sum of squares */
-    case nco_op_sqrt: strcpy(att_op_sng,"sqrt"); break; /* Square root of mean */ 
-    case nco_op_rms: strcpy(att_op_sng,"rms"); break; /* Root-mean-square (normalized by N) */
-    case nco_op_rmssdn: strcpy(att_op_sng,"rmssdn"); break; /* Root-mean square normalized by N-1 */
+    case nco_op_mabs: strcpy(att_op_sng,"maximum_absolute_value"); break; /* Maximum absolute value */
+    case nco_op_mebs: strcpy(att_op_sng,"mean_absolute_value"); break; /* Mean absolute value */
+    case nco_op_mibs: strcpy(att_op_sng,"minimum_absolute_value"); break; /* Minimum absolute value */
+    case nco_op_sqravg: strcpy(att_op_sng,"square_of_mean"); break; /* Square of mean */
+    case nco_op_sqrt: strcpy(att_op_sng,"square_root_of_mean"); break; /* Square root of mean */ 
+    case nco_op_rms: strcpy(att_op_sng,"root_mean_square"); break; /* Root-mean-square (normalized by N) */
+    case nco_op_rmssdn: strcpy(att_op_sng,"root_mean_square_nm1"); break; /* Root-mean square normalized by N-1 */
     case nco_op_nil: /* nco_op_nil, Undefined operation type */
       if(nco_dbg_lvl_get() >= nco_dbg_var) (void)fprintf(stdout,"%s: DEBUG %s reports variable %s cell_method not implemented for operation %d\n",nco_prg_nm_get(),fnc_nm,var_trv->nm_fll,nco_op_typ);
       continue;
@@ -405,6 +410,9 @@ int
 nco_rdc_sng_to_op_typ /* [fnc] Convert operation string to integer */
 (const char * const att_op_sng) /* [fnc] Operation string */
 {           
+  if(!strcmp(att_op_sng,"mabs")) return nco_op_mabs;
+  if(!strcmp(att_op_sng,"mebs")) return nco_op_mebs;
+  if(!strcmp(att_op_sng,"mibs")) return nco_op_mibs;
   if(!strcmp(att_op_sng,"mean")) return nco_op_avg;
   if(!strcmp(att_op_sng,"minimum")) return nco_op_min;
   if(!strcmp(att_op_sng,"maximum")) return nco_op_max;
@@ -424,6 +432,9 @@ nco_op_typ_to_rdc_sng /* [fnc] Convert operation type to string */
 {           
   switch(nco_op_typ){
   case nco_op_avg: return "mean";
+  case nco_op_mabs: return "mabs";
+  case nco_op_mebs: return "mebs";
+  case nco_op_mibs: return "mibs";
   case nco_op_min: return "minimum";
   case nco_op_max: return "maximum";
   case nco_op_ttl: return "sum";
diff --git a/src/nco/nco_cnv_csm.h b/src/nco/nco_cnv_csm.h
index 5ce80e1..8075fb9 100644
--- a/src/nco/nco_cnv_csm.h
+++ b/src/nco/nco_cnv_csm.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_csm.h,v 1.43 2014/06/15 21:06:22 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_csm.h,v 1.44 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: CCM/CCSM/CF conventions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_ctl.c b/src/nco/nco_ctl.c
index 1596b6d..c443210 100644
--- a/src/nco/nco_ctl.c
+++ b/src/nco/nco_ctl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_ctl.c,v 1.502 2014/11/26 05:18:52 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_ctl.c,v 1.520 2015/02/09 23:29:38 zender Exp $ */
 
 /* Purpose: Program flow control functions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_ctl.h" /* Program flow control functions */
@@ -133,13 +133,13 @@ nco_ddra /* [fnc] Count operations */
   
   /* Following speed parameter estimates are for clay.ess.uci.edu 
      clay is the dual opteron used in ppr_ZeM07 */
-  const float ntg_nbr_brd_fdg_fct=1.8; /* [frc] Empirical correction to broadcasting */
-  const float spd_flp_ncwa=153e6; /* [# s-1] Floating point operation speed */
-  const float spd_ntg_ncwa=200e6; /* [# s-1] Integer operation speed */
-  const float spd_flp_ncbo=353.2e6; /* [# s-1] Floating point operation speed */
-  const float spd_ntg_ncbo=1386.54e6; /* [# s-1] Integer operation speed */
-  const float spd_rd=63.375e6; /* [B s-1] Disk read bandwidth */
-  const float spd_wrt=57.865e6; /* [B s-1] Disk write bandwidth */
+  const float ntg_nbr_brd_fdg_fct=1.8f; /* [frc] Empirical correction to broadcasting */
+  const float spd_flp_ncwa=153e6f; /* [# s-1] Floating point operation speed */
+  const float spd_ntg_ncwa=200e6f; /* [# s-1] Integer operation speed */
+  const float spd_flp_ncbo=353.2e6f; /* [# s-1] Floating point operation speed */
+  const float spd_ntg_ncbo=1386.54e6f; /* [# s-1] Integer operation speed */
+  const float spd_rd=63.375e6f; /* [B s-1] Disk read bandwidth */
+  const float spd_wrt=57.865e6f; /* [B s-1] Disk write bandwidth */
 
   /* 20060602: 
      hjm estimates faster speeds for ncbo:     
@@ -803,7 +803,7 @@ nco_nmn_get(void) /* [fnc] Return mnemonic that describes current NCO version */
 { 
   /* Purpose: Return mnemonic describing current NCO version
      Always Include terminal \n so mnemonic does not dangle */
-  return "SK new depth/length\n";
+  return "Grammys, Binder, Litter Box\n";
 } /* end nco_nmn_get() */
 
 char * /* O [sng] nm_in stripped of any path (i.e., program name stub) */ 
@@ -923,32 +923,32 @@ nco_usg_prn(void)
     opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-h] [--hdf] [--hdr_pad nbr] [-L lvl] [-l path] [--msa] [-n ...] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [-R] [-r] [--ram_all] [-t thr_nbr] [--unn] [-v ...] [-X box] [-x] [-y op_typ] in_1.nc in_2.nc [out.nc]\n");
     break;
   case ncflint:
-    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fix_rec_crd] [--fl_fmt fmt] [-h] [--hdf] [--hdr_pad nbr] [-i var,val] [-L lvl] [-l path] [--msa] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [-R] [-r] [--ram_all] [-t thr_nbr] [-v ...] [-X box] [-x] [-w wgt_1[,wgt_2]] in_1.nc in_2.nc [out.nc]\n");
+    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fix_rec_crd] [--fl_fmt fmt] [-h] [--hdf] [--hdr_pad nbr] [-i var,val] [-L lvl] [-l path] [--msa] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [--ppc ...] [-R] [-r] [--ram_all] [-t thr_nbr] [-v ...] [-X box] [-x] [-w wgt_1[,wgt_2]] in_1.nc in_2.nc [out.nc]\n");
     break;
   case ncks:
-    opt_sng=(char *)strdup("[-3] [-4] [-5] [-6] [-7] [-A] [-a] [-b fl_bnr] [--bfr sz] [-C] [-c] [--cdl] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fix_rec_dmn dim] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [--grp_xtr_var_xcl] [-H] [-h] [--hdn] [--hdr_pad nbr] [-L lvl] [-l path] [-M] [-m] [--md5_dgs] [--md5_wrt] [--mk_rec_dmn dim] [--msa] [--no_blank] [--no_tmp_fl] [-O] [-o out.nc] [-P] [-p path] [-Q] [-q] [ [...]
+    opt_sng=(char *)strdup("[-3] [-4] [-5] [-6] [-7] [-A] [-a] [-b fl_bnr] [--bfr sz] [-C] [-c] [--cdl] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fix_rec_dmn dim] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [--grp_xtr_var_xcl] [-H] [-h] [--hdn] [--hdr_pad nbr] [-L lvl] [-l path] [-M] [-m] [--md5_dgs] [--md5_wrt] [--mk_rec_dmn dim] [--msa] [--no_blank] [--no_tmp_fl] [-O] [-o out.nc] [-P] [-p path] [--ppc ...] [...]
     break;
   case ncpdq:
-    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [-a ...] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-h] [--hdf] [--hdr_pad nbr] [-L lvl] [-l path] [-M pck_map] [--mrd] [--msa] [--no_tmp_fl] [-O] [-o out.nc] [-P pck_plc] [-p path] [-R] [-r] [--ram_all] [-t thr_nbr] [--unn] [-U] [-v ...] [-X box] [-x] in.nc [out.nc]\n");
+    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [-a ...] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-h] [--hdf] [--hdr_pad nbr] [-L lvl] [-l path] [-M pck_map] [--mrd] [--msa] [--no_tmp_fl] [-O] [-o out.nc] [-P pck_plc] [-p path] [--ppc ...] [-R] [-r] [--ram_all] [-t thr_nbr] [--unn] [-U] [-v ...] [-X box] [-x] in.nc [out.nc]\n");
     break;
   case ncra:
-    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...]  [--dbl|flt] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-H] [-h] [--hdf] [--hdr_pad nbr] [-L lvl] [-l path] [--mro] [--msa] [-n ...] [--no_cll_mth] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [-R] [-r] [--ram_all] [--rec_apn] [-t thr_nbr] [--unn] [-v ...] [-X box] [-x] [-y op_typ] in.nc [...] [out. [...]
+    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...]  [--dbl|flt] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-H] [-h] [--hdf] [--hdr_pad nbr] [-L lvl] [-l path] [--mro] [--msa] [-n ...] [--no_cll_mth] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn] [-t thr_nbr] [--unn] [-v ...] [-X box] [-x] [-y op_typ] in.nc [...]
     break;
   case ncfe:
   case ncge:
-    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...]  [--dbl|flt] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-H] [-h] [--hdf] [--hdr_pad nbr] [-L lvl] [-l path] [--msa] [-n ...] [--no_tmp_fl] [--nsm_fl] [--nsm_grp] [--nsm_sfx] [-O] [-o out.nc] [-p path] [-R] [-r] [--ram_all] [-t thr_nbr] [--unn] [-v ...] [-X box] [-x] [-y op_typ] in.nc [...] [out. [...]
+    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...]  [--dbl|flt] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-H] [-h] [--hdf] [--hdr_pad nbr] [-L lvl] [-l path] [--msa] [-n ...] [--no_tmp_fl] [--nsm_fl] [--nsm_grp] [--nsm_sfx] [-O] [-o out.nc] [-p path] [--ppc ...] [-R] [-r] [--ram_all] [-t thr_nbr] [--unn] [-v ...] [-X box] [-x] [-y op_typ] in.nc [...]
     break;
   case ncrcat:
-    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-H] [-h] [--hdr_pad nbr] [-L lvl] [-l path] [--md5_digest] [--msa] [-n ...] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [-R] [-r] [--ram_all] [--rec_apn] [-t thr_nbr] [--unn] [-v ...] [-X box] [-x] in.nc [...] [out.nc]\n");
+    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-H] [-h] [--hdr_pad nbr] [-L lvl] [-l path] [--md5_digest] [--msa] [-n ...] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [--ppc ...] [-R] [-r] [--ram_all] [--rec_apn] [-t thr_nbr] [--unn] [-v ...] [-X box] [-x] in.nc [...] [out.nc]\n");
     break;
   case ncecat:
-    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [--gag] [-H] [-h] [--hdr_pad nbr] [-L lvl] [-l path] [-M] [--md5_digest] [--mrd] [--msa] [-n ...] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [-R] [-r] [--ram_all] [-t thr_nbr] [-u ulm_nm] [--unn] [-v ...] [-X box] [-x] in.nc [...] [out.nc]\n");
+    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [--gag] [-H] [-h] [--hdr_pad nbr] [-L lvl] [-l path] [-M] [--md5_digest] [--mrd] [--msa] [-n ...] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [--ppc ...] [-R] [-r] [--ram_all] [-t thr_nbr] [-u ulm_nm] [--unn] [-v ...] [-X box] [-x] in.nc [...] [out.nc]\n");
     break;
   case ncrename:
     opt_sng=(char *)strdup("[-a ...] [--bfr sz] [-D nco_dbg_lvl] [-d ...] [-g ...] [-h] [--hdr_pad nbr] [-l path] [-O] [-o out.nc] [-p path] [-R] [-r] [-v ...] in.nc [[out.nc]]\n");
     break;
   case ncwa:
-    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [-a ...] [-B mask_cond] [-b] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...]  [--dbl|flt] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-h] [--hdf] [--hdr_pad nbr] [-I] [-L lvl] [-l path] [-m mask] [-M mask_val] [-N] [--no_cll_mth] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [-R] [-r] [--ram_all] [-T mask_comp] [-t thr_nbr] [--unn] [-v ...] [-w wgt [...]
+    opt_sng=(char *)strdup("[-3] [-4] [-6] [-7] [-A] [-a ...] [-B mask_cond] [-b] [--bfr sz] [-C] [-c] [--cnk_byt sz] [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_min min] [--cnk_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...]  [--dbl|flt] [-F] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-h] [--hdf] [--hdr_pad nbr] [-I] [-L lvl] [-l path] [-m mask] [-M mask_val] [-N] [--no_cll_mth] [--no_tmp_fl] [-O] [-o out.nc] [-p path] [--ppc ...] [-R] [-r] [--ram_all] [-T mask_comp] [-t thr_nbr] [--unn] [-v  [...]
     break;
   default: nco_dfl_case_prg_id_err(); break;
   } /* end switch */
@@ -1027,7 +1027,7 @@ nco_usg_prn(void)
   if(strstr(opt_sng,"[-i var,val]")) (void)fprintf(stdout,"-i, --ntp, --interpolate var,val\tInterpolant and value\n");
   if(strstr(opt_sng,"[-I]")) (void)fprintf(stdout,"-I, --wgt_msk_crd_var\tDo not weight or mask coordinate variables\n");
 #ifdef ENABLE_NETCDF4
-  if(strstr(opt_sng,"[-L")) (void)fprintf(stdout,"-L, --dfl_lvl, --deflate lvl\tLempel-Ziv deflation (lvl=0..9) for netCDF4 output\n");
+  if(strstr(opt_sng,"[-L")) (void)fprintf(stdout,"-L, --dfl_lvl, --deflate lvl\tLempel-Ziv deflation/compression (lvl=0..9) for netCDF4 output\n");
 #endif /* !ENABLE_NETCDF4 */
   if(strstr(opt_sng,"[-l")) (void)fprintf(stdout,"-l, --lcl, --local path\tLocal storage path for remotely-retrieved files\n");
   if(strstr(opt_sng,"[-M")){
@@ -1062,10 +1062,11 @@ nco_usg_prn(void)
     if(prg_lcl == ncpdq) (void)fprintf(stdout,"-P, --pck_plc, --pack_policy pck_plc\tPacking policy [all_new,all_xst,xst_new,upk]\n");
   } /* end if -P */
   if(strstr(opt_sng,"[-p")) (void)fprintf(stdout,"-p, --pth, --path path\tPath prefix for all input filenames\n");
+  if(strstr(opt_sng,"--ppc")) (void)fprintf(stdout,"    --ppc v1[,v2[,...]]=prc\tPrecision-Preserving Compression: Number of total or decimal significant digits\n");
   if(strstr(opt_sng,"[-Q]")) (void)fprintf(stdout,"-Q, --quiet\t\tQuiet printing of dimension indices and coordinate values\n");
   if(strstr(opt_sng,"[-q]")) (void)fprintf(stdout,"-q, --quench\t\tQuench (turn-off) all printing to screen\n");
   if(strstr(opt_sng,"[-R]")) (void)fprintf(stdout,"-R, --rtn, --retain\tRetain remotely-retrieved files after use\n");
-  if(strstr(opt_sng,"[-r]")) (void)fprintf(stdout,"-r, --revision, --vrs, --version\tCompile-time configuration and/or program version\n");
+  if(strstr(opt_sng,"[-r]")) (void)fprintf(stdout,"-r, --revision, --version\tCompile-time configuration and/or program version\n");
   if(strstr(opt_sng,"--rad")) (void)fprintf(stdout,"    --orphan, --rph_dmn\tRetain or print all (including orphaned) dimensions\n");
   if(strstr(opt_sng,"--ram_all")) (void)fprintf(stdout,"    --ram_all, --diskless_all\tOpen netCDF3 files and create output files in RAM\n");
   if(strstr(opt_sng,"--rec_apn")) (void)fprintf(stdout,"    --rec_apn, --record_append\tAppend records directly to output file\n");
@@ -1101,7 +1102,7 @@ nco_usg_prn(void)
   if(strstr(opt_sng,"--xml_spr_nmr")) (void)fprintf(stdout,"    --xml_spr_nmr sng\tSeparator for NcML numeric types\n");
   if(strstr(opt_sng,"[-y op_typ]")){
     if(prg_lcl == ncbo)(void)fprintf(stdout,"-y, --op_typ, --operation op_typ\tBinary arithmetic operation: add,sbt,mlt,dvd (+,-,*,/)\n");
-    if(prg_lcl == ncra || prg_lcl == ncfe || prg_lcl == ncge || prg_lcl == ncwa)(void)fprintf(stdout,"-y, --op_typ, --operation op_typ\tArithmetic operation: avg,min,max,ttl,sqravg,avgsqr,sqrt,rms,rmssdn\n");
+    if(prg_lcl == ncra || prg_lcl == ncfe || prg_lcl == ncge || prg_lcl == ncwa)(void)fprintf(stdout,"-y, --op_typ, --operation op_typ\tArithmetic operation: avg,mabs,mebs,mibs,min,max,ttl,sqravg,avgsqr,sqrt,rms,rmssdn\n");
   }
   /* All operators have input files, no need to strstr(in.nc) */
   if(prg_lcl == ncbo || prg_lcl == ncflint){
diff --git a/src/nco/nco_ctl.h b/src/nco/nco_ctl.h
index 4809425..b92f919 100644
--- a/src/nco/nco_ctl.h
+++ b/src/nco/nco_ctl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_ctl.h,v 1.48 2014/06/15 21:06:22 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_ctl.h,v 1.49 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Program flow control functions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_dbg.c b/src/nco/nco_dbg.c
index 3f6809a..647dcbc 100644
--- a/src/nco/nco_dbg.c
+++ b/src/nco/nco_dbg.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_dbg.c,v 1.22 2014/06/15 21:06:22 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_dbg.c,v 1.23 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Debugging */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_dbg.h" /* Debugging */
diff --git a/src/nco/nco_dbg.h b/src/nco/nco_dbg.h
index 6b83ac4..3201710 100644
--- a/src/nco/nco_dbg.h
+++ b/src/nco/nco_dbg.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_dbg.h,v 1.20 2014/06/15 21:06:22 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_dbg.h,v 1.21 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Debugging */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_dmn_utl.c b/src/nco/nco_dmn_utl.c
index 1e9f5ce..a4f13e6 100644
--- a/src/nco/nco_dmn_utl.c
+++ b/src/nco/nco_dmn_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_dmn_utl.c,v 1.70 2014/06/15 21:06:22 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_dmn_utl.c,v 1.71 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Dimension utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_dmn_utl.h" /* Dimension utilities */
diff --git a/src/nco/nco_dmn_utl.h b/src/nco/nco_dmn_utl.h
index 6e2cffa..a9aa4fb 100644
--- a/src/nco/nco_dmn_utl.h
+++ b/src/nco/nco_dmn_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_dmn_utl.h,v 1.50 2014/06/15 21:06:22 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_dmn_utl.h,v 1.51 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Dimension utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_fl_utl.c b/src/nco/nco_fl_utl.c
index 59dbbe8..4de4646 100644
--- a/src/nco/nco_fl_utl.c
+++ b/src/nco/nco_fl_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_fl_utl.c,v 1.252 2014/10/22 00:14:09 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_fl_utl.c,v 1.254 2015/02/05 23:08:39 zender Exp $ */
 
 /* Purpose: File manipulation */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_fl_utl.h" /* File manipulation */
@@ -236,7 +236,7 @@ nco_fl_cp /* [fnc] Copy first file to second */
 
   /* Only bother to perform system() call if files are not identical */
   if(!strcmp(fl_src,fl_dst)){
-    if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stderr,"%s: INFO Temporary and final files %s are identical---no need to copy.\n",nco_prg_nm_get(),fl_src);
+    if(nco_dbg_lvl_get() >= nco_dbg_fl) (void)fprintf(stderr,"%s: INFO Temporary and final files %s are identical---no need to copy.\n",nco_prg_nm_get(),fl_src);
     return;
   } /* end if */
 
@@ -247,7 +247,7 @@ nco_fl_cp /* [fnc] Copy first file to second */
 
   /* Construct and execute copy command */
   cmd_cp=(char *)nco_malloc((strlen(cmd_cp_fmt)+strlen(fl_src_cdl)+strlen(fl_dst_cdl)-fmt_chr_nbr+1UL)*sizeof(char));
-  if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stderr,"%s: Copying %s to %s...",nco_prg_nm_get(),fl_src_cdl,fl_dst_cdl);
+  if(nco_dbg_lvl_get() >= nco_dbg_fl) (void)fprintf(stderr,"%s: Copying %s to %s...",nco_prg_nm_get(),fl_src_cdl,fl_dst_cdl);
   (void)sprintf(cmd_cp,cmd_cp_fmt,fl_src_cdl,fl_dst_cdl);
   rcd=system(cmd_cp);
   if(rcd == -1){
@@ -1166,7 +1166,7 @@ nco_fl_mv /* [fnc] Move first file to second */
 
   /* Only bother to perform system() call if files are not identical */
   if(!strcmp(fl_src,fl_dst)){
-    if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stderr,"%s: INFO Temporary and final files %s are identical---no need to move.\n",nco_prg_nm_get(),fl_src);
+    if(nco_dbg_lvl_get() >= nco_dbg_fl) (void)fprintf(stderr,"%s: INFO Temporary and final files %s are identical---no need to move.\n",nco_prg_nm_get(),fl_src);
     return;
   } /* end if */
 
@@ -1177,7 +1177,7 @@ nco_fl_mv /* [fnc] Move first file to second */
 
   /* Construct and execute move command */
   cmd_mv=(char *)nco_malloc((strlen(cmd_mv_fmt)+strlen(fl_src_cdl)+strlen(fl_dst_cdl)-fmt_chr_nbr+1UL)*sizeof(char));
-  if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stderr,"%s: INFO Moving %s to %s...",nco_prg_nm_get(),fl_src_cdl,fl_dst_cdl);
+  if(nco_dbg_lvl_get() >= nco_dbg_fl) (void)fprintf(stderr,"%s: INFO Moving %s to %s...",nco_prg_nm_get(),fl_src_cdl,fl_dst_cdl);
   (void)sprintf(cmd_mv,cmd_mv_fmt,fl_src_cdl,fl_dst_cdl);
   rcd_sys=system(cmd_mv);
   if(rcd_sys == -1){
@@ -1445,7 +1445,7 @@ nco_fl_blocksize /* [fnc] Find blocksize of filesystem will or does contain this
 #ifndef _MSC_VER
   fl_sys_blk_sz=(size_t)stat_sct.st_blksize;
 #endif /* _MSC_VER */
-  if(nco_dbg_lvl_get() >= nco_dbg_fl) (void)fprintf(stderr,"%s: INFO %s reports preferred output filesystem I/O block size: %ld bytes\n",nco_prg_nm_get(),fnc_nm,(long)fl_sys_blk_sz);
+  if(nco_dbg_lvl_get() >= nco_dbg_scl) (void)fprintf(stderr,"%s: INFO %s reports preferred output filesystem I/O block size: %ld bytes\n",nco_prg_nm_get(),fnc_nm,(long)fl_sys_blk_sz);
   
   if(drc_out) drc_out=(char *)nco_free(drc_out);
 
@@ -1723,7 +1723,7 @@ nco_fl_out_cls /* [fnc] Close temporary output file, move it to permanent output
 
   /* Only bother to perform system() call if files are not identical */
   if(!strcmp(fl_out_tmp,fl_out)){
-    if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stderr,"%s: INFO Temporary and final files %s are identical---no need to move.\n",nco_prg_nm_get(),fl_out);
+    if(nco_dbg_lvl_get() >= nco_dbg_fl) (void)fprintf(stderr,"%s: INFO Temporary and final files %s are identical---no need to move.\n",nco_prg_nm_get(),fl_out);
     return;
   }else{
     (void)nco_fl_mv(fl_out_tmp,fl_out);
@@ -1748,7 +1748,7 @@ nco_fl_rm /* [fnc] Remove file */
   rm_cmd=(char *)nco_malloc((strlen(rm_cmd_sys_dep)+1UL+strlen(fl_nm)+1UL)*sizeof(char));
   (void)sprintf(rm_cmd,"%s %s",rm_cmd_sys_dep,fl_nm);
 
-  if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stderr,"%s: DEBUG Removing %s with %s\n",nco_prg_nm_get(),fl_nm,rm_cmd);
+  if(nco_dbg_lvl_get() >= nco_dbg_fl) (void)fprintf(stderr,"%s: DEBUG Removing %s with %s\n",nco_prg_nm_get(),fl_nm,rm_cmd);
   rcd=system(rm_cmd);
   if(rcd == -1) (void)fprintf(stderr,"%s: WARNING unable to remove %s, continuing anyway...\n",nco_prg_nm_get(),fl_nm);
 
diff --git a/src/nco/nco_fl_utl.h b/src/nco/nco_fl_utl.h
index 6f688bb..6f71757 100644
--- a/src/nco/nco_fl_utl.h
+++ b/src/nco/nco_fl_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_fl_utl.h,v 1.77 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_fl_utl.h,v 1.78 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: File manipulation */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_grp_trv.c b/src/nco/nco_grp_trv.c
index 37d677d..6b20787 100644
--- a/src/nco/nco_grp_trv.c
+++ b/src/nco/nco_grp_trv.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_trv.c,v 1.298 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_trv.c,v 1.311 2015/02/04 02:44:45 zender Exp $ */
 
 /* Purpose: netCDF4 traversal storage */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* This file contains the API for low level group data structures:
@@ -192,7 +192,6 @@ trv_tbl_free                           /* [fnc] GTT free memory */
 #ifdef DEBUG_LEAKS
   if(nco_dbg_lvl_get() >= nco_dbg_sup)(void)fprintf(stdout,"%s: DEBUG %s %d crd",nco_prg_nm_get(),fnc_nm,crt_counter);
 #endif
-
 } /* end trv_tbl_free() */
 
 void                       
@@ -295,6 +294,26 @@ trv_tbl_prn                          /* [fnc] Print table with -z */
   } /* end idx_tbl */
 } /* end trv_tbl_prn() */
 
+char *                                /* O [flg] Full variable name */
+nco_gid_var_nm_2_var_nm_fll           /* [fnc] Construct full variable name from group ID and variable name */
+(const int grp_id,                    /* I [ID] netCDF input group ID */
+ const char * const var_nm)           /* I [sng] Variable name */
+{
+  char *var_nm_fll;
+  size_t grp_nm_lng;
+  size_t var_nm_fll_lng;
+  (void)nco_inq_grpname_full(grp_id,&grp_nm_lng,NULL);
+  /* Groups except root need a slash character to separate their name from variable name */
+  var_nm_fll_lng=grp_nm_lng+strlen(var_nm);
+  if(grp_nm_lng != 1L) var_nm_fll_lng++;
+  /* One extra space for NUL-terminator */
+  var_nm_fll=(char *)nco_malloc(var_nm_fll_lng+1L);
+  (void)nco_inq_grpname_full(grp_id,NULL,var_nm_fll);
+  if(grp_nm_lng != 1L) strcat(var_nm_fll,"/");
+  strcat(var_nm_fll,var_nm);
+  return var_nm_fll;
+} /* end nco_gid_var_nm_2_var_nm_fll() */
+
 nco_bool                              /* O [flg] Item found or not */
 trv_tbl_fnd_var_nm_fll                /* [fnc] Check if "var_nm_fll" is in table */
 (const char * const var_nm_fll,       /* I [sng] Variable name to find */
@@ -846,10 +865,10 @@ trv_tbl_mrk_nsm_mbr                    /* [fnc] Mark ensemble member flag in tab
  trv_tbl_sct * const trv_tbl)          /* I/O [sct] Traversal table */
 {
   for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
-    if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_var && strcmp(var_nm_fll,trv_tbl->lst[idx_tbl].nm_fll) == 0){
+    if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_var && !strcmp(var_nm_fll,trv_tbl->lst[idx_tbl].nm_fll)){
       trv_tbl->lst[idx_tbl].flg_nsm_mbr=True;
       trv_tbl->lst[idx_tbl].nsm_nm=strdup(grp_nm_fll_prn);
-      if (flg_nsm_tpl) trv_tbl->lst[idx_tbl].flg_nsm_tpl=True;
+      if(flg_nsm_tpl) trv_tbl->lst[idx_tbl].flg_nsm_tpl=True;
     }
   }
 
@@ -871,30 +890,21 @@ nco_bld_nm_fll                         /* [fnc] Utility function to build a full
   strcat(var_nm_fll,var_nm);
 
   return var_nm_fll;
-
 } /* nco_bld_nm_fll() */
 
-
 nco_bool                              
 nco_lst_ins                            /* [fnc] Utility function to detect inserted names in a name list */
 (const char * const nm,                /* I [sng] A name to detect */
  const nco_cmn_t *cmn_lst,             /* I [sct] List of names   */
  const int nbr_nm)                     /* I [nbr] Number of names (size of above array) */
 {
-  /* Loop constructed array to see if already inserted */
-  for(int idx_nm=0;idx_nm<nbr_nm;idx_nm++){
-      /* Match */
-      if(strcmp(cmn_lst[idx_nm].nm,nm) == 0){
-        /* Mark as inserted in array */
-        return True;
-      }  /* Match */
-  } /* Loop constructed array to see if already inserted  */
+  /* If match then mark as inserted in array */
+  for(int idx_nm=0;idx_nm<nbr_nm;idx_nm++)
+    if(!strcmp(cmn_lst[idx_nm].nm,nm)) return True;
 
   return False;
-
 } /* nco_lst_ins() */
 
-
 char *                                 /* O [sng] Full path with suffix */
 nco_bld_nsm_sfx                        /* [fnc] Build ensemble suffix */
 (const char * const grp_nm_fll_prn,    /* I [sng] Absolute group name of ensemble root */
@@ -904,8 +914,7 @@ nco_bld_nsm_sfx                        /* [fnc] Build ensemble suffix */
 
   /* Loop table */
   for(unsigned tbl_idx=0;tbl_idx<trv_tbl->nbr;tbl_idx++){
-    /* Match */
-    if(trv_tbl->lst[tbl_idx].nco_typ == nco_obj_typ_grp && strcmp(grp_nm_fll_prn,trv_tbl->lst[tbl_idx].nm_fll) == 0){
+    if(trv_tbl->lst[tbl_idx].nco_typ == nco_obj_typ_grp && !strcmp(grp_nm_fll_prn,trv_tbl->lst[tbl_idx].nm_fll)){
 
       /* Define (append) a new name */
       char *nm_fll_sfx=(char*)nco_malloc(strlen(grp_nm_fll_prn)+strlen(trv_tbl->lst[tbl_idx].nm)+strlen(trv_tbl->nsm_sfx)+2L);
@@ -918,10 +927,8 @@ nco_bld_nsm_sfx                        /* [fnc] Build ensemble suffix */
     } /* Match */
   } /* Loop table*/
 
-
   assert(0);
   return NULL;
-
 } /* nco_bld_nsm_sfx() */
 
 nco_bool                              
@@ -930,47 +937,26 @@ nco_is_fll_pth                         /* [fnc] Utility function to inquire if a
 {
   const char *sbs_srt; /* [sng] Location of string match start in parameter string */
 
-  /* If parameter string contains any slash character '/' , assume it's a full path */
+  /* If parameter string contains any slash character '/' , assume it is a full path */
   sbs_srt=strstr(str,"/");
-  if (sbs_srt) return True;
+  if(sbs_srt) return True;
   return False;
-
 } /* nco_is_fll_pth() */
 
-
-char *
-nco_strrstr                            /* [fnc] Searches a substring starting from the end */
-(const char *str,                      /* [fnc] String */
- const char *str_fnd)                  /* [fnc] String to find */
-{
-  char *ptr;
-  char *lst=NULL;
-
-  ptr = (char*)str;
-  while((ptr = strstr(ptr, str_fnd))){
-    lst = ptr++;
-  }
-  return lst;
-} /* nco_strrstr() */
-
-
 trv_sct *                             /* O [sct] Table object */
 trv_tbl_var_nm                        /* [fnc] Return variable object (relative name) */
 (const char * const var_nm,           /* I [sng] Variable name to find */
  const trv_tbl_sct * const trv_tbl)   /* I [sct] Traversal table */
 {
-  /* Purpose: Return variable object with given relative name (returns 1st name found ) */
-
+  /* Purpose: Return variable object with given relative name (returns 1st name found) 
+     NB: Calling this function is almost certainly a mistake */
   for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++)
-    if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_var && (strcmp(var_nm,trv_tbl->lst[idx_tbl].nm) == 0)){
+    if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_var && !strcmp(var_nm,trv_tbl->lst[idx_tbl].nm))
       return &trv_tbl->lst[idx_tbl];
-    }
-
-    return NULL;
 
+  return NULL;
 } /* trv_tbl_var_nm() */
 
-
 trv_sct *                              /* O [sct] Table object */
 trv_tbl_nsm_nm                         /* [fnc] Return variable object  */
 (const char * const var_nm,            /* I [sng] Variable name (relative) to find */
@@ -981,20 +967,14 @@ trv_tbl_nsm_nm                         /* [fnc] Return variable object  */
 
   for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
     trv_sct var_trv=trv_tbl->lst[idx_tbl];  
-    if(var_trv.nco_typ == nco_obj_typ_var && strcmp(var_nm,var_trv.nm) == 0){
-
-      if (strcmp(grp_nm_fll_prn,var_trv.grp_nm_fll_prn) == 0){
-        return &trv_tbl->lst[idx_tbl];
-      }
-
-    }
+    if(var_trv.nco_typ == nco_obj_typ_var && !strcmp(var_nm,var_trv.nm))
+      if(!strcmp(grp_nm_fll_prn,var_trv.grp_nm_fll_prn))
+	return &trv_tbl->lst[idx_tbl];
   }
 
   return NULL;
-
 } /* trv_tbl_nsm_nm() */
 
-
 trv_sct *                              /* O [sct] Table object */
 trv_tbl_nsm_nm_att                     /* [fnc] Return variable object  */
 (const char * const var_nm,            /* I [sng] Variable name (relative) to find */
@@ -1006,15 +986,10 @@ trv_tbl_nsm_nm_att                     /* [fnc] Return variable object  */
 
   for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
     trv_sct var_trv=trv_tbl->lst[idx_tbl];  
-    if(var_trv.nco_typ == nco_obj_typ_var && strcmp(var_nm,var_trv.nm) == 0){
-
-      if (strcmp(grp_nm_fll_prn,var_trv.grp_nm_fll) == 0){
+    if(var_trv.nco_typ == nco_obj_typ_var && !strcmp(var_nm,var_trv.nm))
+      if(!strcmp(grp_nm_fll_prn,var_trv.grp_nm_fll))
         return &trv_tbl->lst[idx_tbl];
-      }
-
-    }
   }
 
   return NULL;
-
 } /* trv_tbl_nsm_nm_att() */
diff --git a/src/nco/nco_grp_trv.h b/src/nco/nco_grp_trv.h
index 5c40ed0..7690bbf 100644
--- a/src/nco/nco_grp_trv.h
+++ b/src/nco/nco_grp_trv.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_trv.h,v 1.118 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_trv.h,v 1.126 2015/02/04 02:44:45 zender Exp $ */
 
 /* Purpose: netCDF4 traversal storage */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -180,15 +180,15 @@ nco_bld_nsm_sfx                        /* [fnc] Build ensemble suffix */
 (const char * const grp_nm_fll_prn,    /* I [sng] Absolute group name of ensemble root */
  const trv_tbl_sct * const trv_tbl);   /* I [sct] Traversal table */
 
+char *                                /* O [flg] Full variable name */
+nco_gid_var_nm_2_var_nm_fll           /* [fnc] Construct full variable name from group ID and variable name */
+(const int grp_id,                    /* I [ID] netCDF input group ID */
+ const char * const var_nm);          /* I [sng] Variable name */
+
 nco_bool                              
 nco_is_fll_pth                         /* [fnc] Utility function to inquire if a string is a full path */
 (const char * const str);              /* I [sng] A string to inquire */
 
-char *
-nco_strrstr                            /* [fnc] Searches a substring starting from the end */
-(const char *str,                      /* [fnc] String */
- const char *str_fnd);                 /* [fnc] String to find */
-
 trv_sct *                              /* O [sct] Table object */
 trv_tbl_var_nm                         /* [fnc] Return variable object (relative name) */
 (const char * const var_nm,            /* I [sng] Variable name to find */
diff --git a/src/nco/nco_grp_utl.c b/src/nco/nco_grp_utl.c
index 7d22473..e1b7a08 100644
--- a/src/nco/nco_grp_utl.c
+++ b/src/nco/nco_grp_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_utl.c,v 1.1480 2014/11/26 04:15:26 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_utl.c,v 1.1511 2015/02/09 22:35:36 zender Exp $ */
 
 /* Purpose: Group utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Testing:
@@ -60,7 +60,7 @@ nco_inq_grps_full                     /* [fnc] Discover and return IDs of apex a
   int grp_nbr_crr; /* [nbr] Number of groups counted so far */
   int grp_id_crr; /* [ID] Current group ID */
 
-  grp_stk_sct *grp_stk; /* [sct] Group stack pointer */
+  grp_stk_sct *grp_stk=NULL_CEWI; /* [sct] Group stack pointer */
   
   /* Initialize variables that are incremented */
   grp_nbr_crr=0; /* [nbr] Number of groups counted (i.e., stored in grp_ids array) so far */
@@ -172,7 +172,7 @@ nco_grp_stk_get                       /* [fnc] Initialize and obtain group itera
 
 int                                   /* [rcd] Return code */
 nco_grp_stk_nxt                       /* [fnc] Find and return next group ID */
-(grp_stk_sct * const grp_stk,         /* O [sct] Group stack pointer */
+(grp_stk_sct * const grp_stk,         /* I/O [sct] Group stack pointer */
  int * const grp_id)                  /* O [ID] Group ID */
 {
   /* Purpose: Find and return next group ID
@@ -266,7 +266,7 @@ nco_prn_grp_nm_fll                    /* [fnc] Debug function to print group ful
   (void)nco_inq_grpname_full(grp_id,&grp_nm_lng,NULL);
   grp_nm_fll=(char*)nco_malloc(grp_nm_lng+1L);
   (void)nco_inq_grpname_full(grp_id,&grp_nm_lng,grp_nm_fll);
-  (void)fprintf(stdout,"<%s>",grp_nm_fll);
+  (void)fprintf(stdout,"%s",grp_nm_fll);
   grp_nm_fll=(char*)nco_free(grp_nm_fll);
 #endif
 } /* nco_prn_grp_nm_fll() */
@@ -470,7 +470,7 @@ nco_trv_rx_search /* [fnc] Search for pattern matches in traversal table */
   (void)fprintf(stdout,"%s: ERROR: Sorry, wildcarding (extended regular expression matches to variables) was not built into this NCO executable, so unable to compile regular expression \"%s\".\nHINT: Make sure libregex.a is on path and re-build NCO.\n",nco_prg_nm_get(),rx_sng);
   nco_exit(EXIT_FAILURE);
   /* Avoid compiler warning of unused variables by using obj_typ and trv_tbl */
-  if (trv_tbl->lst) trv_tbl->lst[0].nco_typ = obj_typ;
+  if(trv_tbl->lst) trv_tbl->lst[0].nco_typ = obj_typ;
 #else /* NCO_HAVE_REGEX_FUNCTIONALITY */
   char *sng2mch; /* [sng] String to match to regular expression */
   const char sls_chr='/'; /* [chr] Slash character */
@@ -770,10 +770,10 @@ nco_xtr_mk                            /* [fnc] Check -v and -g input names and c
 
             /* Look for partial match, not necessarily on path boundaries */
             /* 20130829: Variables and group names may be proper subsets of ancestor group names
-            e.g., variable named g9 in group named g90 is /g90/g9
-            e.g., group named g1 in group named g10 is g10/g1
-            Search algorithm must test same full name multiple times in such cases
-            For variables, only final match (closest to end full name) need be fully tested */
+	       e.g., variable named g9 in group named g90 is /g90/g9
+	       e.g., group named g1 in group named g10 is g10/g1
+	       Search algorithm must test same full name multiple times in such cases
+	       For variables, only final match (closest to end full name) need be fully tested */
             sbs_srt=NULL;
             sbs_srt_nxt=trv_obj.nm_fll;
             while((sbs_srt_nxt=strstr(sbs_srt_nxt,usr_sng))){
@@ -789,7 +789,7 @@ nco_xtr_mk                            /* [fnc] Check -v and -g input names and c
             /* Does object name contain usr_sng? */
             if(sbs_srt){
               /* Ensure match spans (begins and ends on) whole path-component boundaries
-              Full path-check starts at current substring */
+		 Full path-check starts at current substring */
 
               /* Does match begin at path component boundary ... directly on a slash? */
               if(*sbs_srt == sls_chr) flg_pth_srt_bnd=True;
@@ -844,9 +844,9 @@ nco_xtr_mk                            /* [fnc] Check -v and -g input names and c
 
               if(nco_dbg_lvl_get() == nco_dbg_old){
                 /* Redundant call to nco_flg_set_grp_var_ass() here in debugging mode only to set flags for following print statements 
-                Essential call to nco_flg_set_grp_var_ass() occurs after itr loop
-                Most debugging info is available in debugging section at routine end
-                However, group boundary/anchoring/recursion info is only available here */
+		   Essential call to nco_flg_set_grp_var_ass() occurs after itr loop
+		   Most debugging info is available in debugging section at routine end
+		   However, group boundary/anchoring/recursion info is only available here */
                 if(trv_tbl->lst[tbl_idx].flg_mch) nco_flg_set_grp_var_ass(trv_obj.grp_nm_fll,obj_typ,trv_tbl);
                 (void)fprintf(stderr,"%s: INFO %s reports %s %s matches filepath %s. Begins on boundary? %s. Ends on boundary? %s. Extract? %s.",nco_prg_nm_get(),fnc_nm,(obj_typ == nco_obj_typ_grp) ? "group" : "variable",usr_sng,trv_obj.nm_fll,(flg_pth_srt_bnd) ? "Yes" : "No",(flg_pth_end_bnd) ? "Yes" : "No",(trv_tbl->lst[tbl_idx].flg_mch) ?  "Yes" : "No");
                 if(obj_typ == nco_obj_typ_grp) (void)fprintf(stderr," Anchored? %s.",(flg_ncr_mch_grp) ? "Yes" : "No");
@@ -898,6 +898,7 @@ nco_xtr_mk                            /* [fnc] Check -v and -g input names and c
       if(var_obj.nco_typ == nco_obj_typ_var){
         /* Cancel (non-full-path) variable intersection match unless variable is also in user-specified group */
         if(var_obj.flg_mch && !var_obj.flg_vfp){
+	  grp_obj=trv_tbl->lst[0]; /* CEWI */
           for(unsigned int obj2_idx=0;obj2_idx<trv_tbl->nbr;obj2_idx++){
             grp_obj=trv_tbl->lst[obj2_idx];
             if(grp_obj.nco_typ == nco_obj_typ_grp && !strcmp(var_obj.grp_nm_fll,grp_obj.grp_nm_fll)) break;
@@ -918,7 +919,6 @@ nco_xtr_mk                            /* [fnc] Check -v and -g input names and c
 
   /* Combine previous flags into initial extraction flag */
   for(unsigned int obj_idx=0;obj_idx<trv_tbl->nbr;obj_idx++){
-
     /* Extract object if ... */
     if(
        /* No subsetting */
@@ -933,7 +933,7 @@ nco_xtr_mk                            /* [fnc] Check -v and -g input names and c
       trv_tbl->lst[obj_idx].flg_xtr=True;
   } /* end loop over obj_idx */
 
-  if(nco_dbg_lvl_get() == nco_dbg_old){
+  if(nco_dbg_lvl_get() == nco_dbg_vrb){
     for(unsigned int obj_idx=0;obj_idx<trv_tbl->nbr;obj_idx++){
       /* Create shallow copy to avoid indirection */
       trv_obj=trv_tbl->lst[obj_idx];
@@ -1277,22 +1277,16 @@ nco_xtr_crd_ass_add                   /* [fnc] Add to extraction list all coordi
       (void)nco_inq_varndims(grp_id,var_id,&nbr_dmn_var);
 
       if(nco_dbg_lvl_get() >= nco_dbg_dev){
-        (void)fprintf(stdout,"%s: DEBUG %s <%s> nbr_dmn_var=%d var_trv.nbr_dmn=%d\n",nco_prg_nm_get(),fnc_nm,
-          var_trv.nm_fll,nbr_dmn_var,var_trv.nbr_dmn); 
+        (void)fprintf(stdout,"%s: DEBUG %s <%s> nbr_dmn_var=%d var_trv.nbr_dmn=%d\n",nco_prg_nm_get(),fnc_nm,var_trv.nm_fll,nbr_dmn_var,var_trv.nbr_dmn); 
 
-        if (nbr_dmn_var != var_trv.nbr_dmn){
-          (void)fprintf(stdout,"%s: ERROR %s <%s> nbr_dmn_var=%d var_trv.nbr_dmn=%d\n",nco_prg_nm_get(),fnc_nm,
-            var_trv.nm_fll,nbr_dmn_var,var_trv.nbr_dmn); 
-
-          (void)nco_prt_dmn(nc_id,var_trv.grp_nm_fll,var_trv.nm,var_trv.nm_fll,trv_tbl);
+        if(nbr_dmn_var != var_trv.nbr_dmn){
+          (void)fprintf(stdout,"%s: ERROR %s <%s> nbr_dmn_var=%d var_trv.nbr_dmn=%d\n",nco_prg_nm_get(),fnc_nm,var_trv.nm_fll,nbr_dmn_var,var_trv.nbr_dmn); 
+          (void)nco_prn_dmn(nc_id,var_trv.grp_nm_fll,var_trv.nm,var_trv.nm_fll,trv_tbl);
         }
-
         (void)fflush(stdout);
       }
 
-      if(nco_dbg_lvl_get() >= nco_dbg_dev){
-        (void)nco_prt_dmn(nc_id,var_trv.grp_nm_fll,var_trv.nm,var_trv.nm_fll,trv_tbl);
-      }
+      if(nco_dbg_lvl_get() >= nco_dbg_dev) (void)nco_prn_dmn(nc_id,var_trv.grp_nm_fll,var_trv.nm,var_trv.nm_fll,trv_tbl);
 
       assert(nbr_dmn_var == var_trv.nbr_dmn);
 
@@ -1554,13 +1548,13 @@ nco_xtr_grp_mrk                      /* [fnc] Mark extracted groups */
     /* For each group ... */
     if(trv_tbl->lst[grp_idx].nco_typ == nco_obj_typ_grp){
       /* Metadata-only containing groups already have flg_mtd set in nco_xtr_mk()
-      Variable ancestry may not affect such groups, especially if they are leaf groups
-      Set extraction flag to True (then continue) iff matching groups contain only metadata
-      Otherwise set initialize extraction flag to False and overwrite later based on descendent variables */
+	 Variable ancestry may not affect such groups, especially if they are leaf groups
+	 Set extraction flag to True (then continue) iff matching groups contain only metadata
+	 Otherwise set initialize extraction flag to False and overwrite later based on descendent variables */
       if((trv_tbl->lst[grp_idx].flg_xtr=(!trv_tbl->lst[grp_idx].flg_xcl && trv_tbl->lst[grp_idx].flg_mtd))) continue;
       if(!strcmp(trv_tbl->lst[grp_idx].grp_nm_fll,sls_sng)){
         /* Manually mark root group as extracted because matching algorithm below fails for root group 
-        (it looks for "//" in variable names) */
+	   (it looks for "//" in variable names) */
         trv_tbl->lst[grp_idx].flg_xtr=True;
         continue;
       } /* endif root group */
@@ -1650,7 +1644,7 @@ nco_xtr_dfn                          /* [fnc] Define extracted groups, variables
  trv_tbl_sct * const trv_tbl)        /* I/O [sct] GTT (Group Traversal Table) */
 {
   /* Purpose: Define groups, variables, and attributes in output file
-  rec_dmn_nm, if any, is name requested for (netCDF3) sole record dimension */
+     rec_dmn_nm, if any, is name requested for (netCDF3) sole record dimension */
 
   const char fnc_nm[]="nco_xtr_dfn()"; /* [sng] Function name */
 
@@ -1774,7 +1768,6 @@ nco_xtr_dfn                          /* [fnc] Define extracted groups, variables
       /* Copy variable's attributes */
       if(CPY_VAR_METADATA){
         int var_id;        /* [id] Variable ID */
-
         var_sct *var_prc;  /* [sct] Variable to process */
 
         /* Obtain group ID */
@@ -1815,6 +1808,38 @@ nco_xtr_dfn                          /* [fnc] Define extracted groups, variables
         } /* !wrt */
       } /* !md5 */
 
+      /* Write PPC attribute */
+      if(var_trv.ppc != NC_MAX_INT){
+	aed_sct aed_ppc;
+	char att_nm_dsd[]="least_significant_digit";
+	char att_nm_nsd[]="number_of_significant_digits";
+	int ppc_old;
+	int rcd;
+	if(var_trv.flg_nsd) aed_ppc.att_nm=att_nm_nsd; else aed_ppc.att_nm=att_nm_dsd;
+	aed_ppc.var_nm=var_trv.nm;
+	aed_ppc.id=var_out_id;
+	aed_ppc.val.ip=&var_trv.ppc;
+	rcd=nco_inq_att_flg(grp_out_id,aed_ppc.id,aed_ppc.att_nm,&aed_ppc.type,&aed_ppc.sz);
+	if(rcd != NC_NOERR){
+	  /* No PPC attribute yet exists */
+	  aed_ppc.sz=1L;
+	  aed_ppc.type=NC_INT;
+	  aed_ppc.mode=aed_create;
+	  (void)nco_aed_prc(grp_out_id,var_out_id,aed_ppc);
+	}else{
+	  if(aed_ppc.sz == 1L && aed_ppc.type == NC_INT){
+	    /* Conforming PPC attribute already exists, only replace with new value if rounder */
+	    (void)nco_get_att(grp_out_id,aed_ppc.id,aed_ppc.att_nm,&ppc_old,NC_INT);
+	    if(var_trv.ppc < ppc_old){
+	      aed_ppc.mode=aed_modify;
+	      (void)nco_aed_prc(grp_out_id,var_out_id,aed_ppc);
+	    } /* endif */
+	  }else{ /* !conforming */
+	    (void)fprintf(stderr,"%s: WARNING Non-conforming %s attribute found in variable %s, skipping...\n",nco_prg_nm_get(),aed_ppc.att_nm,var_trv.nm_fll);
+	  }  /* !conforming */
+	} /* !rcd */
+      } /* !PPC */
+
       /* Memory management after current extracted variable */
       if(grp_out_fll) grp_out_fll=(char *)nco_free(grp_out_fll);
     } /* end if variable and flg_xtr */
@@ -1859,7 +1884,6 @@ nco_xtr_wrt                           /* [fnc] Write extracted data to output fi
   if(HAVE_LIMITS) USE_MM3_WORKAROUND=False; 
 
   if(USE_MM3_WORKAROUND){  
-
     int fix_nbr; /* [nbr] Number of fixed-length variables */
     int rec_nbr; /* [nbr] Number of record variables */
     int xtr_nbr; /* [nbr] Number of extracted variables */
@@ -1881,11 +1905,11 @@ nco_xtr_wrt                           /* [fnc] Write extracted data to output fi
     for(idx_var=0;idx_var<fix_nbr;idx_var++){
       if(nco_dbg_lvl_get() >= nco_dbg_var && !fp_bnr) (void)fprintf(stderr,"%s, ",fix_lst[idx_var]->nm);
       if(nco_dbg_lvl_get() >= nco_dbg_var) (void)fflush(stderr);
-      (void)nco_cpy_var_val(fix_lst[idx_var]->grp_id_in,fix_lst[idx_var]->grp_id_out,fp_bnr,md5,fix_lst[idx_var]->nm);
+      (void)nco_cpy_var_val(fix_lst[idx_var]->grp_id_in,fix_lst[idx_var]->grp_id_out,fp_bnr,md5,fix_lst[idx_var]->nm,trv_tbl);
     } /* end loop over idx_var */
 
     /* Copy record data record-by-record */
-    (void)nco_cpy_rec_var_val(nc_id_in,fp_bnr,md5,rec_lst,rec_nbr);
+    (void)nco_cpy_rec_var_val(nc_id_in,fp_bnr,md5,rec_lst,rec_nbr,trv_tbl);
 
     /* Extraction lists no longer needed */
     if(fix_lst) fix_lst=(nm_id_sct **)nco_free(fix_lst);
@@ -1909,14 +1933,6 @@ nco_xtr_wrt                           /* [fnc] Write extracted data to output fi
         /* Get output group ID */
         (void)nco_inq_grp_full_ncid(nc_id_out,grp_out_fll,&grp_id_out);
 
-        if(nco_dbg_lvl_get() >= nco_dbg_vrb && nco_dbg_lvl_get() != nco_dbg_dev){
-          (void)fprintf(stdout,"%s: INFO %s writing variable <%s> from ",nco_prg_nm_get(),fnc_nm,trv.nm_fll);        
-          (void)nco_prn_grp_nm_fll(grp_id_in);
-          (void)fprintf(stdout," to ");   
-          (void)nco_prn_grp_nm_fll(grp_id_out);
-          (void)fprintf(stdout,"\n");
-        } /* endif dbg */
-
         /* Copy variable data from input netCDF file to output netCDF file */
         (void)nco_cpy_var_val_mlt_lmt_trv(grp_id_in,grp_id_out,fp_bnr,md5,&trv); 
 
@@ -1934,7 +1950,7 @@ nco_xtr_wrt                           /* [fnc] Write extracted data to output fi
 } /* end nco_xtr_wrt() */
 
 void                          
-nco_prn_dmn /* [fnc] Print dimensions for a group  */
+nco_prn_dmn_grp /* [fnc] Print dimensions for a group  */
 (const int nc_id, /* I [ID] File ID */
  const char * const grp_nm_fll) /* I [sng] Full name of group */
 {
@@ -2203,6 +2219,8 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
   trv_tbl->lst[idx].nbr_grp=nbr_grp;              /* [nbr] Number of sub-groups (for group) */
   trv_tbl->lst[idx].nbr_rec=nbr_rec;              /* [nbr] Number of record dimensions */
   trv_tbl->lst[idx].nbr_var=nbr_var;              /* [nbr] Number of variables (for group) */
+  trv_tbl->lst[idx].ppc=NC_MAX_INT;               /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+  trv_tbl->lst[idx].flg_nsd=True;                 /* [flg] PPC is NSD */
 
   trv_tbl->lst[idx].is_crd_var=nco_obj_typ_err;   /* [flg] (For variables only) Is this a coordinate variable? (unique dimension exists in scope) */
   trv_tbl->lst[idx].is_rec_var=nco_obj_typ_err;   /* [flg] (For variables only) Is a record variable? (is_crd_var must be True) */
@@ -2214,7 +2232,7 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
   trv_tbl->lst[idx].flg_nsm_prn=False;            /* [flg] (ncge) Group is, or variable is in, ensemble parent group */
   trv_tbl->lst[idx].flg_nsm_mbr=False;            /* [flg] (ncge) Group is, or variable is in, ensemble member group */  
   trv_tbl->lst[idx].flg_nsm_tpl=False;            /* [flg] Group is, or variable is in, template member group */
-  trv_tbl->lst[idx].nsm_nm=NULL;                  /* [sng] (ncge) Ensemble parent group name i.e., full path to ensemble parent */ 
+  trv_tbl->lst[idx].nsm_nm=NULL;                  /* [sng] (ncge) Ensemble parent group name i.e., full path to ensemble parent */
 
   /* Variable dimensions. For groups there are no variable dimensions  */
   trv_tbl->lst[idx].var_dmn=NULL;
@@ -2237,7 +2255,6 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
     /* Get dimension IDs for variable */
     (void)nco_inq_vardimid(grp_id,idx_var,dmn_id_var);
 
-
     /* Allocate path buffer and include space for trailing NUL */ 
     var_nm_fll=(char *)nco_malloc(strlen(grp_nm_fll)+strlen(var_nm)+2L);
 
@@ -2303,7 +2320,9 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
     trv_tbl->lst[idx].nbr_grp=nco_obj_typ_err;
     trv_tbl->lst[idx].nbr_rec=nbr_rec; /* NB: broken fxm should be record dimensions used by this variable */
     trv_tbl->lst[idx].nbr_var=nco_obj_typ_err;
-
+    trv_tbl->lst[idx].ppc=NC_MAX_INT; /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+    trv_tbl->lst[idx].flg_nsd=True; /* [flg] PPC is NSD */
+    
     trv_tbl->lst[idx].is_crd_var=False;             
     trv_tbl->lst[idx].is_rec_var=False; 
     trv_tbl->lst[idx].var_typ=var_typ; 
@@ -2337,11 +2356,10 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
       trv_tbl->lst[idx].var_dmn[idx_dmn_var].lon_crd=NULL;
       trv_tbl->lst[idx].var_dmn[idx_dmn_var].nbr_lat_crd=0;
       trv_tbl->lst[idx].var_dmn[idx_dmn_var].nbr_lon_crd=0;
-    }
+    } /* endfor */
 
     /* Variable dimensions; store what we know at this time: relative name and ID */
     for(int idx_dmn_var=0;idx_dmn_var<nbr_dmn_var;idx_dmn_var++){
-
       char dmn_nm_var[NC_MAX_NAME+1]; /* [sng] Dimension name */
 
       long dmn_sz_var;                /* [nbr] Dimension size */ 
@@ -2351,7 +2369,6 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
 
       trv_tbl->lst[idx].var_dmn[idx_dmn_var].dmn_nm=strdup(dmn_nm_var);
       trv_tbl->lst[idx].var_dmn[idx_dmn_var].dmn_id=dmn_id_var[idx_dmn_var];
-
     } /* Variable dimensions; store what we know at this time: relative name and ID */
 
     /* Free constructed name */
@@ -2359,14 +2376,12 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
 
     /* Free dimension IDs array */
     dmn_id_var=(int *)nco_free(dmn_id_var);
-
   } /* Iterate variables for this group */
 
   /* Add dimension objects */ 
 
   /* Iterate dimensions (for group; dimensions are defined *for* groups) */
   for(int idx_dmn=0;idx_dmn<nbr_dmn_grp;idx_dmn++){
-
     /* Keep the old table dimension size for insertion */
     idx=trv_tbl->nbr_dmn;
 
@@ -2382,16 +2397,13 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
 
     /* Iterate unlimited dimensions to detect if dimension is record */
     for(int rec_idx=0;rec_idx<nbr_rec;rec_idx++){
-
       /* Get record dimension name */
       (void)nco_inq_dim(grp_id,dmn_ids_grp_ult[rec_idx],rec_nm,&rec_sz);
 
       /* Current dimension name matches current record dimension name? */
       if(!strcmp(rec_nm,dmn_nm)){
-
         /* Dimension is a record dimension */
         trv_tbl->lst_dmn[idx].is_rec_dmn=True;
-
         /* Exit record dimension loop; we found it */
         break;
       } /* end match record dimension name */
@@ -2437,8 +2449,7 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
   rcd+=nco_inq_grps(grp_id,&nbr_grp,grp_ids);
 
   /* Heart of traversal construction: 
-  construct a new sub-group path and call function recursively with this new name; 
-  Voila */
+     Construct new sub-group path and call function recursively with new name */
   for(int grp_idx=0;grp_idx<nbr_grp;grp_idx++){
     char *sub_grp_nm_fll=NULL; /* [sng] Sub group path */
     int gid=grp_ids[grp_idx]; /* [id] Current group ID */  
@@ -2473,11 +2484,10 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
 } /* end nco_grp_itr() */
 
 void                      
-nco_bld_crd_rec_var_trv               /* [fnc] Build dimension information for all variables */
-(const trv_tbl_sct * const trv_tbl)   /* I [sct] GTT (Group Traversal Table) */
+nco_bld_crd_rec_var_trv /* [fnc] Build dimension information for all variables */
+(const trv_tbl_sct * const trv_tbl) /* I [sct] GTT (Group Traversal Table) */
 {
   /* Purpose: Build "is_crd_var" and "is_rec_var" members for all variables */
-
   const char fnc_nm[]="nco_blb_crd_var_trv()"; /* [sng] Function name */
 
   /* Loop all objects */
@@ -2493,26 +2503,19 @@ nco_bld_crd_rec_var_trv               /* [fnc] Build dimension information for a
 
         /* Is there a variable with this dimension name anywhere? (relative name)  */
         if(!strcmp(dmn_trv.nm,var_trv.nm)){
-
           /* Is variable in scope of dimension ? */
           if(nco_crd_var_dmn_scp(&var_trv,&dmn_trv,trv_tbl)){
-
-            /* Mark this variable as a coordinate variable. NB: coordinate variables are 1D */
-            if(var_trv.nbr_dmn == 1) trv_tbl->lst[idx_var].is_crd_var=True;
-            else trv_tbl->lst[idx_var].is_crd_var=False;
-
+            /* Mark this variable as coordinate variable. NB: True coordinate variables are 1D */
+            if(var_trv.nbr_dmn == 1) trv_tbl->lst[idx_var].is_crd_var=True; else trv_tbl->lst[idx_var].is_crd_var=False;
             /* If the group dimension is a record dimension then the variable is a record variable */
             trv_tbl->lst[idx_var].is_rec_var=dmn_trv.is_rec_dmn;
-
             if(nco_dbg_lvl_get() == nco_dbg_old){
-              (void)fprintf(stdout,"%s: INFO %s <%s> is ",nco_prg_nm_get(),fnc_nm,var_trv.nm_fll);
+              (void)fprintf(stdout,"%s: INFO %s reports %s is ",nco_prg_nm_get(),fnc_nm,var_trv.nm_fll);
               if(dmn_trv.is_rec_dmn) (void)fprintf(stdout,"(record) ");
               (void)fprintf(stdout,"coordinate\n");
-            }
-
+            } /* endif dbg */
             /* Go to next variable */
             break;
-
           }/* Is variable in scope of dimension ? */
         } /* Is there a variable with this dimension name anywhere? (relative name)  */
       } /* Loop unique dimensions list in groups */
@@ -2682,22 +2685,17 @@ nco_prn_trv_tbl                      /* [fnc] Print GTT (Group Traversal Table)
     /* Filter groups */
     if(trv_tbl->lst[grp_idx].nco_typ == nco_obj_typ_grp){
       trv_sct trv=trv_tbl->lst[grp_idx];            
-      (void)fprintf(stdout,"%s: %d subgroups, %d dimensions, %d record dimensions, %d attributes, %d variables\n",
-        trv.nm_fll,trv.nbr_grp,trv.nbr_dmn,trv.nbr_rec,trv.nbr_att,trv.nbr_var); 
+      (void)fprintf(stdout,"%s: %d subgroups, %d dimensions, %d record dimensions, %d attributes, %d variables\n",trv.nm_fll,trv.nbr_grp,trv.nbr_dmn,trv.nbr_rec,trv.nbr_att,trv.nbr_var); 
 
       /* Print dimensions for group */
-      (void)nco_prn_dmn(nc_id,trv.nm_fll);
-
+      (void)nco_prn_dmn_grp(nc_id,trv.nm_fll);
       nbr_dmn+=trv.nbr_dmn;
-
     } /* Filter groups */
   } /* Loop groups */
 
-
   assert((unsigned int)nbr_dmn == trv_tbl->nbr_dmn);
 
   /* Variables */
-
   nbr_crd=0;
   (void)fprintf(stdout,"\n");
   (void)fprintf(stdout,"%s: INFO reports variable information\n",nco_prg_nm_get());
@@ -2708,13 +2706,13 @@ nco_prn_trv_tbl                      /* [fnc] Print GTT (Group Traversal Table)
     /* Filter variables  */
     if(var_trv.nco_typ == nco_obj_typ_var){
 
-      (void)fprintf(stdout,"%s:",var_trv.nm_fll); 
+      (void)fprintf(stdout,"%s:",var_trv.nm_fll);
 
       /* Filter output */
       if(var_trv.is_crd_var){
         (void)fprintf(stdout," (coordinate)");
         nbr_crd++;
-      }
+      } /* endif */
 
       /* Filter output */
       if(var_trv.is_rec_var) (void)fprintf(stdout," (record)");
@@ -2738,18 +2736,14 @@ nco_prn_trv_tbl                      /* [fnc] Print GTT (Group Traversal Table)
         /* a) case where the dimension has coordinate variables */
         if(var_dmn.crd){
 
-          /* Limits */
-          for(int lmt_idx=0;lmt_idx<var_dmn.crd->lmt_msa.lmt_dmn_nbr;lmt_idx++){ 
+          for(int lmt_idx=0;lmt_idx<var_dmn.crd->lmt_msa.lmt_dmn_nbr;lmt_idx++)
             (void)prt_lmt(lmt_idx,var_dmn.crd->lmt_msa.lmt_dmn[lmt_idx]);
-          }/* Limits */
 
           /* ! case where the dimension has coordinate variables */
-        } else {
+        }else{
 
-          /* Limits */
-          for(int lmt_idx=0;lmt_idx<var_dmn.ncd->lmt_msa.lmt_dmn_nbr;lmt_idx++){ 
+          for(int lmt_idx=0;lmt_idx<var_dmn.ncd->lmt_msa.lmt_dmn_nbr;lmt_idx++)
             (void)prt_lmt(lmt_idx,var_dmn.ncd->lmt_msa.lmt_dmn[lmt_idx]);
-          }/* Limits */
 
         } /* ! case where the dimension has coordinate variables */
       } /* Dimensions */
@@ -2761,7 +2755,6 @@ nco_prn_trv_tbl                      /* [fnc] Print GTT (Group Traversal Table)
   } /* Variables */
 
   /* Unique dimension list, Coordinate variables stored in unique dimension list, limits */
-
   nbr_crd_var=0;
   (void)fprintf(stdout,"\n");
   (void)fprintf(stdout,"%s: INFO reports coordinate variables and limits listed by dimension:\n",nco_prg_nm_get());
@@ -2787,14 +2780,13 @@ nco_prn_trv_tbl                      /* [fnc] Print GTT (Group Traversal Table)
       (void)fprintf(stdout,"(#%d%s) ",crd->dmn_id,crd->dmn_nm_fll);
 
       /* Limits */
-      for(int lmt_idx=0;lmt_idx<crd->lmt_msa.lmt_dmn_nbr;lmt_idx++){ 
+      for(int lmt_idx=0;lmt_idx<crd->lmt_msa.lmt_dmn_nbr;lmt_idx++)
         (void)prt_lmt(lmt_idx,crd->lmt_msa.lmt_dmn[lmt_idx]);
-      }/* Limits */
 
       /* Terminate this coordinate with "::" */
       if(dmn_trv.crd_nbr>1) (void)fprintf(stdout,":: ");
 
-    }/* Loop coordinates */
+    } /* Loop coordinates */
 
     /* Terminate line */
     (void)fprintf(stdout,"\n");
@@ -2805,12 +2797,10 @@ nco_prn_trv_tbl                      /* [fnc] Print GTT (Group Traversal Table)
 
 } /* nco_prn_trv_tbl() */
 
-
 void                          
-nco_has_crd_dmn_scp                  /* [fnc] Is there a variable with same name in dimension's scope?   */
-(const trv_tbl_sct * const trv_tbl)  /* I [sct] GTT (Group Traversal Table) */
+nco_has_crd_dmn_scp /* [fnc] Is there a variable with same name in dimension's scope?   */
+(const trv_tbl_sct * const trv_tbl) /* I [sct] GTT (Group Traversal Table) */
 {
-
   const char fnc_nm[]="nco_has_crd_dmn_scp()"; /* [sng] Function name  */
 
   /* Unique dimension list */
@@ -2837,29 +2827,21 @@ nco_has_crd_dmn_scp                  /* [fnc] Is there a variable with same name
           /* Is variable in scope of dimension ? */
           if(nco_crd_var_dmn_scp(&var_trv,&dmn_trv,trv_tbl)){
 
-            if(nco_dbg_lvl_get() == nco_dbg_old){
-              (void)fprintf(stdout,"%s: INFO %s reports variable <%s> in scope of dimension <%s>\n",nco_prg_nm_get(),fnc_nm,
-                var_trv.nm_fll,dmn_trv.nm_fll);        
-            } /* endif dbg */
+            if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: INFO %s reports variable <%s> in scope of dimension <%s>\n",nco_prg_nm_get(),fnc_nm,var_trv.nm_fll,dmn_trv.nm_fll);
 
             trv_tbl->lst_dmn[idx_dmn].has_crd_scp=True;
-
             /* Built before; variable must be a cordinate */
             assert(var_trv.is_crd_var);
-
             in_scp=True;
-
           } /* Is variable in scope of dimension ? */
         } /* Is there a variable with this dimension name anywhere? (relative name)  */
       } /* Filter variables  */
     } /* Loop object table */
 
-
     if(nco_dbg_lvl_get() == nco_dbg_old)
       if(!in_scp) (void)fprintf(stdout,"%s: INFO %s dimension <%s> with no in scope variables\n",nco_prg_nm_get(),fnc_nm,dmn_trv.nm_fll);        
 
     trv_tbl->lst_dmn[idx_dmn].has_crd_scp=in_scp;
-
   } /* Unique dimension list */
 
   /* Unique dimension list */
@@ -2874,101 +2856,99 @@ nco_crd_var_dmn_scp                    /* [fnc] Is coordinate variable in dimens
  const trv_tbl_sct * const trv_tbl)    /* I [sct] GTT (Group Traversal Table) */
 {
   /* Purpose: Find if variable is in scope of the dimension: 
-  Use case in scope:
-  dimension /lon 
-  variable /g1/lon
-  Use case not in scope:
-  variable /lon
-  dimension /g1/lon
-
-  NOTE: deal with cases like
-  dimension: /lon
-  variable:  /g8/lon 
-  dimension: /g8/lon
-  */
-
+     Use case in scope:
+     dimension /lon 
+     variable /g1/lon
+     Use case not in scope:
+     variable /lon
+     dimension /g1/lon
+     
+     NOTE: deal with cases like
+     dimension: /lon
+     variable:  /g8/lon 
+     dimension: /g8/lon */
+  
   const char fnc_nm[]="nco_crd_var_dmn_scp()";   /* [sng] Function name */
-
+  
   const char sls_chr='/';                    /* [chr] Slash character */
   char *sbs_srt;                             /* [sng] Location of user-string match start in object path */
   char *sbs_end;                             /* [sng] Location of user-string match end   in object path */
-
+  
   nco_bool flg_pth_srt_bnd=False;            /* [flg] String begins at path component boundary */
   nco_bool flg_pth_end_bnd=False;            /* [flg] String ends   at path component boundary */
-
+  
   size_t var_sng_lng;                        /* [nbr] Length of variable name */
   size_t var_nm_fll_lng;                     /* [nbr] Length of full variable name */
   size_t dmn_nm_fll_lng;                     /* [nbr] Length of of full dimension name */
-
+  
   /* Coordinate variables are 1D */
   if(var_trv->nbr_dmn !=1 ){
     return False;
   }
-
+  
   /* Most common case is for the unique dimension full name to match the full variable name   */
   if(strcmp(var_trv->nm_fll,dmn_trv->nm_fll) == 0){
     if(nco_dbg_lvl_get() == nco_dbg_old){
       (void)fprintf(stdout,"%s: INFO %s found absolute match of variable <%s> and dimension <%s>:\n",nco_prg_nm_get(),fnc_nm,
-        var_trv->nm_fll,dmn_trv->nm_fll);
+		    var_trv->nm_fll,dmn_trv->nm_fll);
     }
     return True;
   }
-
+  
   /* Deal with in scope cases */
-
+  
   var_nm_fll_lng=strlen(var_trv->nm_fll);
   dmn_nm_fll_lng=strlen(dmn_trv->nm_fll);
   var_sng_lng=strlen(var_trv->nm);
-
+  
   /* Look for partial match, not necessarily on path boundaries; locate variable (str2) in full dimension name (str1) */
   if((sbs_srt=strstr(dmn_trv->nm_fll,var_trv->nm))){
-
+    
     /* Ensure match spans (begins and ends on) whole path-component boundaries */
-
+    
     /* Does match begin at path component boundary ... directly on a slash? */
     if(*sbs_srt == sls_chr){
       flg_pth_srt_bnd=True;
     }
-
+    
     /* ...or one after a component boundary? */
     if((sbs_srt > dmn_trv->nm_fll) && (*(sbs_srt-1L) == sls_chr)){
       flg_pth_srt_bnd=True;
     }
-
+    
     /* Does match end at path component boundary ... directly on a slash? */
     sbs_end=sbs_srt+var_sng_lng-1L;
-
+    
     if(*sbs_end == sls_chr){
       flg_pth_end_bnd=True;
     }
-
+    
     /* ...or one before a component boundary? */
     if(sbs_end <= dmn_trv->nm_fll+dmn_nm_fll_lng-1L){
       if((*(sbs_end+1L) == sls_chr) || (*(sbs_end+1L) == '\0')){
         flg_pth_end_bnd=True;
       }
     }
-
+    
     /* If match is on both ends of '/' then it's a "real" name, not for example "lat_lon" as a variable looking for "lon" */
     if(flg_pth_srt_bnd && flg_pth_end_bnd){
-
+      
       /* Absolute match (equality redundant); strcmp deals cases like /g3/rlev/ and /g5/rlev  */
       if(var_nm_fll_lng == dmn_nm_fll_lng && strcmp(var_trv->nm_fll,dmn_trv->nm_fll) == 0){
         if(nco_dbg_lvl_get() == nco_dbg_old){
           (void)fprintf(stdout,"%s: INFO %s found absolute match of variable <%s> and dimension <%s>:\n",nco_prg_nm_get(),fnc_nm,
-            var_trv->nm_fll,dmn_trv->nm_fll);
+			var_trv->nm_fll,dmn_trv->nm_fll);
         }
         return True;
-
+	
         /* Variable in scope of dimension */
       }else if(var_nm_fll_lng>dmn_nm_fll_lng){
-
+	
         /* NOTE: deal with cases like
-        dimension: /lon
-        variable:  /g8/lon 
-        dimension: /g8/lon
-        */
-
+	   dimension: /lon
+	   variable:  /g8/lon 
+	   dimension: /g8/lon */
+	
         /* Loop unique dimensions list in groups */
         for(unsigned idx_dmn=0;idx_dmn<trv_tbl->nbr_dmn;idx_dmn++){
           dmn_trv_sct dmn=trv_tbl->lst_dmn[idx_dmn]; 
@@ -2978,18 +2958,14 @@ nco_crd_var_dmn_scp                    /* [fnc] Is coordinate variable in dimens
             /* Interested in variables only */
             if(var.nco_typ == nco_obj_typ_var){
               /* Is there a *full* match already for the *input* dimension ?  */
-              if(strcmp(var_trv->nm_fll,dmn.nm_fll) == 0 ){
-                if(nco_dbg_lvl_get() == nco_dbg_old){
-                  (void)fprintf(stdout,"%s: INFO %s variable <%s> has another dimension full match <%s>:\n",nco_prg_nm_get(),fnc_nm,
-                    var_trv->nm_fll,dmn.nm_fll);
-                }
+              if(!strcmp(var_trv->nm_fll,dmn.nm_fll)){
+                if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: INFO %s variable <%s> has another dimension full match <%s>:\n",nco_prg_nm_get(),fnc_nm,var_trv->nm_fll,dmn.nm_fll);
                 return False;
               } /* Is there a *full* match already?  */
             } /* Interested in variables only */
           } /* Loop all objects */
         } /* Loop unique dimensions list in groups */
 
-
         if(nco_dbg_lvl_get() == nco_dbg_old){
           (void)fprintf(stdout,"%s: INFO %s found variable <%s> in scope of dimension <%s>:\n",nco_prg_nm_get(),fnc_nm,
             var_trv->nm_fll,dmn_trv->nm_fll);
@@ -3030,26 +3006,23 @@ nco_cmp_crd_dpt /* [fnc] Compare two crd_sct's by group depth */
 
 crd_sct *                             /* O [sct] Coordinate object */
 nco_scp_var_crd                       /* [fnc] Return in scope coordinate for variable  */
-(trv_sct *var_trv,                    /* I [sct] Variable object */
- dmn_trv_sct *dmn_trv)                /* I [sct] Dimension object */
+(const trv_sct * const var_trv,       /* I [sct] Variable object */
+ dmn_trv_sct * const dmn_trv)         /* I [sct] Dimension object */
 {
 
   /* Purpose: Choose one coordinate from the dimension object to assign as a valid coordinate
-  to the variable dimension
-  Scope definition: In the same group of the variable or beneath (closer to root) 
-  Above: out of scope (no luck)
-
-  Use cases:
-
-  dimension lon4;
-  variable lon4_var(lon4)
-
-  Variable /g16/g16g4/g16g4g4/g16g4g4g4/lon4_var
-  2 coordinates down in scope 
-  /g16/g16g4/g16g4g4/lon4
-  /g16/g16g4/lon4
-
-  */
+     to the variable dimension
+     Scope definition: In the same group of the variable or beneath (closer to root) 
+     Above: out of scope (no luck)
+     
+     Use cases:
+     dimension lon4;
+     variable lon4_var(lon4)
+     
+     Variable /g16/g16g4/g16g4g4/g16g4g4g4/lon4_var
+     2 coordinates down in scope 
+     /g16/g16g4/g16g4g4/lon4
+     /g16/g16g4/lon4 */
 
 
   /* If more than one coordinate, sort them by group depth */
@@ -3141,20 +3114,19 @@ nco_bld_var_dmn                       /* [fnc] Assign variables dimensions to ei
           trv_tbl->lst[idx_var].var_dmn[idx_dmn_var].ncd->lmt_msa.WRP=dmn_trv->lmt_msa.WRP;
 
         }else if(dmn_trv->crd_nbr > 0){
-
-          /* There are coordinates; one must be chosen 
-	     Scope definition: In the same group of the variable or beneath (closer to root) 
-	     Above: out of scope */
+          /* Choose in-scope coordinates
+	     Scope definition: In the same group of the variable or above (closer to root) 
+	     Below: out-of-scope */
 
           crd_sct *crd=NULL; /* [sct] Coordinate to assign to dimension of variable */
 
-          /* Choose the "in scope" coordinate for the variable and assign it to the variable dimension */
+          /* Choose the "in-scope" coordinate for the variable and assign it to the variable dimension */
           crd=nco_scp_var_crd(&var_trv,dmn_trv);
 
           /* The "in scope" coordinate is returned */
           if(crd){
-            if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: INFO %s reports dimension [%d]%s of variable <%s> in scope of coordinate <%s>\n",nco_prg_nm_get(),fnc_nm,idx_dmn_var,var_trv.var_dmn[idx_dmn_var].dmn_nm_fll,var_trv.nm_fll,crd->crd_nm_fll);         
-
+            if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: INFO %s reports dimension [%d]%s of variable <%s> in scope of coordinate <%s>\n",nco_prg_nm_get(),fnc_nm,idx_dmn_var,var_trv.var_dmn[idx_dmn_var].dmn_nm_fll,var_trv.nm_fll,crd->crd_nm_fll);
+	    
             /* Mark as True */
             trv_tbl->lst[idx_var].var_dmn[idx_dmn_var].is_crd_var=True;
 
@@ -3404,9 +3376,6 @@ nco_get_rec_dmn_nm                     /* [fnc] Return array of record names  */
 
 } /* nco_get_rec_dmn_nm() */
 
-
-
-
 var_sct **                            /* O [sct] Variable list */  
 nco_fll_var_trv                       /* [fnc] Fill-in variable structure list for all extracted variables */
 (const int nc_id,                     /* I [id] netCDF file ID */
@@ -3456,13 +3425,11 @@ nco_fll_var_trv                       /* [fnc] Fill-in variable structure list f
     } /* Filter variables  */
   } /* Loop table */
 
-
   *xtr_nbr=nbr_xtr;
   return var;
 
 } /* nco_fll_var_trv() */
 
-
 var_sct **                            /* O [sct] Variable list */  
 nco_var_trv                           /* [fnc] Fill-in variable structure list for all variables named "var_nm" */
 (const int nc_id,                     /* I [id] netCDF file ID */
@@ -3541,10 +3508,10 @@ nco_cpy_fix_var_trv                   /* [fnc] Copy fixed variables from input t
     if(var_trv.nco_typ == nco_obj_typ_var && var_trv.enm_prc_typ == fix_typ){
      
       /* If variable is an ensemble member, do not create it in the same location as input */
-      if (var_trv.flg_nsm_mbr == True){
+      if(var_trv.flg_nsm_mbr){
         assert(nco_prg_id_get() == ncge);
         continue;
-      }
+      } /* endif */
 
       /* Obtain group IDs */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id_in);
@@ -3695,9 +3662,9 @@ nco_prc_cmn                            /* [fnc] Process objects (ncbo only) */
       (void)ncap_var_cnf_dmn(&var_prc_1,&var_prc_2);
     }else{
       /* Still possible that variables are mismatched even if ranks are equal
-      One or more dimensions could be degenerate
-      Before subtraction must make sure dimension sizes match
-      Or re-code ncap_var_cnf_dmn() so that it understands how to broadcast degenerate dimensions */
+	 One or more dimensions could be degenerate
+	 Before subtraction must make sure dimension sizes match
+	 Or re-code ncap_var_cnf_dmn() so that it understands how to broadcast degenerate dimensions */
       for(int idx_dmn=0;idx_dmn<var_prc_1->nbr_dim;idx_dmn++){
         if(var_prc_1->dim[idx_dmn]->sz != var_prc_2->dim[idx_dmn]->sz){
           (void)fprintf(stdout,"%s: ERROR Variables do not conform: variable %s has dimension %s with sizes %ld and %ld in input files one and two, respectively\n",nco_prg_nm_get(),var_prc_1->nm_fll,var_prc_1->dim[idx_dmn]->nm,var_prc_1->dim[idx_dmn]->sz,var_prc_2->dim[idx_dmn]->sz);
@@ -3757,11 +3724,10 @@ nco_prc_cmn                            /* [fnc] Process objects (ncbo only) */
 
   }else{ /* !flg_dfn */
     /* Write mode */
+    int has_mss_val; /* [flg] Variable has missing value */
 
     md5_sct *md5=NULL; /* [sct] MD5 configuration */
 
-    int has_mss_val; /* [flg] Variable has missing value */
-
     ptr_unn mss_val; /* [sct] Missing value */
 
     /* Get group ID */
@@ -3770,7 +3736,7 @@ nco_prc_cmn                            /* [fnc] Process objects (ncbo only) */
     /* Get variable ID */
     (void)nco_inq_varid(grp_out_id,trv_1->nm,&var_out_id);         
 
-    if(nco_dbg_lvl_get() >= nco_dbg_vrb) (void)fprintf(stdout,"%s: INFO %s reports operation type <%d> for <%s>\n",nco_prg_nm_get(),fnc_nm,prc_typ_1,trv_1->nm_fll);
+    if(nco_dbg_lvl_get() >= nco_dbg_vrb) (void)fprintf(stdout,"%s: INFO %s reports operation type %d for %s\n",nco_prg_nm_get(),fnc_nm,prc_typ_1,trv_1->nm_fll);
 
     /* Non-processed variable */
     if(prc_typ_1 == fix_typ || prc_typ_2 == fix_typ){
@@ -3783,10 +3749,10 @@ nco_prc_cmn                            /* [fnc] Process objects (ncbo only) */
       var_prc_out->id=var_out_id;
 
       /* fxm: gtr or lsr? */
-      for(int idx_dmn=0;idx_dmn<var_prc_out->nbr_dim;idx_dmn++) {
+      for(int idx_dmn=0;idx_dmn<var_prc_out->nbr_dim;idx_dmn++){
         var_prc_out->srt[idx_dmn]=var_prc_gtr->srt[idx_dmn];
         var_prc_out->cnt[idx_dmn]=var_prc_gtr->cnt[idx_dmn];
-      }
+      } /* endfor */
 
       /* Set missing value */
       has_mss_val=var_prc_gtr->has_mss_val;
@@ -3813,6 +3779,10 @@ nco_prc_cmn                            /* [fnc] Process objects (ncbo only) */
         break;
       } /* end case */
 
+      if(trv_1->ppc != NC_MAX_INT){
+	if(trv_1->flg_nsd) (void)nco_var_bitmask(trv_1->ppc,var_prc_1->type,var_prc_out->sz,var_prc_out->has_mss_val,var_prc_out->mss_val,var_prc_1->val); else (void)nco_var_around(trv_1->ppc,var_prc_1->type,var_prc_out->sz,var_prc_out->has_mss_val,var_prc_out->mss_val,var_prc_1->val);
+      } /* endif ppc */
+
       /* Copy result to output file */
       if(var_prc_1->nbr_dim == 0) (void)nco_put_var1(grp_out_id,var_prc_out->id,var_prc_out->srt,var_prc_1->val.vp,var_prc_1->type); else (void)nco_put_vara(grp_out_id,var_prc_out->id,var_prc_out->srt,var_prc_out->cnt,var_prc_1->val.vp,var_prc_1->type);
 
@@ -3822,7 +3792,7 @@ nco_prc_cmn                            /* [fnc] Process objects (ncbo only) */
   for(int idx_dmn=0;idx_dmn<var_prc_1->nbr_dim;idx_dmn++){
     var_prc_1->dim[idx_dmn]->xrf=(dmn_sct *)nco_dmn_free(var_prc_1->dim[idx_dmn]->xrf);
     var_prc_1->dim[idx_dmn]=(dmn_sct *)nco_dmn_free(var_prc_1->dim[idx_dmn]);   
-  }
+  } /* endfor */
 
   /* Free allocated variable structures */
   var_prc_out=(var_sct *)nco_var_free(var_prc_out);
@@ -3831,7 +3801,6 @@ nco_prc_cmn                            /* [fnc] Process objects (ncbo only) */
 
   /* Free output path name */
   grp_out_fll=(char *)nco_free(grp_out_fll);
-
 } /* nco_prc_cmn() */
 
 void                          
@@ -3908,7 +3877,7 @@ nco_cpy_fix                            /* [fnc] Copy fixed object (ncbo only) */
     if(nco_inq_grp_full_ncid_flg(nc_out_id,grp_out_fll,&grp_out_id)) nco_def_grp_full(nc_out_id,grp_out_fll,&grp_out_id);
 
     /* Detect duplicate GPE names in advance, then exit with helpful error */
-    if(gpe)(void)nco_gpe_chk(grp_out_fll,trv_1->nm,&gpe_nm,&nbr_gpe_nm);                       
+    if(gpe)(void)nco_gpe_chk(grp_out_fll,trv_1->nm,&gpe_nm,&nbr_gpe_nm);
 
     /* Define variable in output file */
     var_out_id=nco_cpy_var_dfn_trv(nc_id_1,nc_out_id,cnk,grp_out_fll,dfl_lvl,gpe,(char *)NULL,trv_1,NULL,0,trv_tbl_1);
@@ -3918,7 +3887,6 @@ nco_cpy_fix                            /* [fnc] Copy fixed object (ncbo only) */
 
   }else{ /* !flg_dfn */
     /* Write mode */
-
     /* Get group ID */
     (void)nco_inq_grp_full_ncid(nc_out_id,grp_out_fll,&grp_out_id);
 
@@ -3927,7 +3895,6 @@ nco_cpy_fix                            /* [fnc] Copy fixed object (ncbo only) */
 
     /* Copy non-processed variable */
     (void)nco_cpy_var_val_mlt_lmt_trv(grp_id_1,grp_out_id,(FILE *)NULL,md5,trv_1); 
-
   } /* !flg_dfn */
 
   /* Free allocated variable structures */
@@ -3936,7 +3903,6 @@ nco_cpy_fix                            /* [fnc] Copy fixed object (ncbo only) */
 
   /* Free output path name */
   grp_out_fll=(char *)nco_free(grp_out_fll);
-
 } /* nco_cpy_fix() */
 
 nco_bool                               /* O [flg] Copy packing attributes */
@@ -3976,10 +3942,8 @@ nco_pck_cpy_att                        /* [fnc] Inquire about copying packing at
     PCK_ATT_CPY=False;  
 
   return PCK_ATT_CPY;
-
 } /* nco_pck_cpy_att() */
 
-
 void
 nco_var_prc_fix_trv                    /* [fnc] Store processed and fixed variables info into GTT */
 (const int nbr_var_prc,                /* I [nbr] Number of processed variables */
@@ -4019,13 +3983,12 @@ nco_var_prc_fix_trv                    /* [fnc] Store processed and fixed variab
   } /* Store fixed variables info into table */
 
   return;
-
 } /* end nco_var_prc_fix_trv() */
 
 void
 nco_var_typ_trv                        /* [fnc] Transfer variable type into GTT */
 (const int prc_nbr,                    /* I [nbr] Number of processed variables */
- var_sct **var,                        /* I [sct] Array of extracted variables */
+ CST_X_PTR_CST_PTR_CST_Y(var_sct,var), /* I [sct] Array of extracted variables */
  trv_tbl_sct * const trv_tbl)          /* I/O [sct] Traversal table */
 {
   /* Purpose: Transfer variable type to table */
@@ -4041,8 +4004,7 @@ nco_var_typ_trv                        /* [fnc] Transfer variable type into GTT
 
     /* Mark output type in table for "nm_fll" */
     for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
-      /* Match */
-      if(strcmp(var[idx_var]->nm_fll,trv_tbl->lst[idx_tbl].nm_fll) == 0){
+      if(!strcmp(var[idx_var]->nm_fll,trv_tbl->lst[idx_tbl].nm_fll)){
         trv_tbl->lst[idx_tbl].var_typ_out=typ_out;
         break;
       } /* Match */
@@ -4238,7 +4200,7 @@ nco_var_fll_trv                       /* [fnc] Allocate variable structure and f
     if(idx_dmn != var->nbr_dim) break;
   } /* Check variable for duplicate dimensions */
 
-  /* Variables associated with "bounds" and "coordinates" attributes should, in most cases, be treated as coordinates */
+  /* Treat variables associated with "bounds" and "coordinates" attributes as coordinates */
   if(nco_is_spc_in_bnd_att(var->nc_id,var->id)) var->is_crd_var=True;
   if(nco_is_spc_in_crd_att(var->nc_id,var->id)) var->is_crd_var=True;
 
@@ -4266,7 +4228,7 @@ nco_var_fll_trv                       /* [fnc] Allocate variable structure and f
       else if(trv_tbl->lst[idx_tbl].enm_prc_typ == fix_typ) var->is_fix_var=True;
       break;
     } /* endif */
-  } 
+  } /* endfor */
 
   var->undefined=False; /* [flg] Used by ncap parser */
 
@@ -4341,7 +4303,7 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
   int var_in_id;                         /* [id] Variable ID */
   int var_out_id;                        /* [id] Variable ID */
 
-  long dmn_cnt;                          /* [nbr] Hyperslabbed size of dimension */  
+  long dmn_cnt=NC_UNLIMITED;             /* [nbr] Hyperslabbed size of dimension */  
   long dmn_sz;                           /* [nbr] Size of dimension (on input)  */  
   long dmn_sz_grp;                       /* [sng] Dimension size for group  */  
 
@@ -4349,7 +4311,7 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
   nc_type var_typ_out;                   /* [enm] netCDF type in output variable (usually same as input) */ 
 
   nco_bool CRR_DMN_IS_REC_IN_INPUT;      /* [flg] Current dimension of variable is record dimension of variable in input file/group */
-  nco_bool DFN_CRR_DMN_AS_REC_IN_OUTPUT; /* [flg] Define current dimension as record dimension in output file */
+  nco_bool DFN_CRR_DMN_AS_REC_IN_OUTPUT=False; /* [flg] Define current dimension as record dimension in output file */
   nco_bool FIX_ALL_REC_DMN=False;        /* [flg] Fix all record dimensions */
   nco_bool FIX_REC_DMN=False;            /* [flg] Fix record dimension (opposite of MK_REC_DMN) */
   nco_bool NEED_TO_DEFINE_DIM;           /* [flg] Dimension needs to be defined in *this* group */  
@@ -4400,9 +4362,16 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
 
   /* Get output group ID */
   (void)nco_inq_grp_full_ncid(nc_out_id,grp_out_fll,&grp_out_id);
-  /* Is requested variable already in output file? */
+  /* Is requested variable already in output file? 
+     This situation legally occurs with appends, i.e., when -A = FORCE_APPEND is used */
   rcd=nco_inq_varid_flg(grp_out_id,var_nm,&var_out_id);
-  if(rcd == NC_NOERR) return var_out_id;
+  if(rcd == NC_NOERR){
+    /* 20141201: Due diligence to warn user when output type does not match input type
+       Again, this can happen when appending, e.g., from lower-to-higher precision */
+    (void)nco_inq_vartype(grp_out_id,var_out_id,&var_typ_out);
+    if(var_typ_out != var_trv->var_typ) (void)fprintf(stdout,"%s: WARNING %s reports variable \"%s\" output type = %s does not equal input type = %s. This is legal yet usually ill-advised when appending variables (i.e., with -A). Writing values into slots created for a different type is begging for trouble (e.g., data corruption, truncation, gingivitis).\n",nco_prg_nm_get(),fnc_nm,var_nm,nco_typ_sng(var_typ_out),nco_typ_sng(var_trv->var_typ));
+    return var_out_id;
+  } /* endif */
 
   /* Get input group ID */
   (void)nco_inq_grp_full_ncid(nc_in_id,var_trv->grp_nm_fll,&grp_in_id);
@@ -4607,7 +4576,7 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
               /* ... output file adheres to netCDF3 API so there can be only one record dimension.
 		 In other words, define all other dimensions as fixed, non-record dimensions, even
 		 if they are a record dimension in the input file ... */
-              if(CRR_DMN_IS_REC_IN_INPUT) (void)fprintf(stderr,"%s: INFO %s is defining dimension %s as fixed (non-record) in output file even though it is a record dimension in the input file. This is necessary to satisfy user request that %s be the record dimension in the output file which adheres to the netCDF3 API that permits only one record dimension.\n",nco_prg_nm_get(),fnc_nm,dmn_nm,rec_dmn_nm);
+              if(CRR_DMN_IS_REC_IN_INPUT) (void)fprintf(stderr,"%s: INFO %s is defining dimension %s as fixed (non-record) in output file even though it is a record dimension in the input file. This is necessary to satisfy user request that %s be the record dimension in the output file which adheres to the netCDF3 API which permits only one record dimension.\n",nco_prg_nm_get(),fnc_nm,dmn_nm,rec_dmn_nm);
               DFN_CRR_DMN_AS_REC_IN_OUTPUT=False;
             } /* !netCDF4 */
 
@@ -4959,8 +4928,8 @@ nco_dmn_swap                           /* [fnc] Swap dimensions */
  dmn_cmn_sct *dmn_cmn,                 /* I/O [sct] Dimension structure array */
  const int nbr_dmn)                    /* I [nbr] Number of dimensions (size of above array) */
 {
-  int dmn_nm_1_idx;
-  int dmn_nm_2_idx;
+  int dmn_nm_1_idx=int_CEWI;
+  int dmn_nm_2_idx=int_CEWI;
 
   dmn_cmn_sct dmn_cmn_tmp;
 
@@ -4974,7 +4943,6 @@ nco_dmn_swap                           /* [fnc] Swap dimensions */
   dmn_cmn_tmp=dmn_cmn[dmn_nm_1_idx];
   dmn_cmn[dmn_nm_1_idx]=dmn_cmn[dmn_nm_2_idx];
   dmn_cmn[dmn_nm_2_idx]=dmn_cmn_tmp;
-
 } /* nco_dmn_swap */
 
 void
@@ -5165,14 +5133,14 @@ nco_var_dmn_rdr_mtd_trv               /* [fnc] Determine and set new dimensional
     trv_sct var_trv=trv_tbl->lst[idx_var];
 
     /* Changing record dimension may invalidate is_rec_var flag
-    Updating is_rec_var flag to correct value, even if value is ignored,
-    helps keep user appraised of unexpected dimension re-orders.
-    is_rec_var may change both for "fixed" and "processed" variables
-    When is_rec_var changes for processed variables, may also need to change
-    ancillary information and to check for duplicate dimensions.
-    Ancillary information (dmn_idx_out_in) is available only for var_prc!
-    Hence must update is_rec_var flag for var_fix and var_prc separately */
-
+       Updating is_rec_var flag to correct value, even if value is ignored,
+       helps keep user appraised of unexpected dimension re-orders.
+       is_rec_var may change both for "fixed" and "processed" variables
+       When is_rec_var changes for processed variables, may also need to change
+       ancillary information and to check for duplicate dimensions.
+       Ancillary information (dmn_idx_out_in) is available only for var_prc!
+       Hence must update is_rec_var flag for var_fix and var_prc separately */
+    
     /*  Update is_rec_var flag for var_fix */
     for(int idx_var_fix=0;idx_var_fix<nbr_var_fix;idx_var_fix++){
 
@@ -5261,11 +5229,11 @@ nco_var_dmn_rdr_mtd_trv               /* [fnc] Determine and set new dimensional
               /* NEEDS_REORDER */
               if(NEEDS_REORDER){
 
-                /* NOTE: Bellow:
-                --- using the found index of processed idx_var_prc_out
-                --- using the search index of GTT idx_var_mrk */
+                /* NB:
+		   --- use found index of processed idx_var_prc_out
+		   --- use search index of GTT idx_var_mrk */
 
-                /* Find the index of processed variables that corresponds to the found GTT variable */
+                /* Find index of processed variables that corresponds to found GTT variable */
                 nco_var_prc_idx_trv(var_trv_mrk.nm_fll,var_prc_out,nbr_var_prc,&idx_var_prc_out);        
 
                 /* Transfer dimension structures to be re-ordered *from* GTT (opposite of above)  */
@@ -5346,7 +5314,7 @@ nco_var_dmn_rdr_mtd_trv               /* [fnc] Determine and set new dimensional
                     } /* endif multi-dimensional */
                   } /* endif status changing from non-record to record */
                 } /* endif variable will be record variable */
-              } /* Loop table, search for other variables that share the same dimension name */
+              } /* Loop table, search for other variables that share same dimension name */
           } /* NEEDS_REORDER */
         } /* ...look if there is a record name to find  */
       } /* Match by full variable name  */
@@ -5364,7 +5332,7 @@ nco_var_dmn_rdr_mtd_trv               /* [fnc] Determine and set new dimensional
 
       rec_dmn_nm_out=trv_tbl->lst[idx_var].rec_dmn_nm_out;
 
-      /* Loop table, search for other variables that share the same dimension name */
+      /* Loop table, search for other variables that share same dimension name */
       for(unsigned idx_var_mrk=0;idx_var_mrk<trv_tbl->nbr;idx_var_mrk++){
 
         /* Looking for this variable */
@@ -5436,7 +5404,7 @@ nco_rdf_dmn_trv                       /* [fnc] Re-define dimension ordering */
 
   if(var_trv.rec_dmn_nm_out == NULL) return False;
 
-  /* Loop table, search for other variables that share the same dimension name */
+  /* Loop table, search for other variables that share same dimension name */
   for(unsigned idx_var_mrk=0;idx_var_mrk<trv_tbl->nbr;idx_var_mrk++){
 
     /* Looking for this variable */
@@ -5555,11 +5523,11 @@ nco_var_dmn_rdr_val_trv               /* [fnc] Change dimension ordering of vari
       var_sz=var_in->sz;
 
       /* As explained in nco_var_dmn_rdr_mtd(),
-      "Hence, we must re-update dmn_out->id after nco_dmn_dfn() in nco_cnf_dmn_rdr_val()
-      Structures should be completely consistent at that point
-      Not updating these structures (at least dmn_out->id) is equivalent to assuming that
-      dmn_out->id does not depend on record dimension identity, which is an ASSUMPTION
-      that may currently be true, but is not guaranteed by the netCDF API to always be true." */
+	 "Hence, we must re-update dmn_out->id after nco_dmn_dfn() in nco_cnf_dmn_rdr_val()
+	 Structures should be completely consistent at that point
+	 Not updating these structures (at least dmn_out->id) is equivalent to assuming that
+	 dmn_out->id does not depend on record dimension identity, which is an ASSUMPTION
+	 that may currently be true, but is not guaranteed by the netCDF API to always be true." */
       for(dmn_out_idx=0;dmn_out_idx<dmn_out_nbr;dmn_out_idx++){
         /* NB: Change dmn_id,cnt,srt,end,srd together to minimize chances of forgetting one */
         var_out->dmn_id[dmn_out_idx]=dmn_out[dmn_out_idx]->id;
@@ -5669,7 +5637,7 @@ nco_var_dmn_rdr_val_trv               /* [fnc] Change dimension ordering of vari
   return;
 
 } /* nco_var_dmn_rdr_val_trv() */
-
+  
 void
 nco_aed_prc_trv                       /* [fnc] Process single attribute edit for single variable (GTT) */
 (const int nc_id,                     /* I [id] Input netCDF file ID */
@@ -5932,9 +5900,9 @@ nco_dmn_msa_tbl                       /* [fnc] Update all GTT dimensions with hy
     if(NEED_TO_DEFINE_DIM){
 
       /* Here begins a complex tree to decide a simple, binary output:
-      Will current input dimension be defined as an output record dimension or as a fixed dimension?
-      Decision tree outputs flag DFN_CRR_CMN_AS_REC_IN_OUTPUT that controls subsequent netCDF actions
-      Otherwise would repeat netCDF action code too many times */
+	 Will current input dimension be defined as an output record dimension or as a fixed dimension?
+	 Decision tree outputs flag DFN_CRR_CMN_AS_REC_IN_OUTPUT that controls subsequent netCDF actions
+	 Otherwise would repeat netCDF action code too many times */
 
       /* Is dimension unlimited in input file? Handy unique dimension has all this info */
       CRR_DMN_IS_REC_IN_INPUT=dmn_trv->is_rec_dmn;
@@ -5955,18 +5923,18 @@ nco_dmn_msa_tbl                       /* [fnc] Update all GTT dimensions with hy
             if(CRR_DMN_IS_REC_IN_INPUT) DFN_CRR_DMN_AS_REC_IN_OUTPUT=True; else DFN_CRR_DMN_AS_REC_IN_OUTPUT=False;
           }else{ /* !FIX_REC_DMN */
             /* ... otherwise we are in the --mk_rec_dmn case where things get complicated ... 
-            This dimension can be a record dimension only if it would not conflict with the requested 
-            record dimension being defined a record dimension, and that depends on file format. Uggh.
-            1. netCDF3 API allows only one record-dimension so conflicts are possible
-            2. netCDF4 API permits any number of unlimited dimensions so conflicts are impossible */
+	       This dimension can be a record dimension only if it would not conflict with the requested 
+	       record dimension being defined a record dimension, and that depends on file format. Uggh.
+	       1. netCDF3 API allows only one record-dimension so conflicts are possible
+	       2. netCDF4 API permits any number of unlimited dimensions so conflicts are impossible */
             if(fl_fmt == NC_FORMAT_NETCDF4){
               /* ... no conflicts possible so define dimension in output same as in input ... */
               if(CRR_DMN_IS_REC_IN_INPUT) DFN_CRR_DMN_AS_REC_IN_OUTPUT=True; else DFN_CRR_DMN_AS_REC_IN_OUTPUT=False;
             }else{ /* !netCDF4 */
               /* ... output file adheres to netCDF3 API so there can be only one record dimension.
-              In other words, define all other dimensions as fixed, non-record dimensions, even
-              if they are a record dimension in the input file ... */
-              if(CRR_DMN_IS_REC_IN_INPUT) (void)fprintf(stderr,"%s: INFO %s is defining dimension %s as fixed (non-record) in output file even though it is a record dimension in the input file. This is necessary to satisfy user request that %s be the record dimension in the output file which adheres to the netCDF3 API that permits only one record dimension.\n",nco_prg_nm_get(),fnc_nm,dmn_nm,rec_dmn_nm);
+		 In other words, define all other dimensions as fixed, non-record dimensions, even
+		 if they are a record dimension in the input file ... */
+              if(CRR_DMN_IS_REC_IN_INPUT) (void)fprintf(stderr,"%s: INFO %s is defining dimension %s as fixed (non-record) in output file even though it is a record dimension in the input file. This is necessary to satisfy user request that %s be the record dimension in the output file which adheres to the netCDF3 API which permits only one record dimension.\n",nco_prg_nm_get(),fnc_nm,dmn_nm,rec_dmn_nm);
               DFN_CRR_DMN_AS_REC_IN_OUTPUT=False;
             } /* !netCDF4 */
           } /* !FIX_REC_DMN */
@@ -5996,22 +5964,16 @@ nco_dmn_msa_tbl                       /* [fnc] Update all GTT dimensions with hy
       }else{
         /* Get size from GTT */
         if(var_trv->var_dmn[idx_dmn].is_crd_var){
-
           /* Set size */
           dmn_cnt=var_trv->var_dmn[idx_dmn].crd->lmt_msa.dmn_cnt;
-
           /* Update GTT dimension */
           (void)nco_dmn_set_msa(var_dim_id,dmn_cnt,trv_tbl);        
-
-        }else {
-
+        }else{
           /* Set size */
           dmn_cnt=var_trv->var_dmn[idx_dmn].ncd->lmt_msa.dmn_cnt;
-
           /* Update GTT dimension */
           (void)nco_dmn_set_msa(var_dim_id,dmn_cnt,trv_tbl);  
-
-        }
+        } /* end else */
       } /* Define dimension size */
     } /* end if dimension is not yet defined */
   } /* End of the very important dimension loop */
@@ -6026,16 +5988,13 @@ nco_dmn_dgn_tbl                       /* [fnc] Transfer degenerated dimensions i
  const int nbr_dmn_dgn,               /* I [nbr] Total number of dimensions in list */
  trv_tbl_sct *trv_tbl)                /* I/O [sct] GTT (Group Traversal Table) */
 {
-
   trv_tbl->nbr_dmn_dgn=nbr_dmn_dgn;
   trv_tbl->dmn_dgn=(dmn_sct *)nco_malloc(nbr_dmn_dgn*sizeof(dmn_sct));
 
   /* Loop dimensions */
   for(int idx_dmn=0;idx_dmn<nbr_dmn_dgn;idx_dmn++){
-
     trv_tbl->dmn_dgn[idx_dmn].id=dmn_dgn[idx_dmn]->id;
     trv_tbl->dmn_dgn[idx_dmn].cnt=dmn_dgn[idx_dmn]->cnt;
- 
   } /* Loop dimensions */
 
 } /* nco_dmn_dgn_tbl() */
@@ -6051,10 +6010,10 @@ nco_dmn_lst_ass_var_trv                /* [fnc] Create list of all dimensions as
 
   const char fnc_nm[]="nco_dmn_lst_ass_var_trv()"; /* [sng] Function name */
 
-  int nbr_dmn;      /* [nbr] Number of dimensions associated with variables to be extracted */
+  int nbr_dmn; /* [nbr] Number of dimensions associated with variables to be extracted */
 
-  long dmn_cnt;     /* [nbr] Hyperslabbed size of dimension */  
-  long dmn_sz;      /* [nbr] Size of dimension  */  
+  long dmn_cnt; /* [nbr] Hyperslabbed size of dimension */  
+  long dmn_sz; /* [nbr] Size of dimension  */  
 
   nco_bool dmn_flg; /* [flg] Is dimension already inserted in output array  */  
 
@@ -6078,7 +6037,7 @@ nco_dmn_lst_ass_var_trv                /* [fnc] Create list of all dimensions as
         dmn_trv_sct *dmn_trv=nco_dmn_trv_sct(var_trv.var_dmn[idx_dmn_var].dmn_id,trv_tbl);
 
         assert(dmn_trv);
-        assert(strcmp(dmn_trv->nm,var_trv.var_dmn[idx_dmn_var].dmn_nm) == 0);
+        assert(!strcmp(dmn_trv->nm,var_trv.var_dmn[idx_dmn_var].dmn_nm));
 
         /* Loop constructed array of output dimensions to see if already inserted  */
         for(int idx_dmn_out=0;idx_dmn_out<nbr_dmn;idx_dmn_out++){
@@ -6102,11 +6061,11 @@ nco_dmn_lst_ass_var_trv                /* [fnc] Create list of all dimensions as
             dmn_cnt=var_trv.var_dmn[idx_dmn_var].crd->lmt_msa.dmn_cnt;
             dmn_sz=var_trv.var_dmn[idx_dmn_var].crd->sz;
             (*dmn)[nbr_dmn]->is_crd_dmn=True;
-          }else {
+          }else{
             dmn_cnt=var_trv.var_dmn[idx_dmn_var].ncd->lmt_msa.dmn_cnt;
             dmn_sz=var_trv.var_dmn[idx_dmn_var].ncd->sz;
             (*dmn)[nbr_dmn]->is_crd_dmn=False;
-          }
+          } /* end else */
 
           (*dmn)[nbr_dmn]->nm=(char *)strdup(var_trv.var_dmn[idx_dmn_var].dmn_nm);
           (*dmn)[nbr_dmn]->id=var_trv.var_dmn[idx_dmn_var].dmn_id;
@@ -6396,7 +6355,6 @@ nco_dmn_out_mk                         /* [fnc] Build dimensions array to keep o
 
 } /* nco_dmn_out_mk() */
 
-
 void
 nco_dmn_id_mk                          /* [fnc] Mark flag average, optionally flag degenerate for all dimensions that have the input ID */
 (const int dmn_id,                     /* I [nbr] Number of dimensions associated with variables to be extracted (size of above array) */
@@ -6550,7 +6508,7 @@ nco_bld_rec_dmn                       /* [fnc] Build record dimensions array */
               cln_att_sng=nco_lmt_get_udu_att(grp_id,var_id,"calendar"); 
               (*lmt_rec)[rec_nbr]->lmt_cln=nco_cln_get_cln_typ(cln_att_sng); 
               if(cln_att_sng) cln_att_sng=(char*)nco_free(cln_att_sng);  
-            }
+            } /* endif */
 
             /* Store ID */
             (*lmt_rec)[rec_nbr]->id=dmn_id;
@@ -6574,18 +6532,15 @@ nco_bld_rec_dmn                       /* [fnc] Build record dimensions array */
   } /* Loop table */
 
   if(nco_dbg_lvl_get() >= nco_dbg_dev){ 
-    (void)fprintf(stdout,"%s: DEBUG %s record dimensions to process: ",nco_prg_nm_get(),fnc_nm);        
-    for(int idx_rec=0;idx_rec<rec_nbr;idx_rec++){
+    (void)fprintf(stdout,"%s: DEBUG %s record dimensions to process: ",nco_prg_nm_get(),fnc_nm);   
+    for(int idx_rec=0;idx_rec<rec_nbr;idx_rec++)
       (void)fprintf(stdout,"#%d<%s/%s> : ",(*lmt_rec)[idx_rec]->id,(*lmt_rec)[idx_rec]->grp_nm_fll,(*lmt_rec)[idx_rec]->nm);        
-    }
     (void)fprintf(stdout,"\n");       
-  } 
+  } /* endif dbg */
 
   /* Export */
   *nbr_rec=rec_nbr;
-
   return;
-
 } /* nco_bld_rec_dmn() */
 
 void
@@ -6617,9 +6572,9 @@ nco_prn_tbl_lmt                       /* [fnc] Print table limits */
             for(int lmt_idx=0;lmt_idx<lmt_dmn_nbr;lmt_idx++){ 
               lmt_sct *lmt_dmn=crd->lmt_msa.lmt_dmn[lmt_idx];
               (void)fprintf(stdout," [%d]%s(%li,%li,%li) :",lmt_idx,lmt_dmn->nm,lmt_dmn->srt,lmt_dmn->cnt,lmt_dmn->srd);
-            }
+            } /* endfor */
             (void)fprintf(stdout,"\n");
-          }
+          } /* endif */
 
           /* b) case of dimension only (there is no coordinate variable for this dimension */
         }else{
@@ -6633,9 +6588,9 @@ nco_prn_tbl_lmt                       /* [fnc] Print table limits */
             for(int lmt_idx=0;lmt_idx<lmt_dmn_nbr;lmt_idx++){ 
               lmt_sct *lmt_dmn=ncd->lmt_msa.lmt_dmn[lmt_idx];
               (void)fprintf(stdout," [%d]%s(%li,%li,%li) :",lmt_idx,lmt_dmn->nm,lmt_dmn->srt,lmt_dmn->cnt,lmt_dmn->srd);
-            }
+            } /* endfor */
             (void)fprintf(stdout,"\n");
-          }
+          } /* endif */
 
         } /* b) case of dimension only (there is no coordinate variable for this dimension */
 
@@ -6693,9 +6648,9 @@ nco_bld_trv_tbl                       /* [fnc] Construct GTT, Group Traversal Ta
      nco_lmt_prs()
      nco_prs_aux_crd()
      nco_chk_dmn_in()
-     Two functions called for specific operators are:
+     Functions called for specific operators include:
      ncbo: trv_tbl_srt()
-     nces nco_bld_nsm() */
+     nces: nco_bld_nsm() */
   
   const char fnc_nm[]="nco_bld_trv_tbl()"; /* [sng] Function name  */
 
@@ -6780,10 +6735,9 @@ nco_bld_trv_tbl                       /* [fnc] Construct GTT, Group Traversal Ta
   /* Free limits */
   if(lmt_nbr > 0) lmt=nco_lmt_lst_free(lmt,lmt_nbr);
 
-  if(nco_dbg_lvl_get() == nco_dbg_old) trv_tbl_prn_flg_xtr(fnc_nm,trv_tbl);
+  if(nco_dbg_lvl_get() == nco_dbg_vrb) trv_tbl_prn_flg_xtr(fnc_nm,trv_tbl);
 
   return;
-
 } /* nco_bld_trv_tbl() */
 
 void
@@ -7807,8 +7761,7 @@ nco_prs_aux_crd                       /* [fnc] Parse auxiliary coordinates */
       /* Filter variables with auxiliary coordinates */ 
       if(var_trv.flg_aux){
 
-        if(nco_dbg_lvl_get() >= nco_dbg_dev) (void)fprintf(stdout,"%s: DEBUG %s variable with auxiliary coordinates <%s>\n",nco_prg_nm_get(),fnc_nm,
-          trv_tbl->lst[idx_tbl].nm_fll);
+        if(nco_dbg_lvl_get() >= nco_dbg_dev) (void)fprintf(stdout,"%s: DEBUG %s reports variable with auxiliary coordinates %s\n",nco_prg_nm_get(),fnc_nm,trv_tbl->lst[idx_tbl].nm_fll);
 
         int dmn_idx_fnd=-1; /* [nbr] Index of dimension that has the coordinate */
         int dmn_id_fnd_lat=-1; /* [id] ID of dimension that has the latitude coordinate */
@@ -7820,7 +7773,7 @@ nco_prs_aux_crd                       /* [fnc] Parse auxiliary coordinates */
         /* Loop dimensions, look for latitude */
         for(int idx_dmn=0;idx_dmn<var_trv.nbr_dmn;idx_dmn++){
           /* Has 'latitude' auxiliary coordinates */
-          if (var_trv.var_dmn[idx_dmn].nbr_lat_crd){
+          if(var_trv.var_dmn[idx_dmn].nbr_lat_crd){
             /* Use the coordinate with lower group depth (index 0) (These were already sorted ) */
             lat_trv=trv_tbl_var_nm_fll(var_trv.var_dmn[idx_dmn].lat_crd[0].nm_fll,trv_tbl);
             dmn_idx_fnd=idx_dmn;
@@ -7832,7 +7785,7 @@ nco_prs_aux_crd                       /* [fnc] Parse auxiliary coordinates */
         /* Loop dimensions, look for longitude */
         for(int idx_dmn=0;idx_dmn<var_trv.nbr_dmn;idx_dmn++){
           /* Has 'longitude' auxiliary coordinates */
-          if (var_trv.var_dmn[idx_dmn].nbr_lon_crd){
+          if(var_trv.var_dmn[idx_dmn].nbr_lon_crd){
             /* Use the coordinate with lower group depth (index 0) (These were already sorted ) */
             lon_trv=trv_tbl_var_nm_fll(var_trv.var_dmn[idx_dmn].lon_crd[0].nm_fll,trv_tbl);
             dmn_idx_fnd=idx_dmn;
@@ -7842,7 +7795,7 @@ nco_prs_aux_crd                       /* [fnc] Parse auxiliary coordinates */
         } /* Loop dimensions, look for longitude */
 
         /* Auxiliary coordinates found */
-        if (lat_trv && lon_trv){
+        if(lat_trv && lon_trv){
 
           lmt_sct **aux=NULL_CEWI;   /* Auxiliary coordinate limits */
           int aux_lmt_nbr;           /* Number of auxiliary coordinate limits */
@@ -8170,19 +8123,15 @@ nco_lmt_aux                           /* [fnc] Apply auxiliary -X limits (Auxili
 
       /* Single slab---no analysis needed */  
       if(trv_tbl->lst[idx_tbl].var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn_nbr == 1){
-
         (void)nco_msa_clc_cnt(&trv_tbl->lst[idx_tbl].var_dmn[idx_dmn].ncd->lmt_msa);  
-
         continue;    
       } /* End Single slab */
 
-      /* Does Multi-Slab Algorithm returns hyperslabs in user-specified order? */
+      /* Does Multi-Slab Algorithm return hyperslabs in user-specified order? */
       if(MSA_USR_RDR){
         trv_tbl->lst[idx_tbl].var_dmn[idx_dmn].ncd->lmt_msa.MSA_USR_RDR=True;
-
         /* Find and store size of output dimension */  
         (void)nco_msa_clc_cnt(&trv_tbl->lst[idx_tbl].var_dmn[idx_dmn].ncd->lmt_msa);  
-
         continue;
       } /* End MSA_USR_RDR */
 
@@ -8196,12 +8145,10 @@ nco_lmt_aux                           /* [fnc] Apply auxiliary -X limits (Auxili
       (void)nco_msa_clc_cnt(&trv_tbl->lst[idx_tbl].var_dmn[idx_dmn].ncd->lmt_msa);
 
       if(nco_dbg_lvl_get() >= nco_dbg_fl){
-        if(flg_ovl) (void)fprintf(stdout,"%s: coordinate \"%s\" has overlapping hyperslabs\n",nco_prg_nm_get(),ncd->nm); 
-        else (void)fprintf(stdout,"%s: coordinate \"%s\" has distinct hyperslabs\n",nco_prg_nm_get(),ncd->nm); 
-      } /* endif */
-
-    }/* Loop limits */
+	if(flg_ovl) (void)fprintf(stdout,"%s: coordinate \"%s\" has overlapping hyperslabs\n",nco_prg_nm_get(),ncd->nm); else (void)fprintf(stdout,"%s: coordinate \"%s\" has distinct hyperslabs\n",nco_prg_nm_get(),ncd->nm);
+      } /* endif dbg */
 
+    } /* Loop limits */
 
   } /* b) Dimension only (no coordinate variable for this dimension) */
 
@@ -8209,9 +8156,9 @@ nco_lmt_aux                           /* [fnc] Apply auxiliary -X limits (Auxili
 } /* nco_lmt_aux() */
 
 void
-nco_bld_crd_aux                       /* [fnc] Build auxiliary coordinates information into table */
-(const int nc_id,                     /* I [ID] netCDF file ID */
- trv_tbl_sct *trv_tbl)                /* I [sct] GTT (Group Traversal Table) */
+nco_bld_crd_aux /* [fnc] Build auxiliary coordinates information into table */
+(const int nc_id, /* I [ID] netCDF file ID */
+ trv_tbl_sct *trv_tbl) /* I [sct] GTT (Group Traversal Table) */
 {
   const char fnc_nm[]="nco_bld_crd_aux()"; /* [sng] Function name */
 
@@ -8269,7 +8216,7 @@ nco_bld_crd_aux                       /* [fnc] Build auxiliary coordinates infor
 		/* Check if possible 'latitude' (var_trv) is in scope */
 		if(nco_var_scp(&trv_tbl->lst[idx_crd],&var_trv,trv_tbl)){
 		  
-		  /* Mark the variable (e.g gds_var, gds_3dvar) as containing auxiliary coordinates   */
+		  /* Mark variable (e.g., gds_var, gds_3dvar) as containing auxiliary coordinates */
 		  trv_tbl->lst[idx_crd].flg_aux=True;
 		  
 		  if(nco_dbg_lvl_get() >= nco_dbg_dev) (void)fprintf(stdout,"%s: DEBUG %s reports variable %s has auxiliary coordinates with dimension ID = %d\n",nco_prg_nm_get(),fnc_nm,trv_tbl->lst[idx_crd].nm_fll,var_dim_id); 
@@ -8294,7 +8241,6 @@ nco_bld_crd_aux                       /* [fnc] Build auxiliary coordinates infor
       has_lon=nco_find_lat_lon_trv(nc_id,&var_trv,"longitude",&var_nm_fll,&dmn_id,&crd_typ,units_lon);
       
       if(has_lon){
-	
         /* Variable contains 'standard_name' attribute "longitude" */ 
         trv_tbl->lst[idx_var].flg_std_att_lon=True; 
 
@@ -8489,7 +8435,7 @@ nco_dmn_lmt                            /* [fnc] Convert a lmt_sct array to dmn_s
     (*dmn)[idx]->cid=-1;
     (*dmn)[idx]->cnk_sz=-1L;
     (*dmn)[idx]->type=(nc_type)-1;
-  }  
+  } /* endfor */
   return;
 } /* end nco_dmn_lmt() */
 
@@ -8497,7 +8443,7 @@ void
 nco_prn_nsm                                 /* [fnc] Print ensembles  */                                
 (const trv_tbl_sct * const trv_tbl)         /* I [sct] Traversal table */
 {
-  if (!trv_tbl->nsm_nbr) return;
+  if(!trv_tbl->nsm_nbr) return;
 
   (void)fprintf(stdout,"%s: list of ensembles\n",nco_prg_nm_get()); 
   for(int idx_nsm=0;idx_nsm<trv_tbl->nsm_nbr;idx_nsm++) (void)fprintf(stdout,"%s: <%s>\n",nco_prg_nm_get(),trv_tbl->nsm[idx_nsm].grp_nm_fll_prn);
@@ -8511,7 +8457,7 @@ nco_prn_nsm                                 /* [fnc] Print ensembles  */
     if(trv_tbl->lst[idx_tbl].flg_nsm_tpl){
       (void)fprintf(stdout,"%s: <template> %d <%s>\n",nco_prg_nm_get(),idx_tpl,trv_tbl->lst[idx_tbl].nm_fll); 
       idx_tpl++;
-    }
+    } /* endif */
 
   (void)fprintf(stdout,"%s: list of ensemble members\n",nco_prg_nm_get()); 
   for(int idx_nsm=0;idx_nsm<trv_tbl->nsm_nbr;idx_nsm++){
@@ -8523,7 +8469,6 @@ nco_prn_nsm                                 /* [fnc] Print ensembles  */
       }
     }
   }
-
 } /* nco_prn_nsm() */
 
 void
@@ -8535,7 +8480,6 @@ nco_bld_nsm                           /* [fnc] Build ensembles */
  trv_tbl_sct * const trv_tbl)         /* I/O [sct] Traversal table */
 {
   /* Purpose: Build ensembles  */
-
   const char fnc_nm[]="nco_bld_nsm()"; /* [sng] Function name */
 
   char **nm_lst_1;                     /* [sng] List of names */
@@ -8703,7 +8647,7 @@ nco_bld_nsm                           /* [fnc] Build ensembles */
             if(!var_trv){
               (void)fprintf(stderr,"%s: ERROR expected member ensemble <%s> does not exist\n",nco_prg_nm_get(),var_nm_fll);
               nco_exit(EXIT_FAILURE);
-            }
+            } /* endif */
 
             /* Mark variables as ensemble members */
 
@@ -8727,38 +8671,24 @@ nco_bld_nsm                           /* [fnc] Build ensembles */
 
           /* Mark fixed templates as non extracted */
           if(flg_fix_xtr){
-
             /* List of fixed templates  */
             for(int idx_skp=0;idx_skp<trv_tbl->nsm[idx_nsm].skp_nbr;idx_skp++){
-
               /* Get variable  */
               trv_sct *var_trv=trv_tbl_var_nm_fll(trv_tbl->nsm[idx_nsm].skp_nm_fll[idx_skp],trv_tbl);
-
               /* Define variable full name (using group name and relative name of fixed template) */
               char *skp_nm_fll=nco_bld_nm_fll(trv.nm_fll,var_trv->nm);
-
               /* Mark the skip names as non extracted variables */ 
               (void)trv_tbl_mrk_xtr(skp_nm_fll,False,trv_tbl); 
-
               /*And its group too... */ 
               (void)trv_tbl_mrk_grp_xtr(trv.nm_fll,False,trv_tbl); 
-
               /* Free */
               skp_nm_fll=(char *)nco_free(skp_nm_fll);
-
             } /* List of fixed templates  */
-
           } /* Mark fixed templates as non extracted */
-
       } /* Match */
     } /* Loop table */
   } /* Loop ensembles */
-
-
-  if(nco_dbg_lvl_get() >= nco_dbg_fl){
-    nco_prn_nsm(trv_tbl);
-  }
-
+  if(nco_dbg_lvl_get() >= nco_dbg_fl) nco_prn_nsm(trv_tbl);
 } /* nco_bld_nsm() */
 
 void
@@ -8980,10 +8910,7 @@ nco_prc_rel_mch                        /* [fnc] Relative match of object in tabl
         trv_sct *trv_2=&trv_tbl_2->lst[idx_tbl];
         rel_mch=True;
      
-        if(nco_dbg_lvl_get() >= nco_dbg_var){
-          (void)fprintf(stdout,"%s: INFO processing <%s> (file 1) and <%s> (file 2)\n",nco_prg_nm_get(),
-            var_trv->nm_fll,trv_2->nm_fll);
-        }
+        if(nco_dbg_lvl_get() >= nco_dbg_var) (void)fprintf(stdout,"%s: INFO processing <%s> (file 1) and <%s> (file 2)\n",nco_prg_nm_get(),var_trv->nm_fll,trv_2->nm_fll);
 
         (void)nco_prc_cmn(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,(nco_bool)False,(dmn_sct **)NULL,(int)0,nco_op_typ,var_trv,trv_2,trv_tbl_1,trv_tbl_2,flg_grp_1,flg_dfn);
       } /* A relative match was found */
@@ -8996,11 +8923,7 @@ nco_prc_rel_mch                        /* [fnc] Relative match of object in tabl
         trv_sct *trv_1=&trv_tbl_1->lst[idx_tbl];
         rel_mch=True;
 
-        if(nco_dbg_lvl_get() >= nco_dbg_var){
-          (void)fprintf(stdout,"%s: INFO processing <%s> (file 1) and <%s> (file 2)\n",nco_prg_nm_get(),
-            trv_1->nm_fll,var_trv->nm_fll);
-        }
-
+        if(nco_dbg_lvl_get() >= nco_dbg_var) (void)fprintf(stdout,"%s: INFO processing <%s> (file 1) and <%s> (file 2)\n",nco_prg_nm_get(),trv_1->nm_fll,var_trv->nm_fll);
 
         (void)nco_prc_cmn(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,(nco_bool)False,(dmn_sct **)NULL,(int)0,nco_op_typ,trv_1,var_trv,trv_tbl_1,trv_tbl_2,flg_grp_1,flg_dfn);
       } /* A relative match was found */
@@ -9232,23 +9155,18 @@ nco_grp_brd                            /* [fnc] Group broadcasting (ncbo only) *
   /* Sanity check */
   assert(nco_prg_id_get() == ncbo);
 
-  /* Match 2 tables (find common objects) and export common objects */
+  /* Match two tables (find common objects) and export common objects */
   (void)trv_tbl_mch(trv_tbl_1,trv_tbl_2,&cmn_lst,&nbr_cmn_nm);
 
-  /* Inquire if there is a variable with same absolute/relative path in both files */
+  /* Is there a variable with same absolute/relative path in both files? */
   (void)nco_cmn_var(trv_tbl_1,trv_tbl_2,cmn_lst,nbr_cmn_nm,&flg_cmn_abs,&flg_cmn_rel); 
 
   /* Inquire if ensembles have "ensemble" attribute (meaning they were done by ncge already) */
   (void)nco_nsm_att(nc_id_1,trv_tbl_1,&flg_nsm_att_1,&nsm_grp_nm_fll_prn_1); 
   (void)nco_nsm_att(nc_id_2,trv_tbl_2,&flg_nsm_att_2,&nsm_grp_nm_fll_prn_2);
 
-  /* There is a variable with same absolute path in both files. Do them and return */
-  if (flg_cmn_abs){
-
-    /* Process common variables (same path in both files) */
-    (void)nco_prc_cmn_var_nm_fll(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,cmn_lst,nbr_cmn_nm,flg_dfn);           
-
-  } /* There is a variable with same absolute path in both files */
+  /* Process variables with same absolute path in both files. Do them and return */
+  if(flg_cmn_abs) (void)nco_prc_cmn_var_nm_fll(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,cmn_lst,nbr_cmn_nm,flg_dfn);           
 
   /* Inquire about group broadcasting (ensembles and not ensembles) */
 
@@ -9257,7 +9175,7 @@ nco_grp_brd                            /* [fnc] Group broadcasting (ncbo only) *
   if(trv_tbl_2->nsm_nbr) flg_nsm_fl_2=True; else flg_nsm_fl_2=False;
 
   /* There are ensembles somewhere */
-  if (flg_nsm_fl_1 == True || flg_nsm_fl_2 == True){
+  if(flg_nsm_fl_1 == True || flg_nsm_fl_2 == True){
 
     /* File 1 has ensembles */
     if(flg_nsm_fl_1 == True){
@@ -9265,7 +9183,7 @@ nco_grp_brd                            /* [fnc] Group broadcasting (ncbo only) *
       if(nco_dbg_lvl_get() >= nco_dbg_dev){
         (void)fprintf(stdout,"%s: DEBUG %s ensembles from file 1\n",nco_prg_nm_get(),fnc_nm);
         nco_prn_nsm(trv_tbl_1);             
-      }
+      } /* endif dbg */
 
       /* File 2 has ensembles */
       if(flg_nsm_fl_2 == True){
@@ -9273,18 +9191,15 @@ nco_grp_brd                            /* [fnc] Group broadcasting (ncbo only) *
         if(nco_dbg_lvl_get() >= nco_dbg_dev){
           (void)fprintf(stdout,"%s: DEBUG %s ensembles from file 2\n",nco_prg_nm_get(),fnc_nm);
           nco_prn_nsm(trv_tbl_2);             
-        }
+        } /* endif dbg */
 
-        /* File 2 has ensembles in "special" places , defined in attributes */
-        if (flg_nsm_att_2){
+        /* File 2 has ensembles in "special" places, defined in attributes */
+        if(flg_nsm_att_2){
 
           if(nco_dbg_lvl_get() >= nco_dbg_dev){
             (void)fprintf(stdout,"%s: DEBUG %s ensemble names read from attributes from file 2\n",nco_prg_nm_get(),fnc_nm);
-            for(int idx_nm=0;idx_nm<nsm_grp_nm_fll_prn_2->nbr;idx_nm++){
-              (void)fprintf(stdout,"%s: DEBUG %s <%s>\n",nco_prg_nm_get(),fnc_nm,
-                nsm_grp_nm_fll_prn_2->lst[idx_nm].nm);          
-            }
-          }
+            for(int idx_nm=0;idx_nm<nsm_grp_nm_fll_prn_2->nbr;idx_nm++) (void)fprintf(stdout,"%s: DEBUG %s %s\n",nco_prg_nm_get(),fnc_nm,nsm_grp_nm_fll_prn_2->lst[idx_nm].nm);          
+          } /* endif dbg */
 
           /* Use table 1 as template for group creation */
           flg_grp_1=True;
@@ -9293,48 +9208,36 @@ nco_grp_brd                            /* [fnc] Group broadcasting (ncbo only) *
           (void)nco_prc_cmn_nsm_att(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,flg_grp_1,flg_dfn,nsm_grp_nm_fll_prn_2);              
 
           /* File 2 has ensembles in the expected places */
-        } else {
-
+        }else{
           /* ncbo -O mdl_1.nc mdl_2.nc out.nc */
-
           /* Use table 1 as template for group creation */
           flg_grp_1=True;
-
           /* Process (define, write) variables belonging to ensembles in *both* files  */
-          (void)nco_prc_cmn_nsm(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,flg_grp_1,flg_dfn);              
-
+          (void)nco_prc_cmn_nsm(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,flg_grp_1,flg_dfn);
         } /* File 2 has ensembles in the expected places */
 
-      }else if(flg_nsm_fl_2 == False){
-
+      }else if(!flg_nsm_fl_2){
         /* File 2 does NOT have ensembles */
-
         /* Inquire about file 2 having a common object from list of file 1 ensembles  */
         (void)nco_cmn_nsm_var(&flg_var_cmn,&flg_var_cmn_rth,&var_nm,&var_nm_rth,trv_tbl_1,trv_tbl_2);
 
         /* Common variables at root */
-        if (flg_var_cmn_rth){
-
+        if(flg_var_cmn_rth){
           /* file 2 has a common object at root  */
           /* ncbo -O mdl_1.nc obs.nc out.nc */
-
           /* Use table 1 as template for group creation */
           flg_grp_1=True;
 
           /* Process (define, write) variables belonging to ensembles only in 1 file  */
           (void)nco_prc_nsm(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,var_nm_rth,flg_grp_1,flg_dfn);              
-
           /* Common variables not at root */
-        } else if (flg_var_cmn){
-
+        }else if(flg_var_cmn){
           /* Use table 1 as template for group creation */
           flg_grp_1=True;
 
           /* Process (define, write) variables belonging to ensembles only in 1 file  */
           (void)nco_prc_nsm(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,var_nm,flg_grp_1,flg_dfn);              
-
-        }else {
-
+        }else{
           /* file 2 has no common objects   */
           (void)fprintf(stdout,"%s: ERROR no common variables found. HINT: %s expects to find at least one variable of the same name in similar locations in both input files. When such variables are not found in identical locations (i.e., on the same path) then %s attempts group broadcasting to find comparable variables in sub-groups and ensembles. This search for comparable variables has failed. Read more about group broadcasting at http://nco.sf.net/nco.html#grp_brd\n",nco_prg_nm_get() [...]
           nco_exit(EXIT_FAILURE);
@@ -9342,36 +9245,30 @@ nco_grp_brd                            /* [fnc] Group broadcasting (ncbo only) *
 
       } /* File 2 does NOT have ensembles */
 
-    }else if(flg_nsm_fl_1 == False){
-
+    }else if(!flg_nsm_fl_1){
       /* File 1 does NOT have ensembles */
-
       /* File 2 has ensembles */
-      if(flg_nsm_fl_2 == True){
+      if(flg_nsm_fl_2){
 
         if(nco_dbg_lvl_get() >= nco_dbg_dev){
           (void)fprintf(stdout,"%s: DEBUG %s ensembles from file 2\n",nco_prg_nm_get(),fnc_nm);
           nco_prn_nsm(trv_tbl_2);             
-        }
+        } /* endif */
 
         /* Inquire about file 1 having a common object from list of file 2 ensembles (NB: order of tables in parameter switched)  */
         (void)nco_cmn_nsm_var(&flg_var_cmn,&flg_var_cmn_rth,&var_nm,&var_nm_rth,trv_tbl_2,trv_tbl_1);
 
          /* Common variables at root */
-        if (flg_var_cmn_rth){
-
+        if(flg_var_cmn_rth){
           /* file 1 has a common object at root  */
           /* ncbo -O obs.nc mdl_1.nc  out.nc */
-
           /* Do NOT use table 1 as template for group creation */
           flg_grp_1=False;
 
           /* Process (define, write) variables belonging to ensembles only in 1 file  */
           (void)nco_prc_nsm(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,var_nm_rth,flg_grp_1,flg_dfn);              
-
           /* Common variables not at root */
-        } else if (flg_var_cmn){
-
+        }else if(flg_var_cmn){
           /* file 1 has a common object not at root  */
           /* ncra  -Y ncge -O mdl_3.nc ncge_out.nc 
           ncbo  -O --op_typ=add ncge_out.nc  mdl_3.nc  out.nc */
@@ -9381,26 +9278,21 @@ nco_grp_brd                            /* [fnc] Group broadcasting (ncbo only) *
 
           /* Process (define, write) variables belonging to ensembles only in 1 file  */
           (void)nco_prc_nsm(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,var_nm,flg_grp_1,flg_dfn);              
-
-        } else {
-
+        }else{
           /* file 1 has no common objects */
           (void)fprintf(stdout,"%s: ERROR no common variables found. HINT: %s expects to find at least one variable of the same name in similar locations in both input files. When such variables are not found in identical locations (i.e., on the same path) then %s attempts group broadcasting to find comparable variables in sub-groups and ensembles. This search for comparable variables has failed. Read more about group broadcasting at http://nco.sf.net/nco.html#grp_brd\n",nco_prg_nm_get() [...]
           nco_exit(EXIT_FAILURE);
-
         } /* ! flg_var_cmn_rth */
       } /* File 2 has ensembles */
     } /* File 1 does NOT have ensembles */
   } /* There are ensembles somewhere */
 
   /* There are NOT ensembles anywhere, but there are relative matches */
-  if (flg_nsm_fl_1 == False && flg_nsm_fl_2 == False && flg_cmn_rel == True){
-
+  if(!flg_nsm_fl_1 && !flg_nsm_fl_2 && flg_cmn_rel){
     if(nco_dbg_lvl_get() >= nco_dbg_dev) (void)fprintf(stdout,"%s: DEBUG %s Processing relative matches\n",nco_prg_nm_get(),fnc_nm);
 
     /* Process relative common objects (define or write) */
     (void)nco_prc_rel_cmn_nm(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_tbl_1,trv_tbl_2,cmn_lst,nbr_cmn_nm,flg_dfn);
-
   } /* There are NOT ensembles anywhere, but there are relative matches */
 
   /* Memory management for common names list */
@@ -9410,27 +9302,22 @@ nco_grp_brd                            /* [fnc] Group broadcasting (ncbo only) *
   if(var_nm){
     for(int idx=0;idx<var_nm->nbr;idx++) var_nm->lst[idx].nm=(char *)nco_free(var_nm->lst[idx].nm);
     var_nm=(nm_lst_sct *)nco_free(var_nm);
-  } 
+  } /* endif */
 
   if(var_nm_rth){
     for(int idx=0;idx<var_nm_rth->nbr;idx++) var_nm_rth->lst[idx].nm=(char *)nco_free(var_nm_rth->lst[idx].nm);
     var_nm_rth=(nm_lst_sct *)nco_free(var_nm_rth);
   } 
 
-  for(int idx_nm=0;idx_nm<nsm_grp_nm_fll_prn_2->nbr;idx_nm++){
-    nsm_grp_nm_fll_prn_2->lst[idx_nm].nm=(char *)nco_free(nsm_grp_nm_fll_prn_2->lst[idx_nm].nm);   
-  }
+  for(int idx_nm=0;idx_nm<nsm_grp_nm_fll_prn_2->nbr;idx_nm++)
+    nsm_grp_nm_fll_prn_2->lst[idx_nm].nm=(char *)nco_free(nsm_grp_nm_fll_prn_2->lst[idx_nm].nm);
   nsm_grp_nm_fll_prn_2=(nm_lst_sct *)nco_free(nsm_grp_nm_fll_prn_2);
 
-  for(int idx_nm=0;idx_nm<nsm_grp_nm_fll_prn_1->nbr;idx_nm++){
+  for(int idx_nm=0;idx_nm<nsm_grp_nm_fll_prn_1->nbr;idx_nm++)
     nsm_grp_nm_fll_prn_1->lst[idx_nm].nm=(char *)nco_free(nsm_grp_nm_fll_prn_1->lst[idx_nm].nm);   
-  }
   nsm_grp_nm_fll_prn_1=(nm_lst_sct *)nco_free(nsm_grp_nm_fll_prn_1);
-
-
 } /* nco_grp_brd() */
 
-
 void                                               
 nco_prc_cmn_nsm                        /* [fnc] Process (define, write) variables belonging to ensembles in both files (ncbo) */
 (const int nc_id_1,                    /* I [id] netCDF input-file ID */
@@ -9455,7 +9342,7 @@ nco_prc_cmn_nsm                        /* [fnc] Process (define, write) variable
   trv_sct *trv_1;    /* [sct] Table object */
   trv_sct *trv_2;    /* [sct] Table object */
 
-  if (flg_grp_1 == True){
+  if(flg_grp_1 == True){
 
     if(nco_dbg_lvl_get() >= nco_dbg_var){
       (void)fprintf(stdout,"%s: Processing ensembles from file 1\n",nco_prg_nm_get());
@@ -9495,7 +9382,7 @@ nco_prc_cmn_nsm                        /* [fnc] Process (define, write) variable
 
           /* If match object in table 2 does not exist, that's an error  */
         
-          if (!trv_2){
+          if(!trv_2){
             (void)fprintf(stdout,"%s: ERROR No match variable found for <%s>\n",nco_prg_nm_get(),trv_1->nm_fll);
             nco_exit(EXIT_FAILURE);
           }
@@ -9524,21 +9411,15 @@ nco_prc_cmn_nsm                        /* [fnc] Process (define, write) variable
           /* Get variable  */
           trv_sct *skp_trv=trv_tbl_var_nm_fll(skp_nm_fll,trv_tbl_1);
 
-          if (skp_trv){
-
-            /* Define/write fixed variables (ncbo) */
-            (void)nco_fix_dfn_wrt(nc_id_1,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,skp_trv,trv_tbl_1,flg_dfn);   
-
-          }
+	  /* Define/write fixed variables (ncbo) */
+          if(skp_trv) (void)nco_fix_dfn_wrt(nc_id_1,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,skp_trv,trv_tbl_1,flg_dfn);
 
         } /* List of fixed templates  */
 
       } /* Loop group members */
     } /* Loop ensembles */
 
-  } else if (flg_grp_1 == False) {
-
-
+  } else if(flg_grp_1 == False) {
 
   } /* ! flg_grp_1 */
 
@@ -9569,7 +9450,7 @@ nco_prc_nsm                            /* [fnc] Process (define, write) variable
   trv_sct *trv_2;    /* [sct] Table object */
 
   /* Using table 1 as template */
-  if (flg_grp_1 == True){
+  if(flg_grp_1 == True){
 
     if(nco_dbg_lvl_get() >= nco_dbg_var){
       (void)fprintf(stdout,"%s: Processing ensembles from table 1\n",nco_prg_nm_get());
@@ -9619,12 +9500,8 @@ nco_prc_nsm                            /* [fnc] Process (define, write) variable
             /* Get variable  */
             trv_sct *skp_trv=trv_tbl_var_nm_fll(skp_nm_fll,trv_tbl_1);
 
-            if (skp_trv){
-
-              /* Define/write fixed variables (ncbo) */
-              (void)nco_fix_dfn_wrt(nc_id_1,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,skp_trv,trv_tbl_1,flg_dfn);   
-
-            }
+	    /* Define/write fixed variables (ncbo) */
+            if(skp_trv) (void)nco_fix_dfn_wrt(nc_id_1,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,skp_trv,trv_tbl_1,flg_dfn);
 
           } /* List of fixed templates  */
 
@@ -9657,7 +9534,7 @@ nco_prc_nsm                            /* [fnc] Process (define, write) variable
 
     /* Using table 2 as template; same logic looping table 2 */
 
-  } else if (flg_grp_1 == False){
+  } else if(flg_grp_1 == False){
 
     if(nco_dbg_lvl_get() >= nco_dbg_var){
       (void)fprintf(stdout,"%s: Processing ensembles from table 2\n",nco_prg_nm_get());
@@ -9707,12 +9584,9 @@ nco_prc_nsm                            /* [fnc] Process (define, write) variable
             /* Get variable  */
             trv_sct *skp_trv=trv_tbl_var_nm_fll(skp_nm_fll,trv_tbl_2);
 
-            if (skp_trv){
-
-              /* Define/write fixed variables (ncbo) */
-              (void)nco_fix_dfn_wrt(nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,skp_trv,trv_tbl_2,flg_dfn);   
+	    /* Define/write fixed variables (ncbo) */
+            if(skp_trv) (void)nco_fix_dfn_wrt(nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,skp_trv,trv_tbl_2,flg_dfn);
 
-            }
           } /* List of fixed templates  */
 
           /* Loop list of variables from other file */
@@ -9920,16 +9794,13 @@ nco_prc_rel_cmn_nm                     /* [fnc] Process common relative objects
         has_mch=nco_prc_rel_mch(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_1,flg_tbl_1,flg_grp_1,trv_tbl_1,trv_tbl_2,flg_dfn);
 
         /* Match not found in file 2, copy instead object from file 1 as fixed to output */
-        if(!has_mch){
-          (void)nco_cpy_fix(nc_id_1,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,(nco_bool)False,(dmn_sct **)NULL,(int)0,trv_1,trv_tbl_1,flg_dfn);
-        }
+        if(!has_mch) (void)nco_cpy_fix(nc_id_1,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,(nco_bool)False,(dmn_sct **)NULL,(int)0,trv_1,trv_tbl_1,flg_dfn);
 
       } /* Object exists and is flagged for extraction only in file 1 */
     }/* Process objects in list */
 
-
     /* File 2 "larger" (typically model file) (e.g ncbo -O obs.nc cmip5.nc out.nc ) */
-  } else if (flg_grt_1 == False) { 
+  } else if(flg_grt_1 == False) { 
 
     /* Process objects in list */
     for(int idx_cmn=0;idx_cmn<nbr_cmn_nm;idx_cmn++){
@@ -9962,9 +9833,7 @@ nco_prc_rel_cmn_nm                     /* [fnc] Process common relative objects
         has_mch=nco_prc_rel_mch(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,nco_op_typ,trv_2,flg_tbl_1,flg_grp_1,trv_tbl_1,trv_tbl_2,flg_dfn);
 
         /* Match not found in file 2, copy instead object from file 2 as fixed to output */
-        if(!has_mch){
-          (void)nco_cpy_fix(nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,(nco_bool)False,(dmn_sct **)NULL,(int)0,trv_2,trv_tbl_2,flg_dfn);
-        }
+        if(!has_mch) (void)nco_cpy_fix(nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,(nco_bool)False,(dmn_sct **)NULL,(int)0,trv_2,trv_tbl_2,flg_dfn);
 
       } /* Object exists and is flagged for extraction only in file 2 */
     } /* Process objects in list */
@@ -9972,7 +9841,6 @@ nco_prc_rel_cmn_nm                     /* [fnc] Process common relative objects
 
 } /* nco_prc_rel_cmn_nm() */
 
-
 void                  
 nco_chk_nsm                            /* [fnc] Check if ensembles are valid  */                                
 (const int in_id,                      /* I [id] netCDF input-file ID of current file, starting with first */
@@ -10132,7 +10000,7 @@ nco_chk_nsm                            /* [fnc] Check if ensembles are valid  */
               }
 
               /* No hyperslab, compare dimension */
-              if (flg_has_lmt == False){
+              if(flg_has_lmt == False){
                 lmn_cnt*=dmn_sz;
                 /* Compare sizes */
                 if (dmn_sz != (long)tpl_sz){
@@ -10265,7 +10133,7 @@ nco_nsm_att                            /* [fnc] Inquire if ensemble parent group
 void                      
 nco_rad                                /* [fnc] Retain all dimensions */
 (const int nc_out_id,                  /* I [ID] netCDF output file ID */
- int nbr_dmn_var_out,                  /* I [nbr] Number of dimensions for variable on output  */
+ const int nbr_dmn_var_out,            /* I [nbr] Number of dimensions for variable on output  */
  const dmn_cmn_sct * const dmn_cmn,    /* I [sct] Dimension structure in output file */
  const trv_tbl_sct * const trv_tbl)    /* I [sct] GTT (Group Traversal Table) */
 {
@@ -10288,34 +10156,26 @@ nco_rad                                /* [fnc] Retain all dimensions */
     for(int idx_dmn=0;idx_dmn<nbr_dmn_var_out;idx_dmn++){
 
       /* Match full name */
-      if(strcmp(dmn_trv.nm_fll,dmn_cmn[idx_dmn].nm_fll) == 0){
-
+      if(!strcmp(dmn_trv.nm_fll,dmn_cmn[idx_dmn].nm_fll)){
         has_dmn=True;
         break;
       }
     } /* Loop variable dimensions on output  */
 
     /* Dimension not found, make it */
-    if (has_dmn == False){
+    if(!has_dmn){
 
-      if(nco_dbg_lvl_get() >= nco_dbg_dev){
-        (void)fprintf(stdout,"%s: DEBUG %s making <%s> to output\n",nco_prg_nm_get(),fnc_nm,
-          dmn_trv.nm_fll);
-      }
+      if(nco_dbg_lvl_get() >= nco_dbg_dev) (void)fprintf(stdout,"%s: DEBUG %s making <%s> to output\n",nco_prg_nm_get(),fnc_nm,dmn_trv.nm_fll);
       grp_dmn_out_fll=(char *)strdup(dmn_trv.grp_nm_fll);
 
       /* Test existence of group and create if not existent */
-      if(nco_inq_grp_full_ncid_flg(nc_out_id,grp_dmn_out_fll,&grp_dmn_out_id)){
+      if(nco_inq_grp_full_ncid_flg(nc_out_id,grp_dmn_out_fll,&grp_dmn_out_id))
         nco_def_grp_full(nc_out_id,grp_dmn_out_fll,&grp_dmn_out_id);
-      }
 
       /* Define dimension and obtain dimension ID */
       (void)nco_def_dim(grp_dmn_out_id,dmn_trv.nm,dmn_trv.sz,&dmn_id_out);
 
-      if(nco_dbg_lvl_get() >= nco_dbg_dev){
-        (void)fprintf(stdout,"%s: DEBUG %s Defined dimension <%s><%s>#%d\n",nco_prg_nm_get(),fnc_nm,
-          grp_dmn_out_fll,dmn_trv.nm,dmn_id_out);
-      }
+      if(nco_dbg_lvl_get() >= nco_dbg_dev) (void)fprintf(stdout,"%s: DEBUG %s Defined dimension <%s><%s>#%d\n",nco_prg_nm_get(),fnc_nm,grp_dmn_out_fll,dmn_trv.nm,dmn_id_out);
 
       /* Memory management after defining current output dimension */
       if(grp_dmn_out_fll) grp_dmn_out_fll=(char *)nco_free(grp_dmn_out_fll);
@@ -10390,7 +10250,6 @@ nco_prc_cmn_nsm_att                    /* [fnc] Process (define, write) variable
 
               /* Both variables exist  */
               if(trv_1 && trv_2){
-
                 if(nco_dbg_lvl_get() >= nco_dbg_var) (void)fprintf(stdout,"%s: INFO common variable to output <%s>\n",nco_prg_nm_get(),trv_1->nm_fll); 
                 /* Process common object */
                 (void)nco_prc_cmn(nc_id_1,nc_id_2,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,CNV_CCM_CCSM_CF,(nco_bool)False,(dmn_sct **)NULL,(int)0,nco_op_typ,trv_1,trv_2,trv_tbl_1,trv_tbl_2,flg_grp_1,flg_dfn);
@@ -10415,7 +10274,7 @@ nco_prc_cmn_nsm_att                    /* [fnc] Process (define, write) variable
           trv_sct *skp_trv=trv_tbl_var_nm_fll(skp_nm_fll,trv_tbl_1);
 
           /* Define/write fixed variables (ncbo) */
-          if (skp_trv) (void)nco_fix_dfn_wrt(nc_id_1,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,skp_trv,trv_tbl_1,flg_dfn);   
+          if(skp_trv) (void)nco_fix_dfn_wrt(nc_id_1,nc_out_id,cnk,dfl_lvl,gpe,gpe_nm,nbr_gpe_nm,skp_trv,trv_tbl_1,flg_dfn);   
                       
         } /* List of fixed templates  */
       } /* Loop group members */
@@ -10425,7 +10284,7 @@ nco_prc_cmn_nsm_att                    /* [fnc] Process (define, write) variable
 } /* nco_prc_cmn_nsm_att() */
 
 void
-nco_prt_dmn                            /* [fnc] Print dimensions (debug) */
+nco_prn_dmn                            /* [fnc] Print dimensions (debug) */
 (const int nc_id,                      /* I [ID] netCDF file ID */
  const char * const grp_nm_fll,        /* I [sng] Group name full */
  const char * const var_nm,            /* I [sng] Variable name relative */
@@ -10434,7 +10293,7 @@ nco_prt_dmn                            /* [fnc] Print dimensions (debug) */
 {
   /* Purpose: Print dimensions (debug) */
 
-  const char fnc_nm[]="nco_prt_dmn()"; /* [sng] Function name */
+  const char fnc_nm[]="nco_prn_dmn()"; /* [sng] Function name */
 
   char dmn_nm_var[NC_MAX_NAME+1];      /* [sng] Dimension name for *variable* */ 
 
@@ -10462,15 +10321,9 @@ nco_prt_dmn                            /* [fnc] Print dimensions (debug) */
 
   /* Loop over dimensions of variable */
   for(int idx_var_dim=0;idx_var_dim<nbr_dmn_var;idx_var_dim++){
-
     /* Get dimension name */
     (void)nco_inq_dim(grp_id,dmn_id_var[idx_var_dim],dmn_nm_var,&dmn_sz);
-
-    if(nco_dbg_lvl_get() == nco_dbg_old)
-      (void)fprintf(stdout,"%s: DEBUG %s <%s><%s> #%d API size is %ld\n",nco_prg_nm_get(),fnc_nm,
-      var_nm_fll,dmn_nm_var,dmn_id_var[idx_var_dim],dmn_sz); 
-
-
+    if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: DEBUG %s <%s><%s> #%d API size is %ld\n",nco_prg_nm_get(),fnc_nm,var_nm_fll,dmn_nm_var,dmn_id_var[idx_var_dim],dmn_sz); 
   } /* Loop over dimensions of variable */
 
   trv_sct *var_trv=NULL;
@@ -10485,21 +10338,20 @@ nco_prt_dmn                            /* [fnc] Print dimensions (debug) */
 
     int dmn_id=-1;
 
-    if (var_trv->var_dmn[idx_var_dim].crd){
+    if(var_trv->var_dmn[idx_var_dim].crd){
       dmn_sz=var_trv->var_dmn[idx_var_dim].crd->sz;
       dmn_id=var_trv->var_dmn[idx_var_dim].crd->dmn_id;
-    }else if (var_trv->var_dmn[idx_var_dim].ncd) {
+    }else if(var_trv->var_dmn[idx_var_dim].ncd){
       dmn_sz=var_trv->var_dmn[idx_var_dim].ncd->sz;
       dmn_id=var_trv->var_dmn[idx_var_dim].ncd->dmn_id;
-    } else assert (0);
+    }else assert(0);
 
-    (void)fprintf(stdout,"%s: DEBUG %s <%s><%s> #%d table size is %ld\n",nco_prg_nm_get(),fnc_nm,
-      var_nm_fll,var_trv->var_dmn[idx_var_dim].dmn_nm_fll,dmn_id,dmn_sz); 
+    (void)fprintf(stdout,"%s: DEBUG %s <%s><%s> #%d table size is %ld\n",nco_prg_nm_get(),fnc_nm,var_nm_fll,var_trv->var_dmn[idx_var_dim].dmn_nm_fll,dmn_id,dmn_sz); 
 
   } /* Loop over dimensions of variable */
 
   dmn_id_var=(int *)nco_free(dmn_id_var); 
-} /* nco_prt_dmn() */
+} /* nco_prn_dmn() */
 
 void
 nco_nsm_wrt_att                  /* [fnc] Save ncge metadata attribute */
diff --git a/src/nco/nco_grp_utl.h b/src/nco/nco_grp_utl.h
index 6994f9c..ef0a224 100644
--- a/src/nco/nco_grp_utl.h
+++ b/src/nco/nco_grp_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_utl.h,v 1.516 2014/09/23 18:43:06 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_utl.h,v 1.520 2015/02/04 02:44:45 zender Exp $ */
 
 /* Purpose: Group utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -88,7 +88,7 @@ nco_grp_stk_get                       /* [fnc] Initialize and obtain group itera
 
 int                                   /* [rcd] Return code */
 nco_grp_stk_nxt                       /* [fnc] Find and return next group ID */
-(grp_stk_sct * const grp_stk,         /* O [sct] Group stack pointer */
+(grp_stk_sct * const grp_stk,         /* I/O [sct] Group stack pointer */
  int * const grp_id);                 /* O [ID] Group ID */
    
 grp_stk_sct *                        /* O [sct] Group stack pointer */
@@ -193,7 +193,7 @@ nco_xtr_lst_prn                        /* [fnc] Print name-ID structure list */
  const int nm_id_nbr);                 /* I [nbr] Number of name-ID structures in list */
 
 void                          
-nco_prn_dmn                           /* [fnc] Print dimensions for a group  */
+nco_prn_dmn_grp                       /* [fnc] Print dimensions for a group  */
 (const int nc_id,                     /* I [ID] File ID */
  const char * const grp_nm_fll);      /* I [sng] Full name of group */
 
@@ -288,9 +288,9 @@ nco_bld_var_dmn                       /* [fnc] Assign variables dimensions to ei
 (trv_tbl_sct * const trv_tbl);        /* I/O [sct] Traversal table */
 
 crd_sct *                             /* O [sct] Coordinate object */
-nco_scp_var_crd                       /* [fnc] Is coordinate in scope of variable?  */
-(trv_sct *var_trv,                    /* I [sct] Variable object */
- dmn_trv_sct *dmn_trv);               /* I [sct] Dimension object */
+nco_scp_var_crd                       /* [fnc] Return in scope coordinate for variable  */
+(const trv_sct * const var_trv,       /* I [sct] Variable object */
+ dmn_trv_sct * const dmn_trv);         /* I [sct] Dimension object */
 
 int                                  /* O [nbr] Comparison result */
 nco_cmp_crd_dpt                      /* [fnc] Compare two crd_sct's by group depth */
@@ -402,7 +402,7 @@ nco_var_prc_fix_trv                    /* [fnc] Store processed and fixed variab
 void
 nco_var_typ_trv                        /* [fnc] Transfer variable type into GTT */
 (const int xtr_nbr,                    /* I [nbr] Number of extracted variables */
- var_sct **var,                        /* I [sct] Array of extracted variables */
+ CST_X_PTR_CST_PTR_CST_Y(var_sct,var), /* I [sct] Array of extracted variables */
  trv_tbl_sct * const trv_tbl);         /* I/O [sct] Traversal table */
 
 var_sct *                              /* O [sct] Variable structure */
@@ -445,7 +445,6 @@ nco_var_dmn_rdr_mtd_trv               /* [fnc] Determine and set new dimensional
  const int dmn_rdr_nbr,               /* I [nbr] Number of dimension to re-order */
  const nco_bool *dmn_rvr_rdr);        /* I [flg] Reverse dimension */
 
-
 void
 nco_var_dmn_rdr_val_trv               /* [fnc] Change dimension ordering of variable values */
 (const var_sct * const var_in,        /* I [ptr] Variable with metadata and data in original order */
@@ -700,7 +699,7 @@ nco_lmt_std_att_lat_lon               /* [fnc] Apply limits to variable in table
  const int dmn_id,                    /* I [id] ID of dimension to apply the limits */
  nco_bool FORTRAN_IDX_CNV,            /* I [flg] Hyperslab indices obey Fortran convention */
  nco_bool MSA_USR_RDR,                /* I [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
- trv_tbl_sct * const trv_tbl);       /* I/O [sct] GTT (Group Traversal Table) */
+ trv_tbl_sct * const trv_tbl);        /* I/O [sct] GTT (Group Traversal Table) */
 
 void
 nco_lmt_aux                           /* [fnc] Apply auxiliary -X limits (Auxiliary function called by different functions ) */
@@ -720,7 +719,8 @@ nco_dmn_lmt                            /* [fnc] Convert a lmt_sct array to dmn_s
  dmn_sct ***dmn);                      /* O [sct] dmn_sct array  */
 
 void
-nco_prn_nsm                           /* [fnc] Print ensembles  */                       (const trv_tbl_sct * const trv_tbl);  /* I [sct] Traversal table */
+nco_prn_nsm                           /* [fnc] Print ensembles  */
+(const trv_tbl_sct * const trv_tbl);  /* I [sct] Traversal table */
 
 void
 nco_bld_nsm                           /* [fnc] Build ensembles */
@@ -865,7 +865,7 @@ nco_prc_nsm                            /* [fnc] Process (define, write) variable
  trv_tbl_sct * const trv_tbl_2,        /* I/O [sct] GTT (Group Traversal Table) */
  const nm_lst_sct * const var_lst,     /* I [sct] Array of common variable names from file not having ensembles */ 
  const nco_bool flg_grp_1,             /* I [flg] Use table 1 as template for group creation on True, otherwise use table 2 */
- const nco_bool flg_dfn);               /* I [flg] Action type (True for define variables, False for write variables ) */
+ const nco_bool flg_dfn);              /* I [flg] Action type (True for define variables, False for write variables ) */
 
 void                          
 nco_fix_dfn_wrt                        /* [fnc] Define/write fixed variables (ncbo) */
@@ -921,7 +921,7 @@ nco_nsm_att                            /* [fnc] Inquire if ensemble parent group
 void                      
 nco_rad                                /* [fnc] Retain all dimensions */
 (const int nc_out_id,                  /* I [ID] netCDF output file ID */
- int nbr_dmn_var_out,                  /* I [nbr] Number of dimensions for variable on output  */
+ const int nbr_dmn_var_out,            /* I [nbr] Number of dimensions for variable on output  */
  const dmn_cmn_sct * const dmn_cmn,    /* I [sct] Dimension structure in output file */
  const trv_tbl_sct * const trv_tbl);   /* I [sct] GTT (Group Traversal Table) */
 
@@ -944,7 +944,7 @@ nco_prc_cmn_nsm_att                    /* [fnc] Process (define, write) variable
  nm_lst_sct *nsm_grp_nm_fll_prn);      /* I/O [sct] Array of ensemble paths read in the attributes */ 
 
 void
-nco_prt_dmn                            /* [fnc] Print dimensions (debug) */
+nco_prn_dmn                            /* [fnc] Print dimensions (debug) */
 (const int nc_id,                      /* I [ID] netCDF file ID */
  const char * const grp_nm_fll,        /* I [sng] Group name full */
  const char * const var_nm,            /* I [sng] Variable name relative */
@@ -952,7 +952,7 @@ nco_prt_dmn                            /* [fnc] Print dimensions (debug) */
  trv_tbl_sct * const trv_tbl);         /* I/O [sct] GTT (Group Traversal Table) */
 
 void
-nco_nsm_wrt_att                  /* [fnc] Save ncge metadata attribute */
+nco_nsm_wrt_att                      /* [fnc] Save ncge metadata attribute */
 (const int nc_id,                    /* I [ID] netCDF input file ID */
  const int out_id,                   /* I [ID] netCDF output file ID */
  const gpe_sct * const gpe,          /* I [sct] GPE structure */
diff --git a/src/nco/nco_lmt.c b/src/nco/nco_lmt.c
index 215d23e..3ba1112 100644
--- a/src/nco/nco_lmt.c
+++ b/src/nco/nco_lmt.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_lmt.c,v 1.213 2014/10/03 22:03:22 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_lmt.c,v 1.214 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Hyperslab limits */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_lmt.h" /* Hyperslab limits */
@@ -1823,7 +1823,7 @@ nco_lmt_evl_dmn_crd            /* [fnc] Parse user-specified limits into hypersl
 
     /* Negative integer as min or max element of hyperslab specification indicates offset from end
        pharoahs--20120708 Negative integers produce domain error
-       20120709--20141001 Negative integer is elements away from last element, e.g., -1 is penultimate element
+       20120709--20151001 Negative integer is elements away from last element, e.g., -1 is penultimate element
        20141002--forever  -1 is last element, e.g., -2 is penultimate element, -N is first element (Python convention) */
     nco_bool flg_old_usg=False;
     if(lmt.min_idx == 0L && lmt.min_sng)
diff --git a/src/nco/nco_lmt.h b/src/nco/nco_lmt.h
index d830521..4081c10 100644
--- a/src/nco/nco_lmt.h
+++ b/src/nco/nco_lmt.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_lmt.h,v 1.70 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_lmt.h,v 1.71 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Hyperslab limits */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_lst_utl.c b/src/nco/nco_lst_utl.c
index 1d8fdd3..877913a 100644
--- a/src/nco/nco_lst_utl.c
+++ b/src/nco/nco_lst_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_lst_utl.c,v 1.85 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_lst_utl.c,v 1.88 2015/02/04 04:16:24 zender Exp $ */
 
 /* Purpose: List utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_lst_utl.h" /* List utilities */
@@ -100,7 +100,8 @@ nco_fmt_sng_printf_subst /* [fnc] Replace printf() format statements */
     (void)sprintf(fmt_sng_new+mch_psn_srt+2,"%s",fmt_sng+mch_psn_end+1);
   } /* !mch_nbr */
   
-  if(nco_dbg_lvl_get() > 3) (void)fprintf(stderr,"%s: DEBUG %s reports that the user-supplied formatting string \"%s\" has %d matches to the regular expression \"%s\", which has %zu parenthesized sub-expressions. The first match, if any, begins at offset %d and ends at offset %d and is %d characters long. The revised format string is \"%s\"\n",nco_prg_nm_get(),fnc_nm,fmt_sng,mch_nbr,rx_sng,rx_prn_sub_xpr_nbr,mch_psn_srt,mch_psn_end,mch_psn_end-mch_psn_srt+1,fmt_sng_new);
+  /* MSVC uses %I64d not %lld */
+  if(nco_dbg_lvl_get() > 3) (void)fprintf(stderr,"%s: DEBUG %s reports that the user-supplied formatting string \"%s\" has %d matches to the regular expression \"%s\", which has %zu parenthesized sub-expressions. The first match, if any, begins at offset %ld and ends at offset %ld and is %ld characters long. The revised format string is \"%s\"\n",nco_prg_nm_get(),fnc_nm,fmt_sng,mch_nbr,rx_sng,rx_prn_sub_xpr_nbr,(long int)mch_psn_srt,(long int)mch_psn_end,(long int)(mch_psn_end-mch_psn_sr [...]
 
   regfree(rx); /* Free regular expression data structure */
   rx=(regex_t *)nco_free(rx);
@@ -192,7 +193,7 @@ nco_srt_ntg /* [fnc] Sort array of integers */
   /* Purpose: Stub for Numerical Recipes-compatible indexx() routine */
   long foo=sizeof(lmn_nbr)+sizeof(arr_in)+sizeof(idx); /* CEWI */
   foo++; /* CEWI */
-  (void)fprintf(stdout,"%s: ERROR nco_srt_ntg() routine should not be called\n",nco_prg_nm_get());
+  if(foo) (void)fprintf(stdout,"%s: ERROR nco_srt_ntg() routine should not be called\n",nco_prg_nm_get());
   nco_exit(EXIT_FAILURE);
 } /* end nco_srt_ntg() */
 
@@ -205,7 +206,7 @@ nco_srt_lph /* [fnc] Sort array of strings */
   /* Purpose: Stub for Numerical Recipes-compatible indexx_alpha() routine */
   long foo=sizeof(lmn_nbr)+sizeof(arr_in)+sizeof(idx); /* CEWI */
   foo++; /* CEWI */
-  (void)fprintf(stdout,"%s: ERROR nco_srt_lph() routine should not be called\n",nco_prg_nm_get());
+  if(foo) (void)fprintf(stdout,"%s: ERROR nco_srt_lph() routine should not be called\n",nco_prg_nm_get());
   nco_exit(EXIT_FAILURE);
 } /* end nco_srt_lph() */
 
diff --git a/src/nco/nco_lst_utl.h b/src/nco/nco_lst_utl.h
index 9229f46..ae60434 100644
--- a/src/nco/nco_lst_utl.h
+++ b/src/nco/nco_lst_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_lst_utl.h,v 1.55 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_lst_utl.h,v 1.56 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: List utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_md5.c b/src/nco/nco_md5.c
index e21baeb..1bd71b9 100644
--- a/src/nco/nco_md5.c
+++ b/src/nco/nco_md5.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_md5.c,v 1.22 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_md5.c,v 1.23 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: NCO utilities for MD5 digests */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -198,7 +198,7 @@ nco_md5_chk_ram /* [fnc] Perform MD5 digest on hyperslab in RAM */
   L. Peter Deutsch
   ghost at aladdin.com
 */
-/* $Id: nco_md5.c,v 1.22 2014/06/15 21:06:23 zender Exp $ */
+/* $Id: nco_md5.c,v 1.23 2014/12/31 01:50:07 zender Exp $ */
 /*
   Independent implementation of MD5 (RFC 1321).
   
diff --git a/src/nco/nco_md5.h b/src/nco/nco_md5.h
index c969ba3..5126657 100644
--- a/src/nco/nco_md5.h
+++ b/src/nco/nco_md5.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_md5.h,v 1.16 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_md5.h,v 1.17 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Description (definition) of MD5 digest functions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -94,7 +94,7 @@ extern "C" {
   ghost at aladdin.com
   
 */
-/* $Id: nco_md5.h,v 1.16 2014/06/15 21:06:23 zender Exp $ */
+/* $Id: nco_md5.h,v 1.17 2014/12/31 01:50:07 zender Exp $ */
 /*
   Independent implementation of MD5 (RFC 1321).
   
diff --git a/src/nco/nco_mmr.c b/src/nco/nco_mmr.c
index 95c909b..c9b359c 100644
--- a/src/nco/nco_mmr.c
+++ b/src/nco/nco_mmr.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mmr.c,v 1.66 2014/07/10 22:33:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mmr.c,v 1.67 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Memory management */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage of NCO memory allocation routines nco_malloc(), nco_malloc_flg(), and nco_malloc_dbg():
diff --git a/src/nco/nco_mmr.h b/src/nco/nco_mmr.h
index e718cd2..8c38bf4 100644
--- a/src/nco/nco_mmr.h
+++ b/src/nco/nco_mmr.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mmr.h,v 1.38 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mmr.h,v 1.39 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Memory management */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_mpi.h b/src/nco/nco_mpi.h
index 6720b26..6ef0573 100644
--- a/src/nco/nco_mpi.h
+++ b/src/nco/nco_mpi.h
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mpi.h,v 1.24 2014/07/11 02:13:51 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mpi.h,v 1.25 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: MPI utilities */
 
@@ -13,9 +13,9 @@
    Should _any_ MPI dependencies be in libnco.a?
    Cross-platform link weirdness (e.g., AIX) makes MPI dependencies in libnco.a fragile */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_msa.c b/src/nco/nco_msa.c
index 9e23f99..26c0e84 100644
--- a/src/nco/nco_msa.c
+++ b/src/nco/nco_msa.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_msa.c,v 1.267 2014/10/02 01:04:32 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_msa.c,v 1.284 2015/02/07 05:42:35 zender Exp $ */
 
 /* Purpose: Multi-slabbing algorithm */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_msa.h" /* Multi-slabbing algorithm */
@@ -12,7 +12,7 @@
 void *
 nco_msa_rcr_clc /* [fnc] Multi-slab algorithm (recursive routine, returns a single slab pointer */
 (int dpt_crr, /* [nbr] Current depth, we start at 0 */
- int dpt_crr_max, /* [nbr] Maximium depth (i.e., number of dimensions in variable (does not change) */
+ int dpt_crr_max, /* [nbr] Maximum depth (i.e., number of dimensions in variable (does not change) */
  lmt_sct **lmt, /* [sct] Limits of current hyperslabs (these change as we recurse) */
  lmt_msa_sct **lmt_lst, /* [sct] List of limits in each dimension (this remains STATIC as we recurse) */
  var_sct *vara) /* [sct] Information for routine to read variable information and pass information between calls */
@@ -1248,7 +1248,7 @@ nco_cpy_var_val_mlt_lmt_trv         /* [fnc] Copy variable data from input to ou
 
   assert(nco_obj_typ_var == var_trv->nco_typ);
 
-  /* Local copy of object name */ 
+  /* Local copy of object name */
   strcpy(var_nm,var_trv->nm);                
 
   /* Get ID for requested variable from both files */
@@ -1328,8 +1328,8 @@ nco_cpy_var_val_mlt_lmt_trv         /* [fnc] Copy variable data from input to ou
 	  dmn_map_cnt=(long *)nco_malloc(nbr_dim*sizeof(long));
 	  dmn_map_srt=(long *)nco_malloc(nbr_dim*sizeof(long));
 	} /* nbr_dim != 1 */
-	// Following line would be correct were an adequately sized phony dimension declared and ready to accept this many characters
-	// dmn_map_cnt[0]=var_out.sz;
+	/* Following line would be correct were an adequately sized phony dimension declared and ready to accept this many characters */
+	/* dmn_map_cnt[0]=var_out.sz; */
 	dmn_map_cnt[0]=1L;
 	dmn_map_srt[0]=0L;
 	(void)nco_put_vara(out_id,var_out_id,dmn_map_srt,dmn_map_cnt,var_out.val.sngp[0],var_typ_out);
@@ -1345,6 +1345,17 @@ nco_cpy_var_val_mlt_lmt_trv         /* [fnc] Copy variable data from input to ou
 
   /* Write */
   if(flg_write){
+    int ppc; /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+    nco_bool flg_nsd; /* [flg] PPC algorithm is NSD */
+    ppc=var_trv->ppc;
+    flg_nsd=var_trv->flg_nsd;
+    if(ppc != NC_MAX_INT){
+      var_out.type=var_typ_out;
+      var_out.id=var_out_id;
+      nco_mss_val_get(out_id,&var_out);
+      if(flg_nsd) (void)nco_var_bitmask(ppc,var_out.type,var_out.sz,var_out.has_mss_val,var_out.mss_val,var_out.val); else (void)nco_var_around(ppc,var_out.type,var_out.sz,var_out.has_mss_val,var_out.mss_val,var_out.val);
+    } /* endif */
+
     if(nbr_dim == 0) (void)nco_put_var1(out_id,var_out_id,0L,var_out.val.vp,var_typ_out); else (void)nco_put_vara(out_id,var_out_id,dmn_map_srt,dmn_map_cnt,var_out.val.vp,var_typ_out);
   } /* !flg_write */
 
@@ -1422,7 +1433,7 @@ nco_cpy_msa_lmt                     /* [fnc] Copy MSA struct from table to local
 
         if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"Warning...no limit zone\n "); 
 
-        /* Alloc 1 dummy limit */
+        /* Allocate one dummy limit */
         (*lmt_msa)[dmn_idx_var]->lmt_dmn_nbr=1;
         (*lmt_msa)[dmn_idx_var]->lmt_dmn=(lmt_sct **)nco_malloc(1*sizeof(lmt_sct *));
         (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]=(lmt_sct *)nco_malloc(sizeof(lmt_sct));
@@ -1438,8 +1449,8 @@ nco_cpy_msa_lmt                     /* [fnc] Copy MSA struct from table to local
       } /* Make a limit to read all */
     } /* If there are limits for this variable dimension, get MSA from table */
 
-    /* This dimension does not has a coordinate variable, it must have a unique dimension pointer */
-    else if (var_trv->var_dmn[dmn_idx_var].is_crd_var == False){
+    /* This dimension does not have a coordinate variable, it must have a unique dimension pointer */
+    else if(var_trv->var_dmn[dmn_idx_var].is_crd_var == False){
 
       /* Get number of limits */
       int lmt_dmn_nbr=var_trv->var_dmn[dmn_idx_var].ncd->lmt_msa.lmt_dmn_nbr;
@@ -1513,7 +1524,7 @@ nco_msa_var_get_trv                 /* [fnc] Get variable data from disk taking
   lmt_msa_sct **lmt_msa;
   lmt_sct **lmt;
 
-  nc_type mss_typ_tmp;
+  nc_type mss_typ_tmp=NC_NAT; /* CEWI */
 
   trv_sct *var_trv;
 
@@ -1545,9 +1556,9 @@ nco_msa_var_get_trv                 /* [fnc] Get variable data from disk taking
   (void)nco_cpy_msa_lmt(var_trv,&lmt_msa);
 
   if(nco_dbg_lvl_get() == nco_dbg_old){
-    (void)fprintf(stdout,"%s: DEBUG %s reading <%s>\n",nco_prg_nm_get(),fnc_nm,var_trv->nm_fll);
+    (void)fprintf(stdout,"%s: DEBUG %s reports reading %s\n",nco_prg_nm_get(),fnc_nm,var_trv->nm_fll);
     for(int idx_dmn=0;idx_dmn<var_trv->nbr_dmn;idx_dmn++){
-      (void)fprintf(stdout,"%s: DEBUG %s <%s> elements %ld",nco_prg_nm_get(),fnc_nm,lmt_msa[idx_dmn]->dmn_nm,lmt_msa[idx_dmn]->dmn_cnt);
+      (void)fprintf(stdout,"%s: DEBUG %s reports dimension %s has dmn_cnt = %ld",nco_prg_nm_get(),fnc_nm,lmt_msa[idx_dmn]->dmn_nm,lmt_msa[idx_dmn]->dmn_cnt);
       for(int idx_lmt=0;idx_lmt<lmt_msa[idx_dmn]->lmt_dmn_nbr;idx_lmt++) (void)fprintf(stdout," : %ld (%ld->%ld)",lmt_msa[idx_dmn]->lmt_dmn[idx_lmt]->cnt,lmt_msa[idx_dmn]->lmt_dmn[idx_lmt]->srt,lmt_msa[idx_dmn]->lmt_dmn[idx_lmt]->end);
       (void)fprintf(stdout,"\n");
     } /* end loop over dimensions */
diff --git a/src/nco/nco_msa.h b/src/nco/nco_msa.h
index bbe9c38..94f6563 100644
--- a/src/nco/nco_msa.h
+++ b/src/nco/nco_msa.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_msa.h,v 1.82 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_msa.h,v 1.84 2015/02/07 05:42:35 zender Exp $ */
 
 /* Purpose: Multi-slabbing algorithm */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -86,7 +86,7 @@ nco_msa_lmt_all_ntl     /* [fnc] Initilaize lmt_msa_sct's */
 void *          /* O pointer to malloced slab */
 nco_msa_rcr_clc /* Multi slab algorithm (recursive routine) */
 (int i,             /* current depth, we start at 0 */
- int imax,          /* maximium depth (i.e the number of dims in variable (does not change)*/		 
+ int imax,          /* maximum depth (i.e the number of dims in variable (does not change)*/		 
  lmt_sct **lmt,    /* limits of the current hyperslab these change as we recurse */
  lmt_msa_sct **lmt_lst, /* list of limits in each dimension (this remains STATIC as we recurse */
  var_sct *var1);    /* Infor for routine to read var (should not change */
diff --git a/src/nco/nco_mss_val.c b/src/nco/nco_mss_val.c
index 42c1717..c6e5c01 100644
--- a/src/nco/nco_mss_val.c
+++ b/src/nco/nco_mss_val.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mss_val.c,v 1.56 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mss_val.c,v 1.60 2015/02/05 19:26:55 zender Exp $ */
 
 /* Purpose: Missing value utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_mss_val.h" /* Missing value utilities */
@@ -37,7 +37,7 @@ nco_mss_val_mk /* [fnc] Return default missing value for type type */
   case NC_UINT64: *mss_val.ui64p=NC_FILL_UINT64; break;
     /* 20140526: Changed to NC_FILL_STRING (available as of netCDF 4.3.1?) */
     /* case NC_STRING: *mss_val.sngp='\0'; break; fxm: NC_FILL_STRING? TODO nco839 */
-  case NC_STRING: *mss_val.sngp=(char *)NC_FILL_STRING; break;
+  case NC_STRING: *mss_val.sngp=(char *)(NC_FILL_STRING); break;
   default: nco_dfl_case_nc_type_err(); break;
   } /* end switch */
 
@@ -284,8 +284,10 @@ nco_mss_val_get /* [fnc] Update number of attributes, missing_value of variable
   size_t att_lng;
 
   /* Refresh netCDF "mss_val" attribute for this variable */
+  if(var->has_mss_val)
+     if(var->mss_val.vp)
+       var->mss_val.vp=(void *)nco_free(var->mss_val.vp);
   var->has_mss_val=False;
-  var->mss_val.vp=nco_free(var->mss_val.vp);
 
   /* Refresh number of attributes for variable */
   (void)nco_inq_varnatts(nc_id,var->id,&var->nbr_att);
diff --git a/src/nco/nco_mss_val.h b/src/nco/nco_mss_val.h
index d6df1c1..c0323eb 100644
--- a/src/nco/nco_mss_val.h
+++ b/src/nco/nco_mss_val.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mss_val.h,v 1.36 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mss_val.h,v 1.37 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Missing value utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_netcdf.c b/src/nco/nco_netcdf.c
index fab4d59..feb9486 100644
--- a/src/nco/nco_netcdf.c
+++ b/src/nco/nco_netcdf.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_netcdf.c,v 1.255 2014/11/24 23:06:05 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_netcdf.c,v 1.257 2015/01/08 20:37:08 zender Exp $ */
 
 /* Purpose: NCO wrappers for netCDF C library */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_netcdf.h" /* NCO wrappers for netCDF C library */
@@ -982,10 +982,9 @@ int nco_def_grp_flg(const int nc_id,const char * const grp_nm,int * const grp_id
 int
 nc_rename_grp(int grp_id,const char * const grp_nm)
 {
-  /* Purpose: Pseudo-library function to rename groups.
+  /* Purpose: Pseudo-library stub function to rename groups.
      This particular stub routine is only called by netCDF4-enabled code
-     when built against a netCDF library that it too old to have
-     the nc_rename_grp() function.
+     when built against a netCDF library that it too old to have the nc_rename_grp() function.
      Test by running something like this:
      ncrename -O -g g1,obama ~/nco/data/in_grp.nc ~/foo.nc */
   const char fnc_nm[]="nc_rename_grp()";
diff --git a/src/nco/nco_netcdf.h b/src/nco/nco_netcdf.h
index bba7eba..843c6e7 100644
--- a/src/nco/nco_netcdf.h
+++ b/src/nco/nco_netcdf.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_netcdf.h,v 1.123 2014/09/25 05:12:09 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_netcdf.h,v 1.124 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: NCO wrappers for netCDF C library */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_omp.c b/src/nco/nco_omp.c
index 83db90d..fee5fd4 100644
--- a/src/nco/nco_omp.c
+++ b/src/nco/nco_omp.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_omp.c,v 1.71 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_omp.c,v 1.72 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: OpenMP utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_omp.h" /* OpenMP utilities */
diff --git a/src/nco/nco_omp.h b/src/nco/nco_omp.h
index 842f4f0..bf808b3 100644
--- a/src/nco/nco_omp.h
+++ b/src/nco/nco_omp.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_omp.h,v 1.32 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_omp.h,v 1.33 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: OpenMP utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_pck.c b/src/nco/nco_pck.c
index da5ec20..96639d3 100644
--- a/src/nco/nco_pck.c
+++ b/src/nco/nco_pck.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_pck.c,v 1.100 2014/09/19 20:38:28 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_pck.c,v 1.103 2015/02/04 04:16:24 zender Exp $ */
 
 /* Purpose: NCO utilities for packing and unpacking variables */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_pck.h" /* Packing and unpacking variables */
@@ -853,14 +853,14 @@ nco_var_pck /* [fnc] Pack variable in memory */
 	pck_rng_max_dbl=NC_MAX_UINT;
 	break;
       case NC_INT64:
-	mss_val_dfl_dbl=NC_FILL_INT64; 
-	pck_rng_min_dbl=NC_MIN_INT64;
-	pck_rng_max_dbl=NC_MAX_INT64;
+	mss_val_dfl_dbl=(double)NC_FILL_INT64; /* CEWI for MSVC */
+	pck_rng_min_dbl=(double)NC_MIN_INT64; /* CEWI for MSVC */
+	pck_rng_max_dbl=(double)NC_MAX_INT64; /* CEWI for MSVC */
 	break;
       case NC_UINT64:
-	mss_val_dfl_dbl=NC_FILL_UINT64;
+	mss_val_dfl_dbl=(double)NC_FILL_UINT64; /* CEWI for MSVC */
 	pck_rng_min_dbl=0.0;
-	pck_rng_max_dbl=NC_MAX_UINT64;
+	pck_rng_max_dbl=(double)NC_MAX_UINT64; /* CEWI for MSVC */
 	break;
       case NC_BYTE:
 	mss_val_dfl_dbl=NC_FILL_BYTE; 
@@ -990,9 +990,9 @@ nco_var_pck /* [fnc] Pack variable in memory */
   /* Packing attributes now exist and are same type as variable in memory */
 
   /* Apply scale_factor and add_offset to reduce variable size
-     add_offset and scale_factor are always scalars so use var_scv_* functions
-     var_scv_[sub,multiply] functions avoid cost of broadcasting attributes and doing element-by-element operations 
-     Using var_scv_[sub,multiply] instead of ncap_var_scv_[sub,multiply] avoids cost of deep copies
+     add_offset and scale_factor are always scalars so use nco_var_scv_* functions
+     nco_var_scv_[sub,multiply] functions avoid cost of broadcasting attributes and doing element-by-element operations 
+     Using nco_var_scv_[sub,multiply] instead of ncap_var_scv_[sub,multiply] avoids cost of deep copies
      Moreover, this keeps variable structure from changing (because ncap_var_scv_* functions all do deep copies before operations) and thus complicating memory management */
   if(var->has_add_fst){ /* [flg] Valid add_offset attribute exists */
     nco_bool has_mss_val_tmp; /* [flg] Temporary missing_value flag */
@@ -1004,12 +1004,12 @@ nco_var_pck /* [fnc] Pack variable in memory */
     (void)nco_scv_cnf_typ(var->type,&add_fst_scv);
     /* Pass temporary missing_value flag to accomodate pure missing_value fields */
     has_mss_val_tmp=var->has_mss_val;
-    /* Dupe var_scv_sub() into subtracting missing values when all values are missing */
+    /* Dupe nco_var_scv_sub() into subtracting missing values when all values are missing */
     if(PURE_MSS_VAL_FLD){
       has_mss_val_tmp=False;
       if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stdout,"%s: INFO %s reports variable %s is filled completely with %s = %g. Why do you store variables with no valid values?\n",nco_prg_nm_get(),fnc_nm,var->nm,nco_mss_val_sng_get(),add_fst_dbl);
     } /* !PURE_MSS_VAL_FLD */
-    (void)var_scv_sub(var->type,var->sz,has_mss_val_tmp,var->mss_val,var->val,&add_fst_scv);
+    (void)nco_var_scv_sub(var->type,var->sz,has_mss_val_tmp,var->mss_val,var->val,&add_fst_scv);
   } /* endif */
 
   if(var->has_scl_fct){ /* [flg] Valid scale_factor attribute exists */
@@ -1018,7 +1018,7 @@ nco_var_pck /* [fnc] Pack variable in memory */
     scl_fct_scv.type=NC_DOUBLE;
     scl_fct_scv.val.d=scl_fct_dbl;
     (void)nco_scv_cnf_typ(var->type,&scl_fct_scv);
-    if(scl_fct_dbl != 0.0) (void)var_scv_dvd(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scl_fct_scv);
+    if(scl_fct_dbl != 0.0) (void)nco_var_scv_dvd(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scl_fct_scv);
   } /* endif */
 
   if(!var->has_scl_fct && !var->has_add_fst){
@@ -1097,7 +1097,7 @@ nco_var_upk /* [fnc] Unpack variable in memory */
       /* Convert var to type of scale_factor for expansion */
       var=nco_var_cnf_typ(scl_fct_scv.type,var);
       /* Multiply var by scale_factor */
-      (void)var_scv_mlt(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scl_fct_scv);
+      (void)nco_var_scv_mlt(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scl_fct_scv);
     } /* endif has_scl_fct */
     
     if(var->has_add_fst){ /* [flg] Valid add_offset attribute exists */
@@ -1108,7 +1108,7 @@ nco_var_upk /* [fnc] Unpack variable in memory */
       /* Convert var to type of scale_factor for expansion */
       var=nco_var_cnf_typ(add_fst_scv.type,var);
       /* Add add_offset to var */
-      (void)var_scv_add(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&add_fst_scv);
+      (void)nco_var_scv_add(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&add_fst_scv);
     } /* endif has_add_fst */
 
   }else{ /* !netCDF_unpack_convention */
@@ -1122,7 +1122,7 @@ nco_var_upk /* [fnc] Unpack variable in memory */
       /* Convert var to type of scale_factor for expansion */
       var=nco_var_cnf_typ(add_fst_scv.type,var);
       /* Subtract add_offset from var */
-      (void)var_scv_sub(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&add_fst_scv);
+      (void)nco_var_scv_sub(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&add_fst_scv);
     } /* endif has_add_fst */
 
     if(var->has_scl_fct){ /* [flg] Valid scale_factor attribute exists */
@@ -1133,7 +1133,7 @@ nco_var_upk /* [fnc] Unpack variable in memory */
       /* Convert var to type of scale_factor for expansion */
       var=nco_var_cnf_typ(scl_fct_scv.type,var);
       /* Multiply var by scale_factor */
-      (void)var_scv_mlt(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scl_fct_scv);
+      (void)nco_var_scv_mlt(var->type,var->sz,var->has_mss_val,var->mss_val,var->val,&scl_fct_scv);
     } /* endif has_scl_fct */
     
   } /* !netCDF_unpack_convention */
diff --git a/src/nco/nco_pck.h b/src/nco/nco_pck.h
index 0b0e21c..b45d46b 100644
--- a/src/nco/nco_pck.h
+++ b/src/nco/nco_pck.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_pck.h,v 1.53 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_pck.h,v 1.54 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Description (definition) of packing/unpacking functions */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_prn.c b/src/nco/nco_prn.c
index e54e8f4..847c763 100644
--- a/src/nco/nco_prn.c
+++ b/src/nco/nco_prn.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_prn.c,v 1.225 2014/10/08 21:00:46 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_prn.c,v 1.233 2015/02/09 03:38:40 zender Exp $ */
 
 /* Purpose: Print variables, attributes, metadata */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_prn.h" /* Print variables, attributes, metadata */
@@ -25,7 +25,7 @@ nco_prn_att /* [fnc] Print all attributes of single variable or group */
   const char spc_sng[]=""; /* [sng] Space string */
 
   char *nm_cdl;
-  char *sng_val_sng; /* [sng] String of NC_CHAR */
+  char *sng_val_sng=NULL_CEWI; /* [sng] String of NC_CHAR */
   char *sng_val_sng_cpy; /* [sng] Copy of sng_val_sng to avoid cppcheck error about using sng_val_sng as both parameter and desitnation in sprintf(). NB: free() only one of these two pointers. */
   char *spr_sng=NULL; /* [sng] Output separator string */
 
@@ -60,8 +60,8 @@ nco_prn_att /* [fnc] Print all attributes of single variable or group */
   long att_szm1;
   long chr_idx;
   long lmn;
-  long sng_lng; /* [nbr] Length of NC_CHAR string */
-  long sng_lngm1; /* [nbr] Length minus one of NC_CHAR string */
+  long sng_lng=long_CEWI; /* [nbr] Length of NC_CHAR string */
+  long sng_lngm1=long_CEWI; /* [nbr] Length minus one of NC_CHAR string */
   
   nc_type var_typ;
 
@@ -1145,12 +1145,12 @@ nco_prn_var_dfn                     /* [fnc] Print variable metadata */
   /* Purpose: Print variable metadata */
   const char spc_sng[]=""; /* [sng] Space string */
 
-  char sz_sng[100];
-  char dmn_sng[200];
-  char sng_foo[200];
-
+  char *dmn_sng=NULL;
   char *nm_cdl;
 
+  char sng_foo[NC_MAX_NAME+10]; /* Add 10 for extra formatting characters */
+  char sz_sng[100];
+
   int deflate; /* [flg] Deflation is on */
   int dfl_lvl; /* [enm] Deflate level [0..9] */
   int dmn_idx;
@@ -1226,6 +1226,8 @@ nco_prn_var_dfn                     /* [fnc] Print variable metadata */
   if(prn_flg->xml) (void)fprintf(stdout,"%*s<variable name=\"%s\" type=\"%s\"",prn_ndn,spc_sng,var_trv->nm,xml_typ_nm(var_typ));
 
   /* Print type, shape, and total size of variable */
+  /* Use nbr_dmn+1 in malloc() to handle case when nbr_dim == 0 and allow for formatting characters */
+  dmn_sng=(char *)nco_malloc((nbr_dim+1)*NC_MAX_NAME*sizeof(char));
   dmn_sng[0]='\0';
   if(nbr_dim == 0){
     if(prn_flg->trd) (void)fprintf(stdout,"%*s%s size (RAM) = %ld*sizeof(%s) = %ld*%lu = %lu bytes\n",prn_ndn,spc_sng,var_trv->nm,var_sz,nco_typ_sng(var_typ),var_sz,(unsigned long)nco_typ_lng(var_typ),(unsigned long)(var_sz*nco_typ_lng(var_typ)));
@@ -1269,6 +1271,7 @@ nco_prn_var_dfn                     /* [fnc] Print variable metadata */
   if(prn_flg->xml){
     if(prn_flg->PRN_VAR_DATA || prn_flg->PRN_VAR_METADATA) (void)fprintf(stdout,"%s>\n",dmn_sng); else (void)fprintf(stdout,"%s />\n",dmn_sng);
   } /* !xml */
+  if(dmn_sng) dmn_sng=(char *)nco_free(dmn_sng);
 
   /* Print dimension sizes and names */
 
@@ -1353,42 +1356,43 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
   char spr_xml_nmr[]=" "; /* [sng] Default XML separator for numeric types */
   char nul_chr='\0'; /* [sng] Character to end string */ 
 
-  char *dlm_sng=NULL;                        /* [sng] User-specified delimiter string, if any */
+  char *dlm_sng=NULL; /* [sng] User-specified delimiter string, if any */
   char *nm_cdl;
-  char *sng_val_sng;                         /* [sng] String of NC_CHAR */
+  char *sng_val_sng=NULL_CEWI; /* [sng] String of NC_CHAR */
   char *sng_val_sng_cpy; /* [sng] Copy of sng_val_sng to avoid cppcheck error about using sng_val_sng as both parameter and desitnation in sprintf(). NB: free() only one of these two pointers. */
   char *spr_sng=NULL; /* [sng] Output separator string */
-  char *unit_sng;                            /* [sng] Units string */ 
+  char *unit_sng_var; /* [sng] Units string for variable */ 
+  char *unit_sng_crd=NULL_CEWI; /* [sng] Units string for coordinate */ 
 
-  char chr_val;                              /* [sng] Current character */
+  char chr_val; /* [sng] Current character */
 
   char val_sng[NCO_ATM_SNG_LNG];
-  char var_nm[NC_MAX_NAME+1];                /* [sng] Variable name (used for validation only) */ 
-  char var_sng[NCO_MAX_LEN_FMT_SNG];         /* [sng] Variable string */
+  char var_nm[NC_MAX_NAME+1]; /* [sng] Variable name (used for validation only) */ 
+  char var_sng[NCO_MAX_LEN_FMT_SNG]; /* [sng] Variable string */
 
-  dmn_sct dim[NC_MAX_DIMS];                  /* [sct] Dimension structure  */
+  dmn_sct *dim=NULL_CEWI; /* [sct] Dimension structure */
 
   double val_dbl;
 
   float val_flt;
 
-  int dmn_idx;                              /* [idx] Counter over dimensions */
-  int grp_id;                                 /* [ID] Group ID where variable resides (passed to MSA) */
+  int dmn_idx; /* [idx] Counter over dimensions */
+  int grp_id; /* [ID] Group ID where variable resides (passed to MSA) */
   int rcd_prn;
-  int prn_ndn=0;                             /* [nbr] Indentation for printing */
-  int val_sz_byt=int_CEWI;                   /* [nbr] Type size */
-
-  lmt_msa_sct **lmt_msa=NULL_CEWI;           /* [sct] MSA Limits for only for variable dimensions  */          
-  lmt_sct **lmt=NULL_CEWI;                   /* [sct] Auxiliary Limit used in MSA */
-
-  long dmn_sbs_dsk[NC_MAX_DIMS];             /* [nbr] Indices of hyperslab relative to original on disk */
-  long dmn_sbs_ram[NC_MAX_DIMS];             /* [nbr] Indices in hyperslab */
-  long lmn;                                  /* [nbr] Index to print variable data */
-  long mod_map_cnt[NC_MAX_DIMS];             /* [nbr] MSA modulo array */
-  long mod_map_in[NC_MAX_DIMS];              /* [nbr] MSA modulo array */
-  long sng_lng;                              /* [nbr] Length of NC_CHAR string */
-  long sng_lngm1;                            /* [nbr] Length minus one of NC_CHAR string */
-  long var_dsk;                              /* [nbr] Variable index relative to disk */
+  int prn_ndn=0; /* [nbr] Indentation for printing */
+  int val_sz_byt=int_CEWI; /* [nbr] Type size */
+
+  lmt_msa_sct **lmt_msa=NULL_CEWI; /* [sct] MSA Limits for only for variable dimensions  */          
+  lmt_sct **lmt=NULL_CEWI; /* [sct] Auxiliary Limit used in MSA */
+
+  long *dmn_sbs_dsk=NULL_CEWI; /* [nbr] Indices of hyperslab relative to original on disk */
+  long *dmn_sbs_ram=NULL_CEWI; /* [nbr] Indices in hyperslab */
+  long *mod_map_cnt=NULL_CEWI; /* [nbr] MSA modulo array */
+  long *mod_map_in=NULL_CEWI; /* [nbr] MSA modulo array */
+  long lmn; /* [nbr] Index to print variable data */
+  long sng_lng=long_CEWI; /* [nbr] Length of NC_CHAR string */
+  long sng_lngm1=long_CEWI; /* [nbr] Length minus one of NC_CHAR string */
+  long var_dsk; /* [nbr] Variable index relative to disk */
   long var_szm1;
 
   const nco_bool CDL=prn_flg->cdl; /* [flg] CDL output */
@@ -1399,13 +1403,16 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
   const nco_bool CDL_OR_TRD=prn_flg->cdl || prn_flg->trd; /* [flg] CDL or Traditional output */
   const nco_bool CDL_OR_JSN_OR_XML=prn_flg->cdl || prn_flg->jsn || prn_flg->xml; /* [flg] CDL or JSON or XML output */
 
-  nco_bool is_mss_val=False;                 /* [flg] Current value is missing value */
-  nco_bool MALLOC_UNITS_SNG=False;           /* [flg] Allocated memory for units string */
+  nco_bool is_mss_val=False; /* [flg] Current value is missing value */
+  nco_bool flg_malloc_unit_crd=False; /* [flg] Allocated memory for coordinate units string */
+  nco_bool flg_malloc_unit_var=False; /* [flg] Allocated memory for variable units string */
+  nco_bool unit_cln_crd=False; /* [flg] Coordinate has calendar units */
+  nco_bool unit_cln_var=False; /* [flg] Variable has calendar units */
 
-  nco_string sng_val;                        /* [sng] Current string */
+  nco_string sng_val; /* [sng] Current string */
 
-  var_sct var;                               /* [sct] Variable structure */
-  var_sct var_crd;                           /* [sct] Variable structure for associated coordinate variable */
+  var_sct var; /* [sct] Variable structure */
+  var_sct var_crd; /* [sct] Variable structure for associated coordinate variable */
 
   if(prn_flg->new_fmt && CDL_OR_TRD) prn_ndn=prn_flg->ndn+prn_flg->var_fst;
   if(XML) prn_ndn=prn_flg->ndn;
@@ -1417,7 +1424,7 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
   (void)var_dfl_set(&var); 
 
   /* Initialize units string, overwrite later if necessary */
-  unit_sng=&nul_chr;
+  unit_sng_var=&nul_chr;
 
   /* Get ID for requested variable */
   var.nm=(char *)strdup(var_trv->nm);
@@ -1698,10 +1705,22 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
     if(rcd_lcl == NC_NOERR){
       (void)nco_inq_att(grp_id,var.id,units_nm,&att_typ,&att_sz);
       if(att_typ == NC_CHAR){
-        unit_sng=(char *)nco_malloc((att_sz+1L)*nco_typ_lng(att_typ));
-        (void)nco_get_att(grp_id,var.id,units_nm,unit_sng,att_typ);
-        unit_sng[(att_sz+1L)*nco_typ_lng(att_typ)-1L]='\0';
-        MALLOC_UNITS_SNG=True; /* [flg] Allocated memory for units string */
+        unit_sng_var=(char *)nco_malloc((att_sz+1L)*nco_typ_lng(att_typ));
+        (void)nco_get_att(grp_id,var.id,units_nm,unit_sng_var,att_typ);
+        unit_sng_var[(att_sz+1L)*nco_typ_lng(att_typ)-1L]='\0';
+        flg_malloc_unit_var=True;
+
+	/* CDM documentation on time coordinates:
+	   http://www.unidata.ucar.edu/software/thredds/current/netcdf-java/CDM/CalendarDateTime.html
+	   "As of CDM version 4.3, dates are no longer handled by the UDUnits library. This allows handling non-standard Calendars. This change only affects datetime coordinate handling, called time coordinates in CF. For all other dimensional units, the UDUnits package is still used.
+	   The UDUnit date grammar is difficult to understand. Heres an approximate regular expression:
+	   period SINCE [-]Y[Y[Y[Y]]]-MM-DD[(T| )hh[:mm[:ss[.sss*]]][ [+|-]hh[[:]mm]]]
+	   The CDM uses the W3C profile of ISO 8601 formatting for reading and writing calendar dates" */
+
+	/* Are units those of a calendar? */
+	unit_cln_var=nco_cln_chk_tm(unit_sng_var);
+        if(nco_dbg_lvl_get() == nco_dbg_crr) (void)fprintf(stdout,"%s: INFO %s reports units string \"%s\" is %sa calendar string\n",nco_prg_nm_get(),fnc_nm,unit_sng_var,unit_cln_var ? "" : "not " );
+
       } /* end if */
     } /* end if */
   } /* end if PRN_DMN_UNITS */
@@ -1712,29 +1731,29 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
     if(prn_flg->PRN_MSS_VAL_BLANK) is_mss_val = var.has_mss_val ? !memcmp(var.val.vp,var.mss_val.vp,(size_t)val_sz_byt) : False; 
     if(prn_flg->PRN_DMN_VAR_NM) (void)sprintf(var_sng,"%*s%%s = %s %%s\n",prn_ndn,spc_sng,nco_typ_fmt_sng(var.type)); else (void)sprintf(var_sng,"%*s%s\n",prn_ndn,spc_sng,nco_typ_fmt_sng(var.type));
     if(prn_flg->PRN_MSS_VAL_BLANK && is_mss_val){
-      if(prn_flg->PRN_DMN_VAR_NM) (void)fprintf(stdout,"%*s%s = %s %s\n",prn_ndn,spc_sng,var_nm,mss_val_sng,unit_sng); else (void)fprintf(stdout,"%*s%s\n",prn_ndn,spc_sng,mss_val_sng); 
+      if(prn_flg->PRN_DMN_VAR_NM) (void)fprintf(stdout,"%*s%s = %s %s\n",prn_ndn,spc_sng,var_nm,mss_val_sng,unit_sng_var); else (void)fprintf(stdout,"%*s%s\n",prn_ndn,spc_sng,mss_val_sng);
     }else{ /* !is_mss_val */
       if(prn_flg->PRN_DMN_VAR_NM){
         switch(var.type){
-        case NC_FLOAT: (void)fprintf(stdout,var_sng,var_nm,var.val.fp[lmn],unit_sng); break;
-        case NC_DOUBLE: (void)fprintf(stdout,var_sng,var_nm,var.val.dp[lmn],unit_sng); break;
-        case NC_SHORT: (void)fprintf(stdout,var_sng,var_nm,var.val.sp[lmn],unit_sng); break;
-        case NC_INT: (void)fprintf(stdout,var_sng,var_nm,var.val.ip[lmn],unit_sng); break;
+        case NC_FLOAT: (void)fprintf(stdout,var_sng,var_nm,var.val.fp[lmn],unit_sng_var); break;
+        case NC_DOUBLE: (void)fprintf(stdout,var_sng,var_nm,var.val.dp[lmn],unit_sng_var); break;
+        case NC_SHORT: (void)fprintf(stdout,var_sng,var_nm,var.val.sp[lmn],unit_sng_var); break;
+        case NC_INT: (void)fprintf(stdout,var_sng,var_nm,var.val.ip[lmn],unit_sng_var); break;
         case NC_CHAR:
           if(var.val.cp[lmn] != '\0'){
             (void)sprintf(var_sng,"%*s%%s = '%s' %%s\n",prn_ndn,spc_sng,nco_typ_fmt_sng(var.type));
-            (void)fprintf(stdout,var_sng,var_nm,var.val.cp[lmn],unit_sng);
+            (void)fprintf(stdout,var_sng,var_nm,var.val.cp[lmn],unit_sng_var);
           }else{ /* Deal with NUL character here */
-            (void)fprintf(stdout,"%*s%s = \"\" %s\n",prn_ndn,spc_sng,var_nm,unit_sng);
+            (void)fprintf(stdout,"%*s%s = \"\" %s\n",prn_ndn,spc_sng,var_nm,unit_sng_var);
           } /* end if */
           break;
-        case NC_BYTE: (void)fprintf(stdout,var_sng,var_nm,(unsigned char)var.val.bp[lmn],unit_sng); break;
-        case NC_UBYTE: (void)fprintf(stdout,var_sng,var_nm,var.val.ubp[lmn],unit_sng); break;
-        case NC_USHORT: (void)fprintf(stdout,var_sng,var_nm,var.val.usp[lmn],unit_sng); break;
-        case NC_UINT: (void)fprintf(stdout,var_sng,var_nm,var.val.uip[lmn],unit_sng); break;
-        case NC_INT64: (void)fprintf(stdout,var_sng,var_nm,var.val.i64p[lmn],unit_sng); break;
-        case NC_UINT64: (void)fprintf(stdout,var_sng,var_nm,var.val.ui64p[lmn],unit_sng); break;
-        case NC_STRING: (void)fprintf(stdout,var_sng,var_nm,var.val.sngp[lmn],unit_sng); break;
+        case NC_BYTE: (void)fprintf(stdout,var_sng,var_nm,(unsigned char)var.val.bp[lmn],unit_sng_var); break;
+        case NC_UBYTE: (void)fprintf(stdout,var_sng,var_nm,var.val.ubp[lmn],unit_sng_var); break;
+        case NC_USHORT: (void)fprintf(stdout,var_sng,var_nm,var.val.usp[lmn],unit_sng_var); break;
+        case NC_UINT: (void)fprintf(stdout,var_sng,var_nm,var.val.uip[lmn],unit_sng_var); break;
+        case NC_INT64: (void)fprintf(stdout,var_sng,var_nm,var.val.i64p[lmn],unit_sng_var); break;
+        case NC_UINT64: (void)fprintf(stdout,var_sng,var_nm,var.val.ui64p[lmn],unit_sng_var); break;
+        case NC_STRING: (void)fprintf(stdout,var_sng,var_nm,var.val.sngp[lmn],unit_sng_var); break;
         default: nco_dfl_case_nc_type_err(); break;
         } /* end switch */
       }else{ /* !PRN_DMN_VAR_NM */
@@ -1766,6 +1785,13 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
 
   if(var.nbr_dim > 0 && !dlm_sng && TRD){
 
+    /* Allocate space for dimension information */
+    dim=(dmn_sct *)nco_malloc(var.nbr_dim*sizeof(dmn_sct));
+    dmn_sbs_ram=(long *)nco_malloc(var.nbr_dim*sizeof(long));
+    dmn_sbs_dsk=(long *)nco_malloc(var.nbr_dim*sizeof(long));
+    mod_map_cnt=(long *)nco_malloc(var.nbr_dim*sizeof(long));
+    mod_map_in=(long *)nco_malloc(var.nbr_dim*sizeof(long));
+
     /* Create mod_map_in */
     for(int idx=0;idx<var.nbr_dim;idx++) mod_map_in[idx]=1L;
     for(int idx=0;idx<var.nbr_dim;idx++)
@@ -1785,9 +1811,9 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
 
         assert(!strcmp(lmt_msa[idx]->dmn_nm,var_trv->var_dmn[idx].dmn_nm));
 
-        if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: INFO %s <%s>: reading dimension[%d]:%s: ",nco_prg_nm_get(),fnc_nm,var_trv->nm_fll,idx,var_trv->var_dmn[idx].dmn_nm_fll);
+        if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: DEBUG %s reading %s dimension %d, %s",nco_prg_nm_get(),fnc_nm,var_trv->nm_fll,idx,var_trv->var_dmn[idx].dmn_nm_fll);
 
-        dim[idx].val.vp=NULL;
+	dim[idx].val.vp=NULL;
         dim[idx].nm=lmt_msa[idx]->dmn_nm;
 
         /* Dimension does not have coordinate variable, do not read... */
@@ -1819,8 +1845,33 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
           dim[idx].type=crd->var_typ;
           dim[idx].cid=var_crd.id;
 
-          /* Ooopssy */ 
-        }else assert(0);
+	  /* Always check to see if coordinate is calendar date */
+	  if(True){
+	    const char units_nm[]="units"; /* [sng] Name of units attribute */
+	    int rcd_lcl; /* [rcd] Return code */
+	    int att_id; /* [id] Attribute ID */
+	    long att_sz;
+	    nc_type att_typ;
+	    
+	    /* Does coordinate have character attribute named units_nm? */
+	    rcd_lcl=nco_inq_attid_flg(grp_id,var.id,units_nm,&att_id);
+	    if(rcd_lcl == NC_NOERR){
+	      (void)nco_inq_att(grp_id,var.id,units_nm,&att_typ,&att_sz);
+	      if(att_typ == NC_CHAR){
+		unit_sng_crd=(char *)nco_malloc((att_sz+1L)*nco_typ_lng(att_typ));
+		(void)nco_get_att(grp_id,var.id,units_nm,unit_sng_crd,att_typ);
+		unit_sng_crd[(att_sz+1L)*nco_typ_lng(att_typ)-1L]='\0';
+		flg_malloc_unit_crd=True;
+		
+		/* Are units those of a calendar? */
+		unit_cln_crd=nco_cln_chk_tm(unit_sng_crd);
+		if(nco_dbg_lvl_get() == nco_dbg_crr) (void)fprintf(stdout,"%s: INFO %s reports units string \"%s\" is %sa calendar string\n",nco_prg_nm_get(),fnc_nm,unit_sng_crd,unit_cln_crd ? "" : "not " );
+
+	      } /* end if att_typ */
+	    } /* end if rcd_lcl */
+	  } /* end if True */
+	  
+        } /* end if is_crd_var */
 
         /* Typecast pointer before use */  
         (void)cast_void_nctype(dim[idx].type,&dim[idx].val);
@@ -1870,7 +1921,7 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
             continue;
           } /* end if */
 
-          if(prn_flg->PRN_DMN_VAR_NM) (void)sprintf(dmn_sng,"%*s%%s[%%ld]=%s ",(idx == 0) ? prn_ndn : 0,spc_sng,nco_typ_fmt_sng(dim[dmn_idx].type)); else (void)sprintf(dmn_sng,"%*s%s ",(idx == 0) ? prn_ndn : 0,spc_sng,nco_typ_fmt_sng(dim[dmn_idx].type));
+          if(prn_flg->PRN_DMN_VAR_NM) (void)sprintf(dmn_sng,"%*s%%s%s%%ld%s=%s ",(idx == 0) ? prn_ndn : 0,spc_sng,prn_flg->FORTRAN_IDX_CNV ? "(" : "[",prn_flg->FORTRAN_IDX_CNV ? ")" : "]",nco_typ_fmt_sng(dim[dmn_idx].type)); else (void)sprintf(dmn_sng,"%*s%s ",(idx == 0) ? prn_ndn : 0,spc_sng,nco_typ_fmt_sng(dim[dmn_idx].type));
           dmn_sbs_prn=dmn_sbs_dsk[dmn_idx];
 
           if(prn_flg->FORTRAN_IDX_CNV){
@@ -1880,14 +1931,22 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
 
           /* Account for hyperslab offset in coordinate values*/
           crd_idx_crr=dmn_sbs_ram[dmn_idx];
+	  char crd_sng_lgb[NCO_MAX_LEN_FMT_SNG];
+	  if(unit_cln_crd){
+	    crd_sng_lgb[0]='\0';
+	    (void)nco_cln_sng_rbs(dim[dmn_idx].val,crd_idx_crr,dim[dmn_idx].type,unit_sng_crd,crd_sng_lgb);
+	    dim[dmn_idx].type=NC_CHAR;
+	  } /* !unit_cln_crd */
           if(prn_flg->PRN_DMN_VAR_NM){
             switch(dim[dmn_idx].type){
             case NC_FLOAT: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,dim[dmn_idx].val.fp[crd_idx_crr]); break;
             case NC_DOUBLE: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,dim[dmn_idx].val.dp[crd_idx_crr]); break;
             case NC_SHORT: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,dim[dmn_idx].val.sp[crd_idx_crr]); break;
             case NC_INT: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,dim[dmn_idx].val.ip[crd_idx_crr]); break;
-            case NC_CHAR: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,dim[dmn_idx].val.cp[crd_idx_crr]); break;
-            case NC_BYTE: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,(unsigned char)dim[dmn_idx].val.bp[crd_idx_crr]); break;
+            case NC_CHAR:
+	      if(unit_cln_crd) (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,crd_sng_lgb); else (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,dim[dmn_idx].val.cp[crd_idx_crr]);
+	      break;
+	    case NC_BYTE: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,(unsigned char)dim[dmn_idx].val.bp[crd_idx_crr]); break;
             case NC_UBYTE: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,dim[dmn_idx].val.ubp[crd_idx_crr]); break;
             case NC_USHORT: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,dim[dmn_idx].val.usp[crd_idx_crr]); break;
             case NC_UINT: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].nm,dmn_sbs_prn,dim[dmn_idx].val.uip[crd_idx_crr]); break;
@@ -1902,7 +1961,9 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
             case NC_DOUBLE: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].val.dp[crd_idx_crr]); break;
             case NC_SHORT: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].val.sp[crd_idx_crr]); break;
             case NC_INT: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].val.ip[crd_idx_crr]); break;
-            case NC_CHAR: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].val.cp[crd_idx_crr]); break;
+            case NC_CHAR:
+	      if(unit_cln_crd) (void)fprintf(stdout,dmn_sng,crd_sng_lgb); else (void)fprintf(stdout,dmn_sng,dim[dmn_idx].val.cp[crd_idx_crr]);
+	      break;
             case NC_BYTE: (void)fprintf(stdout,dmn_sng,(unsigned char)dim[dmn_idx].val.bp[crd_idx_crr]); break;
             case NC_UBYTE: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].val.ubp[crd_idx_crr]); break;
             case NC_USHORT: (void)fprintf(stdout,dmn_sng,dim[dmn_idx].val.usp[crd_idx_crr]); break;
@@ -1958,7 +2019,7 @@ lbl_chr_prn:
             var_dsk_srt++; 
             var_dsk_end++; 
           } /* end if */
-          (void)fprintf(stdout,var_sng,var_nm,var_dsk_srt,var_dsk_end,prn_sng,unit_sng);
+          (void)fprintf(stdout,var_sng,var_nm,var_dsk_srt,var_dsk_end,prn_sng,unit_sng_var);
           (void)fprintf(stdout,"\n");
           (void)fflush(stdout);
           (void)nco_free(prn_sng);
@@ -1967,45 +2028,45 @@ lbl_chr_prn:
       } /* end if NC_CHAR */
 
       /* Print variable name, index, and value */
-      if(prn_flg->PRN_DMN_VAR_NM) (void)sprintf(var_sng,"%*s%%s[%%ld]=%s %%s\n",(var_trv->is_crd_var) ? prn_ndn : 0,spc_sng,nco_typ_fmt_sng(var.type)); else (void)sprintf(var_sng,"%*s%s\n",(var_trv->is_crd_var) ? prn_ndn : 0,spc_sng,nco_typ_fmt_sng(var.type));
+      if(prn_flg->PRN_DMN_VAR_NM) (void)sprintf(var_sng,"%*s%%s%s%%ld%s=%s %%s\n",(var_trv->is_crd_var) ? prn_ndn : 0,spc_sng,prn_flg->FORTRAN_IDX_CNV ? "(" : "[",prn_flg->FORTRAN_IDX_CNV ? ")" : "]",nco_typ_fmt_sng(var.type)); else (void)sprintf(var_sng,"%*s%s\n",(var_trv->is_crd_var) ? prn_ndn : 0,spc_sng,nco_typ_fmt_sng(var.type));
       if(prn_flg->FORTRAN_IDX_CNV){
         (void)sng_idx_dlm_c2f(var_sng);
         var_dsk++;
       } /* end if FORTRAN_IDX_CNV */
 
       if(prn_flg->PRN_MSS_VAL_BLANK && is_mss_val){
-        if(prn_flg->PRN_DMN_VAR_NM) (void)fprintf(stdout,"%*s%s[%ld]=%s %s\n",(var_trv->is_crd_var) ? prn_ndn : 0,spc_sng,var_nm,var_dsk,mss_val_sng,unit_sng); else (void)fprintf(stdout,"%*s%s\n",(var_trv->is_crd_var) ? prn_ndn : 0,spc_sng,mss_val_sng); 
+        if(prn_flg->PRN_DMN_VAR_NM) (void)fprintf(stdout,"%*s%s%s%ld%s=%s %s\n",(var_trv->is_crd_var) ? prn_ndn : 0,spc_sng,var_nm,prn_flg->FORTRAN_IDX_CNV ? "(" : "[",var_dsk,prn_flg->FORTRAN_IDX_CNV ? ")" : "]",mss_val_sng,unit_sng_var); else (void)fprintf(stdout,"%*s%s\n",(var_trv->is_crd_var) ? prn_ndn : 0,spc_sng,mss_val_sng); 
       }else{ /* !is_mss_val */
         if(prn_flg->PRN_DMN_VAR_NM){
           switch(var.type){
-          case NC_FLOAT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.fp[lmn],unit_sng); break;
-          case NC_DOUBLE: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.dp[lmn],unit_sng); break;
-          case NC_SHORT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.sp[lmn],unit_sng); break;
-          case NC_INT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.ip[lmn],unit_sng); break;
-          case NC_CHAR: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.cp[lmn],unit_sng); break;
-          case NC_BYTE: (void)fprintf(stdout,var_sng,var_nm,var_dsk,(unsigned char)var.val.bp[lmn],unit_sng); break;
-          case NC_UBYTE: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.ubp[lmn],unit_sng); break;
-          case NC_USHORT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.usp[lmn],unit_sng); break;
-          case NC_UINT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.uip[lmn],unit_sng); break;
-          case NC_INT64: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.i64p[lmn],unit_sng); break;
-          case NC_UINT64: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.ui64p[lmn],unit_sng); break;
-          case NC_STRING: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.sngp[lmn],unit_sng); break;
+          case NC_FLOAT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.fp[lmn],unit_sng_var); break;
+          case NC_DOUBLE: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.dp[lmn],unit_sng_var); break;
+          case NC_SHORT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.sp[lmn],unit_sng_var); break;
+          case NC_INT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.ip[lmn],unit_sng_var); break;
+          case NC_CHAR: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.cp[lmn],unit_sng_var); break;
+          case NC_BYTE: (void)fprintf(stdout,var_sng,var_nm,var_dsk,(unsigned char)var.val.bp[lmn],unit_sng_var); break;
+          case NC_UBYTE: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.ubp[lmn],unit_sng_var); break;
+          case NC_USHORT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.usp[lmn],unit_sng_var); break;
+          case NC_UINT: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.uip[lmn],unit_sng_var); break;
+          case NC_INT64: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.i64p[lmn],unit_sng_var); break;
+          case NC_UINT64: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.ui64p[lmn],unit_sng_var); break;
+          case NC_STRING: (void)fprintf(stdout,var_sng,var_nm,var_dsk,var.val.sngp[lmn],unit_sng_var); break;
           default: nco_dfl_case_nc_type_err(); break;
           } /* end switch */
         }else{ /* !PRN_DMN_VAR_NM */
           switch(var.type){
-          case NC_FLOAT: (void)fprintf(stdout,var_sng,var.val.fp[lmn],unit_sng); break;
-          case NC_DOUBLE: (void)fprintf(stdout,var_sng,var.val.dp[lmn],unit_sng); break;
-          case NC_SHORT: (void)fprintf(stdout,var_sng,var.val.sp[lmn],unit_sng); break;
-          case NC_INT: (void)fprintf(stdout,var_sng,var.val.ip[lmn],unit_sng); break;
-          case NC_CHAR: (void)fprintf(stdout,var_sng,var.val.cp[lmn],unit_sng); break;
-          case NC_BYTE: (void)fprintf(stdout,var_sng,(unsigned char)var.val.bp[lmn],unit_sng); break;
-          case NC_UBYTE: (void)fprintf(stdout,var_sng,var.val.ubp[lmn],unit_sng); break;
-          case NC_USHORT: (void)fprintf(stdout,var_sng,var.val.usp[lmn],unit_sng); break;
-          case NC_UINT: (void)fprintf(stdout,var_sng,var.val.uip[lmn],unit_sng); break;
-          case NC_INT64: (void)fprintf(stdout,var_sng,var.val.i64p[lmn],unit_sng); break;
-          case NC_UINT64: (void)fprintf(stdout,var_sng,var.val.ui64p[lmn],unit_sng); break;
-          case NC_STRING: (void)fprintf(stdout,var_sng,var.val.sngp[lmn],unit_sng); break;
+          case NC_FLOAT: (void)fprintf(stdout,var_sng,var.val.fp[lmn],unit_sng_var); break;
+          case NC_DOUBLE: (void)fprintf(stdout,var_sng,var.val.dp[lmn],unit_sng_var); break;
+          case NC_SHORT: (void)fprintf(stdout,var_sng,var.val.sp[lmn],unit_sng_var); break;
+          case NC_INT: (void)fprintf(stdout,var_sng,var.val.ip[lmn],unit_sng_var); break;
+          case NC_CHAR: (void)fprintf(stdout,var_sng,var.val.cp[lmn],unit_sng_var); break;
+          case NC_BYTE: (void)fprintf(stdout,var_sng,(unsigned char)var.val.bp[lmn],unit_sng_var); break;
+          case NC_UBYTE: (void)fprintf(stdout,var_sng,var.val.ubp[lmn],unit_sng_var); break;
+          case NC_USHORT: (void)fprintf(stdout,var_sng,var.val.usp[lmn],unit_sng_var); break;
+          case NC_UINT: (void)fprintf(stdout,var_sng,var.val.uip[lmn],unit_sng_var); break;
+          case NC_INT64: (void)fprintf(stdout,var_sng,var.val.i64p[lmn],unit_sng_var); break;
+          case NC_UINT64: (void)fprintf(stdout,var_sng,var.val.ui64p[lmn],unit_sng_var); break;
+          case NC_STRING: (void)fprintf(stdout,var_sng,var.val.sngp[lmn],unit_sng_var); break;
           default: nco_dfl_case_nc_type_err(); break;
           } /* end switch */
         } /* !PRN_DMN_VAR_NM */
@@ -2014,7 +2075,14 @@ lbl_chr_prn:
 
     (void)fflush(stdout);
 
+    /* Clean-up information for multi-dimensional arrays */
     for(int idx=0;idx<var.nbr_dim;idx++) if(dim[idx].val.vp) dim[idx].val.vp=nco_free(dim[idx].val.vp);
+    if(dim) dim=(dmn_sct *)nco_free(dim);
+    if(dmn_sbs_ram) dmn_sbs_ram=(long *)nco_free(dmn_sbs_ram);
+    if(dmn_sbs_dsk) dmn_sbs_dsk=(long *)nco_free(dmn_sbs_dsk);
+    if(mod_map_cnt) mod_map_cnt=(long *)nco_free(mod_map_cnt);
+    if(mod_map_in) mod_map_in=(long *)nco_free(mod_map_in);
+
   } /* end if variable has more than one dimension */
 
   /* Free value buffer */
@@ -2022,7 +2090,8 @@ lbl_chr_prn:
   var.mss_val.vp=nco_free(var.mss_val.vp);
   var.nm=(char *)nco_free(var.nm);
 
-  if(MALLOC_UNITS_SNG) unit_sng=(char *)nco_free(unit_sng);
+  if(flg_malloc_unit_crd) unit_sng_crd=(char *)nco_free(unit_sng_crd);
+  if(flg_malloc_unit_var) unit_sng_var=(char *)nco_free(unit_sng_var);
 
   if(dlm_sng) dlm_sng=(char *)nco_free(dlm_sng);
 
diff --git a/src/nco/nco_prn.h b/src/nco/nco_prn.h
index 92223d3..b695690 100644
--- a/src/nco/nco_prn.h
+++ b/src/nco/nco_prn.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_prn.h,v 1.53 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_prn.h,v 1.54 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Print variables, attributes, metadata */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -37,7 +37,7 @@
 #include "nco_sng_utl.h" /* String utilities */
 
 /* fxm: strings statically allocated with NCO_MAX_LEN_FMT_SNG chars are susceptible to buffer overflow attacks */
-/* Length should be computed at run time but is a pain */
+/* Length should be computed at run-time but is a pain */
 #define NCO_MAX_LEN_FMT_SNG 100ul
 
 /* Maximum length of single formatted value of atomic value type */
@@ -81,11 +81,11 @@ nco_prn_var_val_lmt /* [fnc] Print variable data */
  const nco_bool PRN_DMN_IDX_CRD_VAL); /* I [flg] Print dimension/coordinate indices/values */
 
 void
-nco_prn_var_val_trv             /* [fnc] Print variable data */
-(const int nc_id,                   /* I [ID] netCDF file ID */
+nco_prn_var_val_trv /* [fnc] Print variable data */
+(const int nc_id, /* I [ID] netCDF file ID */
  const prn_fmt_sct * const prn_flg, /* I [sct] Print-format information */
- const trv_sct * const var_trv,    /* I [sct] Object to print (variable) */
- const trv_tbl_sct * const trv_tbl);   /* I [sct] GTT (Group Traversal Table) */
+ const trv_sct * const var_trv, /* I [sct] Object to print (variable) */
+ const trv_tbl_sct * const trv_tbl); /* I [sct] GTT (Group Traversal Table) */
 
 void
 nco_prn_var_dfn /* [fnc] Print variable metadata */
diff --git a/src/nco/nco_rec_var.c b/src/nco/nco_rec_var.c
index c281948..e5bf6ff 100644
--- a/src/nco/nco_rec_var.c
+++ b/src/nco/nco_rec_var.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rec_var.c,v 1.30 2014/06/15 21:06:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rec_var.c,v 1.32 2015/02/04 04:16:24 zender Exp $ */
 
 /* Purpose: Record variable utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_rec_var.h" /* Record variable utilities */
@@ -67,8 +67,8 @@ rec_crd_chk /* Check for monotonicity of coordinate values */
   case NC_SHORT: rec_crd_val_crr=var->val.sp[0]; break;
   case NC_USHORT: rec_crd_val_crr=var->val.usp[0]; break;
   case NC_UINT: rec_crd_val_crr=var->val.uip[0]; break;
-  case NC_INT64: rec_crd_val_crr=var->val.i64p[0]; break;
-  case NC_UINT64: rec_crd_val_crr=var->val.ui64p[0]; break;
+  case NC_INT64: rec_crd_val_crr=(double)var->val.i64p[0]; break; /* CEWI for MSVC */
+  case NC_UINT64: rec_crd_val_crr=(double)var->val.ui64p[0]; break; /* CEWI for MSVC */
   case NC_BYTE: rec_crd_val_crr=var->val.bp[0]; break;
   case NC_UBYTE: rec_crd_val_crr=var->val.ubp[0]; break;
   case NC_CHAR: rec_crd_val_crr=var->val.cp[0]; break;
diff --git a/src/nco/nco_rec_var.h b/src/nco/nco_rec_var.h
index 62c18e9..010b535 100644
--- a/src/nco/nco_rec_var.h
+++ b/src/nco/nco_rec_var.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rec_var.h,v 1.22 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rec_var.h,v 1.23 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Record variable utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_rth_flt.c b/src/nco/nco_rth_flt.c
index 17b3b76..941764c 100644
--- a/src/nco/nco_rth_flt.c
+++ b/src/nco/nco_rth_flt.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_flt.c,v 1.39 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_flt.c,v 1.42 2015/02/04 04:16:24 zender Exp $ */
 
 /* Purpose: Float-precision arithmetic, MSVC macros */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_rth_flt.h" /* Float-precision arithmetic, MSVC macros */
@@ -13,14 +13,14 @@
    MSVC does not define lrint(), lrintf(), lrintl(), llrint(), llrintf(), llrintl(): Round to nearest even integer, raise exceptions
    Summary of POSIX, ISO, and MSVC math intrinsics at http://www.johndcook.com/math_h.html */
 #ifdef _MSC_VER
-long long int llrint(double x){return (x >= 0.0) ? floor(x+0.5) : ceil(x-0.5);};
-long long int llrintf(float x){return (x >= 0.0f) ? floorf(x+0.5f) : ceilf(x-0.5f);};
-long int lrint(double x){return (x >= 0.0) ? floor(x+0.5) : ceil(x-0.5);};
-long int lrintf(float x){return (x >= 0.0f) ? floorf(x+0.5f) : ceilf(x-0.5f);};
-long long int llround(double x){return floor(x+0.5);}
-long long int llroundf(float x){return floorf(x+0.5f);}
-long int lround(double x){return floor(x+0.5);}
-long int lroundf(float x){return floorf(x+0.5f);}
+long long int llrint(double x){return (x >= 0.0) ? (long long int)floor(x+0.5) : (long long int)ceil(x-0.5);}; /* casts are CEWI for MSVC */
+long long int llrintf(float x){return (x >= 0.0f) ? (long long int)floorf(x+0.5f) : (long long int)ceilf(x-0.5f);};
+long int lrint(double x){return (x >= 0.0) ? (long int)floor(x+0.5) : (long int)ceil(x-0.5);};
+long int lrintf(float x){return (x >= 0.0f) ? (long int)floorf(x+0.5f) : (long int)ceilf(x-0.5f);};
+long long int llround(double x){return (long long int)floor(x+0.5);}
+long long int llroundf(float x){return (long long int)floorf(x+0.5f);}
+long int lround(double x){return (long int)floor(x+0.5);}
+long int lroundf(float x){return (long int)floorf(x+0.5f);}
 #endif /* !_MSC_VER */ 
 
 /* In ANSI C, <math.h> provides standard math intrinsics in double precision 
@@ -82,7 +82,7 @@ float fabsf(float x){return (float)(fabs((double)x));}
 float floorf(float x){return (float)(floor((double)x));}
 #endif /* !NEED_FLOORF */ 
 #ifdef NEED_GAMMAF
-float gammaf(float x){return (float)(gamma((double)x));}
+float gammaf(float x){return (float)(tgamma((double)x));}
 #endif /* !NEED_GAMMAF */ 
 #ifdef NEED_LOG10F
 float log10f(float x){return (float)(log10((double)x));}
diff --git a/src/nco/nco_rth_flt.h b/src/nco/nco_rth_flt.h
index ffc5886..5cf6f97 100644
--- a/src/nco/nco_rth_flt.h
+++ b/src/nco/nco_rth_flt.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_flt.h,v 1.52 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_flt.h,v 1.53 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Float-precision arithmetic, MSVC macros */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_rth_utl.c b/src/nco/nco_rth_utl.c
index bd7be01..8be01e6 100644
--- a/src/nco/nco_rth_utl.c
+++ b/src/nco/nco_rth_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_utl.c,v 1.70 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_utl.c,v 1.73 2015/02/07 05:42:35 zender Exp $ */
 
 /* Purpose: Arithmetic controls and utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_rth_utl.h" /* Arithmetic controls and utilities */
@@ -83,6 +83,7 @@ nco_opr_nrm /* [fnc] Normalization of arithmetic operations for ncra/nces */
         break;
       case nco_op_min: /* Minimum is already in buffer, do nothing */
       case nco_op_max: /* Maximum is already in buffer, do nothing */
+      case nco_op_mabs: /* Maximum absolute value is already in buffer, do nothing */
         break;
       case nco_op_ttl: /* Total is already in buffer, stuff missing values into elements with zero tally */
         (void)nco_var_tll_zro_mss_val(var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc[idx]->tally,var_prc_out[idx]->val);
@@ -144,10 +145,32 @@ nco_opr_drv /* [fnc] Intermediate control of arithmetic operations for ncra/nces
     /* On first loop, simply copy variables from var_prc to var_prc_out */
     if(idx_rec == 0) (void)nco_var_copy(var_prc->type,var_prc->sz,var_prc->val,var_prc_out->val); else (void)nco_var_min_bnr(var_prc_out->type,var_prc_out->sz,var_prc->has_mss_val,var_prc->mss_val,var_prc->val,var_prc_out->val);
     break;
-  case nco_op_max: /* Maximium */
+  case nco_op_max: /* Maximum */
     /* On first loop, simply copy variables from var_prc to var_prc_out */
     if(idx_rec == 0) (void)nco_var_copy(var_prc->type,var_prc->sz,var_prc->val,var_prc_out->val); else (void)nco_var_max_bnr(var_prc_out->type,var_prc_out->sz,var_prc->has_mss_val,var_prc->mss_val,var_prc->val,var_prc_out->val);
     break;	
+  case nco_op_mabs: /* Maximum absolute value */
+    /* Always take the absolute value of the fresh input
+       Then, on first loop, copy variable from var_prc to var_prc_out like min and max
+       Following loops, do comparative maximum after taking absolute */
+    (void)nco_var_abs(var_prc->type,var_prc->sz,var_prc->has_mss_val,var_prc->mss_val,var_prc->val);
+    if(idx_rec == 0) (void)nco_var_copy(var_prc->type,var_prc->sz,var_prc->val,var_prc_out->val); else (void)nco_var_max_bnr(var_prc_out->type,var_prc_out->sz,var_prc->has_mss_val,var_prc->mss_val,var_prc->val,var_prc_out->val);
+    break;	
+  case nco_op_mebs: /* Mean absolute value */
+    /* Always take the absolute value of the fresh input
+       Then, on first loop, copy variable from var_prc to var_prc_out like min and max
+       Following loops, do comparative maximum after taking absolute value */
+    (void)nco_var_abs(var_prc->type,var_prc->sz,var_prc->has_mss_val,var_prc->mss_val,var_prc->val);
+    if(idx_rec == 0) (void)nco_var_copy(var_prc->type,var_prc->sz,var_prc->val,var_prc_out->val); 
+    (void)nco_var_add_tll_ncra(var_prc->type,var_prc->sz,var_prc->has_mss_val,var_prc->mss_val,var_prc->tally,var_prc->val,var_prc_out->val);
+    break;	
+  case nco_op_mibs: /* Mean absolute value */
+    /* Always take the absolute value of the fresh input
+       Then, on first loop, copy variable from var_prc to var_prc_out like min and max
+       Following loops, do comparative minimum after taking absolute value */
+    (void)nco_var_abs(var_prc->type,var_prc->sz,var_prc->has_mss_val,var_prc->mss_val,var_prc->val);
+    if(idx_rec == 0) (void)nco_var_copy(var_prc->type,var_prc->sz,var_prc->val,var_prc_out->val); else (void)nco_var_min_bnr(var_prc_out->type,var_prc_out->sz,var_prc->has_mss_val,var_prc->mss_val,var_prc->val,var_prc_out->val);
+    break;	
   case nco_op_ttl: /* Total */
     /* NB: Copying input to output on first loop for nco_op_ttl, in similar manner to nco_op_[max/min], can work
        However, copying with nco_var_copy() would not change the tally variable, leaving it equal to zero
@@ -184,17 +207,20 @@ nco_op_typ_cf_sng /* [fnc] Convert arithmetic operation type enum to string */
 (const int nco_op_typ) /* I [enm] Arithmetic operation type */
 {
   /* Purpose: Convert arithmetic operation type enum to string for use in CF Cell Methods 
-     http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.7-draft1/cf-conventions.html#appendix-cell-methods */
+     http://cfconventions.org/Data/cf-conventions/cf-conventions-1.7/build/cf-conventions.html#cell-methods */
   switch(nco_op_typ){
   case nco_op_avg: return "mean"; break; /* [enm] Average */
   case nco_op_min: return "minimum"; break; /* [enm] Minimum value */
   case nco_op_max: return "maximum"; break; /* [enm] Maximum value */
   case nco_op_ttl: return "sum"; break; /* [enm] Linear sum */
-  case nco_op_sqravg: return "TBD"; break; /* [enm] Square of mean */
+  case nco_op_mabs: return "maximum_absolute_value"; break; /* [enm] Maximum absolute value */
+  case nco_op_mebs: return "mean_absolute_value"; break; /* [enm] Mean absolute value */
+  case nco_op_mibs: return "minimum_absolute_value"; break; /* [enm] Minimum absolute value */
+  case nco_op_sqravg: return "square_of_mean"; break; /* [enm] Square of mean */
   case nco_op_avgsqr: return "variance"; break; /* [enm] Mean of sum of squares */
-  case nco_op_sqrt: return "TBD"; break; /* [enm] Square root of mean */
-  case nco_op_rms: return "TBD"; break; /* [enm] Root-mean-square (normalized by N) */
-  case nco_op_rmssdn: return "TBD"; break; /* [enm] Root-mean square normalized by N-1 */
+  case nco_op_sqrt: return "square_root_of_mean"; break; /* [enm] Square root of mean */
+  case nco_op_rms: return "root_mean_square"; break; /* [enm] Root-mean-square (normalized by N) */
+  case nco_op_rmssdn: return "root_mean_square_nm1"; break; /* [enm] Root-mean square normalized by N-1 */
   case nco_op_add:
   case nco_op_sbt:
   case nco_op_mlt:
@@ -238,6 +264,9 @@ nco_op_typ_get /* [fnc] Convert user-specified operation into operation key */
 
   if(!strcmp(nco_op_sng,"avg") || !strcmp(nco_op_sng,"average") || !strcmp(nco_op_sng,"mean")) return nco_op_avg;
   if(!strcmp(nco_op_sng,"avgsqr")) return nco_op_avgsqr;
+  if(!strcmp(nco_op_sng,"mabs") || !strcmp(nco_op_sng,"maximum_absolute_value")) return nco_op_mabs;
+  if(!strcmp(nco_op_sng,"mebs") || !strcmp(nco_op_sng,"mean_absolute_value")) return nco_op_mebs;
+  if(!strcmp(nco_op_sng,"mibs") || !strcmp(nco_op_sng,"minimum_absolute_value")) return nco_op_mibs;
   if(!strcmp(nco_op_sng,"max") || !strcmp(nco_op_sng,"maximum")) return nco_op_max;
   if(!strcmp(nco_op_sng,"min") || !strcmp(nco_op_sng,"minimum")) return nco_op_min;
   if(!strcmp(nco_op_sng,"rms") || !strcmp(nco_op_sng,"root-mean-square")) return nco_op_rms;
@@ -253,7 +282,7 @@ nco_op_typ_get /* [fnc] Convert user-specified operation into operation key */
 
   (void)fprintf(stderr,"%s: ERROR %s reports unknown user-specified operation type \"%s\"\n",nco_prg_nm,fnc_nm,nco_op_sng);
   (void)fprintf(stderr,"%s: HINT Valid operation type (op_typ) choices:\n",nco_prg_nm);
-  if(nco_prg_id == ncbo) (void)fprintf(stderr,"addition: add,+,addition\nsubtraction: sbt,-,dff,diff,sub,subtract,subtraction\nmultiplication: mlt,*,mult,multiply,multiplication\ndivision: dvd,/,divide,division\n"); else (void)fprintf(stderr,"min or minimum, max or maximum, ttl or total or sum, avg or average or mean, sqrt or square-root, sqravg, avgsqr, rms or root-mean-square, rmssdn\n");
+  if(nco_prg_id == ncbo) (void)fprintf(stderr,"addition: add,+,addition\nsubtraction: sbt,-,dff,diff,sub,subtract,subtraction\nmultiplication: mlt,*,mult,multiply,multiplication\ndivision: dvd,/,divide,division\n"); else (void)fprintf(stderr,"min or minimum, max or maximum, mabs or maximum_absolute_value, mebs or mean_absolute_value, mibs or maximum_absolute_value, ttl or total or sum, avg or average or mean, sqrt or square-root, sqravg, avgsqr, rms or root-mean-square, rmssdn\n");
   nco_exit(EXIT_FAILURE);
   return False; /* Statement should not be reached */
 } /* end nco_op_typ_get() */
diff --git a/src/nco/nco_rth_utl.h b/src/nco/nco_rth_utl.h
index e50446e..d9e25b3 100644
--- a/src/nco/nco_rth_utl.h
+++ b/src/nco/nco_rth_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_utl.h,v 1.44 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_utl.h,v 1.45 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Arithmetic controls and utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_scl_utl.c b/src/nco/nco_scl_utl.c
index b496a15..29dd75b 100644
--- a/src/nco/nco_scl_utl.c
+++ b/src/nco/nco_scl_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_scl_utl.c,v 1.32 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_scl_utl.c,v 1.33 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Scalar utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_scl_utl.h" /* Scalar utilities */
diff --git a/src/nco/nco_scl_utl.h b/src/nco/nco_scl_utl.h
index 14afbb8..c33262e 100644
--- a/src/nco/nco_scl_utl.h
+++ b/src/nco/nco_scl_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_scl_utl.h,v 1.25 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_scl_utl.h,v 1.26 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Scalar utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_scm.c b/src/nco/nco_scm.c
index ca9c40a..df9b216 100644
--- a/src/nco/nco_scm.c
+++ b/src/nco/nco_scm.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_scm.c,v 1.59 2014/10/09 15:00:35 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_scm.c,v 1.60 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Software configuration management */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_scm.h" /* Software configuration management */
@@ -31,7 +31,7 @@ cvs_vrs_prs(void) /* [fnc] Return CVS version string */
   /* Unexpanded cvs keywords in cvs_Name trigger GCC 4.0+ warning
      "./src/nco/nco_scm.c:81: warning: offset outside bounds of constant string"
      because routine looks for cvs_Name+7 later on */
-  char cvs_Name[]="$Name: nco-4_4_7 $";
+  char cvs_Name[]="$Name: nco-4_4_8 $";
   const char dlr_nm_cln_spc[]="$Name: "; /* [sng] Dollar name colon space */
   const char nco_sng[]="nco"; 
   const char spc_dlr[]=" $"; /* [sng] Space dollar */
@@ -148,8 +148,8 @@ void
 nco_cpy_prn(void) /* [fnc] Print copyright notice */
 {
   /* Purpose: Print copyright notice */
-  (void)fprintf(stderr,"Copyright (C) 1995--2014 Charlie Zender\n");
-  (void)fprintf(stdout,"This program is part of NCO, the netCDF Operators.\nNCO is free software and comes with a BIG FAT KISS and ABOLUTELY NO WARRANTY\nYou can redistribute and/or modify NCO under the terms of the\nGNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file\nGPL: http://www.gnu.org/copyleft/gpl.html\nLICENSE: http://nco.cvs.sf.net/nco/nco/LICENSE\n");
+  (void)fprintf(stderr,"Copyright (C) 1995--2015 Charlie Zender\n");
+  (void)fprintf(stdout,"This program is part of NCO, the netCDF Operators.\nNCO is free software and comes with a BIG FAT KISS and ABOLUTELY NO WARRANTY\nYou may redistribute and/or modify NCO under the terms of the\nGNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file\nGPL: http://www.gnu.org/copyleft/gpl.html\nLICENSE: http://nco.cvs.sf.net/nco/nco/LICENSE\n");
 } /* end copyright_prn() */
 
 void
diff --git a/src/nco/nco_scm.h b/src/nco/nco_scm.h
index c959818..49b283d 100644
--- a/src/nco/nco_scm.h
+++ b/src/nco/nco_scm.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_scm.h,v 1.26 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_scm.h,v 1.27 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Software configuration management */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_sld.c b/src/nco/nco_sld.c
new file mode 100644
index 0000000..ce93e75
--- /dev/null
+++ b/src/nco/nco_sld.c
@@ -0,0 +1,510 @@
+/* $Header: /cvsroot/nco/nco/src/nco/nco_sld.c,v 1.26 2015/02/16 23:33:51 zender Exp $ */
+
+/* Purpose: NCO utilities for Swath-Like Data (SLD) */
+
+/* Copyright (C) 2015--2015 Charlie Zender
+   This file is part of NCO, the netCDF Operators. NCO is free software.
+   You may redistribute and/or modify NCO under the terms of the 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
+
+/* Usage:
+   ncks -4 -O -C -v ppc_dbl --ppc /ppc_dbl=3 ~/nco/data/in.nc ~/foo.nc */
+
+#include "nco_sld.h" /* Swath-Like Data */
+
+kvmap_sct nco_sng2map /* [fnc] parsing string to key-value pair */
+(char *sng, /* I [sng] string to parse with a = */
+ kvmap_sct kvm) /* O [sct] key-value pair */
+{
+  char *prt;
+
+  int icnt=0;
+
+  prt=strtok(sng,"=");
+  while(prt){
+    icnt++;
+    nco_sng_strip(prt);
+    switch(icnt){
+    case 1:
+      kvm.key=strdup(prt);
+      break;
+    case 2:
+      kvm.value=strdup(prt);
+      break;
+    default:
+      (void)fprintf(stderr,"Cannot get key-value pair from this input: %s\n",sng);
+      break;
+    }/* end switch */
+    prt=strtok(NULL,"=");
+  }/* end while */
+  return kvm;
+} /* end nco_sng2map() */
+
+void
+nco_ppc_att_prc /* [fnc] Create PPC attribute */
+(const int nc_id, /* I [id] Input netCDF file ID */
+ const trv_tbl_sct * const trv_tbl) /* I [sct] GTT (Group Traversal Table) */
+{
+  /* NB: Can fail when output file has fewer variables than input file (i.e., was subsetted)
+     20150126: functionality moved to nco_xtr_dfn() */
+  aed_sct aed;
+  char att_nm_dsd[]="least_significant_digit";
+  char att_nm_nsd[]="number_of_significant_digits";
+  int grp_id; /* [id] Group ID */
+  int var_id; /* [id] Variable ID */
+  int ppc;
+  int rcd=NC_NOERR;
+  long att_sz;
+  nc_type att_typ;
+  ptr_unn att_val;
+  int ppc_xst;
+
+  for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
+    ppc=trv_tbl->lst[idx_tbl].ppc;
+    if(ppc == NC_MAX_INT) continue;
+    trv_sct var_trv=trv_tbl->lst[idx_tbl];
+    aed.var_nm=strdup(var_trv.nm);
+    (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id); /* Obtain group ID */
+    (void)nco_inq_varid(grp_id,var_trv.nm,&var_id); /* Obtain variable ID */
+    att_val.ip=&ppc;
+    aed.id=var_id;
+    aed.val=att_val;
+    if(var_trv.flg_nsd) aed.att_nm=att_nm_nsd; else aed.att_nm=att_nm_dsd;
+    aed.type=NC_INT; /* NB: value changes if it is assigned outside for loop */
+    aed.sz=1L;
+    aed.mode=aed_create; 
+    rcd=nco_inq_att_flg(nc_id,var_id,aed.att_nm,&att_typ,&att_sz);
+    if(rcd == NC_NOERR && aed.sz == att_sz && aed.type == att_typ){
+      (void)nco_get_att(nc_id,var_id,aed.att_nm,&ppc_xst,att_typ);
+      if(ppc < ppc_xst) aed.mode=aed_overwrite;
+      else continue; /* no changes needed */
+    } /* endif */
+    (void)nco_aed_prc(nc_id,var_id,aed);
+  } /* end loop */
+} /* end nco_ppc_att_prc() */
+
+void
+nco_ppc_ini /* Set PPC based on user specifications */
+(const int nc_id, /* I [id] netCDF input file ID */
+ int *dfl_lvl, /* O [enm] Deflate level */
+ const int fl_out_fmt,  /* I [enm] Output file format */
+ char * const ppc_arg[], /* I [sng] List of user-specified PPC */
+ const int ppc_nbr, /* I [nbr] Number of PPC specified */
+ trv_tbl_sct * const trv_tbl) /* I/O [sct] Traversal table */
+{
+  int idx;
+  int ippc=0;
+  kvmap_sct *ppc_lst;  /* [sct] PPC container */
+  kvmap_sct kvm;
+
+  if(fl_out_fmt == NC_FORMAT_NETCDF4 || fl_out_fmt == NC_FORMAT_NETCDF4_CLASSIC){
+    /* If user did not explicitly set deflate level for this file ... */
+    if(*dfl_lvl == NCO_DFL_LVL_UNDEFINED){
+      *dfl_lvl=1;
+      if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stderr,"%s: INFO Precision-Preserving Compression (PPC) automatically activating file-wide deflation level = %d\n",nco_prg_nm_get(),*dfl_lvl);
+    } /* endif */
+  }else{
+    if(nco_dbg_lvl_get() >= nco_dbg_std) (void)fprintf(stderr,"%s: INFO Requested Precision-Preserving Compression (PPC) on netCDF3 output dataset. Unlike netCDF4, netCDF3 does not support internal compression. To take full advantage of PPC consider writing file as netCDF4 enhanced (e.g., %s -4 ...) or classic (e.g., %s -7 ...). Or consider compressing the netCDF3 file afterwards with, e.g., gzip or bzip2. File must then be uncompressed with, e.g., gunzip or bunzip2 before netCDF readers [...]
+  } /* endelse */
+
+  ppc_lst=(kvmap_sct *)nco_malloc(NC_MAX_VARS*sizeof(kvmap_sct));
+
+  /* Parse PPCs */
+  for(idx=0;idx<ppc_nbr;idx++){
+    if(!strstr(ppc_arg[idx],"=")){
+      (void)fprintf(stdout,"%s: Invalid --ppc specification: %s\n",nco_prg_nm_get(),ppc_arg[idx]);
+      if(ppc_lst) nco_kvmaps_free(ppc_lst);
+      nco_exit(EXIT_FAILURE);
+    } /* endif */
+    kvm=nco_sng2map(ppc_arg[idx],kvm);
+    if(kvm.key){
+      char *items[BUFSIZ];
+      int idxi;
+      int item_nbr=nco_sng2array(",",kvm.key,items); /* multi-var specification */
+      for(idxi=0;idxi<item_nbr;idxi++){ /* expand multi-var specification */
+        ppc_lst[ippc].key=strdup(items[idxi]);
+        ppc_lst[ippc].value=strdup(kvm.value);
+        ippc++;
+      } /* end for */
+    } /* end if */
+  } /* end for */
+
+  /* PPC default exists, set all non-coordinate variables to default first */
+  for(idx=0;idx<ippc;idx++){
+    if(!strcasecmp(ppc_lst[idx].key,"default")){
+      nco_ppc_set_dflt(nc_id,ppc_lst[idx].value,trv_tbl);
+      break; /* only one default is needed */
+    } /* endif */
+  } /* end for */
+
+  /* Set explicit, non-default PPCs that can overwrite default */
+  for(idx=0;idx<ippc;idx++){
+    if(!strcasecmp(ppc_lst[idx].key,"default")) continue;
+    nco_ppc_set_var(ppc_lst[idx].key,ppc_lst[idx].value,trv_tbl);
+  } /* end for */
+
+  /* Unset PPC and flag for all variables with excessive PPC
+     Operational definition of maximum PPC is maximum decimal precision of float/double = FLT_DIG/DBL_DIG = 7/15 */
+  const int nco_max_ppc_dbl=15;
+  const int nco_max_ppc_flt=7;
+  /* Maximum digits for integers taken based on LONG_MAX ... from limits.h */
+  const int nco_max_ppc_short=5;
+  const int nco_max_ppc_ushort=5;
+  const int nco_max_ppc_int=10;
+  const int nco_max_ppc_uint=10;
+  const int nco_max_ppc_int64=19;
+  const int nco_max_ppc_uint64=20;
+  int nco_max_ppc=int_CEWI;
+
+  for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
+    if(trv_tbl->lst[idx_tbl].ppc != NC_MAX_INT){
+      switch(trv_tbl->lst[idx_tbl].var_typ){
+      case NC_FLOAT: nco_max_ppc=nco_max_ppc_flt; break;
+      case NC_DOUBLE: nco_max_ppc=nco_max_ppc_dbl; break;
+      case NC_SHORT: nco_max_ppc=nco_max_ppc_short; break;
+      case NC_USHORT: nco_max_ppc=nco_max_ppc_ushort; break;
+      case NC_INT: nco_max_ppc=nco_max_ppc_int; break;
+      case NC_UINT: nco_max_ppc=nco_max_ppc_uint; break;
+      case NC_INT64: nco_max_ppc=nco_max_ppc_int64; break;
+      case NC_UINT64: nco_max_ppc=nco_max_ppc_uint64; break;
+	/* Do nothing for non-numeric types ...*/
+      case NC_CHAR:
+      case NC_BYTE:
+      case NC_UBYTE:
+      case NC_STRING: break;
+      default: 
+	nco_dfl_case_nc_type_err();
+	break;
+      } /* end switch */
+
+      switch(trv_tbl->lst[idx_tbl].var_typ){
+	/* Floating point types */
+      case NC_FLOAT: 
+      case NC_DOUBLE: 
+	if(trv_tbl->lst[idx_tbl].ppc > nco_max_ppc){
+	  if(trv_tbl->lst[idx_tbl].flg_nsd) (void)fprintf(stdout,"%s: INFO Number of Significant Digits (NSD) requested = %d too high for variable %s which is of type %s. No quantization or rounding will be performed for this variable. HINT: Maximum precisions for NC_FLOAT and NC_DOUBLE are %d and %d, respectively.\n",nco_prg_nm_get(),trv_tbl->lst[idx_tbl].ppc,trv_tbl->lst[idx_tbl].nm,nco_typ_sng(trv_tbl->lst[idx_tbl].var_typ),nco_max_ppc_flt,nco_max_ppc_dbl);
+	  trv_tbl->lst[idx_tbl].ppc=NC_MAX_INT;
+	} /* endif */
+	break;
+	/* Integer types */
+      case NC_SHORT:
+      case NC_USHORT:
+      case NC_INT:
+      case NC_UINT:
+      case NC_INT64:
+      case NC_UINT64:
+	if(
+	   /* ...rounding requested with NSD or ... */
+	   (trv_tbl->lst[idx_tbl].flg_nsd) ||
+	   /* ...more rounding requested with DSD than available or ... */
+	   (!trv_tbl->lst[idx_tbl].flg_nsd && (trv_tbl->lst[idx_tbl].ppc < -1*nco_max_ppc)) ||
+	   /* ...more precision requested than integers have or ... */
+	   (!trv_tbl->lst[idx_tbl].flg_nsd && (trv_tbl->lst[idx_tbl].ppc >= 0)) ||
+	   False)
+	trv_tbl->lst[idx_tbl].ppc=NC_MAX_INT;
+	break;
+      case NC_CHAR: /* Do nothing for non-numeric types ...*/
+      case NC_BYTE:
+      case NC_UBYTE:
+      case NC_STRING:
+	trv_tbl->lst[idx_tbl].ppc=NC_MAX_INT;
+	break;
+      default: 
+	nco_dfl_case_nc_type_err();
+	break;
+      } /* end switch */
+      /* For consistency reset flg_nsd as well */
+      if(trv_tbl->lst[idx_tbl].ppc == NC_MAX_INT) trv_tbl->lst[idx_tbl].flg_nsd=True;
+    } /* endif */
+  } /* endfor */
+
+  if(ppc_lst) nco_kvmaps_free(ppc_lst);
+} /* end nco_ppc_ini() */
+
+void
+nco_ppc_set_dflt /* Set PPC value for all non-coordinate variables for --ppc default  */
+(const int nc_id, /* I [id] netCDF input file ID */
+ const char * const ppc_arg, /* I [sng] User input for precision-preserving compression */
+ trv_tbl_sct * const trv_tbl) /* I/O [sct] Traversal table */
+{
+  int ppc;
+  char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
+  nco_bool flg_nsd=True; /* [flg] PPC is NSD */
+
+  if(ppc_arg[0] == '.'){
+    flg_nsd=False; /* DSD */
+    ppc=(int)strtol(ppc_arg+1L,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
+    if(*sng_cnv_rcd) nco_sng_cnv_err(ppc_arg+1L,"strtol",sng_cnv_rcd);
+  }else{ /* NSD */
+    ppc=(int)strtol(ppc_arg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
+    if(*sng_cnv_rcd) nco_sng_cnv_err(ppc_arg,"strtol",sng_cnv_rcd);
+    if(ppc <= 0){
+      (void)fprintf(stdout,"%s ERROR Number of Significant Digits (NSD) must be postive. Default is specified as %d. HINT: Decimal Significant Digit (DSD) rounding does accept negative arguments (number of digits in front of the decimal point). However, the DSD argument must be prefixed by a period or \"dot\", e.g., \"--ppc foo=.-2\", to distinguish it from NSD quantization.\n",nco_prg_nm_get(),ppc);
+      nco_exit(EXIT_FAILURE);
+    } /* endif */    
+  } /* end if */
+
+  for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
+    if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_var && !trv_tbl->lst[idx_tbl].is_crd_var){
+      /* Allow "default" to affect only floating point types */
+      if(trv_tbl->lst[idx_tbl].var_typ == NC_FLOAT || trv_tbl->lst[idx_tbl].var_typ == NC_DOUBLE){
+	/* Prevent "default" from applying to coordinate and bounds variables */
+	int grp_id;
+	int var_id;
+	nco_inq_grp_full_ncid(nc_id,trv_tbl->lst[idx_tbl].grp_nm_fll,&grp_id);
+	nco_inq_varid(grp_id,trv_tbl->lst[idx_tbl].nm,&var_id);
+	if(!nco_is_spc_in_bnd_att(grp_id,var_id) && !nco_is_spc_in_crd_att(grp_id,var_id)){
+	  trv_tbl->lst[idx_tbl].ppc=ppc;
+	  trv_tbl->lst[idx_tbl].flg_nsd=flg_nsd;
+	} /* endif */
+      } /* endif */
+    } /* endif */
+  } /* endfor */
+} /* end nco_ppc_set_dflt() */
+
+void
+nco_ppc_set_var
+(const char * const var_nm, /* I [sng] Variable name to find */
+ const char * const ppc_arg, /* I [sng] User input for precision-preserving compression */
+ trv_tbl_sct * const trv_tbl) /* I/O [sct] Traversal table */
+{
+  const char sls_chr='/'; /* [chr] Slash character */
+  int mch_nbr=0;
+  int ppc;
+  char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
+  nco_bool flg_nsd=True; /* [flg] PPC is NSD */
+
+  if(ppc_arg[0] == '.'){ /* DSD */
+    flg_nsd=False;
+    ppc=(int)strtol(ppc_arg+1L,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
+    if(*sng_cnv_rcd) nco_sng_cnv_err(ppc_arg+1L,"strtol",sng_cnv_rcd);
+  }else{ /* NSD */
+    ppc=(int)strtol(ppc_arg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
+    if(*sng_cnv_rcd) nco_sng_cnv_err(ppc_arg,"strtol",sng_cnv_rcd);
+    if(ppc <= 0){
+      (void)fprintf(stdout,"%s ERROR Number of Significant Digits (NSD) must be postive. Specified value for %s is %d. HINT: Decimal Significant Digit (DSD) rounding does accept negative arguments (number of digits in front of the decimal point). However, the DSD argument must be prefixed by a period or \"dot\", e.g., \"--ppc foo=.-2\", to distinguish it from NSD quantization.\n",nco_prg_nm_get(),var_nm,ppc);
+      nco_exit(EXIT_FAILURE);
+    } /* endif */    
+  } /* end else */
+
+  if(strpbrk(var_nm,".*^$\\[]()<>+?|{}")){ /* Regular expression ... */
+#ifdef NCO_HAVE_REGEX_FUNCTIONALITY
+    regmatch_t *result;
+    regex_t *rx;
+    size_t rx_prn_sub_xpr_nbr;
+    rx=(regex_t *)nco_malloc(sizeof(regex_t));
+    if(strchr(var_nm,sls_chr)){ /* Full name is used */
+      /* Important difference between full- and short-name matching: Prepend carat to RX so full name matches must start at beginning of variable name */
+      char sng2mch[BUFSIZ]="^";
+      strcat(sng2mch,var_nm);
+      if(regcomp(rx,sng2mch,(REG_EXTENDED | REG_NEWLINE))){ /* Compile regular expression */
+        (void)fprintf(stdout,"%s: ERROR trv_tbl_set_ppc() error in regular expression \"%s\"\n",nco_prg_nm_get(),var_nm);
+        nco_exit(EXIT_FAILURE);
+      } /* endif */
+      rx_prn_sub_xpr_nbr=rx->re_nsub+1L; /* Number of parenthesized sub-expressions */
+      result=(regmatch_t *)nco_malloc(sizeof(regmatch_t)*rx_prn_sub_xpr_nbr);
+      for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
+        if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_var){
+	  if(!regexec(rx,trv_tbl->lst[idx_tbl].nm_fll,rx_prn_sub_xpr_nbr,result,0)){
+	    trv_tbl->lst[idx_tbl].ppc=ppc;
+	    trv_tbl->lst[idx_tbl].flg_nsd=flg_nsd;
+	    mch_nbr++;
+	  } /* endif */
+        } /* endif */
+      } /* endfor */
+    }else{ /* Relative name is used */
+      if(regcomp(rx,var_nm,(REG_EXTENDED | REG_NEWLINE))){ /* Compile regular expression */
+        (void)fprintf(stdout,"%s: ERROR trv_tbl_set_ppc() error in regular expression \"%s\"\n",nco_prg_nm_get(),var_nm);
+        nco_exit(EXIT_FAILURE);
+      } /* endif */
+      rx_prn_sub_xpr_nbr=rx->re_nsub+1L; /* Number of parenthesized sub-expressions */
+      result=(regmatch_t *)nco_malloc(sizeof(regmatch_t)*rx_prn_sub_xpr_nbr);
+      for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
+        if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_var){
+	  if(!regexec(rx,trv_tbl->lst[idx_tbl].nm,rx_prn_sub_xpr_nbr,result,0)){
+	    trv_tbl->lst[idx_tbl].ppc=ppc;
+	    trv_tbl->lst[idx_tbl].flg_nsd=flg_nsd;
+	    mch_nbr++;
+	  } /* endif */
+	} /* endif */
+      } /* endfor */
+    } /* end Full name */
+    regfree(rx); /* Free regular expression data structure */
+    rx=(regex_t *)nco_free(rx);
+    result=(regmatch_t *)nco_free(result);
+#else /* !NCO_HAVE_REGEX_FUNCTIONALITY */
+    (void)fprintf(stdout,"%s: ERROR: Sorry, wildcarding (extended regular expression matches to variables) was not built into this NCO executable, so unable to compile regular expression \"%s\".\nHINT: Make sure libregex.a is on path and re-build NCO.\n",nco_prg_nm_get(),var_nm);
+      nco_exit(EXIT_FAILURE);
+#endif /* !NCO_HAVE_REGEX_FUNCTIONALITY */
+  }else if(strchr(var_nm,sls_chr)){ /* Full name */
+    for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
+      if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_var){
+	if(!strcmp(var_nm,trv_tbl->lst[idx_tbl].nm_fll)){
+	  trv_tbl->lst[idx_tbl].ppc=ppc;
+	  trv_tbl->lst[idx_tbl].flg_nsd=flg_nsd;
+	  mch_nbr++;
+	  break; /* Only one match with full name */
+	} /* endif */
+      } /* endif */
+    } /* endfor */
+  }else{ /* Not full name so set all matching vars */
+    for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
+      if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_var){
+	if(!strcmp(var_nm,trv_tbl->lst[idx_tbl].nm)){
+	  trv_tbl->lst[idx_tbl].ppc=ppc;
+	  trv_tbl->lst[idx_tbl].flg_nsd=flg_nsd;
+	  mch_nbr++;
+	} /* endif */
+      } /* endif */
+    } /* endfor */
+  } /* end Full name */
+  
+  if(mch_nbr == 0){
+    (void)fprintf(stdout,"%s: ERROR nco_ppc_set_var() reports user specified variable (or, possibly, regular expression) = \"%s\" does not match any variables in input file\n",nco_prg_nm_get(),var_nm);
+    nco_exit(EXIT_FAILURE);
+  } /* endif */
+    
+  return;
+} /* end nco_ppc_set_var() */
+
+char *
+nco_sng_strip( /* [fnc] Strip leading and trailing white space */
+char *sng)
+{
+  /* fxm: seems not working for \n??? */
+  char *srt=sng;
+  while(isspace(*srt)) srt++;
+  int end=strlen(srt);
+  if(srt != sng){
+    memmove(sng,srt,end);
+    sng[end]='\0';
+  } /* endif */
+  while(isblank(*(sng+end-1))) end--;
+  sng[end]='\0';
+  return sng;
+}/* end nco_sng_strip */
+
+int nco_sng2array(const char *dlm, const char *str, char **sarray)
+{
+  int idx=0;
+  char *tstr;
+  tstr=strdup(str);
+  sarray[idx]=strtok(tstr,dlm);
+  while(sarray[idx]) sarray[++idx]=strtok(NULL,dlm);
+  return idx;
+} /* end nco_sng2array */
+
+void nco_kvmaps_free(kvmap_sct *kvmaps)
+{
+  int idx=0;
+  while(kvmaps[idx].key){
+    kvmaps[idx].key=(char *)nco_free(kvmaps[idx].key);
+    kvmaps[idx].value=(char *)nco_free(kvmaps[idx].value);
+  } /* end while */
+  kvmaps=(kvmap_sct *)nco_free(kvmaps);
+} /* end nco_kvmaps_free */
+
+void nco_kvmap_prn(kvmap_sct vm)
+{
+  if(!vm.key) return;
+  (void)fprintf(stdout,"%s=",vm.key);
+  (void)fprintf(stdout,"%s\n",vm.value);
+} /* end nco_kvmap_prn */
+
+int 
+hdlscrip( /* return 0 invalid SCRIP file or rcd, 1 success */ 
+char *fl_nm_scrip, /* SCRIP file name with proper path */
+kvmap_sct *kvm_scrip)/* structure to hold contents of SCRIP file */ 
+{
+  char line[BUFSIZ];
+
+  int icnt;
+  int idx=0;
+
+  FILE *fl_scrip;
+
+  fl_scrip=fopen(fl_nm_scrip,"r");
+
+  if(!fl_scrip){
+    fprintf(stderr,"Cannot open SCRIP file %s\n",fl_nm_scrip);
+    return NCO_ERR;
+  } /* endif */
+
+  while(fgets(line,sizeof(line),fl_scrip)){
+    if(!strstr(line,"=")){
+      fprintf(stderr,"invalid line in SCRIP file: %s\n", line);
+      fclose(fl_scrip);
+      return NCO_ERR;
+    } /* endif */
+    kvm_scrip[idx]=nco_sng2map(line,kvm_scrip[idx]);
+    if(!kvm_scrip[idx].key){
+      fclose(fl_scrip);
+      return NCO_ERR;
+    }else{
+      idx++;
+    } /* end else */
+  } /* finish parsing SCRIP file */
+  fclose(fl_scrip);
+
+  for(icnt=0;icnt<idx;icnt++) nco_kvmap_prn(kvm_scrip[icnt]);
+
+  return NCO_NOERR;
+} /* end hdlscrip */
+
+#if 0
+int
+nco_ESMF_Regrid(
+wgt,
+data_in,
+&data_out
+){
+// Given weights and data, do regridding
+ESMF_Regrid(wgt,data_in,data_);
+// write data_out
+}
+
+int
+nco_rgr_wgt_grd_mk();
+
+typedef struct{
+char *fl_grd_in;
+char *fl_grd_out;
+flg_1...;
+} rgr_wgt_sct;
+
+int
+nco_rgr_wgt_grd_mk(
+rgr_wgt_sct *rgr_wgt;
+){
+// Given grids, compute weights
+
+// NCO reads and checks inputs
+open(fl_grd_in);
+read lat_in,lon_in,lat_in_crn,... // nco_var_get
+
+// populate rgr_wgt
+
+nco_ESMF_RegridWeightGen(lat_in_crn,lon_in_crn,lat_out_crn,lon_out_crn,&wgt);
+
+// NCO writes output
+write wgt // nco_var_get
+
+}
+
+int
+nco_ESMF_RegridWeightGen(
+lat_in_crn,
+lon_in_crn,
+...
+){
+// Given grids, compute weights
+
+const char fnc_nm[]="nco_ESMF_RegridWeightGen()";
+int rcd=NC_NOERR;
+rcd=ESMF_RegridWeightGen(lat_in_crn,lon_in_crn,lat_out_crn,lon_out_crn,&wgt);
+if(rcd != NC_NOERR) nco_err_exit(rcd,fnc_nm);
+return rcd;
+
+// NCO writes output
+}
+#endif /* endif False */
diff --git a/src/nco/nco_sld.h b/src/nco/nco_sld.h
new file mode 100644
index 0000000..8649b21
--- /dev/null
+++ b/src/nco/nco_sld.h
@@ -0,0 +1,82 @@
+/* $Header: /cvsroot/nco/nco/src/nco/nco_sld.h,v 1.13 2015/02/09 22:35:36 zender Exp $ */
+
+/* Purpose: Description (definition) of Swath-Like Data (SLD) functions */
+
+/* Copyright (C) 2015--2015 Charlie Zender
+   This file is part of NCO, the netCDF Operators. NCO is free software.
+   You may redistribute and/or modify NCO under the terms of the 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
+
+/* Usage:
+   #include "nco_sld.h" *//* Swath-Like Data */
+
+#ifndef NCO_SLD_H
+#define NCO_SLD_H
+
+/* Standard header files */
+#include <ctype.h> /* isalnum(), isdigit(), tolower() */
+#include <stdio.h> /* stderr, FILE, NULL, printf */
+#include <stdlib.h> /* atof, atoi, malloc, getopt */
+#include <string.h> /* strcmp() */
+
+/* 3rd party vendors */
+#include <netcdf.h> /* netCDF definitions and C library */
+#include "nco_netcdf.h" /* NCO wrappers for netCDF C library */
+
+/* Personal headers */
+#include "nco.h" /* netCDF Operator (NCO) definitions */
+#include "nco_mmr.h" /* Memory management */
+#include "nco_sng_utl.h" /* String utilities */
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+typedef struct {
+  char *key;
+  char *value;
+} kvmap_sct;
+ 
+int hdlscrip(char *fl_nm_scrip, kvmap_sct *kvm_scrip); 
+  
+kvmap_sct nco_sng2map(char *str,  kvmap_sct kvm); /* parse a line return a name-value pair kvmap */
+  
+int nco_sng2array(const char *delim, const char *str, char **sarray); /* split str by delim to sarray returns size of sarray */
+
+char *nco_sng_strip(char *str); /* remove heading and trailing blanks */
+
+void nco_kvmaps_free(kvmap_sct *kvmaps); /* release memory */
+
+void nco_kvmap_prn(kvmap_sct kvm);  /* print kvmap contents */
+
+void 
+nco_ppc_ini /* [fnc] Set PPC based on user specifications */
+(const int nc_id, /* I [id] netCDF input file ID */
+ int *dfl_lvl, /* O [enm] Deflate level */
+ const int fl_out_fmt, /* I [enm] Output file format */
+ char *const ppc_arg[], /* I [sng] List of user-specified ppc */
+ const int ppc_nbr, /* I [nbr] Number of ppc specified */
+ trv_tbl_sct * const trv_tbl); /* I/O [sct] Traversal table */
+
+void
+nco_ppc_att_prc /* [fnc] create ppc att from trv_tbl */
+(const int nc_id, /* I [id] Input netCDF file ID */
+ const trv_tbl_sct * const trv_tbl); /* I [sct] GTT (Group Traversal Table) */
+
+void
+nco_ppc_set_dflt /* Set the ppc value for all non-coordinate vars */
+(const int nc_id, /* I [id] netCDF input file ID */
+ const char * const ppc_arg, /* I [sng] user input for precision-preserving compression */
+ trv_tbl_sct * const trv_tbl); /* I/O [sct] Traversal table */
+
+void
+nco_ppc_set_var
+(const char * const var_nm_fll, /* I [sng] Variable name to find */
+ const char * const ppc_arg, /* I [sng] user input for precision-preserving compression */
+ trv_tbl_sct * const trv_tbl); /* I/O [sct] Traversal table */
+
+#ifdef __cplusplus
+} /* end extern "C" */
+#endif /* __cplusplus */
+
+#endif /* NCO_SLD_H */
diff --git a/src/nco/nco_sng_utl.c b/src/nco/nco_sng_utl.c
index 64c2cbb..e835e55 100644
--- a/src/nco/nco_sng_utl.c
+++ b/src/nco/nco_sng_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_sng_utl.c,v 1.81 2014/11/25 00:22:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_sng_utl.c,v 1.83 2015/02/03 20:25:11 zender Exp $ */
 
 /* Purpose: String utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_sng_utl.h" /* String utilities */
@@ -68,6 +68,16 @@ strncasecmp /* [fnc] Lexicographical case-insensitive string comparison */
 } /* end strncasecmp() */
 #endif /* !NEED_STRCASECMP */
 
+#ifdef NEED_ISBLANK
+int /* O [flg] Character is a space or horizontal tab */
+isblank /* [fnc] Is character a space or horizontal tab? */
+(const int chr) /* I [enm] Character to check */
+{
+  /* 20150203 Initial version */
+  return chr == ' ' || chr == '\t';
+} /* end isblank() */
+#endif /* !NEED_ISBLANK */
+
 /* 20130827 GNU g++ always provides strcasestr(), MSVC never does */
 #ifndef __GNUG__
 # ifdef NEED_STRCASESTR
diff --git a/src/nco/nco_sng_utl.h b/src/nco/nco_sng_utl.h
index 87d9f20..76636f1 100644
--- a/src/nco/nco_sng_utl.h
+++ b/src/nco/nco_sng_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_sng_utl.h,v 1.50 2014/10/01 03:50:42 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_sng_utl.h,v 1.52 2015/02/03 20:25:11 zender Exp $ */
 
 /* Purpose: String utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -25,6 +25,10 @@
 #endif /* !HAVE_STRINGS_H */
 
 #ifdef _MSC_VER
+/* 20150203 C99 supplies isblank() and isspace() in ctype.h
+   MSVC 2010 has ctype.h and supplies isspace() but lacks isblank() 
+   MSVC 2012+ (apparently) supplies everything expected in ctype.h? */
+# define NEED_ISBLANK
 # define NEED_STRCASESTR
 #endif /* !_MSC_VER */
 
@@ -41,6 +45,12 @@
 extern "C" {
 #endif /* __cplusplus */
 
+#ifdef NEED_ISBLANK
+int /* O [flg] Character is a space or horizontal tab */
+isblank /* [fnc] Is character a space or horizontal tab? */
+(const int chr); /* I [enm] Character to check */
+#endif /* !NEED_ISBLANK */
+
 #ifdef NEED_STRCASECMP
 int /* O [enm] [-1,0,1] sng_1 [<,=,>] sng_2 */
 strcasecmp /* [fnc] Lexicographical case-insensitive string comparison */
diff --git a/src/nco/nco_srm.c b/src/nco/nco_srm.c
index f5a7e18..16adb1e 100644
--- a/src/nco/nco_srm.c
+++ b/src/nco/nco_srm.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_srm.c,v 1.3 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_srm.c,v 1.4 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Streams */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_srm.h" /* Streams */
diff --git a/src/nco/nco_srm.h b/src/nco/nco_srm.h
index 8ad97af..36aba94 100644
--- a/src/nco/nco_srm.h
+++ b/src/nco/nco_srm.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_srm.h,v 1.3 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_srm.h,v 1.4 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Streams */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_typ.h b/src/nco/nco_typ.h
index 15225fe..81a83d7 100644
--- a/src/nco/nco_typ.h
+++ b/src/nco/nco_typ.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_typ.h,v 1.39 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_typ.h,v 1.40 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Type definitions, opaque types */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_var_avg.c b/src/nco/nco_var_avg.c
index ac8563b..77604f6 100644
--- a/src/nco/nco_var_avg.c
+++ b/src/nco/nco_var_avg.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_avg.c,v 1.80 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_avg.c,v 1.82 2015/02/07 04:39:39 zender Exp $ */
 
 /* Purpose: Average variables */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_var_avg.h" /* Average variables */
@@ -325,12 +325,15 @@ nco_var_avg /* [fnc] Reduce given variable over specified dimensions */
        nco_var_avg_rdc_*() sets tally array */
     if(var->is_crd_var) nco_op_typ_lcl=nco_op_avg; else nco_op_typ_lcl=nco_op_typ;
     switch(nco_op_typ_lcl){
+    case nco_op_mabs:
     case nco_op_max:
       (void)nco_var_avg_rdc_max(fix->type,var_sz,fix_sz,fix->has_mss_val,fix->mss_val,avg_val,fix->val);
       break;
+    case nco_op_mibs:
     case nco_op_min:
       (void)nco_var_avg_rdc_min(fix->type,var_sz,fix_sz,fix->has_mss_val,fix->mss_val,avg_val,fix->val);
       break;
+    case nco_op_mebs: /* Operations: Previous=none, Current=sum, Next=normalize */
     case nco_op_avg: /* Operations: Previous=none, Current=sum, Next=normalize */
     case nco_op_sqravg: /* Operations: Previous=none, Current=sum, Next=normalize and square */
     case nco_op_avgsqr: /* Operations: Previous=square, Current=sum, Next=normalize */
diff --git a/src/nco/nco_var_avg.h b/src/nco/nco_var_avg.h
index 64fb322..42180c5 100644
--- a/src/nco/nco_var_avg.h
+++ b/src/nco/nco_var_avg.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_avg.h,v 1.28 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_avg.h,v 1.29 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Average variables */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_var_lst.c b/src/nco/nco_var_lst.c
index 6d5181c..21ed789 100644
--- a/src/nco/nco_var_lst.c
+++ b/src/nco/nco_var_lst.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_lst.c,v 1.169 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_lst.c,v 1.171 2015/02/07 05:42:35 zender Exp $ */
 
 /* Purpose: Variable list utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_var_lst.h" /* Variable list utilities */
@@ -97,7 +97,7 @@ nco_var_lst_mk /* [fnc] Create variable extraction list using regular expression
   
   /* Create final variable list using bool array */
   
-  /* malloc() xtr_lst to maximium size(var_nbr_all) */
+  /* malloc() xtr_lst to maximum size(var_nbr_all) */
   xtr_lst=(nm_id_sct *)nco_malloc(var_nbr_all*sizeof(nm_id_sct));
   var_nbr_tmp=0; /* var_nbr_tmp is incremented */
   for(idx=0;idx<var_nbr_all;idx++){
diff --git a/src/nco/nco_var_lst.h b/src/nco/nco_var_lst.h
index 57de992..d4ced70 100644
--- a/src/nco/nco_var_lst.h
+++ b/src/nco/nco_var_lst.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_lst.h,v 1.76 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_lst.h,v 1.77 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Variable list utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
diff --git a/src/nco/nco_var_rth.c b/src/nco/nco_var_rth.c
index 0181168..1ac2db9 100644
--- a/src/nco/nco_var_rth.c
+++ b/src/nco/nco_var_rth.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_rth.c,v 1.70 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_rth.c,v 1.101 2015/02/16 23:33:52 zender Exp $ */
 
 /* Purpose: Variable arithmetic */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_var_rth.h" /* Variable arithmetic */
@@ -15,7 +15,7 @@ nco_var_abs /* [fnc] Replace op1 values by their absolute values */
  const long sz, /* I [nbr] Size (in elements) of operand */
  const int has_mss_val, /* I [flg] Flag for missing values */
  ptr_unn mss_val, /* I [val] Value of missing value */
- ptr_unn op1) /* I [val] Values of first operand */
+ ptr_unn op1) /* I/O [val] Values of first operand */
 {
   /* Threads: Routine is thread safe and calls no unsafe routines */
   /* Purpose: Replace op1 values by their absolute values */
@@ -105,6 +105,376 @@ nco_var_abs /* [fnc] Replace op1 values by their absolute values */
 } /* end nco_var_abs() */
 
 void
+nco_var_around /* [fnc] Replace op1 values by their values rounded to decimal precision prc */
+(const int ppc, /* I [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+ const nc_type type, /* I [enm] netCDF type of operand */
+ const long sz, /* I [nbr] Size (in elements) of operand */
+ const int has_mss_val, /* I [flg] Flag for missing values */
+ ptr_unn mss_val, /* I [val] Value of missing value */
+ ptr_unn op1) /* I/O [val] Values of first operand */
+{
+  /* Threads: Routine is thread safe and calls no unsafe routines */
+
+  /* Purpose: Replace op1 values by their values rounded to decimal precision ppc
+     Similar to numpy.around() function, hence the name around()
+     Based on implementation by Jeff Whitaker for netcdf4-python described here:
+     http://netcdf4-python.googlecode.com/svn/trunk/docs/netCDF4-module.html
+     which invokes the numpy.around() function documented here:
+     http://docs.scipy.org/doc/numpy/reference/generated/numpy.around.html#numpy.around
+     A practical discussion of rounding is at
+     http://stackoverflow.com/questions/20388071/what-are-the-under-the-hood-differences-between-round-and-numpy-round
+     This mentions the () NumPy source code:
+     https://github.com/numpy/numpy/blob/7b2f20b406d27364c812f7a81a9c901afbd3600c/numpy/core/src/multiarray/calculation.c#L588
+
+     Manually determine scale:
+     ncap2 -O -v -s 'ppc=2;ppc_abs=abs(ppc);bit_nbr_xct=ppc_abs*ln(10.)/ln(2.);bit_nbr_int=ceil(bit_nbr_xct);scale=pow(2.0,bit_nbr_int);' ~/nco/data/in.nc ~/foo.nc 
+     ncks -H ~/foo.nc
+
+     Test full algorithm:
+     ncks -4 -O -C -v ppc_dbl,ppc_big --ppc ppc_dbl=3 --ppc ppc_big=-2 ~/nco/data/in.nc ~/foo.nc
+
+     Compare to Jeff Whitaker's nc3tonc4 results:
+     nc3tonc4 -o --quantize=ppc_dbl=3,ppc_big=-2 ~/nco/data/in.nc ~/foo.nc
+     ncks -H -C -v ppc_dbl,ppc_big ~/foo.nc */
+  
+  /* Rounding is currently defined as op1:=around(op1,ppc) */  
+  
+  /* Use constants defined in math.h */
+  const double bit_per_dcm_dgt_prc=M_LN10/M_LN2; /* 3.32 [frc] Bits per decimal digit of precision */
+
+  double scale; /* [frc] Number by which to scale data to achieve rounding */
+  float scalef; /* [frc] Number by which to scale data to achieve rounding */
+
+  int bit_nbr; /* [nbr] Number of bits required to exceed pow(10,-ppc) */
+  int ppc_abs; /* [nbr] Absolute value of precision */
+
+  long idx;
+  
+  /* Only numeric types can be quantized */
+  if(type == NC_CHAR || type == NC_BYTE || type == NC_UBYTE || type == NC_STRING) return;
+
+  ppc_abs=abs(ppc);
+  assert(ppc_abs <= 16);
+  switch(ppc_abs){
+  case 0:
+    bit_nbr=0;
+    scale=1.0;
+    break;
+  case 1:
+    bit_nbr=4;
+    scale=16.0;
+    break;
+  case 2:
+    bit_nbr=7;
+    scale=128.0;
+    break;
+  case 3:
+    bit_nbr=10;
+    scale=1024.0;
+    break;
+  case 4:
+    bit_nbr=14;
+    scale=16384.0;
+    break;
+  case 5:
+    bit_nbr=17;
+    scale=131072.0;
+    break;
+  case 6:
+    bit_nbr=20;
+    scale=1048576.0;
+    break;
+  default:
+    bit_nbr=(int)ceil(ppc_abs*bit_per_dcm_dgt_prc);
+    scale=pow(2.0,bit_nbr);
+    break;
+  } /* end switch */   
+  if(ppc < 0) scale=1.0/scale;
+
+  if(nco_dbg_lvl_get() == nco_dbg_sbr) (void)fprintf(stdout,"%s: INFO nco_var_around() reports ppc = %d, bit_nbr= %d, scale = %g\n",nco_prg_nm_get(),ppc,bit_nbr,scale);
+
+  /* Typecast pointer to values before access */
+  (void)cast_void_nctype(type,&op1);
+  if(has_mss_val) (void)cast_void_nctype(type,&mss_val);
+  
+  scalef=(float)scale;
+  switch(type){
+  case NC_FLOAT: 
+    /* By default do float arithmetic in double precision before converting back to float
+       Allow --flt to override
+       NB: Use rint() not lrint()
+       If ignoring this advice, be sure to bound calls to lrint(), e.g., 
+       rint_arg=scale*op1.fp[idx];
+       if(rint_arg > LONG_MIN && rint_arg < LONG_MAX) op1.fp[idx]=(float)lrint(scale*op1.fp[idx])/scale; */
+    if(!has_mss_val){
+      if(nco_rth_cnv_get() == nco_rth_flt_flt)
+	for(idx=0L;idx<sz;idx++) op1.fp[idx]=rintf(scalef*op1.fp[idx])/scalef;
+      else
+	for(idx=0L;idx<sz;idx++) op1.fp[idx]=(float)(rint(scale*op1.fp[idx])/scale); /* Coerce to avoid implicit conversions warning */
+    }else{
+      const float mss_val_flt=*mss_val.fp;
+      if(nco_rth_cnv_get() == nco_rth_flt_flt){
+	for(idx=0;idx<sz;idx++)
+	  if(op1.fp[idx] != mss_val_flt)
+	    op1.fp[idx]=rintf(scalef*op1.fp[idx])/scalef;
+      }else{
+	for(idx=0;idx<sz;idx++)
+	  if(op1.fp[idx] != mss_val_flt)
+	    op1.fp[idx]=(float)(rint(scale*op1.fp[idx])/scale); /* Coerce to avoid implicit conversions warning */
+      } /* end else */
+    } /* end else */
+    break;
+  case NC_DOUBLE: 
+    if(!has_mss_val){
+      for(idx=0L;idx<sz;idx++) op1.dp[idx]=rint(scale*op1.dp[idx])/scale;
+    }else{
+      const double mss_val_dbl=*mss_val.dp;
+      for(idx=0;idx<sz;idx++)
+	if(op1.dp[idx] != mss_val_dbl) op1.dp[idx]=rint(scale*op1.dp[idx])/scale;
+    } /* end else */
+    break;
+  case NC_SHORT:
+    if(!has_mss_val){
+      for(idx=0L;idx<sz;idx++) op1.sp[idx]=(short int)lrint(scale*op1.sp[idx])/scale;
+    }else{
+      const nco_int mss_val_short=*mss_val.sp;
+      for(idx=0;idx<sz;idx++)
+	if(op1.sp[idx] != mss_val_short) op1.sp[idx]=(short int)lrint(scale*op1.sp[idx])/scale;
+    } /* end else */
+    break;
+  case NC_USHORT:
+    if(!has_mss_val){
+      for(idx=0L;idx<sz;idx++) op1.usp[idx]=(unsigned short int)lrint(scale*op1.usp[idx])/scale;
+    }else{
+      const nco_ushort mss_val_ushort=*mss_val.usp;
+      for(idx=0;idx<sz;idx++)
+	if(op1.usp[idx] != mss_val_ushort) op1.usp[idx]=(unsigned short int)lrint(scale*op1.usp[idx])/scale;
+    } /* end else */
+    break;
+  case NC_INT:
+    if(!has_mss_val){
+      for(idx=0L;idx<sz;idx++) op1.ip[idx]=lrint(scale*op1.ip[idx])/scale;
+    }else{
+      const nco_int mss_val_int=*mss_val.ip;
+      for(idx=0;idx<sz;idx++)
+	if(op1.ip[idx] != mss_val_int) op1.ip[idx]=lrint(scale*op1.ip[idx])/scale;
+    } /* end else */
+    break;
+  case NC_UINT:
+    if(!has_mss_val){
+      for(idx=0L;idx<sz;idx++) op1.uip[idx]=(unsigned int)lrint(scale*op1.uip[idx])/scale;
+    }else{
+      const nco_uint mss_val_uint=*mss_val.uip;
+      for(idx=0;idx<sz;idx++)
+	if(op1.uip[idx] != mss_val_uint) op1.uip[idx]=(unsigned int)lrint(scale*op1.uip[idx])/scale;
+    } /* end else */
+    break;
+  case NC_INT64:
+    if(!has_mss_val){
+      for(idx=0L;idx<sz;idx++) op1.i64p[idx]=lrint(scale*op1.i64p[idx])/scale;
+    }else{
+      const nco_int64 mss_val_int64=*mss_val.i64p;
+      for(idx=0;idx<sz;idx++)
+	if(op1.i64p[idx] != mss_val_int64) op1.i64p[idx]=lrint(scale*op1.i64p[idx])/scale;
+    } /* end else */
+    break;
+  case NC_UINT64:
+    if(!has_mss_val){
+      for(idx=0L;idx<sz;idx++) op1.ui64p[idx]=(unsigned long)lrint(scale*op1.ui64p[idx])/scale;
+    }else{
+      const nco_uint64 mss_val_uint64=*mss_val.ui64p;
+      for(idx=0;idx<sz;idx++)
+	if(op1.ui64p[idx] != mss_val_uint64) op1.ui64p[idx]=(unsigned long)lrint(scale*op1.ui64p[idx])/scale;
+    } /* end else */
+    break;
+  case NC_CHAR: /* Do nothing for non-numeric types ...*/
+  case NC_BYTE:
+  case NC_UBYTE:
+  case NC_STRING: break;
+  default: 
+    nco_dfl_case_nc_type_err();
+    break;
+  } /* end switch */
+
+  /* NB: it is not neccessary to un-typecast pointers to values after access 
+     because we have only operated on local copies of them. */
+  
+} /* end nco_var_around() */
+
+void
+nco_var_bitmask /* [fnc] Mask-out insignificant bits of significand */
+(const int nsd, /* I [nbr] Number of significant digits, i.e., arithmetic precision */
+ const nc_type type, /* I [enm] netCDF type of operand */
+ const long sz, /* I [nbr] Size (in elements) of operand */
+ const int has_mss_val, /* I [flg] Flag for missing values */
+ ptr_unn mss_val, /* I [val] Value of missing value */
+ ptr_unn op1) /* I/O [val] Values of first operand */
+{
+  /* Threads: Routine is thread safe and calls no unsafe routines */
+
+  /* Purpose: Mask-out insignificant bits of op1 values */
+  
+  /* Rounding is currently defined as op1:=bitmask(op1,ppc) */  
+  
+  /* Number of Significant Digits (NSD) algorithm
+     NSD based on absolute precision, i.e., number of digits in significand and in decimal scientific notation
+     DSD based on precision relative to decimal point, i.e., number of digits before/after decimal point
+     DSD is more often used colloquially, e.g., "thermometers measure temperature accurate to 1 degree C" 
+     NSD is more often used scientifically, e.g., "thermometers measure temperature to three significant digits"
+     These statements are both equivalent and describe the same instrument and data
+     If data are stored in C or K then optimal specifications for each algorithm would be DSD=0 and NSD=3
+     However, if data are stored in mK (milli-Kelvin) then optimal specifications would be DSD=-3 and NSD=3
+     In other words, the number of significant digits (NSD) does not depend on the units of storage, but DSD does
+     Hence NSD is more instrinsic and portable than DSD
+     NSD requires only bit-shifting and bit-masking, no floating point math
+     DSD is implemented with rounding techniques that rely on floating point math
+     This makes DSD subject to accompanying overflow and underflow problems when exponent near MAX_EXP/2
+     Thus NSD is faster, more accurate, and less ambiguous than DSD
+     Nevertheless many users think in terms of DSD not NSD
+     
+     Terminology: 
+     Decimal Precision is number of significant digits following decimal point (DSD)
+     Arithmetic Precision is number of significant digits (NSD)
+     "Arithmetic precision can also be defined with reference to a fixed number of decimal places (the number of digits following the decimal point). This second definition is useful in applications where the number of digits in the fractional part has particular importance, but it does not follow the rules of significance arithmetic." -- Wikipedia
+     "A common convention in science and engineering is to express accuracy and/or precision implicitly by means of significant figures. Here, when not explicitly stated, the margin of error is understood to be one-half the value of the last significant place. For instance, a recording of 843.6 m, or 843.0 m, or 800.0 m would imply a margin of 0.05 m (the last significant place is the tenths place), while a recording of 8,436 m would imply a margin of error of 0.5 m (the last significant [...]
+     
+     Test NSD:
+     nc3tonc4 -o --quantize=ppc_big=3,ppc_bgr=3,ppc_flt=3 --quiet=1 ~/nco/data/in.nc ~/foo_n34.nc
+     ncks -D 1 -4 -O -C -v ppc_big,ppc_bgr,ppc_flt --ppc .?=3 ~/nco/data/in.nc ~/foo.nc
+     ncks -C -v ppc_big,ppc_bgr ~/foo.nc
+     ncks -s '%16.12e\n' -C -H -v ppc_big,ppc_bgr ~/foo_n34.nc */
+  
+  /* IEEE single- and double-precision significands have 24 and 53 bits of precision (prc_bnr)
+     Decimal digits of precision (prc_dcm) obtained via prc_dcm=prc_bnr*ln(2)/ln(10) = 7.22 and 15.95, respectively
+     Binary digits of precision (prc_bnr) obtained via prc_bnr=prc_dcm*ln(10)/ln(2) */
+  
+  /* Use constants defined in math.h */
+  const double bit_per_dcm_dgt_prc=M_LN10/M_LN2; /* 3.32 [frc] Bits per decimal digit of precision */
+  
+  /* Preserve at least two explicit bits, plus one implicit bit means three total bits */
+  /* [nbr] Minimum number of explicit significand bits to preserve */
+#define BIT_XPL_NBR_MIN 2
+  const int bit_xpl_nbr_sgn_flt=23; /* [nbr] Bits 0-22 of SP significands are explicit. Bit 23 is implicit. */
+  const int bit_xpl_nbr_sgn_dbl=53; /* [nbr] Bits 0-52 of DP significands are explicit. Bit 53 is implicit. */
+  
+  double prc_bnr_xct; /* [nbr] Binary digits of precision, exact */
+  
+  int bit_xpl_nbr_sgn=int_CEWI; /* [nbr] Number of explicit bits in significand */
+  int bit_xpl_nbr_zro; /* [nbr] Number of explicit bits to zero */
+
+  long idx;
+
+  unsigned int *u32_ptr;
+  unsigned int msk_f32_u32_zro;
+  unsigned int msk_f32_u32_one;
+  unsigned long int *u64_ptr;
+  unsigned long int msk_f64_u64_zro;
+  unsigned long int msk_f64_u64_one;
+  unsigned short prc_bnr_ceil; /* [nbr] Exact binary digits of precision rounded-up */
+  unsigned short prc_bnr_xpl_rqr; /* [nbr] Explicitly represented binary digits required to retain */
+  
+  /* Only floating point types can be quantized */
+  if(type != NC_FLOAT && type != NC_DOUBLE) return;
+
+  /* Disallow unreasonable quantization */
+  assert(nsd > 0);
+  assert(nsd <= 16);
+
+    /* How many bits to preserve? */
+  prc_bnr_xct=nsd*bit_per_dcm_dgt_prc;
+  /* Be conservative, round upwards */
+  prc_bnr_ceil=(unsigned short)ceil(prc_bnr_xct);
+  /* First bit is implicit not explicit but corner cases prevent our taking advantage of this */
+  //prc_bnr_xpl_rqr=prc_bnr_ceil-1;
+  //prc_bnr_xpl_rqr=prc_bnr_ceil;
+  prc_bnr_xpl_rqr=prc_bnr_ceil+1;
+  if(type == NC_DOUBLE) prc_bnr_xpl_rqr++; /* Seems necessary for double-precision ppc=array(1.234567,1.e-6,$dmn) */
+  /* 20150128: Hand-tuning shows we can sacrifice one or two more bits for almost all cases
+     20150205: However, small integers are an exception. In fact they require two more bits, at least for NSD=1.
+     Thus minimum threshold to preserve half of least significant digit (LSD) is prc_bnr_xpl_rqr=prc_bnr_ceil.
+     Decrementing prc_bnr_xpl_rqr by one or two more bits produces maximum errors that exceed half the LSD
+     ncra -4 -O -C --ppc default=1 --ppc one=1 -p ~/nco/data in.nc in.nc ~/foo.nc 
+     ncks -H -v Q.. --cdl ~/foo.nc | m */
+
+  /* 20150126: fxm casting pointers is tricky with this routine. Avoid for now. */
+  /* Typecast pointer to values before access */
+  //(void)cast_void_nctype(type,&op1);
+  //if(has_mss_val) (void)cast_void_nctype(type,&mss_val);
+
+  if(type == NC_FLOAT  && prc_bnr_xpl_rqr >= bit_xpl_nbr_sgn_flt) return;
+  if(type == NC_DOUBLE && prc_bnr_xpl_rqr >= bit_xpl_nbr_sgn_dbl) return;
+
+  switch(type){
+  case NC_FLOAT:
+    bit_xpl_nbr_sgn=bit_xpl_nbr_sgn_flt;
+    bit_xpl_nbr_zro=bit_xpl_nbr_sgn-prc_bnr_xpl_rqr;
+    assert(bit_xpl_nbr_zro <= bit_xpl_nbr_sgn-BIT_XPL_NBR_MIN);
+    u32_ptr=op1.uip;
+    /* Create mask */
+    msk_f32_u32_zro=0u; /* Zero all bits */
+    msk_f32_u32_zro=~msk_f32_u32_zro; /* Turn all bits to ones */
+    /* Left shift zeros into bits to be rounded */
+    msk_f32_u32_zro <<= bit_xpl_nbr_zro;
+    msk_f32_u32_one=~msk_f32_u32_zro;
+    if(!has_mss_val){
+      for(idx=0L;idx<sz;idx+=2L) u32_ptr[idx]&=msk_f32_u32_zro;
+      for(idx=1L;idx<sz;idx+=2L)
+	if(u32_ptr[idx] != 0U) /* Never quantize upwards floating point values of zero */
+	  u32_ptr[idx]|=msk_f32_u32_one;
+    }else{
+      const float mss_val_flt=*mss_val.fp;
+      for(idx=0L;idx<sz;idx+=2L)
+	if(op1.fp[idx] != mss_val_flt) u32_ptr[idx]&=msk_f32_u32_zro;
+      for(idx=1L;idx<sz;idx+=2L)
+	if(op1.fp[idx] != mss_val_flt && u32_ptr[idx] != 0U) u32_ptr[idx]|=msk_f32_u32_one;
+    } /* end else */
+    break;
+  case NC_DOUBLE:
+    bit_xpl_nbr_sgn=bit_xpl_nbr_sgn_dbl;
+    bit_xpl_nbr_zro=bit_xpl_nbr_sgn-prc_bnr_xpl_rqr;
+    assert(bit_xpl_nbr_zro <= bit_xpl_nbr_sgn-BIT_XPL_NBR_MIN);
+    u64_ptr=(unsigned long int *)op1.ui64p;
+    /* Create mask */
+    msk_f64_u64_zro=0ul; /* Zero all bits */
+    msk_f64_u64_zro=~msk_f64_u64_zro; /* Turn all bits to ones */
+    /* Left shift zeros into bits to be rounded */
+    msk_f64_u64_zro <<= bit_xpl_nbr_zro;
+    msk_f64_u64_one=~msk_f64_u64_zro;
+    if(!has_mss_val){
+      for(idx=0L;idx<sz;idx+=2L) u64_ptr[idx]&=msk_f64_u64_zro;
+      for(idx=1L;idx<sz;idx+=2L)
+	if(u64_ptr[idx] != 0UL) /* Never quantize upwards floating point values of zero */
+	  u64_ptr[idx]|=msk_f64_u64_one;
+    }else{
+      const double mss_val_dbl=*mss_val.dp;
+      for(idx=0L;idx<sz;idx+=2L)
+	if(op1.dp[idx] != mss_val_dbl) u64_ptr[idx]&=msk_f64_u64_zro;
+      for(idx=1L;idx<sz;idx+=2L)
+	if(op1.dp[idx] != mss_val_dbl && u64_ptr[idx] != 0UL) u64_ptr[idx]|=msk_f64_u64_one;
+    } /* end else */
+    break;
+  case NC_INT: /* Do nothing for non-floating point types ...*/
+  case NC_SHORT:
+  case NC_CHAR:
+  case NC_BYTE:
+  case NC_UBYTE:
+  case NC_USHORT:
+  case NC_UINT:
+  case NC_INT64:
+  case NC_UINT64:
+  case NC_STRING: break;
+  default: 
+    nco_dfl_case_nc_type_err();
+    break;
+  } /* end switch */
+  
+  /* 20150126: fxm casting pointers is tricky with this routine. Avoid for now. */
+  /* NB: it is not neccessary to un-typecast pointers to values after access 
+     because we have only operated on local copies of them. */
+
+} /* end nco_var_bitmask() */
+
+void
 nco_var_add /* [fnc] Add first operand to second operand */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz, /* I [nbr] Size (in elements) of operands */
@@ -1096,7 +1466,7 @@ nco_var_max_bnr /* [fnc] Maximize two operands */
  ptr_unn op1, /* I [val] Values of first operand */
  ptr_unn op2) /* I/O [val] Values of second operand on input, values of maximum on output */
 {
-  /* Purpose: Find minimium value(s) of two operands and store result in second operand 
+  /* Purpose: Find maximum value(s) of two operands and store result in second operand 
      Operands are assumed to conform, be of same specified type, and have values in memory */
   long idx;
   
@@ -1263,7 +1633,7 @@ nco_var_min_bnr /* [fnc] Minimize two operands */
  ptr_unn op1, /* I [val] Values of first operand */
  ptr_unn op2) /* I/O [val] Values of second operand on input, values of minimum on output */
 {
-  /* Purpose: Find minimium value(s) of two operands and store result in second operand 
+  /* Purpose: Find minimum value(s) of two operands and store result in second operand 
      Operands are assumed to conform, be of same specified type, and have values in memory */
   long idx;
   
diff --git a/src/nco/nco_var_rth.h b/src/nco/nco_var_rth.h
index 320e396..a0ea5e8 100644
--- a/src/nco/nco_var_rth.h
+++ b/src/nco/nco_var_rth.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_rth.h,v 1.39 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_rth.h,v 1.47 2015/02/03 17:02:34 zender Exp $ */
 
 /* Purpose: Variable arithmetic */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -14,6 +14,10 @@
 #define NCO_VAR_RTH_H
 
 /* Standard header files */
+/* C++ compilers have math.h but do not define constants like M_LN10, M_LN2 unless _USE_MATH_DEFINES is first defined */
+#ifdef _MSC_VER
+# define _USE_MATH_DEFINES
+#endif /* !_MSC_VER */
 #include <math.h> /* sin cos cos sin 3.14159 */
 #include <stdio.h> /* stderr, FILE, NULL, printf */
 
@@ -32,13 +36,40 @@
 extern "C" {
 #endif /* __cplusplus */
   
+  typedef union{ /* f32_u32_unn */
+    float f32;
+    unsigned int u32;
+  } f32_u32_unn;
+  typedef union{ /* f64_u64_unn */
+    double f64;
+    unsigned long u64;
+  } f64_u64_unn;
+  
   void
   nco_var_abs /* [fnc] Replace op1 values by their absolute values */
   (const nc_type type, /* I [enm] netCDF type of operand */
    const long sz, /* I [nbr] Size (in elements) of operand */
    const int has_mss_val, /* I [flg] Flag for missing values */
    ptr_unn mss_val, /* I [val] Value of missing value */
-   ptr_unn op1); /* I [val] Values of first operand */
+   ptr_unn op1); /* I/O [val] Values of first operand */
+  
+  void
+  nco_var_around /* [fnc] Replace op1 values by their values rounded to decimal precision prc */
+  (const int prc, /* I [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+   const nc_type type, /* I [enm] netCDF type of operand */
+   const long sz, /* I [nbr] Size (in elements) of operand */
+   const int has_mss_val, /* I [flg] Flag for missing values */
+   ptr_unn mss_val, /* I [val] Value of missing value */
+   ptr_unn op1); /* I/O [val] Values of first operand */
+
+  void
+  nco_var_bitmask /* [fnc] Mask-out insignificant bits of significand */
+  (const int nsd, /* I [nbr] Number of significant digits, i.e., arithmetic precision */
+   const nc_type type, /* I [enm] netCDF type of operand */
+   const long sz, /* I [nbr] Size (in elements) of operand */
+   const int has_mss_val, /* I [flg] Flag for missing values */
+   ptr_unn mss_val, /* I [val] Value of missing value */
+   ptr_unn op1); /* I/O [val] Values of first operand */
   
   void
   nco_var_add /* [fnc] Add first operand to second operand */
diff --git a/src/nco/nco_var_scv.c b/src/nco/nco_var_scv.c
index c143b99..57e2116 100644
--- a/src/nco/nco_var_scv.c
+++ b/src/nco/nco_var_scv.c
@@ -1,16 +1,16 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_scv.c,v 1.40 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_scv.c,v 1.42 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Arithmetic between variables and scalar values */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_var_scv.h" /* Arithmetic between variables and scalar values */
 
 void
-var_scv_add /* [fnc] Add scalar to variable */
+nco_var_scv_add /* [fnc] Add scalar to variable */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz,/* I [nbr] Size (in elements) of array operand */
  const int has_mss_val, /* I [flg] Flag for missing values */
@@ -159,10 +159,10 @@ var_scv_add /* [fnc] Add scalar to variable */
   /* NB: it is not neccessary to un-typecast pointers to values after access 
      because we have only operated on local copies of them. */
   
-} /* end var_scv_add() */
+} /* end nco_var_scv_add() */
 
 void
-var_scv_sub /* [fnc] Subtract scalar from variable */
+nco_var_scv_sub /* [fnc] Subtract scalar from variable */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz, /* I [nbr] Size (in elements) of array operand */
  const int has_mss_val, /* I [flg] Flag for missing values */
@@ -311,10 +311,10 @@ var_scv_sub /* [fnc] Subtract scalar from variable */
   /* NB: it is not neccessary to un-typecast pointers to values after access 
      because we have only operated on local copies of them. */
   
-} /* end var_scv_sub() */
+} /* end nco_var_scv_sub() */
 
 void
-var_scv_mlt /* [fnc] Multiply variable by scalar */
+nco_var_scv_mlt /* [fnc] Multiply variable by scalar */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz, /* I [nbr] Size (in elements) of array operand */
  const int has_mss_val, /* I [flg] Flag for missing values */
@@ -463,10 +463,10 @@ var_scv_mlt /* [fnc] Multiply variable by scalar */
   /* NB: it is not neccessary to un-typecast pointers to values after access 
      because we have only operated on local copies of them. */
   
-} /* end var_scv_mlt() */
+} /* end nco_var_scv_mlt() */
 
 void
-var_scv_dvd /* [fnc] Divide variable by scalar */
+nco_var_scv_dvd /* [fnc] Divide variable by scalar */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz, /* I [nbr] Size (in elements) of array operands */
  const int has_mss_val, /* I [flg] Flag for missing values */
@@ -615,10 +615,10 @@ var_scv_dvd /* [fnc] Divide variable by scalar */
   /* NB: it is not neccessary to un-typecast pointers to values after access 
      because we have only operated on local copies of them. */
   
-} /* end var_scv_dvd() */
+} /* end nco_var_scv_dvd() */
 
 void
-scv_var_dvd /* [fnc] Divide scalar by variable */
+nco_scv_var_dvd /* [fnc] Divide scalar by variable */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz, /* I [nbr] Size (in elements) of array operands */
  const int has_mss_val, /* I [flg] Flag for missing values */
@@ -767,10 +767,10 @@ scv_var_dvd /* [fnc] Divide scalar by variable */
   /* NB: it is not neccessary to un-typecast pointers to values after access 
      because we have only operated on local copies of them. */
   
-} /* end scv_var_dvd() */
+} /* end nco_scv_var_dvd() */
 
 void
-var_scv_mod /* [fnc] Modulo variable by scalar */
+nco_var_scv_mod /* [fnc] Modulo variable by scalar */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz, /* I [nbr] Size (in elements) of array operands */
  const int has_mss_val, /* I [flg] Flag for missing values */
@@ -930,10 +930,10 @@ var_scv_mod /* [fnc] Modulo variable by scalar */
   default: nco_dfl_case_nc_type_err(); break;
   } /* end switch */
   
-} /* end var_scv_mod */
+} /* end nco_var_scv_mod */
 
 void
-scv_var_mod /* [fnc] Modulo scalar by variable */
+nco_scv_var_mod /* [fnc] Modulo scalar by variable */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz, /* I [nbr] Size (in elements) of array operands */
  const int has_mss_val, /* I [flg] Flag for missing values */
@@ -1093,10 +1093,10 @@ scv_var_mod /* [fnc] Modulo scalar by variable */
   default: nco_dfl_case_nc_type_err(); break;
   } /* end switch */
   
-} /* end scv_var_mod */
+} /* end nco_scv_var_mod */
 
 void
-var_scv_pwr /* [fnc] Empower variable by scalar */
+nco_var_scv_pwr /* [fnc] Empower variable by scalar */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz, /* I [nbr] Size (in elements) of array operands */
  const int has_mss_val, /* I [flg] Flag for missing values */
@@ -1156,10 +1156,10 @@ var_scv_pwr /* [fnc] Empower variable by scalar */
   /* NB: it is not neccessary to un-typecast pointers to values after access 
      because we have only operated on local copies of them. */
   
-} /* end var_scv_pwr */
+} /* end nco_var_scv_pwr */
 
 void
-scv_var_pwr /* [fnc] Empower scalar by variable */
+nco_scv_var_pwr /* [fnc] Empower scalar by variable */
 (const nc_type type, /* I [enm] netCDF type of operands */
  const long sz, /* I [nbr] Size (in elements) of array operands */
  const int has_mss_val, /* I [flg] Flag for missing values */
@@ -1219,4 +1219,4 @@ scv_var_pwr /* [fnc] Empower scalar by variable */
   /* NB: it is not neccessary to un-typecast pointers to values after access 
      because we have only operated on local copies of them. */
   
-} /* end var_scv_pwr */
+} /* end nco_var_scv_pwr */
diff --git a/src/nco/nco_var_scv.h b/src/nco/nco_var_scv.h
index 71ac7c5..18a835c 100644
--- a/src/nco/nco_var_scv.h
+++ b/src/nco/nco_var_scv.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_scv.h,v 1.29 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_scv.h,v 1.31 2014/12/31 01:50:07 zender Exp $ */
 
 /* Purpose: Arithmetic between variables and scalar values */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -31,7 +31,7 @@ extern "C" {
 #endif /* __cplusplus */
 
   void
-  var_scv_add /* [fnc] Add scalar to variable */
+  nco_var_scv_add /* [fnc] Add scalar to variable */
   (const nc_type type, /* I [enm] netCDF type of operands */
    const long sz,/* I [nbr] Size (in elements) of array operand */
    const int has_mss_val, /* I [flg] Flag for missing values */
@@ -40,7 +40,7 @@ extern "C" {
    scv_sct *scv); /* I [val] Pointer to scalar value (second operand) */
   
   void
-  var_scv_mlt /* [fnc] Multiply variable by scalar */
+  nco_var_scv_mlt /* [fnc] Multiply variable by scalar */
   (const nc_type type, /* I [enm] netCDF type of operands */
    const long sz, /* I [nbr] Size (in elements) of array operand */
    const int has_mss_val, /* I [flg] Flag for missing values */
@@ -49,7 +49,7 @@ extern "C" {
    scv_sct *scv); /* I [val] Pointer to scalar value (second operand) */
   
   void
-  var_scv_mod /* [fnc] Modulo variable by scalar */
+  nco_var_scv_mod /* [fnc] Modulo variable by scalar */
   (const nc_type type, /* I [enm] netCDF type of operands */
    const long sz, /* I [nbr] Size (in elements) of array operands */
    const int has_mss_val, /* I [flg] Flag for missing values */
@@ -58,7 +58,7 @@ extern "C" {
    scv_sct *scv); /* I [val] Pointer to scalar value (second operand) */
   
   void
-  scv_var_mod /* [fnc] Modulo scalar by variable */
+  nco_scv_var_mod /* [fnc] Modulo scalar by variable */
   (const nc_type type, /* I [enm] netCDF type of operands */
    const long sz, /* I [nbr] Size (in elements) of array operands */
    const int has_mss_val, /* I [flg] Flag for missing values */
@@ -67,7 +67,7 @@ extern "C" {
    ptr_unn op2); /* I/O [val] Values of second operand */
   
   void
-  var_scv_dvd /* [fnc] Divide variable by scalar */
+  nco_var_scv_dvd /* [fnc] Divide variable by scalar */
   (const nc_type type, /* I [enm] netCDF type of operands */
    const long sz, /* I [nbr] Size (in elements) of array operands */
    const int has_mss_val, /* I [flg] Flag for missing values */
@@ -76,7 +76,7 @@ extern "C" {
    scv_sct *scv); /* I [val] Pointer to scalar value (second operand) */
   
   void
-  scv_var_dvd /* [fnc] Divide scalar by variable */
+  nco_scv_var_dvd /* [fnc] Divide scalar by variable */
   (const nc_type type, /* I [enm] netCDF type of operands */
    const long sz, /* I [nbr] Size (in elements) of array operands */
    const int has_mss_val, /* I [flg] Flag for missing values */
@@ -85,7 +85,7 @@ extern "C" {
    ptr_unn op2); /* I/O [val] Values of second operand */
   
   void
-  var_scv_pwr /* [fnc] Empower variable by scalar */
+  nco_var_scv_pwr /* [fnc] Empower variable by scalar */
   (const nc_type type, /* I [enm] netCDF type of operands */
    const long sz, /* I [nbr] Size (in elements) of array operands */
    const int has_mss_val, /* I [flg] Flag for missing values */
@@ -94,7 +94,7 @@ extern "C" {
    scv_sct *scv); /* I [val] Pointer to scalar value (second operand) */
   
   void
-  scv_var_pwr /* [fnc] Empower scalar by variable */
+  nco_scv_var_pwr /* [fnc] Empower scalar by variable */
   (const nc_type type, /* I [enm] netCDF type of operands */
    const long sz, /* I [nbr] Size (in elements) of array operands */
    const int has_mss_val, /* I [flg] Flag for missing values */
@@ -103,7 +103,7 @@ extern "C" {
    ptr_unn op2); /* I/O [val] Values of second operand */
   
   void
-  var_scv_sub /* [fnc] Subtract scalar from variable */
+  nco_var_scv_sub /* [fnc] Subtract scalar from variable */
   (const nc_type type, /* I [enm] netCDF type of operands */
    const long sz, /* I [nbr] Size (in elements) of array operand */
    const int has_mss_val, /* I [flg] Flag for missing values */
diff --git a/src/nco/nco_var_utl.c b/src/nco/nco_var_utl.c
index d65df21..6289ff7 100644
--- a/src/nco/nco_var_utl.c
+++ b/src/nco/nco_var_utl.c
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_utl.c,v 1.362 2014/09/29 19:55:27 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_utl.c,v 1.373 2015/02/09 22:35:36 zender Exp $ */
 
 /* Purpose: Variable utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_var_utl.h" /* Variable utilities */
@@ -15,12 +15,14 @@ nco_cpy_var_val /* [fnc] Copy variable from input to output file, no limits */
  const int out_id, /* I [id] netCDF output file ID */
  FILE * const fp_bnr, /* I [fl] Unformatted binary output file handle */
  const md5_sct * const md5, /* I [flg] MD5 Configuration */
- const char *var_nm) /* I [sng] Variable name */
+ const char *var_nm, /* I [sng] Variable name */
+ const trv_tbl_sct * const trv_tbl) /* I [sct] GTT (Group Traversal Table) */
 {
   /* NB: nco_cpy_var_val() contains OpenMP critical region */
   /* Purpose: Copy single variable from input netCDF file to output netCDF file
      Routine does not account for user-specified limits, it just copies what it finds
-     Routine copies variable-by-variable, old-style, called only by ncks */
+     Routine copies variable-by-variable, old-style
+     As of 2013, routine used only in USE_MM3_WORKAROUND copying in nco_xtr_wrt() */
 
   const char fnc_nm[]="nco_cpy_var_val()"; /* [sng] Function name */
 
@@ -68,8 +70,8 @@ nco_cpy_var_val /* [fnc] Copy variable from input to output file, no limits */
   /* Get dimension sizes from input file */
   for(idx=0;idx<dmn_nbr;idx++){
     /* nc_inq_dimlen() returns maximum value used so far in writing record dimension data
-    Until record variable has been written, nc_inq_dimlen() returns dmn_sz=0 for record dimension in output file
-    Thus we read input file for dimension sizes */
+       Until record variable has been written, nc_inq_dimlen() returns dmn_sz=0 for record dimension in output file
+       Thus we read input file for dimension sizes */
     (void)nco_inq_dimlen(in_id,dmn_id[idx],dmn_cnt+idx);
 
     /* Initialize indicial offset and stride arrays */
@@ -80,13 +82,50 @@ nco_cpy_var_val /* [fnc] Copy variable from input to output file, no limits */
   /* Allocate enough space to hold variable */
   void_ptr=(void *)nco_malloc_dbg(var_sz*nco_typ_lng(var_typ),"Unable to malloc() value buffer when copying hypserslab from input to output file",fnc_nm);
 
+  /* 20150114: Keep PPC code in single block for easier reuse */
+  int ppc=NC_MAX_INT; /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+  nco_bool flg_ppc=False; /* [flg] Activate PPC with this variable and output file */
+  nco_bool flg_nsd; /* [flg] PPC algorithm is NSD */
+  var_sct var_out; /* [sct] Variable structure */
+  if(True){
+    /* This ugliness backs-out the ppc element from the traversal table for this variable */
+    char *var_nm_fll;
+    trv_sct *var_trv;
+    var_nm_fll=nco_gid_var_nm_2_var_nm_fll(in_id,var_nm);
+    // 20150115 fxm: hash table broken---use brute force
+    var_trv=trv_tbl_var_nm_fll(var_nm_fll,trv_tbl);
+    //(void)fprintf(stderr,"nco_cpy_rec_var_val reports var_nm_fll = %s, var_trv->var_nm_fll = %s\n",var_nm_fll,var_trv->nm_fll);
+    assert(var_trv != NULL);
+    if(var_trv) ppc=var_trv->ppc;
+    if(var_trv) flg_nsd=var_trv->flg_nsd;
+    if(var_nm_fll) var_nm_fll=(char *)nco_free(var_nm_fll);
+    if(ppc != NC_MAX_INT){
+      /* Initialize variable structure with minimal information for nco_mss_val_get() */
+      flg_ppc=True;
+      var_out.nm=(char *)strdup(var_nm);
+      var_out.type=var_typ;
+      var_out.id=var_out_id;
+      var_out.sz=var_sz;
+      var_out.has_mss_val=False;
+      var_out.val.vp=void_ptr;
+      nco_mss_val_get(out_id,&var_out);
+      if(var_out.nm) var_out.nm=(char *)nco_free(var_out.nm);
+    } /* endif ppc */
+  } /* endif True */
+    
   /* Get variable */
   if(dmn_nbr == 0){
     nco_get_var1(in_id,var_in_id,0L,void_ptr,var_typ);
+    if(flg_ppc){
+      if(flg_nsd) (void)nco_var_bitmask(ppc,var_out.type,var_out.sz,var_out.has_mss_val,var_out.mss_val,var_out.val); else (void)nco_var_around(ppc,var_out.type,var_out.sz,var_out.has_mss_val,var_out.mss_val,var_out.val);
+    } /* !PPC */
     nco_put_var1(out_id,var_out_id,0L,void_ptr,var_typ);
   }else{ /* end if variable is scalar */
     if(var_sz > 0){ /* Allow for zero-size record variables */
       nco_get_vara(in_id,var_in_id,dmn_srt,dmn_cnt,void_ptr,var_typ);
+      if(flg_ppc){
+	if(flg_nsd) (void)nco_var_bitmask(ppc,var_out.type,var_out.sz,var_out.has_mss_val,var_out.mss_val,var_out.val); else (void)nco_var_around(ppc,var_out.type,var_out.sz,var_out.has_mss_val,var_out.mss_val,var_out.val);
+      } /* !PPC */
       nco_put_vara(out_id,var_out_id,dmn_srt,dmn_cnt,void_ptr,var_typ);
     } /* end if var_sz */
   } /* end if variable is an array */
@@ -272,12 +311,13 @@ nco_cpy_rec_var_val /* [fnc] Copy all record variables, record-by-record, from i
  FILE * const fp_bnr, /* I [fl] Unformatted binary output file handle */
  const md5_sct * const md5, /* I [flg] MD5 Configuration */
  CST_X_PTR_CST_PTR_CST_Y(nm_id_sct,var_lst), /* I [sct] Record variables to be extracted */
- const int var_nbr) /* I [nbr] Number of record variables */
+ const int var_nbr, /* I [nbr] Number of record variables */
+ const trv_tbl_sct * const trv_tbl) /* I [sct] GTT (Group Traversal Table) */
 {
   /* Purpose: Copy all record variables from input netCDF file to output netCDF file
      Routine does not account for user-specified limits, it just copies what it finds
      Routine copies record-by-record, for all variables, old-style, called only by ncks
-     Used only by MM3 workaround and therefore routine assumes:
+     Used only by MM3 workaround in nco_xtr_wrt() and therefore routine assumes:
      1. Input file is netCDF3
      2. All variables in var_lst are record variables
      NB: Rationale for MM3 workaround is kept in header to routine nco_use_mm3_workaround() */
@@ -288,6 +328,7 @@ nco_cpy_rec_var_val /* [fnc] Copy all record variables, record-by-record, from i
 
   int dmn_idx;
   int dmn_nbr;
+  int fl_fmt; /* [enm] Output file format */
   int nbr_dmn_in;
   int nbr_dmn_out;
   int rec_dmn_id;
@@ -315,6 +356,9 @@ nco_cpy_rec_var_val /* [fnc] Copy all record variables, record-by-record, from i
   assert(rec_dmn_id != NCO_REC_DMN_UNDEFINED);
   rcd+=nco_inq_dimlen(in_id,rec_dmn_id,&rec_sz);
 
+  /* File format needed to enable netCDF4 features */
+  if(var_nbr > 0) (void)nco_inq_format(var_lst[0]->grp_id_out,&fl_fmt);
+
   for(rec_idx=0;rec_idx<rec_sz;rec_idx++){
     for(var_idx=0;var_idx<var_nbr;var_idx++){
       /* Re-initialize accumulated variables */
@@ -358,9 +402,43 @@ nco_cpy_rec_var_val /* [fnc] Copy all record variables, record-by-record, from i
       /* Allocate enough space to hold one record of this variable */
       void_ptr=(void *)nco_malloc_dbg(var_sz*nco_typ_lng(var_typ),"Unable to malloc() value buffer when copying hypserslab from input to output file",fnc_nm);
 
+      /* 20150114: Keep PPC code in single block for easier reuse */
+      int ppc=NC_MAX_INT; /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      nco_bool flg_ppc=False; /* [sct] Activate PPC with this variable and output file */
+      nco_bool flg_nsd; /* [flg] PPC algorithm is NSD */
+      var_sct var_out; /* [sct] Variable structure */
+      if(True){
+	/* This ugliness backs-out the ppc element from the traversal table for this variable */
+	char *var_nm_fll;
+	trv_sct *var_trv=NULL;
+	var_nm_fll=nco_gid_var_nm_2_var_nm_fll(var_lst[var_idx]->grp_id_in,var_lst[var_idx]->nm);
+	// 20150115 fxm: hash table broken---use brute force
+	var_trv=trv_tbl_var_nm_fll(var_nm_fll,trv_tbl);
+	//(void)fprintf(stderr,"nco_cpy_rec_var_val reports var_nm_fll = %s, var_trv->var_nm_fll = %s\n",var_nm_fll,var_trv->nm_fll);
+	assert(var_trv != NULL);
+	if(var_trv) ppc=var_trv->ppc;
+	if(var_trv) flg_nsd=var_trv->flg_nsd;
+	if(var_nm_fll) var_nm_fll=(char *)nco_free(var_nm_fll);
+	if(ppc != NC_MAX_INT){
+	  /* Initialize variable structure with minimal information for nco_mss_val_get() */
+	  flg_ppc=True;
+	  var_out.nm=(char *)strdup(var_lst[var_idx]->nm);
+	  var_out.type=var_typ;
+	  var_out.id=var_out_id;
+	  var_out.sz=var_sz;
+	  var_out.has_mss_val=False;
+	  var_out.val.vp=void_ptr;
+	  nco_mss_val_get(var_lst[var_idx]->grp_id_out,&var_out);
+	  if(var_out.nm) var_out.nm=(char *)nco_free(var_out.nm);
+	} /* endif ppc */
+      } /* endif True */
+      
       /* Get and put one record of variable */
       if(var_sz > 0){ /* Allow for zero-size record variables */
         nco_get_vara(var_lst[var_idx]->grp_id_in,var_in_id,dmn_srt,dmn_cnt,void_ptr,var_typ);
+	if(flg_ppc){
+	  if(flg_nsd) (void)nco_var_bitmask(ppc,var_out.type,var_out.sz,var_out.has_mss_val,var_out.mss_val,var_out.val); else (void)nco_var_around(ppc,var_out.type,var_out.sz,var_out.has_mss_val,var_out.mss_val,var_out.val);
+	} /* !PPC */
         nco_put_vara(var_lst[var_idx]->grp_id_out,var_out_id,dmn_srt,dmn_cnt,void_ptr,var_typ);
       } /* end if var_sz */
 
@@ -1338,7 +1416,7 @@ nco_is_spc_in_crd_att /* [fnc] Variable is listed in a "coordinates" attribute *
         /* NUL-terminate attribute */
         att_val[att_sz]='\0';
         /* Split list into separate coordinate names
-        Use nco_lst_prs_sgl_2D() not nco_lst_prs_2D() to avert TODO nco944 */
+	   Use nco_lst_prs_sgl_2D() not nco_lst_prs_2D() to avert TODO nco944 */
         crd_lst=nco_lst_prs_sgl_2D(att_val,dlm_sng,&nbr_crd);
         /* ...for each coordinate in "coordinates" attribute... */
         for(idx_crd=0;idx_crd<nbr_crd;idx_crd++){
@@ -1412,7 +1490,7 @@ nco_is_spc_in_bnd_att /* [fnc] Variable is listed in a "bounds" attribute */
         /* NUL-terminate attribute */
         att_val[att_sz]='\0';
         /* Split list into separate coordinate names
-        Use nco_lst_prs_sgl_2D() not nco_lst_prs_2D() to avert TODO nco944 */
+	   Use nco_lst_prs_sgl_2D() not nco_lst_prs_2D() to avert TODO nco944 */
         bnd_lst=nco_lst_prs_sgl_2D(att_val,dlm_sng,&nbr_bnd);
         /* ...for each coordinate in "bounds" attribute... */
         for(idx_bnd=0;idx_bnd<nbr_bnd;idx_bnd++){
diff --git a/src/nco/nco_var_utl.h b/src/nco/nco_var_utl.h
index 5b0f4f7..cdb2d9e 100644
--- a/src/nco/nco_var_utl.h
+++ b/src/nco/nco_var_utl.h
@@ -1,10 +1,10 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_utl.h,v 1.104 2014/06/15 21:06:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_utl.h,v 1.106 2015/01/15 07:23:42 zender Exp $ */
 
 /* Purpose: Variable utilities */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
@@ -34,7 +34,7 @@
 #include "nco_bnr.h" /* Binary write utilities */
 #include "nco_ctl.h" /* Program flow control functions */
 #include "nco_dmn_utl.h" /* Dimension utilities */
-#include "nco_grp_utl.h" /* Variable utilities */
+#include "nco_grp_trv.h" /* Group traversal */
 #include "nco_md5.h" /* MD5 digests */
 #include "nco_mmr.h" /* Memory management */
 #include "nco_mss_val.h" /* Missing value utilities */
@@ -44,50 +44,52 @@
 extern "C" {
 #endif /* __cplusplus */
 
-void
-nco_cpy_var_val /* [fnc] Copy variable data from input to output file, no limits */
-(const int in_id, /* I [id] netCDF input file ID */
+  void
+  nco_cpy_var_val /* [fnc] Copy variable data from input to output file, no limits */
+  (const int in_id, /* I [id] netCDF input file ID */
    const int out_id, /* I [id] netCDF output file ID */
    FILE * const fp_bnr, /* I [fl] Unformatted binary output file handle */
    const md5_sct * const md5, /* I [flg] MD5 Configuration */
-   const char *var_nm); /* I [sng] Variable name */
+   const char *var_nm, /* I [sng] Variable name */
+   const trv_tbl_sct * const trv_tbl); /* I [sct] GTT (Group Traversal Table) */
 
-void
-nco_cpy_var_val_lmt /* [fnc] Copy variable data from input to output file, simple hyperslabs */
-(const int in_id, /* I [id] netCDF input file ID */
+  void
+  nco_cpy_var_val_lmt /* [fnc] Copy variable data from input to output file, simple hyperslabs */
+  (const int in_id, /* I [id] netCDF input file ID */
    const int out_id, /* I [id] netCDF output file ID */
    FILE * const fp_bnr, /* I [fl] Unformatted binary output file handle */
    char *var_nm, /* I [sng] Variable name */
    const lmt_sct * const lmt, /* I [sct] Hyperslab limits */
    const int lmt_nbr); /* I [nbr] Number of hyperslab limits */
- 
-nco_bool /* O [flg] Faster copy on Multi-record Multi-variable netCDF3 files */
-nco_use_mm3_workaround /* [fnc] Use faster copy on Multi-record Multi-variable netCDF3 files? */
-(const int in_id, /* I [id] Input file ID */
+  
+  nco_bool /* O [flg] Faster copy on Multi-record Multi-variable netCDF3 files */
+  nco_use_mm3_workaround /* [fnc] Use faster copy on Multi-record Multi-variable netCDF3 files? */
+  (const int in_id, /* I [id] Input file ID */
    const int fl_out_fmt); /* I [enm] Output file format */
-
-void
-nco_cpy_rec_var_val /* [fnc] Copy all record variables, record-by-record, from input to output file, no limits */
-(const int in_id, /* I [id] netCDF input file ID */
+  
+  void
+  nco_cpy_rec_var_val /* [fnc] Copy all record variables, record-by-record, from input to output file, no limits */
+  (const int in_id, /* I [id] netCDF input file ID */
    FILE * const fp_bnr, /* I [fl] Unformatted binary output file handle */
    const md5_sct * const md5, /* I [flg] MD5 Configuration */
    CST_X_PTR_CST_PTR_CST_Y(nm_id_sct,var_lst), /* I [sct] Record variables to be extracted */
-   const int var_nbr); /* I [nbr] Number of record variables */
-
-void 
-nco_var_copy /* [fnc] Copy hyperslab variables of type var_typ from op1 to op2 */
-(const nc_type var_typ, /* I [enm] netCDF type */
+   const int var_nbr, /* I [nbr] Number of record variables */
+   const trv_tbl_sct * const trv_tbl); /* I [sct] GTT (Group Traversal Table) */
+  
+  void 
+  nco_var_copy /* [fnc] Copy hyperslab variables of type var_typ from op1 to op2 */
+  (const nc_type var_typ, /* I [enm] netCDF type */
    const long sz, /* I [nbr] Number of elements to copy */
    const ptr_unn op1, /* I [sct] Values to copy */
    ptr_unn op2); /* O [sct] Destination to copy values to */
   
-int /* O [enm] Return code */
-var_dfl_set /* [fnc] Set defaults for each member of variable structure */
-(var_sct * const var); /* I [sct] Variable strucutre to initialize to defaults */
-
-void
-nco_var_dfn /* [fnc] Define variables and write their attributes to output file */
-(const int in_id, /* I [enm] netCDF input-file ID */
+  int /* O [enm] Return code */
+  var_dfl_set /* [fnc] Set defaults for each member of variable structure */
+  (var_sct * const var); /* I [sct] Variable strucutre to initialize to defaults */
+  
+  void
+  nco_var_dfn /* [fnc] Define variables and write their attributes to output file */
+  (const int in_id, /* I [enm] netCDF input-file ID */
    const char * const fl_out, /* I [sng] Name of output file */
    const int out_id, /* I [enm] netCDF output-file ID */
    var_sct * const * const var, /* I/O [sct] Variables to be defined in output file */
@@ -98,80 +100,76 @@ nco_var_dfn /* [fnc] Define variables and write their attributes to output file
    const int nco_pck_plc, /* I [enm] Packing policy */
    const int dfl_lvl); /* I [enm] Deflate level [0..9] */
   
-var_sct * /* O [sct] Copy of input variable */
-nco_var_dpl /* [fnc] Duplicate input variable */
-(const var_sct * const var); /* I [sct] Variable to duplicate */
+  var_sct * /* O [sct] Copy of input variable */
+  nco_var_dpl /* [fnc] Duplicate input variable */
+  (const var_sct * const var); /* I [sct] Variable to duplicate */
   
-var_sct * /* O [sct] Pointer to free'd variable */
-nco_var_free /* [fnc] Free all memory associated with variable structure */
-(var_sct *var); /* I/O [sct] Variable to free */
+  var_sct * /* O [sct] Pointer to free'd variable */
+  nco_var_free /* [fnc] Free all memory associated with variable structure */
+  (var_sct *var); /* I/O [sct] Variable to free */
   
-void
-nco_var_get /* [fnc] Allocate, retrieve variable hyperslab from disk to memory */
-(const int nc_id, /* I [id] netCDF file ID */
- var_sct *var); /* I [sct] Variable to get */
+  void
+  nco_var_get /* [fnc] Allocate, retrieve variable hyperslab from disk to memory */
+  (const int nc_id, /* I [id] netCDF file ID */
+   var_sct *var); /* I [sct] Variable to get */
   
-var_sct ** /* O [sct] Pointer to free'd structure list */
-nco_var_lst_free /* [fnc] Free memory associated with variable structure list */
-(var_sct **var_lst, /* I/O [sct] Variable structure list to free */
- const int var_nbr); /* I [nbr] Number of variable structures in list */
-
-nco_bool /* [flg] Variable is listed in a "bounds" attribute */
-nco_is_spc_in_bnd_att /* [fnc] Variable is listed in a "bounds" attribute */
-(const int nc_id, /* I [id] netCDF file ID */
- const int var_trg_id); /* I [id] Variable ID */
-
-nco_bool /* [flg] Variable is listed in a "coordinates" attribute */
-nco_is_spc_in_crd_att /* [fnc] Variable is listed in a "coordinates" attribute */
-(const int nc_id, /* I [id] netCDF file ID */
- const int var_trg_id); /* I [id] Variable ID */
-
-void
-nco_var_mtd_refresh /* [fnc] Update variable metadata (dmn_nbr, ID, mss_val, type) */
-(const int nc_id, /* I [id] netCDF input-file ID */
- var_sct * const var); /* I/O [sct] Variable to update */
-  
-void
-nco_var_srd_srt_set /* [fnc] Assign zero to start and unity to stride vectors in variables */
-(var_sct ** const var, /* I [sct] Variables whose subcycle, start, and stride arrays to set */
- const int nbr_var); /* I [nbr] Number of structures in variable structure list */
-  
-void
-nco_var_dmn_refresh /* [fnc] Refresh var hyperslab info with var->dim[] info */
-(var_sct ** const var, /* I [sct] Variables to refresh */
- const int nbr_var); /* I [nbr] Number of structures in variable structure list */
-  
-void
-nco_var_val_cpy /* [fnc] Copy variables data from input to output file */
-(const int in_id, /* I [enm] netCDF file ID */
- const int out_id, /* I [enm] netCDF output file ID */
- var_sct ** const var, /* I/O [sct] Variables to copy to output file */
- const int nbr_var); /* I [nbr] Number of variables */
-  
-void
-nco_xrf_dmn /* [fnc] Switch pointers to dimension structures so var->dim points to var->dim->xrf */
-(var_sct * const var); /* I [sct] Variable to manipulate */
-  
-void
-nco_xrf_var /* [fnc] Make xrf elements of variable structures point to eachother */
-(var_sct * const var_1, /* I/O [sct] Variable */
- var_sct * const var_2); /* I/O [sct] Related variable */
-
-
-
-
-var_sct *                             /* O [sct] Variable structure */
-nco_var_fll                           /* [fnc] Allocate variable structure and fill with metadata */
-(const int nc_id,                     /* I [id] netCDF file ID */
- const int var_id,                    /* I [id] variable ID */
- const char * const var_nm,           /* I [sng] Variable name */
- dmn_sct * const * const dim,         /* I [sct] Dimensions available to variable */
- const int nbr_dim);                  /* I [nbr] Number of dimensions in list */
-
-nc_type
-nco_get_typ                           /* [fnc] Obtain netCDF type to define variable from NCO program ID */
-(const var_sct * const var);          /* I [sct] Variable to be defined in output file */
-
+  var_sct ** /* O [sct] Pointer to free'd structure list */
+  nco_var_lst_free /* [fnc] Free memory associated with variable structure list */
+  (var_sct **var_lst, /* I/O [sct] Variable structure list to free */
+   const int var_nbr); /* I [nbr] Number of variable structures in list */
+  
+  nco_bool /* [flg] Variable is listed in a "bounds" attribute */
+  nco_is_spc_in_bnd_att /* [fnc] Variable is listed in a "bounds" attribute */
+  (const int nc_id, /* I [id] netCDF file ID */
+   const int var_trg_id); /* I [id] Variable ID */
+  
+  nco_bool /* [flg] Variable is listed in a "coordinates" attribute */
+  nco_is_spc_in_crd_att /* [fnc] Variable is listed in a "coordinates" attribute */
+  (const int nc_id, /* I [id] netCDF file ID */
+   const int var_trg_id); /* I [id] Variable ID */
+  
+  void
+  nco_var_mtd_refresh /* [fnc] Update variable metadata (dmn_nbr, ID, mss_val, type) */
+  (const int nc_id, /* I [id] netCDF input-file ID */
+   var_sct * const var); /* I/O [sct] Variable to update */
+  
+  void
+  nco_var_srd_srt_set /* [fnc] Assign zero to start and unity to stride vectors in variables */
+  (var_sct ** const var, /* I [sct] Variables whose subcycle, start, and stride arrays to set */
+   const int nbr_var); /* I [nbr] Number of structures in variable structure list */
+  
+  void
+  nco_var_dmn_refresh /* [fnc] Refresh var hyperslab info with var->dim[] info */
+  (var_sct ** const var, /* I [sct] Variables to refresh */
+   const int nbr_var); /* I [nbr] Number of structures in variable structure list */
+  
+  void
+  nco_var_val_cpy /* [fnc] Copy variables data from input to output file */
+  (const int in_id, /* I [enm] netCDF file ID */
+   const int out_id, /* I [enm] netCDF output file ID */
+   var_sct ** const var, /* I/O [sct] Variables to copy to output file */
+   const int nbr_var); /* I [nbr] Number of variables */
+  
+  void
+  nco_xrf_dmn /* [fnc] Switch pointers to dimension structures so var->dim points to var->dim->xrf */
+  (var_sct * const var); /* I [sct] Variable to manipulate */
+  
+  void
+  nco_xrf_var /* [fnc] Make xrf elements of variable structures point to eachother */
+  (var_sct * const var_1, /* I/O [sct] Variable */
+   var_sct * const var_2); /* I/O [sct] Related variable */
+  
+  var_sct *                             /* O [sct] Variable structure */
+  nco_var_fll                           /* [fnc] Allocate variable structure and fill with metadata */
+  (const int nc_id,                     /* I [id] netCDF file ID */
+   const int var_id,                    /* I [id] variable ID */
+   const char * const var_nm,           /* I [sng] Variable name */
+   dmn_sct * const * const dim,         /* I [sct] Dimensions available to variable */
+   const int nbr_dim);                  /* I [nbr] Number of dimensions in list */
+  
+  nc_type
+  nco_get_typ                           /* [fnc] Obtain netCDF type to define variable from NCO program ID */
+  (const var_sct * const var);          /* I [sct] Variable to be defined in output file */
   
 #ifdef __cplusplus
 } /* end extern "C" */
diff --git a/src/nco/ncpdq.c b/src/nco/ncpdq.c
index e81a0c9..7432d47 100644
--- a/src/nco/ncpdq.c
+++ b/src/nco/ncpdq.c
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncpdq.c,v 1.406 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncpdq.c,v 1.424 2015/02/09 22:35:36 zender Exp $ */
 
 /* ncpdq -- netCDF pack, re-dimension, query */
 
 /* Purpose: Pack, re-dimension, query single netCDF file and output to a single file */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -132,13 +132,14 @@ main(int argc,char **argv)
   char *nco_pck_map_sng=NULL_CEWI; /* [sng] Packing map Option M */
   char *opt_crr=NULL; /* [sng] String representation of current long-option name */
   char *optarg_lcl; /* [sng] Local copy of system optarg */
+  char *ppc_arg[NC_MAX_VARS]; /* [sng] PPC arguments */
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
   char add_fst_sng[]="add_offset"; /* [sng] Unidata standard string for add offset */
   char scl_fct_sng[]="scale_factor"; /* [sng] Unidata standard string for scale factor */
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncpdq.c,v 1.406 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.406 $";
+  const char * const CVS_Id="$Id: ncpdq.c,v 1.424 2015/02/09 22:35:36 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.424 $";
   const char * const opt_sht_lst="3467Aa:CcD:d:Fg:G:hL:l:M:Oo:P:p:Rrt:v:UxZ-:";
 
   cnk_sct cnk; /* [sct] Chunking structure */
@@ -189,14 +190,15 @@ main(int argc,char **argv)
   int nbr_var_fix; /* nbr_var_fix gets incremented */
   int nbr_var_fl;
   int nbr_var_prc; /* nbr_var_prc gets incremented */
-  int xtr_nbr=0; /* xtr_nbr won't otherwise be set for -c with no -v */
   int nco_pck_map=nco_pck_map_flt_sht; /* [enm] Packing map */
   int nco_pck_plc=nco_pck_plc_nil; /* [enm] Packing policy */
   int opt;
   int out_id;  
+  int ppc_nbr=0; /* [nbr] Number of PPC arguments */
   int rcd=NC_NOERR; /* [rcd] Return code */
   int thr_idx; /* [idx] Index of current thread */
   int thr_nbr=int_CEWI; /* [nbr] Thread number Option t */
+  int xtr_nbr=0; /* xtr_nbr won't otherwise be set for -c with no -v */
   int var_lst_in_nbr=0;
   int grp_lst_in_nbr=0; /* [nbr] Number of groups explicitly specified by user */
 
@@ -227,108 +229,111 @@ main(int argc,char **argv)
 #endif /* !ENABLE_MPI */
   
   static struct option opt_lng[]=
-    { /* Structure ordered by short option key if possible */
-      /* Long options with no argument, no short option counterpart */
-      {"cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-      {"clean",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-      {"mmr_cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-      {"drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-      {"dirty",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-      {"mmr_drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-      {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
-      {"hdf_upk",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
-      {"hdf_unpack",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
-      {"mrd",no_argument,0,0}, /* [enm] Multiple Record Dimension convention */
-      {"multiple_record_dimension",no_argument,0,0}, /* [enm] Multiple Record Dimension convention */
-      {"msa_usr_rdr",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
-      {"msa_user_order",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
-      {"ram_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
-      {"create_ram",no_argument,0,0}, /* [flg] Create file in RAM */
-      {"open_ram",no_argument,0,0}, /* [flg] Open (netCDF3) file(s) in RAM */
-      {"diskless_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
-      {"wrt_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
-      {"write_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
-      {"no_tmp_fl",no_argument,0,0}, /* [flg] Do not write output to temporary file */
-      {"intersection",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
-      {"nsx",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
-      {"union",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
-      {"unn",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
-      {"version",no_argument,0,0},
-      {"vrs",no_argument,0,0},
-      /* Long options with argument, no short option counterpart */
-      {"bfr_sz_hnt",required_argument,0,0}, /* [B] Buffer size hint */
-      {"buffer_size_hint",required_argument,0,0}, /* [B] Buffer size hint */
-      {"cnk_byt",required_argument,0,0}, /* [B] Chunk size in bytes */
-      {"chunk_byte",required_argument,0,0}, /* [B] Chunk size in bytes */
-      {"cnk_dmn",required_argument,0,0}, /* [nbr] Chunk size */
-      {"chunk_dimension",required_argument,0,0}, /* [nbr] Chunk size */
-      {"cnk_map",required_argument,0,0}, /* [nbr] Chunking map */
-      {"chunk_map",required_argument,0,0}, /* [nbr] Chunking map */
-      {"cnk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
-      {"chunk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
-      {"cnk_plc",required_argument,0,0}, /* [nbr] Chunking policy */
-      {"chunk_policy",required_argument,0,0}, /* [nbr] Chunking policy */
-      {"cnk_scl",required_argument,0,0}, /* [nbr] Chunk size scalar */
-      {"chunk_scalar",required_argument,0,0}, /* [nbr] Chunk size scalar */
-      {"fl_fmt",required_argument,0,0},
-      {"file_format",required_argument,0,0},
-      {"hdr_pad",required_argument,0,0},
-      {"header_pad",required_argument,0,0},
-      /* Long options with short counterparts */
-      {"3",no_argument,0,'3'},
-      {"4",no_argument,0,'4'},
-      {"64bit",no_argument,0,'4'},
-      {"netcdf4",no_argument,0,'4'},
-      {"append",no_argument,0,'A'},
-      {"arrange",required_argument,0,'a'},
-      {"permute",required_argument,0,'a'},
-      {"reorder",required_argument,0,'a'},
-      {"rdr",required_argument,0,'a'},
-      {"no-coords",no_argument,0,'C'},
-      {"no-crd",no_argument,0,'C'},
-      {"coords",no_argument,0,'c'},
-      {"crd",no_argument,0,'c'},
-      {"debug",required_argument,0,'D'},
-      {"nco_dbg_lvl",required_argument,0,'D'},
-      {"dimension",required_argument,0,'d'},
-      {"dmn",required_argument,0,'d'},
-      {"fortran",no_argument,0,'F'},
-      {"ftn",no_argument,0,'F'},
-      {"gpe",required_argument,0,'G'}, /* [sng] Group Path Edit (GPE) */
-      {"grp",required_argument,0,'g'},
-      {"group",required_argument,0,'g'},
-      {"history",no_argument,0,'h'},
-      {"hst",no_argument,0,'h'},
-      {"dfl_lvl",required_argument,0,'L'}, /* [enm] Deflate level */
-      {"deflate",required_argument,0,'L'}, /* [enm] Deflate level */
-      {"local",required_argument,0,'l'},
-      {"lcl",required_argument,0,'l'},
-      {"pack_map",required_argument,0,'M'},
-      {"pck_map",required_argument,0,'M'},
-      {"map",required_argument,0,'M'},
-      {"overwrite",no_argument,0,'O'},
-      {"ovr",no_argument,0,'O'},
-      {"output",required_argument,0,'o'},
-      {"fl_out",required_argument,0,'o'},
-      {"pack_policy",required_argument,0,'P'},
-      {"pck_plc",required_argument,0,'P'},
-      {"path",required_argument,0,'p'},
-      {"retain",no_argument,0,'R'},
-      {"rtn",no_argument,0,'R'},
-      {"revision",no_argument,0,'r'},
-      {"thr_nbr",required_argument,0,'t'},
-      {"threads",required_argument,0,'t'},
-      {"omp_num_threads",required_argument,0,'t'},
-      {"unpack",no_argument,0,'U'},
-      {"upk",no_argument,0,'U'},
-      {"variable",required_argument,0,'v'},
-      {"auxiliary",required_argument,0,'X'},
-      {"exclude",no_argument,0,'x'},
-      {"xcl",no_argument,0,'x'},
-      {"help",no_argument,0,'?'},
-      {"hlp",no_argument,0,'?'},
-      {0,0,0,0}
-    }; /* end opt_lng */
+  { /* Structure ordered by short option key if possible */
+    /* Long options with no argument, no short option counterpart */
+    {"cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+    {"clean",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+    {"mmr_cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+    {"drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+    {"dirty",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+    {"mmr_drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+    {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
+    {"hdf_upk",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
+    {"hdf_unpack",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
+    {"mrd",no_argument,0,0}, /* [enm] Multiple Record Dimension convention */
+    {"multiple_record_dimension",no_argument,0,0}, /* [enm] Multiple Record Dimension convention */
+    {"msa_usr_rdr",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+    {"msa_user_order",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+    {"ram_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
+    {"create_ram",no_argument,0,0}, /* [flg] Create file in RAM */
+    {"open_ram",no_argument,0,0}, /* [flg] Open (netCDF3) file(s) in RAM */
+    {"diskless_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
+    {"wrt_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
+    {"write_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
+    {"no_tmp_fl",no_argument,0,0}, /* [flg] Do not write output to temporary file */
+    {"intersection",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
+    {"nsx",no_argument,0,0}, /* [flg] Select intersection of specified groups and variables */
+    {"union",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
+    {"unn",no_argument,0,0}, /* [flg] Select union of specified groups and variables */
+    {"version",no_argument,0,0},
+    {"vrs",no_argument,0,0},
+    /* Long options with argument, no short option counterpart */
+    {"bfr_sz_hnt",required_argument,0,0}, /* [B] Buffer size hint */
+    {"buffer_size_hint",required_argument,0,0}, /* [B] Buffer size hint */
+    {"cnk_byt",required_argument,0,0}, /* [B] Chunk size in bytes */
+    {"chunk_byte",required_argument,0,0}, /* [B] Chunk size in bytes */
+    {"cnk_dmn",required_argument,0,0}, /* [nbr] Chunk size */
+    {"chunk_dimension",required_argument,0,0}, /* [nbr] Chunk size */
+    {"cnk_map",required_argument,0,0}, /* [nbr] Chunking map */
+    {"chunk_map",required_argument,0,0}, /* [nbr] Chunking map */
+    {"cnk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
+    {"chunk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
+    {"cnk_plc",required_argument,0,0}, /* [nbr] Chunking policy */
+    {"chunk_policy",required_argument,0,0}, /* [nbr] Chunking policy */
+    {"cnk_scl",required_argument,0,0}, /* [nbr] Chunk size scalar */
+    {"chunk_scalar",required_argument,0,0}, /* [nbr] Chunk size scalar */
+    {"fl_fmt",required_argument,0,0},
+    {"file_format",required_argument,0,0},
+    {"hdr_pad",required_argument,0,0},
+    {"header_pad",required_argument,0,0},
+    {"ppc",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+    {"precision_preserving_compression",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+    {"quantize",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+    /* Long options with short counterparts */
+    {"3",no_argument,0,'3'},
+    {"4",no_argument,0,'4'},
+    {"64bit",no_argument,0,'4'},
+    {"netcdf4",no_argument,0,'4'},
+    {"append",no_argument,0,'A'},
+    {"arrange",required_argument,0,'a'},
+    {"permute",required_argument,0,'a'},
+    {"reorder",required_argument,0,'a'},
+    {"rdr",required_argument,0,'a'},
+    {"no-coords",no_argument,0,'C'},
+    {"no-crd",no_argument,0,'C'},
+    {"coords",no_argument,0,'c'},
+    {"crd",no_argument,0,'c'},
+    {"debug",required_argument,0,'D'},
+    {"nco_dbg_lvl",required_argument,0,'D'},
+    {"dimension",required_argument,0,'d'},
+    {"dmn",required_argument,0,'d'},
+    {"fortran",no_argument,0,'F'},
+    {"ftn",no_argument,0,'F'},
+    {"gpe",required_argument,0,'G'}, /* [sng] Group Path Edit (GPE) */
+    {"grp",required_argument,0,'g'},
+    {"group",required_argument,0,'g'},
+    {"history",no_argument,0,'h'},
+    {"hst",no_argument,0,'h'},
+    {"dfl_lvl",required_argument,0,'L'}, /* [enm] Deflate level */
+    {"deflate",required_argument,0,'L'}, /* [enm] Deflate level */
+    {"local",required_argument,0,'l'},
+    {"lcl",required_argument,0,'l'},
+    {"pack_map",required_argument,0,'M'},
+    {"pck_map",required_argument,0,'M'},
+    {"map",required_argument,0,'M'},
+    {"overwrite",no_argument,0,'O'},
+    {"ovr",no_argument,0,'O'},
+    {"output",required_argument,0,'o'},
+    {"fl_out",required_argument,0,'o'},
+    {"pack_policy",required_argument,0,'P'},
+    {"pck_plc",required_argument,0,'P'},
+    {"path",required_argument,0,'p'},
+    {"retain",no_argument,0,'R'},
+    {"rtn",no_argument,0,'R'},
+    {"revision",no_argument,0,'r'},
+    {"thr_nbr",required_argument,0,'t'},
+    {"threads",required_argument,0,'t'},
+    {"omp_num_threads",required_argument,0,'t'},
+    {"unpack",no_argument,0,'U'},
+    {"upk",no_argument,0,'U'},
+    {"variable",required_argument,0,'v'},
+    {"auxiliary",required_argument,0,'X'},
+    {"exclude",no_argument,0,'x'},
+    {"xcl",no_argument,0,'x'},
+    {"help",no_argument,0,'?'},
+    {"hlp",no_argument,0,'?'},
+    {0,0,0,0}
+  }; /* end opt_lng */
   int opt_idx=0; /* Index of current long option into opt_lng array */
 
   /* Initialize traversal table */ 
@@ -401,6 +406,10 @@ main(int argc,char **argv)
         hdr_pad=strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
         if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
       } /* endif "hdr_pad" */
+      if(!strcmp(opt_crr,"ppc") || !strcmp(opt_crr,"precision_preserving_compression") || !strcmp(opt_crr,"quantize")){
+        ppc_arg[ppc_nbr]=(char *)strdup(optarg);
+        ppc_nbr++;
+      } /* endif "ppc" */
       if(!strcmp(opt_crr,"mrd") || !strcmp(opt_crr,"multiple_record_dimension")) nco_mrd_cnv=nco_mrd_allow; /* [enm] Multiple Record Dimension convention */
       if(!strcmp(opt_crr,"msa_usr_rdr") || !strcmp(opt_crr,"msa_user_order")) MSA_USR_RDR=True; /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"create_ram") || !strcmp(opt_crr,"diskless_all")) RAM_CREATE=True; /* [flg] Open (netCDF3) file(s) in RAM */
@@ -651,13 +660,8 @@ main(int argc,char **argv)
     (void)nco_dmn_xrf(dim[idx],dmn_out[idx]);
   } /* end loop over extracted dimensions */
 
-  /* If re-ordering */
-  if(IS_REORDER){
-
-    /* Create list of dimensions to average(ncwa)/re-order(ncpdq) */
-    (void)nco_dmn_avg_mk(in_id,dmn_rdr_lst_in,dmn_rdr_nbr_in,flg_dmn_prc_usr_spc,False,trv_tbl,&dmn_rdr,&dmn_rdr_nbr);
-
-  } /* If re-ordering */
+  /* Create list of dimensions to average(ncwa)/re-order(ncpdq) */
+  if(IS_REORDER) (void)nco_dmn_avg_mk(in_id,dmn_rdr_lst_in,dmn_rdr_nbr_in,flg_dmn_prc_usr_spc,False,trv_tbl,&dmn_rdr,&dmn_rdr_nbr);
 
   /* Fill-in variable structure list for all extracted variables. NOTE: Using GTT version */
   var=nco_fll_var_trv(in_id,&xtr_nbr,trv_tbl);
@@ -687,6 +691,9 @@ main(int argc,char **argv)
   /* Make output and input files consanguinous */
   if(fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt;
 
+  /* Inititialize, decode, and set PPC information */
+  if(ppc_nbr > 0) nco_ppc_ini(in_id,&dfl_lvl,fl_out_fmt,ppc_arg,ppc_nbr,trv_tbl);
+
   /* Verify output file format supports requested actions */
   (void)nco_fl_fmt_vet(fl_out_fmt,cnk_nbr,dfl_lvl);
 
@@ -719,11 +726,11 @@ main(int argc,char **argv)
       } /* endif packing */
     } /* end loop over var_prc */
 
-    /* Transfer variable type to table. NOTE: Using processed variables set with new type. MUST be done before definition */
+    /* Transfer variable type to table. NB: Use processed variables set with new type. MUST be done before definition */
     (void)nco_var_typ_trv(nbr_var_prc,var_prc_out,trv_tbl);    
   } /* nco_pck_plc == nco_pck_plc_nil */
 
-  /* Define dimensions, extracted groups, variables, and attributes in output file. NOTE. record name is NULL */
+  /* Define dimensions, extracted groups, variables, and attributes in output file. NB: record name is NULL */
   (void)nco_xtr_dfn(in_id,out_id,&cnk,dfl_lvl,gpe,md5,True,True,False,nco_pck_plc,(char *)NULL,trv_tbl);
 
   /* Catenate time-stamped command line to "history" global attribute */
@@ -770,7 +777,7 @@ main(int argc,char **argv)
     ddra_info.tmr_flg=nco_tmr_rgl;
 
 #ifdef _OPENMP
-#pragma omp parallel for default(none) private(idx,in_id) shared(aed_lst_add_fst,aed_lst_scl_fct,nco_dbg_lvl,dmn_rdr_nbr,gpe,in_id_arr,nbr_var_prc,nco_pck_map,nco_pck_plc,out_id,nco_prg_nm,rcd,var_prc,var_prc_out,nbr_dmn_fl,trv_tbl,IS_REORDER)
+#pragma omp parallel for default(none) private(idx,in_id) shared(aed_lst_add_fst,aed_lst_scl_fct,nco_dbg_lvl,dmn_rdr_nbr,gpe,in_id_arr,nbr_var_prc,nco_pck_map,nco_pck_plc,out_id,nco_prg_nm,rcd,var_prc,var_prc_out,nbr_dmn_fl,trv_tbl,IS_REORDER,fl_out_fmt)
 #endif /* !_OPENMP */
 
     /* Process all variables in current file */
@@ -833,6 +840,10 @@ main(int argc,char **argv)
         nco_pck_val(var_prc[idx],var_prc_out[idx],nco_pck_map,nco_pck_plc,aed_lst_add_fst+idx,aed_lst_scl_fct+idx);
       } /* endif nco_pck_plc != nco_pck_plc_nil */
 
+      if(var_trv->ppc != NC_MAX_INT){
+	if(var_trv->flg_nsd) (void)nco_var_bitmask(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_out[idx]->val); else (void)nco_var_around(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_out[idx]->val);
+      } /* endif ppc */
+	
 #ifdef _OPENMP
 #pragma omp critical
 #endif /* _OPENMP */
@@ -924,10 +935,10 @@ main(int argc,char **argv)
   if(flg_cln){
     /* ncpdq-specific memory cleanup */
     if(dmn_rdr_nbr > 0){
-      if(dmn_rdr_nbr_in > 0) {
+      if(dmn_rdr_nbr_in > 0){
         dmn_rdr_lst_in=nco_sng_lst_free(dmn_rdr_lst_in,dmn_rdr_nbr_in);
         dmn_rdr_lst_in_rvr=nco_sng_lst_free(dmn_rdr_lst_in_rvr,dmn_rdr_nbr_in);
-      }
+      } /* endif */
       /* Free dimension list pointers */
       dmn_rdr=(dmn_sct **)nco_free(dmn_rdr);
       /* Dimension structures in dmn_rdr are owned by dmn and dmn_out, free'd later */
@@ -937,8 +948,8 @@ main(int argc,char **argv)
       if(nco_pck_map_sng) nco_pck_map_sng=(char *)nco_free(nco_pck_map_sng);
       if(nco_pck_plc != nco_pck_plc_upk){
         /* No need for loop over var_prc variables to free attribute values
-        Variable structures and attribute edit lists share same attribute values
-        Free them only once, and do it in nco_var_free() */
+	   Variable structures and attribute edit lists share same attribute values
+	   Free them only once, and do it in nco_var_free() */
         aed_lst_add_fst=(aed_sct *)nco_free(aed_lst_add_fst);
         aed_lst_scl_fct=(aed_sct *)nco_free(aed_lst_scl_fct);
       } /* nco_pck_plc == nco_pck_plc_upk */
@@ -960,8 +971,9 @@ main(int argc,char **argv)
     if(fl_lst_abb) fl_lst_abb=nco_sng_lst_free(fl_lst_abb,abb_arg_nbr);
     if(var_lst_in_nbr > 0) var_lst_in=nco_sng_lst_free(var_lst_in,var_lst_in_nbr);
     /* Free limits */
-    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
     for(idx=0;idx<aux_nbr;idx++) aux_arg[idx]=(char *)nco_free(aux_arg[idx]);
+    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
+    for(idx=0;idx<ppc_nbr;idx++) ppc_arg[idx]=(char *)nco_free(ppc_arg[idx]);
     /* Free chunking information */
     for(idx=0;idx<cnk_nbr;idx++) cnk_arg[idx]=(char *)nco_free(cnk_arg[idx]);
     if(cnk_nbr > 0) cnk.cnk_dmn=(cnk_dmn_sct **)nco_cnk_lst_free(cnk.cnk_dmn,cnk_nbr);
@@ -977,7 +989,7 @@ main(int argc,char **argv)
     var_fix_out=(var_sct **)nco_free(var_fix_out);
     trv_tbl_free(trv_tbl); 
     for(idx=0;idx<lmt_nbr;idx++) flg_dne[idx].dim_nm=(char *)nco_free(flg_dne[idx].dim_nm);
-    if (flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
+    if(flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
     if(gpe) gpe=(gpe_sct *)nco_gpe_free(gpe);
   } /* !flg_cln */
 
diff --git a/src/nco/ncra.c b/src/nco/ncra.c
index 2f77494..01da786 100644
--- a/src/nco/ncra.c
+++ b/src/nco/ncra.c
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncra.c,v 1.556 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncra.c,v 1.562 2015/02/09 22:35:36 zender Exp $ */
 
 /* This single source file compiles into three separate executables:
    ncra -- netCDF record averager
@@ -9,9 +9,9 @@
    specfied variables of multiple input netCDF files and output them 
    to a single file. */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -137,11 +137,12 @@ main(int argc,char **argv)
   char *nsm_sfx=NULL; /* [sng] Ensemble suffix */
   char *opt_crr=NULL; /* [sng] String representation of current long-option name */
   char *optarg_lcl=NULL; /* [sng] Local copy of system optarg */
+  char *ppc_arg[NC_MAX_VARS]; /* [sng] PPC arguments */
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncra.c,v 1.556 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.556 $";
+  const char * const CVS_Id="$Id: ncra.c,v 1.562 2015/02/09 22:35:36 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.562 $";
   const char * const opt_sht_lst="3467ACcD:d:FG:g:HhL:l:n:Oo:p:P:rRt:v:X:xY:y:-:";
 
   cnk_sct cnk; /* [sct] Chunking structure */
@@ -201,6 +202,7 @@ main(int argc,char **argv)
   int nco_pck_plc=nco_pck_plc_nil; /* [enm] Default packing is none */
   int opt;
   int out_id;  
+  int ppc_nbr=0; /* [nbr] Number of PPC arguments */
   int rcd=NC_NOERR; /* [rcd] Return code */
   int thr_idx; /* [idx] Index of current thread */
   int thr_nbr=int_CEWI; /* [nbr] Thread number Option t */
@@ -283,115 +285,118 @@ main(int argc,char **argv)
 #endif /* !ENABLE_MPI */
   
   static struct option opt_lng[]=
-  { /* Structure ordered by short option key if possible */
-    /* Long options with no argument, no short option counterpart */
-    {"cll_mth",no_argument,0,0}, /* [flg] Add/modify cell_methods attributes */
-    {"cell_methods",no_argument,0,0}, /* [flg] Add/modify cell_methods attributes */
-    {"no_cll_mth",no_argument,0,0}, /* [flg] Do not add/modify cell_methods attributes */
-    {"cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-    {"clean",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-    {"mmr_cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
-    {"drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-    {"dirty",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-    {"mmr_drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
-    {"dbl",no_argument,0,0}, /* [flg] Arithmetic convention: promote float to double */
-    {"flt",no_argument,0,0}, /* [flg] Arithmetic convention: keep single-precision */
-    {"rth_dbl",no_argument,0,0}, /* [flg] Arithmetic convention: promote float to double */
-    {"rth_flt",no_argument,0,0}, /* [flg] Arithmetic convention: keep single-precision */
-    {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
-    {"hdf_upk",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
-    {"hdf_unpack",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
-    {"md5_dgs",no_argument,0,0}, /* [flg] Perform MD5 digests */
-    {"md5_digest",no_argument,0,0}, /* [flg] Perform MD5 digests */
-    {"mro",no_argument,0,0}, /* [flg] Multi-Record Output */
-    {"multi_record_output",no_argument,0,0}, /* [flg] Multi-Record Output */
-    {"msa_usr_rdr",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
-    {"msa_user_order",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
-    {"nsm_fl",no_argument,0,0},
-    {"nsm_grp",no_argument,0,0},
-    {"ram_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
-    {"create_ram",no_argument,0,0}, /* [flg] Create file in RAM */
-    {"open_ram",no_argument,0,0}, /* [flg] Open (netCDF3) file(s) in RAM */
-    {"diskless_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
-    {"rec_apn",no_argument,0,0}, /* [flg] Append records directly to output file */
-    {"record_append",no_argument,0,0}, /* [flg] Append records directly to output file */
-    {"wrt_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
-    {"write_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
-    {"no_tmp_fl",no_argument,0,0}, /* [flg] Do not write output to temporary file */
-    {"version",no_argument,0,0},
-    {"vrs",no_argument,0,0},
-    /* Long options with argument, no short option counterpart */
-    {"bfr_sz_hnt",required_argument,0,0}, /* [B] Buffer size hint */
-    {"buffer_size_hint",required_argument,0,0}, /* [B] Buffer size hint */
-    {"cnk_byt",required_argument,0,0}, /* [B] Chunk size in bytes */
-    {"chunk_byte",required_argument,0,0}, /* [B] Chunk size in bytes */
-    {"cnk_dmn",required_argument,0,0}, /* [nbr] Chunk size */
-    {"chunk_dimension",required_argument,0,0}, /* [nbr] Chunk size */
-    {"cnk_map",required_argument,0,0}, /* [nbr] Chunking map */
-    {"chunk_map",required_argument,0,0}, /* [nbr] Chunking map */
-    {"cnk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
-    {"chunk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
-    {"cnk_plc",required_argument,0,0}, /* [nbr] Chunking policy */
-    {"chunk_policy",required_argument,0,0}, /* [nbr] Chunking policy */
-    {"cnk_scl",required_argument,0,0}, /* [nbr] Chunk size scalar */
-    {"chunk_scalar",required_argument,0,0}, /* [nbr] Chunk size scalar */
-    {"fl_fmt",required_argument,0,0},
-    {"file_format",required_argument,0,0},
-    {"hdr_pad",required_argument,0,0},
-    {"header_pad",required_argument,0,0},
-    {"nsm_sfx",required_argument,0,0},
-    {"ensemble_suffix",required_argument,0,0},
-    /* Long options with short counterparts */
-    {"3",no_argument,0,'3'},
-    {"4",no_argument,0,'4'},
-    {"64bit",no_argument,0,'4'},
-    {"netcdf4",no_argument,0,'4'},
-    {"append",no_argument,0,'A'},
-    {"coords",no_argument,0,'c'},
-    {"crd",no_argument,0,'c'},
-    {"no-coords",no_argument,0,'C'},
-    {"no-crd",no_argument,0,'C'},
-    {"debug",required_argument,0,'D'},
-    {"nco_dbg_lvl",required_argument,0,'D'},
-    {"dimension",required_argument,0,'d'},
-    {"dmn",required_argument,0,'d'},
-    {"fortran",no_argument,0,'F'},
-    {"ftn",no_argument,0,'F'},
-    {"fl_lst_in",no_argument,0,'H'},
-    {"file_list",no_argument,0,'H'},
-    {"history",no_argument,0,'h'},
-    {"hst",no_argument,0,'h'},
-    {"dfl_lvl",required_argument,0,'L'}, /* [enm] Deflate level */
-    {"deflate",required_argument,0,'L'}, /* [enm] Deflate level */
-    {"local",required_argument,0,'l'},
-    {"lcl",required_argument,0,'l'},
-    {"nintap",required_argument,0,'n'},
-    {"overwrite",no_argument,0,'O'},
-    {"ovr",no_argument,0,'O'},
-    {"output",required_argument,0,'o'},
-    {"fl_out",required_argument,0,'o'},
-    {"path",required_argument,0,'p'},
-    {"pack",required_argument,0,'P'},
-    {"retain",no_argument,0,'R'},
-    {"rtn",no_argument,0,'R'},
-    {"revision",no_argument,0,'r'},
-    {"thr_nbr",required_argument,0,'t'},
-    {"threads",required_argument,0,'t'},
-    {"omp_num_threads",required_argument,0,'t'},
-    {"variable",required_argument,0,'v'},
-    {"auxiliary",required_argument,0,'X'},
-    {"exclude",no_argument,0,'x'},
-    {"xcl",no_argument,0,'x'},
-    {"pseudonym",required_argument,0,'Y'},
-    {"program",required_argument,0,'Y'},
-    {"prg_nm",required_argument,0,'Y'},
-    {"math",required_argument,0,'y'},
-    {"operation",required_argument,0,'y'},
-    {"op_typ",required_argument,0,'y'},
-    {"help",no_argument,0,'?'},
-    {"hlp",no_argument,0,'?'},
-    {0,0,0,0}
-  }; /* end opt_lng */
+    { /* Structure ordered by short option key if possible */
+      /* Long options with no argument, no short option counterpart */
+      {"cll_mth",no_argument,0,0}, /* [flg] Add/modify cell_methods attributes */
+      {"cell_methods",no_argument,0,0}, /* [flg] Add/modify cell_methods attributes */
+      {"no_cll_mth",no_argument,0,0}, /* [flg] Do not add/modify cell_methods attributes */
+      {"cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+      {"clean",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+      {"mmr_cln",no_argument,0,0}, /* [flg] Clean memory prior to exit */
+      {"drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+      {"dirty",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+      {"mmr_drt",no_argument,0,0}, /* [flg] Allow dirty memory on exit */
+      {"dbl",no_argument,0,0}, /* [flg] Arithmetic convention: promote float to double */
+      {"flt",no_argument,0,0}, /* [flg] Arithmetic convention: keep single-precision */
+      {"rth_dbl",no_argument,0,0}, /* [flg] Arithmetic convention: promote float to double */
+      {"rth_flt",no_argument,0,0}, /* [flg] Arithmetic convention: keep single-precision */
+      {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
+      {"hdf_upk",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
+      {"hdf_unpack",no_argument,0,0}, /* [flg] HDF unpack convention: unpacked=scale_factor*(packed-add_offset) */
+      {"md5_dgs",no_argument,0,0}, /* [flg] Perform MD5 digests */
+      {"md5_digest",no_argument,0,0}, /* [flg] Perform MD5 digests */
+      {"mro",no_argument,0,0}, /* [flg] Multi-Record Output */
+      {"multi_record_output",no_argument,0,0}, /* [flg] Multi-Record Output */
+      {"msa_usr_rdr",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+      {"msa_user_order",no_argument,0,0}, /* [flg] Multi-Slab Algorithm returns hyperslabs in user-specified order */
+      {"nsm_fl",no_argument,0,0},
+      {"nsm_grp",no_argument,0,0},
+      {"ram_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
+      {"create_ram",no_argument,0,0}, /* [flg] Create file in RAM */
+      {"open_ram",no_argument,0,0}, /* [flg] Open (netCDF3) file(s) in RAM */
+      {"diskless_all",no_argument,0,0}, /* [flg] Open (netCDF3) and create file(s) in RAM */
+      {"rec_apn",no_argument,0,0}, /* [flg] Append records directly to output file */
+      {"record_append",no_argument,0,0}, /* [flg] Append records directly to output file */
+      {"wrt_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
+      {"write_tmp_fl",no_argument,0,0}, /* [flg] Write output to temporary file */
+      {"no_tmp_fl",no_argument,0,0}, /* [flg] Do not write output to temporary file */
+      {"version",no_argument,0,0},
+      {"vrs",no_argument,0,0},
+      /* Long options with argument, no short option counterpart */
+      {"bfr_sz_hnt",required_argument,0,0}, /* [B] Buffer size hint */
+      {"buffer_size_hint",required_argument,0,0}, /* [B] Buffer size hint */
+      {"cnk_byt",required_argument,0,0}, /* [B] Chunk size in bytes */
+      {"chunk_byte",required_argument,0,0}, /* [B] Chunk size in bytes */
+      {"cnk_dmn",required_argument,0,0}, /* [nbr] Chunk size */
+      {"chunk_dimension",required_argument,0,0}, /* [nbr] Chunk size */
+      {"cnk_map",required_argument,0,0}, /* [nbr] Chunking map */
+      {"chunk_map",required_argument,0,0}, /* [nbr] Chunking map */
+      {"cnk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
+      {"chunk_min",required_argument,0,0}, /* [B] Minimize size of variable to chunk */
+      {"cnk_plc",required_argument,0,0}, /* [nbr] Chunking policy */
+      {"chunk_policy",required_argument,0,0}, /* [nbr] Chunking policy */
+      {"cnk_scl",required_argument,0,0}, /* [nbr] Chunk size scalar */
+      {"chunk_scalar",required_argument,0,0}, /* [nbr] Chunk size scalar */
+      {"fl_fmt",required_argument,0,0},
+      {"file_format",required_argument,0,0},
+      {"hdr_pad",required_argument,0,0},
+      {"header_pad",required_argument,0,0},
+      {"ppc",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"precision_preserving_compression",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"quantize",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+      {"nsm_sfx",required_argument,0,0},
+      {"ensemble_suffix",required_argument,0,0},
+      /* Long options with short counterparts */
+      {"3",no_argument,0,'3'},
+      {"4",no_argument,0,'4'},
+      {"64bit",no_argument,0,'4'},
+      {"netcdf4",no_argument,0,'4'},
+      {"append",no_argument,0,'A'},
+      {"coords",no_argument,0,'c'},
+      {"crd",no_argument,0,'c'},
+      {"no-coords",no_argument,0,'C'},
+      {"no-crd",no_argument,0,'C'},
+      {"debug",required_argument,0,'D'},
+      {"nco_dbg_lvl",required_argument,0,'D'},
+      {"dimension",required_argument,0,'d'},
+      {"dmn",required_argument,0,'d'},
+      {"fortran",no_argument,0,'F'},
+      {"ftn",no_argument,0,'F'},
+      {"fl_lst_in",no_argument,0,'H'},
+      {"file_list",no_argument,0,'H'},
+      {"history",no_argument,0,'h'},
+      {"hst",no_argument,0,'h'},
+      {"dfl_lvl",required_argument,0,'L'}, /* [enm] Deflate level */
+      {"deflate",required_argument,0,'L'}, /* [enm] Deflate level */
+      {"local",required_argument,0,'l'},
+      {"lcl",required_argument,0,'l'},
+      {"nintap",required_argument,0,'n'},
+      {"overwrite",no_argument,0,'O'},
+      {"ovr",no_argument,0,'O'},
+      {"output",required_argument,0,'o'},
+      {"fl_out",required_argument,0,'o'},
+      {"path",required_argument,0,'p'},
+      {"pack",required_argument,0,'P'},
+      {"retain",no_argument,0,'R'},
+      {"rtn",no_argument,0,'R'},
+      {"revision",no_argument,0,'r'},
+      {"thr_nbr",required_argument,0,'t'},
+      {"threads",required_argument,0,'t'},
+      {"omp_num_threads",required_argument,0,'t'},
+      {"variable",required_argument,0,'v'},
+      {"auxiliary",required_argument,0,'X'},
+      {"exclude",no_argument,0,'x'},
+      {"xcl",no_argument,0,'x'},
+      {"pseudonym",required_argument,0,'Y'},
+      {"program",required_argument,0,'Y'},
+      {"prg_nm",required_argument,0,'Y'},
+      {"math",required_argument,0,'y'},
+      {"operation",required_argument,0,'y'},
+      {"op_typ",required_argument,0,'y'},
+      {"help",no_argument,0,'?'},
+      {"hlp",no_argument,0,'?'},
+      {0,0,0,0}
+    }; /* end opt_lng */
   int opt_idx=0; /* Index of current long option into opt_lng array */
 
 #ifdef _LIBINTL_H
@@ -488,6 +493,10 @@ main(int argc,char **argv)
 	nco_prg_nm=nco_prg_prs("ncge",&nco_prg_id);
       } /* endif nsm_grp */
       if(!strcmp(opt_crr,"nsm_sfx") || !strcmp(opt_crr,"ensemble_suffix")) nsm_sfx=(char *)strdup(optarg);
+      if(!strcmp(opt_crr,"ppc") || !strcmp(opt_crr,"precision_preserving_compression") || !strcmp(opt_crr,"quantize")){
+        ppc_arg[ppc_nbr]=(char *)strdup(optarg);
+        ppc_nbr++;
+      } /* endif "ppc" */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"create_ram") || !strcmp(opt_crr,"diskless_all")) RAM_CREATE=True; /* [flg] Open (netCDF3) file(s) in RAM */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"open_ram") || !strcmp(opt_crr,"diskless_all")) RAM_OPEN=True; /* [flg] Create file in RAM */
       if(!strcmp(opt_crr,"rec_apn") || !strcmp(opt_crr,"record_append")){
@@ -730,6 +739,9 @@ main(int argc,char **argv)
   /* Make output and input files consanguinous */
   if(fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt;
 
+  /* Inititialize, decode, and set PPC information */
+  if(ppc_nbr > 0) nco_ppc_ini(in_id,&dfl_lvl,fl_out_fmt,ppc_arg,ppc_nbr,trv_tbl);
+
   /* Verify output file format supports requested actions */
   (void)nco_fl_fmt_vet(fl_out_fmt,cnk_nbr,dfl_lvl);
 
@@ -968,7 +980,7 @@ main(int argc,char **argv)
               scv.type=NC_DOUBLE;  
               /* Convert scalar to variable type */
               nco_scv_cnf_typ(var_crd->type,&scv);
-              (void)var_scv_add(var_crd->type,var_crd->sz,var_crd->has_mss_val,var_crd->mss_val,var_crd->val,&scv);
+              (void)nco_var_scv_add(var_crd->type,var_crd->sz,var_crd->has_mss_val,var_crd->mss_val,var_crd->val,&scv);
             } /* end re-basing */
 
             if(nco_prg_id == ncra){
@@ -1004,6 +1016,9 @@ main(int argc,char **argv)
             if(nco_prg_id == ncrcat){
               /* Replace this time_offset value with time_offset from initial file base_time */
               if(CNV_ARM && !strcmp(var_prc[idx]->nm,"time_offset")) var_prc[idx]->val.dp[0]+=(base_time_crr-base_time_srt);
+	      if(var_trv->ppc != NC_MAX_INT){
+		if(var_trv->flg_nsd) (void)nco_var_bitmask(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc[idx]->val); else (void)nco_var_around(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc[idx]->val);
+	      } /* endif ppc */
 #ifdef _OPENMP
 #pragma omp critical
 #endif /* _OPENMP */
@@ -1062,6 +1077,9 @@ main(int argc,char **argv)
               var_prc_out[idx]=nco_var_cnf_typ(var_prc_out[idx]->typ_upk,var_prc_out[idx]);
               /* Packing/Unpacking */
               if(nco_pck_plc == nco_pck_plc_all_new_att) var_prc_out[idx]=nco_put_var_pck(grp_out_id,var_prc_out[idx],nco_pck_plc);
+	      if(var_trv->ppc != NC_MAX_INT){
+		if(var_trv->flg_nsd) (void)nco_var_bitmask(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_out[idx]->val); else (void)nco_var_around(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_out[idx]->val);
+	      } /* endif ppc */
               if(var_prc_out[idx]->nbr_dim == 0) (void)nco_put_var1(grp_out_id,var_prc_out[idx]->id,var_prc_out[idx]->srt,var_prc_out[idx]->val.vp,var_prc_out[idx]->type); else (void)nco_put_vara(grp_out_id,var_prc_out[idx]->id,var_prc_out[idx]->srt,var_prc_out[idx]->cnt,var_prc_out[idx]->val.vp,var_prc_out[idx]->type);
             } /* end loop over idx */
             idx_rec_out[idx_rec]++; /* [idx] Index of current record in output file (0 is first, ...) */
@@ -1334,6 +1352,9 @@ main(int argc,char **argv)
       var_prc_out[idx]=nco_var_cnf_typ(var_prc_out[idx]->typ_upk,var_prc_out[idx]);
       /* Packing/Unpacking */
       if(nco_pck_plc == nco_pck_plc_all_new_att) var_prc_out[idx]=nco_put_var_pck(grp_out_id,var_prc_out[idx],nco_pck_plc);
+      if(var_trv->ppc != NC_MAX_INT){
+	if(var_trv->flg_nsd) (void)nco_var_bitmask(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_out[idx]->val); else (void)nco_var_around(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_out[idx]->val);
+      } /* endif ppc */
       if(var_prc_out[idx]->nbr_dim == 0) (void)nco_put_var1(grp_out_id,var_prc_out[idx]->id,var_prc_out[idx]->srt,var_prc_out[idx]->val.vp,var_prc_out[idx]->type); else (void)nco_put_vara(grp_out_id,var_prc_out[idx]->id,var_prc_out[idx]->srt,var_prc_out[idx]->cnt,var_prc_out[idx]->val.vp,var_prc_out[idx]->type);
 
     } /* end loop over idx */
@@ -1372,9 +1393,9 @@ main(int argc,char **argv)
     if(fl_lst_abb) fl_lst_abb=nco_sng_lst_free(fl_lst_abb,abb_arg_nbr);
     if(var_lst_in_nbr > 0) var_lst_in=nco_sng_lst_free(var_lst_in,var_lst_in_nbr);
     /* Free limits */
-    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
-    /* NB: lmt[idx] was free()'d earlier */
     for(idx=0;idx<aux_nbr;idx++) aux_arg[idx]=(char *)nco_free(aux_arg[idx]);
+    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
+    for(idx=0;idx<ppc_nbr;idx++) ppc_arg[idx]=(char *)nco_free(ppc_arg[idx]);
     /* Free chunking information */
     for(idx=0;idx<cnk_nbr;idx++) cnk_arg[idx]=(char *)nco_free(cnk_arg[idx]);
     if(cnk_nbr > 0) cnk.cnk_dmn=(cnk_dmn_sct **)nco_cnk_lst_free(cnk.cnk_dmn,cnk_nbr);
@@ -1392,7 +1413,7 @@ main(int argc,char **argv)
 
     (void)trv_tbl_free(trv_tbl);
     for(idx=0;idx<lmt_nbr;idx++) flg_dne[idx].dim_nm=(char *)nco_free(flg_dne[idx].dim_nm);
-    if (flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
+    if(flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
     if(flg_input_complete) flg_input_complete=(nco_bool *)nco_free(flg_input_complete);
     if(idx_rec_out) idx_rec_out=(long *)nco_free(idx_rec_out);
     if(rec_in_cml) rec_in_cml=(long *)nco_free(rec_in_cml);
diff --git a/src/nco/ncrename.c b/src/nco/ncrename.c
index 4013c5b..4aa87b0 100644
--- a/src/nco/ncrename.c
+++ b/src/nco/ncrename.c
@@ -1,12 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncrename.c,v 1.208 2014/10/10 15:15:35 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncrename.c,v 1.209 2014/12/31 01:50:08 zender Exp $ */
 
 /* ncrename -- netCDF renaming operator */
 
 /* Purpose: Rename dimensions, variables, and attributes of a netCDF file */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -115,8 +115,8 @@ main(int argc,char **argv)
 
   char *obj_nm=NULL;
 
-  const char * const CVS_Id="$Id: ncrename.c,v 1.208 2014/10/10 15:15:35 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.208 $";
+  const char * const CVS_Id="$Id: ncrename.c,v 1.209 2014/12/31 01:50:08 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.209 $";
   const char * const opt_sht_lst="a:D:d:g:hl:Oo:p:rv:-:";
   const char dlm_chr='@'; /* Character delimiting variable from attribute name  */
   const char opt_chr='.'; /* Character indicating presence of following variable/dimension/attribute/group in file is optional */
diff --git a/src/nco/ncwa.c b/src/nco/ncwa.c
index a08daf6..51a9649 100644
--- a/src/nco/ncwa.c
+++ b/src/nco/ncwa.c
@@ -1,13 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncwa.c,v 1.430 2014/11/05 23:39:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncwa.c,v 1.436 2015/02/09 22:35:36 zender Exp $ */
 
 /* ncwa -- netCDF weighted averager */
 
 /* Purpose: Compute averages of specified hyperslabs of specfied variables
    in a single input netCDF file and output them to a single file. */
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3.
    As a special exception to the terms of the GPL, you are permitted 
    to link the NCO source code with the HDF, netCDF, OPeNDAP, and UDUnits
@@ -147,12 +147,13 @@ main(int argc,char **argv)
   char *nco_op_typ_sng; /* Operation type */
   char *opt_crr=NULL; /* [sng] String representation of current long-option name */
   char *optarg_lcl=NULL; /* [sng] Local copy of system optarg */
+  char *ppc_arg[NC_MAX_VARS]; /* [sng] PPC arguments */
   char *sng_cnv_rcd=NULL_CEWI; /* [sng] strtol()/strtoul() return code */
   char *wgt_nm=NULL;
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncwa.c,v 1.430 2014/11/05 23:39:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.430 $";
+  const char * const CVS_Id="$Id: ncwa.c,v 1.436 2015/02/09 22:35:36 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.436 $";
   const char * const opt_sht_lst="3467Aa:B:bCcD:d:Fg:G:hIL:l:M:m:nNOo:p:rRT:t:v:Ww:xy:-:";
 
   cnk_sct cnk; /* [sct] Chunking structure */
@@ -208,6 +209,7 @@ main(int argc,char **argv)
   int op_typ_rlt=0; /* Option o */
   int opt;
   int out_id;  
+  int ppc_nbr=0; /* [nbr] Number of PPC arguments */
   int rcd=NC_NOERR; /* [rcd] Return code */
   int thr_idx; /* [idx] Index of current thread */
   int thr_nbr=int_CEWI; /* [nbr] Thread number Option t */
@@ -295,6 +297,9 @@ main(int argc,char **argv)
     {"file_format",required_argument,0,0},
     {"hdr_pad",required_argument,0,0},
     {"header_pad",required_argument,0,0},
+    {"ppc",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+    {"precision_preserving_compression",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
+    {"quantize",required_argument,0,0}, /* [nbr] Precision-preserving compression, i.e., number of total or decimal significant digits */
     /* Long options with short counterparts */
     {"3",no_argument,0,'3'},
     {"4",no_argument,0,'4'},
@@ -439,6 +444,10 @@ main(int argc,char **argv)
         hdr_pad=strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
         if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
       } /* endif "hdr_pad" */
+      if(!strcmp(opt_crr,"ppc") || !strcmp(opt_crr,"precision_preserving_compression") || !strcmp(opt_crr,"quantize")){
+        ppc_arg[ppc_nbr]=(char *)strdup(optarg);
+        ppc_nbr++;
+      } /* endif "ppc" */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"create_ram") || !strcmp(opt_crr,"diskless_all")) RAM_CREATE=True; /* [flg] Open (netCDF3) file(s) in RAM */
       if(!strcmp(opt_crr,"ram_all") || !strcmp(opt_crr,"open_ram") || !strcmp(opt_crr,"diskless_all")) RAM_OPEN=True; /* [flg] Create file in RAM */
       if(!strcmp(opt_crr,"vrs") || !strcmp(opt_crr,"version")){
@@ -733,6 +742,9 @@ main(int argc,char **argv)
   /* Make output and input files consanguinous */
   if(fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt;
 
+  /* Inititialize, decode, and set PPC information */
+  if(ppc_nbr > 0) nco_ppc_ini(in_id,&dfl_lvl,fl_out_fmt,ppc_arg,ppc_nbr,trv_tbl);
+
   /* Verify output file format supports requested actions */
   (void)nco_fl_fmt_vet(fl_out_fmt,cnk_nbr,dfl_lvl);
 
@@ -916,6 +928,11 @@ main(int argc,char **argv)
       /* Perform non-linear transformations before weighting */
       if(!var_prc[idx]->is_crd_var){
         switch(nco_op_typ){
+        case nco_op_mabs: /* Absolute value variable before weighting */
+        case nco_op_mebs: /* Absolute value variable before weighting */
+        case nco_op_mibs: /* Absolute value variable before weighting */
+	  (void)nco_var_abs(var_prc[idx]->type,var_prc[idx]->sz,var_prc[idx]->has_mss_val,var_prc[idx]->mss_val,var_prc[idx]->val);
+          break;
         case nco_op_avgsqr: /* Square variable before weighting */
         case nco_op_rms: /* Square variable before weighting */
         case nco_op_rmssdn: /* Square variable before weighting */
@@ -971,8 +988,8 @@ main(int argc,char **argv)
           case NC_SHORT: mss_val_dbl=wgt_avg->mss_val.sp[0]; break;
           case NC_USHORT: mss_val_dbl=wgt_avg->mss_val.usp[0]; break;
           case NC_UINT: mss_val_dbl=wgt_avg->mss_val.uip[0]; break;
-          case NC_INT64: mss_val_dbl=wgt_avg->mss_val.i64p[0]; break;
-          case NC_UINT64: mss_val_dbl=wgt_avg->mss_val.ui64p[0]; break;
+          case NC_INT64: mss_val_dbl=(double)wgt_avg->mss_val.i64p[0]; break; /* CEWI for MSVC */
+          case NC_UINT64: mss_val_dbl=(double)wgt_avg->mss_val.ui64p[0]; break; /* CEWI for MSVC */
           case NC_BYTE: mss_val_dbl=wgt_avg->mss_val.bp[0]; break;
           case NC_UBYTE: mss_val_dbl=wgt_avg->mss_val.ubp[0]; break;
           case NC_CHAR: mss_val_dbl=wgt_avg->mss_val.cp[0]; break;
@@ -1026,6 +1043,8 @@ main(int argc,char **argv)
           if( /* Normalize by weighted tally if ....  */
             (nco_op_typ != nco_op_min) && /* ...operation is not min() and... */
             (nco_op_typ != nco_op_max) && /* ...operation is not max() and... */
+            (nco_op_typ != nco_op_mabs) && /* ...operation is not mabs() and... */
+            (nco_op_typ != nco_op_mibs) && /* ...operation is not mabs() and... */
             (nco_op_typ != nco_op_ttl || /* ...operation is not ttl() or... */
 	     var_prc[idx]->is_crd_var) /* ...variable is a coordinate */
             ){ /* Divide numerator by masked, averaged, weights */
@@ -1043,6 +1062,7 @@ main(int argc,char **argv)
           (void)nco_var_nrm(var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_out[idx]->tally,var_prc_out[idx]->val);
         }else{ /* !var_prc[idx]->is_crd_var */
           switch(nco_op_typ){
+          case nco_op_mebs: /* Normalize sum by tally to create mean */
           case nco_op_avg: /* Normalize sum by tally to create mean */
           case nco_op_sqravg: /* Normalize sum by tally to create mean */
           case nco_op_avgsqr: /* Normalize sum of squares by tally to create mean square */
@@ -1055,6 +1075,8 @@ main(int argc,char **argv)
             break;
           case nco_op_min: /* Minimum is already in buffer, do nothing */
           case nco_op_max: /* Maximum is already in buffer, do nothing */	
+          case nco_op_mabs: /* Maximum absolute value is already in buffer, do nothing */	
+          case nco_op_mibs: /* Minimum absolute value is already in buffer, do nothing */	
           case nco_op_ttl: /* Total is already in buffer, do nothing */	
             break;
           default:
@@ -1107,6 +1129,10 @@ main(int argc,char **argv)
       /* Store the output variable ID */
       var_prc_out[idx]->id=var_out_id;
 
+      if(var_trv->ppc != NC_MAX_INT){
+	if(var_trv->flg_nsd) (void)nco_var_bitmask(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_out[idx]->val); else (void)nco_var_around(var_trv->ppc,var_prc_out[idx]->type,var_prc_out[idx]->sz,var_prc_out[idx]->has_mss_val,var_prc_out[idx]->mss_val,var_prc_out[idx]->val);
+      } /* endif ppc */
+	
 #ifdef _OPENMP
 #pragma omp critical
 #endif /* _OPENMP */
@@ -1191,6 +1217,10 @@ main(int argc,char **argv)
     if(fl_lst_in && fl_lst_abb) fl_lst_in=nco_sng_lst_free(fl_lst_in,1);
     if(fl_lst_abb) fl_lst_abb=nco_sng_lst_free(fl_lst_abb,abb_arg_nbr);
     if(var_lst_in_nbr > 0) var_lst_in=nco_sng_lst_free(var_lst_in,var_lst_in_nbr);
+    /* Free limits */
+    for(idx=0;idx<aux_nbr;idx++) aux_arg[idx]=(char *)nco_free(aux_arg[idx]);
+    for(idx=0;idx<lmt_nbr;idx++) lmt_arg[idx]=(char *)nco_free(lmt_arg[idx]);
+    for(idx=0;idx<ppc_nbr;idx++) ppc_arg[idx]=(char *)nco_free(ppc_arg[idx]);
     /* Free chunking information */
     for(idx=0;idx<cnk_nbr;idx++) cnk_arg[idx]=(char *)nco_free(cnk_arg[idx]);
     if(cnk_nbr > 0) cnk.cnk_dmn=(cnk_dmn_sct **)nco_cnk_lst_free(cnk.cnk_dmn,cnk_nbr);
@@ -1206,7 +1236,7 @@ main(int argc,char **argv)
     var_fix=(var_sct **)nco_free(var_fix);
     var_out=(var_sct **)nco_free(var_out);
     for(idx=0;idx<lmt_nbr;idx++) flg_dne[idx].dim_nm=(char *)nco_free(flg_dne[idx].dim_nm);
-    if (flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
+    if(flg_dne) flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
     /* Free traversal table */
     trv_tbl_free(trv_tbl); 
   } /* !flg_cln */
diff --git a/src/nco_c++/Makefile.in b/src/nco_c++/Makefile.in
index c06eb99..9e1dcdb 100644
--- a/src/nco_c++/Makefile.in
+++ b/src/nco_c++/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# $Header: /cvsroot/nco/nco/src/nco_c++/Makefile.in,v 1.114 2014/10/22 18:47:07 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco_c++/Makefile.in,v 1.115 2015/01/07 18:07:24 zender Exp $ -*-makefile-*-
 
 
 VPATH = @srcdir@
diff --git a/src/nco_c++/Makefile.old b/src/nco_c++/Makefile.old
index f8c19fc..3835c1e 100644
--- a/src/nco_c++/Makefile.old
+++ b/src/nco_c++/Makefile.old
@@ -1,9 +1,9 @@
-# $Header: /cvsroot/nco/nco/src/nco_c++/Makefile.old,v 1.112 2014/11/24 19:24:19 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco_c++/Makefile.old,v 1.114 2015/02/04 21:56:08 zender Exp $ -*-makefile-*-
 
 # Purpose: Makefile for libnco_c++ module nco_c++
 # Requires GNU Make---AT&T Make chokes on GNU syntax
 
-# Copyright (C) 1994--2014 Charlie Zender
+# Copyright (C) 1994--2015 Charlie Zender
 # License: GNU General Public License (GPL) Version 3
 # See http://www.gnu.org/copyleft/gpl.html for full license text
 
@@ -132,13 +132,21 @@ ifndef NETCDF4_ROOT
  NETCDF4_ROOT := ${NETCDF_ROOT}
 endif
 ifndef NETCDF_INC
+ifdef INC_NCAR
+ NETCDF_INC := ${INC_NCAR} # NCAR module path
+else # endelse INC_NCAR
  NETCDF_INC := ${NETCDF_ROOT}/include # Directory containing netcdf.h
-endif
+endif # endif INC_NCAR
+endif # endif NETCDF_INC
 ifndef NETCDF_LIB
+ifdef LIB_NCAR
+ NETCDF_LIB := ${LIB_NCAR} # NCAR module path
+else # endelse LIB_NCAR
  NETCDF_LIB := ${NETCDF_ROOT}/lib # Directory containing libnetcdf.a
-endif
+endif # endif LIB_NCAR
+endif # endif NETCDF_LIB
 ifndef ${OMP} # OpenMP
- OMP := Y
+ OMP := N
 endif # endif OMP
 ifndef OPTS
  OPTS := O
diff --git a/src/nco_c++/libnco_c++.hh b/src/nco_c++/libnco_c++.hh
index d5080fc..e7193c8 100644
--- a/src/nco_c++/libnco_c++.hh
+++ b/src/nco_c++/libnco_c++.hh
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/libnco_c++.hh,v 1.20 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/libnco_c++.hh,v 1.21 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Prototypes, typedefs, and global variables for libnco_c++
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* libnco_c++.hh headers depend only on system headers
diff --git a/src/nco_c++/nco_att.cc b/src/nco_c++/nco_att.cc
index 6ce37ad..62e71e1 100644
--- a/src/nco_c++/nco_att.cc
+++ b/src/nco_c++/nco_att.cc
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_att.cc,v 1.23 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_att.cc,v 1.24 2014/12/31 01:50:08 zender Exp $ 
 
 // Implementation (declaration) of C++ interface to netCDF attribute routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include <nco_att.hh> // C++ interface to netCDF attribute routines
diff --git a/src/nco_c++/nco_att.hh b/src/nco_c++/nco_att.hh
index ce983d4..dd9bb49 100644
--- a/src/nco_c++/nco_att.hh
+++ b/src/nco_c++/nco_att.hh
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_att.hh,v 1.22 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_att.hh,v 1.23 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface to netCDF attribute routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
diff --git a/src/nco_c++/nco_dmn.cc b/src/nco_c++/nco_dmn.cc
index d527854..f715a6c 100644
--- a/src/nco_c++/nco_dmn.cc
+++ b/src/nco_c++/nco_dmn.cc
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_dmn.cc,v 1.18 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_dmn.cc,v 1.19 2014/12/31 01:50:08 zender Exp $ 
 
 // Implementation (declaration) of C++ interface to netCDF dimension routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include <nco_dmn.hh> // C++ interface to netCDF dimension routines
diff --git a/src/nco_c++/nco_dmn.hh b/src/nco_c++/nco_dmn.hh
index 55a96ed..b4203cd 100644
--- a/src/nco_c++/nco_dmn.hh
+++ b/src/nco_c++/nco_dmn.hh
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_dmn.hh,v 1.17 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_dmn.hh,v 1.18 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface to netCDF dimension routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
diff --git a/src/nco_c++/nco_fl.cc b/src/nco_c++/nco_fl.cc
index c84e306..778aa54 100644
--- a/src/nco_c++/nco_fl.cc
+++ b/src/nco_c++/nco_fl.cc
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_fl.cc,v 1.18 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_fl.cc,v 1.19 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Implementation (declaration) of C++ interface to netCDF file-level routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include <nco_fl.hh> // C++ interface to netCDF file-level routines
diff --git a/src/nco_c++/nco_fl.hh b/src/nco_c++/nco_fl.hh
index e71658e..48cb09e 100644
--- a/src/nco_c++/nco_fl.hh
+++ b/src/nco_c++/nco_fl.hh
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_fl.hh,v 1.17 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_fl.hh,v 1.18 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface to netCDF file-level routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
diff --git a/src/nco_c++/nco_hgh.cc b/src/nco_c++/nco_hgh.cc
index 6c3d25e..1fec915 100644
--- a/src/nco_c++/nco_hgh.cc
+++ b/src/nco_c++/nco_hgh.cc
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_hgh.cc,v 1.21 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_hgh.cc,v 1.22 2014/12/31 01:50:08 zender Exp $ 
 
 // Implementation (declaration) of C++ interface to high-level NCO utilities
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include <nco_hgh.hh> // High-level NCO utilities
diff --git a/src/nco_c++/nco_hgh.hh b/src/nco_c++/nco_hgh.hh
index 5065b76..b1d7954 100644
--- a/src/nco_c++/nco_hgh.hh
+++ b/src/nco_c++/nco_hgh.hh
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_hgh.hh,v 1.17 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_hgh.hh,v 1.18 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Description (definition) of high-level NCO routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
diff --git a/src/nco_c++/nco_utl.cc b/src/nco_c++/nco_utl.cc
index 2dd3177..2074e0c 100644
--- a/src/nco_c++/nco_utl.cc
+++ b/src/nco_c++/nco_utl.cc
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_utl.cc,v 1.29 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_utl.cc,v 1.30 2014/12/31 01:50:08 zender Exp $ 
 
 // Implementation (declaration) of C++ interface utilities for netCDF routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include <nco_utl.hh> // C++ interface utilities for netCDF routines
diff --git a/src/nco_c++/nco_utl.hh b/src/nco_c++/nco_utl.hh
index 5f30884..03ac213 100644
--- a/src/nco_c++/nco_utl.hh
+++ b/src/nco_c++/nco_utl.hh
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_utl.hh,v 1.29 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_utl.hh,v 1.30 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface utilities for netCDF routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
diff --git a/src/nco_c++/nco_var.cc b/src/nco_c++/nco_var.cc
index 0cb1513..5fde233 100644
--- a/src/nco_c++/nco_var.cc
+++ b/src/nco_c++/nco_var.cc
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_var.cc,v 1.37 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_var.cc,v 1.38 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Implementation (declaration) of C++ interface to netCDF variable routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include <nco_var.hh> // C++ interface to netCDF variable routines
diff --git a/src/nco_c++/nco_var.hh b/src/nco_c++/nco_var.hh
index 7520dab..efcb02e 100644
--- a/src/nco_c++/nco_var.hh
+++ b/src/nco_c++/nco_var.hh
@@ -1,10 +1,10 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_var.hh,v 1.33 2014/06/15 21:06:25 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_var.hh,v 1.34 2014/12/31 01:50:08 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface to netCDF variable routines
 
-/* Copyright (C) 1995--2014 Charlie Zender
+/* Copyright (C) 1995--2015 Charlie Zender
    This file is part of NCO, the netCDF Operators. NCO is free software.
-   You can redistribute and/or modify NCO under the terms of the 
+   You may redistribute and/or modify NCO under the terms of the 
    GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/nco.git



More information about the Pkg-grass-devel mailing list